diff options
author | Brad King <brad.king@kitware.com> | 2011-08-31 14:24:43 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2011-08-31 14:24:43 (GMT) |
commit | 5c0c635a0947aa44a0e3edf65b73c61d9abced2d (patch) | |
tree | 589de0062302301e8c5e83437bfbe166bfe1e107 /Source/cmLocalGenerator.cxx | |
parent | 47a0c7542b07b7db8f466621fff28f47beaad7d0 (diff) | |
download | CMake-5c0c635a0947aa44a0e3edf65b73c61d9abced2d.zip CMake-5c0c635a0947aa44a0e3edf65b73c61d9abced2d.tar.gz CMake-5c0c635a0947aa44a0e3edf65b73c61d9abced2d.tar.bz2 |
Fortran: Add support for free- and fixed-form flags
Define a "Fortran_FORMAT" target and source file property. Initialize
the target property from a "CMAKE_Fortran_FORMAT" variable. Interpret
values "FIXED" and "FREE" to indicate the source file format. Append
corresponding flags to the compiler command line.
Diffstat (limited to 'Source/cmLocalGenerator.cxx')
-rw-r--r-- | Source/cmLocalGenerator.cxx | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 7da35eb..1d1e8da 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -2917,6 +2917,31 @@ std::string cmLocalGenerator::EscapeForCMake(const char* str) } //---------------------------------------------------------------------------- +cmLocalGenerator::FortranFormat +cmLocalGenerator::GetFortranFormat(const char* value) +{ + FortranFormat format = FortranFormatNone; + if(value && *value) + { + std::vector<std::string> fmt; + cmSystemTools::ExpandListArgument(value, fmt); + for(std::vector<std::string>::iterator fi = fmt.begin(); + fi != fmt.end(); ++fi) + { + if(*fi == "FIXED") + { + format = FortranFormatFixed; + } + if(*fi == "FREE") + { + format = FortranFormatFree; + } + } + } + return format; +} + +//---------------------------------------------------------------------------- std::string cmLocalGenerator::GetTargetDirectory(cmTarget const&) const { |