Ben Boeckel
ed45432571
cmNinjaTargetGenerator: do not order-depend on C++ module sources
...
C++ module sources should not be included by any other TUs, so their
presence cannot matter for order-only dependencies of the entire target.
Exclude them.
Update CMP0154 to take this into consideration and add tests to the
`CXXModules` suite (which already deals with module support detection).
2023-10-20 07:18:33 -04:00
Ben Boeckel
0973cd6702
cmNinjaTargetGenerator: use the file set visibility API
2023-10-19 23:09:33 -04:00
Ben Boeckel
4625170925
cmFileSet: add a query for includeable file set types
2023-10-19 23:09:33 -04:00
Ben Boeckel
51f9d9f0a2
cmNinjaTargetGenerator: avoid traversing old outputs repeatedly
...
We actually only need to look at outputs just added to the vector, not
all outputs that have been detected so far.
2023-10-19 23:09:33 -04:00
Brad King
dec211da56
Merge topic 'doc-cmake-presets-8' into release-3.28
...
d3978a3835 Help: Document cmake-presets version 8
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !8899
2023-10-19 11:31:54 -04:00
Johel Ernesto Guerrero Peña
d3978a3835
Help: Document cmake-presets version 8
...
This was accidentally missed in commit f1a7179520 (presets: Add $schema
property to JSON schema, 2023-09-07, v3.28.0-rc1~106^2).
2023-10-19 09:53:48 -04:00
Brad King
c2b28d4a66
CMake 3.28.0-rc2
v3.28.0-rc2
2023-10-18 13:15:13 -04:00
Brad King
dc7bed55e6
Merge topic 'cxxmodules-vs-no-synthetic-targets' into release-3.28
...
17fd7fe2ae Tests/CXXModules: test Visual Studio synthetic target error
badb6ab120 VS: Explicitly disallow C++ modules provided by imported targets
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !8895
2023-10-18 09:51:52 -04:00
Brad King
c924b9e9f7
Merge topic 'cxxmodules-flagtable-fixes' into release-3.28
...
50f3c58083 FlagTables: Add entries for cl -scanDependencies flag
a22e9e7cf0 FlagTables: `-ifcOutput` takes a subsequent argument
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !8892
2023-10-18 09:50:50 -04:00
Ben Boeckel
17fd7fe2ae
Tests/CXXModules: test Visual Studio synthetic target error
2023-10-17 14:47:18 -04:00
Ben Boeckel
badb6ab120
VS: Explicitly disallow C++ modules provided by imported targets
...
The `-ifcOnly` flag is understood by MSBuild, but there are unresolved
questions about how to integrate with with CMake's model.
See: #25328
2023-10-17 14:46:57 -04:00
Ben Boeckel
50f3c58083
FlagTables: Add entries for cl -scanDependencies flag
...
As of VS 17.6, MSBuild maps `ModuleDependenciesFile` to this flag
instead of the older `-sourceDependencies:directives` flag.
Map both flags to `ModuleDependenciesFile` for compatibility.
2023-10-17 09:51:53 -04:00
Brad King
84ac583bc6
Merge topic 'cxxmodules-export-fileset-info' into release-3.28
...
0f36156740 cxxmodules: include `INCLUDES DESTINATION` directories
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Merge-request: !8886
2023-10-17 09:50:06 -04:00
Brad King
ec916350db
Merge topic 'execute_process-output_file-directory' into release-3.28
...
35f031e3b2 execute_process(): Restore opening files relative to WORKING_DIRECTORY
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !8883
2023-10-17 09:41:38 -04:00
Brad King
b15d507284
Merge topic 'Tests-NinjaPrivateDeps-error-message' into release-3.28
...
fe8a5a6fbf Tests/NinjaPrivateDeps: fix error message for Build-PrivateFileSet-check
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Merge-request: !8882
2023-10-17 09:38:48 -04:00
Ben Boeckel
a22e9e7cf0
FlagTables: -ifcOutput takes a subsequent argument
2023-10-16 22:12:39 -04:00
Ben Boeckel
0f36156740
cxxmodules: include INCLUDES DESTINATION directories
...
These paths are added outside the normal property management mechanisms.
Shuttle the value to the C++ module export as needed.
Fixes : #25289
2023-10-16 13:57:54 -04:00
Kyle Edwards
35f031e3b2
execute_process(): Restore opening files relative to WORKING_DIRECTORY
...
Prior to 5420639a , execute_process() would open INPUT_FILE, OUTPUT_FILE,
and ERROR_FILE relative to the WORKING_DIRECTORY argument if it was
provided. Restore this behavior for backwards compatibility.
Fixes : #25338
2023-10-16 12:23:41 -04:00
Ben Boeckel
fe8a5a6fbf
Tests/NinjaPrivateDeps: fix error message for Build-PrivateFileSet-check
...
The file *should* exist, so word the error message as such.
2023-10-16 11:38:43 -04:00
Brad King
7080b4ae83
Merge topic 'bootstrap-known-compilers' into release-3.28
...
7662d50a1b bootstrap: update known compilers
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !8876
2023-10-16 10:38:26 -04:00
Brad King
b27dcf293e
Merge topic 'nvfortran-mipa' into release-3.28
...
44faa3773c PGI/NVHPC: Remove -Mipa compiler option for 23.3+
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: Robert Maynard <robertjmaynard@gmail.com >
Merge-request: !8874
2023-10-16 10:37:24 -04:00
Brad King
d624435096
Merge topic 'revert-autogen-exe-per-config' into release-3.28
...
c074f5c81e Autogen: Revert "AUTO*_EXECUTABLE: add support for per-config values"
06a9b25b17 Tests: Revert "NinjaMultiConfig: Update tests for the new dependency change"
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !8878
2023-10-16 10:35:58 -04:00
Orkun Tokdemir
c074f5c81e
Autogen: Revert "AUTO*_EXECUTABLE: add support for per-config values"
...
Changing the `timestamp` file to `timestamp_$<CONFIG>` causes some user
projects to break when using Qt versions older than 6.6.
Revert commit fddd0f0443 (Autogen: AUTO*_EXECUTABLE: add support for
per-config values, 2023-06-14, v3.28.0-rc1~96^2~1) pending further
investigation.
Issue: #20074
2023-10-13 14:16:26 -04:00
Orkun Tokdemir
06a9b25b17
Tests: Revert "NinjaMultiConfig: Update tests for the new dependency change"
...
Revert commit e454314daa (NinjaMultiConfig: Update tests for the new
dependency change, 2023-07-05, v3.28.0-rc1~96^2) because we are about
to revert the change for which it updated tests.
2023-10-13 14:12:05 -04:00
مهدي شينون (Mehdi Chinoune)
44faa3773c
PGI/NVHPC: Remove -Mipa compiler option for 23.3+
...
`-Mipa` was removed since 23.3. The compiler warns about it:
nvfortran-Warning-The option -Mipa has been deprecated and is ignored.
See: https://docs.nvidia.com/hpc-sdk/archive/23.9/hpc-sdk-release-notes/index.html#deprecations
2023-10-13 14:04:09 -04:00
Brad King
85fc81c61d
Merge branch 'release-3.27' into release-3.28
2023-10-13 11:43:34 -04:00
Brad King
c966fb70d1
Merge topic 'update-curl' into release-3.28
...
b298ba708a Utilities: Update hard-coded try_compile results for curl 8.4.0
8a9fa27a35 curl: Set build options the way we need for CMake
df4efb72e4 Merge branch 'upstream-curl' into update-curl
e6a6c1abc1 curl 2023-10-11 (d755a5f7)
8f6a6b02e5 curl: Update script to get curl 8.4.0
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Merge-request: !8870
2023-10-13 11:42:20 -04:00
scivision
7662d50a1b
bootstrap: update known compilers
...
como: Comeau-not updated since 2008, unlikely to work with CMake
icc: discontinued for icx
icc: not for C++, put in 20 years ago, probably never used / worked
2023-10-13 11:26:49 -04:00
Brad King
e298ffb3ff
Merge branch 'release-3.26' into release-3.27
2023-10-12 19:06:27 -04:00
Brad King
f2d8c36969
Merge branch 'backport-curl-socks5-fix' into release-3.27
...
Merge-request: !8872
2023-10-12 19:06:14 -04:00
Brad King
d6c81467aa
Merge branch 'backport-curl-socks5-fix' into release-3.26
...
Merge-request: !8872
2023-10-12 19:05:59 -04:00
Brad King
c272065e63
Merge branch 'release-3.27' into release-3.28
2023-10-12 19:03:55 -04:00
Brad King
1d6fab5537
Merge branch 'release-3.26' into release-3.27
2023-10-12 19:03:42 -04:00
Brad King
244bb7b6bc
Merge branch 'backport-ctest_submit-follow-redirects' into release-3.26
...
Merge-request: !8873
2023-10-12 19:01:53 -04:00
Brad King
701f52670f
curl: Backport SOCKS5 heap buffer overflow fix from curl 8.4.0
...
Backport upstream curl commit `fb4415d8ae` (socks: return error if
hostname too long for remote resolve, 2023-10-11, curl-8_4_0~2) to
address CVE-2023-38545.
Issue: #25329
2023-10-12 15:54:53 -04:00
Zack Galbreath
ce661c4399
ctest: Restore support for http redirects during Submit step
...
After CDash PR 1519 introduced HTTP status codes greater than 200 for
various error cases, CMake commit b7c871f745 (ctest: Update ctest_submit
for CDash behavior change, 2023-07-24, v3.27.1~3^2) modified CTest's
submit handler to check the status returned by CDash and throw an error
when this status is not equal to 200.
That change had the unintended side effect of causing CTest submissions
to fail when uploading results to a URL that returns a redirect status
code (3xx). Fix this by configuring cURL to follow the redirect. The
status cURL reports to CTest is now 200 instead of 3xx when CDash is
located behind a redirect.
Fixes : #25159
2023-10-12 15:53:10 -04:00
Brad King
b298ba708a
Utilities: Update hard-coded try_compile results for curl 8.4.0
2023-10-12 15:29:35 -04:00
Brad King
8a9fa27a35
curl: Set build options the way we need for CMake
...
Set options added by the update to curl 8.4.0.
2023-10-12 15:29:34 -04:00
Brad King
df4efb72e4
Merge branch 'upstream-curl' into update-curl
...
* upstream-curl:
curl 2023-10-11 (d755a5f7)
Issue: #25329
2023-10-12 15:29:20 -04:00
Curl Upstream
e6a6c1abc1
curl 2023-10-11 (d755a5f7)
...
Code extracted from:
https://github.com/curl/curl.git
at commit d755a5f7c009dd63a61b2c745180d8ba937cbfeb (curl-8_4_0).
2023-10-12 15:28:57 -04:00
Brad King
8f6a6b02e5
curl: Update script to get curl 8.4.0
...
Issue: #25329
2023-10-12 15:28:40 -04:00
Brad King
38643edc2d
CMake 3.28.0-rc1
v3.28.0-rc1
2023-10-11 14:33:33 -04:00
Brad King
581a03a138
Merge topic 'cxxmodules-try_compile' into release-3.28
...
fd81024e80 cxxmodules: Honor CMAKE_CXX_SCAN_FOR_MODULES in try_compile
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com >
Merge-request: !8865
2023-10-11 10:31:05 -04:00
Brad King
8783a3ec78
Merge topic 'cxxmodules-diagnostics' into release-3.28
...
32438138c3 cxxmodules: Reference documentation in no-modules-support diagnostics
604466b83e Tests: Enforce RunCMake.CXXModules no-modules-support diagnostics strictly
Acked-by: Kitware Robot <kwrobot@kitware.com >
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com >
Merge-request: !8866
2023-10-11 10:29:58 -04:00
Brad King
9872909f99
Merge topic 'doc-typo' into release-3.28
...
5bbc9055c0 Help: Fix typo in COMPATIBLE_INTERFACE_NUMBER_MIN
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !8867
2023-10-11 10:28:13 -04:00
權少
5bbc9055c0
Help: Fix typo in COMPATIBLE_INTERFACE_NUMBER_MIN
2023-10-11 10:15:11 -04:00
Brad King
32438138c3
cxxmodules: Reference documentation in no-modules-support diagnostics
...
Help users avoid errors about module support when they may not need it.
While at it, polish sentence syntax in the diagnostic messages.
2023-10-11 09:52:41 -04:00
Brad King
604466b83e
Tests: Enforce RunCMake.CXXModules no-modules-support diagnostics strictly
...
Previously the expected output expressions used `(...)*` which did not
actually have to match anything.
2023-10-11 09:44:03 -04:00
Brad King
346c1e5d57
Merge topic 'findruby-add-support-for-3.2' into release-3.28
...
77ed529c22 FindRuby: Add support for 3.2
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !8864
2023-10-11 09:29:10 -04:00
Brad King
fd81024e80
cxxmodules: Honor CMAKE_CXX_SCAN_FOR_MODULES in try_compile
...
Under CMP0155's NEW behavior, projects that explicitly enable C++20
support with `set(CMAKE_CXX_STANDARD 20)` may also explicitly
disable scanning with `set(CMAKE_CXX_SCAN_FOR_MODULES OFF)`.
We already propagate `CMAKE_CXX_STANDARD` into `try_compile` test
projects, so propagate `CMAKE_CXX_SCAN_FOR_MODULES` too.
Fixes : #25313
2023-10-10 11:25:21 -04:00