diff --git a/CMakeLists.txt b/CMakeLists.txt index 5a1148ba73865f34c409c7246a576e7639d98cb0..79bc85cf8f3aa8440ca0a63cd791348b27f8b052 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1021,6 +1021,17 @@ endif() ## ############################################################################################################################ if ( WALBERLA_BUILD_WITH_CUDA ) + + get_directory_property(COMPILE_DEFINITIONS_SAVED_STATE DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} COMPILE_DEFINITIONS) + # cleanup compile definitions for CUDA (remove generator expression and empty elements which lead to warnings) + set(CLEANED_COMPILE_DEFINITIONS ) + foreach( element ${COMPILE_DEFINITIONS_SAVED_STATE}) + if(NOT ${element} MATCHES "^\\$") + list(APPEND CLEANED_COMPILE_DEFINITIONS ${element}) + endif() + endforeach() + set_directory_properties(PROPERTIES COMPILE_DEFINITIONS CLEANED_COMPILE_DEFINITIONS) + # set ( BUILD_SHARED_LIBS ON ) set ( CUDA_ATTACH_VS_BUILD_RULE_TO_CUDA_FILE ON ) set ( CUDA_PROPAGATE_HOST_FLAGS OFF CACHE BOOL "" ) @@ -1036,6 +1047,7 @@ if ( WALBERLA_BUILD_WITH_CUDA ) include_directories ( ${CUDA_INCLUDE_DIRS} ) list ( APPEND SERVICE_LIBS ${CUDA_LIBRARIES} ) + list( APPEND CUDA_NVCC_FLAGS "-Wno-deprecated-gpu-targets") if ( NOT "${CUDA_NVCC_FLAGS}" MATCHES "-std=" ) list ( APPEND CUDA_NVCC_FLAGS "-std=c++11" ) endif () @@ -1049,6 +1061,8 @@ if ( WALBERLA_BUILD_WITH_CUDA ) else() set ( WALBERLA_BUILD_WITH_CUDA FALSE ) endif ( ) + + set_directory_properties(PROPERTIES COMPILE_DEFINITIONS COMPILE_DEFINITIONS_SAVED_STATE) endif ( ) ############################################################################################################################