summaryrefslogtreecommitdiffstats
path: root/Modules/Compiler
Commit message (Collapse)AuthorAgeFilesLines
* Make VERBOSE_FLAG appear as first statement for consistencyKovarththanan Rajaratnam2010-04-174-5/+7
|
* PathScale C/C++/Fortran Compiler InformationBrad King2010-01-134-0/+43
| | | | | | | | | | We add compiler information files Compiler/PathScale-<lang>.cmake to specify PathScale compiler information for C, C++, and Fortran languages. We use a macro in Compiler/PathScale.cmake to consolidate the information common to all languages.
* Generalize support for Portland Group CompilerBrad King2009-12-044-3/+55
| | | | | | | | | | | | | | | We factor flags from Platform/Linux-PGI-Fortran.cmake into language independent helper modules Compiler/PGI.cmake Platform/Linux-PGI.cmake and invoke the macros from Compiler/PGI-<lang>.cmake Platform/Linux-PGI-<lang>.cmake This enables general support for the PGI compilers.
* Split GNU compiler information filesBrad King2009-12-024-3/+56
| | | | | | | | | | | | | | This moves GNU compiler flags into new-style modules Compiler/GNU-<lang>.cmake Platform/<os>-GNU-<lang>.cmake We use language-independent helper modules Compiler/GNU.cmake Platform/<os>-GNU.cmake to define macros consolidating the information.
* Drop -rdynamic from Linux build rulesBrad King2009-12-013-3/+0
| | | | | | | | | | | | | | | This is a GNU-specific option that should not be specified for all compilers on Linux. It tells the GNU compiler to pass -export-dynamic to the linker to export symbols from executables for use by plugins. Since we provide the ENABLE_EXPORTS target property to do the same thing in a cross-platform way, there is no need to pass -rdynamic always. Since the option is not useful for GNU tools and breaks other tools on Linux we simply remove it from CMAKE_SHARED_LIBRARY_LINK_<lang>_FLAGS. This also allows us to stop setting the variable in other Linux compiler files just to erase the bad flag. See issue #9985.
* Add support for the g95 Fortran compilerBrad King2009-10-231-0/+7
| | | | | | | | | | This commit teaches CMake about the g95 compiler from http://www.g95.org We use 'G95' as the compiler id string, and add some basic flags. See issue #9241.
* Add initial XL C compiler flags for safer buildsBrad King2009-09-301-0/+5
| | | | | | | This commit adds some default initial C flags for the XL compiler. The most important is "-qhalt=e" which causes the compiler to error-out on non-severe error messages. This is necessary to get try-compiles to fail when bad arguments are passed to a function.
* Split XL compiler information filesBrad King2009-09-303-0/+24
| | | | | | This moves platform-independent XL compiler flags into separate "Compiler/XL-<lang>.cmake" modules. Platform-specific flags go in "Platform/<os>-XL-<lang>.cmake" modules.
* The preprocessing and assembly rules also need the <DEFINES>, otherwise ↵Alexander Neundorf2009-09-192-4/+4
| | | | | | different reults are created. Alex
* Use Intel for Linux flags only on LinuxBrad King2009-09-014-39/+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 SunPro compiler information filesBrad King2009-08-213-0/+71
| | | | | | This moves platform-independent SunPro compiler flags into separate "Compiler/SunPro-<lang>.cmake" modules. Platform-specific flags are left untouched.
* Split Intel compiler information filesBrad King2009-08-214-0/+63
| | | | | | This moves platform-independent Intel compiler flags into separate "Compiler/Intel-<lang>.cmake" modules. Platform-specific flags are left untouched.
* Teach compiler id about VisualAge -> XL rebrandingBrad King2009-08-076-4/+7
| | | | | | | IBM rebranded its VisualAge compiler to XL starting at version 8.0. We use the compiler id "XL" for newer versions and "VisualAge" for older versions. We now also recognize the "z/OS" compiler, which is distinct from XL.
* Move flag to Compiler/VisualAge-Fortran moduleBrad King2009-08-071-0/+1
| | | | | | The CMAKE_Fortran_DEFINE_FLAG value applies to the IBM Fortran compilers on all platforms. This moves the setting to the platform-independent compiler information file.
* Set CMAKE_<LANG>_VERBOSE_FLAG variables for PGIBrad King2009-07-293-0/+3
| | | | | | We set the variables to contain "-v", the verbose front-end output option for PGI compilers. This enables detection of implicit link libraries and directories for these compilers.
* Set CMAKE_<LANG>_VERBOSE_FLAG variables for IntelBrad King2009-07-293-0/+3
| | | | | | 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.
* ENH: Implicit link info for C, CXX, and FortranBrad King2009-07-2315-0/+15
This teaches CMake to detect implicit link information for C, C++, and Fortran compilers. We detect the implicit linker search directories and implicit linker options for UNIX-like environments using verbose output from compiler front-ends. We store results in new variables called CMAKE_<LANG>_IMPLICIT_LINK_LIBRARIES CMAKE_<LANG>_IMPLICIT_LINK_DIRECTORIES The implicit libraries can contain linker flags as well as library names.