Commit Graph

51634 Commits

Author SHA1 Message Date
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
William R. Dieter
f5d79dec53 Tests: Cleanup CPack message when files are expected and none are found
Previously, when looking for exactly one file and the number of files
was not one, the test printed out an error message saying that too many
files were found, then printing the list of files.  However, 0 is not
1 and also not too many files.

To reduce confusion, this commit adds a different message when 0 files
are found and 1 is expected.

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:05:35 -05:00
William R. Dieter
f6f048898d Tests: Update RunCMake.DependencyGraph to canonicalize paths when comparing
A symbolic link in the path was causing false path mismatches.
Resolving the symlinks makes both paths identical.

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:05:35 -05:00
William R. Dieter
49d7e0c91d Tests: Make GCOV test more robust to symbolic links in paths
Symbolic links in the path to the cmake build directory caused some
paths to have '..' directories in the path, which are equivalent, but
not a string match for the expected path.  As a result, some tests fail.

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:05:35 -05:00
William R. Dieter
f905cfdc77 Tests: Fix Fortran test C function prototypes
Several extern functions were declared without return type, which results
in warnings.  The functions are for calling Fortran subroutines, so
there should not be a return value.

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:05:35 -05:00
William R. Dieter
4c7e2615b8 Tests: Use the CVS :local: access method for local directories
Windows absolute paths start with a drive letter, followed by the path.
Without an explicit access method specification, CVS treats the drive
letter as a host name.  This changes explicitly adds `:local:` to local
directory repository paths used in tests to avoid this confusion.

See the CVS Manual [1] for more information.

[1] https://www.gnu.org/software/trans-coord/manual/cvs/cvs.html#Repository

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2021-01-28 09:05:35 -05:00
Brad King
549eedfe85 Tests: Fix CMP0115 warnings in CompileFeatures test
Pass source file extensions explicitly.
2021-01-28 09:05:34 -05:00
Brad King
b369aee24d Merge topic 'nvhpc-compiler'
4de28ba4e6 Tests: Update tests for NVHPC compiler
90502d76b7 FindOpenMP: Add support for NVHPC compiler
76dee5831b FindOpenACC: Add support for NVHPC compiler
ff7bab83c2 GenerateExportHeader: Add support for NVHPC compiler
83ea49818f NVHPC: Add support for NVIDIA HPC SDK compilers based on PGI

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5475
2021-01-28 09:03:10 -05:00
Brad King
c498a8ad0b Merge topic 'ci-aarch64'
430224b6e8 gitlab-ci: add test:debian10-aarch64-ninja job
300a91d42d gitlab-ci: add build:centos7-aarch64 job
d997637fa3 gitlab-ci: add rules infrastructure to allow non-MR jobs
a54e43670d gitlab-ci: rename build:centos6-{release => x86_64}
616bf0d2f0 gitlab-ci: consolidate release and package job infrastructure
227ca689a7 ci: download cmake on aarch64
a601ed8e0e ci: download ninja on aarch64
54c2c5f889 ci: generalize ninja download script to support non-upstream builds
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5745
2021-01-28 08:38:42 -05:00
Kitware Robot
f2c4ea6807 CMake Nightly Date Stamp 2021-01-28 00:04:15 -05:00
Brad King
430224b6e8 gitlab-ci: add test:debian10-aarch64-ninja job 2021-01-27 11:59:54 -05:00
Brad King
300a91d42d gitlab-ci: add build:centos7-aarch64 job
Test building our release for the `aarch64` architecture.
For now, leave this job out during merge requests.
2021-01-27 11:59:54 -05:00
Brad King
d997637fa3 gitlab-ci: add rules infrastructure to allow non-MR jobs 2021-01-27 11:59:30 -05:00
Brad King
a54e43670d gitlab-ci: rename build:centos6-{release => x86_64}
This makes room for a future equivalent for other architectures.
2021-01-27 10:29:38 -05:00
Brad King
616bf0d2f0 gitlab-ci: consolidate release and package job infrastructure
Use `linux_release` in names associated with building or testing
release-style binaries.  Add a `.linux_package` helper to adjust
the release binary build behavior for package-specific jobs.
2021-01-27 10:29:38 -05:00
Brad King
227ca689a7 ci: download cmake on aarch64 2021-01-27 10:29:38 -05:00
Brad King
a601ed8e0e ci: download ninja on aarch64 2021-01-27 10:29:38 -05:00
Brad King
54c2c5f889 ci: generalize ninja download script to support non-upstream builds 2021-01-27 10:29:38 -05:00
Brad King
88e049e327 ci: add docker spec to build ninja for linux-aarch64 2021-01-27 10:29:38 -05:00
Brad King
eefa0ed0fa ci: update to use CMake 3.19.3 2021-01-27 10:20:46 -05:00
Tin Huynh
4de28ba4e6 Tests: Update tests for NVHPC compiler
Treat it just like PGI.
2021-01-27 09:53:02 -05:00
Tin Huynh
90502d76b7 FindOpenMP: Add support for NVHPC compiler 2021-01-27 09:53:02 -05:00
Tin Huynh
76dee5831b FindOpenACC: Add support for NVHPC compiler 2021-01-27 09:53:02 -05:00
Brad King
ff7bab83c2 GenerateExportHeader: Add support for NVHPC compiler
Treat it just like PGI.
2021-01-27 09:53:02 -05:00
Tin Huynh
83ea49818f NVHPC: Add support for NVIDIA HPC SDK compilers based on PGI
Identify the compilers as `NVHPC` to distinguish it from the older PGI
compilers from which they evolved, and from other `NVIDIA` compilers.

Fixes: #20887
2021-01-27 09:53:02 -05:00
Brad King
9b96fbc358 Merge topic 'clang-tidy-fixes'
ef935b17ab clang-tidy: fix `readability-use-anyofallof` warnings
9ac8dbbb94 clang-tidy: fix `readability-simplify-boolean-expr` warnings
ca505718f4 clang-tidy: fix `readability-redundant-string-init` warnings
b3b6ede6a1 clang-tidy: fix `readability-redundant-access-specifiers` warnings
cdfc4e3195 clang-tidy: fix `readability-qualified-auto` warnings
808b17b120 clang-tidy: fix `readability-make-member-function-const` warnings
4470eb5179 clang-tidy: fix `performance-trivially-destructible` warnings
4f396e6528 clang-tidy: fix `performance-no-automatic-move` warnings
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5731
2021-01-27 09:52:18 -05:00
Brad King
a0e44fc16b Merge topic 'rel-package-names'
2186f8988f Utilities/Release: Rename Windows packages to 'windows-$arch'
dc9340dbc4 Utilities/Release: Rename Linux packages to 'linux-$arch'

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5738
2021-01-27 09:07:09 -05:00
Brad King
6153bd3a0c Merge topic 'update-bison-parser'
7c6192472b LexerParser: Suppress -Wused-but-marked-unused warning in cmExprParser
6f64300a01 LexerParser: Clean up includes following include-what-you-use
699d50e376 LexerParser: Regenerate parser files with GNU Bison 3.7.4
c95442b9b1 LexerParser: Manual removing code from Bison is no longer needed
5a8a61a798 LexerParser: Do not use GNU Bison's yacc mode, we use Bison extensions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5730
2021-01-27 09:05:43 -05:00
Brad King
f39fb0b90d Merge topic 'outdir-target-genex'
64c3857780 OUTPUT_DIRECTORY: Support tgt genex in output artifact vars

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5690
2021-01-27 09:04:29 -05:00
Brad King
977811a8ff Merge topic 'doc-system-processor'
5a6379f1fd Help: Clarify meaning of CMAKE_SYSTEM_PROCESSOR

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5744
2021-01-27 09:03:37 -05:00
Brad King
7ab6d1e831 Merge topic 'cpack-compression-threads'
bdf30bdad8 CPack: add CPACK_THREADS variable to control compression threads
bcdb5b52a0 libarchive: Fix lzma_stream_encoder_mt detection

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5716
2021-01-27 09:02:35 -05:00
Brad King
eff0f75bd2 Merge topic 'ExternalProject-vcs-tests'
195809914f Tests: Generate simpler ExternalProject sample Git repositories

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !5741
2021-01-27 09:00:50 -05:00
Brad King
801ea881b3 Merge topic 'doc-if'
e63e83d2b8 Help: Document that if(EXISTS) does not expand ~

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5742
2021-01-27 08:59:16 -05:00
Ben Boeckel
ef935b17ab clang-tidy: fix readability-use-anyofallof warnings 2021-01-27 08:54:18 -05:00
Ben Boeckel
9ac8dbbb94 clang-tidy: fix readability-simplify-boolean-expr warnings 2021-01-27 08:45:45 -05:00
Ben Boeckel
ca505718f4 clang-tidy: fix readability-redundant-string-init warnings 2021-01-27 08:45:45 -05:00
Ben Boeckel
b3b6ede6a1 clang-tidy: fix readability-redundant-access-specifiers warnings 2021-01-27 08:45:45 -05:00
Ben Boeckel
cdfc4e3195 clang-tidy: fix readability-qualified-auto warnings 2021-01-27 08:45:45 -05:00
Ben Boeckel
808b17b120 clang-tidy: fix readability-make-member-function-const warnings 2021-01-27 08:45:45 -05:00
Ben Boeckel
4470eb5179 clang-tidy: fix performance-trivially-destructible warnings 2021-01-27 08:45:44 -05:00
Ben Boeckel
4f396e6528 clang-tidy: fix performance-no-automatic-move warnings 2021-01-27 08:45:44 -05:00
Ben Boeckel
3a0d40bf8c clang-tidy: fix bugprone-suspicious-include warnings 2021-01-27 08:45:44 -05:00
Ben Boeckel
a0610cf9e9 clang-tidy: fix bugprone-signed-char-misuse warnings 2021-01-27 08:45:44 -05:00
Ben Boeckel
c826461d9c clang-tidy: fix bugprone-reserved-identifier warnings 2021-01-27 08:45:44 -05:00