Commit Graph
15904 Commits
Author SHA1 Message Date
Brad King cae7b0461d Merge topic 'nvhpc-cpp26'
1e9150439c NVHPC: Record C23 and C++26 support
ee9f90005b NVHPC: Add detection of C++ 26 mode

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11881
2026-04-01 13:56:12 -04:00
scivision 1e9150439c NVHPC: Record C23 and C++26 support
NVHPC 26.3 documents support for `-std=c++26` [1].
The `-std=gnu*` flags were also added.

[1] https://docs.nvidia.com/hpc-sdk/archive/26.3/release-notes/index.html
2026-03-31 14:19:53 -04:00
Brad King ee9f90005b NVHPC: Add detection of C++ 26 mode
This compiler uses GCC's standard library, and so limits `__cplusplus`
to that of the GCC toolchain.  However, it defines feature macros that
we can use to distinguish this mode.
2026-03-31 14:19:32 -04:00
Brad King 2f6450402f Merge topic 'android-ndk-arm64'
39b998edee Android: Add future linux-arm64 `CMAKE_ANDROID_NDK_TOOLCHAIN_HOST_TAG`

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11879
2026-03-31 09:12:27 -04:00
Brad King 87d2ffc738 Merge topic 'gtest-alias'
741233a02b GoogleTest: Allow alias target in test discovery

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11876
2026-03-31 09:10:55 -04:00
Colin Cross 39b998edee Android: Add future linux-arm64 CMAKE_ANDROID_NDK_TOOLCHAIN_HOST_TAG
Future NDK versions may support linux `aarch64` hosts.  Teach CMake to
set `CMAKE_ANDROID_NDK_TOOLCHAIN_HOST_TAG` to `linux-arm64` on them.
2026-03-30 17:02:12 -04:00
Daniel Pfeifer 741233a02b GoogleTest: Allow alias target in test discovery
Fixes: #24427
Fixes: #24428
2026-03-30 15:27:07 -04:00
Brad King ed48feeae8 clang-cl: Add support for C++ modules
Since commit 4a4986d28a (cxxmodules: support command templates for BMI
compilation, 2026-03-25, v4.3.1~2^2~1) we can express module interface
unit compilation to either object files or BMI-only in a way that works
with `clang-scan-deps` and `clang-cl` together.

Fixes: #25731
2026-03-27 15:39:33 -04:00
Brad King 7c2bd4f534 Clang-CXX: Flatten C++ module scanning conditions to reduce nesting 2026-03-27 15:39:33 -04:00
Brad King 0e47cd8c7b Merge topic 'bmi-only-command-template'
7ebb5687ab cmGeneratorTarget: use typename for `flag`
4a4986d28a cxxmodules: support command templates for BMI compilation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11871
2026-03-27 07:36:26 -04:00
Ben Boeckel 4a4986d28a cxxmodules: support command templates for BMI compilation
Some compilers (Clang) warn when using their BMI-only flag with `-c`.
Support a complete template for BMI compilation rather than an
additional flag to support such toolchains.

Fixes: #27600
2026-03-26 13:20:19 -04:00
Serguei E. Leontiev d60a5f278a OrangeC: Add C/C++ standards as of 7.0 2026-03-25 17:01:34 -04:00
Serguei E. Leontiev 402d72b6c0 OrangeC: Add support for compiling Windows Resources
OrangeC 7.0 and above come with a resource compiler, ORC.
2026-03-25 17:01:34 -04:00
Brad King 8125a2f192 Merge topic 'orangec-makefiles'
4e28855735 OrangeC: Improve compiler information module formatting
7df028c1f2 OrangeC: Drop redundant nologo flag
1657e9d9f1 OrangeC: Fix shared library creation in Makefile generators

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11867
2026-03-25 12:00:55 -04:00
Brad King 4e28855735 OrangeC: Improve compiler information module formatting 2026-03-24 15:24:22 -04:00
Brad King 7df028c1f2 OrangeC: Drop redundant nologo flag 2026-03-24 15:24:21 -04:00
Brad King 1657e9d9f1 OrangeC: Fix shared library creation in Makefile generators
Replace the Ninja-specific placeholders with those that work in
both Makefile and Ninja generators.

Fixes: #27716
2026-03-24 15:24:20 -04:00
Willem Deconinck 2b2cea3037 NAG-Fortran: Add support for WHOLE_ARCHIVE on Linux 2026-03-23 17:15:35 -04:00
Brad King 89fe07f800 Merge topic 'rust-rlib'
e6a544836b Rust: Update experimental UUID
881faf67e5 Rust: Switch to building .rs files to .rlib instead of native object files
942ddcdd36 Rust: Add support for position independent code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11686
2026-03-21 10:18:21 -04:00
Baudouin Feildel 881faf67e5 Rust: Switch to building .rs files to .rlib instead of native object files
Each Rust source file given to a target is considered a separate crate
root. There's a concept of a "main crate root", which is the `.rs` file
that is given to the final linker phase in CMake. Other Rust source file
in a target are built as rlib separately.

The project can still build `.rs` files into object files by setting the
Rust_EMIT property on the desired source file.
2026-03-20 09:42:44 -04:00
Brad King 6bbbe81f64 Merge topic 'ExternalData-link-mode'
0db2ea9704 ExternalData: Add configurable link materialization mode

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11829
2026-03-20 08:54:02 -04:00
Brad King 55f59dbab6 Merge topic 'FindMatlab-mex-Fortran'
1a74acdc3f FindMatlab: Implement matlab_add_mex for Fortran

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11836
2026-03-20 08:42:07 -04:00
Baudouin Feildel 942ddcdd36 Rust: Add support for position independent code 2026-03-19 14:25:56 -04:00
Arkadiusz Lachowicz 0db2ea9704 ExternalData: Add configurable link materialization mode
Fixes: #27700
2026-03-19 17:34:08 +01:00
adam-sim-dev 1a74acdc3f FindMatlab: Implement matlab_add_mex for Fortran
Add a version file based on the languages of the source files rather
than languages that have been enabled.

Populate link flags and map files for Fortran.

Fixes: #25068
2026-03-19 11:48:37 -04:00
Giancane, FrancescoandBrad King d2c2151d9e FindVulkan: Search for VkLayer libraries on iOS
On non-iOS systems, Vulkan Layers are loaded dynamically by the Vulkan
Loader at run-time.  On iOS systems, they are provided as frameworks to
be bundled with an application, so there must be a way to discover those
dependencies as well.

Inspired by the FindVulkan module in `KhronosGroup/Vulkan-Samples`.

Co-Authored-By: Brad King <brad.king@kitware.com>
2026-03-18 17:16:54 -04:00
Brad King 88c6815f7e Merge topic 'ExternalData-state-dir'
079c86e0a4 ExternalData: Add relocatable state metadata

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11814
2026-03-17 09:15:02 -04:00
Brad King c7d287a479 Merge topic 'FindGLEW-cygwin'
2a5392c128 FindGLEW: Fix finding libraries on CYGWIN

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11821
2026-03-17 09:10:50 -04:00
Brad King c8b36a6a95 Merge topic 'FindGLEW-cygwin' into release-4.3
2a5392c128 FindGLEW: Fix finding libraries on CYGWIN

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11821
2026-03-17 09:10:48 -04:00
Brad King 519bc7da8c Merge topic 'doc-CheckIncludeFile'
6a6a56b1a0 CheckIncludeFile*: Fix documentation of `<flags>` argument

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11826
2026-03-17 09:07:41 -04:00
Brad King fd44ac83a4 Merge topic 'doc-CheckIncludeFile' into release-4.3
6a6a56b1a0 CheckIncludeFile*: Fix documentation of `<flags>` argument

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11826
2026-03-17 09:07:40 -04:00
Brad King c6c2e8efc1 Merge topic 'fbuild_fix_clang_cl_manifest'
30ce1cfdcb FASTBuild: fix clang-cl build with manifests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11823
2026-03-17 09:05:05 -04:00
Peter Kokot 6a6a56b1a0 CheckIncludeFile*: Fix documentation of <flags> argument
In `check_include_file()` and `check_include_file_cxx()` the `<flags>`
must be a command-line string fragment.

Fixes: #27699
2026-03-16 16:57:19 -04:00
Eduard Voronkin 30ce1cfdcb FASTBuild: fix clang-cl build with manifests
Fixes: #27691
2026-03-16 11:52:50 -04:00
Carlo Bramini 2a5392c128 FindGLEW: Fix finding libraries on CYGWIN
This module uses custom `CMAKE_FIND_LIBRARY_SUFFIXES`.
CYGWIN names its libraries with `.dll.a` or `.a`.
2026-03-16 11:19:48 -04:00
Brad King 0cbc778856 Merge topic 'ExternalProject-git-clone-retry'
0126cd7219 ExternalProject: Add options to configure git clone retries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11754
2026-03-16 09:38:29 -04:00
Arkadiusz Lachowicz 079c86e0a4 ExternalData: Add relocatable state metadata
Issue: #27689
2026-03-15 19:27:16 +01:00
Jérémie Dumas 0126cd7219 ExternalProject: Add options to configure git clone retries
Fixes: #24410
2026-03-15 09:06:47 -04:00
Brad King 68d5f981de Merge topic 'aix-export-nm'
3e99e8efb2 AIX: Teach ExportImportList to use toolchain-specific `nm`

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11777
2026-03-11 13:06:08 -04:00
Brad King 4b366900d4 Merge topic 'hip-debian-multiarch'
e8381e42ef CMakeDetermineHIPCompiler: fix missing multiarch search path

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11796
2026-03-10 10:02:00 -04:00
Talha Can Havadar e8381e42ef CMakeDetermineHIPCompiler: fix missing multiarch search path
In Debian/Ubuntu hip-lang-config.cmake is installed in multiarch path
and while searching for it we should have a proper fall back to systems
LIBRARY_ARCHITECTURE variable

MR in Debian: https://salsa.debian.org/cmake-team/cmake/-/merge_requests/15
Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/cmake/+bug/2143705
2026-03-10 09:56:42 -04:00
Aditya Vidyadhar Kamath 3e99e8efb2 AIX: Teach ExportImportList to use toolchain-specific nm
This is needed to handle LTO objects.

Fixes: #27655
2026-03-09 14:35:19 -04:00
Alex Turbov 1f939db3c4 CPack/RPM: Remove superfluous %clean section from generated spec file
According to [this] commit message in the `rpmlint` codebase,
a %clean section is not necessary since `rpm` 4.8.0 (2010)
and nowadays `rpmlint` at least issues a warning about it, and
(seems) in some distros it's even considered as an error.

[this]: https://github.com/rpm-software-management/rpmlint/commit/b1a8a422
2026-03-08 03:52:21 +04:00
Brad King 4bce86b20a Merge topic 'FindPNG-1.8'
20e8abca1a FindPNG: Add version 1.8

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11786
2026-03-07 09:13:11 -05:00
Brad King 20f59cc964 Merge topic 'FindPNG-1.8' into release-4.3
20e8abca1a FindPNG: Add version 1.8

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11786
2026-03-07 09:13:09 -05:00
Brad King 33477bdb74 Merge topic 'FindPython-mkl'
cf54a293ab FindPython: Fix finding NumPy with oneMKL 2026.0

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11781
2026-03-07 09:08:49 -05:00
nono303 20e8abca1a FindPNG: Add version 1.8
Fixes: #27676
2026-03-07 09:01:48 -05:00
Viraj Malia cf54a293ab FindPython: Fix finding NumPy with oneMKL 2026.0
Fix commit 516124ea23 (FindPython: fix regression of NumPy detection
with Intel MKL library, 2024-08-26, v3.30.3~4^2) to apply only on macOS.
It is not needed on other platforms, and oneMKL 2026.0 deprecates SSE4.2.
2026-03-06 14:14:21 -05:00
Brad King 116272e296 Merge topic 'use-triggers-instead-of-ldconfig-calls'
302a645d73 CPack/DEB: use `triggers` instead of legacy postXXX scripts for `ldconfig`
f461382d42 CPack/DEB: rename variable w/ result of `dpkg` find to match other vars
8a8bceda98 CPack/DEB: rename internal variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11779
2026-03-06 13:47:52 -05:00
Alex Turbov 302a645d73 CPack/DEB: use triggers instead of legacy postXXX scripts for ldconfig 2026-03-05 23:14:10 +04:00