1+ project (cubool-cpp LANGUAGES CXX )
2+
13if (CUBOOL_WITH_CUDA)
24 # If Cuda backend is compiled, we must tell cmake, that we will use Cuda
3- project (cubool-cpp LANGUAGES CXX CUDA )
4- else ()
5- # Otherwise only C++
6- project (cubool-cpp LANGUAGES CXX )
5+ enable_language (CUDA )
76endif ()
87
98# Notify user about selected backend options
@@ -120,9 +119,9 @@ target_compile_definitions(cubool PRIVATE CUBOOL_VERSION_SUB=${CUBOOL_VERSION_SU
120119
121120target_compile_features (cubool PUBLIC cxx_std_14 )
122121
123- target_compile_options (cubool PRIVATE $<$<COMPILE_LANGUAGE :CXX >: -Wall - Werror >)
124- target_compile_options (cubool PRIVATE $<$<AND :$<BOOL : CUBOOL_RELEASE >,$<COMPILE_LANGUAGE :CXX >>: -O2 >)
125- target_compile_options (cubool PRIVATE $<$<AND :$<BOOL : CUBOOL_DEBUG >,$<COMPILE_LANGUAGE :CXX >>: -O0 >)
122+ target_compile_options (cubool PRIVATE $<$<COMPILE_LANGUAGE :CXX >: -Wall >)
123+ target_compile_options (cubool PRIVATE $<$<AND :$<CONFIG : Debug >,$<COMPILE_LANGUAGE :CXX >>: -O2 >)
124+ target_compile_options (cubool PRIVATE $<$<AND :$<CONFIG : Release >,$<COMPILE_LANGUAGE :CXX >>: -O0 >)
126125
127126set_target_properties (cubool PROPERTIES CXX_STANDARD 17 )
128127set_target_properties (cubool PROPERTIES CXX_STANDARD_REQUIRED ON )
@@ -135,7 +134,7 @@ if (CUBOOL_WITH_CUDA)
135134
136135 # Settings: https://arnon.dk/matching-sm-architectures-arch-and-gencode-for-various-nvidia-cards/
137136 target_compile_options (cubool PRIVATE $<$<COMPILE_LANGUAGE :CUDA >:
138- -arch =sm_50
137+ -arch =sm_30
139138 -gencode =arch =compute_50 ,code =sm_50
140139 -gencode =arch =compute_52 ,code =sm_52
141140 -gencode =arch =compute_60 ,code =sm_60
@@ -144,8 +143,8 @@ if (CUBOOL_WITH_CUDA)
144143 -gencode =arch =compute_75 ,code =sm_75
145144 -gencode =arch =compute_75 ,code =compute_75 >)
146145
147- target_compile_options (cubool PRIVATE $<$<AND :$<BOOL : CUBOOL_RELEASE >,$<COMPILE_LANGUAGE :CUDA >>: -Xptxas -O2 >)
148- target_compile_options (cubool PRIVATE $<$<AND :$<BOOL : CUBOOL_DEBUG >,$<COMPILE_LANGUAGE :CUDA >>: -Xptxas -O0 >)
146+ target_compile_options (cubool PRIVATE $<$<AND :$<CONFIG : Debug >,$<COMPILE_LANGUAGE :CUDA >>: -Xptxas -O2 >)
147+ target_compile_options (cubool PRIVATE $<$<AND :$<CONFIG : Release >,$<COMPILE_LANGUAGE :CUDA >>: -Xptxas -O0 >)
149148
150149 target_compile_definitions (cubool PRIVATE CUBOOL_WITH_CUDA )
151150 target_link_libraries (cubool PRIVATE nsparse_um )
0 commit comments