瀏覽代碼

FortranCInterface: Honor language flags in checks

We pass CMAKE_C_FLAGS, CMAKE_CXX_FLAGS, and CMAKE_Fortran_FLAGS through
try_compile() for the FortranCInterface Detect and Verify projects.
This honors user-specified compiler flags for each language, thus
supporting flags that affect the Fortran mangling.
Brad King 16 年之前
父節點
當前提交
1699836b06
共有 2 個文件被更改,包括 6 次插入0 次删除
  1. 3 0
      Modules/FortranCInterface.cmake
  2. 3 0
      Modules/FortranCInterface/Detect.cmake

+ 3 - 0
Modules/FortranCInterface.cmake

@@ -248,6 +248,9 @@ function(FortranCInterface_VERIFY)
       VerifyFortranC
       CMAKE_FLAGS -DVERIFY_CXX=${verify_cxx}
                   -DCMAKE_VERBOSE_MAKEFILE=ON
+                 "-DCMAKE_C_FLAGS=${CMAKE_C_FLAGS}"
+                 "-DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS}"
+                 "-DCMAKE_Fortran_FLAGS=${CMAKE_Fortran_FLAGS}"
       OUTPUT_VARIABLE _output)
     file(WRITE "${FortranCInterface_BINARY_DIR}/Verify${lang}/output.txt" "${_output}")
 

+ 3 - 0
Modules/FortranCInterface/Detect.cmake

@@ -39,6 +39,9 @@ try_compile(FortranCInterface_COMPILED
   ${FortranCInterface_BINARY_DIR}
   ${FortranCInterface_SOURCE_DIR}
   FortranCInterface
+  CMAKE_FLAGS
+    "-DCMAKE_C_FLAGS=${CMAKE_C_FLAGS}"
+    "-DCMAKE_Fortran_FLAGS=${CMAKE_Fortran_FLAGS}"
   OUTPUT_VARIABLE FortranCInterface_OUTPUT)
 set(FortranCInterface_COMPILED ${FortranCInterface_COMPILED})
 unset(FortranCInterface_COMPILED CACHE)