]> git.proxmox.com Git - libgit2.git/blobdiff - cmake/Modules/AddCFlagIfSupported.cmake
New upstream version 0.28.1+dfsg.1
[libgit2.git] / cmake / Modules / AddCFlagIfSupported.cmake
index 67fc895103e9612a7fdcf5bae94dc571088aca5d..b7aaa7910a969afe106300e301ebb905f0b382b3 100644 (file)
@@ -5,9 +5,23 @@
 
 INCLUDE(CheckCCompilerFlag)
 
+MACRO(ADD_C_FLAG _FLAG)
+       STRING(TOUPPER ${_FLAG} UPCASE)
+       STRING(REGEX REPLACE "[-=]" "_" UPCASE_PRETTY ${UPCASE})
+       STRING(REGEX REPLACE "^_+" "" UPCASE_PRETTY ${UPCASE_PRETTY})
+       CHECK_C_COMPILER_FLAG(${_FLAG} IS_${UPCASE_PRETTY}_SUPPORTED)
+
+       IF(IS_${UPCASE_PRETTY}_SUPPORTED)
+               SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${_FLAG}")
+       ELSE()
+               MESSAGE(FATAL_ERROR "Required flag ${_FLAG} is not supported")
+       ENDIF()
+ENDMACRO()
+
 MACRO(ADD_C_FLAG_IF_SUPPORTED _FLAG)
        STRING(TOUPPER ${_FLAG} UPCASE)
-       STRING(REGEX REPLACE "^-" "" UPCASE_PRETTY ${UPCASE}) 
+       STRING(REGEX REPLACE "[-=]" "_" UPCASE_PRETTY ${UPCASE})
+       STRING(REGEX REPLACE "^_+" "" UPCASE_PRETTY ${UPCASE_PRETTY})
        CHECK_C_COMPILER_FLAG(${_FLAG} IS_${UPCASE_PRETTY}_SUPPORTED)
 
        IF(IS_${UPCASE_PRETTY}_SUPPORTED)