Skip to content

Commit fbc3080

Browse files
author
Carsten Griwodz
committed
Merge branch 'develop' into dev/cmake-lang-cuda
2 parents 5c37b81 + 66f1ed6 commit fbc3080

File tree

1 file changed

+15
-5
lines changed

1 file changed

+15
-5
lines changed

CMakeLists.txt

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,27 @@
11
# First-order language CUDA requires at least CMake 3.18
22
cmake_minimum_required(VERSION 3.24)
33

4+
# Default seletion of CUDA Compute Capabilities.
5+
# This must be called before project() or cmake sets it to the oldest non-deprecated CC
6+
# "all" and "all-major" work for Intel and perhaps for ARM with discrete GPUs, but not Tegra and Jetson.
7+
if(EXISTS "/etc/nv_tegra_release")
8+
# The CC list for Tegras and Jetson will require manual updates
9+
set(CMAKE_CUDA_ARCHITECTURES "53;62;72;87"
10+
CACHE
11+
STRING "Which CUDA CCs to support: native, all, all-major or an explicit list delimited by semicolons")
12+
else()
13+
# The CC list for discrete GPUs will require CMake updates
14+
set(CMAKE_CUDA_ARCHITECTURES "all-major"
15+
CACHE
16+
STRING "Which CUDA CCs to support: native, all, all-major or an explicit list delimited by semicolons")
17+
endif()
18+
419
project(PopSift VERSION 1.0.0 LANGUAGES CXX CUDA)
520

621
# Policy to support CUDA as a first-order language for CMake.
722
# Since CMake 3.18. See https://cmake.org/cmake/help/latest/policy/CMP0104.html
823
cmake_policy(SET CMP0104 NEW)
924

10-
set(CMAKE_CUDA_ARCHITECTURES "all-major"
11-
CACHE
12-
STRING "Which CUDA CCs to support: native, all, all-major or an explicit list delimited by semicolons"
13-
FORCE)
14-
1525
# Set build path as a folder named as the platform (linux, windows, darwin...) plus the processor type
1626
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}")
1727
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}")

0 commit comments

Comments
 (0)