summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* BinUtils: Use more-private temporary variable namesBrad King2021-05-041-10/+12
| | | | | | | | | | Since commit 4d786dfcfa (BinUtils: Avoid clobbering a variable named without a private prefix, 2021-04-06, v3.20.1~4^2) we use variables named `_tool` and `_name`, but these may still be common enough to affect project code. Use `_CMAKE_TOOL` and `_CMAKE_TOOL_NAME` instead, and unset them when finished. Fixes: #22140
* Merge topic 'doc-preset-schema-relative' into release-3.20Brad King2021-05-041-3/+3
|\ | | | | | | | | | | | | | | 75dadc4558 Help: Use relative path for IDE Integration guide link to preset schema Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Kyle Edwards <kyle.edwards@kitware.com> Merge-request: !6083
| * Help: Use relative path for IDE Integration guide link to preset schemaBrad King2021-05-031-3/+3
| | | | | | | | | | This allows the integration guide to build as part of a larger set of documentation.
* | Merge topic 'ninja-multi-long-command-line-config' into release-3.20Brad King2021-05-039-30/+66
|\ \ | |/ |/| | | | | | | | | ad08f93ee4 Ninja Multi-Config: Split long command lines by config Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6067
| * Ninja Multi-Config: Split long command lines by configKyle Edwards2021-04-309-30/+66
|/ | | | Fixes: #22123
* CMake 3.20.2v3.20.2Brad King2021-04-291-1/+1
|
* Merge topic 'intel-2021' into release-3.20Brad King2021-04-293-17/+54
|\ | | | | | | | | | | | | | | 9c479c7c40 IntelLLVM: Add special case for ifx 2021.1 version extraction b7193ab18f Intel: Update Classic compiler version detection for 2021 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6052
| * IntelLLVM: Add special case for ifx 2021.1 version extractionBrad King2021-04-282-5/+16
| | | | | | | | | | | | | | The ifx beta versions forgot to define `__INTEL_LLVM_COMPILER`, and instead define `__INTEL_COMPILER == 201900`. Add a special case. Issue: #22120
| * Intel: Update Classic compiler version detection for 2021Brad King2021-04-283-12/+38
|/ | | | | | | The value of the `__INTEL_COMPILER` macro changed convention starting in version 2021. Fixes: #22120
* Merge topic 'doc-compile-features-wcdh' into release-3.20Brad King2021-04-262-115/+142
|\ | | | | | | | | | | | | | | 1f4ec3f4a7 Help: Do not recommend WCDH in cmake-compile-features(7) 1cc63f2cd5 Help: Fix typos in cmake-compile-features(7) Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6037
| * Help: Do not recommend WCDH in cmake-compile-features(7)Brad King2021-04-232-114/+141
| | | | | | | | | | | | | | | | | | Since commit da7ad7997e (WriteCompilerDetectionHeader: Add policy to remove module, 2020-12-04, v3.20.0-rc1~350^2), the WCDH module is deprecated. Update the `cmake-compile-features(7)` manual section that previously recommended WCDH to make such detection the project's responsibility instead. Move the old content of the section over to the WCDH module to preserve it.
| * Help: Fix typos in cmake-compile-features(7)Brad King2021-04-231-6/+6
| |
* | Merge topic 'ninja-multi-custom-target-post-build' into release-3.20Brad King2021-04-264-1/+15
|\ \ | |/ |/| | | | | | | | | f8e2a74712 Ninja Multi-Config: Correctly generate POST_BUILD custom targets Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6040
| * Ninja Multi-Config: Correctly generate POST_BUILD custom targetsKyle Edwards2021-04-224-1/+15
| | | | | | | | Fixes: #22096
* | Merge topic 'update-kwiml' into release-3.20Brad King2021-04-221-0/+4
|\ \ | |/ |/| | | | | | | | | | | bd8cc6d603 Merge branch 'upstream-KWIML' into update-kwiml 873dbc52e9 KWIML 2021-04-21 (49d91529) Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6032
| * Merge branch 'upstream-KWIML' into update-kwimlBrad King2021-04-211-0/+4
| |\ |/ / | | | | | | | | # By KWIML Upstream * upstream-KWIML: KWIML 2021-04-21 (49d91529)
| * KWIML 2021-04-21 (49d91529)KWIML Upstream2021-04-211-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Code extracted from: https://gitlab.kitware.com/utils/kwiml.git at commit 49d9152941311c05d281b1f927368b1efbb33a01 (master). Upstream Shortlog ----------------- Xiaotian Wu (1): 49d91529 abi.h: Add LoongArch64 support
* | Merge topic 'autogen-clear-early-source-cache' into release-3.20Brad King2021-04-213-0/+16
|\ \ | | | | | | | | | | | | | | | | | | b84f1e6159 Autogen: Restore mocs_compilation in OBJECT libraries Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6024
| * | Autogen: Restore mocs_compilation in OBJECT librariesBrad King2021-04-203-0/+16
|/ / | | | | | | | | | | | | | | | | Since commit f65f20938c (Autogen: Avoid processing CSharp targets, 2020-11-12, v3.20.0-rc1~301^2) we collect all sources for a target earlier than previously. Clear the sources cache so that it will be re-computed later after AUTOGEN processing. Fixes: #22085
* | Merge topic 'doc-if-IS_ABSOLUTE' into release-3.20Brad King2021-04-202-2/+12
|\ \ | | | | | | | | | | | | | | | | | | | | | 6234afdff4 Help: Document special cases for if(IS_ABSOLUTE) 789307b02f Help: Behavior of file(TO_NATIVE_PATH) depends on the host platform Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6016
| * | Help: Document special cases for if(IS_ABSOLUTE)Craig Scott2021-04-171-1/+10
| | | | | | | | | | | | | | | | | | | | | The meaning of "absolute path" was previously assumed knowledge, but a number of special cases were left unspecified. The way some of these are handled differs to the way that cmake_path(IS_ABSOLUTE) works, so document those special cases so that the differing behavior between these two commands is clearly defined.
| * | Help: Behavior of file(TO_NATIVE_PATH) depends on the host platformCraig Scott2021-04-171-1/+2
| | |
* | | Merge topic 'cxxprefix' into release-3.20Brad King2021-04-191-1/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4c741d945a BinUtils: Restore toolchain prefix detection from compiler name 'c++' Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Thomas Bernard <thomas@famillebernardgouriou.fr> Merge-request: !6011
| * | | BinUtils: Restore toolchain prefix detection from compiler name 'c++'Lihua Zhao2021-04-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit b12aec6c8d (BinUtils: prefer bin utils matching the compiler version extension, 2020-12-11, v3.20.0-rc1~171^2) we recognize `clangg++` and `g++` but not `c++`. Restore `[gc]` in place of `g` in the regex, as we had before that change. Fixes: #22069
* | | | Merge topic 'mrjoel/add-missing-not' into release-3.20Brad King2021-04-192-4/+4
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 370bebd921 Add missing 'not' in error messages Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6012
| * | | | Add missing 'not' in error messagesJoel Johnson2021-04-162-4/+4
| |/ / /
* | | | Merge topic 'ci-lint-delay' into release-3.20Brad King2021-04-161-1/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 661ff7f2d8 gitlab-ci: equally delay all jobs on integration branches Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !6013
| * | | | gitlab-ci: equally delay all jobs on integration branchesBrad King2021-04-161-1/+2
|/ / / / | | | | | | | | | | | | | | | | | | | | When running a pipeline on an integration branch in `cmake/cmake`, delay the lint jobs just as much as all the others. This avoids starting them unnecessarily during a sequence of merges over a short time range.
* | | | Merge topic 'depfile-reader-thread-safety' into release-3.20Brad King2021-04-161-5/+6
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | 53d523f2e1 autogen: fix race in depfile parsing Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6008
| * | | autogen: fix race in depfile parsingKyle Edwards2021-04-151-5/+6
|/ / / | | | | | | | | | | | | | | | | | | | | | cmReadGccDepfile() calls cmSystemTools::CollapseFullPath(), which is not thread safe due to internal caching. Serialize calls to cmReadGccDepfile() in autogen to avoid thread safety issues. Fixes: #22014
* | | Merge topic 'doc-error-unknown-arg' into release-3.20Brad King2021-04-152-0/+5
|\ \ \ | |/ / |/| | | | | | | | | | | | | | 06d26c7baf Help: Add 3.20 release note for error on unknown arguments Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6003
| * | Help: Add 3.20 release note for error on unknown argumentsBrad King2021-04-142-0/+5
|/ / | | | | | | | | | | | | This was left out of commit 1b6c5333a0 (cmake: Error out on unknown arguments starting with `-`., 2020-11-30, v3.20.0-rc1~370^2). Fixes: #22060
* | Merge topic 'openbsd-defines' into release-3.20Brad King2021-04-144-10/+9
|\ \ | | | | | | | | | | | | | | | | | | 317a477283 OpenBSD: Fix system feature definitions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6000
| * | OpenBSD: Fix system feature definitionsRafael Sadowski2021-04-144-10/+9
| | | | | | | | | | | | | | | | | | | | | | | | Since commit f034b0f663 (CMake compilation: do not use compiler extensions, 2020-03-14, v3.18.0-rc1~494^2), some sources explicitly enable needed system APIs on some platforms using definitions like `_POSIX_C_SOURCE` and `_XOPEN_SOURCE`. Drop the definitions for OpenBSD, which provides the POSIX APIs by default.
* | | Merge topic 'ci-parallelism-limits' into release-3.20Brad King2021-04-143-4/+16
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 3fd2cffb4d ci: limit builds by machine load 6317f92120 ci: pay attention to the machine load when running tests Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5989
| * | ci: limit builds by machine loadBen Boeckel2021-04-062-4/+14
| | | | | | | | | | | | | | | To avoid starving test jobs, the build jobs should also back off if there is a lot of machine load.
| * | ci: pay attention to the machine load when running testsBen Boeckel2021-04-062-0/+2
| | | | | | | | | | | | | | | | | | CMake's test suite is sensitive to machine load and can cause spurious timeouts. To acknowledge this, prevent CTest from spawning tests into a busy machine.
* | | CMake 3.20.1v3.20.1Brad King2021-04-081-1/+1
| | |
* | | Merge topic 'flags-with-backslash' into release-3.20Brad King2021-04-088-5/+25
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 3953dfcb31 Restore support for backslashes in initial language-wide flags Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5995
| * | | Restore support for backslashes in initial language-wide flagsBrad King2021-04-078-5/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit bdc40742bd (CMakeDetermineCompilerId: Test without COMPILER_ID_FLAGS if REQUIRE_SUCCESS, 2021-02-27, v3.20.0-rc3~6^2) added an extra macro layer through which flag strings are passed. That caused an extra level of argument re-parsing, and broke flags with backslashes. Pass flags to the helper macro through variable names instead. Fixes: #22041
* | | | Merge topic 'cuda-depfile-ccbin' into release-3.20Brad King2021-04-082-1/+12
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8e38985db7 Makefiles: Fix dependency extraction with CUDA < 10.2 and host compiler Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Raul Tambre <raul@tambre.ee> Acked-by: Robert Maynard <robertjmaynard@gmail.com> Merge-request: !5992
| * | | | Makefiles: Fix dependency extraction with CUDA < 10.2 and host compilerBrad King2021-04-072-1/+12
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 2c71d051fa (Makefiles Generators: use compiler for dependencies generation, 2020-10-18, v3.20.0-rc1~392^2) we invoke `nvcc` for CUDA < 10.2 a second time in order to generate a depfile. When `CMAKE_CUDA_HOST_COMPILER` is set, the second invocation is missing its `-ccbin=` option, even after refactoring in commit 8981e3e7cc (NVIDIA-CUDA: rely on new capabilities for deps generation, 2020-12-02, v3.20.0-rc1~362^2). Ideally we should move the `-ccbin=` flag into `Compiler/NVIDIA-CUDA`, but that will add `CMAKE_CUDA_HOST_COMPILER` support on Windows in command-line generators but not the Visual Studio generators. For now, add the flag to the depfile command specifically. Fixes: #22037
* | | | Merge topic 'FindBLAS-default-OpenMP' into release-3.20Brad King2021-04-081-2/+11
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | 9ef82d95d8 FindBLAS: Fix detection of OpenMP as dependency of BLA_STATIC Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5993
| * | | FindBLAS: Fix detection of OpenMP as dependency of BLA_STATICBrad King2021-04-071-2/+11
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the change from commit f7f3d8987a (FindBLAS: Add dependency of OpenBLAS on OpenMP for BLA_STATIC, 2020-11-10, v3.20.0-rc1~492^2): * If C is not enabled, find CXX OpenMP libraries instead. * Do not use BLA_STATIC's custom CMAKE_FIND_LIBRARY_SUFFIXES for OpenMP. It can break projects that already call `find_package(OpenMP)` and expect a shared library. Whether OpenMP is static is orthogonal to whether BLAS is static. Fixes: #22039 Issue: #16221
* | | Merge topic 'binutils-var-private' into release-3.20Brad King2021-04-071-10/+10
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 4d786dfcfa BinUtils: Avoid clobbering a variable named without a private prefix Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5986
| * | | BinUtils: Avoid clobbering a variable named without a private prefixBrad King2021-04-071-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit b12aec6c8d (BinUtils: prefer bin utils matching the compiler version extension, 2020-12-11, v3.20.0-rc1~171^2) accidentally leaked a `TOOL` variable. Name temporary variables with a private prefix. Fixes: #22035
* | | | Merge topic 'ios-rpath-linker-flag' into release-3.20Brad King2021-04-074-9/+13
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4aed96e230 Apple: Set CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG on non-macOS too Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5980
| * | | | Apple: Set CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG on non-macOS tooCraig Scott2021-04-064-9/+13
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since CMake 3.19, we no longer support macOS SDKs older than 10.5, which corresponds to Xcode 3. Supporting older Xcode versions for device platforms is also not realistic. We therefore expect the -rpath linker option should always be supported now. When targeting iOS, tvOS or watchOS, the previous disabling of -rpath support meant that the install_name_dir of shared libraries and frameworks was unable to use @rpath. This resulted in embedding absolute paths for their install_name. When they were embedded in an app bundle, this would cause the app to fail at runtime. By enabling the -rpath linker option, the default install_name_dir is now @rpath for these platforms, which results in binaries that do work at runtime. Fixes: #20036
* | | | Merge branch 'release-3.19' into release-3.20Brad King2021-04-060-0/+0
|\ \ \ \
| * | | | CMake 3.19.8v3.19.8Brad King2021-04-061-1/+1
| | | | |