Commit Graph

33118 Commits

Author SHA1 Message Date
Kyle Edwards ec8b67918c cmCMakePresetsGraph: Clear package presets in ClearPresets() 2022-09-15 16:36:43 -04:00
Kyle Edwards e7087308ce cmake --list-presets: List package as a valid option 2022-09-15 14:50:55 -04:00
Matthew Woehlke f976800577 try_compile: More useful error if insufficient arguments
Tweak try_compile and try_run to give a more informative error (rather
than "unknown error") when given an insufficient number of arguments.
2022-09-15 13:34:30 -04:00
Mikko Sivulainen d4cc39842e Xcode: Do not append per-config suffixes to library search paths
Add policy `CMP0142` to remove the automatic addition of the
`$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)` suffix in a compatible way.

Fixes: #21757
2022-09-15 10:27:23 -04:00
Brad King 3c6d2c0213 Merge topic 'export-ios-app-layout'
d26c520f4b export: Fix IMPORTED_LOCATION of iOS flat app bundles

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7676
2022-09-15 09:08:43 -04:00
Brad King 2b91a96633 Merge topic 'link-framework-with-multi-config-postfix'
fc06450ff4 Apple: Fix regression when linking a framework with postfix

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7675
2022-09-15 09:04:49 -04:00
Kitware Robot 9b22e036d1 CMake Nightly Date Stamp 2022-09-15 00:01:21 -04:00
Matthew Woehlke 56ae40cc59 try_compile: Add PROJECT keyword-dispatched signature
Introduce a new signature for the project flavor of try_compile (and
try_run) which removes the `bindir` argument and adds a required PROJECT
tag. This is similar to the SOURCES flavor added by commit aa9220d3
(try_compile: Add keyword-dispatched signature, 2022-09-02).
2022-09-14 16:35:50 -04:00
Marc Chevrier fc06450ff4 Apple: Fix regression when linking a framework with postfix
Fix a regression caused by commit 40178f3c90 (cmGlobalGenerator: Add
helper to split framework path, 2022-02-10, v3.24.0-rc1~661^2~1).

Fixes: #23961
2022-09-14 14:55:27 -04:00
Harry Mallon d26c520f4b export: Fix IMPORTED_LOCATION of iOS flat app bundles
iOS/tvOS app bundles are flat and do not include the `Contents/MacOS/`
layers, so they should not be in the `IMPORTED_LOCATION`.  Use the same
logic that commit 34f5ef564a (iOS: Fix App Bundle layout, 2015-12-10,
v3.5.0-rc1~129^2~1) added for the installation layout.

Fixes: #23963
2022-09-14 14:49:05 -04:00
Brad King c3e68020d6 Merge topic 'MsvcDebugInformationFormatAbstraction'
a858466aac MSVC: Add test for debug information format
0e96a20478 MSVC: Add abstraction for debug information format
d4c8111da4 Clang/Windows: Clarify name of internal runtime library flags variables

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7606
2022-09-14 09:21:27 -04:00
Glen Chung 0e96a20478 MSVC: Add abstraction for debug information format
Replace our hard-coded default for `/Zi` with a first-class abstraction
to select the debug information format an enumeration of logical
names.  We've long hesitated to do this because the idea of "debug
information format" touches on related concepts on several platforms.
Avoid that scope creep by simply defining an abstraction that applies
only when targeting the MSVC ABI on Windows.

Removing the old default flag requires a policy because existing
projects may rely on string processing to edit them and choose a
runtime library under the old behavior.  Add policy CMP0141 to
provide compatibility.

Fixes: #10189
2022-09-14 09:12:47 -04:00
Brad King 64b80f54f0 Merge topic 'cmake-presets-package-unsupported-error'
3546657cc7 CMakePresets.json: Fix error message for unsupported package presets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7669
2022-09-14 08:01:52 -04:00
Kitware Robot 0a9ce1ec3c CMake Nightly Date Stamp 2022-09-14 00:01:12 -04:00
Kyle Edwards 3546657cc7 CMakePresets.json: Fix error message for unsupported package presets 2022-09-13 10:42:11 -04:00
Brad King 31f835410e CMake 3.24.2 2022-09-13 09:53:22 -04:00
Brad King 358a49ef9b Merge topic 'LINUX-host'
caffb15d09 LINUX: Set CMAKE_HOST_LINUX variable when running on a Linux host

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: hinell <al.neodim@gmail.com>
Merge-request: !7661
2022-09-13 09:46:01 -04:00
Kitware Robot 168e4491de CMake Nightly Date Stamp 2022-09-13 00:01:11 -04:00
Brad King 6183332c27 Merge topic 'try_compile_correctly_compute_exec_name'
0c141b0393 try_compile: Record output location instead of reverse computing it

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7626
2022-09-12 09:40:39 -04:00
Kitware Robot 4e3e15f98f CMake Nightly Date Stamp 2022-09-12 00:01:28 -04:00
Kitware Robot a09f23e8d2 CMake Nightly Date Stamp 2022-09-11 00:01:09 -04:00
Kitware Robot 9790821368 CMake Nightly Date Stamp 2022-09-10 00:01:20 -04:00
Cristian Adam caffb15d09 LINUX: Set CMAKE_HOST_LINUX variable when running on a Linux host
Relates: #23840
2022-09-09 20:10:43 +02:00
Brad King e71605dfb4 Merge topic 'BSD'
1ea8b8ed86 BSD: Set CMAKE_HOST_BSD variable on a BSD host
288f72efea BSD: Only use BSD as variable for target BSD system

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7648
2022-09-09 10:05:41 -04:00
Brad King 29c0633793 Merge topic 'truncation_invalid'
bd30d20bc3 Tests: Add cases covering bad ctest output truncation types
dbf840392d ctest: print error for invalid CTEST_CUSTOM_TEST_OUTPUT_TRUNCATION

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7596
2022-09-09 09:52:06 -04:00
Brad King 6695957237 Merge topic 'truncation_invalid' into release-3.24
bd30d20bc3 Tests: Add cases covering bad ctest output truncation types
dbf840392d ctest: print error for invalid CTEST_CUSTOM_TEST_OUTPUT_TRUNCATION

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7596
2022-09-09 09:52:04 -04:00
Brad King 39d2ceb4f1 Merge topic 'revert-automoc-silence-warnings'
e08d34eda1 automoc: revert attempts to silence linker warning on macos

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7652
2022-09-09 09:50:05 -04:00
Brad King 11754888a8 Merge topic 'revert-automoc-silence-warnings' into release-3.24
e08d34eda1 automoc: revert attempts to silence linker warning on macos

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7652
2022-09-09 09:50:04 -04:00
Brad King 06404a1979 Merge topic 'check-library-properties-fix-performances-regression'
985b4c82a6 Check link libraries properties: fix performances regression
a47eef32a3 renames method FinalizeTargetCompileInfo() in FinalizeTargetConfiguration().

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7651
2022-09-09 09:48:56 -04:00
Kitware Robot 347fa6169f CMake Nightly Date Stamp 2022-09-09 00:01:16 -04:00
Kitware Robot 83686df1d6 CMake Nightly Date Stamp 2022-09-08 00:01:34 -04:00
Robert Maynard 0c141b0393 try_compile: Record output location instead of reverse computing it
Fixes #23887, #23942, #20163, #18288
2022-09-07 15:08:41 -04:00
Frank Winklmeier dbf840392d ctest: print error for invalid CTEST_CUSTOM_TEST_OUTPUT_TRUNCATION
Print an error message for invalid values of
`CTEST_CUSTOM_TEST_OUTPUT_TRUNCATION` in a ctest dashboard script.
The option was added by commit 140704d443 (ctest: add option for
output truncation, 2022-03-07, v3.24.0-rc1~513^2).

Fixes: #23869
2022-09-07 11:52:03 -04:00
Brad King ecfc63a9b0 Merge topic 'try_compile-unique-bindir'
aa9220d3a0 try_compile: Add keyword-dispatched signature
d1befe5515 cmSystemTools: Add MakeTempDirectory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Acked-by: Matthew Woehlke <matthew.woehlke@kitware.com>
Merge-request: !7579
2022-09-07 10:43:14 -04:00
Brad King e08d34eda1 automoc: revert attempts to silence linker warning on macos
We've made several attempts to add a dummy symbol to `mocs_compilation.cpp`
when there are no automoc sources:

* commit 4a9daae483 (automoc: silence linker warning on macos,
                     2022-05-25, v3.24.0-rc1~55^2)
* commit 844244ccdc (automoc: avoid compiler warnings in linker-warning-
                     silencing code, 2022-08-10, v3.24.1~6^2)
* commit fc8628389f (automoc: avoid more compiler warnings in linker-
                     warning-silencing code, 2022-08-29)

The last attempt derives a symbol name from the path to the source
file, but that breaks reproducible builds because it is not stable
w.r.t. the location of the build tree.  Revert all these attempts
for the 3.24 release series, and return to what 3.23 and below did.
Further investigation will be needed to resolve the original issue.

Fixes: #23937
Issue: #23551, #23823, #23823
2022-09-07 10:35:17 -04:00
Brad King a64aa9bd30 Merge topic 'return-propagate-variables'
838a5fae23 return(): Propagate variables to result scope
8f0e1f2111 cmMakefile: add RaiseScope for list of variables

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Acked-by: Robert Maynard <robertjmaynard@gmail.com>
Merge-request: !7634
2022-09-07 09:51:51 -04:00
Brad King 15f3d6e87a Merge topic 'nasinlock/enable_two_part_vs_toolset_versions'
f972e4fd3a cmVSGenerator: Add support for two-part toolset versions for Visual Studio

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7637
2022-09-07 09:50:01 -04:00
Brad King 69947f4984 Merge topic 'cpack-archive-custom-extension'
cc3cd8bc2a CPack: allow custom file extension in archive generator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7563
2022-09-07 09:44:16 -04:00
Marc Chevrier 985b4c82a6 Check link libraries properties: fix performances regression
Fixes: #23939
2022-09-07 15:20:53 +02:00
Marc Chevrier a47eef32a3 renames method FinalizeTargetCompileInfo() in FinalizeTargetConfiguration(). 2022-09-07 14:23:21 +02:00
Kitware Robot 6b8233cac8 CMake Nightly Date Stamp 2022-09-07 00:01:20 -04:00
Kitware Robot 52822ac466 CMake Nightly Date Stamp 2022-09-06 00:01:13 -04:00
Cristian Adam 1ea8b8ed86 BSD: Set CMAKE_HOST_BSD variable on a BSD host
Also the BSD variable will be set in CMake scripting mode (-P).

Relates: #23853
2022-09-06 01:15:44 +02:00
Matthew Woehlke aa9220d3a0 try_compile: Add keyword-dispatched signature
Introduce a new signature for try_compile (and try_run) which removes
the `bindir` argument and requires the SOURCES tag. This will eventually
allow us to add other ways of providing sources, but also allows us to
change the behavior without breaking compatibility.

The old signature uses a special, but non-unique temporary location
inside the specified `bindir`, which conventionally is just the
project's build directory. The new signature unconditionally uses the a
unique temporary directory which is unconditionally within the project's
build directory (which is no longer separately specified). This ensures
that successive runs do not overwrite previous runs, will simplify
debugging, and should also, eventually, allow us to execute multiple
trials in parallel.
2022-09-05 13:19:59 -04:00
Matthew Woehlke d1befe5515 cmSystemTools: Add MakeTempDirectory
Add a cross-platform wrapper over mkdtemp. This will allow us to create
guaranteed-unique directories. On POSIX platforms, this is simply a
wrapper over mkdtemp. On Windows, we take a brute-force approach using
C++11's random facilities and relying on attempts to create an existing
directory resulting in an error. (This approach is very possibly how
mkdtemp is implemented internally, and should be suitable for any
platform if needed, although at present it only uses a partial set of
substitution characters since Windows likely implies a case-insensitive
file system.)
2022-09-05 13:19:58 -04:00
Kitware Robot 7e6f349e1a CMake Nightly Date Stamp 2022-09-05 00:01:33 -04:00
Kitware Robot 61d434d6a7 CMake Nightly Date Stamp 2022-09-04 00:01:10 -04:00
Marc Chevrier 838a5fae23 return(): Propagate variables to result scope
Fixes: #23871
2022-09-03 23:10:01 +02:00
Marc Chevrier 8f0e1f2111 cmMakefile: add RaiseScope for list of variables 2022-09-03 19:27:26 +02:00
Kitware Robot b4c5b5a5f9 CMake Nightly Date Stamp 2022-09-03 00:01:14 -04:00