Commit Graph

36222 Commits

Author SHA1 Message Date
Marc Chevrier aba1c9d172 target_link_libraries: Add support for the LINKER: prefix
It is now possible to use the `LINKER:` prefix in `LINK_LIBRARIES`
and `INTERFACE_LINK_LIBRARIES` target properties.

Fixes: #26318
2024-10-11 17:54:02 +02:00
Brad King 5d4f86326c Begin post-3.31 development 2024-10-09 10:04:17 -04:00
Brad King b062c18c64 Begin 3.31 release versioning 2024-10-09 10:02:30 -04:00
Brad King a71652496a Merge topic 'project-vars-policy'
e5a9ccbcc8 project: Always set <PROJECT-NAME>_* as normal variables

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9879
2024-10-09 09:20:57 -04:00
Kitware Robot 5d58adf282 CMake Nightly Date Stamp 2024-10-09 00:01:23 -04:00
Craig Scott e5a9ccbcc8 project: Always set <PROJECT-NAME>_* as normal variables
Re-introduce the behavior originally introduced in CMake 3.30.3 by
commit c1ece78d11 (project: non cache <project> prefix variables are
also created, 2024-08-27, v3.30.3~2^2), but this time with a policy for
compatibility.

Issue: #25714
Issue: #26243
2024-10-08 10:07:11 -04:00
Brad King dc371e07fb Merge topic 'project-vars'
fa07ddfebf project: Only check non-cache vars when setting project vars

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9883
2024-10-08 08:45:26 -04:00
Kitware Robot 1de987a7e9 CMake Nightly Date Stamp 2024-10-08 00:01:12 -04:00
Craig Scott fa07ddfebf project: Only check non-cache vars when setting project vars
The change in commit 86ad7cc886 (project: Only define non-cache vars if
already defined, 2024-09-15, v3.30.4~2^2) was meant to only check for
non-cache variables when deciding whether to set non-cache project
variables for the current call.  However, it erroneously checked for any
variable, including cache variables.  This gives the intended result on
the first run, but on subsequent runs a cache variable will exist that
did not on the first run, leading to different behavior between the two
runs.  Fix the logic to only check for a pre-existing non-cache
variable, as was originally intended.

Fixes: #26355
2024-10-07 10:24:37 -04:00
Brad King 5b7ab1818b Merge topic 'cmake--workflow-preset'
b80aa1d3a3 preset: Easier command line interface for Workflow Presets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !9866
2024-10-07 09:11:48 -04:00
Kitware Robot 2086ddf27e CMake Nightly Date Stamp 2024-10-07 00:02:40 -04:00
Kitware Robot 943fd14320 CMake Nightly Date Stamp 2024-10-06 00:02:00 -04:00
Kevin Tolle b80aa1d3a3 preset: Easier command line interface for Workflow Presets
A positional option allows 'cmake --workflow --preset <preset>' to be
shortened to 'cmake --workflow <preset>'.

Fixes: #26270
2024-10-05 16:08:44 +10:00
Kitware Robot 581be8a0fd CMake Nightly Date Stamp 2024-10-05 00:01:32 -04:00
Brad King d734f8dc6d Merge topic 'deprecate-pre-3.10'
84db8506ff Deprecate compatibility with CMake versions older than 3.10
9e3b559b6a Tests: Update cmake_minimum_required versions to 3.10
f4aa34daa7 Tests/RunCMake: Update cmake_minimum_required versions to 3.10
1d38d52995 Tests/RunCMake: Match diagnostic line numbers more robustly
55778f5a16 ExternalProject: Enable all policies in internal scripts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9875
2024-10-04 10:26:23 -04:00
Kitware Robot f296e7c85b CMake Nightly Date Stamp 2024-10-04 00:01:20 -04:00
Brad King 84db8506ff Deprecate compatibility with CMake versions older than 3.10
Issue a deprecation warning on calls to `cmake_minimum_required` or
`cmake_policy` that set policies based on versions older than 3.10.
Note that the effective policy version includes `...<max>` treatment.
Update the check from commit 3a4791548d (Deprecate compatibility with
CMake versions older than 3.5, 2023-02-09, v3.27.0-rc1~508^2).
2024-10-03 14:18:26 -04:00
Brad King 951122dd56 Merge topic 'aix-rpath-padding'
3e5b9229e0 AIX: Fix XCOFF editor to avoid duplicating standard libpath entries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9865
2024-10-03 08:10:27 -04:00
Brad King e78ae03893 Merge topic 'cmake-host-executable-suffix'
5d2b89d5fa Add CMAKE_HOST_EXECUTABLE_SUFFIX for Unix/Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: shiz01 <shiz01@tutanota.com>
Merge-request: !9863
2024-10-03 08:07:39 -04:00
Brad King 1ee630e06f Merge topic 'static-libraries-deduplication'
cd418d4bb6 Static libraries de-duplication: keep first occurrence
9b5c805bf6 Tests/RunCMake/LinkLibrariesStrategy: Check ordering results more strongly

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9864
2024-10-03 08:06:39 -04:00
Brad King 31db1a047e Merge topic 'ctest-sp-recursion'
f3dcbfaa8c CTest: Avoid infinite recursion with -SP option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9870
2024-10-03 08:05:11 -04:00
Kitware Robot 6849604dd2 CMake Nightly Date Stamp 2024-10-03 00:01:18 -04:00
leha-bot 5d2b89d5fa Add CMAKE_HOST_EXECUTABLE_SUFFIX for Unix/Windows
Closes: #17553
2024-10-02 10:39:40 -04:00
Marc Chevrier cd418d4bb6 Static libraries de-duplication: keep first occurrence
Fixes: #26335
2024-10-02 10:17:08 -04:00
Aditya Vidyadhar Kamath 3e5b9229e0 AIX: Fix XCOFF editor to avoid duplicating standard libpath entries
The `/usr/lib` and `/lib` entries need to be present, but do not need to
be at the end.  Avoid appending extra copies of the entries if they
already exist.

Closes: #26275
2024-10-02 08:48:32 -04:00
Brad King 823e0a3a61 Merge topic 'preserve-empty-args-test-command-lines'
fc7aa3cd69 tests: Preserve empty arguments in test command lines
9f1703530b Help: Add pre-test to prose for gtest_discover_tests()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9575
2024-10-02 08:11:57 -04:00
Brad King d8bdc9f3af Merge topic 'vs-tool-override-fix'
55831faf5b VS: Honor VS_TOOL_OVERRIDE for known source file types too

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9851
2024-10-02 08:09:33 -04:00
Daniel Pfeifer f3dcbfaa8c CTest: Avoid infinite recursion with -SP option
This was broken since 49a37d5a97.
2024-10-02 11:37:10 +02:00
Kitware Robot ffe0781106 CMake Nightly Date Stamp 2024-10-02 00:01:17 -04:00
Craig Scott fc7aa3cd69 tests: Preserve empty arguments in test command lines
This will now preserve empty values in the TEST_LAUNCHER and
CROSSCOMPILING_EMULATOR target properties for tests added by:

- The add_test() command.
- The ExternalData_Add_Test() command from the ExternalData module.
- The gtest_add_tests() or gtest_discover_tests() commands from the
  GoogleTest module.

For the gtest_add_tests() and gtest_discover_tests() commands,
empty elements in the values passed after the EXTRA_ARGS keyword
are also now preserved.

Policy CMP0178 is added to provide backward compatibility with the
old behavior where empty values were silently discarded from the
above cases.

Fixes: #26337
2024-10-02 10:09:11 +10:00
Darragh Coy 55831faf5b VS: Honor VS_TOOL_OVERRIDE for known source file types too
Visual Studio Generator: The `VS_TOOL_OVERRIDE` source file property
would previously only be respected for file types that CMake didn't know
how to build out of the box. This change allows the user to override how
any source file is built with a custom build tool, even ones with
standard/recognized extensions such as `.cxx`, `.idl`, etc.

Fixes: #26336
2024-10-01 14:00:00 -04:00
Kitware Robot d0ad8fd49c CMake Nightly Date Stamp 2024-10-01 00:01:13 -04:00
Brad King f63823ed15 Merge topic 'ctestxml-cpu-model-name'
f5af492178 CTest: Report CPU model name to dashboard

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9860
2024-09-30 09:55:31 -04:00
Brad King e36e11996f Merge topic 'enable-ssl-automatically'
c462d9243b CYGWIN,MSYS: Build CMake with OpenSSL by default

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !9858
2024-09-30 09:49:50 -04:00
Brad King 98402581f4 Merge topic 'aix-archive-shared-libraries'
6c12e0758b Ninja: Fix AIX shared library archiving

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9857
2024-09-30 09:48:21 -04:00
Brad King 73c89698dc Merge topic 'xcoff-archives'
bd2c47ad11 AIX: Fix support for editing XCOFF binary inside an archive

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9837
2024-09-30 09:46:25 -04:00
Kitware Robot 0b5854af64 CMake Nightly Date Stamp 2024-09-30 00:02:12 -04:00
Kitware Robot 38e7747911 CMake Nightly Date Stamp 2024-09-29 00:01:17 -04:00
Kitware Robot f85bcb8474 CMake Nightly Date Stamp 2024-09-28 00:01:30 -04:00
Aditya Vidyadhar Kamath 6c12e0758b Ninja: Fix AIX shared library archiving
Extend commit d27fe9dfba (AIX: Add option to archive shared libraries,
2024-06-18) to update the Ninja generator to support the new
`AIX_SHARED_LIBRARY_ARCHIVE` feature.

Fixes: #26332
2024-09-27 17:53:59 -04:00
Daniel Pfeifer f5af492178 CTest: Report CPU model name to dashboard 2024-09-27 22:37:21 +02:00
Aditya Vidyadhar Kamath bd2c47ad11 AIX: Fix support for editing XCOFF binary inside an archive
When AIX stores a `.so` inside a `.a` archive, the loader section is
aligned to maximum of the text and data alignment.  In commit 98013ad1ca
(cmXCOFF: Add support for editing binary inside an archive, 2024-07-01)
we only accounted for the data alignment.

Issue: #26275
2024-09-27 09:35:08 -05:00
Brad King c462d9243b CYGWIN,MSYS: Build CMake with OpenSSL by default
Extend the changes from commit 190a5fdffd (Automatically use OpenSSL by
default on Linux and FreeBSD if available, 2016-02-26, v3.6.0-rc1~301^2)
and commit dd3e476786 (OpenSSL: Issue an error if OpenSSL is not found,
2019-07-17, v3.16.0-rc1~379^2) to cover builds targeting the CYGWIN and
MSYS runtime platforms.
2024-09-27 10:32:33 -04:00
Brad King 5e4526d6dd CMake 3.30.4 2024-09-27 08:32:31 -04:00
Brad King f7e2422c3e Merge topic 'curl-tls-version'
38390245a2 ctest: Require minimum TLS 1.2 by default
5e1a59dc2b file(DOWNLOAD/UPLOAD): Require minimum TLS 1.2 by default

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9848
2024-09-27 08:03:01 -04:00
Brad King 5701ba7484 Merge topic 'curl-default-cainfo'
5a06872f1e cmake: Add default CA path /var/ssl/certs on AIX

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9854
2024-09-27 08:01:41 -04:00
Kitware Robot 3615290dc7 CMake Nightly Date Stamp 2024-09-27 00:01:14 -04:00
Brad King 5a06872f1e cmake: Add default CA path /var/ssl/certs on AIX
Extend commit 0abd3e538e (cmake: Use a default CA path when not using
system curl, 2015-01-22, v3.2.0-rc1~66^2) to cover AIX.
2024-09-26 13:18:44 -04:00
Brad King 38390245a2 ctest: Require minimum TLS 1.2 by default
Issue: #25701
2024-09-26 10:10:48 -04:00
Brad King 5e1a59dc2b file(DOWNLOAD/UPLOAD): Require minimum TLS 1.2 by default
Fixes: #25701
2024-09-26 10:10:20 -04:00