From 2539826a99cce0e4fcee5d3da739f894c8d2bec8 Mon Sep 17 00:00:00 2001 From: shawnz Date: Thu, 6 Feb 2025 17:05:48 +0800 Subject: [PATCH] Fix the nvsci lib finding issue for auto-linux and update sm list for Tegra samples --- .../4_CUDA_Libraries/cudaNvSci/CMakeLists.txt | 19 +++++++++---- .../EGLSync_CUDAEvent_Interop/CMakeLists.txt | 2 +- .../Tegra/cuDLAErrorReporting/CMakeLists.txt | 2 +- .../Tegra/cuDLAHybridMode/CMakeLists.txt | 2 +- .../cuDLALayerwiseStatsHybrid/CMakeLists.txt | 2 +- .../CMakeLists.txt | 21 +++++++++----- .../Tegra/cuDLAStandaloneMode/CMakeLists.txt | 21 +++++++++----- .../cudaNvSciBufMultiplanar/CMakeLists.txt | 21 +++++++++----- .../Tegra/cudaNvSciNvMedia/CMakeLists.txt | 28 ++++++++++++------- .../Tegra/fluidsGLES/CMakeLists.txt | 2 +- .../Tegra/nbody_opengles/CMakeLists.txt | 2 +- .../Tegra/simpleGLES/CMakeLists.txt | 2 +- .../Tegra/simpleGLES_EGLOutput/CMakeLists.txt | 2 +- 13 files changed, 81 insertions(+), 45 deletions(-) diff --git a/Samples/4_CUDA_Libraries/cudaNvSci/CMakeLists.txt b/Samples/4_CUDA_Libraries/cudaNvSci/CMakeLists.txt index f1380e07..44df0f29 100644 --- a/Samples/4_CUDA_Libraries/cudaNvSci/CMakeLists.txt +++ b/Samples/4_CUDA_Libraries/cudaNvSci/CMakeLists.txt @@ -22,12 +22,19 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux") # Find the NVSCI libraries # use CMAKE_LIBRARY_PATH so that users can also specify the NVSCI lib path in cmake command set(CMAKE_LIBRARY_PATH "/usr/lib" ${CMAKE_LIBRARY_PATH}) - file(GLOB_RECURSE NVSCIBUF_LIB - ${CMAKE_LIBRARY_PATH}/*/libnvscibuf.so - ) - file(GLOB_RECURSE NVSCISYNC_LIB - ${CMAKE_LIBRARY_PATH}/*/libnvscisync.so - ) + foreach(LIBRARY_PATH ${CMAKE_LIBRARY_PATH}) + file(GLOB_RECURSE NVSCIBUF_LIB + ${LIBRARY_PATH}/libnvscibuf.so + ${LIBRARY_PATH}/*/libnvscibuf.so + ) + file(GLOB_RECURSE NVSCISYNC_LIB + ${LIBRARY_PATH}/libnvscisync.so + ${LIBRARY_PATH}/*/libnvscisync.so + ) + if(NVSCIBUF_LIB AND NVSCISYNC_LIB) + break() + endif() + endforeach() # Find the NVSCI header files # use CMAKE_INCLUDE_PATH so that users can also specify the NVSCI include path in cmake command diff --git a/Samples/8_Platform_Specific/Tegra/EGLSync_CUDAEvent_Interop/CMakeLists.txt b/Samples/8_Platform_Specific/Tegra/EGLSync_CUDAEvent_Interop/CMakeLists.txt index 181b2180..ee8ce450 100644 --- a/Samples/8_Platform_Specific/Tegra/EGLSync_CUDAEvent_Interop/CMakeLists.txt +++ b/Samples/8_Platform_Specific/Tegra/EGLSync_CUDAEvent_Interop/CMakeLists.txt @@ -8,7 +8,7 @@ find_package(CUDAToolkit REQUIRED) set(CMAKE_POSITION_INDEPENDENT_CODE ON) -set(CMAKE_CUDA_ARCHITECTURES 50 52 60 61 70 75 80 86 89 90 100 101 120) +set(CMAKE_CUDA_ARCHITECTURES 72 87 101) set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Wno-deprecated-gpu-targets") if(CMAKE_BUILD_TYPE STREQUAL "Debug") # set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -G") # enable cuda-gdb (expensive) diff --git a/Samples/8_Platform_Specific/Tegra/cuDLAErrorReporting/CMakeLists.txt b/Samples/8_Platform_Specific/Tegra/cuDLAErrorReporting/CMakeLists.txt index f636cc07..472515ab 100644 --- a/Samples/8_Platform_Specific/Tegra/cuDLAErrorReporting/CMakeLists.txt +++ b/Samples/8_Platform_Specific/Tegra/cuDLAErrorReporting/CMakeLists.txt @@ -8,7 +8,7 @@ find_package(CUDAToolkit REQUIRED) set(CMAKE_POSITION_INDEPENDENT_CODE ON) -set(CMAKE_CUDA_ARCHITECTURES 53 61 70 72 75 80 86 87 90) +set(CMAKE_CUDA_ARCHITECTURES 72 87 101) set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Wno-deprecated-gpu-targets") if(CMAKE_BUILD_TYPE STREQUAL "Debug") diff --git a/Samples/8_Platform_Specific/Tegra/cuDLAHybridMode/CMakeLists.txt b/Samples/8_Platform_Specific/Tegra/cuDLAHybridMode/CMakeLists.txt index 5f7161e0..6c62dc12 100644 --- a/Samples/8_Platform_Specific/Tegra/cuDLAHybridMode/CMakeLists.txt +++ b/Samples/8_Platform_Specific/Tegra/cuDLAHybridMode/CMakeLists.txt @@ -8,7 +8,7 @@ find_package(CUDAToolkit REQUIRED) set(CMAKE_POSITION_INDEPENDENT_CODE ON) -set(CMAKE_CUDA_ARCHITECTURES 53 61 70 72 75 80 86 87 90) +set(CMAKE_CUDA_ARCHITECTURES 72 87 101) set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Wno-deprecated-gpu-targets") if(CMAKE_BUILD_TYPE STREQUAL "Debug") diff --git a/Samples/8_Platform_Specific/Tegra/cuDLALayerwiseStatsHybrid/CMakeLists.txt b/Samples/8_Platform_Specific/Tegra/cuDLALayerwiseStatsHybrid/CMakeLists.txt index 6fc6f67f..11838818 100644 --- a/Samples/8_Platform_Specific/Tegra/cuDLALayerwiseStatsHybrid/CMakeLists.txt +++ b/Samples/8_Platform_Specific/Tegra/cuDLALayerwiseStatsHybrid/CMakeLists.txt @@ -8,7 +8,7 @@ find_package(CUDAToolkit REQUIRED) set(CMAKE_POSITION_INDEPENDENT_CODE ON) -set(CMAKE_CUDA_ARCHITECTURES 53 61 70 72 75 80 86 87 90) +set(CMAKE_CUDA_ARCHITECTURES 72 87 101) set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Wno-deprecated-gpu-targets") if(CMAKE_BUILD_TYPE STREQUAL "Debug") diff --git a/Samples/8_Platform_Specific/Tegra/cuDLALayerwiseStatsStandalone/CMakeLists.txt b/Samples/8_Platform_Specific/Tegra/cuDLALayerwiseStatsStandalone/CMakeLists.txt index 3667d220..8a36e5bf 100644 --- a/Samples/8_Platform_Specific/Tegra/cuDLALayerwiseStatsStandalone/CMakeLists.txt +++ b/Samples/8_Platform_Specific/Tegra/cuDLALayerwiseStatsStandalone/CMakeLists.txt @@ -8,7 +8,7 @@ find_package(CUDAToolkit REQUIRED) set(CMAKE_POSITION_INDEPENDENT_CODE ON) -set(CMAKE_CUDA_ARCHITECTURES 53 61 70 72 75 80 86 87 90) +set(CMAKE_CUDA_ARCHITECTURES 72 87 101) set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Wno-deprecated-gpu-targets") if(CMAKE_BUILD_TYPE STREQUAL "Debug") @@ -25,12 +25,19 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux") # Find the NVSCI libraries # use CMAKE_LIBRARY_PATH so that users can also specify the NVSCI lib path in cmake command set(CMAKE_LIBRARY_PATH "/usr/lib" ${CMAKE_LIBRARY_PATH}) - file(GLOB_RECURSE NVSCIBUF_LIB - ${CMAKE_LIBRARY_PATH}/*/libnvscibuf.so - ) - file(GLOB_RECURSE NVSCISYNC_LIB - ${CMAKE_LIBRARY_PATH}/*/libnvscisync.so - ) + foreach(LIBRARY_PATH ${CMAKE_LIBRARY_PATH}) + file(GLOB_RECURSE NVSCIBUF_LIB + ${LIBRARY_PATH}/libnvscibuf.so + ${LIBRARY_PATH}/*/libnvscibuf.so + ) + file(GLOB_RECURSE NVSCISYNC_LIB + ${LIBRARY_PATH}/libnvscisync.so + ${LIBRARY_PATH}/*/libnvscisync.so + ) + if(NVSCIBUF_LIB AND NVSCISYNC_LIB) + break() + endif() + endforeach() # Find the NVSCI header files # use CMAKE_INCLUDE_PATH so that users can also specify the NVSCI include path in cmake command diff --git a/Samples/8_Platform_Specific/Tegra/cuDLAStandaloneMode/CMakeLists.txt b/Samples/8_Platform_Specific/Tegra/cuDLAStandaloneMode/CMakeLists.txt index 1a3acf7c..468a0126 100644 --- a/Samples/8_Platform_Specific/Tegra/cuDLAStandaloneMode/CMakeLists.txt +++ b/Samples/8_Platform_Specific/Tegra/cuDLAStandaloneMode/CMakeLists.txt @@ -8,7 +8,7 @@ find_package(CUDAToolkit REQUIRED) set(CMAKE_POSITION_INDEPENDENT_CODE ON) -set(CMAKE_CUDA_ARCHITECTURES 53 61 70 72 75 80 86 87 90) +set(CMAKE_CUDA_ARCHITECTURES 72 87 101) set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Wno-deprecated-gpu-targets") if(CMAKE_BUILD_TYPE STREQUAL "Debug") @@ -25,12 +25,19 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux") # Find the NVSCI libraries # use CMAKE_LIBRARY_PATH so that users can also specify the NVSCI lib path in cmake command set(CMAKE_LIBRARY_PATH "/usr/lib" ${CMAKE_LIBRARY_PATH}) - file(GLOB_RECURSE NVSCIBUF_LIB - ${CMAKE_LIBRARY_PATH}/*/libnvscibuf.so - ) - file(GLOB_RECURSE NVSCISYNC_LIB - ${CMAKE_LIBRARY_PATH}/*/libnvscisync.so - ) + foreach(LIBRARY_PATH ${CMAKE_LIBRARY_PATH}) + file(GLOB_RECURSE NVSCIBUF_LIB + ${LIBRARY_PATH}/libnvscibuf.so + ${LIBRARY_PATH}/*/libnvscibuf.so + ) + file(GLOB_RECURSE NVSCISYNC_LIB + ${LIBRARY_PATH}/libnvscisync.so + ${LIBRARY_PATH}/*/libnvscisync.so + ) + if(NVSCIBUF_LIB AND NVSCISYNC_LIB) + break() + endif() + endforeach() # Find the NVSCI header files # use CMAKE_INCLUDE_PATH so that users can also specify the NVSCI include path in cmake command diff --git a/Samples/8_Platform_Specific/Tegra/cudaNvSciBufMultiplanar/CMakeLists.txt b/Samples/8_Platform_Specific/Tegra/cudaNvSciBufMultiplanar/CMakeLists.txt index 1e01400f..4475806e 100644 --- a/Samples/8_Platform_Specific/Tegra/cudaNvSciBufMultiplanar/CMakeLists.txt +++ b/Samples/8_Platform_Specific/Tegra/cudaNvSciBufMultiplanar/CMakeLists.txt @@ -8,7 +8,7 @@ find_package(CUDAToolkit REQUIRED) set(CMAKE_POSITION_INDEPENDENT_CODE ON) -set(CMAKE_CUDA_ARCHITECTURES 53 61 70 72 75 80 86 87 90) +set(CMAKE_CUDA_ARCHITECTURES 72 87 101) set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Wno-deprecated-gpu-targets") if(CMAKE_BUILD_TYPE STREQUAL "Debug") @@ -22,12 +22,19 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux") # Find the NVSCI libraries # use CMAKE_LIBRARY_PATH so that users can also specify the NVSCI lib path in cmake command set(CMAKE_LIBRARY_PATH "/usr/lib" ${CMAKE_LIBRARY_PATH}) - file(GLOB_RECURSE NVSCIBUF_LIB - ${CMAKE_LIBRARY_PATH}/*/libnvscibuf.so - ) - file(GLOB_RECURSE NVSCISYNC_LIB - ${CMAKE_LIBRARY_PATH}/*/libnvscisync.so - ) + foreach(LIBRARY_PATH ${CMAKE_LIBRARY_PATH}) + file(GLOB_RECURSE NVSCIBUF_LIB + ${LIBRARY_PATH}/libnvscibuf.so + ${LIBRARY_PATH}/*/libnvscibuf.so + ) + file(GLOB_RECURSE NVSCISYNC_LIB + ${LIBRARY_PATH}/libnvscisync.so + ${LIBRARY_PATH}/*/libnvscisync.so + ) + if(NVSCIBUF_LIB AND NVSCISYNC_LIB) + break() + endif() + endforeach() # Find the NVSCI header files # use CMAKE_INCLUDE_PATH so that users can also specify the NVSCI include path in cmake command diff --git a/Samples/8_Platform_Specific/Tegra/cudaNvSciNvMedia/CMakeLists.txt b/Samples/8_Platform_Specific/Tegra/cudaNvSciNvMedia/CMakeLists.txt index 37ba83c7..731f358c 100644 --- a/Samples/8_Platform_Specific/Tegra/cudaNvSciNvMedia/CMakeLists.txt +++ b/Samples/8_Platform_Specific/Tegra/cudaNvSciNvMedia/CMakeLists.txt @@ -8,7 +8,7 @@ find_package(CUDAToolkit REQUIRED) set(CMAKE_POSITION_INDEPENDENT_CODE ON) -set(CMAKE_CUDA_ARCHITECTURES 53 61 70 72 75 80 86 87 90) +set(CMAKE_CUDA_ARCHITECTURES 72 87 101) set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Wno-deprecated-gpu-targets") if(CMAKE_BUILD_TYPE STREQUAL "Debug") @@ -22,15 +22,23 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux") # Find the NVSCI/NVMEDIA libraries # use CMAKE_LIBRARY_PATH so that users can also specify the NVSCI lib path in cmake command set(CMAKE_LIBRARY_PATH "/usr/lib" ${CMAKE_LIBRARY_PATH}) - file(GLOB_RECURSE NVSCIBUF_LIB - ${CMAKE_LIBRARY_PATH}/*/libnvscibuf.so - ) - file(GLOB_RECURSE NVSCISYNC_LIB - ${CMAKE_LIBRARY_PATH}/*/libnvscisync.so - ) - file(GLOB_RECURSE NVMEDIA_LIB - ${CMAKE_LIBRARY_PATH}/*/libnvmedia.so - ) + foreach(LIBRARY_PATH ${CMAKE_LIBRARY_PATH}) + file(GLOB_RECURSE NVSCIBUF_LIB + ${LIBRARY_PATH}/libnvscibuf.so + ${LIBRARY_PATH}/*/libnvscibuf.so + ) + file(GLOB_RECURSE NVSCISYNC_LIB + ${LIBRARY_PATH}/libnvscisync.so + ${LIBRARY_PATH}/*/libnvscisync.so + ) + file(GLOB_RECURSE NVMEDIA_LIB + ${LIBRARY_PATH}/libnvmedia.so + ${LIBRARY_PATH}/*/libnvmedia.so + ) + if(NVSCIBUF_LIB AND NVSCISYNC_LIB AND NVMEDIA_LIB) + break() + endif() + endforeach() # Find the NVSCI/NVMEDIA header files # use CMAKE_INCLUDE_PATH so that users can also specify the NVSCI/NVMEDIA include path in cmake command diff --git a/Samples/8_Platform_Specific/Tegra/fluidsGLES/CMakeLists.txt b/Samples/8_Platform_Specific/Tegra/fluidsGLES/CMakeLists.txt index 72f6a86a..edb3c1a5 100644 --- a/Samples/8_Platform_Specific/Tegra/fluidsGLES/CMakeLists.txt +++ b/Samples/8_Platform_Specific/Tegra/fluidsGLES/CMakeLists.txt @@ -8,7 +8,7 @@ find_package(CUDAToolkit REQUIRED) set(CMAKE_POSITION_INDEPENDENT_CODE ON) -set(CMAKE_CUDA_ARCHITECTURES 50 52 60 61 70 75 80 86 89 90 100 101 120) +set(CMAKE_CUDA_ARCHITECTURES 72 87 101) set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Wno-deprecated-gpu-targets") if(CMAKE_BUILD_TYPE STREQUAL "Debug") # set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -G") # enable cuda-gdb (expensive) diff --git a/Samples/8_Platform_Specific/Tegra/nbody_opengles/CMakeLists.txt b/Samples/8_Platform_Specific/Tegra/nbody_opengles/CMakeLists.txt index 0d08430a..406c52cd 100644 --- a/Samples/8_Platform_Specific/Tegra/nbody_opengles/CMakeLists.txt +++ b/Samples/8_Platform_Specific/Tegra/nbody_opengles/CMakeLists.txt @@ -8,7 +8,7 @@ find_package(CUDAToolkit REQUIRED) set(CMAKE_POSITION_INDEPENDENT_CODE ON) -set(CMAKE_CUDA_ARCHITECTURES 50 52 60 61 70 72 75 80 86 87 89 90) +set(CMAKE_CUDA_ARCHITECTURES 72 87 101) set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Wno-deprecated-gpu-targets") if(CMAKE_BUILD_TYPE STREQUAL "Debug") diff --git a/Samples/8_Platform_Specific/Tegra/simpleGLES/CMakeLists.txt b/Samples/8_Platform_Specific/Tegra/simpleGLES/CMakeLists.txt index af7036a6..1b7865bd 100644 --- a/Samples/8_Platform_Specific/Tegra/simpleGLES/CMakeLists.txt +++ b/Samples/8_Platform_Specific/Tegra/simpleGLES/CMakeLists.txt @@ -8,7 +8,7 @@ find_package(CUDAToolkit REQUIRED) set(CMAKE_POSITION_INDEPENDENT_CODE ON) -set(CMAKE_CUDA_ARCHITECTURES 53 61 70 72 75 80 86 87 90) +set(CMAKE_CUDA_ARCHITECTURES 72 87 101) set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Wno-deprecated-gpu-targets") if(CMAKE_BUILD_TYPE STREQUAL "Debug") diff --git a/Samples/8_Platform_Specific/Tegra/simpleGLES_EGLOutput/CMakeLists.txt b/Samples/8_Platform_Specific/Tegra/simpleGLES_EGLOutput/CMakeLists.txt index c0eeef3a..6fa0edf5 100644 --- a/Samples/8_Platform_Specific/Tegra/simpleGLES_EGLOutput/CMakeLists.txt +++ b/Samples/8_Platform_Specific/Tegra/simpleGLES_EGLOutput/CMakeLists.txt @@ -8,7 +8,7 @@ find_package(CUDAToolkit REQUIRED) set(CMAKE_POSITION_INDEPENDENT_CODE ON) -set(CMAKE_CUDA_ARCHITECTURES 53 61 70 72 75 80 86 87 90) +set(CMAKE_CUDA_ARCHITECTURES 72 87 101) set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Wno-deprecated-gpu-targets") if(CMAKE_BUILD_TYPE STREQUAL "Debug")