Commit Graph

51678 Commits

Author SHA1 Message Date
Kitware Robot 3e76fe7354 CMake Nightly Date Stamp 2021-02-02 00:01:14 -05:00
Brad King a28bb8de23 Merge topic 'file-configure-newline'
6e225efd8c file(CONFIGURE): Fix newlines in CONTENT

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5747
2021-02-01 10:06:27 -05:00
Brad King e9875b6164 Merge topic 'install-minor-refactor'
203cc694dd cmInstallGenerator: Add accessors for settings common to all installers
e32818dd76 cmInstallGenerator: Add backtrace to all install generators
eea61268e6 cmInstallExportGenerator: Add method to get installed file name
1215092507 cmInstallScriptGenerator: Factor out method to get script
2452cfdeab cmInstallDirectoryGenerator: Factor out method to get list of directories
5b23d8a7b1 cmInstallFilesGenerator: Factor out method to get list of files
5990276226 cmInstallTargetGenerator: Factor out method to get list of target files
c9e87e3447 cmInstallTargetGenerator: Avoid duplicating install destination in memory
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5746
2021-02-01 10:04:42 -05:00
Kitware Robot 755c948976 CMake Nightly Date Stamp 2021-02-01 00:01:20 -05:00
Kitware Robot 8a2fd1bfe0 CMake Nightly Date Stamp 2021-01-31 00:01:09 -05:00
Kitware Robot 93eef92777 CMake Nightly Date Stamp 2021-01-30 00:01:13 -05:00
Brad King c5691f03e5 Merge topic 'intel-llvm-compilers'
b9f945eccb Help: Add release note for IntelLLVM compiler support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5748
2021-01-29 09:36:58 -05:00
Craig Scott 525363447f Merge topic 'cmake_path-stabilization'
76cea3dfe2 cmake_path: rename 'GET ... RELATIVE_PATH' to 'GET ... RELATIVE_PART'

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5743
2021-01-29 08:57:33 -05:00
Cristian Adam 6e225efd8c file(CONFIGURE): Fix newlines in CONTENT
Fixes: #21749
2021-01-29 14:25:33 +01:00
Brad King 36bb0e32d7 Merge topic 'externalproject-update-refactor'
ac6a4d4884 ExternalProject: Improve robustness of update step
17c4c8b92b Tests: Prevent the noisy CMP0114 warnings in ExternalProjectUpdate test
1cb65e680d ExternalProject: Prevent the noisy detached head messages on checkout

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5389
2021-01-29 08:10:21 -05:00
Brad King b9f945eccb Help: Add release note for IntelLLVM compiler support
This was accidentally left out from commit a90d2a9eed (IntelLLVM: Add
support for Intel LLVM-based compilers, 2020-11-02).

Issue: #21561
2021-01-29 08:07:16 -05:00
Brad King 0e60ec7480 Merge topic 'intel-llvm-compilers'
9b5fd04905 Tests: Disable MFC test for IntelLLVM due to #18311
ccdf7c0005 Tests: Skip VSGNUFortran test for ifx.
ddaf412dd0 Tests: Skip per file PDBs in PDBDirectoryAndName for IntelLLVM
a619b32768 Tests: Update RunCMake.GenerateExportHeader for IntelLLVM
661b04d6a6 Tests: Skip old PrecompiledHeader test on IntelLLVM
01b1e9c40d Tests: Update CompileFeatures test for IntelLLVM
f26f10184f Tests: Update Module.WriteCompilerDetectionHeader for IntelLLVM
3ceb364b1c Tests: Update RunCMake.FileAPI for IntelLLVM
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5594
2021-01-29 07:54:42 -05:00
Kitware Robot 59b5b6e11c CMake Nightly Date Stamp 2021-01-29 00:01:13 -05:00
Brad King 203cc694dd cmInstallGenerator: Add accessors for settings common to all installers 2021-01-28 12:47:58 -05:00
Brad King e32818dd76 cmInstallGenerator: Add backtrace to all install generators 2021-01-28 12:47:58 -05:00
Brad King eea61268e6 cmInstallExportGenerator: Add method to get installed file name 2021-01-28 12:47:58 -05:00
Brad King 1215092507 cmInstallScriptGenerator: Factor out method to get script 2021-01-28 12:47:57 -05:00
Brad King 2452cfdeab cmInstallDirectoryGenerator: Factor out method to get list of directories 2021-01-28 12:46:32 -05:00
Brad King 5b23d8a7b1 cmInstallFilesGenerator: Factor out method to get list of files 2021-01-28 12:46:32 -05:00
Brad King 5990276226 cmInstallTargetGenerator: Factor out method to get list of target files 2021-01-28 12:46:32 -05:00
Brad King c9e87e3447 cmInstallTargetGenerator: Avoid duplicating install destination in memory 2021-01-28 12:46:32 -05:00
Brad King 6282a8e190 cmInstallTargetGenerator: Move internal helper to anonymous namespace 2021-01-28 12:46:32 -05:00
Brad King 69ea84ec09 cmGlobalGenerator: Clear list of install components between runs 2021-01-28 12:46:32 -05:00
Brad King 7dec962599 Merge branch 'release-3.19' 2021-01-28 11:27:04 -05:00
Brad King 0c86d15459 CMake 3.19.4 v3.19.4 2021-01-28 10:28:45 -05:00
Craig Scott ac6a4d4884 ExternalProject: Improve robustness of update step
Refactor the update logic to make it easier to follow. The following
fixes/improvements are some consequences of this change:

* Absorb a confusing git checkout failure message when the failure
  is allowed and we act on that failure appropriately.
* Fix an unnecessary fetch in some scenarios when checking out a
  git hash we already have locally.
* Stash and restore any local changes even when not rebasing.
* Avoid unsafe rebasing where we are not on a branch that is
  already tracking the requested branch.
* When fetching, use --tags --force to ensure we get all the tags
  and commits leading up to them regardless of whether the tags
  are on branches or not. Also update our local tags if they move
  on the remote.

Fixes: #20677
2021-01-28 09:32:35 -05:00
Craig Scott 17c4c8b92b Tests: Prevent the noisy CMP0114 warnings in ExternalProjectUpdate test 2021-01-28 09:32:35 -05:00
Craig Scott 1cb65e680d ExternalProject: Prevent the noisy detached head messages on checkout
When checking out a specific commit by its git hash, git will output
a very noisy message about checking out a detached HEAD. This
is not particularly helpful for us here and makes the output overall
quite verbose. Add a git config setting to prevent it.
2021-01-28 09:32:35 -05:00
William R. Dieter 9b5fd04905 Tests: Disable MFC test for IntelLLVM due to #18311
clang-cl cannot deal with implicit dependencies in UTF16 files
(see #18311).  IntelLLVM inherits this behavior from Clang.  The
MFC test uses `rc` in the way described in #18311 and gets the same
error described in #18311.  Disable the test until #18311 is fixed.

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:07:02 -05:00
William R. Dieter ccdf7c0005 Tests: Skip VSGNUFortran test for ifx.
DLLEXPORT is not implemented in ifx yet, and required by this test.
2021-01-28 09:07:02 -05:00
William R. Dieter ddaf412dd0 Tests: Skip per file PDBs in PDBDirectoryAndName for IntelLLVM
The IntelLLVM C compiler do not yet support PDBs per file with the /Fd
option.  Disable the parts of PDBDirectoryAndName that tries to generate
them so that the test will pass.
2021-01-28 09:07:02 -05:00
Brad King a619b32768 Tests: Update RunCMake.GenerateExportHeader for IntelLLVM
On Windows, the expected results are like Clang's.
2021-01-28 09:07:01 -05:00
Brad King 661b04d6a6 Tests: Skip old PrecompiledHeader test on IntelLLVM
This test uses hard-coded flags for a fixed set of compilers.
We have first-class PCH support implemented for IntelLLVM.
2021-01-28 09:07:01 -05:00
Brad King 01b1e9c40d Tests: Update CompileFeatures test for IntelLLVM
We do not have granular features for this compiler.
2021-01-28 09:07:01 -05:00
Brad King f26f10184f Tests: Update Module.WriteCompilerDetectionHeader for IntelLLVM 2021-01-28 09:07:01 -05:00
Brad King 3ceb364b1c Tests: Update RunCMake.FileAPI for IntelLLVM 2021-01-28 09:07:01 -05:00
William R. Dieter 12720a5b71 Tests: Update MSVCRuntimeLibrary.Fortran test for IntelLLVM
`ifx` needs the same command line arguments as `ifort`.

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:07:01 -05:00
William R. Dieter d83df2af57 Tests: Update Preprocess test for IntelLLVM
Work around an icx bug in command line handling of preprocessor macros.

A `\\\"` string in a macro passed to icx on the command line is not
properly parsed in compiler versions 2021.1.0 and earlier.  This problem
is expected to be fixed, though a target release has no been set yet.

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:07:01 -05:00
William R. Dieter 7de61526a0 Tests: Update CPack DEBUGINFO tests for IntelLLVM
By default icx and icpx do not add build IDs when linking, so enable
the build ID to make the test pass.

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:07:01 -05:00
Brad King ae9f986da1 Tests: Update Assembler test for IntelLLVM
Enable parts of the test the same way we do for `Intel`.
2021-01-28 09:07:01 -05:00
William R. Dieter 882baca37b Tests: Update Fortran tests for IntelLLVM
Update checks for the `Intel` compiler id to match `IntelLLVM` too.

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:07:01 -05:00
William R. Dieter aedb9add56 FindBLAS: Add support for IntelLLVM
Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:07:01 -05:00
William R. Dieter 37ac9df342 FindBoost: Add support for IntelLLVM
Use the same code paths as the `Intel` compiler.

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:07:00 -05:00
William R. Dieter 042aba3db4 FindOpenMP: Add support for IntelLLVM
Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:07:00 -05:00
William R. Dieter 90941a1896 FindMPI: Add support for IntelLLVM
Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:07:00 -05:00
William R. Dieter 67dfc6556c IRSL: Add support for IntelLLVM
Use the same code paths as the `Intel` compiler id.

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:07:00 -05:00
Brad King 32498d0665 cmake: Reduce default recursion depth when compiling with IntelLLVM
This compiler makes stack frames large enough (at least in Debug
builds) that CMake language recursion to depth 1000 overflows the
stack.  Reduce the limit for this compiler.
2021-01-28 09:07:00 -05:00
Brad King 87909f0600 Utilities: Suppress warnings in third-party code when using IntelLLVM 2021-01-28 09:07:00 -05:00
William R. Dieter a90d2a9eed IntelLLVM: Add support for Intel LLVM-based compilers
Using a single ID 'IntelLLVM' for the suite of Intel compilers based on
the LLVM backend.  The 'IntelLLVM' ID are used for C, C++, and Fortran.
Data Parallel C++ will be handled in a separate commit.

The C and C++ definitions are based on the Clang definitions.  The Intel
LLVM-based C and C++ compilers are based on the Clang front end, so
existing Clang options are more likely to be a good match than options
for the older Intel compilers.

Fortran is based on the older Fortran front end with the LLVM backend.
It has a similar interface to the older versions, though many options
are shared with the C and C++ compilers.

Fixes: #21561
Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:05:35 -05:00
William R. Dieter 9bef4bef0f GenerateExportHeader: Recognize Intel < 12 more strictly
Match exactly the `Intel` compiler id.

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:05:35 -05:00