Commit Graph

57713 Commits

Author SHA1 Message Date
Brad King 49996faaac ci: remove ISPC from the Fedora CI image
Revert commit 5ece12b7e4 (gitlab-ci: add ISPC to the Fedora CI image,
2020-08-18, v3.19.0-rc1~244^2).  Later we will download ISPC in specific
jobs.

Update a `RunCMake.NinjaMultiConfig` test expectation to account for
a change to the Qt deployed on Fedora 36.
2022-06-06 16:59:25 -04:00
Brad King 3e791592ad gitlab-ci: init macOS and Windows jobs with per-CMAKE_CONFIGURATION scripts
Apply the approach from commit 747940157f (gitlab-ci: init environment
with per-CMAKE_CONFIGURATION shell scripts, 2021-03-12,
v3.21.0-rc1~480^2~4) to macOS and Windows too.
2022-06-06 13:52:30 -04:00
Brad King ab1edff492 Merge topic 'if-command-PATH_EQUAL'
be4b9e10af if command: Add PATH_EQUAL operator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7321
2022-06-06 09:47:45 -04:00
Brad King 9fdade1d6b Merge topic 'c-no-extensions'
c7c3e39e4f Utilities: Activate POSIX APIs even without compiler extensions
3ba324b6b6 libarchive: Remove a system preprocessor macro that conflicts with a local var
4a283fcc31 librhash: Explicitly enable large file support on 32-bit targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7320
2022-06-06 09:46:34 -04:00
Craig Scott efe918fdba Merge topic 'doc-find_package-formatting'
afcf275cc9 Help: Fix formatting and missing cross-reference for find_package()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7329
2022-06-06 07:09:02 -04:00
Kitware Robot 817d88571a CMake Nightly Date Stamp 2022-06-06 00:02:17 -04:00
Craig Scott afcf275cc9 Help: Fix formatting and missing cross-reference for find_package()
Amends 42f7e39789 (Find: Support per call disabling of
CMAKE_INSTALL_PREFIX, 2022-03-21)
2022-06-05 17:55:50 +10:00
Kitware Robot 2a56c24039 CMake Nightly Date Stamp 2022-06-05 00:01:12 -04:00
Brad King c7c3e39e4f Utilities: Activate POSIX APIs even without compiler extensions
Compile some third-party libraries with preprocessor definitions that
activate POSIX APIs even when compiler extensions are not enabled.
We already do this in libuv, inherited from the upstream buildsystem.

This extends commit f034b0f663 (CMake compilation: do not use compiler
extensions, 2020-03-14, v3.18.0-rc1~494^2).

Issue: #20454
2022-06-04 09:08:27 -04:00
Brad King 3ba324b6b6 libarchive: Remove a system preprocessor macro that conflicts with a local var
On SunOS i386, the system headers sometimes define macro names
corresponding to register names, short and with no prefix.
Undefine one that conflicts with our code.
2022-06-04 08:15:20 -04:00
Brad King 4a283fcc31 librhash: Explicitly enable large file support on 32-bit targets
`_LARGEFILE_SOURCE` is needed at least on SunOS i386 if compiler
extensions are not enabled.
2022-06-04 08:15:20 -04:00
Brad King 007181a165 Merge topic 'update-kwsys'
1869f82823 Merge branch 'upstream-KWSys' into update-kwsys
6b88084658 KWSys 2022-06-03 (c28e27bc)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7322
2022-06-04 08:14:09 -04:00
Brad King d8e5d9240c Merge topic 'test-ExternalProject-fs-delay'
e46e4ee96a Tests: Fix RunCMake.ExternalProject filesystem delay for Borland Makefiles

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7323
2022-06-04 08:13:20 -04:00
Brad King 3b371e1dff Merge topic 'help-genex-updates'
6427902713 Help: genex: layout updates

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7324
2022-06-04 08:12:39 -04:00
Brad King c2b1534b77 Merge topic 'doc-add_custom_command-TARGET'
8cf8f4d13b Help: State behavior for add_custom_command(TARGET) without event type

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7326
2022-06-04 08:11:49 -04:00
Craig Scott 8cf8f4d13b Help: State behavior for add_custom_command(TARGET) without event type
Projects should always have specified one of PRE_BUILD, PRE_LINK or
POST_BUILD, and the documentation has always shown that one must
be given. But the argument parsing logic was such that if none was given,
POST_BUILD would be used and no error or warning would be raised.
Projects may be relying on this behavior, so document it as formally
supported, but not recommended.

Fixes: #23488
2022-06-04 18:35:37 +10:00
Kitware Robot cc2c5d4eb5 CMake Nightly Date Stamp 2022-06-04 00:01:09 -04:00
Marc Chevrier be4b9e10af if command: Add PATH_EQUAL operator 2022-06-03 19:31:36 +02:00
Marc Chevrier 6427902713 Help: genex: layout updates
* create section for version comparisons
* move $<LINK_LIBRARY> and $<LINK_GROUP> to "Output-Related Expressions" section
2022-06-03 16:56:58 +02:00
Brad King 0aa0b8e146 Merge branch 'release-3.23' 2022-06-03 09:46:18 -04:00
Brad King 0faf485de2 Merge topic 'ci-ninja-1.11.0'
62689fcf9c ci: update to use ninja 1.11.0

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7319
2022-06-03 09:46:18 -04:00
Brad King f02b6afdfa Merge topic 'ci-ninja-1.11.0' into release-3.23
62689fcf9c ci: update to use ninja 1.11.0

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7319
2022-06-03 09:46:17 -04:00
Brad King bf58164cac Merge topic 'genex-PATH_EQUAL'
4d1883df11 Genex-PATH_EQUAL: path comparison

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7309
2022-06-03 09:44:58 -04:00
Brad King 3715c154c8 Merge topic 'FindOpenSSL3_applink'
4a6caef9d5 FindOpenSSL: Set version variables for version >= 3.0.0

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7305
2022-06-03 09:43:53 -04:00
Brad King 16ad65c5a2 Merge topic 'envmod'
fcddb1cd5f FindEnvModules: BUGFIX: env_module_swap OUTPUT_VARIBLE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7315
2022-06-03 09:43:05 -04:00
Brad King ac2952792a Merge topic 'GNUInstallDirs-opt-homebrew'
8de3983b4c GNUInstallDirs: Do not treat /opt/homebrew as under /opt

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7318
2022-06-03 09:41:37 -04:00
Brad King 4efe43ea6f Merge topic 'FetchContent-CMP0135'
c2044fdf3f FetchContent: Respect the CMP0135 policy setting

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7316
2022-06-03 09:40:44 -04:00
Brad King e46e4ee96a Tests: Fix RunCMake.ExternalProject filesystem delay for Borland Makefiles
Our 1.125s delay does not seem to be long enough to be reliable with
the Borland "make" tool.  Use a longer delay for Borland and Watcom.

Follow the pattern from commit 67040500ea (Tests: Fix
RunCMake.BuildDepends filesystem delay for Borland Makefiles,
2015-09-25, v3.4.0-rc1~38^2).
2022-06-03 07:36:54 -04:00
Brad King 1869f82823 Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2022-06-03 (c28e27bc)
2022-06-03 06:47:55 -04:00
KWSys Upstream 6b88084658 KWSys 2022-06-03 (c28e27bc)
Code extracted from:

    https://gitlab.kitware.com/utils/kwsys.git

at commit c28e27bc4ad8e12d88b05f30eec19b2987c60721 (master).

Upstream Shortlog
-----------------

Brad King (3):
      591c4efb Activate POSIX APIs even without compiler extensions
      45f20b83 Fix XL/XLClang warning suppression under CMP0089 NEW behavior
      257b1111 Configure with policies through CMake 3.22
2022-06-03 06:47:55 -04:00
Kitware Robot c57688d9c1 CMake Nightly Date Stamp 2022-06-03 00:01:14 -04:00
Brad King 62689fcf9c ci: update to use ninja 1.11.0 2022-06-02 12:38:00 -04:00
James Calo 4a6caef9d5 FindOpenSSL: Set version variables for version >= 3.0.0
The variables `OPENSSL_VERSION_MAJOR`, `OPENSSL_VERSION_MINOR` and
`OPENSSL_VERSION_FIX` are now set to the correct values when using
OpenSSL version >= 3.0.0, which uses a new format.
2022-06-02 11:14:45 -04:00
Brad King 8de3983b4c GNUInstallDirs: Do not treat /opt/homebrew as under /opt
Fixes: #23579
2022-06-02 10:04:35 -04:00
Brad King e6c4af4293 Merge topic 'doc-RULE_LAUNCH_COMPILE'
e281ba27b7 Help: Clarify that RULE_LAUNCH_COMPILE is meant for internal use

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7317
2022-06-02 09:33:25 -04:00
Brad King 6e28726122 Merge topic 'doc-preset-versionadded'
5a9c7f76c0 Help: Document CMake version adding each preset version in cmake-presets(7)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7313
2022-06-02 09:29:29 -04:00
Brad King 23ad3de468 Merge topic 'ci-release-artifacts'
6cef17bc6e gitlab-ci: name artifacts produced by release package jobs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7312
2022-06-02 09:26:24 -04:00
Brad King 2e82b98de6 Merge topic 'ci-win-package'
0b953d01a6 Utilities/Release: Drop docker specs for Windows binaries
230eaa1d55 Utilities/Release: Document Linux aarch64 packaging support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7311
2022-06-02 09:25:09 -04:00
Brad King 6f72a41de0 Merge topic 'automoc-silence-ranlib-warning'
4a9daae483 automoc: silence linker warning on macos

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7296
2022-06-02 09:23:10 -04:00
Brad King 6b2a060759 Merge branch 'release-3.23' 2022-06-02 09:21:06 -04:00
Brad King dbb6e04b5f Merge topic 'tutorial-cmath'
5c84eca210 Tutorial: Simplify logic checking for cmath functions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7314
2022-06-02 09:21:06 -04:00
Brad King 84fe677eae Merge topic 'tutorial-cmath' into release-3.23
5c84eca210 Tutorial: Simplify logic checking for cmath functions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7314
2022-06-02 09:21:05 -04:00
Craig Scott e281ba27b7 Help: Clarify that RULE_LAUNCH_COMPILE is meant for internal use
Fixes: #22405
2022-06-02 22:18:17 +10:00
Kitware Robot 4c9aa6c425 CMake Nightly Date Stamp 2022-06-02 00:01:08 -04:00
Craig Scott c2044fdf3f FetchContent: Respect the CMP0135 policy setting
Fixes: #23560
2022-06-02 11:10:27 +10:00
Michael Hirsch fcddb1cd5f FindEnvModules: BUGFIX: env_module_swap OUTPUT_VARIBLE
Since originally added to CMake, env_module_swap(OUTPUT_VARIABLE)
did not give output since the incorrect variable name was used.
2022-06-01 16:50:44 -04:00
Brad King 5c84eca210 Tutorial: Simplify logic checking for cmath functions
Since commit 07223c5c27 (Tutorial: Update Step 5 to work on Windows,
2020-02-18, v3.18.0-rc1~655^2) the logic does not work on non-Windows
platforms when cmake is re-run on an existing build tree.  It is also
more complicated than we'd like for a tutorial example.  Avoid the need
to consider the `m` library case by performing the check as C++.

Since `check_cxx_symbol_exists` cannot handle overloaded functions
like `exp` and `log`, check with `check_cxx_source_compiles` instead.
This also presents a more general-purpose example in the tutorial.

Fixes: #23524
2022-06-01 13:57:47 -04:00
Brad King 5a9c7f76c0 Help: Document CMake version adding each preset version in cmake-presets(7)
Fixes: #23485
2022-06-01 13:16:48 -04:00
Brad King 0b953d01a6 Utilities/Release: Drop docker specs for Windows binaries
Since commit 4c7c66dcf5 (gitlab-ci: Add jobs to make Windows x86_64 and
i386 packages, 2022-05-19), we use CI jobs to produce Windows binaries.
Revert commit ff929badb3 (Utilities/Release: Add docker specs to
build and test Windows binaries, 2020-05-05, v3.18.0-rc1~203^2~1).
The filesystem inside Windows containers is too slow to support
parallel builds efficiently.
2022-06-01 12:43:22 -04:00
Brad King 230eaa1d55 Utilities/Release: Document Linux aarch64 packaging support
This was accidentally left out of commit e14fb01c41 (Utilities/Release:
Add docker specs for Linux aarch64 binaries, 2020-11-25, v3.19.3~8^2~2).
2022-06-01 12:39:35 -04:00