Files
rocm-systems/catch/unit/vulkan_interop/CMakeLists.txt
T
taosang2 8cc7ed5a03 SWDEV-408843 - Fix vulkan_interop failure
Fix vulkan_interop build issue on CMake so that
it can be integrated into catch2 batch build.
Fix some test failures.
Update some code format.

Change-Id: I32c9bed861ddf4fe0d7bba21dce9bd720168c397
2023-11-06 08:54:56 -05:00

53 líneas
1.7 KiB
CMake

set(COMMON_SHARED_SRC vulkan_test.cc)
set(TEST_SRC
hipExternalMemoryGetMappedBuffer.cc
hipImportExternalMemory.cc
hipDestroyExternalMemory.cc
hipWaitExternalSemaphoresAsync.cc
hipSignalExternalSemaphoresAsync.cc
hipImportExternalSemaphore.cc
hipDestroyExternalSemaphore.cc
)
if(WIN32)
set(Vulkan_LIBRARY $ENV{VULKAN_SDK}/Lib/vulkan-l)
else()
# The code can be compiled in Linux, but some required instance extentions
# aren't supported in Linux, thus test will fail at VulkanTest::CreateInstance()
# with VK_ERROR_EXTENSION_NOT_PRESENT(-7).
# Now temperally ignore it in Linux
message(STATUS "Ignore vulkan_interop test in Linux")
return()
endif()
find_package(Vulkan)
message(STATUS "Vulkan_FOUND: ${Vulkan_FOUND}")
message(STATUS "Vulkan_LIBRARIES: ${Vulkan_LIBRARIES}")
message(STATUS "Vulkan_INCLUDE_DIRS: ${Vulkan_INCLUDE_DIRS}")
if(NOT Vulkan_FOUND)
if (EXISTS "$ENV{VULKAN_SDK}")
message(STATUS "FOUND VULKAN SDK: $ENV{VULKAN_SDK}")
message(STATUS "Please check Vulkan_LIBRARY if it is missing. Ignore vulkan test!")
return()
else()
message(STATUS "Vulkan sdk not found, interop test not enabled. Please set ENV VULKAN_SDK to enable the test")
return()
endif()
endif()
if(WIN32)
set(LINKER_LIBS vulkan-1 advapi32)
else()
set(LINKER_LIBS vulkan)
endif()
#set(CMAKE_BUILD_TYPE DEBUG)
include_directories(AFTER ${Vulkan_INCLUDE_DIRS})
link_directories(${Vulkan_INCLUDE_DIRS}/../bin;${Vulkan_INCLUDE_DIRS}/../lib)
hip_add_exe_to_target(NAME VulkanInteropTest
TEST_SRC ${TEST_SRC}
TEST_TARGET_NAME build_tests
COMMON_SHARED_SRC ${COMMON_SHARED_SRC}
LINKER_LIBS ${LINKER_LIBS})