summaryrefslogtreecommitdiffstats
path: root/Modules/Compiler/Intel-Fortran.cmake
Commit message (Collapse)AuthorAgeFilesLines
* Ninja: Pass preprocessor definitions when compiling with Intel FortranBrad King2019-09-031-0/+2
| | | | | | | | The Intel Fortran compiler supports an extension that allows conditional compilation based on preprocessor definitions specified on the command line even when not preprocessing. Fixes: #19664
* Fortran: Fix submodule file names across compilersBrad King2019-02-141-0/+3
| | | | | | | | | 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
* Ninja: Add explicit preprocessing step for FortranBrad King2016-09-221-0/+3
| | | | | | | | | | All Fortran sources need to be preprocessed before any source may be compiled so that module dependencies can be (later) extracted. Factor out an explicit preprocessing step preceding compilation. Use Ninja depfile dependencies on the preprocessing step and then compile the already-preprocessed source with a separate build statement that depends explicitly only on the preprocessor output. Later we will insert dynamic discovery of module dependencies between these steps.
* Intel: Do not use GNU-like flags on WindowsBrad King2016-07-051-6/+3
| | | | | | | | | | | Refactor options out of `Modules/Compiler/Intel-{ASM,C,CXX,Fortran}.cmake` into a common helper in `Modules/Compiler/Intel.cmake`. Condition them to be used only on non-Windows hosts where the Intel compiler is GNU-like instead of MSVC-like. Previously this worked only because the options were later overridden by `Modules/Platform/Windows-Intel*.cmake`, but it is cleaner to not set the options in the first place.
* Factor an <INCLUDES> placeholder out of <FLAGS> in rule variablesBrad King2015-07-131-2/+2
| | | | | | | | | | | Teach the Makefile and Ninja generators to substitute for an <INCLUDES> placeholder instead of putting -I in <FLAGS>. Update our values for CMAKE_<LANG>_COMPILE_OBJECT, CMAKE_<LANG>_CREATE_ASSEMBLY_SOURCE, and CMAKE_<LANG>_CREATE_PREPROCESSED_SOURCE to place <INCLUDES> just before <FLAGS>.
* Makefile: Add assembly and preprocessed targets for FortranTim Gallagher2014-11-101-0/+3
| | | | Extend the FortranOnly test to cover "make <src>.i" targets.
* Convert CMake-language commands to lower caseKitware Robot2012-08-131-7/+7
| | | | | | | | | | | | | | | | | Ancient CMake versions required upper-case commands. Later command names became case-insensitive. Now the preferred style is lower-case. Run the following shell code: cmake --help-command-list | grep -v "cmake version" | while read c; do echo 's/\b'"$(echo $c | tr '[:lower:]' '[:upper:]')"'\(\s*\)(/'"$c"'\1(/g' done >convert.sed && git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' | egrep -z -v '^(Utilities/cm|Source/kwsys/)' | xargs -0 sed -i -f convert.sed && rm convert.sed
* Fortran: Add support for free- and fixed-form flagsBrad King2011-08-311-0/+2
| | | | | | | 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.
* Use Intel for Linux flags only on LinuxBrad King2009-09-011-14/+0
| | | | | | The commit "Split Intel compiler information files" moved some Linux specific flags into the platform-independent Intel compiler info files. This moves them back.
* Split Intel compiler information filesBrad King2009-08-211-0/+20
| | | | | | This moves platform-independent Intel compiler flags into separate "Compiler/Intel-<lang>.cmake" modules. Platform-specific flags are left untouched.
* Set CMAKE_<LANG>_VERBOSE_FLAG variables for IntelBrad King2009-07-291-0/+1
We set the variables to contain "-v", the verbose front-end output option for Intel compilers. This enables detection of implicit link libraries and directories for these compilers.