Commit Graph

35580 Commits

Author SHA1 Message Date
Brad King 5429244f27 Merge topic 'cmp0116-escaped-colon'
bc258730ec cmake_transform_depfile: Handle escaped colons in depfile content

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9472
2024-05-01 09:09:40 -04:00
Kitware Robot 413221f373 CMake Nightly Date Stamp 2024-05-01 00:01:19 -04:00
Brad King 2549f5a66e Merge topic 'exported-modules-with-headers'
2041f7c9bf cmGeneratorTarget: add the original target as a COMPILE_ONLY link
051c2110c8 Tests/CXXModules: test exporting modules which include headers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9469
2024-04-30 10:10:36 -04:00
Philipp Borsutzki bc258730ec cmake_transform_depfile: Handle escaped colons in depfile content
Support escaped colons in windows paths containing driver letters
(e.g. `c\:\\`) when parsing depfiles.

Fixes: #25943
2024-04-30 09:16:49 -04:00
Kitware Robot f56eb6fa88 CMake Nightly Date Stamp 2024-04-30 00:01:21 -04:00
Kitware Robot 781e25a35b CMake Nightly Date Stamp 2024-04-29 00:04:30 -04:00
Craig Scott bd8b38627f Merge topic 'doc-cmp0135-fetchcontent'
9b61a7147d Help: CMP0135 applies to FetchContent as well

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9470
2024-04-28 04:19:40 -04:00
Kitware Robot 3390cd47b6 CMake Nightly Date Stamp 2024-04-28 00:01:14 -04:00
Kitware Robot 5838935d84 CMake Nightly Date Stamp 2024-04-27 00:01:12 -04:00
Craig Scott 9b61a7147d Help: CMP0135 applies to FetchContent as well
This updates the CMP0135 documentation, which should have been
done as part of c2044fdf3f (FetchContent: Respect the CMP0135 policy
setting, 2022-06-02).

Issue: #23560
2024-04-27 11:01:45 +10:00
Ben Boeckel 2041f7c9bf cmGeneratorTarget: add the original target as a COMPILE_ONLY link
Fixes: #25909
2024-04-26 20:15:05 -04:00
Kitware Robot 301a26741d CMake Nightly Date Stamp 2024-04-26 00:01:17 -04:00
Brad King e8f9b6ee43 Merge topic 'test-dir-preset'
c971212703 ctest: Allow --test-dir override when using presets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !9448
2024-04-25 10:40:26 -04:00
Brad King 063e050f75 Merge topic 'cpack-temp-var'
60f5118c7b cmCPackGenerator: Handle CPACK_TEMPORARY_[INSTALL]_DIRECTORY properly

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9455
2024-04-25 10:38:10 -04:00
Brad King 3956ce1d97 Merge topic 'elf.errMsg'
9517ab36e1 cmELF: correct error message from GetDynamicSectionString

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9458
2024-04-25 10:32:14 -04:00
Joachim Wuttke (h) 9517ab36e1 cmELF: correct error message from GetDynamicSectionString
Fixes: #25929
2024-04-25 10:30:08 -04:00
Kitware Robot 4c0117bf1d CMake Nightly Date Stamp 2024-04-25 00:01:18 -04:00
castro-ma c971212703 ctest: Allow --test-dir override when using presets
Fixes: #23982
2024-04-24 16:45:29 -04:00
Brad King 145418f7fd Merge topic 'ninja-swift-verbosity'
c5ef7fac23 Swift/Ninja: Add description to Swift object build steps

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9451
2024-04-24 09:10:58 -04:00
Brad King 3e26050a3b Merge topic 'xcode-default-file-type'
3071660247 Xcode: Use builtin "default" file type

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9446
2024-04-24 08:55:32 -04:00
Deniz Bahadir 60f5118c7b cmCPackGenerator: Handle CPACK_TEMPORARY_[INSTALL]_DIRECTORY properly
The variable `CPACK_TEMPORARY_DIRECTORY` is an internal variable that is
required for proper packaging. Historically, a second variable
`CPACK_TEMPORARY_INSTALL_DIRECTORY` existed as well which had the same
purpose. Both variables had to be set to the same value. Otherwise,
CPack would not succeed with packaging.
In order to ease CPack's usage, the variable
`CPACK_TEMPORARY_INSTALL_DIRECTORY` is now no longer used.

However, as it cannot be guaranteed that neither of these two (internal)
variables have been used in the wild, some mechanism was introduced to
preserve backwards-compatibility: If one of these variables is set, the
other variable will be set to the same value. If, however, both are set
to different values, CPack still fails but with an explicit
error-message.

Fixes: #25046
2024-04-24 11:08:32 +02:00
Kitware Robot 30fd6df0b1 CMake Nightly Date Stamp 2024-04-24 00:01:15 -04:00
Jeremy Day c5ef7fac23 Swift/Ninja: Add description to Swift object build steps
By default, Ninja displays the full build command for the object which
is very verbose. Warnings are often lost in the noise, and compile
errors take some searching to find. If a build step fails, Ninja will
still print out the full build command, so there's no loss of useful
information.

Fixes: #25853
2024-04-23 10:29:08 -07:00
Kitware Robot d41252c91f CMake Nightly Date Stamp 2024-04-23 00:01:40 -04:00
Ilya Kulakov 3071660247 Xcode: Use builtin "default" file type
"sourcecode" is not appropriate for binary files, such as video, and
hinders Xcode performance.
2024-04-22 20:53:07 -04:00
Brad King 8b3d48ab94 Merge topic 'save-restore-PACKAGE_PREFIX_DIR'
41f4e1c457 CMakePackageConfigHelpers: Document PACKAGE_PREFIX_DIR for public use
c5231ba29e find_package: Save/restore PACKAGE_PREFIX_DIR
8ac7958e3a generate_apple_*_selection_file: Save/restore PACKAGE_PREFIX_DIR
bf88879f1f generate_apple_architecture_selection_file: Avoid early returns
a4ac2c92f4 Help: Add missing section heading for apple architecture selection
b7fcc44be9 Help: Fix CMakePackageConfigHelpers typos, grammar and formatting
f1cacaa830 Tests/RunCMake/CMakePackage: Define variable closer to where it is used

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9430
2024-04-22 08:42:13 -04:00
Kitware Robot c3864d7f62 CMake Nightly Date Stamp 2024-04-22 00:02:35 -04:00
Kitware Robot 14de6802e4 CMake Nightly Date Stamp 2024-04-21 00:01:16 -04:00
Kitware Robot 26867ebc1b CMake Nightly Date Stamp 2024-04-20 00:01:34 -04:00
Craig Scott c5231ba29e find_package: Save/restore PACKAGE_PREFIX_DIR
Package configuration files generated by `configure_package_config_file`
set this variable in `@PACKAGE_INIT@` and then use it later.  There may
be intervening calls to `find_package`, e.g., via `find_dependency`.
If the loaded package also used `configure_package_config_file`, it
may change the value of `PACKAGE_PREFIX_DIR`.  Explicitly save and
restore the value to avoid this.

Fixes: #25827
2024-04-19 11:44:09 -04:00
Kitware Robot e8e1b01e19 CMake Nightly Date Stamp 2024-04-19 00:01:12 -04:00
Brad King 0bb28c522b Merge topic 'invalid-ctest-arg-revisions'
96dbf6c34a ctest: Cleanup for invalid argument handling

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9440
2024-04-18 08:28:05 -04:00
Kitware Robot 992925c271 CMake Nightly Date Stamp 2024-04-18 00:01:16 -04:00
Martin Duffy 96dbf6c34a ctest: Cleanup for invalid argument handling
Backs out unrelated change and changes error message to 'Unknown argument'
2024-04-17 15:44:56 -04:00
Kitware Robot 2a198aac55 CMake Nightly Date Stamp 2024-04-17 00:01:14 -04:00
Brad King d550a1ebea Merge topic 'cpack-innosetup-linux'
d4a46314ac CPack: Enable Inno Setup generator on non-Windows hosts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9431
2024-04-16 08:55:57 -04:00
Brad King c5774572c1 Merge topic 'lcc-updates-2024-04'
8f89ecb073 Tests: Exclude more tests found to be failing on broken libc on Elbrus
b0551cce64 cmArgumentParserTypes: Workaround for ICE on e2k

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9426
2024-04-16 08:49:25 -04:00
Brad King 1c9e514d28 Merge topic 'swift-module-libraries'
56e5cea600 Swift: Support module libraries with command-line build systems

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9379
2024-04-16 08:47:11 -04:00
Brad King 211fbe7759 Merge topic 'cxx-checks-tolerate-unused-arguments'
6a2cfbd4ea cm_cxx_features: Ignore Clang unused-argument warnings

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9427
2024-04-16 08:45:37 -04:00
Brad King cf2a74d5c4 Merge topic 'file-GET_RUNTIME_DEPENDENCIES-macos-rpath'
3e865241f3 file(GET_RUNTIME_DEPENDENCIES): propagate parent rpath on macOS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9428
2024-04-16 08:44:13 -04:00
Kitware Robot 56c8a2d33b CMake Nightly Date Stamp 2024-04-16 00:01:13 -04:00
Andreas Oetken d4a46314ac CPack: Enable Inno Setup generator on non-Windows hosts
Innosetup tools can be run on Linux using Wine, thus there is no reason
to block this in CMake.
2024-04-15 16:34:22 -04:00
jinzhe li 6a2cfbd4ea cm_cxx_features: Ignore Clang unused-argument warnings
Filter out `-Wunused-command-line-argument` warnings from Clang (that
can be caused by user-specified flags) so that they do not break our
checks for C++ feature availability.

This extends commit 71b65abca2 (C++ feature checks: Filter out warnings
caused by user flags, 2017-09-19, v3.10.0-rc1~90^2).
2024-04-15 12:09:49 -04:00
Luis Caro Campos 3e865241f3 file(GET_RUNTIME_DEPENDENCIES): propagate parent rpath on macOS
Fixes: #24400
2024-04-15 11:59:39 -04:00
Evan Wilde 56e5cea600 Swift: Support module libraries with command-line build systems
Wire up the flags needed to support module libraries built and used with
Swift. We need to pass `-bundle` to the linker when linking module
libraries on Darwin, and we need to pass `-export-dynamic` to the linker
when emitting an executable that exports symbols on Linux. This patch
wires up `CMAKE_SHARED_MODULE_CREATE_Swift_FLAGS` and
`CMAKE_SHARED_MODULE_LOADER_Swift_FLAG` on Darwin, and hooks up
`CMAKE_EXE_EXPORTS_Swift_FLAG` on Linux in order to support passing
things correctly.

We can't expose `CMAKE_EXE_LINKER_FLAGS` to Swift, as it contains flags
that the Swift compiler doesn't recognize, but the other
language-specific variables are safe to expose.
2024-04-15 08:23:39 -07:00
Brad King e449417f94 Merge topic 'genex-cleanup'
895efd4e7a cmGeneratorExpression: Consolidate recognition of transitive properties
5f7d8192da cmGeneratorExpression: Inline evaluation helper at only call site
91a25de520 cmGeneratorExpression: Add comments on implementation details
0a61116f52 cmGeneratorTarget: Remove EvaluateInterfaceProperty argument default

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9425
2024-04-15 10:16:35 -04:00
Brad King ca449572ef Merge topic 'cxxmodules-import-std'
429902ebad Clang: support creating a target for imported modules
4617f272b4 MSVC: support `import std`
62a71047bb cmGraphVizWriter: ignore `__cmake_`-prefixed targets
442086c1dc fileapi: ignore `__cmake_`-prefixed targets
ffe74289b3 CMakeDetermineCompilerId: extract C++ standard library impl
15bbd1d9b8 Experimental: add an experimental feature gate for `import std`
f80c60df02 CMakeDetermineCompilerSupport: construct C++ modules targets
19341e2582 ci: enable `import_std23` C++ module tests on MSVC
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9337
2024-04-15 09:56:53 -04:00
Kitware Robot abd572de90 CMake Nightly Date Stamp 2024-04-15 00:02:49 -04:00
Kitware Robot 5df54e2228 CMake Nightly Date Stamp 2024-04-14 00:01:11 -04:00
Kitware Robot 9ae75401d5 CMake Nightly Date Stamp 2024-04-13 00:01:24 -04:00