diff options
author | Brad King <brad.king@kitware.com> | 2009-12-14 17:36:25 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2009-12-14 17:36:25 (GMT) |
commit | 555fcbd2e2e5cafbb7cbf55b88093cc8f73a8009 (patch) | |
tree | 2ab8a9c2032c7ce1a9c27b31570e02cfd8b69af2 /Tests/FortranC/CMakeLists.txt | |
parent | 126c93cddae95f46060f6d88af9c92dc6297f88d (diff) | |
download | CMake-555fcbd2e2e5cafbb7cbf55b88093cc8f73a8009.zip CMake-555fcbd2e2e5cafbb7cbf55b88093cc8f73a8009.tar.gz CMake-555fcbd2e2e5cafbb7cbf55b88093cc8f73a8009.tar.bz2 |
Test FortranCInterface flag propagation
We create test FortranC.Flags to try passing per-language flags from a
project into its FortranCInterface detect/verify checks. We wrap the
compilers with scripts that enforce presence of expected flags.
Diffstat (limited to 'Tests/FortranC/CMakeLists.txt')
-rw-r--r-- | Tests/FortranC/CMakeLists.txt | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Tests/FortranC/CMakeLists.txt b/Tests/FortranC/CMakeLists.txt new file mode 100644 index 0000000..e4e8ca1 --- /dev/null +++ b/Tests/FortranC/CMakeLists.txt @@ -0,0 +1,25 @@ +cmake_minimum_required(VERSION 2.8) +project(FortranC C Fortran) + +# Skip this test for compilers not known to be compatible. +if(NOT ("${CMAKE_C_COMPILER_ID}" STREQUAL "${CMAKE_Fortran_COMPILER_ID}" OR + "${CMAKE_C_COMPILER_ID}-${CMAKE_Fortran_COMPILER_ID}" MATCHES "^(MSVC-Intel)$")) + message(STATUS "${CMAKE_C_COMPILER_ID} C and ${CMAKE_Fortran_COMPILER_ID} Fortran not known to be compatible!") + return() +endif() + +# Wipe out all FortranCInterface information to ensure it re-runs. +file(REMOVE_RECURSE ${CMAKE_BINARY_DIR}/CMakeFiles/FortranCInterface) + +if(FortranC_TEST_FLAGS) + # Test whether FortranCInterface checks see C flags. + set(ENV{TEST_OPT_CC} "--test-opt-cc") + set(CMAKE_C_FLAGS "$ENV{TEST_OPT_CC}") + + # Test whether FortranCInterface checks see Fortran flags. + set(ENV{TEST_OPT_FC} "--test-opt-fc") + set(CMAKE_Fortran_FLAGS "$ENV{TEST_OPT_FC}") +endif() + +include(FortranCInterface) +FortranCInterface_VERIFY() |