summaryrefslogtreecommitdiffstats
path: root/Modules/Compiler
Commit message (Collapse)AuthorAgeFilesLines
* Intel: Fix missing C std default for 12.0 <= ver < 12.1Chuck Atkins2017-05-311-1/+1
|
* SunPro: Make sure all known versions get CXX98 defaultsChuck Atkins2017-05-311-3/+3
|
* GNU: Fix language defaults for 3.4Chuck Atkins2017-05-301-1/+1
|
* Clang: Fix language defaults for 2.1Chuck Atkins2017-05-301-1/+1
|
* Compilers: Port to use default cmake_record_lang_compile_features macrosChuck Atkins2017-05-3011-171/+2
|
* MSVC: Add empty definitions for std compile optionsChuck Atkins2017-05-291-2/+16
| | | | | | There are no specific options for MSVC to set language standards, but set them as empty strings anyways so the feature test infrastructure can at least check to see if they are defined.
* Compilers: Add default cmake_record_{c,cxx}_compile_features macrosChuck Atkins2017-05-291-0/+31
| | | | | | Add default implementations for the cmake_record_lang_compile_features macros. All implementations of this are the same so it can be safely factored out to a common implementation.
* Merge topic 'sunpro-std-flags'Brad King2017-05-281-2/+6
|\ | | | | | | | | | | | | | | | | | | 370d0d25 SunPro: update flags used for CMake itself f1f21e30 SunPro: set -library=stlport as standard compile option for C++98 9316120c SunPro: add standard compile option for C++03 783fbb77 Tests: Compile entire Plugin test with the same language standard Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !879
| * SunPro: set -library=stlport as standard compile option for C++98Daniel Pfeifer2017-05-261-0/+4
| |
| * SunPro: add standard compile option for C++03Daniel Pfeifer2017-05-261-2/+2
| |
* | Intel: avoid variables in language standard flagsDaniel Pfeifer2017-05-262-36/+44
| | | | | | | | | | | | In the bootstrap script, we want to be able to extract language standard flags using sed. Make sure the content of the flag varianbles can be passed unmodified to the compiler.
* | Added space after IAR response file flagAndreas Weis2017-05-232-2/+2
|/ | | | | Without the space between the flag and the filename, IAR will fail to parse the arguments correctly.
* Merge topic 'pgi-fix-windows'Brad King2017-05-221-1/+9
|\ | | | | | | | | | | | | | | | | 4eb15824 Windows-PGI: Add platform definitions a94ae96e Windows-PGI: Adapt default compiler flags c2c2d366 ImplicitLinkInfo: Add support for PGI on Windows Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !794
| * Windows-PGI: Adapt default compiler flagsChristian Pfeiffer2017-05-201-1/+9
| | | | | | | | | | | | PGI demands -Bdynamic (/MD equivalent) for linking together dynamic libraries, so we should make it our default mirroring the settings of e.g. Visual C++ and Intel C++.
* | GCC: more patterns for ar/ranlibRuslan Baratov2017-05-141-2/+10
|/
* Merge topic 'add_cuda_cxx14_flag'Brad King2017-05-121-0/+6
|\ | | | | | | | | | | | | 036ffe81 CUDA: Add support for the C++14 standard flag. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !830
| * CUDA: Add support for the C++14 standard flag.Robert Maynard2017-05-111-0/+6
| | | | | | | | | | CUDA 9 toolkit has announced support for C++14 flag, so lets allow users to use it.
* | Features: Record features for SunPro C 5.13 and 5.14Brad King2017-05-112-0/+29
| |
* | Merge topic 'sunpro-fpp-fix'Brad King2017-05-111-2/+2
|\ \ | | | | | | | | | | | | | | | | | | 1cd40bd2 SunPro: Use -fpp to process all files Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !826
| * | SunPro: Use -fpp to process all filesChristian Pfeiffer2017-05-101-2/+2
| |/ | | | | | | | | | | | | By using only -F, SunPro does not process files that don't have a .F or .F90 extension. This means that the preprocess rules don't quite work as expected, for instance breaking the Ninja generator's behavior during cmake_ninja_depends.
* | PGI: Fix typo in compiler version test for language standardsChuck Atkins2017-05-101-1/+1
|/
* SunPro: Add more flags for C language standardsChuck Atkins2017-05-041-4/+11
|
* Features: Record standards and features for SunPro 5.14Brad King2017-05-032-0/+18
| | | | | Oracle Studio 12.5 adds support for C 11 and associated standard flags. It also adds a few more C++ 11 features.
* Merge topic 'port-language-default-to-common-macro'Brad King2017-05-0316-174/+69
|\ | | | | | | | | | | | | | | | | | | | | | | d9089876 AppleClang: Use common compiler macros for language standard default 174c02e1 SunPro: Use common compiler macros for language standard default 08fa2ba8 Clang: Use common compiler macros for language standard default 0198502f Intel: Use common compiler macros for language standard default d1aa2b3f GNU: Use common compiler macros for language standard default 87b9d6d9 XL: Use common compiler macros for language standard default Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !787
| * AppleClang: Use common compiler macros for language standard defaultChuck Atkins2017-05-022-23/+2
| |
| * SunPro: Use common compiler macros for language standard defaultChuck Atkins2017-05-022-11/+16
| |
| * Clang: Use common compiler macros for language standard defaultChuck Atkins2017-05-023-26/+4
| |
| * Intel: Use common compiler macros for language standard defaultChuck Atkins2017-05-023-29/+6
| |
| * GNU: Use common compiler macros for language standard defaultChuck Atkins2017-05-023-26/+4
| |
| * XL: Use common compiler macros for language standard defaultChuck Atkins2017-05-023-59/+37
| |
* | PGI: Fix typo in logic for C standard flagsChuck Atkins2017-05-021-1/+1
|/
* Merge topic 'add-language-standards-to-more-compilers'Brad King2017-05-027-0/+146
|\ | | | | | | | | | | | | | | | | | | 9b97cb55 PGI: Add language standards for PGI daae564d Cray: Add language standards for the Cray compiler 25e83ce5 CompileFeatures: Let STD compile options be a list 1de70845 Compilers: Add common macros to be used by various compilers Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !784
| * PGI: Add language standards for PGIChuck Atkins2017-05-013-0/+34
| |
| * Cray: Add language standards for the Cray compilerChuck Atkins2017-05-013-0/+50
| |
| * Compilers: Add common macros to be used by various compilersChuck Atkins2017-05-011-0/+62
| | | | | | | | | | | | | | | | | | | | With numerous compilers now supporting multiple language standards in CMake, some common design patterns have begun to emerge. This is intended to be a collection of macros implementing many of those common design patterns that can be factored out and leveraged by many compilers. Currently this only contains the code to set the default language standard of not preset. More functionality will be added in the future as appropriate.
* | Features: On SunPro link with language standard compiler flagBrad King2017-05-011-0/+1
|/ | | | | | When C++ feature requirements or `CXX_STANDARD` cause us to compile on SunPro with the `-std=c++11` option, link with the option too. This is needed to make the compiler use the matching standard library.
* Merge topic 'ipo-clang'Brad King2017-05-012-6/+73
|\ | | | | | | | | | | | | 7d057b27 Clang IPO (LTO) support Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !717
| * Clang IPO (LTO) supportRuslan Baratov2017-04-282-6/+73
| |
* | XL: Add C and C++ language level flagsChuck Atkins2017-04-282-2/+99
|/
* XL: Fix the use of the -qhalt flag for varying OSsChuck Atkins2017-04-272-4/+2
| | | | | | | | | | | | | | The valid settings to pass to the IBM XL compiler for the -qhalt flag vary widely by language and platform. Based on existing documentation, the following table shows which error levels are valid to pass to -qhalt= since -qhalt=e is not always available. OS | xlc | xlC | xlf | ---------|-------|------------------ AIX | iwes | iw s | ilwesu | BlueGene | iwes | iwes | ilwesu | OS X | iwesu | iwesu | ilwesu | Linux | w | w | ilwesu |
* Autogen: Pass explicit predefines header to moc if possibleAleix Pol2017-04-201-0/+2
| | | | | | | | | | | Qt is relying on whoever calls moc to include a file with the predefined values that will be used by the compiler, otherwise moc takes wrong paths and weird things happen. Instead, generate an include file and feed it to all mocs to make sure it's generating correct code. Co-Author: Sebastian Holtermann <sebholt@xwmw.org> Fixes: #16640
* Merge topic 'lang-specific-binutils'Brad King2017-04-052-5/+5
|\ | | | | | | | | | | | | 73934188 Rename CMAKE_GCC_{AR,RANLIB} to CMAKE_LANG_COMPILER_{AR,RANLIB} Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !656
| * Rename CMAKE_GCC_{AR,RANLIB} to CMAKE_LANG_COMPILER_{AR,RANLIB}Ruslan Baratov2017-04-032-5/+5
| | | | | | | | | | | | The variables recently added by commit b9d36826 (Add 'CMAKE_GCC_AR' and 'CMAKE_GCC_RANLIB' variables, 2017-03-08) are more appropriately managed with language-specific names rather than toolchain-specific names.
* | Merge topic 'intel-compile-features'Brad King2017-04-031-1/+3
|\ \ | |/ |/| | | | | | | | | 4af0c9da Features: Update features for Intel C++ 17.0.2 on UNIX Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !652
| * Features: Update features for Intel C++ 17.0.2 on UNIXBrad King2017-03-311-1/+3
| | | | | | | | | | | | | | Intel 17.0.2 on UNIX introduced a regression from 17.0.1 in its definition of `__cpp_constexpr` in `-std=c++14` mode. It incorrectly defines it as `200704` instead of the expected `201304`. Fix our feature detection table to account for this.
* | Merge topic 'ipo-policy-CMP0069'Brad King2017-03-313-0/+55
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dfa8263f Implement interprocedural optimization for GNU compilers 1588a577 Add policy CMP0069 to enforce INTERPROCEDURAL_OPTIMIZATION a7575700 Refactoring: s,GetFeatureAsBool,IsIPOEnabled, e05835c3 CheckIPOSupported: Visual Studio and Xcode generators do not support IPO Acked-by: Kitware Robot <kwrobot@kitware.com> Reviewed-by: Brad King <brad.king@kitware.com> Reviewed-by: Nils Gladitz <nilsgladitz@gmail.com> Merge-request: !568
| * | Implement interprocedural optimization for GNU compilersRuslan Baratov2017-03-303-0/+55
| | | | | | | | | | | | | | | Honor the `INTERPROCEDURAL_OPTIMIZATION` target property for GNU compilers by activating their link-time-optimization (LTO) flags.
* | | Merge topic 'sdcc-compiler-id'Brad King2017-03-301-2/+8
|\ \ \ | |/ / |/| / | |/ | | | | | | 5695558f SDCC: Fix identification of current sdcc compiler Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !644
| * SDCC: Fix identification of current sdcc compilerBrad King2017-03-291-2/+8
| | | | | | | | | | | | | | | | The sdcc compiler no longer defines the `SDCC` preprocessor macro. Instead `__SDCC_VERSION_MAJOR` and similar component-wise macros are defined. Use them instead if defined. Issue: #16746
* | GNU-FindBinUtils: Avoid setting policy CMP0054Brad King2017-03-101-3/+1
| | | | | | | | | | | | | | The `cmake_policy(SET)` call triggers `CMP0011` warnings when this module is used in a project that does not set `CMP0011` to NEW. We could avoid these with a `cmake_policy` PUSH/POP pair, but it is simpler to adjust our code to not trigger `CMP0054` in the first place.