From 3284de61495b4f5c4b74867b9f700fae3207bad0 Mon Sep 17 00:00:00 2001 From: Marco Barbone Date: Mon, 29 Jul 2024 17:44:22 -0400 Subject: [PATCH] fixed cache strings --- CMakeLists.txt | 18 +++++++++++++++--- cmake/utils.cmake | 12 ++++++------ 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 97c83806d..6ffe5b412 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -52,7 +52,15 @@ set(FINUFFT_CXX_FLAGS_RELEASE -fcx-limited-range /fp:fast -O3 - /O2) + /O2 + /Ox + /GF + /GY + /GS- + /Ob + /Oi + /Ot + /Oy) filter_supported_compiler_flags(FINUFFT_CXX_FLAGS_RELEASE FINUFFT_CXX_FLAGS_RELEASE) @@ -77,10 +85,14 @@ message( STATUS "FINUFFT RelWithDebInfo flags: ${FINUFFT_CXX_FLAGS_RELWITHDEBINFO}") if(FINUFFT_ARCH_FLAGS STREQUAL "native") - set(FINUFFT_ARCH_FLAGS CACHE STRING -march=native FORCE) + set(FINUFFT_ARCH_FLAGS + -march=native + CACHE STRING "" FORCE) filter_supported_compiler_flags(FINUFFT_ARCH_FLAGS FINUFFT_ARCH_FLAGS) if(NOT FINUFFT_ARCH_FLAGS) - set(FINUFFT_ARCH_FLAGS CACHE STRING -mtune=native FORCE) + set(FINUFFT_ARCH_FLAGS + -mtune=native + CACHE STRING "" FORCE) filter_supported_compiler_flags(FINUFFT_ARCH_FLAGS FINUFFT_ARCH_FLAGS) endif() if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") diff --git a/cmake/utils.cmake b/cmake/utils.cmake index 4dbf1e03b..b8bc4ca17 100644 --- a/cmake/utils.cmake +++ b/cmake/utils.cmake @@ -7,9 +7,9 @@ function(filter_supported_compiler_flags input_flags_var output_flags_var) # Iterate over each flag in the input list foreach(flag ${${input_flags_var}}) string(REPLACE "=" "_" flag_var ${flag}) # Convert flag to a valid variable - # name + # name string(REPLACE "-" "" flag_var ${flag_var}) # Remove '-' for the variable - # name + # name # Append the test linker flag to the existing flags list(APPEND CMAKE_EXE_LINKER_FLAGS ${flag}) @@ -40,19 +40,19 @@ function(check_arch_support) if(RUN_OUTPUT MATCHES "AVX512") set(FINUFFT_ARCH_FLAGS "/arch:AVX512" - CACHE STRING FORCE) + CACHE STRING "" FORCE) elseif(RUN_OUTPUT MATCHES "AVX") set(FINUFFT_ARCH_FLAGS "/arch:AVX" - CACHE STRING FORCE) + CACHE STRING "" FORCE) elseif(RUN_OUTPUT MATCHES "SSE") set(FINUFFT_ARCH_FLAGS "/arch:SSE" - CACHE STRING FORCE) + CACHE STRING "" FORCE) else() set(FINUFFT_ARCH_FLAGS "" - CACHE STRING FORCE) + CACHE STRING "" FORCE) endif() message(STATUS "CPU supports: ${RUN_OUTPUT}") message(STATUS "Using MSVC flags: ${FINUFFT_ARCH_FLAGS}")