diff options
author | Brad King <brad.king@kitware.com> | 2019-02-13 14:08:34 -0500 |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2019-02-14 10:23:02 -0500 |
commit | d80ecba5c27ec249dc85c3a3559db822ef320d05 (patch) | |
tree | 1484c5669fbc156caf8dcd68f624759267428da8 /Source/cmLocalUnixMakefileGenerator3.cxx | |
parent | 72057d9c1582f4b6dec66cd0675860c4c335636e (diff) | |
download | cmake-d80ecba5c27ec249dc85c3a3559db822ef320d05.tar.gz |
Fortran: Fix submodule file names across compilers
The naming convention for submodule files varies across compilers. Add
a table to the compiler information modules and thread the information
through to the Fortran module dependency parser. Fill out the table for
compiler ids known to support Fortran submodules.
Fixes: #18746
Diffstat (limited to 'Source/cmLocalUnixMakefileGenerator3.cxx')
-rw-r--r-- | Source/cmLocalUnixMakefileGenerator3.cxx | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/Source/cmLocalUnixMakefileGenerator3.cxx b/Source/cmLocalUnixMakefileGenerator3.cxx index d6f71d320d..7eb4a03d57 100644 --- a/Source/cmLocalUnixMakefileGenerator3.cxx +++ b/Source/cmLocalUnixMakefileGenerator3.cxx @@ -1808,6 +1808,17 @@ void cmLocalUnixMakefileGenerator3::WriteDependLanguageInfo( << "_COMPILER_ID \"" << cid << "\")\n"; } + if (implicitLang.first == "Fortran") { + std::string smodSep = + this->Makefile->GetSafeDefinition("CMAKE_Fortran_SUBMODULE_SEP"); + std::string smodExt = + this->Makefile->GetSafeDefinition("CMAKE_Fortran_SUBMODULE_EXT"); + cmakefileStream << "set(CMAKE_Fortran_SUBMODULE_SEP \"" << smodSep + << "\")\n"; + cmakefileStream << "set(CMAKE_Fortran_SUBMODULE_EXT \"" << smodExt + << "\")\n"; + } + // Build a list of preprocessor definitions for the target. std::set<std::string> defines; this->GetTargetDefines(target, this->ConfigName, implicitLang.first, |