Brad King
70623f3bbf
Tests: Fix RunCMake.BuildDepends Fortran case with Intel compiler on Windows
...
The test regularly fails updating the `vc*.pdb` compiler-generated
PDB file. Add the `/Z7` flag as the compiler suggests for this.
2023-08-10 10:22:59 -04:00
Brad King
1233da9f4a
Merge topic 'OPTIMIZE_DEPENDENCIES-runtime-targets'
...
84eae7aeda OPTIMIZE_DEPENDENCIES: Skip order-only deps for non-linking targets
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !8685
2023-08-10 08:58:34 -04:00
Brad King
f16bbea383
Merge topic 'test-cxxmodules-generated-fix'
...
1e9ec93f48 Tests/RunCMake/CXXModules: actually generate the source at build time
Acked-by: Kitware Robot <kwrobot@kitware.com >
Tested-by: buildbot <buildbot@kitware.com >
Merge-request: !8693
2023-08-10 08:56:29 -04:00
Craig Scott
84eae7aeda
OPTIMIZE_DEPENDENCIES: Skip order-only deps for non-linking targets
...
Fixes : #21517
2023-08-10 09:17:56 +10:00
Brad King
c05d06c6ed
Merge topic 'file-GENERATE-arg-parsing'
...
88f90a72f1 file(GENERATE): Restore INPUT|CONTENT parse checking
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Merge-request: !8694
2023-08-08 10:06:39 -04:00
Evan Wilde
88f90a72f1
file(GENERATE): Restore INPUT|CONTENT parse checking
...
Refactoring in commit bff468c988 (cmFileCommand: Use cm::optional for
keyword argument presence, 2022-06-30, v3.25.0-rc1~512^2) accidentally
broke the check that the input argument is either `INPUT` or `CONTENT`.
The check is supposed to fail when arguments are passed in the wrong
order. For example:
file(GENERATE OUTPUT ...
TARGET <target>
CONTENT <content>)
Prior to this fix, the input method would be CONTENT, but because the
first parsed keyword is not `CONTENT`, `inputIsContent` would be false.
The first parsed keyword isn't INPUT either, so we would not continue
into the error condition. CMake would then try to handle this as an
input file, when there isn't one, resulting in uninitialized memory
usage and segfaults or corruption later on.
Fixes : #25169
2023-08-07 19:17:29 -04:00
Ben Boeckel
1e9ec93f48
Tests/RunCMake/CXXModules: actually generate the source at build time
...
This tests what is intended to be tested (sources that do not exist
until after the configure has run).
2023-08-07 19:14:45 -04:00
Brad King
efb21962fb
Merge topic 'cxxmodules-try-compile'
...
be53c75852 cmExperimental: recycle the C++ modules API UUID
deb1c3cbd5 cmCoreTryCompile: forward module-related binutils variables
b768d293c5 cmCoreTryCompile: use the source type context for source files
93993c7ad4 cmArgumentParser: support storing a context value with parsing
c9ca5f6326 cmCoreTryCompile: parse `SOURCES_TYPE` argument
07551f35de cmCoreTryCompile: use `target_sources` for `try_compile` targets
aad9033b56 cmExperimental: support forwarding associated variables to `try_compile`
f6cf433256 cmExperimental: only forward C++ module support to non-ABI checks
...
Acked-by: Kitware Robot <kwrobot@kitware.com >
Tested-by: buildbot <buildbot@kitware.com >
Merge-request: !8639
2023-08-07 11:57:00 -04:00
Brad King
ade507f64c
Merge topic 'set-CACHE-diagnostics'
...
20c23518d9 set: Improve diagnostics for CACHE mode
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Merge-request: !8679
2023-08-07 11:53:39 -04:00
Brad King
1972a7b6e3
Merge branch 'backport-revert-vs-show-cmake-files'
2023-08-02 12:11:11 -04:00
Brad King
0d1529000d
VS: Revert "Add CMake input files to ZERO_CHECK"
...
Since commit df58dbb0e9 (VS: Add CMake input files to ZERO_CHECK,
2023-03-19, v3.27.0-rc1~157^2), projects that specify the same file both
as input to `configure_file` and as the `MAIN_DEPENDENCY` of a custom
command fail to configure. Revert the change pending further
investigation. Add a test case demonstrating the problem.
Issue: #24557
Fixes : #25149
2023-08-02 11:53:48 -04:00
Jeremy
20c23518d9
set: Improve diagnostics for CACHE mode
...
Improve `set()` diagnostics to be more specific than
given invalid arguments for CACHE mode
2023-08-02 10:07:56 -04:00
Brad King
17dcd9424a
Merge topic 'xcode-embed-resources'
...
e40d2cb3af Xcode: Add embed resources support
Acked-by: Kitware Robot <kwrobot@kitware.com >
Tested-by: buildbot <buildbot@kitware.com >
Acked-by: Deal <halx99@live.com >
Merge-request: !8632
2023-08-01 09:33:15 -04:00
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
halx99
e40d2cb3af
Xcode: Add embed resources support
2023-07-31 09:08:10 +08: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
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
Kyle Edwards
7050ac56a1
macOS: Add support for linking against .xcframework folders
...
Issue: #21752
2023-07-26 17:00:01 -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
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
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
Kyle Edwards
0e8584c89c
CTest: Fix regression in calculating test timeout
...
Fixes : #25120
2023-07-24 19:29:54 -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
Robert Maynard
6b5f2dbbfe
file(REAL_PATH): resolve symlinks before '..' components
...
Previously REAL_PATH would collapse paths before resolving any symlinks
so if `..` crossed a symlink the output from `REAL_PATH` would be wrong.
It looked like REAL_PATH did this by mistake since it was a side-effect
of ensuring we had an absolute path before resolving symlinks.
2023-07-20 17:02:58 -04:00
Brad King
88c6dc75ba
Merge topic 'command-job-server-aware'
...
95941fd990 add_custom_{target,command}: Add argument JOB_SERVER_AWARE
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Merge-request: !8547
2023-07-20 10:23:31 -04:00
Brad King
b0054dd65c
Merge topic 'imported-implib-only'
...
7351d590ee cmTarget: Add a way to represent imported shared library stubs
83574a4772 GeneratorExpression: Expand testing of imported location resolution
b75ff51947 Testing: Map RelWithDebInfo config in GeneratorExpression test
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: Jason Juang <jasjuang@gmail.com >
Merge-request: !8582
2023-07-19 10:55:30 -04:00