Brad King
d26526a36f
Merge branch 'release-3.28' into release-3.29
2024-03-26 09:07:16 -04:00
Brad King
8b832b353c
Merge topic 'libuv-macos-10.5' into release-3.29
...
e3e2ef1964 libuv: Avoid posix_spawn on macOS < 10.8
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9371
2024-03-26 09:06:20 -04:00
Brad King
8fd4110d55
Merge topic 'libuv-macos-10.5' into release-3.28
...
e3e2ef1964 libuv: Avoid posix_spawn on macOS < 10.8
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9371
2024-03-26 09:05:32 -04:00
Brad King
e3e2ef1964
libuv: Avoid posix_spawn on macOS < 10.8
...
Since libuv commit `83efa3dd71` (Reland "macos: use posix_spawn instead
of fork", 2022-03-02, v1.44.0~10), `uv_spawn` on macOS < 10.8
has been observed to cause kernel panics and/or resource exhaustion.
This became particularly noticeable in CMake since commit 5420639a8d
(cmExecuteProcessCommand: Replace cmsysProcess with cmUVProcessChain,
2023-06-01, v3.28.0-rc1~138^2~8). Prefer `fork` over `posix_spawn` in
libuv when targeting macOS < 10.8.
Fixes : #25414
Fixes : #25818
Inspired-by: Ken Cunningham <kencu@macports.org >
2024-03-25 12:11:57 -04:00
Brad King
245fa4760c
Merge topic 'IntelLLVM-Fortran-no-isystem' into release-3.29
...
a80d8e839d IntelLLVM: Revert accidental use of -external:I with Fortran compilers
Acked-by: Kitware Robot <kwrobot@kitware.com >
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com >
Merge-request: !9368
2024-03-25 10:51:15 -04:00
Brad King
a80d8e839d
IntelLLVM: Revert accidental use of -external:I with Fortran compilers
...
In commit 8218aed118 (IntelLLVM: support marking include paths as SYSTEM
directories, 2023-08-15, v3.29.0-rc1~81^2) this flag was added for the C
and C++ compilers, but was accidentally added for Fortran too. Remove
it for the latter, as it is unsupported.
Issue: #25807
2024-03-24 15:03:11 -04:00
Brad King
78e89edab4
Merge topic 'linker-vars-propagate-try_compile' into release-3.29
...
98cc86e265 try_compile(): Include languages with _ or - when passing linker vars
Acked-by: Kitware Robot <kwrobot@kitware.com >
Tested-by: buildbot <buildbot@kitware.com >
Merge-request: !9361
2024-03-24 14:33:30 -04:00
Brad King
0ebe55ae41
Merge topic 'matlab-2024a' into release-3.29
...
bade9832e6 FindMatlab: R2024a version map
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9360
2024-03-22 09:01:53 -04:00
Craig Scott
98cc86e265
try_compile(): Include languages with _ or - when passing linker vars
...
Fixes : #25809
2024-03-22 21:35:51 +11:00
scivision
bade9832e6
FindMatlab: R2024a version map
2024-03-21 10:13:59 -04:00
Brad King
25d2850c19
CMake 3.29.0
v3.29.0
2024-03-21 09:32:22 -04:00
Brad King
7e52f9d4e0
Merge branch 'release-3.28' into release-3.29
2024-03-20 10:35:33 -04:00
Brad King
b5602e7254
CMake 3.28.4
v3.28.4
2024-03-20 10:03:43 -04:00
Brad King
780c1ab0ec
Merge branch 'release-3.28' into release-3.29
2024-03-20 09:56:40 -04:00
Brad King
0287208bbf
Merge topic 'ninja-fortran-include' into release-3.29
...
36dc8d6d50 Ninja: Fix Fortran module deps in files INCLUDEd by preprocessed sources
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Merge-request: !9351
2024-03-20 09:55:47 -04:00
Brad King
5969b4f457
Merge topic 'ninja-fortran-include' into release-3.28
...
36dc8d6d50 Ninja: Fix Fortran module deps in files INCLUDEd by preprocessed sources
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9351
2024-03-20 09:54:50 -04:00
Brad King
3135a99467
Merge topic 'package-dispatch-apple' into release-3.29
...
85d6d3b2e3 generate_apple_*_selection_file: Add option to capture errors
2149dbd379 generate_apple_architecture_selection_file: Document $(ARCHS_STANDARD) support
be642f6ed5 generate_apple_architecture_selection_file: Simplify signature
8959ad9db1 Tests/RunCMake/CMakePackage: Fix Apple architecture selection argument order
677f3d721b Tests/RunCMake/CMakePackage: Add architecture i386 for macOS on Xcode < 10
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9349
2024-03-20 09:51:43 -04:00
Brad King
b877fb49ce
Merge topic 'doc-release-3.29-typos' into release-3.29
...
eceb368ccc Help: Fix typos in 3.29 docs
31fb693d06 Help: Fix typos and grammar in pre-3.29 docs
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9353
2024-03-19 10:10:15 -04:00
Brad King
88d2dd0735
Merge topic 'doc-exit-code-range' into release-3.29
...
c980745b82 Help: Specify advisable range for exit code in cmake_language(EXIT)
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9352
2024-03-19 10:09:19 -04:00
Brad King
85d6d3b2e3
generate_apple_*_selection_file: Add option to capture errors
...
Add an option to capture error messages in a variable instead of
terminating with a fatal error.
Fixes : #25778
2024-03-19 09:52:32 -04:00
Brad King
2149dbd379
generate_apple_architecture_selection_file: Document $(ARCHS_STANDARD) support
...
Also add a test case.
Fixes : #25780
2024-03-19 09:52:32 -04:00
Brad King
be642f6ed5
generate_apple_architecture_selection_file: Simplify signature
...
Allow callers to pass multiple values to list-valued arguments
instead of putting the entire list in a single quoted argument.
Fixes : #25779
2024-03-19 09:52:32 -04:00
Brad King
8959ad9db1
Tests/RunCMake/CMakePackage: Fix Apple architecture selection argument order
...
Call `generate_apple_architecture_selection_file` with matching order in
`SINGLE_ARCHITECTURES` and `SINGLE_ARCHITECTURE_INCLUDE_FILES`.
2024-03-19 09:51:21 -04:00
Brad King
677f3d721b
Tests/RunCMake/CMakePackage: Add architecture i386 for macOS on Xcode < 10
...
Use every architecture each version of Xcode has in `$(ARCHS_STANDARD)`.
2024-03-19 09:46:57 -04:00
Brad King
36dc8d6d50
Ninja: Fix Fortran module deps in files INCLUDEd by preprocessed sources
...
If a preprocessed source also uses the Fortran `INCLUDE` directive,
search the original source file's directory.
Fixes : #25792
2024-03-19 07:56:13 -04:00
Craig Scott
c980745b82
Help: Specify advisable range for exit code in cmake_language(EXIT)
...
The limitations added here are documented in the bash shell's
reference manual.
2024-03-19 22:37:52 +11:00
Craig Scott
eceb368ccc
Help: Fix typos in 3.29 docs
2024-03-19 21:47:28 +11:00
Craig Scott
31fb693d06
Help: Fix typos and grammar in pre-3.29 docs
2024-03-19 21:47:21 +11:00
Brad King
8a40da1b71
Merge topic 'doc-project-include-vars-3.29' into release-3.29
...
dcb894fb00 Help: Update project() code injection for new 3.29 include behavior
09cf39ab07 Help: Improve wording of CMAKE_PROJECT_..._INCLUDE... changes for 3.29
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9343
2024-03-18 13:59:52 -04:00
Craig Scott
dcb894fb00
Help: Update project() code injection for new 3.29 include behavior
...
Specifically, the various CMAKE_PROJECT_...INCLUDE... variables can
now take a list of things, and those things can be module names
too, not just file names.
2024-03-16 17:43:25 +11:00
Craig Scott
09cf39ab07
Help: Improve wording of CMAKE_PROJECT_..._INCLUDE... changes for 3.29
2024-03-16 17:42:10 +11:00
Brad King
788c204788
CMake 3.29.0-rc4
v3.29.0-rc4
2024-03-14 13:33:17 -04:00
Brad King
e497fbfca3
Merge topic 'Apple-TBD-in-subdirecory' into release-3.29
...
bcc26ce465 Apple Text Based Stubs: should be usage in subdirectories
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Merge-request: !9341
2024-03-14 13:31:10 -04:00
Brad King
3e90c88733
Merge branch 'release-3.28' into release-3.29
2024-03-14 11:47:48 -04:00
Brad King
742af6cff7
Merge topic 'autogen-makefile-depfile' into release-3.29
...
d2d1763f88 cmQtAutoGenInitializer: De-duplicate autogen/timestamp target depend logic
6193d15556 Autogen: Restore target-ordering dependencies in Makefiles with DEPFILE
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9340
2024-03-14 11:46:53 -04:00
Brad King
8ebdee9314
Merge topic 'autogen-makefile-depfile' into release-3.28
...
d2d1763f88 cmQtAutoGenInitializer: De-duplicate autogen/timestamp target depend logic
6193d15556 Autogen: Restore target-ordering dependencies in Makefiles with DEPFILE
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9340
2024-03-14 11:46:08 -04:00
Brad King
8f0801cacc
Merge topic 'LINKER_TYPE-mold-support' into release-3.29
...
801ae06952 LINKER_TYPE: Support MOLD only on GCC versions that support it
939ac5287e LINKER_TYPE: fix spelling error in message
922883782b LINKER_TYPE: Document that linker tool should be in the PATH
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9334
2024-03-14 11:45:13 -04:00
Brad King
d93a7c18d8
Merge topic 'fc-MakeAvailable-leak-var' into release-3.29
...
2b68048bdb FetchContent: Don't leak temporary variable and restore var robustly
Acked-by: Kitware Robot <kwrobot@kitware.com >
Tested-by: buildbot <buildbot@kitware.com >
Merge-request: !9338
2024-03-14 11:44:00 -04:00
Marc Chevrier
bcc26ce465
Apple Text Based Stubs: should be usage in subdirectories
...
Fixes : #25765
2024-03-14 14:33:48 +01:00
Brad King
d2d1763f88
cmQtAutoGenInitializer: De-duplicate autogen/timestamp target depend logic
...
We place the same target ordering dependencies on either the
`_autogen_timestamp_deps` target or the `_autogen` target.
Refactor the logic to avoid duplicating that code.
2024-03-14 09:18:56 -04:00
Brad King
6193d15556
Autogen: Restore target-ordering dependencies in Makefiles with DEPFILE
...
In commit aebfbcaa46 (AutoGen: Use depfiles for the XXX_autogen ninja
targets, 2020-01-14, v3.17.0-rc1~58^2) the `_autogen_timestamp_deps`
target was given target ordering dependencies through its custom command
rather than direct target dependencies as on the `_autogen` target.
Then commit 895fa3433f (cmQtAutoGenInitializer: support IMPLIB-only
imported targets, 2021-09-23, v3.22.0-rc1~80^2) converted some
target-level dependencies into file-level dependencies on the custom
command. This only works with a monolithic build graph like Ninja.
Since commit ebc9e448b3 (Autogen: Add depfile support for Makefiles,
2023-09-07, v3.28.0-rc1~101^2~1) we use the `_autogen_timestamp_deps`
target in Makefile generators too. This exposed the missing target
ordering dependency.
Fixes : #25766
2024-03-14 09:05:06 -04:00
Marc Chevrier
801ae06952
LINKER_TYPE: Support MOLD only on GCC versions that support it
...
Fixes : #25748
2024-03-13 11:13:21 -04:00
Brad King
886333da38
Merge topic 'export-find_dependency-calls' into release-3.29
...
3a739d4dcb EXPORT_PACKAGE_DEPENDENCIES: Add experimental feature gate
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Merge-request: !9336
2024-03-13 10:57:07 -04:00
Brad King
3d67b5a4e5
Merge branch 'release-3.28' into release-3.29
2024-03-13 10:52:47 -04:00
Brad King
7a9fc8ca06
Merge topic 'backport-3.28-ci-xcode-15.3' into release-3.28
...
8a6d05aa9d gitlab-ci: update macOS jobs to use Xcode 15.3
7bf893bc30 Tests: Update RunCMake.CheckCompilerFlag for Xcode 15.3
7f5f0ab4b3 Tests: Update RunCMake.CompileFeatures for Xcode 15.3
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9333
2024-03-13 10:52:15 -04:00
Brad King
be27ce8fea
Merge topic 'ci-xcode-15.3' into release-3.29
...
682767e8a5 Merge branch 'backport-3.28-ci-xcode-15.3'
e572986231 LinkerId: Update detection of linker tool for Xcode 15.3
8a6d05aa9d gitlab-ci: update macOS jobs to use Xcode 15.3
7bf893bc30 Tests: Update RunCMake.CheckCompilerFlag for Xcode 15.3
7f5f0ab4b3 Tests: Update RunCMake.CompileFeatures for Xcode 15.3
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9333
2024-03-13 10:51:11 -04:00
Craig Scott
2b68048bdb
FetchContent: Don't leak temporary variable and restore var robustly
...
In FetchContent_MakeAvailable(), the __fcprefix__ previously used
when pushing the value of CMAKE_EXPORT_FIND_PACKAGE_NAME
to the variable stack is not needed. The stack will never be empty
at that point, so pushing an empty value will be handled correctly.
By removing the __fcprefix__, we no longer need any temporary
variable when restoring CMAKE_EXPORT_FIND_PACKAGE_NAME.
But we need to ensure CMAKE_EXPORT_FIND_PACKAGE_NAME is
left undefined if it wasn't defined before, and pushing an empty
value doesn't let us distinguish between unset and set-but-empty.
Therefore, when CMAKE_EXPORT_FIND_PACKAGE_NAME is undefined,
push a specific value that can't be used by the project instead and
check for that when popping it again. This ensures we can robustly
distinguish the two cases and will always restore the right state.
Fixes : #25758
2024-03-13 17:27:18 +11:00
Brad King
3a739d4dcb
EXPORT_PACKAGE_DEPENDENCIES: Add experimental feature gate
...
Some design concerns have been raised after trying the 3.29 release
candidates. Avoid committing to a stable public interface for now.
Issue: #25767
2024-03-12 14:24:53 -04:00
Marc Chevrier
939ac5287e
LINKER_TYPE: fix spelling error in message
2024-03-12 18:18:25 +01:00
Brad King
682767e8a5
Merge branch 'backport-3.28-ci-xcode-15.3'
2024-03-12 09:49:17 -04:00