Commit Graph

10480 Commits

Author SHA1 Message Date
Ben Boeckel
be53c75852 cmExperimental: recycle the C++ modules API UUID
`try_compile` and `try_run` now support C++ modules.
2023-07-31 11:59:50 -04:00
Ben Boeckel
b768d293c5 cmCoreTryCompile: use the source type context for source files
Also add a test to `RunCMake/CXXModules` to test `try_compile` with C++
modules.

Fixes: #25097
2023-07-31 11:59:47 -04:00
Brad King
7518fd6074 Merge topic 'test-target-property-init'
b66c494ca4 Tests/RunCMake/property_init: test 'with_exports' properties
efad4391e5 Tests/RunCMake/property_init: test 'with_commands' properties
5f1bf85f84 Tests/RunCMake/property_init: test 'with_artifact' properties
02972ed9e8 Tests/RunCMake/property_init: test 'shared_library' properties
653a32aa72 Tests/RunCMake/property_init: test 'pic_targets' properties
141049cf16 Tests/RunCMake/property_init: test 'normal' properties
bc318ceb7f Tests/RunCMake/property_init: test 'non_imported' properties
0b56e3fedd Tests/RunCMake/property_init: test 'normal_non_imported' properties
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8655
2023-07-31 10:50:23 -04:00
Brad King
307b2dbadd Merge topic 'ci-debian-12'
241ee252ce IWYU: Update for Debian 12 CI job
09db788636 ci: use Debian 12 images and environments
9526679bbc ci: Update base images to Debian 12

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8669
2023-07-31 10:42:01 -04:00
Ben Boeckel
b66c494ca4 Tests/RunCMake/property_init: test 'with_exports' properties 2023-07-29 09:35:21 -04:00
Ben Boeckel
efad4391e5 Tests/RunCMake/property_init: test 'with_commands' properties 2023-07-29 09:35:21 -04:00
Ben Boeckel
5f1bf85f84 Tests/RunCMake/property_init: test 'with_artifact' properties 2023-07-29 09:35:21 -04:00
Ben Boeckel
02972ed9e8 Tests/RunCMake/property_init: test 'shared_library' properties 2023-07-29 09:35:21 -04:00
Ben Boeckel
653a32aa72 Tests/RunCMake/property_init: test 'pic_targets' properties 2023-07-29 09:35:21 -04:00
Ben Boeckel
141049cf16 Tests/RunCMake/property_init: test 'normal' properties 2023-07-29 09:35:21 -04:00
Ben Boeckel
bc318ceb7f Tests/RunCMake/property_init: test 'non_imported' properties 2023-07-29 09:35:21 -04:00
Ben Boeckel
0b56e3fedd Tests/RunCMake/property_init: test 'normal_non_imported' properties 2023-07-29 09:35:20 -04:00
Ben Boeckel
c1ff120e42 Tests/RunCMake/property_init: test 'linkable' properties 2023-07-29 09:35:20 -04:00
Ben Boeckel
313c6a9c74 Tests/RunCMake/property_init: test 'library_with_artifact' properties 2023-07-29 09:35:20 -04:00
Ben Boeckel
bb469aef2d Tests/RunCMake/property_init: add per_config table builder helper 2023-07-29 09:35:20 -04:00
Ben Boeckel
a048be7e3a Tests/RunCMake/property_init: test 'imported' properties 2023-07-29 09:35:20 -04:00
Ben Boeckel
a6ebd68aa7 Tests/RunCMake/property_init: test 'executable' properties 2023-07-29 09:35:20 -04:00
Ben Boeckel
5bad24935c Tests/RunCMake/property_init: test 'can_compile' properties 2023-07-29 09:35:20 -04:00
Ben Boeckel
82507e80eb Tests/RunCMake/property_init: test 'always' properties
All targets get these targets initialized.
2023-07-29 09:35:20 -04:00
Ben Boeckel
721f1b608c Tests/RunCMake/property_init: add a function to test properties
This function consumes a property table and tests against every kind of
target: those for which the initialization happens and those that should
ignore them.

Also add a function that can build the pairs of target type lists
required.
2023-07-29 09:35:20 -04:00
Ben Boeckel
1c0963e9f2 Tests/RunCMake/property_init: add functions to make example targets 2023-07-29 09:35:20 -04:00
Ben Boeckel
7b9378be43 Tests/RunCMake/property_init: add a function to parse property tables
The tables will be triples of property / value / alias value. Parsing is
a bit tricky, but is easier when `foreach (IN ZIP_LISTS)` with the
values in their distinct list.
2023-07-29 09:35:20 -04:00
Ben Boeckel
16c24cce47 Tests/RunCMake/property_init: add a function to check a property 2023-07-29 09:35:20 -04:00
Ben Boeckel
f81351607c Tests/RunCMake/property_init: add skeleton for testing 2023-07-29 09:35:20 -04:00
Kyle Edwards
9bf8f7de06 find_library(): Add support for .xcframework
Issue: #21752
2023-07-28 14:41:45 -04:00
Brad King
241ee252ce IWYU: Update for Debian 12 CI job
`include-what-you-use` diagnostics, in practice, are specific to
the environment's compiler and standard library.  Update includes
to satisfy IWYU for our CI job under Debian 12.
2023-07-28 09:14:08 -04:00
Kyle Edwards
07ac0c0ae0 Merge topic 'xcframework-target-link-libraries'
7050ac56a1 macOS: Add support for linking against .xcframework folders
93ed53790c bootstrap: Unconditionally build libjsoncpp

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8619
2023-07-27 10:06:22 -04:00
Brad King
054ed1c594 Merge topic 'cmuvprocesschain-wait-0'
830a4b37aa cmUVProcessChain::Wait(): Treat timeout of 0 as no timeout

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8658
2023-07-27 10:01:05 -04:00
Kyle Edwards
7050ac56a1 macOS: Add support for linking against .xcframework folders
Issue: #21752
2023-07-26 17:00:01 -04:00
Kyle Edwards
830a4b37aa cmUVProcessChain::Wait(): Treat timeout of 0 as no timeout 2023-07-26 13:08:27 -04:00
Brad King
5a164f1649 Merge topic 'jobserver-fix'
3825d6ec98 add_custom_{command,target}: Teach JOB_SERVER_AWARE about WORKING_DIRECTORY

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8644
2023-07-26 10:19:46 -04:00
Kyle Edwards
8129bf85ed Merge topic 'exec-program-policy'
ff12a57d5e exec_program(): Remove by policy CMP0153

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8653
2023-07-26 09:23:32 -04:00
Brad King
c96cb57e8e Merge topic 'property-typo-fix'
c172eecea6 cmTarget: Restore Fortran_PREPROCESS property initialization

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8654
2023-07-25 13:55:56 -04:00
Ben Boeckel
c172eecea6 cmTarget: Restore Fortran_PREPROCESS property initialization
Fix a typo from commit e522f8ca06 (cmTarget: factor out properties
initialized for target which compile, 2023-02-01, v3.27.0-rc1~577^2~13),
that broke this property.

Also update the test suite to use this upgrade as some level of
coverage.

Fixes: #25123
2023-07-25 11:35:24 -04:00
Chris Mahoney
3825d6ec98 add_custom_{command,target}: Teach JOB_SERVER_AWARE about WORKING_DIRECTORY
Issue: #16273
2023-07-25 11:34:22 -04:00
Kyle Edwards
ff12a57d5e exec_program(): Remove by policy CMP0153 2023-07-25 11:09:56 -04:00
Brad King
f6b8bd41bc Merge topic 'cdash_checksum_400'
b7c871f745 ctest: Update ctest_submit for CDash behavior change

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8648
2023-07-25 11:03:06 -04:00
Brad King
89a692aa18 Merge topic 'remove-exec-program-usage'
edfa4d762d cmake_uninstall.cmake.in: Replace exec_program() with execute_process()
8776236161 Tests/ExternalOBJ: Replace exec_program() with execute_process()
54a68b221a Tests/ComplexOneConfig: Replace exec_program() with execute_process()
13e674b61b Tests/Complex: Replace exec_program() with execute_process()
e43d97cb29 Tests/CommandLineTest: Replace exec_program() with execute_process()
6463263ffa Tests/CMakeOnly: Replace exec_program() with execute_process()
f73a5bfaa9 UsePkgConfig: Replace exec_program() with execute_process()
17bab9e709 FindwxWindows: Replace exec_program() with execute_process()
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !8652
2023-07-25 09:22:04 -04:00
Brad King
13362ff138 Merge topic 'fix-ctest-timeout-regression'
0e8584c89c CTest: Fix regression in calculating test timeout

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8647
2023-07-25 09:21:11 -04:00
Zack Galbreath
b7c871f745 ctest: Update ctest_submit for CDash behavior change
open.cdash.org was recently upgraded in preparation for the release of
CDash v3.2.0. This upgrade brought a change in behavior where CDash now
responds with HTTP 400 (bad request) rather than HTTP 200 (OK) for MD5
checksum mismatches during submission time.

This commit removes our usage of CURLOPT_FAILONERROR in
cmCTestSubmitHandler.cxx This was necessary to pass along the contents
of the request body ("md5 mismatch") in cases where the web server
(CDash) responds with an error status (400).

Fixes: #25121
2023-07-25 09:09:56 -04:00
Kyle Edwards
0e8584c89c CTest: Fix regression in calculating test timeout
Fixes: #25120
2023-07-24 19:29:54 -04:00
Kyle Edwards
8776236161 Tests/ExternalOBJ: Replace exec_program() with execute_process() 2023-07-24 17:59:24 -04:00
Kyle Edwards
54a68b221a Tests/ComplexOneConfig: Replace exec_program() with execute_process() 2023-07-24 17:28:04 -04:00
Kyle Edwards
13e674b61b Tests/Complex: Replace exec_program() with execute_process() 2023-07-24 17:26:18 -04:00
Kyle Edwards
e43d97cb29 Tests/CommandLineTest: Replace exec_program() with execute_process() 2023-07-24 17:23:33 -04:00
Kyle Edwards
6463263ffa Tests/CMakeOnly: Replace exec_program() with execute_process() 2023-07-24 17:23:33 -04:00
Brad King
6194193a8a Merge topic 'file-REAL_PATH-relative'
6b5f2dbbfe file(REAL_PATH): resolve symlinks before '..' components

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8605
2023-07-24 08:43:19 -04:00
Brad King
f8c3fd0c45 Merge topic 'dyndep-module-info-objlib-dependency'
b665966933 cmComputeLinkInformation: track OBJECT library dependencies
a99b87a628 Tests/RunCMake/CXXModules: add a test for issue #25112
2870a67540 Tests/FortranOnly: add a test case for issue #25112

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8645
2023-07-24 08:31:53 -04:00
Ben Boeckel
a99b87a628 Tests/RunCMake/CXXModules: add a test for issue #25112
Add a test case for C++ `OBJECT` libraries providing modules to
consumers.
2023-07-22 06:53:38 -04:00
Ben Boeckel
2870a67540 Tests/FortranOnly: add a test case for issue #25112
Add a test case for Fortran `OBJECT` libraries providing modules to
consumers.
2023-07-22 06:53:36 -04:00