summaryrefslogtreecommitdiffstats
path: root/Modules/Compiler
Commit message (Collapse)AuthorAgeFilesLines
* CompileFeatures: document why lambda_init_captures requires GCC 4.9Robert Maynard2019-06-171-2/+2
|
* Ninja: Add support for CUDA nvcc response filesFrancisco Facioni2019-06-031-0/+5
|
* Merge topic 'clang-gnulike-support'Brad King2019-05-291-2/+11
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 74829f01b1 Help: Add notes for topic 'clang-gnulike-support' 19669abe1d Tests: handle string escaping differences with NMake+clang a2a90f41e3 Tests: require C++14 for the Tutorial 4819ff9647 Tests: fix failures with gnu mode clang on windows 26af0b25e7 cmake: use correct stack size with gnu mode clang on windows d44c0db0b2 clang: setup correct configuration in gnu mode b7d5ef23e9 cmGlobalNinjaGenerator: use gnu compatible paths with clang in gnu mode 3d0210d8dc binutils: add the llvm-* variants to the tool lists. ... Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Francesco Bertolaccini <francesco@bertolaccini.dev> Acked-by: Stanislav Ershov <digital.stream.of.mind@gmail.com> Acked-by: Saleem Abdulrasool <compnerd@compnerd.org> Merge-request: !2992
| * clang: setup correct configuration in gnu modeZsolt Parragi2019-05-231-2/+11
| |
* | ARMClang: fix policy manipulation in the compiler moduleBen Boeckel2019-05-231-3/+5
| | | | | | | | | | Policies have their own scoping and cannot be set within a function without affecting callers.
* | Merge topic 'armclang'Brad King2019-05-168-1/+109
|\ \ | | | | | | | | | | | | | | | | | | 7b0abaac31 ARMClang: Add support for Clang-based ARM compiler Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3315
| * | ARMClang: Add support for Clang-based ARM compilerJohan Stridkvist2019-05-148-1/+109
| | | | | | | | | | | | Fixes: #18215
* | | Merge topic 'msvc-jmc'Brad King2019-05-152-0/+10
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | 2a9ff9703e MSVC: Add support for /JMC (Just My Code) Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3121
| * | MSVC: Add support for /JMC (Just My Code)Luca Cappa2019-05-142-0/+10
| |/
* | Merge topic 'relax_cxx_relaxed_constexpr_requirements'Brad King2019-05-144-12/+5
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | d156f8f5a2 CompileFeatures: Record when MSVC gained full CXX14 support 62dbe53a8a CompileFeatures: Record when Intel gained full CXX14 support 1ebb0d79fe CompileFeatures: Relax cxx_relaxed_constexpr compiler requirements Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3292
| * | CompileFeatures: Record when MSVC gained full CXX14 supportRobert Maynard2019-05-131-0/+1
| | | | | | | | | | | | | | | | | | | | | Use the infrastructure added by commit 646fb1a646 (CompileFeatures: memoize C++ compilers with full language level support, 2019-03-27) to avoid using a `try_compile` to check for C++14 feature support when the running compiler is known to have all features.
| * | CompileFeatures: Record when Intel gained full CXX14 supportRobert Maynard2019-05-131-7/+1
| | | | | | | | | | | | | | | | | | | | | Use the infrastructure added by commit 646fb1a646 (CompileFeatures: memoize C++ compilers with full language level support, 2019-03-27) to avoid using a `try_compile` to check for C++14 feature support when the running compiler is known to have all features.
| * | CompileFeatures: Relax cxx_relaxed_constexpr compiler requirementsRobert Maynard2019-05-132-5/+3
| |/ | | | | | | | | This in effect means that cxx_relaxed_constexpr is now supported by MSVC and Intel 18.0-18.04.
* | Merge topic 'apple_clang_cxx_20_support'Brad King2019-05-141-1/+5
|\ \ | | | | | | | | | | | | | | | | | | 9523ca72e2 Features: Activate C++20 support for AppleClang 10.0+ Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3294
| * | Features: Activate C++20 support for AppleClang 10.0+Robert Maynard2019-05-071-1/+5
| |/
* | Merge topic 'apple_clang_full_cxx_14_support'Brad King2019-05-131-0/+2
|\ \ | | | | | | | | | | | | | | | | | | daad51c3b7 CompileFeatures: Record when AppleClang gained full CXX14 support Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3293
| * | CompileFeatures: Record when AppleClang gained full CXX14 supportRobert Maynard2019-05-071-0/+2
| |/ | | | | | | | | | | | | Use the infrastructure added by commit 646fb1a646 (CompileFeatures: memoize C++ compilers with full language level support, 2019-03-27) to avoid using a `try_compile` to check for C++14 feature support when the running compiler is known to have all features.
* | IAR: Add architecture support for RL78, RH850 and MSP430Stefan Andersson2019-05-085-28/+53
|/
* CompileFeatures: Record when compilers gained full CXX14 supportRobert Maynard2019-05-023-0/+16
| | | | | | | Use the infrastructure added by commit 646fb1a646 (CompileFeatures: memoize C++ compilers with full language level support, 2019-03-27) to avoid using a `try_compile` to check for C++14 feature support when the running compiler is known to have all features.
* Merge topic 'IAR_6_x_fix'Brad King2019-05-012-3/+12
|\ | | | | | | | | | | | | | | 4d78bea5df IAR: Fail early in case of IAR ARM 4.XX 0b684524ac IAR: Fix building with IAR ARM 6.X Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3263
| * IAR: Fail early in case of IAR ARM 4.XXDaniel Schürmann2019-04-262-0/+8
| | | | | | | | This version is not yet supported because it uses xlink unsetad of ilink.
| * IAR: Fix building with IAR ARM 6.XDaniel Schürmann2019-04-252-3/+4
| | | | | | | | Use the correct version macros and version numbers.
* | Merge topic 'iar-binutils'Brad King2019-05-011-11/+14
|\ \ | | | | | | | | | | | | | | | | | | 01a4eec446 IAR: Changes required for Linux Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3262
| * | IAR: Changes required for LinuxStefan Andersson2019-04-251-11/+14
| |/
* | Merge topic 'memorize_cxx_compilers_with_full_CXX11_support'Brad King2019-05-015-17/+17
|\ \ | | | | | | | | | | | | | | | | | | 8d45a2ffe0 CompileFeatures: Record when compilers gained full CXX11 support Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3232
| * | CompileFeatures: Record when compilers gained full CXX11 supportRobert Maynard2019-04-295-17/+17
| | | | | | | | | | | | | | | | | | | | | Use the infrastructure added by commit 646fb1a646 (CompileFeatures: memoize C++ compilers with full language level support, 2019-03-27) to avoid using a `try_compile` to check for C++11 feature support when the running compiler is known to have all features.
* | | Merge topic 'msvc-c-features'Brad King2019-04-301-2/+6
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | eca275f63d CompileFeatures: Fix hard-coded MSVC C features Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3247
| * | | CompileFeatures: Fix hard-coded MSVC C featuresBrad King2019-04-221-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 8e4899fd6c (CompileFeatures: Record which C features the MSVC compiler supports, 2019-04-12) our `cmake_record_c_compile_features` macro was accidentally left not setting the `_result` variable, which had previously been set by `_record_compiler_features`. The variable is expected by the call site in `cmake_determine_compile_features` and used to switch between "failed" and "done" reports. Set it now. Also record `c_variadic_macros` only for cl 14 (VS 2005) and higher because it is not supported before that version.
* | | | Project: Report intel's simulation of gcc.R. Andrew Ohana2019-04-251-0/+14
| |_|/ |/| |
* | | SunPro: Record support for C++14 features by SunPro 5.{14,15}Brad King2019-04-192-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SunPro 5.15 supports `-std=c++14` and several C++14 features. SunPro 5.14 accepts `-std=c++14` but does not update its definition of `__cplusplus` or any other macro to distinguish it from `-std=c++11`, so we need to blacklist a couple features that do work but that we cannot report for that version. We can still support `cxx_std_14`. Co-Author: Robert Maynard <robert.maynard@kitware.com>
* | | Merge topic 'add_xl_cxx14_support'Brad King2019-04-182-0/+9
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 458ea9d76c XL: Add C++14 language level flags Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3235
| * | | XL: Add C++14 language level flagsRobert Maynard2019-04-152-0/+9
| | | |
* | | | Merge topic 'memorize_msvc_like_compilers_C_support'Brad King2019-04-172-3/+10
|\ \ \ \ | |/ / / |/| / / | |/ / | | | | | | | | | 8e4899fd6c CompileFeatures: Record which C features the MSVC compiler supports Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3226
| * | CompileFeatures: Record which C features the MSVC compiler supportsRobert Maynard2019-04-122-3/+10
| |/ | | | | | | | | | | Use the infrastructure added by commit f92ccbc306c20554af (CompileFeatures: memoize C compilers with full language level support) to avoid using a `try_compile` to check for C 90/99/11 feature support when the running compiler is known to have a fixed set of feature support.
* | Merge topic 'iar-generalize'Brad King2019-04-156-108/+98
|\ \ | |/ |/| | | | | | | | | ea83d0f8fb IAR: Generalize and add support for IAR RX compiler Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3196
| * IAR: Generalize and add support for IAR RX compilerStefan Andersson2019-04-126-108/+98
| | | | | | | | Moved common ASM setup to the common macros and changed version check.
* | CompileFeatures: Record when CXX compilers have gained full support for 98Robert Maynard2019-04-116-0/+8
| | | | | | | | | | | | | | Use the infrastructure added by commit 646fb1a646 (CompileFeatures: memoize C++ compilers with full language level support, 2019-03-27) to avoid using a `try_compile` to check for C++98 feature support when the running compiler is known to have all features.
* | Merge topic 'meta-feature_only_infer_granular_support'Brad King2019-04-105-5/+42
|\ \ | |/ |/| | | | | | | | | | | | | | | 613ac56e50 Add a test to verify meta-feature parity with granular features b0f46c48f6 CompileFeatures: Now able to presume full language level support 646fb1a646 CompileFeatures: memoize C++ compilers with full language level support 0d641fcfad Tests: Remove outdated portion of CompileFeatures genex test Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3176
| * CompileFeatures: Now able to presume full language level supportRobert Maynard2019-04-094-0/+12
| | | | | | | | | | | | | | | | | | Previously compilers that only supported the meta-level flags would not have any of the granular features listed. Now we presume that they have full support and enable all the features. Update granular feature tests to skip the actual compilation checks for the presumed features.
| * CompileFeatures: memoize C++ compilers with full language level supportRobert Maynard2019-04-091-5/+30
| | | | | | | | | | | | | | Previously compilers that had full support for a language standard level were still verified every time a new build directory was created. Now we record this information and insert the correct granular compile features instead of doing a `try_compile`.
* | Merge topic 'armcc-compiler-id'Brad King2019-04-041-1/+1
|\ \ | |/ |/| | | | | | | | | f28e7fc1a5 ARMCC: Do not identify ARMClang as ARMCC Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3187
| * ARMCC: Do not identify ARMClang as ARMCCBrad King2019-04-031-1/+1
| | | | | | | | | | | | | | | | | | | | Since commit 8f8d056051 (ARMCC: Fix identification of ARM compiler when it defines GNU macros, 2019-03-20, v3.14.1~10^2) we consider ARMCC before Clang or GNU compilers. Since armclang also defines `__ARMCC_VERSION` it is now mistaken for ARMCC. Extend the check for ARMCC to also verify that `__clang__` is not defined. Issue: #19065
| * Merge branch 'qcc-asm-detection' into release-3.14Brad King2019-02-251-0/+2
| |\ | | | | | | | | | Merge-request: !3016
| * \ Merge branch 'try_compile-expand-compile-defs' into release-3.14Brad King2019-02-152-12/+12
| |\ \ | | | | | | | | | | | | Merge-request: !2965
* | | | Record when C compilers have gained full support for 90,99,11Robert Maynard2019-03-279-0/+30
| | | |
* | | | CompileFeatures: memoize C compilers with full language level supportRobert Maynard2019-03-271-3/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously compilers that had full support for a language standard level was forced to verify this every time a new build directory was created. Now we record this information and insert the correct granular compile features instead of doing a try_compile.
* | | | Merge topic 'add-xlclang'Brad King2019-02-2612-109/+100
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d9d285c5ad jsoncpp: Fix include order for build within CMake 0d489fab19 libuv: fix atomic ops compilation with xlclang 1699f5c231 Utilities: Suppress warnings in third-party code when using XLClang f709089d84 XLClang: Extract compiler implicit include directories 5c41386357 XLClang: Add policy CMP0089 to present as XL for compatibility 8278237933 XL: Remove overlap with the new XLClang compiler ID 6f5cf2d2c6 XL: Revert "Recognize compilers identified by __ibmxl__" 90c6156aa8 XLClang: Add a new compiler ID for the clang-based XL compiler ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2921
| * | | | XL: Remove overlap with the new XLClang compiler IDChuck Atkins2019-02-252-60/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 6555286c55 (XL: Add C and C++ language level flags, 2017-04-27, v3.9.0-rc1~184^2) we added support for both the traditional XL compiler and the Clang-based variant used on Linux. The latter is now handled by `Modules/Compiler/XLClang-{C,CXX}.cmake` using the `XLClang` compiler id. Drop the corresponding content from the traditional XL compiler modules.
| * | | | XL: Revert "Recognize compilers identified by __ibmxl__"Brad King2019-02-254-26/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit eb1a9be4b6 (XL: Recognize compilers identified by __ibmxl__, 2018-03-05, v3.11.0-rc3~4^2). It is no longer needed because we now use `__ibmxl__` to identify with compiler id `XLClang`.
| * | | | XLClang: Add a new compiler ID for the clang-based XL compilerChuck Atkins2019-02-255-0/+75
| | | | |