Commit Graph

3481 Commits

Author SHA1 Message Date
Brad King bd16a985fc CompilerId/Features: Tolerate variables named for languages
If a `CMakeLists.txt` or `CMAKE_TOOLCHAIN_FILE` sets a variable named
`C`, `CXX`, or `CUDA`, we were previously comparing each enabled
language name to the value of that variable, rather than the name
itself.  Double-quote the string to take advantage of policy `CMP0054`,
but also add "x" prefixes to support projects that do not set the
policy.

Fixes: #22125
2021-05-03 10:22:23 -04:00
Zack Galbreath 63b5ddcce2 Tests: Add cases for CTest extra measurements from tests 2021-04-27 14:06:44 -04:00
Brad King 970f175d88 Merge topic 'ctest_junit'
25bf514447 ctest: Add support for writing test results in JUnit XML format

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Zack Galbreath <zack.galbreath@kitware.com>
Acked-by: Michael Hirsch <michael@scivision.dev>
Acked-by: MvdHurk <maikelvandenhurk@hotmail.com>
Acked-by: Alexander Richardson <arichardson.kde@gmail.com>
Merge-request: !6020
2021-04-27 13:53:55 -04:00
Orgad Shaneh ddcd1469e8 MSYS: Add support for running under MSYS runtime environment
Detect MSYS as CYGWIN, with the required adaptations.
2021-04-26 14:27:34 -04:00
Brad King 395e1d458e Merge topic 'xcode_app_extensions'
eb5e33ba47 Xcode: Add support for embedding app extensions
f62a2bf44f Tests: Factor out XcodeProject-Embed check function findAttribute()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5934
2021-04-26 11:34:38 -04:00
Brad King 3c1655936f Merge topic 'lzma-threads'
c5c130e675 cmArchiveWrite: Consolidate multiple ways to set thread count
5380d858ff liblzma: Enable multi threaded stream encoding support
e9065e96dc Merge branch 'upstream-liblzma' into lzma-threads
ee909a8e8b liblzma 2020-03-17 (2327a461)
741b85b42b liblzma: Revise update script to get version 5.2.5

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6014
2021-04-26 11:33:49 -04:00
Brad King 6aabf2790c Merge topic 'file-REAL_PATH-EXPAND_TILDE'
e4b793c614 file(REAL_PATH): add option EXPAND_TILDE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Michael Hirsch <michael@scivision.dev>
Merge-request: !6033
2021-04-26 11:30:57 -04:00
Brad King fcafd30a5e Merge topic 'ninja-multi-custom-target-post-build'
f8e2a74712 Ninja Multi-Config: Correctly generate POST_BUILD custom targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6040
2021-04-26 11:25:46 -04:00
Zack Galbreath 25bf514447 ctest: Add support for writing test results in JUnit XML format
Addresses #18654
2021-04-26 08:55:22 -04:00
Kyle Edwards f8e2a74712 Ninja Multi-Config: Correctly generate POST_BUILD custom targets
Fixes: #22096
2021-04-22 15:51:53 -04:00
Nils Gladitz c5c130e675 cmArchiveWrite: Consolidate multiple ways to set thread count
Merge use of SetFilterOption() into more abstract thread count
in cmArchiveWrite constructor.

libarchive defaulting of threads for threads == 0 seems to be
configuration dependent. Preemptively default thread count via
std::thread::hardware_concurrency().

Also allow negative values for the thread count in which case
the detected hardware concurrency is also used but the given
absolute thread count is used as an upper limit.
2021-04-22 15:40:13 -04:00
Brad King c54c284de7 Tests: Improve RunCMake.CPack* test error formatting
Format message content for `message(FATAL_ERROR)`.
2021-04-22 13:54:56 -04:00
Alexander Akhundzhanov eb5e33ba47 Xcode: Add support for embedding app extensions
Co-Authored-By: Craig Scott <craig.scott@crascit.com>
2021-04-22 15:17:02 +10:00
Marc Chevrier e4b793c614 file(REAL_PATH): add option EXPAND_TILDE
This option enables the replacement of any leading tilde with the path
to the user's home directory.
2021-04-22 08:08:47 +10:00
Brad King 5a8b37e53b Merge topic 'autogen-clear-early-source-cache'
b84f1e6159 Autogen: Restore mocs_compilation in OBJECT libraries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6024
2021-04-21 10:42:17 -04:00
Brad King b84f1e6159 Autogen: Restore mocs_compilation in OBJECT libraries
Since commit f65f20938c (Autogen: Avoid processing CSharp targets,
2020-11-12, v3.20.0-rc1~301^2) we collect all sources for a target
earlier than previously.  Clear the sources cache so that it will be
re-computed later after AUTOGEN processing.

Fixes: #22085
2021-04-20 16:04:08 -04:00
Brad King 4c0d69e813 Merge topic 'Xcode-add_custom_command-DEPFILE'
253aff6c94 Xcode: Add support of DEPFILE for add_custom_command, part 2

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6015
2021-04-20 09:59:53 -04:00
Brad King 5ac713da70 Merge topic 'mrjoel/add-missing-not'
370bebd921 Add missing 'not' in error messages

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6012
2021-04-19 09:44:03 -04:00
Marc Chevrier 253aff6c94 Xcode: Add support of DEPFILE for add_custom_command, part 2
This MR extend the support of 'DEPFILE' to buildsystem version 1.

Issue: #20286
2021-04-17 11:05:26 +02:00
Brad King acace43852 Merge topic 'Xcode-add_custom_command-DEPFILE'
d67cc4882d Xcode: Add support of DEPFILE for add_custom_command

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6006
2021-04-16 11:42:23 -04:00
Brad King bb290fc7a4 Merge topic 'add_toolchain_cmake_option'
d5c3e4ac32 cmake: add support for --toolchain command argument
13838bbb36 CMAKE_TOOLCHAIN_FILE: Document relative path behavior

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5991
2021-04-16 11:39:28 -04:00
Joel Johnson 370bebd921 Add missing 'not' in error messages 2021-04-16 07:47:59 -06:00
Marc Chevrier d67cc4882d Xcode: Add support of DEPFILE for add_custom_command
Issue: #20286
2021-04-15 12:17:31 -04:00
Robert Maynard d5c3e4ac32 cmake: add support for --toolchain command argument 2021-04-15 10:13:49 -04:00
Marc Chevrier 0c47b91fcc Genex: add_custom_command: DEPFILE supports genex
This facility is very useful for 'Ninja Multi-Config' and required
as well for future support of DEPFILE in 'Xcode' and 'Visual Studio'
generators (#20286).
2021-04-12 13:06:49 +02:00
Craig Scott f62a2bf44f Tests: Factor out XcodeProject-Embed check function findAttribute() 2021-04-11 18:06:16 +10:00
Brad King 21f0478ade Merge topic 'presets-optional-generator-and-builddir'
06e6981336 cmake-presets: Make generator and binaryDir fields optional

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5946
2021-04-08 07:49:56 -04:00
Brad King a0e5998bd6 Merge topic 'ctest-wait-verbosity'
82e40607a4 ctest: Display test "WAITING" messages only in extra-verbose mode
80da23f2a2 Tests: Add RunCTest helper option to control CTest verbose flag

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !5990
2021-04-08 07:49:05 -04:00
Brad King f39ea2e292 Merge topic 'flags-with-backslash'
3953dfcb31 Restore support for backslashes in initial language-wide flags

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5995
2021-04-08 07:47:09 -04:00
Brad King 3953dfcb31 Restore support for backslashes in initial language-wide flags
Refactoring in commit bdc40742bd (CMakeDetermineCompilerId: Test without
COMPILER_ID_FLAGS if REQUIRE_SUCCESS, 2021-02-27, v3.20.0-rc3~6^2) added
an extra macro layer through which flag strings are passed.  That caused
an extra level of argument re-parsing, and broke flags with backslashes.
Pass flags to the helper macro through variable names instead.

Fixes: #22041
2021-04-07 13:53:22 -04:00
friendlyanon 06e6981336 cmake-presets: Make generator and binaryDir fields optional
In v3 of the presets, generator and buildDir can be omitted to fall
back to regular cmake behavior when these values are not explicitly
provided by the user.

Fixes: #21987
2021-04-07 01:24:44 +02:00
Brad King 82e40607a4 ctest: Display test "WAITING" messages only in extra-verbose mode
These messages are incidental scheduling output.  Avoid cluttering
the normal verbose output showing tests starting and finishing.
2021-04-06 14:48:14 -04:00
Brad King 80da23f2a2 Tests: Add RunCTest helper option to control CTest verbose flag 2021-04-06 12:42:41 -04:00
Brad King 2d7e20dbbd Merge topic 'rel-file-table'
e17006c497 Utilities/Release: Add deprecation fields to File Table v1
89ab613248 Utilities/Release: Update file table for 3.20.0
c5777e5421 Merge branch 'backport-3.19-rel-file-table' into rel-file-table
f9f59fb0b2 Merge branch 'release-3.19' into backport-3.19-rel-file-table
30959aec8f Utilities/Release: Update file table for 3.19.3
d206c8f1ec Merge tag 'v3.19.3' into backport-3.19-rel-file-table
004dbbaddd Utilities/Release: Update file table for 3.19.2
1e3301a28c Merge tag 'v3.19.2' into backport-3.19-rel-file-table
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Reviewed-by: Craig Scott <craig.scott@crascit.com>
Merge-request: !5961
2021-04-06 08:44:54 -04:00
Brad King 2e029ec598 Merge topic 'rel-file-table' into release-3.20
e17006c497 Utilities/Release: Add deprecation fields to File Table v1
89ab613248 Utilities/Release: Update file table for 3.20.0
c5777e5421 Merge branch 'backport-3.19-rel-file-table' into rel-file-table
f9f59fb0b2 Merge branch 'release-3.19' into backport-3.19-rel-file-table
30959aec8f Utilities/Release: Update file table for 3.19.3
d206c8f1ec Merge tag 'v3.19.3' into backport-3.19-rel-file-table
004dbbaddd Utilities/Release: Update file table for 3.19.2
1e3301a28c Merge tag 'v3.19.2' into backport-3.19-rel-file-table
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Reviewed-by: Craig Scott <craig.scott@crascit.com>
Merge-request: !5961
2021-04-06 08:44:53 -04:00
Brad King e061a201b6 Merge topic 'nvhpc-lib-arch' into release-3.20
764606e256 CMakeDetermineCompilerABI: Extract lib arch from implicit object file paths
5d44d73bbe CMakeDetermineCompilerABI: Revert "Parse library arch from versioned paths"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5984
2021-04-06 08:32:34 -04:00
Brad King ebc812a8d1 Merge topic 'nvhpc-lib-arch'
764606e256 CMakeDetermineCompilerABI: Extract lib arch from implicit object file paths
5d44d73bbe CMakeDetermineCompilerABI: Revert "Parse library arch from versioned paths"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5984
2021-04-06 08:32:34 -04:00
Robert Maynard 764606e256 CMakeDetermineCompilerABI: Extract lib arch from implicit object file paths
The NVHPC compiler does not have any implicit link directories that can
be used to detect `CMAKE_LIBRARY_ARCHITECTURE`, but it does have
implicit object files.  Extract implicit object file paths from link
lines and check them for the `CMAKE_LIBRARY_ARCHITECTURE` pattern.

Issue: #22024
2021-04-05 17:41:10 -04:00
Robert Maynard 5d44d73bbe CMakeDetermineCompilerABI: Revert "Parse library arch from versioned paths"
The change in commit 657fc3a9a7 (CMakeDetermineCompilerABI: Parse
library arch from versioned paths, 2021-02-03, v3.20.0-rc1~40^2) caused
`CMAKE_LIBRARY_ARCHITECTURE` to be populated on non-multiarch platforms
if their compilers happen to use `$arch/$version` library directories.
Revert the use of versioned library paths.

Fixes: #22024
2021-04-05 16:40:43 -04:00
Brad King 89ab613248 Utilities/Release: Update file table for 3.20.0 2021-04-05 13:47:02 -04:00
Brad King c5777e5421 Merge branch 'backport-3.19-rel-file-table' into rel-file-table 2021-04-05 13:46:35 -04:00
Brad King f9f59fb0b2 Merge branch 'release-3.19' into backport-3.19-rel-file-table 2021-04-05 13:45:08 -04:00
Brad King 30959aec8f Utilities/Release: Update file table for 3.19.3 2021-04-05 13:45:00 -04:00
Brad King d206c8f1ec Merge tag 'v3.19.3' into backport-3.19-rel-file-table 2021-04-05 13:44:49 -04:00
Brad King 004dbbaddd Utilities/Release: Update file table for 3.19.2 2021-04-05 13:44:42 -04:00
Brad King 1e3301a28c Merge tag 'v3.19.2' into backport-3.19-rel-file-table 2021-04-05 13:44:36 -04:00
Brad King 383bfbe76f Merge branch 'backport-3.18-rel-file-table' into backport-3.19-rel-file-table 2021-04-05 13:44:27 -04:00
Brad King 0237eba318 Utilities/Release: Add script to generate a table of files
Fixes: #22002
2021-04-05 13:43:51 -04:00
Domen Vrankar 34c8a23044 CPackRPM: add scriplets tags only if scripts exist
Scriplet tags should not be added to generated
spec files if scripts weren't provided as those
tags are otherwise present in generated rpm file
even if the script wasn't provided thereby
generating unneeded dependency on shell.

Fixes: #21345
2021-04-01 22:28:24 +02:00
Brad King 0fee2adf8c Merge topic 'fujitsu-compiler-4.0-support'
8ef55dec29 Help: Add release notes for Fujitsu compiler support
4c74c86f40 FindBLAS/LAPACK: Add support for the Fujitsu SSL2 library
376c300b25 FindOpenMP: Add support for Fujitsu compilers
9e0a1cf03e FindMPI: Add support for the Fujitsu compiler wrappers
a237450948 Tests: Update for the FujitsuClang compiler
27579e9cf1 FujitsuClang: Add support for the Fujitsu compiler in Clang mode
a55feff69c Tests: Update for the Fujitsu compiler
3c867cff4a Fujitsu: Add support for the Fujitsu compiler in Trad mode

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Axel Huebl <axel.huebl@plasma.ninja>
Acked-by: Gilles Gouaillardet <gilles@rist.or.jp>
Merge-request: !5954
2021-04-01 10:26:54 -04:00