Commit Graph

48715 Commits

Author SHA1 Message Date
Brad King 26673bf480 Xcode: Explicitly specify default native architecture on macOS
When `CMAKE_OSX_ARCHITECTURES` is not specified, we add the Xcode
setting `ONLY_ACTIVE_ARCH = YES` with the intention of targeting the
native architecture of the host.  However, the default `ARCHS` value
chosen by "Xcode 12 Universal Apps" includes multiple architectures.
Add an explicit `ARCHS` setting with value `$(NATIVE_ARCH_ACTUAL)`
to tell Xcode to use the host's native architecture only.

Fixes: #20893
2020-07-20 10:03:15 -04:00
Brad King ce624cfbd4 cmGlobalXCodeGenerator: Save CMAKE_SYSTEM_NAME in member 2020-07-16 14:17:47 -04:00
Brad King d421274e3e CMake 3.18.0 v3.18.0 2020-07-15 07:19:20 -04:00
Brad King 6b845e9066 Merge topic 'doc-find_package' into release-3.18
cc92a4c228 Help: Fix typo in find_package documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5014
2020-07-15 06:46:21 -04:00
Kai Koehne cc92a4c228 Help: Fix typo in find_package documentation 2020-07-15 06:44:33 -04:00
Brad King 17f28f821f Merge topic 'nvcc_host' into release-3.18
ff086f066b NVCC: Handle host compiler with spaces in path

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5019
2020-07-15 06:42:56 -04:00
Craig Scott a335999021 Merge topic 'source_file_props_dedup_scopes' into release-3.18
f6969b917d set_property: Deduplicate source file directory scopes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5009
2020-07-14 18:59:39 -04:00
Raul Tambre ff086f066b NVCC: Handle host compiler with spaces in path
Need to surround it with quotes otherwise the different bits are passed as
separate arguments.

Fixes #20954.
2020-07-14 22:27:58 +03:00
Brad King 8c6cce27ca Merge topic 'macos-11-file-GET_RUNTIME_DEPENDENCIES' into release-3.18
d9af90504f Tests: Update file(G_R_D) test to make system library optional
c51400033c file: Update GET_RUNTIME_DEPENDENCIES for macOS 11 dylib cache

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kyle Edwards <kyle.edwards@kitware.com>
Merge-request: !4998
2020-07-14 07:15:11 -04:00
Brad King 2ef6ad0136 Merge topic 'profiling-case-insensitive-command-names' into release-3.18
7cf2f7d2af cmake: Store lowercase command names in profiling output

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5007
2020-07-14 07:14:08 -04:00
Alexandru Croitor f6969b917d set_property: Deduplicate source file directory scopes
A user could specify the same directory scope to set_property()
multiple times, which in conjunction with APPEND would append the
property multiple times.

Make sure to deduplicate scopes across both DIRECTORY and
TARGET_DIRECTORY options, so that a property is only appended
once in such a scenario.

Fixes: #20941
2020-07-13 17:43:17 +02:00
Kyle Edwards d9af90504f Tests: Update file(G_R_D) test to make system library optional
Since the system library may not exist on the filesystem on macOS
11, skip it if it doesn't exist.
2020-07-13 08:32:02 -04:00
Brad King c51400033c file: Update GET_RUNTIME_DEPENDENCIES for macOS 11 dylib cache
Starting on macOS 11, the dynamic loader has a builtin cache of
system-provided dylib files.  They do not actually exist on the
filesystem.  However, runtime dependencies recorded in Mach-O binaries
can still have `LC_LOAD_DYLIB` entries referring to such dylib files by
absolute path.  The dynamic loader simply resolves the paths from its
cache.  Teach `file(GET_RUNTIME_DEPENDENCIES)` to skip dependencies on
such dylib paths.  For practical software distribution purposes they do
not exist, or at least can be assumed available on all deployments.

Issue: #20863
2020-07-13 08:31:59 -04:00
Brad King 46f1fa01da Merge topic 'imported-local-target-alias' into release-3.18
7b0f6508a0 ALIAS targets: Non-global aliases must be propagated to sub-directories

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5002
2020-07-13 07:56:13 -04:00
Brad King 1ec3fee12b Merge topic 'doc-source-prop-dir-options' into release-3.18
0bdb1a77d1 Help: Clarify wording of dir-related source property options

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5000
2020-07-13 07:52:01 -04:00
Brad King aedc5e19f3 Merge topic 'supported-profiling-formats' into release-3.18
9c3beb532f cmake: Show supported formats in --help output for --profiling-format

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: dublet <github@dublet.org>
Merge-request: !5001
2020-07-13 07:49:47 -04:00
Craig Scott 7cf2f7d2af cmake: Store lowercase command names in profiling output
This ensures commands can be properly aggregated by tools
processing the profiling output.

Fixes: #20946
2020-07-13 11:03:05 +10:00
Craig Scott 0bdb1a77d1 Help: Clarify wording of dir-related source property options 2020-07-13 10:06:52 +10:00
Marc Chevrier 7b0f6508a0 ALIAS targets: Non-global aliases must be propagated to sub-directories
Fixes: #20942
2020-07-11 16:59:50 +02:00
Craig Scott 9c3beb532f cmake: Show supported formats in --help output for --profiling-format
Fixes: #20943
2020-07-11 23:14:03 +10:00
Brad King 6ab08c4e99 CMake 3.18.0-rc4 v3.18.0-rc4 2020-07-10 06:49:28 -04:00
Brad King 1bfe1d42bc Merge topic 'source_file_both_props' into release-3.18
961ee62faa Help: Update get_property and get_source_file_property docs
1235f2d747 set_property: Allow both DIRECTORY and TARGET_DIRECTORY together
177052d6b8 set_property: Fix name of TARGET_DIRECTORY option in error messages

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4994
2020-07-10 06:45:09 -04:00
Brad King d8cdec066a Merge topic 'irsl-intel-ia32' into release-3.18
f332ce12d6 IRSL: Fix path to Intel 32-bit redist libraries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4995
2020-07-10 06:43:58 -04:00
Brad King 2e290682b8 Merge topic 'FindOpenMP-version' into release-3.18
656d6ea821 FindOpenMP: Set version variables every time CMake runs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4996
2020-07-10 06:42:43 -04:00
Brad King 8e71d199dc Merge topic 'FindJava-no-macos-stub' into release-3.18
e8051b1f20 FindJava: Update check to avoid accepting macOS stub 'java' as Java

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4993
2020-07-09 06:49:21 -04:00
Brad King e69c64a144 Merge topic 'cuda-11-ptx-arch' into release-3.18
8707178c1c FindCUDA/select_compute_arch: generate PTX for the latest architecture

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4991
2020-07-09 06:47:42 -04:00
Brad King 6ce96dfbc7 Merge topic 'doc-CPack-source-package' into release-3.18
f8b7acaf90 Help: Fix CPack module docs on config file for source package

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4985
2020-07-09 06:46:41 -04:00
Alexandru Croitor 961ee62faa Help: Update get_property and get_source_file_property docs
Specify the names and alternatives a bit more clearly.
2020-07-09 06:35:06 -04:00
Alexandru Croitor 1235f2d747 set_property: Allow both DIRECTORY and TARGET_DIRECTORY together
Allow to specify both DIRECTORY and TARGET_DIRECTORY at the same time in
`set_source_files_properties()` and `set_property(SOURCE)` commands.

Add test cases and update the documentation.

Fixes: #20932
2020-07-09 06:33:52 -04:00
Alexandru Croitor 177052d6b8 set_property: Fix name of TARGET_DIRECTORY option in error messages 2020-07-09 06:33:03 -04:00
Torgeir Rusten f332ce12d6 IRSL: Fix path to Intel 32-bit redist libraries
The path to the 32 bit libraries in the Intel windows/redist folder use
ia32.  I don't remember if this has changed at some point, but ia32 has
been used at least since Intel Fortran XE 2018.
2020-07-09 06:29:40 -04:00
Brad King 656d6ea821 FindOpenMP: Set version variables every time CMake runs
The version is determined in two steps.  First, the "spec date" is
detected and cached.  Second, the date is converted to a version.
Move the second step out of the spec date cache guard condition
so that it runs every time even if the spec date is already cached.

Fixes: #19150
2020-07-09 06:17:44 -04:00
Brad King e8051b1f20 FindJava: Update check to avoid accepting macOS stub 'java' as Java
Since commit dd378258f1 (FindJava: Do not accept OS X stub 'java' as
Java, 2014-10-24, v3.1.0-rc3~29^2) we try to avoid using the macOS
`/usr/bin/java` stub if no underlying implementation of Java is actually
installed.  However, the message that `/usr/bin/java` prints when there
is no Java available has changed since then.  Update our check to also
look for the new message.

While at it, revise the way we suppress `Java_JAVA_EXECUTABLE`.
Previously we set its cache entry to `Java_JAVA_EXECUTABLE-NOTFOUND`,
but that would cause the same find-and-reject sequence to be followed
every time CMake runs in a build tree.  Instead, use the approach from
commit 2c0db404d1 (FindSubversion: Do not accept macOS stub without
Xcode implementation, 2020-05-28, v3.18.0-rc1~67^2).  Leave the cache
entry alone and just set a normal variable of the same name to hide it.
2020-07-08 16:17:40 -04:00
zasdfg bnm 8707178c1c FindCUDA/select_compute_arch: generate PTX for the latest architecture 2020-07-08 13:35:12 -04:00
Craig Scott 8adfa16e20 Merge topic 'ctest-resource-spec-file-doc' into release-3.18
c57695a2f4 Help: Clarify search order for resource spec file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4983
2020-07-08 09:06:53 -04:00
Joachim Wuttke (h) f8b7acaf90 Help: Fix CPack module docs on config file for source package 2020-07-08 08:36:00 -04:00
Brad King cb0080d520 Merge topic 'FindMPI-nvcc-link-pthread' into release-3.18
33192e1b5f FindMPI: Pass -pthread to NVCC through -Xlinker for device linking

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4981
2020-07-08 08:26:43 -04:00
Brad King bc185531fa Merge topic 'cuda-11-compute-arch' into release-3.18
295d1b9cb5 FindCUDA/select_compute_arch: Add CUDA 11 and Ampere support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Axel Huebl <axel.huebl@plasma.ninja>
Acked-by: Tobias Ribizel <ribizel@kit.edu>
Acked-by: Henry Schreiner <henryschreineriii@gmail.com>
Merge-request: !4979
2020-07-08 08:25:00 -04:00
Brad King 32e833d5cf Merge topic 'find-blas-lapack-mklroot-win' into release-3.18
196f042b58 FindLAPACK: Handle Windows Intel MKLROOT with backslash
96c19ecd55 FindBLAS: Handle Windows Intel MKLROOT with backslash

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4982
2020-07-08 08:23:31 -04:00
Kyle Edwards c57695a2f4 Help: Clarify search order for resource spec file
Clarify the order in which --resource-spec-file, RESOURCE_SPEC_FILE,
and CTEST_RESOURCE_SPEC_FILE are searched, and add tests to
enforce this.

Fixes: #20914
2020-07-07 12:21:58 -04:00
zasdfg bnm 295d1b9cb5 FindCUDA/select_compute_arch: Add CUDA 11 and Ampere support
Co-Author: Henry Schreiner <henryschreineriii@gmail.com>
2020-07-07 11:32:45 -04:00
Robert Maynard 33192e1b5f FindMPI: Pass -pthread to NVCC through -Xlinker for device linking
Fixes: #20924
2020-07-07 10:23:11 -04:00
Michael Hirsch 196f042b58 FindLAPACK: Handle Windows Intel MKLROOT with backslash 2020-07-07 09:55:29 -04:00
Michael Hirsch 96c19ecd55 FindBLAS: Handle Windows Intel MKLROOT with backslash 2020-07-07 09:55:29 -04:00
Brad King dab33d1e33 Merge topic 'cmake-gui-qt-5.14' into release-3.18
8eb7cf9b5f cmake-gui: Fix compilation as C++14 with Qt 5.14

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !4978
2020-07-07 09:17:22 -04:00
Brad King 996b312825 Merge topic 'FindMPI-nvcc-fexceptions' into release-3.18
b725a19072 FindMPI: Deny -fexceptions from NVCC

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !4970
2020-07-07 09:13:49 -04:00
Brad King 8eb7cf9b5f cmake-gui: Fix compilation as C++14 with Qt 5.14
Fix code added by commit d7679f6427 (QCMakeCacheView: use non-deprecated
List and Set constructions, 2020-06-10, v3.18.0-rc2~13^2), used
conditionally on Qt 5.14 or above, to compile as C++14.
2020-07-06 11:45:03 -04:00
Brad King 2e029b1d36 Merge branch 'cmext-vs16-declval' into release-3.18
Merge-request: !4971
2020-07-06 09:42:21 -04:00
Axel Huebl b725a19072 FindMPI: Deny -fexceptions from NVCC
Do not forward -fexceptions (set from MVAPICH2) to NVCC.

Fixes: #18558
2020-07-06 09:37:11 -04:00
Sumit Bhardwaj 8843946519 cmext: Implement cm::static_reference_cast by declval
Previously, `cm::static_reference_cast` used `invoke_result_t` and took
the address of `O::get`. This is not in complete conformance with
standard.

Change the implementation to use `std::declval<O>.get()` which is always
well-defined.
2020-07-06 09:30:56 -04:00