diff --git a/flang-rt/CMakeLists.txt b/flang-rt/CMakeLists.txt index d048ac4b3e5a..a45a66be6f83 100644 --- a/flang-rt/CMakeLists.txt +++ b/flang-rt/CMakeLists.txt @@ -255,11 +255,11 @@ if (UNIX AND CMAKE_SYSTEM_NAME MATCHES "AIX") add_compile_definitions(_LARGE_FILE_API) endif () -# Check whether the compiler can undefine a macro using the "-U" flag. +# Check whether the compiler can undefine a macro using the "-Wp,-U" flag. # Aternatively, we could use # CMAKE_CXX_COMPILER_FRONTEND_VARIANT STREQUAL "GNU" # but some older versions of CMake don't define it for GCC itself. -check_cxx_compiler_flag("-UTESTFLAG" FLANG_RT_SUPPORTS_UNDEFINE_FLAG) +check_cxx_compiler_flag("-Wp,-UTESTFLAG" FLANG_RT_SUPPORTS_UNDEFINE_FLAG) # Check whether -fno-lto is supported. check_cxx_compiler_flag(-fno-lto FLANG_RT_HAS_FNO_LTO_FLAG) diff --git a/flang-rt/cmake/modules/AddFlangRT.cmake b/flang-rt/cmake/modules/AddFlangRT.cmake index 66e54bd2103a..43b1451d65e3 100644 --- a/flang-rt/cmake/modules/AddFlangRT.cmake +++ b/flang-rt/cmake/modules/AddFlangRT.cmake @@ -283,8 +283,10 @@ function (add_flangrt_library name) # build, to avoid an unwanted dependency on libstdc++/libc++.so. target_compile_definitions(${tgtname} PUBLIC _GLIBCXX_NO_ASSERTIONS) if (FLANG_RT_SUPPORTS_UNDEFINE_FLAG) - target_compile_options(${tgtname} PUBLIC -U_GLIBCXX_ASSERTIONS) - target_compile_options(${tgtname} PUBLIC -U_LIBCPP_ENABLE_ASSERTIONS) + target_compile_options(${tgtname} PUBLIC + "$<$:-Wp,-U_GLIBCXX_ASSERTIONS>") + target_compile_options(${tgtname} PUBLIC + "$<$:-Wp,-U_LIBCPP_ENABLE_ASSERTIONS>") endif () # Non-GTest unittests depend on LLVMSupport