Commit Graph

71393 Commits

Author SHA1 Message Date
Brad King
ff98528f42 Merge topic 'backport-vs-link-defaults' into release-4.1
91b9db90e5 VS: Restore subsystem link flag for DLLs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11524
2025-12-18 10:29:21 -05:00
Brad King
91b9db90e5 VS: Restore subsystem link flag for DLLs
In commit 99d09ec45a (VS: Suppress MSBuild default link flags not
specified by project or user, 2025-06-17, v4.1.0-rc1~6^2) we removed our
default `-subsystem:...` link flag from `SHARED` and `MODULE` libraries
in Visual Studio generators for consistency with command-line generators.
However, unlike other flag suppressions for #27004, this change did not
just suppress MSBuild defaults, but actually changed flags the generator
was previously adding itself.

For the linker subsystem flag, consistency across generators should
perhaps achieved by adding the flag in other generators instead of
removing it from Visual Studio generators.  Restore the previous
behavior pending further investigation.

Issue: #27466
Fixes: #27464
2025-12-17 17:41:17 -05:00
Brad King
9c0cb30f06 Merge topic 'backport-linux32-system-libarchive' into release-4.1
cea7f7fc32 Linux: Do not force 64-bit `time_t` on 32-bit archs with system libarchive
16cc3e25d4 Utilities: Select bundled or external dependencies very early

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11505
2025-12-12 09:41:35 -05:00
Brad King
03f2b2b9c9 Merge topic 'stdio-ctrl-c' into release-4.1
c55dfbf656 StdIo: Restore compilation on 32-bit MinGW

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11503
2025-12-12 09:40:56 -05:00
Brad King
cea7f7fc32 Linux: Do not force 64-bit time_t on 32-bit archs with system libarchive
Commit 1b9e8f833f (Linux: Compile with 64-bit time_t even on 32-bit
architectures, 2025-06-26, v4.1.0-rc2~16^2) broke running with a
system-provided libarchive that uses a 32-bit `time_t`.  If CMake
is configured to build with a system libarchive, assume the user
has taken responsibility to match `time_t` sizes.

Fixes: #27448
2025-12-11 14:40:48 -05:00
Brad King
16cc3e25d4 Utilities: Select bundled or external dependencies very early 2025-12-11 14:40:16 -05:00
Brad King
c55dfbf656 StdIo: Restore compilation on 32-bit MinGW
In commit e419429616 (StdIo: Restore Windows Console I/O modes on
Ctrl-C, 2025-11-26, v4.1.4~4^2) we relied on the compiler to generate a
lambda with an `operator()` for each calling convention.  MSVC does
this, but the GNU compiler for MinGW does not seem to.
2025-12-11 10:52:18 -05:00
Brad King
6a5e9f299f Merge topic 'fix-nvpl' into release-4.1
1bf46814c4 FindBLAS: Make find_package(nvpl) quiet

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11498
2025-12-11 09:40:00 -05:00
Brad King
c32e21fe52 Merge topic 'export-ignore-ast-grep' into release-4.1
93f5111ba7 gitattributes: Do not export ast-grep infrastructure in source archives

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11499
2025-12-11 09:38:59 -05:00
Brad King
93f5111ba7 gitattributes: Do not export ast-grep infrastructure in source archives
Exclude infrastructure added by commit 61743471d9 (ast-grep: add a rule
to find adjacent string literals in cmStrCat calls, 2025-05-15,
v4.1.0-rc1~122^2~3).
2025-12-10 14:24:48 -05:00
Vito Gamberini
1bf46814c4 FindBLAS: Make find_package(nvpl) quiet
Fixes: #27451
2025-12-10 11:33:12 -05:00
Brad King
892fad3d23 CMake 4.1.4 v4.1.4 2025-12-08 11:30:41 -05:00
Brad King
c267e6d104 Merge topic 'doc-4.1-vs-flags' into release-4.1
e2646b9926 Help: Add 4.1 release note about VS flag suppression

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11489
2025-12-08 11:00:12 -05:00
Brad King
e2646b9926 Help: Add 4.1 release note about VS flag suppression
Document flags suppressed by commit 7db3dbddb2 (VS: Suppress MSBuild
default flags not specified by project or user, 2025-06-02,
v4.1.0-rc1~69^2).
2025-12-08 10:28:32 -05:00
Brad King
a9c997edc0 Merge topic 'vs2019-v142' into release-4.1
8c332a3c7f VS: Restore support for VS 2019 with toolset v142 versions before 14.29

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11480
2025-12-08 09:57:50 -05:00
Brad King
8c332a3c7f VS: Restore support for VS 2019 with toolset v142 versions before 14.29
Since commit 7db3dbddb2 (VS: Suppress MSBuild default flags not
specified by project or user, 2025-06-02, v4.1.0-rc1~69^2) we suppress
the `-Zc:inline` default flag when the project/user does not specify it.
That triggers an apparent bug in VS 2019 with v142 toolset versions
before 14.29 in which MSBuild fails when both `-Zc:inline` and `-nologo`
are suppressed.  This happens when `CMAKE_VERBOSE_MAKEFILE` is enabled,
such as in `try_compile` projects like our builtin compiler inspection.

Since `-nologo` is incidental, avoid suppressing it if `-Zc:inline` is
also suppressed.  Limit this workaround to relevant toolset versions.

Fixes: #27439
2025-12-05 12:47:53 -05:00
Brad King
121234b968 Merge topic 'fix-cps-export-definitions' into release-4.1
b2ca9fba8b CPS: Fix exporting definitions in CMake 4.1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11469
2025-12-01 13:59:36 -05:00
Brad King
b43eb123e4 Merge topic 'stdio-ctrl-c' into release-4.1
e419429616 StdIo: Restore Windows Console I/O modes on Ctrl-C

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11457
2025-12-01 12:27:59 -05:00
Matthew Woehlke
b2ca9fba8b CPS: Fix exporting definitions in CMake 4.1
Backport commit 37b15eda3b (CPS: Fix exporting definitions, 2025-11-21)
to CMake 4.1.

Export compile definitions to CPS using the correct attribute name.

Fixes: #27403
2025-12-01 12:15:51 -05:00
Brad King
e419429616 StdIo: Restore Windows Console I/O modes on Ctrl-C
Extend commit fb3e7825f3 (StdIo: Restore Windows Console I/O modes on
exit, 2025-05-23, v4.1.0-rc1~114^2) to cover termination by Ctrl-C.

Fixes: #27427
2025-11-26 15:18:03 -05:00
Brad King
0848aac41c Merge branch 'release-4.0' into release-4.1 2025-11-25 11:12:29 -05:00
Brad King
d330f70a53 Merge topic 'flang-j-as-moddir' into release-4.1
db6b82ae54 LLVMFlang-Fortran: Use -J instead of -module-dir

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11443
2025-11-25 11:12:17 -05:00
Brad King
22e1d0e929 Merge branch 'release-3.31' into release-4.0 2025-11-25 11:12:05 -05:00
Brad King
8d8239c752 Merge topic 'flang-j-as-moddir' into release-4.0
db6b82ae54 LLVMFlang-Fortran: Use -J instead of -module-dir

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11443
2025-11-25 11:11:48 -05:00
Brad King
377d390546 Merge topic 'flang-j-as-moddir' into release-3.31
db6b82ae54 LLVMFlang-Fortran: Use -J instead of -module-dir

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11443
2025-11-25 11:10:22 -05:00
Brad King
812acd7ee6 Merge topic 'cxx-atomic' into release-4.1
37171d9db0 Source: Improve detection of Linux architectures requiring explicit libatomic

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11441
2025-11-25 10:59:45 -05:00
Tarun Prabhu
db6b82ae54 LLVMFlang-Fortran: Use -J instead of -module-dir
In flang, both -J and -module-dir support both joined and separate values. For
the -J option, these are of the form `-J<value>` and `-J <value>` respectively.
Once https://github.com/llvm/llvm-project/pull/168748 is committed, -module-dir
will only work with a separate value. Setting CMAKE_Fortran_MODDIR_FLAG to -J
ensures that both joined and separate styles will continue to work after that
change is made. As far as behavior is concerned, both -J and -module-dir are
aliases.
2025-11-24 14:25:21 -05:00
Brad King
37171d9db0 Source: Improve detection of Linux architectures requiring explicit libatomic
Extend commit fa3c4b6dbf (Source: Link libatomic when needed on any
Linux architecture, 2023-08-24, v3.27.5~9^2) to decide based on the
architecture targeted by the compiler, known since CMake 4.1.
Use `CMAKE_SYSTEM_PROCESSOR` only as a fallback for older versions.

Fixes: #27406
2025-11-24 11:29:15 -05:00
Brad King
5961f5f3bc CMake 4.1.3 v4.1.3 2025-11-18 09:55:48 -05:00
Brad King
89b555f1b5 Merge branch 'release-4.0' into release-4.1 2025-11-18 09:43:32 -05:00
Brad King
5517be2bf1 CMake 4.0.5 v4.0.5 2025-11-18 09:16:12 -05:00
Brad King
b6f13dabc4 Merge branch 'release-4.0' into release-4.1 2025-11-18 09:04:03 -05:00
Brad King
407a80260b Merge topic 'doc-string-xref' into release-4.1
510d81c7bc Help: Avoid reST named references in string(JSON) synopsis
6c0f37546f Help: Improve string(JSON) synopsis document source readability

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11426
2025-11-18 09:03:41 -05:00
Brad King
96a6b2be06 Merge branch 'release-3.31' into release-4.0 2025-11-18 09:03:27 -05:00
Brad King
e54eda8159 Merge topic 'doc-string-xref' into release-4.0
510d81c7bc Help: Avoid reST named references in string(JSON) synopsis
6c0f37546f Help: Improve string(JSON) synopsis document source readability

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11426
2025-11-18 09:03:15 -05:00
Brad King
6672acb8b4 Merge topic 'doc-string-xref' into release-3.31
510d81c7bc Help: Avoid reST named references in string(JSON) synopsis
6c0f37546f Help: Improve string(JSON) synopsis document source readability

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11426
2025-11-18 09:01:58 -05:00
Brad King
510d81c7bc Help: Avoid reST named references in string(JSON) synopsis
Also revert commit 9702a01dc9 (Help: string(LENGTH): Fix synopsis link
to command description, 2023-12-30, v3.28.2~23^2).  It was only needed
to avoid re-using a named reference that we've now removed.

Issue: #25546
2025-11-17 16:31:37 -05:00
Brad King
6c0f37546f Help: Improve string(JSON) synopsis document source readability
Avoid spaces in signature target names.
2025-11-17 16:31:37 -05:00
Brad King
1d303f6beb Merge branch 'release-4.0' into release-4.1 2025-11-17 16:26:50 -05:00
Brad King
b4528858f8 Merge branch 'release-3.31' into release-4.0 2025-11-17 16:26:39 -05:00
Brad King
ca626022f5 CMake 3.31.10 v3.31.10 2025-11-17 14:28:31 -05:00
Brad King
50380f1bc1 Merge branch 'release-4.0' into release-4.1 2025-11-14 09:31:27 -05:00
Brad King
14f0d086f7 Merge topic 'ci-xcode-26.1' into release-4.1
cf10b47e57 ci: update macOS jobs to use Xcode 26.1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11416
2025-11-14 09:31:13 -05:00
Brad King
e5bf8a6324 Merge branch 'release-3.31' into release-4.0 2025-11-14 09:30:53 -05:00
Brad King
16ffc77177 Merge topic 'ci-xcode-26.1' into release-4.0
cf10b47e57 ci: update macOS jobs to use Xcode 26.1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11416
2025-11-14 09:30:44 -05:00
Brad King
04d8da5f19 Merge topic 'ci-xcode-26.1' into release-3.31
cf10b47e57 ci: update macOS jobs to use Xcode 26.1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11416
2025-11-14 09:29:17 -05:00
Brad King
cf10b47e57 ci: update macOS jobs to use Xcode 26.1 2025-11-13 13:55:08 -05:00
Brad King
690eb1c070 Merge branch 'release-4.0' into release-4.1 2025-11-12 10:53:23 -05:00
Brad King
39ccffa076 Merge topic 'process-timeout-terminate' into release-4.1
3dc641d99c Merge branch 'backport-3.31-process-timeout-terminate'
22e84c7e7f execute_process: Restore termination of processes on timeout
e2cfc61e5e execute_process: Restore termination of processes on timeout (3.31)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11408
2025-11-12 10:53:09 -05:00
Brad King
cfd54d02a5 Merge branch 'release-3.31' into release-4.0 2025-11-12 10:52:49 -05:00