Commit Graph

59020 Commits

Author SHA1 Message Date
Hinell
3d31f99b74 Help: Link from usage requirement commands to detailed explanation
Augment vague mentions of "Transitive Usage Requirements" with links to
a detailed explanation.

Fixes: #23799
2022-09-16 10:54:27 -04:00
Kitware Robot
cabba23ab2 CMake Nightly Date Stamp 2022-09-16 00:01:22 -04:00
Brad King
01a25d72c6 Merge topic 'add_tasking_compiler'
94df5b6ef1 Tasking: Add support for several compiler toolsets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7491
2022-09-15 09:19:58 -04:00
Brad King
3c6d2c0213 Merge topic 'export-ios-app-layout'
d26c520f4b export: Fix IMPORTED_LOCATION of iOS flat app bundles

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7676
2022-09-15 09:08:43 -04:00
Brad King
c3522accd5 Merge topic 'binutils-apple-no-lld'
a54e25b547 BinUtils: Avoid the 'ld.lld' ELF linker on Apple platforms

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7671
2022-09-15 09:07:51 -04:00
Brad King
b178311c63 Merge topic 'fix-try_compile-tests'
4ecbf1f938 Tests: Fix recently added tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7678
2022-09-15 09:07:04 -04:00
Brad King
89ef919263 Merge branch 'release-3.24' 2022-09-15 09:05:53 -04:00
Brad King
671509ff27 Merge topic 'FindMatlab-macos-arm64'
f0edac914a FindMatlab: Add MEX binary file suffix for Apple Silicon native Matlab

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7673
2022-09-15 09:05:53 -04:00
Brad King
6a15cb88ef Merge topic 'FindMatlab-macos-arm64' into release-3.24
f0edac914a FindMatlab: Add MEX binary file suffix for Apple Silicon native Matlab

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7673
2022-09-15 09:05:52 -04:00
Brad King
a87cb4a587 Merge branch 'release-3.24' 2022-09-15 09:04:49 -04:00
Brad King
2b91a96633 Merge topic 'link-framework-with-multi-config-postfix'
fc06450ff4 Apple: Fix regression when linking a framework with postfix

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7675
2022-09-15 09:04:49 -04:00
Brad King
68540c0c92 Merge topic 'link-framework-with-multi-config-postfix' into release-3.24
fc06450ff4 Apple: Fix regression when linking a framework with postfix

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7675
2022-09-15 09:04:48 -04:00
Kitware Robot
9b22e036d1 CMake Nightly Date Stamp 2022-09-15 00:01:21 -04:00
Matthew Woehlke
4ecbf1f938 Tests: Fix recently added tests
Fix the tests added by commit 0c141b03 (try_compile: Record output
location instead of reverse computing it, 2022-08-31), which were added
as old-and-new-signature tests but only used the old signature.
2022-09-14 16:01:19 -04:00
Marc Chevrier
fc06450ff4 Apple: Fix regression when linking a framework with postfix
Fix a regression caused by commit 40178f3c90 (cmGlobalGenerator: Add
helper to split framework path, 2022-02-10, v3.24.0-rc1~661^2~1).

Fixes: #23961
2022-09-14 14:55:27 -04:00
Harry Mallon
d26c520f4b export: Fix IMPORTED_LOCATION of iOS flat app bundles
iOS/tvOS app bundles are flat and do not include the `Contents/MacOS/`
layers, so they should not be in the `IMPORTED_LOCATION`.  Use the same
logic that commit 34f5ef564a (iOS: Fix App Bundle layout, 2015-12-10,
v3.5.0-rc1~129^2~1) added for the installation layout.

Fixes: #23963
2022-09-14 14:49:05 -04:00
Michael Hirsch
f0edac914a FindMatlab: Add MEX binary file suffix for Apple Silicon native Matlab
The Matlab MEX binary file suffix is distinct for Apple Silicon.
2022-09-14 14:05:35 -04:00
Christoph Seitz
94df5b6ef1 Tasking: Add support for several compiler toolsets
Add support for the Tasking compiler toolset:

* TriCore Compiler Toolset 6.3 (with TriCore, ARM, MCS,
  8051 and PCP architecture compilers)
* SmartCode Compiler Toolset 10.1 (with TriCore, ARC, MCS,
  8051 architecture compilers)
* ARM Compiler 6.0
* MCS Complier 3.3
* 8051 Compiler 7.2

Fixes: #23756
2022-09-14 09:58:50 -04:00
Carlo Cabrera
a54e25b547 BinUtils: Avoid the 'ld.lld' ELF linker on Apple platforms
`ld.lld` is an ELF linker, so we should never set `CMAKE_LINKER` to this
when targeting an Apple platform.
2022-09-14 09:34:14 -04:00
Brad King
c3e68020d6 Merge topic 'MsvcDebugInformationFormatAbstraction'
a858466aac MSVC: Add test for debug information format
0e96a20478 MSVC: Add abstraction for debug information format
d4c8111da4 Clang/Windows: Clarify name of internal runtime library flags variables

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7606
2022-09-14 09:21:27 -04:00
Brad King
a858466aac MSVC: Add test for debug information format
Verify that the format's flags are used to compile, both in the
main project and in `try_compile` test projects.
2022-09-14 09:12:47 -04:00
Glen Chung
0e96a20478 MSVC: Add abstraction for debug information format
Replace our hard-coded default for `/Zi` with a first-class abstraction
to select the debug information format an enumeration of logical
names.  We've long hesitated to do this because the idea of "debug
information format" touches on related concepts on several platforms.
Avoid that scope creep by simply defining an abstraction that applies
only when targeting the MSVC ABI on Windows.

Removing the old default flag requires a policy because existing
projects may rely on string processing to edit them and choose a
runtime library under the old behavior.  Add policy CMP0141 to
provide compatibility.

Fixes: #10189
2022-09-14 09:12:47 -04:00
Brad King
e457663ac1 Merge topic 'Windows-Intel-dependencies'
90874a542e Intel classic compilers on Windows: use msvc style dependencies

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !7668
2022-09-14 08:14:30 -04:00
Brad King
20f9b6973b Merge topic 'modules-use-new-try_compile-signature'
2edf0fc6d7 Modules: Use new keyword-dispatched try_compile signature

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7656
2022-09-14 08:13:27 -04:00
Brad King
64b80f54f0 Merge topic 'cmake-presets-package-unsupported-error'
3546657cc7 CMakePresets.json: Fix error message for unsupported package presets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7669
2022-09-14 08:01:52 -04:00
Matthew Woehlke
2edf0fc6d7 Modules: Use new keyword-dispatched try_compile signature
Modify most of the modules that ship with CMake to use the new
try_compile / try_run signatures added by commit aa9220d3a0
(try_compile: Add keyword-dispatched signature, 2022-09-02). This
improves debugging by each invocation using its own directory so that
the results of multiple invocations can be retained.

This does not cover any invocations which provide an entire project, as
that flavor of try_compile has not yet been updated.
2022-09-14 07:52:16 -04:00
Kitware Robot
0a9ce1ec3c CMake Nightly Date Stamp 2022-09-14 00:01:12 -04:00
Marc Chevrier
90874a542e Intel classic compilers on Windows: use msvc style dependencies
Intel classic compilers generate erroneous dependencies when gcc style
is used with paths containing spaces. So, fall back to the old way to
generate dependencies by using option /showIncludes.

Fixes: #23948
2022-09-13 17:47:01 +02:00
Brad King
d4c8111da4 Clang/Windows: Clarify name of internal runtime library flags variables
Also avoid extra spaces in resulting flag strings.
2022-09-13 11:19:07 -04:00
Kyle Edwards
3546657cc7 CMakePresets.json: Fix error message for unsupported package presets 2022-09-13 10:42:11 -04:00
Brad King
355b12af79 Merge branch 'release-3.24' 2022-09-13 10:39:01 -04:00
Brad King
31f835410e CMake 3.24.2 v3.24.2 2022-09-13 09:53:22 -04:00
Brad King
9ffd170d27 Merge topic 'FindMPI-more-robust-conditionals'
08dece8b18 FindMPI: remove unnecessary variable expansions in conditionals
1edc2f337f FindMPI: match full language names when "simplifying"
93b5bdb8b4 FindMPI: quote literal values

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7666
2022-09-13 09:49:06 -04:00
Brad King
964492e663 Merge topic 'fix-commandline-test-with-symlinks'
7b62e40a64 Tests: Fix RunCMake.CommandLine test in unusual environments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7660
2022-09-13 09:48:22 -04:00
Brad King
4aeb887c82 Merge topic 'ExternalProject-cmake-install'
66b5d51f38 ExternalProject: Install CMake projects using 'cmake --install'

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7655
2022-09-13 09:47:31 -04:00
Brad King
358a49ef9b Merge topic 'LINUX-host'
caffb15d09 LINUX: Set CMAKE_HOST_LINUX variable when running on a Linux host

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: hinell <al.neodim@gmail.com>
Merge-request: !7661
2022-09-13 09:46:01 -04:00
Brad King
fd30362681 Merge topic 'ci-pwsh-cleanup'
94b27ccc36 ci: add support for gitlab-runner 'shell = pwsh' executor
de32c8ddbe ci: start every windows job with custom environment script
906b1a0bc4 ci: allow powershell variables assigned in env scripts to persist

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !7667
2022-09-13 09:45:13 -04:00
Kitware Robot
168e4491de CMake Nightly Date Stamp 2022-09-13 00:01:11 -04:00
Brad King
94b27ccc36 ci: add support for gitlab-runner 'shell = pwsh' executor
Run powershell child scripts using the same powershell tool as the
parent script.
2022-09-12 12:47:42 -04:00
Brad King
de32c8ddbe ci: start every windows job with custom environment script 2022-09-12 12:45:45 -04:00
Brad King
906b1a0bc4 ci: allow powershell variables assigned in env scripts to persist
Load env scripts with `.` sourcing instead of `Invoke-Expression`.
This allows powershell variables to persist, much like bash.

Leave helper script loading unchanged, as those scripts may set
powershell variables that we do not want to persist.
2022-09-12 12:42:25 -04:00
Harry Mallon
66b5d51f38 ExternalProject: Install CMake projects using 'cmake --install'
In some cases, `cmake --install .` implements additional semantics over
just `cmake --build . --target install`.  For example, using the Xcode
"new build system" with `IOS_INSTALL_COMBINED` requires special support
from `cmake --install` beyond building the `install` target.

Fixes: #23946
2022-09-12 09:53:22 -04:00
Matthew Woehlke
7b62e40a64 Tests: Fix RunCMake.CommandLine test in unusual environments
Modify `Tests/RunCMake/CommandLine/P_working-dir.cmake` to not spuriously
fail in environments when the build directory's nominal path is not
canonicalized (i.e. `realpath(BINDIR) != BINDIR`).
2022-09-12 09:45:50 -04:00
Brad King
6183332c27 Merge topic 'try_compile_correctly_compute_exec_name'
0c141b0393 try_compile: Record output location instead of reverse computing it

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7626
2022-09-12 09:40:39 -04:00
Brad King
bca403357e Merge topic 'manual-toolchain'
004568a9f3 Help: Add links between cmake-{toolchains,presets}(7)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7650
2022-09-12 09:39:27 -04:00
Brad King
93cd58ab86 Merge branch 'release-3.24' 2022-09-12 09:38:07 -04:00
Brad King
64f4bb5728 Merge topic 'fetchcontent-redirect-version-exact'
48b380c961 FetchContent: Ignore EXACT for redirected find_package() calls

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7665
2022-09-12 09:38:07 -04:00
Brad King
ef75657851 Merge topic 'fetchcontent-redirect-version-exact' into release-3.24
48b380c961 FetchContent: Ignore EXACT for redirected find_package() calls

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7665
2022-09-12 09:38:06 -04:00
Brad King
0f8838c8d3 Merge branch 'release-3.24' 2022-09-12 09:36:07 -04:00
Brad King
db715b6632 Merge topic 'FortranCInterface-LLVMFlang'
0f5b6dd215 FortranCInterface: Add support for LLVMFlang mangling

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7658
2022-09-12 09:36:07 -04:00