Commit Graph

34317 Commits

Author SHA1 Message Date
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
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
Kitware Robot
58ebb15691 CMake Nightly Date Stamp 2023-07-25 00:01:10 -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
Kitware Robot
ee9908df39 CMake Nightly Date Stamp 2023-07-24 00:01:46 -04:00
Kitware Robot
a395324728 CMake Nightly Date Stamp 2023-07-23 00:01:11 -04:00
Ben Boeckel
b665966933 cmComputeLinkInformation: track OBJECT library dependencies
In commit b6a5382217 (Ninja: depend on language module information files
directly, 2023-02-10), introduced via !8197, language-specific module
information files (`CMakeFiles/<target>.dir/<lang>Modules.json`) files
were added as real dependencies to the dyndep collation steps.
Previously, the behavior was to inform the collator of all possible
targets and search for the files manually ignoring those which did not
exist with ordering enforced by depending on the linker output of all
dependent targets. This behavior could lead to stale information being
used (e.g., if a target stops providing any targets) and also did not
reliably build everything needed on rebuilds. Afterwards, the internal
computation changed the dependency from all possible targets to an exact
set of "these targets might have modules" query, however one that did
not include `OBJECT` libraries since do not have `LinkEntry` items
internally (their objects are instead treated as source files).

As a stopgap measure, track `OBJECT` libraries in a separate list and
query them explicitly when gathering targets which may have interesting
information. Future work can add `LinkEntry` items to represent these
targets once all `LinkEntry` consumers have been audited to make sure
they are not surprised by any `OBJECT` library entries.

Fixes: #25112
2023-07-22 07:12:43 -04:00
Kitware Robot
199e1664ac CMake Nightly Date Stamp 2023-07-22 00:01:11 -04:00
Brad King
71e0887ea2 Merge topic 'cmstrcat-pass'
faf36e65b9 cmMakefile: use single characters where possible
4fd80d5419 cmMakefile: use static string views in some locations
e41ff26735 cmMakefile: use `cmStrCat` where possible
2a74f641db cmGlobalGenerator: use single chars where possible
cfdb5c970c cmGlobalGenerator: use `cmStrCat` where possible
884c477545 cmCoreTryCompile: combine strings where possible
b8fd1cc8d9 cmCoreTryCompile: use single characters where possible
0b74471d62 cmCoreTryCompile: use `cmStrCat` where possible

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8640
2023-07-21 09:40:09 -04:00
Kitware Robot
6bbe6cdc33 CMake Nightly Date Stamp 2023-07-21 00:01:13 -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
Kitware Robot
e0ed4d7a6f CMake Nightly Date Stamp 2023-07-20 00:01:16 -04:00
Ben Boeckel
faf36e65b9 cmMakefile: use single characters where possible 2023-07-19 16:38:34 -04:00
Ben Boeckel
4fd80d5419 cmMakefile: use static string views in some locations 2023-07-19 16:38:27 -04:00
Ben Boeckel
e41ff26735 cmMakefile: use cmStrCat where possible 2023-07-19 16:38:27 -04:00
Ben Boeckel
2a74f641db cmGlobalGenerator: use single chars where possible 2023-07-19 16:32:33 -04:00
Ben Boeckel
cfdb5c970c cmGlobalGenerator: use cmStrCat where possible 2023-07-19 16:32:25 -04:00
Ben Boeckel
884c477545 cmCoreTryCompile: combine strings where possible 2023-07-19 16:31:31 -04:00
Ben Boeckel
b8fd1cc8d9 cmCoreTryCompile: use single characters where possible 2023-07-19 16:30:27 -04:00
Ben Boeckel
0b74471d62 cmCoreTryCompile: use cmStrCat where possible 2023-07-19 16:30:27 -04:00
Brad King
01c62f4ff0 CMake 3.26.5 2023-07-19 13:56:04 -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
Chris Mahoney
95941fd990 add_custom_{target,command}: Add argument JOB_SERVER_AWARE
Issue: #16273
2023-07-19 10:45:33 -04:00
Brad King
ee6335f75f Merge topic 'windows-kernel-mode-driver'
b01f5eb079 Windows: Add experimental WindowsKernelModeDriver platform
d84681d8f0 try_compile(): Pass down CMAKE_EXPERIMENTAL_* feature flags
1ca82e7a04 cmake_language(): Add undocumented GET_EXPERIMENTAL_FEATURE_ENABLED mode
051cea7b7e cmExperimental: Expose feature data API

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8634
2023-07-19 10:41:22 -04:00
Brad King
e921566142 Merge topic 'cmCMakePath-SunPro-sparc-workaround'
945b9b8132 cmCMakePath: workarounds for Sunpro/sparc compiler

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Robert Maynard <robertjmaynard@gmail.com>
Merge-request: !8633
2023-07-19 10:40:02 -04:00
Kitware Robot
a594748cdf CMake Nightly Date Stamp 2023-07-19 00:01:15 -04:00
Brad King
784596bd08 CMake 3.27.0 2023-07-18 13:52:42 -04:00
Robert Maynard
7351d590ee cmTarget: Add a way to represent imported shared library stubs
Shared library stubs can be used for linking, but not at runtime.
Their role is similar to import libraries on Windows, so represent
their location with the `IMPORTED_IMPLIB` target property.

Fixes: #24940
2023-07-18 13:21:01 -04:00
Marc Chevrier
945b9b8132 cmCMakePath: workarounds for Sunpro/sparc compiler 2023-07-18 11:50:07 -04:00
Brad King
71c6525492 Merge topic 'LINK_OPTIONS-dollar-escaping'
3c685a578a LINK_OPTIONS: ensure correct dollar escaping

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8608
2023-07-18 10:32:05 -04:00
Brad King
e9659abde1 Merge topic 'innosetup-component-install'
c80190c6ab InnoSetup: Always specify at least one component installation type

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8630
2023-07-18 10:29:57 -04:00
Kitware Robot
e21ea92798 CMake Nightly Date Stamp 2023-07-18 00:01:09 -04:00
Kyle Edwards
b01f5eb079 Windows: Add experimental WindowsKernelModeDriver platform 2023-07-17 16:54:10 -04:00
Kyle Edwards
d84681d8f0 try_compile(): Pass down CMAKE_EXPERIMENTAL_* feature flags 2023-07-17 16:53:52 -04:00
Kyle Edwards
1ca82e7a04 cmake_language(): Add undocumented GET_EXPERIMENTAL_FEATURE_ENABLED mode 2023-07-17 15:19:58 -04:00
Kyle Edwards
051cea7b7e cmExperimental: Expose feature data API 2023-07-17 15:19:30 -04:00
Jannik Alber
c80190c6ab InnoSetup: Always specify at least one component installation type
Inno Setup implicitly creates three installation types if none is
specified in the script. This causes some component features (e.g.
`REQUIRED`) to lose their functionality.  Teach the generator to always
specify a "custom" installation type when using components.

Fixes: #25083
2023-07-17 10:30:25 -04:00
Marc Chevrier
3c685a578a LINK_OPTIONS: ensure correct dollar escaping
Ensure correct escaping for Ninja and Makefile generators.

Fixes: #25049
2023-07-17 15:55:58 +02:00
Kitware Robot
a28217eb8c CMake Nightly Date Stamp 2023-07-17 00:01:50 -04:00
Kitware Robot
d747bc18e1 CMake Nightly Date Stamp 2023-07-16 00:01:09 -04:00
Kitware Robot
2a68ba3117 CMake Nightly Date Stamp 2023-07-15 00:01:14 -04:00
Brad King
8bcba75b1c CMake 3.27.0-rc5 2023-07-14 11:03:52 -04:00
Brad King
802a0aefd5 Merge topic 'find_library-simplify-regex'
f60e921262 find_library: Improve regex readability in --debug-find output

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8618
2023-07-14 08:42:11 -04:00
Brad King
cd52dddc98 Merge topic 'module-mapper-clang-transitive'
57ef353d22 cmExperimental: refresh the C++ modules UUID
7b05724ac8 cmCxxModuleMapper: give transitive usages to Clang as well
c9df4568da cmCxxModuleMapper: factor out transitive usage computation
71f1483aac Tests/RunCMake/CXXModules: require transitive usages
e39b6ebc19 cmCxxModuleMapper: use a `char` for streaming single bytes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8610
2023-07-14 08:39:37 -04:00
Brad King
c9b1ce71f6 Merge topic 'debugger-breakpoints'
60b6383993 Debugger: Always clear existing breakpoints on setBreakpoints

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8624
2023-07-14 08:34:30 -04:00
Kitware Robot
3087b3dbac CMake Nightly Date Stamp 2023-07-14 00:01:11 -04:00