FortranCInterface: Fix support for VS with Intel toolset

When using a Visual Studio generator with an Intel toolset, such as

    -T "Intel C++ Compiler XE 14.0"

the generated FortranCInterface mangling detection project may fail to
build due to `devenv` not working with the `/project ALL_BUILD` option.
This seems to be a bug in `devenv` or the Intel VS integration.  Work
around the problem by building with `/project FortranCInterface`
instead.  We only need to build this executable and its dependencies
within the detection test project anyway.

Fixes: #16519
This commit is contained in:
Brad King 2017-01-31 11:06:20 -05:00
parent 5efb8b9a5d
commit c9ee05d8d9
2 changed files with 4 additions and 2 deletions

View File

@ -348,7 +348,8 @@ function(FortranCInterface_VERIFY)
try_compile(FortranCInterface_VERIFY_${lang}_COMPILED
${FortranCInterface_BINARY_DIR}/Verify${lang}
${FortranCInterface_SOURCE_DIR}/Verify
VerifyFortranC
VerifyFortranC # project name
VerifyFortranC # target name
CMAKE_FLAGS -DVERIFY_CXX=${verify_cxx}
-DCMAKE_VERBOSE_MAKEFILE=ON
"-DCMAKE_C_FLAGS:STRING=${CMAKE_C_FLAGS}"

View File

@ -30,7 +30,8 @@ set(_result)
try_compile(FortranCInterface_COMPILED
${FortranCInterface_BINARY_DIR}
${FortranCInterface_SOURCE_DIR}
FortranCInterface
FortranCInterface # project name
FortranCInterface # target name
CMAKE_FLAGS
"-DCMAKE_C_FLAGS:STRING=${CMAKE_C_FLAGS}"
"-DCMAKE_Fortran_FLAGS:STRING=${CMAKE_Fortran_FLAGS}"