diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 6d41f42d6..a60053cf0 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -115,7 +115,10 @@ else() -fstack-clash-protection ) - if (NOT CMAKE_BUILD_TYPE STREQUAL Debug) + # If we define _FORTIFY_SOURCE when it is already defined, compilation will fail + string(FIND "-D_FORTIFY_SOURCE" ${CMAKE_CXX_FLAGS} FORTIFY_SOURCE_DEFINED) + + if (NOT CMAKE_BUILD_TYPE STREQUAL Debug AND NOT FORTIFY_SOURCE_DEFINED) # _FORTIFY_SOURCE can't be used without optimizations. add_compile_options(-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2) endif()