vulkan-samples: Fix cmake errors about plain signature

Fix some typecasting errors seen on 32bit platforms with clang

(From OE-Core rev: f37d209220e2393384facf676f33fb7c68ab11e6)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Khem Raj
2021-11-14 08:52:34 -08:00
committed by Richard Purdie
parent d3a5074c67
commit a8f34f0110
3 changed files with 75 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
From f88fd472e57b59013570f08949dbbc0875c1bae4 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 13 Nov 2021 18:37:13 -0800
Subject: [PATCH] framework/core: Add explicit static_cast from vk::Buffer to
VkBuffer
This fixes errors like
framework/core/hpp_buffer.cpp:149:3: error: no matching function for call to 'vmaDestroyBuffer'
| vmaDestroyBuffer(vmaAllocator, handle, vmaAllocation);
| ^~~~~~~~~~~~~~~~
| /mnt/b/yoe/master/build/tmp/work/riscv32-yoe-linux-musl/vulkan-samples/git-r0/git/third_party/vma/src/vk_mem_alloc.h:3803:33: note: candidate function not viable: no known conversion from 'vk::Buffer' to 'V
kBuffer' (aka 'unsigned long long') for 2nd argument
Upstream-Status: Submitted [https://github.com/KhronosGroup/Vulkan-Samples/pull/395]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
framework/core/hpp_buffer.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/framework/core/hpp_buffer.cpp b/framework/core/hpp_buffer.cpp
index c1f5649..2609e4e 100644
--- a/framework/core/hpp_buffer.cpp
+++ b/framework/core/hpp_buffer.cpp
@@ -146,7 +146,7 @@ void HPPBuffer::destroy()
{
assert(vmaAllocation != VK_NULL_HANDLE);
unmap();
- vmaDestroyBuffer(vmaAllocator, handle, vmaAllocation);
+ vmaDestroyBuffer(vmaAllocator, static_cast<VkBuffer>(handle), vmaAllocation);
}
}
--
2.33.1

View File

@@ -0,0 +1,38 @@
From 64b806ab702a6f445fd84aca5f03bb85b86a66e3 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 11 Nov 2021 18:37:09 -0800
Subject: [PATCH] framework: do not mix plain and keyword
target_link_libraries() signatures
Fixes
| CMake Error at framework/CMakeLists.txt:461 (target_link_libraries):
| The plain signature for target_link_libraries has already been used with
| the target "framework". All uses of target_link_libraries with a target | must be either all-keyword or all-plain.
|
| The uses of the plain signature are here:
| | * framework/CMakeLists.txt:453 (target_link_libraries)
|
Upstream-Status: Submitted [https://github.com/KhronosGroup/Vulkan-Samples/pull/395]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
framework/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/framework/CMakeLists.txt b/framework/CMakeLists.txt
index 948c796..13d3324 100644
--- a/framework/CMakeLists.txt
+++ b/framework/CMakeLists.txt
@@ -450,7 +450,7 @@ target_link_libraries(${PROJECT_NAME} PUBLIC
plugins)
if(${NEED_LINK_ATOMIC})
- target_link_libraries(${PROJECT_NAME} atomic)
+ target_link_libraries(${PROJECT_NAME} PUBLIC atomic)
endif()
# Link platform specific libraries
--
2.33.1

View File

@@ -7,6 +7,8 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=48aa35cefb768436223a6e7f18dc2a2a"
SRC_URI = "gitsm://github.com/KhronosGroup/Vulkan-Samples.git;branch=master;protocol=https \
file://0001-CMakeLists.txt-do-not-hardcode-lib-as-installation-t.patch \
file://0001-framework-do-not-mix-plain-and-keyword-target_link_l.patch \
file://0001-framework-core-Add-explicit-static_cast-from-vk-Buff.patch \
file://debugfix.patch \
"