Commit Graph

51994 Commits

Author SHA1 Message Date
Brad King
c141a8be9e Merge topic 'ci-build-no-doc' into release-3.20
9b5eae9cde gitlab-ci: remove redundant sphinx build from release-style CI jobs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !5905
2021-03-12 13:27:09 -05:00
Brad King
9b5eae9cde gitlab-ci: remove redundant sphinx build from release-style CI jobs
The Sphinx build is mostly serial and takes a long time.  All our CI
pipelines (packaging, integration branches, merge requests) have a
dedicated job for the Sphinx build.
2021-03-12 13:05:55 -05:00
Brad King
c69d4b177f CMake 3.20.0-rc4 v3.20.0-rc4 2021-03-11 09:23:18 -05:00
Brad King
8b82b70292 Merge branch 'release-3.19' into release-3.20 2021-03-11 08:30:33 -05:00
Brad King
4606082742 Merge topic 'xcode-framework-quoting' into release-3.20
4f9a71974e Xcode: Restore support for spaces in framework names

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5899
2021-03-11 08:10:42 -05:00
Brad King
f59a3e2148 Merge topic 'cray-compiler-wrapper-detection' into release-3.20
13144e82cd Cray: Enable Cray compiler wrapper detection on all platforms

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5897
2021-03-11 08:09:32 -05:00
Brad King
acdbf64047 Merge branch 'cray-compiler-wrapper-detection' into release-3.19
Merge-request: !5897
2021-03-10 12:13:52 -05:00
Justin LaPolla
13144e82cd Cray: Enable Cray compiler wrapper detection on all platforms
Previously were checking for the `__CRAYXC` and `__CRAYXE` predefined
macros.  These macros reflect the platform that the compiler wrapper is
running on, i.e. Cray XC and Cray XE machines.  They are not defined on
other platforms such as Apollo80.

Switch to the `__CRAYXT_COMPUTE_LINUX_TARGET` macro. The Cray cc/CC/ftn
wrappers always define this macro on the command line. This macro has
been in use for many years, and is believed to be a reliable way to
detect current and older Cray compiler wrappers.

Fixes: #21904
2021-03-10 12:13:17 -05:00
Brad King
ccfa0852c0 Merge topic 'ep-fc-revert-refactoring' into release-3.20
57d442e182 Revert ExternalProject and FetchContent refactoring

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5898
2021-03-10 11:37:15 -05:00
Brad King
845c8c72de Merge topic 'FindMatlab-MCR-vars' into release-3.20
5ba1f4b6ee FindMatlab: Fix Matlab_LIBRARIES for MCR

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5896
2021-03-10 11:36:28 -05:00
Brad King
f99ff2beb9 Merge branch 'backport-xcode-framework-quoting' into release-3.19
Merge-request: !5899
2021-03-10 11:28:40 -05:00
Brad King
4f9a71974e Xcode: Restore support for spaces in framework names
In commit ce2dee9e5b (Xcode: Don't add framework as -framework argument
in linker info list, 2020-09-28, v3.19.0-rc1~47^2) we split up the path
to a framework into the directory and framework name parts, but only
retained the quoting on the directory part.  Restore quoting of the
framework name.

Fixes: #21910
2021-03-10 10:01:11 -05:00
Craig Scott
57d442e182 Revert ExternalProject and FetchContent refactoring
Refactoring of the ExternalProject and FetchContent modules moved
the commands into CMake scripts. This broke custom commands that
used shell redirection or special build tool variables of the form
$(MakeVar). Undo the sequence of commits that performed this
refactoring and follow-up fixes associated with it.

The following commits are reverted by this change:

4f3d1abbb4 (ExternalProject: Refactor pre-configure steps to support
no-target uses, 2021-02-05)

17e5516e60 (FetchContent: Invoke steps directly and avoid a separate
sub-build, 2021-01-29)

bd876f3849 (FetchContent: Restore patch command support,
2021-02-18)

404cddb7bb (ExternalProject: Fix misuse of IS_NEWER_THAN in
timestamp checks, 2021-02-21)

b0da671243 (FetchContent: Don't update timestamps if files don't
change, 2021-02-18)

Fixes: #21892
2021-03-10 09:07:44 +11:00
Silvio Traversaro
5ba1f4b6ee FindMatlab: Fix Matlab_LIBRARIES for MCR
In commit bda5e2ac8f (FindMatlab: Only include engine and dataarray
libraries if they are found, 2020-12-11, v3.20.0-rc1~297^2~1) we fixed
the imported target to contain optional libraries only if they are
found.  Do the same for `Matlab_LIBRARIES`.
2021-03-09 12:56:08 -05:00
Brad King
791338359f Merge branch 'release-3.19' into release-3.20 2021-03-09 09:16:21 -05:00
Brad King
22909e0def Merge topic 'CrayPrgEnv-detection' into release-3.20
23b101de60 Revert "Cray: Fix Cray compiler detection on new platforms"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5889
2021-03-09 09:15:43 -05:00
Brad King
155ec56c9f Merge topic 'cray-fortran' into release-3.20
ef513fe3d1 Cray: Enable explicit Fortran preprocessing for Ninja generator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5882
2021-03-08 13:07:20 -05:00
Brad King
214a06ec2e Merge branch 'CrayPrgEnv-detection' into release-3.19
Merge-request: !5889
2021-03-08 12:36:00 -05:00
Brad King
23b101de60 Revert "Cray: Fix Cray compiler detection on new platforms"
The justification in commit 9ee4a42813 (Cray: Fix Cray compiler
detection on new platforms, 2020-12-01, v3.19.2~26^2) confuses detection
of the CrayPrgEnv with identification of the Cray compiler.  The
change regressed detection of the CrayPrgEnv on non-Cray compilers.
Revert it pending further investigation into the original problem.

Fixes: #21894
2021-03-08 12:28:36 -05:00
Brad King
412479b9d8 Merge topic 'cmake-gui-search-case' into release-3.20
9ec50ff157 cmake-gui: Restore search bar case insensitivity

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5878
2021-03-05 08:25:29 -05:00
Brad King
ef513fe3d1 Cray: Enable explicit Fortran preprocessing for Ninja generator
Cray 11.0 adds support for preprocessing with output written to a
specified file (instead of always next to the source).  Use it to
enable Cray Fortran with the Ninja generator.

Patch-by: James Elliott
Fixes: #20731
2021-03-05 08:11:05 -05:00
Brad King
9ec50ff157 cmake-gui: Restore search bar case insensitivity
Since these changes:

* commit f1de6f6682 (cmake-gui: Support building against Qt6,
                     2020-12-17, v3.20.0-rc1~205^2~7)
* commit 134d69121e (cmake-gui: Restore search bar for cache view and
                     environment dialog, 2021-02-22, v3.20.0-rc2~12^2)

the search bar is no longer case insensitive when using Qt 5.12.[0-1],
and possibly some later versions.  It works as of Qt 5.15 though, so
update our version check accordingly.

Fixes: #21884
2021-03-04 11:25:54 -05:00
Brad King
12a139f2b6 CMake 3.20.0-rc3 v3.20.0-rc3 2021-03-03 11:43:22 -05:00
Brad King
ef3d1ebda8 Merge topic 'android-r22' into release-3.20
005e2cdfb0 Android: Do not use gold for ndk >= r22
ed7a87f270 Tests: Update RunCMake.Android for NDK r22
4950d35733 Help: Document CMAKE_ANDROID_NDK_VERSION variable
746906242d Android: Detect NDK version number

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5862
2021-03-03 11:11:58 -05:00
Haibo Huang
005e2cdfb0 Android: Do not use gold for ndk >= r22
Fixes: #21772
2021-03-03 10:28:56 -05:00
Brad King
ed7a87f270 Tests: Update RunCMake.Android for NDK r22
Use `CMAKE_ANDROID_NDK_VERSION` to check for files expected based
on the version of the NDK.
2021-03-03 10:27:50 -05:00
Brad King
4950d35733 Help: Document CMAKE_ANDROID_NDK_VERSION variable 2021-03-03 10:27:50 -05:00
Haibo Huang
746906242d Android: Detect NDK version number
Report it in `CMAKE_ANDROID_NDK_VERSION`.
2021-03-03 10:26:36 -05:00
Brad King
97944e01b0 Merge topic 'ci-nightly-ide-jobs' into release-3.20
e5698605d7 gitlab-ci: ignore failing tests for external IDE testing
beb130c65d gitlab-ci: allow some jobs to ignore failing tests on nightly runs
18d6737e96 gitlab-ci: always upload test and release artifacts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5871
2021-03-03 09:04:31 -05:00
Brad King
d6670c5d1c Merge topic 'compilerid_require_success' into release-3.20
1bd8f19453 CMakeDetermineCompilerId: Fix REQUIRE_SUCCESS with multiple user flags

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5874
2021-03-03 09:03:34 -05:00
Raul Tambre
1bd8f19453 CMakeDetermineCompilerId: Fix REQUIRE_SUCCESS with multiple user flags
Need to quote the list expansion otherwise we'll try each argument separately.
2021-03-02 16:20:45 +02:00
Brad King
b212fba208 Merge topic 'FindOpenGL-GLX-no-GLVND' into release-3.20
fb4b2ed0d3 FindOpenGL: handle GLX without GLVND

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5861
2021-03-02 08:45:59 -05:00
Brad King
f95796642b Merge topic 'more-import-export-guide-updates' into release-3.20
74c2ade187 Help/guide: fix the remaining CMake install destinations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5870
2021-03-02 08:45:14 -05:00
Ben Boeckel
e5698605d7 gitlab-ci: ignore failing tests for external IDE testing 2021-03-01 16:06:22 -05:00
Ben Boeckel
beb130c65d gitlab-ci: allow some jobs to ignore failing tests on nightly runs 2021-03-01 15:51:27 -05:00
Ben Boeckel
18d6737e96 gitlab-ci: always upload test and release artifacts 2021-03-01 15:51:07 -05:00
Brad King
c829b6179c Merge topic 'compilerid_require_success' into release-3.20
bdc40742bd CMakeDetermineCompilerId: Test without COMPILER_ID_FLAGS if REQUIRE_SUCCESS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5863
2021-03-01 14:56:30 -05:00
Ben Boeckel
74c2ade187 Help/guide: fix the remaining CMake install destinations
Followup from !5674.
2021-03-01 11:05:14 -05:00
Raul Tambre
bdc40742bd CMakeDetermineCompilerId: Test without COMPILER_ID_FLAGS if REQUIRE_SUCCESS
If we REQUIRE_SUCCESS, i.e. TEST_FLAGS_FIRST must work, we need to also try
without user flags.

Fixes #21869.
2021-02-27 14:25:26 +02:00
Ben Boeckel
fb4b2ed0d3 FindOpenGL: handle GLX without GLVND
On Ubuntu, installing `libgl-dev` provides `libGL` and `libGLX`, but no
`libOpenGL`. Avoid defining GLVND targets without the `OpenGL::OpenGL`
target.
2021-02-26 15:36:55 -05:00
Brad King
e53a73c6c9 Merge topic 'ci-xcode-12.4' into release-3.20
85ef0a84a0 gitlab-ci: update macOS jobs to use Xcode 12.4

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5858
2021-02-25 10:52:35 -05:00
Brad King
85ef0a84a0 gitlab-ci: update macOS jobs to use Xcode 12.4 2021-02-25 09:09:12 -05:00
Brad King
60280f0d99 Merge topic 'nvhpc-minor-fixes' into release-3.20
72efd95add PGI: Explicitly specify CMAKE_CXX98_STANDARD_COMPILE_OPTION
6bfb2c6175 HELP: Update compile-features documentation with missing compilers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5857
2021-02-25 09:02:02 -05:00
Robert Maynard
72efd95add PGI: Explicitly specify CMAKE_CXX98_STANDARD_COMPILE_OPTION
The PGI ( and NVIDIA HPC ) compilers default C++ standard level
are based on the GCC system headers it is compiling against.

Therefore on newer platforms the default C++ level will be >= 11
and requesting C++98 compilation mode will fail as no explicit
flag will be set.
2021-02-24 13:47:03 -05:00
Robert Maynard
6bfb2c6175 HELP: Update compile-features documentation with missing compilers 2021-02-24 13:09:59 -05:00
Brad King
498b7da2e4 CMake 3.20.0-rc2 v3.20.0-rc2 2021-02-24 11:21:15 -05:00
Brad King
ee17a15148 Merge branch 'release-3.19' into release-3.20 2021-02-24 10:58:14 -05:00
Brad King
0ecd9de6dd CMake 3.19.6 v3.19.6 2021-02-24 10:08:43 -05:00
Brad King
a70f8770f2 Merge topic 'better_cuda_compiler_detection_error_messages' into release-3.20
a0fc64ac24 CUDA: Improve error messages when CUDA compiler detection fails

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Merge-request: !5844
2021-02-24 09:47:39 -05:00
Brad King
e95f7aa0ed Merge topic 'preset-flag-consistency' into release-3.20
6fa3647023 ctest: Add support for '--prefix=<prefix>' form of the argument
3357d37761 cmake: Add support for '--build --prefix=<prefix>' form of the argument
2f13fdef0a cmake: Document '--preset <preset>' form of the argument

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5849
2021-02-24 09:46:52 -05:00