Commit Graph

55451 Commits

Author SHA1 Message Date
Brad King 19d6125047 Merge branch 'release-3.21' 2021-11-18 09:00:36 -05:00
Brad King db39bd2322 Merge branch 'release-3.20' 2021-11-18 09:00:34 -05:00
Brad King a5eed9e5e0 Merge branch 'release-3.21' into release-3.22 2021-11-18 09:00:25 -05:00
Brad King c468f983c0 Merge branch 'release-3.20' into release-3.21 2021-11-18 09:00:15 -05:00
Brad King e8226516b6 Merge branch 'release-3.22' 2021-11-18 08:59:18 -05:00
Brad King e585dcedea Merge topic 'IntelLLVM-Fortran-copy-mod'
209b896f2c IntelLLVM: Enable Fortran module rebuild avoidance in Makefile generators

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6740
2021-11-18 08:59:18 -05:00
Brad King cb39d50e21 Merge topic 'IntelLLVM-Fortran-copy-mod' into release-3.22
209b896f2c IntelLLVM: Enable Fortran module rebuild avoidance in Makefile generators

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6740
2021-11-18 08:59:17 -05:00
Brad King dd37f0004a Merge branch 'release-3.22' 2021-11-18 08:57:27 -05:00
Brad King df978b0358 Merge topic 'backport-libuv-mingw-w64'
acc14edd70 libuv: Backport MinGW-w64 compilation fix to CMake 3.22 branch

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6735
2021-11-18 08:57:27 -05:00
Brad King e64a0b6c3d Merge topic 'backport-libuv-mingw-w64' into release-3.22
acc14edd70 libuv: Backport MinGW-w64 compilation fix to CMake 3.22 branch

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6735
2021-11-18 08:57:26 -05:00
Brad King 68d0e27570 Merge topic 'update-libuv'
51d26933fe libuv: Fix clang-analyzer deadcode.DeadStores warning on Linux
f29bb586f0 libuv: Convert C++-style comment to C-style
8e7bb62bd5 libuv: Update CMake-internal buildsystem
0decc36fb1 libuv: Update uv__fs_copy_file_range signature in cmake-bootstrap.c
74a05716a4 Merge branch 'upstream-libuv' into update-libuv
27e34e6190 libuv 2021-11-09 (0f696da5)
65fb29fdfb libuv: Build unix tcp support during CMake bootstrap

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6736
2021-11-18 08:55:22 -05:00
Kitware Robot 5e269798cc CMake Nightly Date Stamp 2021-11-18 00:02:14 -05:00
Brad King 3b9975d9b5 ci: Add JOM nightly CI job 2021-11-17 12:50:16 -05:00
Brad King ec68e3c5c6 ci: Add NMake nightly CI job 2021-11-17 12:49:43 -05:00
Brad King bd00882f49 gitlab-ci: Factor out windows_vcvarsall_vs2022_x64 config block
Isolate the vcvarsall variables in a dedicated block.
2021-11-17 12:07:45 -05:00
Brad King 99c335c8e8 gitlab-ci: Clarify MSVC v71 job script config block name
Rename `cmake_test_windows_{nmake => msvc}` since it fetches MSVC,
not NMake.
2021-11-17 12:07:40 -05:00
Brad King 80b6b201a6 Merge branch 'IntelLLVM-Fortran-copy-mod' into release-3.21
Merge-request: !6740
2021-11-17 10:42:51 -05:00
Brad King 7cc7f9aa26 Merge branch 'IntelLLVM-Fortran-copy-mod' into release-3.20
Merge-request: !6740
2021-11-17 10:42:37 -05:00
Brad King 209b896f2c IntelLLVM: Enable Fortran module rebuild avoidance in Makefile generators
The Makefile generators use an internal `cmake -E cmake_copy_f90_mod`
tool to avoid rebuilding module consumers when the `.mod` content
changes only in a trivial way (e.g. the time it was built).  This is
done with logic specific to each vendor's module file format.  Enable
the "Intel" format support when using the IntelLLVM compiler (ifx) too.

Issue: #22922
2021-11-17 10:41:30 -05:00
Håkon Strandenes 86c697f49a FindHDF5: Fix Fortran compiler interrogation without HL library
When the HDF5 HL library is not available, FindHDF5 with Fortran does
not work.  The problem is because `cmake_hdf5_test.f90` tries to
"use h5lt" and "use h5ds", which comes from the HL library.
Then the basic compiler check fails completely.

The two "use" lines were added by commit 00405af0f1 (HDF5: Refactor the
use of compiler wrappers, 2016-04-04, v3.6.0-rc1~85^2) along with the
rest of the check.  Remove them.

Fixes: #22890
2021-11-17 09:22:41 -05:00
Brad King b4bdedaf4e Merge topic 'iwyu-xcode'
67c75064d1 Source: Fix IWYU warnings in Xcode generators

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6729
2021-11-17 08:46:45 -05:00
Brad King 80eae52410 Merge topic 'test-target_link_directories-chars'
7aa0c129ba Tests: Fix CMakeCommands.target_link_directories for regex chars in path

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6733
2021-11-17 08:45:35 -05:00
Brad King a2da527a07 Merge branch 'release-3.22' 2021-11-17 08:44:29 -05:00
Brad King 908d2cd136 Merge topic 'gtest_discover_tests-PRE_TEST-dep'
1bf6d5979d gtest_discover_tests: Re-run PRE_TEST discovery on any arg change
715af43124 Tests: Fix and update wrongly named GoogleTest stdout file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6728
2021-11-17 08:44:29 -05:00
Brad King ed9b971694 Merge topic 'gtest_discover_tests-PRE_TEST-dep' into release-3.22
1bf6d5979d gtest_discover_tests: Re-run PRE_TEST discovery on any arg change
715af43124 Tests: Fix and update wrongly named GoogleTest stdout file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6728
2021-11-17 08:44:28 -05:00
Brad King 51d26933fe libuv: Fix clang-analyzer deadcode.DeadStores warning on Linux 2021-11-17 06:41:49 -05:00
Brad King f29bb586f0 libuv: Convert C++-style comment to C-style 2021-11-17 06:41:49 -05:00
Brad King 8e7bb62bd5 libuv: Update CMake-internal buildsystem 2021-11-17 06:41:49 -05:00
Brad King 0decc36fb1 libuv: Update uv__fs_copy_file_range signature in cmake-bootstrap.c 2021-11-17 06:41:48 -05:00
Brad King 74a05716a4 Merge branch 'upstream-libuv' into update-libuv
* upstream-libuv:
  libuv 2021-11-09 (0f696da5)
2021-11-17 06:40:02 -05:00
libuv upstream 27e34e6190 libuv 2021-11-09 (0f696da5)
Code extracted from:

    https://github.com/libuv/libuv.git

at commit 0f696da5f0328dde1f9cc0372692ce22f0d17100 (v1.x).
2021-11-17 06:39:32 -05:00
Brad King 65fb29fdfb libuv: Build unix tcp support during CMake bootstrap
Using the real `tcp.c` simplifies `cmake-bootstrap.c`, and its
implementation doesn't seem to require any of the platform-specific
definitions.  Also, later it will be needed for `uv_socketpair`.
2021-11-17 06:36:30 -05:00
Kitware Robot d2e10c4d8d CMake Nightly Date Stamp 2021-11-17 00:01:10 -05:00
Brad King acc14edd70 libuv: Backport MinGW-w64 compilation fix to CMake 3.22 branch
Backport libuv commit `3e90bc76` (build: fix build failures with MinGW
new headers, 2021-11-03).

Fixes: #22916
2021-11-16 11:58:45 -05:00
WenGe Wang 7aa0c129ba Tests: Fix CMakeCommands.target_link_directories for regex chars in path
Fixes: #22801
2021-11-16 11:19:47 -05:00
Craig Scott 1bf6d5979d gtest_discover_tests: Re-run PRE_TEST discovery on any arg change
Fixes: #22912
2021-11-16 09:45:26 -05:00
Brad King d98b61c687 Merge topic 'clang_windows_thinlto'
3155b23260 Clang/Windows: Use ThinLTO if possible to match other platforms

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6730
2021-11-16 09:06:10 -05:00
Brad King 696edd1704 Merge topic 'ci-windows'
3d4073b129 gitlab-ci: Try upstream ninja development branch in a Windows nightly job
bbb2664547 gitlab-ci: Add wix, cmake, and ninja to PATH incrementally on Windows
658009b6fe ci: Fix vcvarsall.ps1 environment variable lookup

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6732
2021-11-16 09:04:45 -05:00
NAKAMURA Takumi 67c75064d1 Source: Fix IWYU warnings in Xcode generators 2021-11-16 21:06:13 +09:00
Kitware Robot 49c870b38f CMake Nightly Date Stamp 2021-11-16 00:01:53 -05:00
Fred Baksik aa59eaac4f GHS: Allow setting GHS variables from toolchain file
* Update generator to use the current variable definition,
  not the CACHE definition.
* Avoid overwriting toolchain variables and avoid developer warnings
  when setting up the GHS variables.
  -- A cache entry is only required when:
     a) The toolchain uses set( CACHE ) to set the variable
     b) A -D or preset value was used to set the variable

     The cache entry is required so that the TYPE gets set properly.

  -- Avoid the Policy CMP0126 warnings:
     setting cache variable when normal variable exists
* Move GHS_PRIMARY_TARGET back into area so non-GHS generator
  toolchain file can trigger the OS search.
2021-11-15 13:15:12 -05:00
Fred Baksik ab6f0b51b1 GHS: Add note about -T and path style
If backslashes are used for CMAKE_GENERATOR_TOOLSET, then ctest
processing will complain about COMP0010.

For example:
  Syntax error in cmake code at

    C:/Users/XXX/test_bld/Tests/CTestTestfile.cmake:253

  when parsing string

    C:\Users\XXX\bin_tools\XXX

  Invalid escape sequence \U

  Policy CMP0010 is not set: Bad variable reference syntax is an error.  Run
  "cmake --help-policy CMP0010" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.
2021-11-15 13:15:12 -05:00
Fred Baksik a55b5c4e18 GHS: Update BSP selection logic
Selection of a BSP only needs to be performed if not set by user.

Remove all the logic for printing error and status messages about BSP
selection. These messages also breaks CMake tests.

NOTE: If BSP selection fails then the compiler checks will result in
a build error.  The build error will report that the BSP does not exist.
2021-11-15 13:15:11 -05:00
Fred Baksik 0427f22539 GHS: Update RTOS selection logic
Selection of an RTOS only needs to be performed if not set by user.

Avoid CMake developer warnings for setting GHS_OS_DIR multiple times.
Instead only set it once after searching has been performed.

Remove all the logic for printing error and status messages about RTOS
selection.  This was broken and reporting incorrect messages.  These
messages also breaks CMake tests.

NOTE: If RTOS selection fails then the compiler checks will result in
a build error.  The build error will report that the RTOS
"GHS_OS_DIR-NOT-SPECIFIED" does not exist.
2021-11-15 13:15:11 -05:00
Fred Baksik e006b87cc6 GHS: GHSMULTI - Update documentation to match implementation
* The variable being set was named `GHSMULTI` not `GHS-MULTI`.
2021-11-15 13:15:11 -05:00
Fred Baksik 83eb5695e9 GHS: Update toolset selection logic
-- Ensure that GHS_TOOLSET_ROOT is used as a path
   * Converts directory path slashes to CMake style
-- Use ComparePath() to properly check for path changes of build tool
   * Accounts for Windows file-system case insensitivity.
-- Don't print message "defaulting" messages (this causes CMake test failures)
-- Don't force update CMAKE_GENERATOR_TOOLSET back into cache when `-T`
   is not used on initial configure. This change avoids an unnessary
   error message when accidentally using `-T` in subsequent runs but the same
   tools are always used.
-- Use IssueMessage() for error messages.
2021-11-15 13:15:10 -05:00
Fred Baksik 8114ddcad1 GHS: Continue splitting variables used by generator
This makes it easier to use GHS-MULTI platform in other generators
that want to use the GHS-MULTI platform and compilers.
2021-11-15 13:15:10 -05:00
Fred Baksik 831607889f GHS: Update selection of primaryTarget in MULTI project file
Changes to ``-A`` handling:
* Don't force CMAKE_GENERATOR_PLATFORM into cache when using default
  value (breaks using CMake presets).
* Don't print message when using default value (breaks CMake tests).

Changes to ``GHS_PRIMARY_TARGET`` handling:
* Add as a cache variable so its known to GUI
* Don't always include``GHS_TARGET_PLATFORM``, it's only needed if
  ``GHS_PRIMARY_TARGET`` wasn't set by the user.
* Set ``GHS_PRIMARY_TARGET`` during platform selection instead of when
  a language is enabled.  By performing this sooner
  ``GHS_TARGET_PLATFORM`` is not always required to be set into cache.
2021-11-15 13:15:10 -05:00
Fred Baksik bff48c5908 GHS: Update generator documentation
Break up into different sections and add examples
2021-11-15 13:15:09 -05:00
Brad King 3d4073b129 gitlab-ci: Try upstream ninja development branch in a Windows nightly job 2021-11-15 10:24:32 -05:00