Browse Source

ENH: fixes for optional flag arguments to check include macros

Bill Hoffman 22 years ago
parent
commit
f248295d5d
2 changed files with 15 additions and 5 deletions
  1. 11 1
      Modules/CheckIncludeFile.cmake
  2. 4 4
      Modules/CheckIncludeFileCXX.cmake

+ 11 - 1
Modules/CheckIncludeFile.cmake

@@ -13,12 +13,22 @@ MACRO(CHECK_INCLUDE_FILE INCLUDE VARIABLE)
     CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CheckIncludeFile.c.in
       ${CMAKE_BINARY_DIR}/CMakeTmp/CheckIncludeFile.c IMMEDIATE)
     MESSAGE(STATUS "Looking for ${INCLUDE}")
+    IF(${ARGC} EQUAL 3)
+      SET(CMAKE_C_FLAGS_SAVE ${CMAKE_C_FLAGS})
+      SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${ARGV2}")
+    ENDIF(${ARGC} EQUAL 3)
+
     TRY_COMPILE(${VARIABLE}
       ${CMAKE_BINARY_DIR}
       ${CMAKE_BINARY_DIR}/CMakeTmp/CheckIncludeFile.c
       CMAKE_FLAGS 
       -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_INCLUDE_FILE_FLAGS}
-      OUTPUT_VARIABLE OUTPUT)
+      OUTPUT_VARIABLE OUTPUT) 
+
+    IF(${ARGC} EQUAL 3)
+      SET(CMAKE_C_FLAGS ${CMAKE_C_FLAGS_SAVE})
+    ENDIF(${ARGC} EQUAL 3)
+
     IF(${VARIABLE})
       MESSAGE(STATUS "Looking for ${INCLUDE} - found")
       SET(${VARIABLE} 1 CACHE INTERNAL "Have include ${INCLUDE}")

+ 4 - 4
Modules/CheckIncludeFileCXX.cmake

@@ -13,19 +13,19 @@ MACRO(CHECK_INCLUDE_FILE_CXX INCLUDE VARIABLE)
     SET(CHECK_INCLUDE_FILE_VAR ${INCLUDE})
     CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CheckIncludeFile.cxx.in
       ${CMAKE_BINARY_DIR}/CMakeTmp/CheckIncludeFile.cxx IMMEDIATE)
-    IF(${ARGC} EQUAL 2)
+    IF(${ARGC} EQUAL 3)
       SET(CMAKE_CXX_FLAGS_SAVE ${CMAKE_CXX_FLAGS})
       SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${ARGV2}")
-    ENDIF(${ARGC} EQUAL 2)
+    ENDIF(${ARGC} EQUAL 3)
 
     TRY_COMPILE(${VARIABLE}
       ${CMAKE_BINARY_DIR}
       ${CMAKE_BINARY_DIR}/CMakeTmp/CheckIncludeFile.cxx
       OUTPUT_VARIABLE OUTPUT)
 
-    IF(${ARGC} EQUAL 2)
+    IF(${ARGC} EQUAL 3)
       SET(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS_SAVE})
-    ENDIF(${ARGC} EQUAL 2)
+    ENDIF(${ARGC} EQUAL 3)
 
     IF(${VARIABLE})
       MESSAGE(STATUS "Checking for CXX include file ${INCLUDE} -- found")