Commit Graph

67096 Commits

Author SHA1 Message Date
Craig Scott
bb37d0e1a5 Help: Improve grammar and wording for cmake_parse_arguments 2024-08-31 18:10:32 +10:00
Brad King
1accfd94b5 Merge branch 'release-3.30' 2024-08-29 16:13:55 -04:00
Brad King
3cc9cb6ee2 CMake 3.30.3 v3.30.3 2024-08-29 15:37:11 -04:00
Brad King
1d8fafe06b Merge branch 'release-3.30' 2024-08-29 15:16:15 -04:00
Brad King
bb21e60dfb Merge branch 'release-3.29' 2024-08-29 15:16:05 -04:00
Brad King
998a34b103 Merge branch 'release-3.29' into release-3.30 2024-08-29 15:15:52 -04:00
Brad King
16fbb8c142 CMake 3.29.8 v3.29.8 2024-08-29 14:33:54 -04:00
Brad King
989d2aff39 Merge topic 'tasking-std-flags'
86bc2b000d Tasking: Fix C and C++ compiler extension mode flags

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9780
2024-08-29 08:36:09 -04:00
Brad King
e25f95c4cc Merge topic 'standard-link-directories'
20e9b59d5e Linking: Add CMAKE_LANG_STANDARD_LINK_DIRECTORIES

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9707
2024-08-29 08:31:17 -04:00
Brad King
a2c9e59436 Merge topic 'remove-vs12-generator'
241f923a6f Drop Visual Studio 12 2013 generator
7c1b671c3a Tests: Disable VSXaml test pending update to newer VS versions
9042aa1af5 Tests: Remove WinCE tests
810e33f67a Tests: Simplify tests for Visual Studio generators
1ad39a9cf8 UseSWIG: Simplify test for Visual Studio generators

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9782
2024-08-29 08:29:14 -04:00
Brad King
a23a15a375 Merge branch 'release-3.30' 2024-08-29 08:26:42 -04:00
Brad King
a69f063062 Merge topic 'project_ensure_non_cache_variables'
c1ece78d11 project: non cache <project> prefix variables are also created

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !9779
2024-08-29 08:26:42 -04:00
Brad King
90db124cdf Merge topic 'project_ensure_non_cache_variables' into release-3.30
c1ece78d11 project: non cache <project> prefix variables are also created

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !9779
2024-08-29 08:26:40 -04:00
Kitware Robot
c43b116fcf CMake Nightly Date Stamp 2024-08-29 00:01:12 -04:00
Vito Gamberini
20e9b59d5e Linking: Add CMAKE_LANG_STANDARD_LINK_DIRECTORIES
Closes: #18222
2024-08-28 15:54:43 -04:00
Brad King
241f923a6f Drop Visual Studio 12 2013 generator
This generator has been deprecated since CMake 3.28.  Remove it.
2024-08-28 14:13:05 -04:00
Brad King
7c1b671c3a Tests: Disable VSXaml test pending update to newer VS versions
It works only with the deprecated Visual Studio 12 2013 generator,
which is about to be removed.

Issue: #26248
2024-08-28 14:13:05 -04:00
Brad King
9042aa1af5 Tests: Remove WinCE tests
These work only with the deprecated Visual Studio 12 2013 generator,
which is about to be removed.
2024-08-28 14:13:05 -04:00
Brad King
810e33f67a Tests: Simplify tests for Visual Studio generators
Since commit 03c31b0395 (Drop Visual Studio 9 2008 generator,
2024-05-06, v3.30.0-rc1~134^2), some tests do not need to be
version-dependent.
2024-08-28 14:12:54 -04:00
Brad King
1ad39a9cf8 UseSWIG: Simplify test for Visual Studio generators
Since commit 03c31b0395 (Drop Visual Studio 9 2008 generator,
2024-05-06, v3.30.0-rc1~134^2), the test does not need to be
version-dependent.
2024-08-28 14:12:41 -04:00
Brad King
1d6535c881 Merge topic 'nullptr-comp'
58da4aa47d Source: Avoid comparing pointers to nullptr

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !9778
2024-08-28 10:08:11 -04:00
Brad King
7630fc9d2b Merge topic 'JSONHelpers-FilteredObject'
0c17cc9ef5 cmJSONHelpers.h: Add `FilteredObject` helper

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9751
2024-08-28 10:07:00 -04:00
Brad King
cb2467d69a Merge topic 'if-space-dldt'
2c0d16df7b Help/command/if: fix formatting in precedence order overview

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9777
2024-08-28 10:04:04 -04:00
Brad King
86bc2b000d Tasking: Fix C and C++ compiler extension mode flags
In commit 94df5b6ef1 (Tasking: Add support for several compiler
toolsets, 2022-07-20, v3.25.0-rc1~133^2) the extension mode flags were
added with an extra space-only argument.  Remove it.  Also fix the C++98
mode flag that looks like a C mode flag.

Fixes: #26244
2024-08-28 09:48:48 -04:00
Kitware Robot
9b421a5fa3 CMake Nightly Date Stamp 2024-08-28 00:01:56 -04:00
Robert Maynard
c1ece78d11 project: non cache <project> prefix variables are also created
Fixes #26243, #25714
2024-08-27 12:37:07 -04:00
Vitaly Stakhovsky
58da4aa47d Source: Avoid comparing pointers to nullptr 2024-08-27 10:56:38 -04:00
Brad King
72607d3402 Merge topic 'cps-export'
b2dc1bd149 CMake: Suppress IBM XL optimization warning
1a846c8849 Tests: Add tests for install(PACKAGE_INFO)
3d52d70b84 export: Add initial CPS support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9693
2024-08-27 09:43:51 -04:00
Brad King
ddf96016b2 Merge branch 'release-3.30' 2024-08-27 09:42:38 -04:00
Brad King
a818a9afd6 Merge topic 'FindPython-free-threaded-python'
10abd2ac5a FindPython: ensure a usable environment is set for the free threaded Python

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9775
2024-08-27 09:42:38 -04:00
Brad King
a0317334ae Merge topic 'FindPython-free-threaded-python' into release-3.30
10abd2ac5a FindPython: ensure a usable environment is set for the free threaded Python

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9775
2024-08-27 09:42:37 -04:00
Brad King
74c29b44a9 Merge topic 'doc-libfun'
7a39cfb012 Help Check{Function,Library}Exists refer to CheckSourceCompiles

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9773
2024-08-27 09:41:03 -04:00
Brad King
881e43411a Merge topic 'FindIconv-alpine'
c9f6369c76 FindIconv: Fix finding iconv.h on Alpine Linux

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9774
2024-08-27 09:39:58 -04:00
Brad King
1fdc367421 Merge topic 'doc-flag'
588bab15c4 Help Check*CompilerFlag harmonize text

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9772
2024-08-27 09:37:36 -04:00
Marc Chevrier
10abd2ac5a FindPython: ensure a usable environment is set for the free threaded Python
Define the `Python_DEFINITIONS` variable for the support of free
threaded Python developments on Windows.

This is a complement to commit 9a0dee7257 (FindPython: Add support for
free threaded python, 2024-05-30).
2024-08-27 09:27:35 -04:00
Brad King
e3f6b14fd0 Merge branch 'release-3.30' 2024-08-27 09:21:35 -04:00
Brad King
1c279c6263 Merge topic 'FindPython-numpy-mkl'
516124ea23 FindPython: fix regression of NumPy detection with Intel MKL library

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9776
2024-08-27 09:21:34 -04:00
Brad King
7400c1e9bb Merge topic 'FindPython-numpy-mkl' into release-3.30
516124ea23 FindPython: fix regression of NumPy detection with Intel MKL library

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9776
2024-08-27 09:21:32 -04:00
Aleksei Shpakovskii
2c0d16df7b Help/command/if: fix formatting in precedence order overview
Due to extra space symbols, it was rendered as definition list inside
list item, instead of plain list item.
2024-08-27 14:07:58 +02:00
Kitware Robot
cc02ac8314 CMake Nightly Date Stamp 2024-08-27 00:01:23 -04:00
scivision
7a39cfb012 Help Check{Function,Library}Exists refer to CheckSourceCompiles
help users be aware of more general/robust CheckSourceCompiles
2024-08-26 16:13:34 -04:00
Peter Kokot
c9f6369c76 FindIconv: Fix finding iconv.h on Alpine Linux
Alpine Linux has the `iconv.h` belonging to the builtin `iconv` library
provided by musl C library in the standard directory (`/usr/include`).
However, when installing the GNU libiconv APK package (`gnu-libiconv`),
the GNU `libiconv` library has header located in
`/usr/include/gnu-libiconv` subdirectory.  Fix finding the header
matching the `libiconv` library.

Issue: #24695
2024-08-26 11:02:55 -04:00
Alex Turbov
0c17cc9ef5 cmJSONHelpers.h: Add FilteredObject helper
Iterate over the object's members and call a filter callable to decide what
to do with the current key/value. A filter returns one of the `FilterResult`
values. A container type is an associative or a sequence container of pairs
(key, value).

Refactor `MapFilter()` and `Map()` to use `FilteredObject()`. Moreover,
for C++ >= 17 implementation is more optimized depending on the given filter
object type and capable of detecting and properly calling the filter callable
using 1 or 3 arguments, up to totally eliminate any checking (even dummy)
in the generated code.

Supported container types, used to append key/value items, aren't limited to
`std::map` only and can be any associative container or a sequenced one with
pairs of key/value as elements.
2024-08-26 19:01:48 +04:00
Even Rouault
516124ea23 FindPython: fix regression of NumPy detection with Intel MKL library
Fix commit df551ee538 (FindPython: fix NumPy detection when Intel MKL
library is installed, 2024-03-20, v3.30.0-rc1~361^2) by setting
`MKL_ENABLE_INSTRUCTIONS` to `SSE4_2`, but only if
`MKL_ENABLE_INSTRUCTIONS` is not set in the calling environment.

Fixes: #26240
2024-08-26 10:27:55 -04:00
Matthew Woehlke
b2dc1bd149 CMake: Suppress IBM XL optimization warning
`xlC` now warns "Additional optimization may be attained by recompiling
and specifying MAXMEM option" on `cmExportPackageInfoGenerator`.
Add the suggested option.
2024-08-26 10:03:41 -04:00
Brad King
cd4210eb6d Merge topic 'cmake_path-GET-STEM'
b0be1bd9ca cmake_path: Fix 'GET "foo/.." STEM' result

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !9765
2024-08-26 10:00:15 -04:00
FeRD (Frank Dana)
b0be1bd9ca cmake_path: Fix 'GET "foo/.." STEM' result
`cmake_path(GET "foo/.." STEM out)` is supposed to set `out` to `".."`,
the entire `cmake_path(GET "foo/.." FILENAME)` result.

However, the `GetNarrowStem()` logic in `cmCMakePath` was lacking
the `.` and `..` special-casing logic present in other methods.
As a result, it would erroneously trim the second `.` off of a stem
of `..` and return only `.`.

This caused the result of `cmake_path(GET "foo/.." STEM)` to be `"."`.

Making the standard empty-or-.-or-.. checks and bailing out early
fixes the result of `cmCMakePaths{".."}.GetNarrowStem()`.

Fixes: #26235
2024-08-26 09:55:57 -04:00
Brad King
d625e832ed Merge topic 'cmake-parse-arguments-one-arg-empty-string'
ceeea4e511 cmake_parse_arguments: Set variable if empty string given after keyword
2f5cc6afa1 cmParseArgumentsCommand: Use cmStrCat() for string concatenation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9748
2024-08-26 09:53:16 -04:00
Brad King
de05bc2f15 Merge topic 'improve-CMakeLibTests'
cc20644c71 testCommon.h: Introduce `ASSERT_EQUAL(actual, expected)` macro

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9752
2024-08-26 09:50:43 -04:00
Brad King
fe63f15383 Merge topic 'fileapi-config-dir'
1df94443fe fileapi: Add support for user-wide queries
a991a5019b Tests: Isolate test suite from user-wide configuration
320b81847d Tests: Remove unused cvs anonymous access credentials

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9744
2024-08-26 09:48:40 -04:00