summaryrefslogtreecommitdiffstats
path: root/Modules/Compiler/IntelLLVM.cmake
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'automoc-predefs'Brad King2025-04-241-1/+1
|\ | | | | | | | | | | | | | | ccef69bde4 AUTOMOC: Avoid compiler warnings while computing predefines Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !10702
| * AUTOMOC: Avoid compiler warnings while computing predefinesBrad King2025-04-241-1/+1
| | | | | | | | | | | | | | | | | | LLVM/Clang 20, when invoked as `clang++ -E -c ...`, now warns: warning: argument unused during compilation: '-c' Drop the unnecessary `-c` flag. Also add a `-w` flag to suppress warnings so their text is not parsed as predefines.
* | LICENSE: Replace references to Copyright.txt with LICENSE.rstKitware Robot2025-03-031-1/+1
| | | | | | | | | | | | | | | | | | | | ``` git grep -lz 'Copyright.txt or https://cmake.org/licensing ' | while IFS= read -r -d $'\0' f ; do sed -i '/Copyright.txt or https:\/\/cmake.org\/licensing / { s/Copyright.txt/LICENSE.rst/ }' "$f" ; done ```
* | Introduce CMAKE_<LANG>_LINK_MODE variable.Marc Chevrier2025-01-101-0/+4
|/ | | | | | This variable define how the link step is done. Possible values are: * DRIVER: the compiler is used as driver for the link step * LINKER: the linker is used directly for the link step.
* Rename {_ => }CMAKE_INCLUDE_SYSTEM_FLAG_${lang}_WARNINGPatrick H2024-07-291-1/+1
| | | | | | | Although not documented publicly, projects may need to override this variable. Remove the private `_` prefix from its name. Issue: #25103
* IntelLLVM: Revert accidental use of -external:I with Fortran compilersBrad King2024-03-241-6/+6
| | | | | | | | | In commit 8218aed118 (IntelLLVM: support marking include paths as SYSTEM directories, 2023-08-15, v3.29.0-rc1~81^2) this flag was added for the C and C++ compilers, but was accidentally added for Fortran too. Remove it for the latter, as it is unsupported. Issue: #25807
* IPO: Support duplicate object names in large archivesRuslan Baratov2024-02-151-2/+2
| | | | | | | | | Apply the fix from commit 1ec6485c6a (Support duplicate object names in large archives, 2014-04-16, v3.1.0-rc1~629^2) to the IPO-specific archiving rules. Use "quick append" instead of "replace". Fixes: #25675 Issue: #14874
* IntelLLVM: support marking include paths as SYSTEM directoriesBen Boeckel2024-01-241-0/+6
| | | | | | Also learn how to suppress warnings when possible. See: https://discourse.cmake.org/t/icx-on-windows-supports-external-i/8739
* IntelLLVM: Suppress -Rdebug-disables-optimization on debug buildsBram Metsch2023-09-071-0/+7
| | | | | | IntelLLVM 2023.0.0 and above emit this remark if `-g` is used without any `-O<level>` flag, which is our default behavior. Add another flag to suppress the remark.
* Only initialize CMAKE_CXX_COMPILER_PREDEFINES_COMMANDJoerg Bornemann2022-11-161-9/+11
| | | | | | | | | | | Don't initialize the other CMAKE_<LANG>_COMPILER_PREDEFINES_COMMAND variables. The only language variant that is used is CMAKE_CXX_COMPILER_PREDEFINES_COMMAND, and the other language variants contained invalid, namely C++-specific commands. Fixes: #23968
* Merge topic 'Intel-Fortran-warn-errors'Brad King2022-10-101-3/+9
|\ | | | | | | | | | | | | | | | | 13f3382b1c Intel/IntelLLVM: Fortran has distinct "-Werror"-like flag ab8a0a106e COMPILE_WARNING_AS_ERROR: Fix internal formatting of options table Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7758
| * Intel/IntelLLVM: Fortran has distinct "-Werror"-like flagMichael Hirsch2022-10-071-3/+9
| | | | | | | | | | | | | | Update the compiler options table added by commit 76a08cd253 (COMPILE_WARNING_AS_ERROR: Add options to treat warnings as errors, 2022-04-21, v3.24.0-rc1~173^2) to use the Intel Fortran compilers' dedicated `-warn*` flags.
* | Enable IPO for IntelLLVM compilers on Linux and WindowsWilliam R. Dieter2022-08-011-6/+15
|/ | | | | | | Replicate and adapt Linux IPO options for Intel for IntelLLVM compilers on Linux and Windows. Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
* COMPILE_WARNING_AS_ERROR: Add options to treat warnings as errorsMartin Duffy2022-05-061-0/+2
| | | | | | | | | | | | Add `COMPILE_WARNING_AS_ERROR` target property and supporting `CMAKE_COMPILE_WARNING_AS_ERROR` variable. `COMPILE_WARNING_AS_ERROR` is initialized by `CMAKE_COMPILE_WARNING_AS_ERROR`. It is a boolean variable. If it is true, it expands to a different flag depending on the compiler such that any warnings at compile will be treated as errors. Supports compiler ids that I could find a relevant flag for.
* IntelLLVM: Remove unsupported -imsvc system include flagwilliam.r.dieter2021-02-101-1/+0
| | | | | | | | | `clang-cl` supports the `-imsvc` flag to tell the compiler an include directory is intended for system paths. `icx` does not accept this flag, even on MSVC platforms, so do not tell CMake that it exists. Fixes: #21801 Signed-off-by: william.r.dieter <william.r.dieter@intel.com>
* IntelLLVM: Add support for Intel LLVM-based compilersWilliam R. Dieter2021-01-281-0/+93
Using a single ID 'IntelLLVM' for the suite of Intel compilers based on the LLVM backend. The 'IntelLLVM' ID are used for C, C++, and Fortran. Data Parallel C++ will be handled in a separate commit. The C and C++ definitions are based on the Clang definitions. The Intel LLVM-based C and C++ compilers are based on the Clang front end, so existing Clang options are more likely to be a good match than options for the older Intel compilers. Fortran is based on the older Fortran front end with the LLVM backend. It has a similar interface to the older versions, though many options are shared with the C and C++ compilers. Fixes: #21561 Signed-off-by: William R. Dieter <william.r.dieter@intel.com>