Brad King
4368a524c6
cmCMakePathCommand: Enforce non-empty string arguments via binding type
2022-07-28 08:25:00 -04:00
Brad King
b6ffca53f8
Merge topic 'verify-interface-header-sets-interface-library-source-language'
...
41f15193e5 VERIFY_INTERFACE_HEADER_SETS: Fall back to global languages
Acked-by: Kitware Robot <kwrobot@kitware.com >
Tested-by: buildbot <buildbot@kitware.com >
Merge-request: !7517
2022-07-28 08:12:10 -04:00
Brad King
d9cca8e83d
Merge topic 'verify-interface-header-sets-add-compile-definitions'
...
27fd172d8d VERIFY_INTERFACE_HEADER_SETS: Finalize compile info for verify targets
626e641a19 cmTarget: Factor out FinalizeTargetCompileInfo()
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !7516
2022-07-28 08:11:19 -04:00
Kyle Edwards
41f15193e5
VERIFY_INTERFACE_HEADER_SETS: Fall back to global languages
...
If a target doesn't have any source files, fall back to the global
list of enabled languages to determine the language of the header
file to verify.
Fixes : #23774
2022-07-27 13:29:09 -04:00
Kyle Edwards
27fd172d8d
VERIFY_INTERFACE_HEADER_SETS: Finalize compile info for verify targets
...
Fixes : #23732
2022-07-27 12:25:15 -04:00
Brad King
e1d4984706
Tests: Add RunCMake.try_compile case covering empty value arguments
2022-07-26 15:09:49 -04:00
Brad King
6a85813806
Tests: Add RunCMake.try_compile case covering list arguments with no values
2022-07-26 15:09:49 -04:00
Brad King
31ee3cd49d
try_compile: Fail earlier when bindir is not an absolute path
...
If the bindir is not an absolute path, other errors occur later.
Fail early with a clear error in this case.
2022-07-26 14:41:28 -04:00
Brad King
4f8f577015
Merge topic 'cmake-help-flags-after-dashdash'
...
14a0e750cb cmake: In -P mode ignore flags like `--version` after `--`
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !7496
2022-07-25 12:00:39 -04:00
Brad King
cc663a8c1d
Merge topic 'cmake-P-path-args'
...
febe3190f0 Merge branch 'backport-3.23-cmake-P-path-args'
846a650ff7 cmake: In -P mode ignore extra paths on the command line
c362cba566 cmake: simplify to a single source of truth of working mode
261fa5db39 cmake: In -P mode ignore extra paths on the command line
314135cdf1 cmake: simplify to a single source of truth of working mode
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Merge-request: !7494
2022-07-25 11:57:48 -04:00
Brad King
ea209b9f9d
Merge topic 'command-arg-parser-result'
...
8a18e82e95 cmCMakePathCommand: Report keyword errors via argument parser results
7e4a9afa1a cmCMakeHost*Command: Report keyword errors via argument parser results
74ec6b63c2 cmFileCommand: Report keyword errors via argument parser results
e56108f629 cmExecuteProcessCommand: Report keyword errors via argument parser results
b7c82b26b0 cmArgumentParser: Capture keyword errors in parse results
50876f6b9a cmArgumentParser: Add structure to capture operational results
5955ec1992 cmArgumentParser: Store keyword action map with explicit name
119e1f7fbc cmArgumentParser: Factor out common static/dynamic implementation
...
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !7488
2022-07-25 11:52:27 -04:00
Robert Maynard
14a0e750cb
cmake: In -P mode ignore flags like --version after --
...
Fixes : #21031
2022-07-22 14:30:21 -04:00
Robert Maynard
846a650ff7
cmake: In -P mode ignore extra paths on the command line
...
Fixes : #23748
2022-07-22 13:55:52 -04:00
Brad King
8a18e82e95
cmCMakePathCommand: Report keyword errors via argument parser results
2022-07-22 10:32:25 -04:00
Brad King
7e4a9afa1a
cmCMakeHost*Command: Report keyword errors via argument parser results
2022-07-22 10:32:24 -04:00
Brad King
74ec6b63c2
cmFileCommand: Report keyword errors via argument parser results
2022-07-22 10:32:24 -04:00
Brad King
e56108f629
cmExecuteProcessCommand: Report keyword errors via argument parser results
2022-07-22 10:32:24 -04:00
Brad King
66998035c1
Merge topic 'try_run_split_output'
...
a2cd0687db try_run: Add RUN_OUTPUT_STDOUT_VARIABLE and RUN_OUTPUT_STDERR_VARIABLE.
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Merge-request: !7453
2022-07-22 10:14:34 -04:00
Brad King
1b095729da
Tests: Add RunCMake.cmake_path cases for BASE_DIRECTORY missing value
2022-07-20 16:03:12 -04:00
Brad King
5512057c13
Tests: Add RunCMake.file-CHMOD cases for keywords missing values
...
These make the existing `no-perms` case redundant, so repurpose it
to replace `no-keyword`.
2022-07-20 16:03:12 -04:00
Brad King
1cf2c94c69
Tests: Simplify RunCMake.file-CHMOD cases
...
Run each case as a `cmake -P` script instead of a full project.
The caller handles build directory removal and creation.
2022-07-20 16:03:12 -04:00
Brad King
11a0f72ac0
Tests: Simplify RunCMake.file-CHMOD case names
...
The `CHMOD-` prefix is redundant with the overall test name.
2022-07-20 16:03:12 -04:00
Brad King
db66f1fede
Merge topic 'vs-ZERO_CHECK-proj'
...
7219988b00 VS: Exclude ZERO_CHECK.proj from .sln for include_external_msproject
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !7478
2022-07-20 09:25:11 -04:00
Sumit Bhardwaj
7219988b00
VS: Exclude ZERO_CHECK.proj from .sln for include_external_msproject
...
In `cmGlobalVisualStudio7Generator::WriteTargetsToSolution`, we skip
writing `ZERO_CHECK.proj` to solution file as the check in
`cmGlobalVisualStudioGenerator::IsInSolution` returns `false` for
`ZERO_CHECK`. However, we write ZERO_CHECK to ProjectDependencies for
external projects as there are no checks in
`cmGlobalVisualStudio71Generator::WriteExternalProject`.
Similar to `cmGlobalVisualStudioGenerator::IsInSolution`, we introduce
`IsDepInSolution(const std::string&)` which excludes `ZERO_CHECK.proj`
from being added to sln file for the cases where we have `ZERO_CHECK.proj`.
Fixes : #23708
2022-07-20 08:51:38 -04:00
Kyle Edwards
a186c1aff6
Ninja Multi-Config: Deduplicate compile_commands.json for cross configs
...
compile_commands.json was being written for every permutation of
cross configurations. Deduplicate so only one command is output
for each configuration.
Fixes : #23733
2022-07-15 16:22:21 -04:00
Kyle Edwards
cf8fdf5e43
Merge topic 'export-try-compile-crash'
...
29c7546a61 cmGlobalGenerator: Only compute build files for all targets
Acked-by: Kitware Robot <kwrobot@kitware.com >
Tested-by: buildbot <buildbot@kitware.com >
Merge-request: !7472
2022-07-14 09:56:04 -04:00
Kyle Edwards
df559cd8c8
Merge topic 'export-try-compile-crash' into release-3.24
...
29c7546a61 cmGlobalGenerator: Only compute build files for all targets
Acked-by: Kitware Robot <kwrobot@kitware.com >
Tested-by: buildbot <buildbot@kitware.com >
Merge-request: !7472
2022-07-14 09:56:03 -04:00
Kyle Edwards
29c7546a61
cmGlobalGenerator: Only compute build files for all targets
...
If we're creating generation objects for imported targets only, we
don't need the export sets. Only compute build file generators
if generating for all targets.
Fixes : #23709
2022-07-13 11:34:34 -04:00
Patrick Northon
a2cd0687db
try_run: Add RUN_OUTPUT_STDOUT_VARIABLE and RUN_OUTPUT_STDERR_VARIABLE.
2022-07-08 15:49:02 -04:00
Jonas Fierlings
d99d33d749
VS: Generate IntDir property for INTERFACE libraries
...
This prevents MSBuild from complaining with warning MSB8028.
Fixes #23043
2022-07-08 16:47:01 +02:00
Brad King
4c50f639c7
Merge topic 'cpp-named-module-export-infra'
...
f62c3c3c72 RunCMake/CXXModules: test public modules requiring private modules
c5d4dd713f RunCMake/CXXModules: add tests which export BMIs
4d55f1422e RunCMake/CXXModules: test installation of BMIs and interfaces
eff45f790d RunCMake/CXXModules: fix example follow-on case names
a87c39dad1 RunCMake/CXXModules: output example test output upon failure
727e3db07a RunCMake/CXXModules: append to the test options
f899563ae4 cmGlobalNinjaGenerator: verify that private sources stay private
9ecd3e771b cmGlobalNinjaGenerator: generate install rules for BMI files
...
Acked-by: Kitware Robot <kwrobot@kitware.com >
Tested-by: buildbot <buildbot@kitware.com >
Acked-by: Alex <leha-bot@yandex.ru >
Merge-request: !7224
2022-07-07 09:25:55 -04:00
Brad King
d21b391cde
Merge topic 'file-TIMESTAMP-relative-path'
...
733801b57f file(TIMESTAMP): Interpret relative paths w.r.t. the source tree
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Merge-request: !7440
2022-07-07 09:22:11 -04:00
Brad King
3b1d54506f
Merge topic 'generator-makefiles-deps-messages-VERBOSE'
...
9480ced81a Makefiles generator: dependencies messages in verbose mode
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !7456
2022-07-07 09:14:23 -04:00
Brad King
24631689f0
Merge topic 'genex-LINK_LIBRARY-check-supported-properties'
...
913ea78d7a Genex LINK_LIBRARY and LINK_GROUP: check supported properties
Acked-by: Kitware Robot <kwrobot@kitware.com >
Tested-by: buildbot <buildbot@kitware.com >
Merge-request: !7454
2022-07-07 09:07:01 -04:00
Brad King
5970536e16
Merge topic 'genex-LINK_LIBRARY-check-supported-properties' into release-3.24
...
913ea78d7a Genex LINK_LIBRARY and LINK_GROUP: check supported properties
Acked-by: Kitware Robot <kwrobot@kitware.com >
Tested-by: buildbot <buildbot@kitware.com >
Merge-request: !7454
2022-07-07 09:07:00 -04:00
Marc Chevrier
9480ced81a
Makefiles generator: dependencies messages in verbose mode
...
Fixes : #23689
2022-07-06 17:40:08 +02:00
Ben Boeckel
f62c3c3c72
RunCMake/CXXModules: test public modules requiring private modules
2022-07-06 11:38:11 -04:00
Ben Boeckel
c5d4dd713f
RunCMake/CXXModules: add tests which export BMIs
2022-07-06 11:38:11 -04:00
Ben Boeckel
4d55f1422e
RunCMake/CXXModules: test installation of BMIs and interfaces
2022-07-06 11:38:11 -04:00
Ben Boeckel
eff45f790d
RunCMake/CXXModules: fix example follow-on case names
2022-07-06 11:38:11 -04:00
Ben Boeckel
a87c39dad1
RunCMake/CXXModules: output example test output upon failure
2022-07-06 11:38:10 -04:00
Ben Boeckel
727e3db07a
RunCMake/CXXModules: append to the test options
2022-07-06 11:38:10 -04:00
Marc Chevrier
913ea78d7a
Genex LINK_LIBRARY and LINK_GROUP: check supported properties
...
Refines check for properties supporting these genex.
Enhance error message.
Fixes : #23699
2022-07-06 16:15:43 +02:00
Ben Boeckel
fddd44c897
cmNinjaTargetGenerator: write out BMI install information for the collator
2022-07-06 10:15:23 -04:00
Ben Boeckel
95402a0bd7
cmNinjaTargetGenerator: write out export information for the collator
...
The collator will use this to know where the target's export information
needs to go so that module properties may be provided.
2022-07-06 10:15:23 -04:00
Ben Boeckel
d3e2e61bcd
cmNinjaTargetGenerator: write out fileset information for the collator
...
The collator will use this to generate property settings for the
imported targets in the build and install export sets.
2022-07-06 10:15:23 -04:00
Ben Boeckel
ffd40c6b6e
Tests/RunCMake/CXXModules: add a json comparison script
2022-07-06 10:15:23 -04:00
Ben Boeckel
48502a3781
cmExperimental: update CXX_MODULE_CMAKE_API UUID
...
The set of features available has been expanded, so update the UUID.
2022-07-06 10:15:23 -04:00
Ben Boeckel
3526b8c123
cmExport*FileGenerator: support exporting C++ module properties
...
C++ module properties will be generated at build time, so generate code
that includes the files actually responsible for the information.
2022-07-06 10:15:23 -04:00
Ben Boeckel
29118091dc
install: support CXX_MODULES_BMI installation bits
2022-07-06 10:15:23 -04:00