From f16633da72521cb22c6d0cee3c9cc446d6892d9b Mon Sep 17 00:00:00 2001 From: Sadr Mohsen <sadr_m@merlin-l-001.psi.ch> Date: Mon, 24 Jun 2024 08:48:01 +0200 Subject: [PATCH] update cmakelists, avoid sanitizer for cuda --- CMakeLists.txt | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c2d8c3d1f..cf7b3e703 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,7 @@ cmake_minimum_required (VERSION 3.20.3) project (OPALX VERSION 2024.1.00 LANGUAGES C CXX) include(FetchContent) +link_directories(LINK_DIRECTORIES) set (PROJECT_BUGREPORT opal@lists.psi.ch) set (OPALX_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}) @@ -19,7 +20,7 @@ endif () add_compile_options (-Wall) add_compile_options (-Wunused) add_compile_options (-Wextra) -add_compile_options (-Werror) +# add_compile_options (-Werror) add_compile_options (-Wno-unused-parameter) add_compile_options (-Wno-error=unused-variable) @@ -34,14 +35,22 @@ message (STATUS "Build type is: " ${CMAKE_BUILD_TYPE}) set (CMAKE_CXX_STANDARD 20) set (CMAKE_CUDA_EXTENSIONS OFF) set (CMAKE_CXX_STANDARD_REQUIRED ON) -set (CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O3 -g ") -set (CMAKE_CXX_FLAGS_RELEASE "-O3") -set (CMAKE_CXX_FLAGS_DEBUG "-O0 -g") +set (CMAKE_CXX_FLAGS_RELWITHDEBINFO "-g -O3") +set (CMAKE_CXX_FLAGS_RELEASE "-g -O3 ") +#set (CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O0 -g") +#set (CMAKE_CXX_FLAGS_RELEASE "-O0") +set (CMAKE_CXX_FLAGS_DEBUG "-g") + +if (NOT "${IPPL_PLATFORMS}" STREQUAL "CUDA" AND CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang") + # Use sanitizer flags for GCC or Clang only + set (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -fsanitize=address,undefined") +endif () +#if ("${IPPL_PLATFORMS}" STREQUAL "CUDA") +# set (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -G") #-diag-suppress=611") +#endif() -if ("${Kokkos_DEVICES}" MATCHES "CUDA") - set (CMAKE_CXX_FLAGS_DEBUG "-O0 -g -G --extended-lambda") -endif() +message (STATUS "CMAKE_CXX_FLAGS_DEBUG: ${CMAKE_CXX_FLAGS_DEBUG}") # Disable compile time assert (used by IPPL) add_definitions (-DNOCTAssert) -- GitLab