diff options
Diffstat (limited to 'Tests/Fortran')
-rw-r--r-- | Tests/Fortran/CMakeLists.txt | 11 | ||||
-rw-r--r-- | Tests/Fortran/Executable/CMakeLists.txt | 2 | ||||
-rw-r--r-- | Tests/Fortran/Library/CMakeLists.txt | 8 |
3 files changed, 17 insertions, 4 deletions
diff --git a/Tests/Fortran/CMakeLists.txt b/Tests/Fortran/CMakeLists.txt index de1c824..3a299b2 100644 --- a/Tests/Fortran/CMakeLists.txt +++ b/Tests/Fortran/CMakeLists.txt @@ -23,9 +23,7 @@ IF(CMAKE_Fortran_COMPILER_SUPPORTS_F90) in_interface/main.f90 in_interface/module.f90) - IF(CMAKE_Fortran_COMPILER_ID MATCHES GNU) - SET(TEST_MODULE_DEPENDS 1) - ENDIF(CMAKE_Fortran_COMPILER_ID MATCHES GNU) + SET(TEST_MODULE_DEPENDS 1) ENDIF(CMAKE_Fortran_COMPILER_SUPPORTS_F90) IF(TEST_MODULE_DEPENDS) @@ -57,6 +55,13 @@ IF(TEST_MODULE_DEPENDS) ) ADD_CUSTOM_TARGET(ExternalTarget ALL DEPENDS ${testf_BINARY_DIR}/ExternalProject) + # Test module output directory if available. + IF(CMAKE_Fortran_MODDIR_FLAG) + SET(Library_MODDIR "${testf_BINARY_DIR}/Library/modules") + ELSE(CMAKE_Fortran_MODDIR_FLAG) + SET(Library_MODDIR "${testf_BINARY_DIR}/Library") + ENDIF(CMAKE_Fortran_MODDIR_FLAG) + ADD_SUBDIRECTORY(Library) ADD_SUBDIRECTORY(Executable) ENDIF(TEST_MODULE_DEPENDS) diff --git a/Tests/Fortran/Executable/CMakeLists.txt b/Tests/Fortran/Executable/CMakeLists.txt index 7596ff1..40114e4 100644 --- a/Tests/Fortran/Executable/CMakeLists.txt +++ b/Tests/Fortran/Executable/CMakeLists.txt @@ -1,4 +1,4 @@ -include_directories(${testf_BINARY_DIR}/Library) +include_directories(${Library_MODDIR}) include_directories(${testf_BINARY_DIR}/External) link_directories(${testf_BINARY_DIR}/External) diff --git a/Tests/Fortran/Library/CMakeLists.txt b/Tests/Fortran/Library/CMakeLists.txt index 8d62900..fe1368a 100644 --- a/Tests/Fortran/Library/CMakeLists.txt +++ b/Tests/Fortran/Library/CMakeLists.txt @@ -1,3 +1,11 @@ +INCLUDE_DIRECTORIES(${Library_MODDIR}) ADD_LIBRARY(subdir_mods a.f90 b.f90) ADD_EXECUTABLE(subdir_exe main.f90) TARGET_LINK_LIBRARIES(subdir_exe subdir_mods) + +# Test module output directory if available. +IF(CMAKE_Fortran_MODDIR_FLAG) + SET_TARGET_PROPERTIES(subdir_mods PROPERTIES + Fortran_MODULE_DIRECTORY modules + ) +ENDIF(CMAKE_Fortran_MODDIR_FLAG) |