| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|\
| |
| |
| |
| |
| |
| | |
f6969b917d set_property: Deduplicate source file directory scopes
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5009
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
|\ \ \
| |_|/
|/| |
| | |
| | |
| | |
| | | |
7cf2f7d2af cmake: Store lowercase command names in profiling output
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5007
|
| |/
| |
| |
| |
| |
| |
| | |
This ensures commands can be properly aggregated by tools
processing the profiling output.
Fixes: #20946
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
7b0f6508a0 ALIAS targets: Non-global aliases must be propagated to sub-directories
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5002
|
| |/
| |
| |
| | |
Fixes: #20942
|
|/
|
| |
Fixes: #20943
|
| |
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| |
| |
| | |
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.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
85a945a607 Restore handling of build directory inside a symlinked path
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4963
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In commit dd8365b3f1 (Merge branch 'upstream-KWSys' into update-kwsys,
2020-04-06, v3.18.0-rc1~397^2) we imported KWSys commit `019afb6ea`
(SystemTools: Drop GetCurrentWorkingDirectory 'collapse' argument,
2020-04-03). That caused `GetCurrentWorkingDirectory` to no longer send
paths through the KWSys translation map and broke CMake's detection of
the absolute path to a build directory containing a symbolic link.
Add our own `cmSystemTools::GetCurrentWorkingDirectory` wrapper around
the KWSys method in order to restore that mapping.
Test-case-by: Ben Boeckel <ben.boeckel@kitware.com>
Issue: #16228
Fixes: #20900
|
|/
|
|
|
|
|
| |
`uv_default_loop()` can return `nullptr` when running on a Linux kernel
configured without `CONFIG_EVENTFD`.
Fixes: #20899
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
bbcff21f71 file(ARCHIVE*): Collapse FILES and DIRECTORY options
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4955
|
| |
| |
| |
| |
| |
| |
| |
| | |
The two options were concatenated internally for both ARCHIVE_CREATE
and ARCHIVE_EXTRACT. The distinction between files and dirs was not
meaningful. Therefore, replace them with PATHS or PATTERNS
to more accurately describe the way the options are used.
Fixes: #20884
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
e5f5eeca2f file: Fix CONFIGURE output relative path
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4951
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In commit a6fee09484 (file: Add CONFIGURE subcommand, 2020-03-06,
v3.18.0-rc1~584^2) we accidentally treated relative path outputs
with respect to the current working directory. Treat them with
respect to the current binary directory instead.
Fixes: #20885
|
|\ \ \
| |_|/
|/| |
| | |
| | |
| | |
| | | |
f2c903fb9a find_library: Check that library files are readable
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4945
|
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
Refactoring in commit 6b85166920 (ENH: Refactor find_library search
logic, 2008-09-22, v2.8.0~1665) dropped a call to `FileExists` on the
path under the assumption that the presence of a file in a directory
listing means it exists. However, dropping that also dropped a check
that verifies the file is readable. Restore the `FileExists` call to
ensure that we only find readable libraries.
|
| |
| |
| | |
Fixes: #20883
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
7f78bc42cb Makefile: Fix regression in .SILENT rule
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4928
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since commit d74e651b78 (Makefiles: Re-implement makefile target path
escaping and quoting, 2020-04-10, v3.18.0-rc1~334^2~1), `WriteMakeRule`
now correctly escapes `$` in make target paths as `$$`. However, this
caused an existing call site to escape the `$(VERBOSE)` variable
reference in the `.SILENT` prefix, making it ineffective. Sub-makefiles
are invoked with `MAKESILENT`, so this bug matters only for the `all`
target, which emits progress messages from toplevel.
Before:
# Suppress display of executed commands.
$$(VERBOSE).SILENT:
After:
# Suppress display of executed commands.
$(VERBOSE).SILENT:
|
|/
|
|
|
|
|
| |
These files are part of the NFS implementation and should not be
removed. They will automatically disappear when NFS is done with them.
Fixes: #20844
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
ec59fb6c31 CUDA: Determine CUDA toolkit location for NVCC
0a056246a1 CUDA: Pass toolkit path to Clang
9c43972127 FindCUDAToolkit: Avoid unnecessary temporary variable computing binary dir
9eebb5b8b2 FindCUDAToolkit: Remove unnecessary checks around searches
8f01fe7bf1 FindCUDAToolkit: Use list(SORT) to sort in natural order
8c144fe9ad FindCUDAToolkit: Compute CUDAToolkit_INCLUDE_DIR instead of searching
403f8d31e3 FindCUDAToolkit: Add CUDAToolkit_LIBRARY_ROOT
6636693134 FindCUDAToolkit: Re-unify with Internal/CUDAToolkit
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4828
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Clang isn't very good at finding the installed CUDA toolkit.
The upstream recommendation is that we should pass the toolkit explicitly.
Additionally:
* Avoids Clang having to search for the toolkit on every invocation.
* Allows the user to use a toolkit from a non-standard location by simply
setting CUDAToolkit_ROOT. The same way as with FindCUDAToolkit.
Clang wants the directory containing the device library and version.txt as the
toolkit path.
We thus pass the newly introduced CUDAToolkit_LIBRARY_ROOT as the toolkit path.
We save CUDAToolkit_ROOT_DIR and CUDAToolkit_LIBRARY_ROOT on Clang to have them
available in try_compile() and avoid unnecessary re-searching or a possibly
different installation being found in FindCUDAToolkit.
This however means that the selected toolkit can't be changed after the initial
language enablement.
We now determine CUDA compiler ID before doing actual detection, as we don't
want to spend time finding the CUDA toolkit for NVIDIA.
Implements #20754.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
877a92e968 CUDA: Add support for disabling CUDA_ARCHITECTURES
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4886
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The ability to disable adding architectures completely for packaging purposes
and cases requiring passing the architectures flags explicitly has been
requested.
Support a false value for CUDA_ARCHITECTURES and CMAKE_CUDA_ARCHITECTURES
for this purpose.
Implements #20821.
|
|\ \
| |/
|/|
| |
| |
| |
| | |
cc02ced530 find_program: Revert "Find programs that are executable but not readable"
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4871
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The fix in commit 86e6349ef7 (find_program: Find programs that are
executable but not readable, 2020-04-04, v3.18.0-rc1~372^2) can break
existing projects that were (likely accidentally) relying on the
old behavior to find files that are readable but not executable.
Revert the fix for now. We can re-introduce it with a policy later.
Instead of reverting the test case, update it to cover the old behavior.
That can serve as a reference for testing the policy when introduced.
Fixes: #20814
Issue: #10468
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
5c04e77e07 VS: Restore compilation of '.C' sources as C++
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4880
|
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
Refactoring in commit 3b547e2e4b (VS: Simplify logic adding source file
C/C++ language flag to MSVC, 2020-05-15, v3.18.0-rc1~139^2~1) failed to
account for MSVC's treatment of `.C` extensions as C. Add this special
case to the logic to restore use of `-TP` for `.C` extensions.
Fixes: #20822
|
|/ |
|
| |
|
|
|
|
|
|
| |
In commit b36d1bdd9d (Single location for cmProp typedef, 2020-05-30)
we accidentally left inclusion of `cmProperty.h` out of the main
block of includes.
|
|\
| |
| |
| |
| |
| |
| | |
3fd07d30bf VS: Enable DOTNET_TARGET_FRAMEWORK properties all target types
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4854
|
| |
| |
| |
| |
| |
| |
| |
| | |
This makes them compatible with `VS_PACKAGE_REFERENCES` and, in
particular, fixes nuget package references in combination with install
targets.
Fixes: #20764
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since commit e98588aaba (CUDA: Add CUDA_ARCHITECTURES target property,
2020-03-12), `CMAKE_CUDA_ARCHITECTURES` is both initialized and required
by policy CMP0104's `NEW` behavior. Inside a `try_compile` project we
use `cmake_minimum_required(VERSION ...)` with the current running
version of CMake. Now that our version number is 3.18, `CMP0104` gets
set to `NEW` in the `try_compile`. If the outer projects does not set
the policy then `CMAKE_CUDA_ARCHITECTURES` is not available and the
`try_compile` fails to generate.
Teach `try_compile` to check the outer project's policy status and
set policy CMP0104 to `OLD` if needed to match.
Fixes: #20794
|
|/ |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
9f3923893c libarchive: Map fixed-size integer types from KWIML as typedefs
d20bf471c8 liblzma: Map fixed-size integer types from KWIML as typedefs
92c4316d81 KWSys: Hard-code try_compile results on Windows
2bc89f1a03 cmSystemTools: Hard-code try_compile results for Windows
d350d4668a libarchive: Hard-code try_compile results for bundled dependencies
bf60ac24ae Source: Assume elf.h does not exist on Windows
f408cc2c40 expat: Remove unused try_compile checks
6c4f3dcd7b Utilities: Update hard-coded try_compile results for third-party libraries
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4848
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
e219527a72 VS: Use StdOutEncoding for VS 16.7 Preview 3 and above
8a7ad923a8 VS: Extract instance version from VS Installer
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4847
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
VS 16.6 added a `StdOutEncoding` setting for custom commands to tell
MSBuild that the output is encoded as UTF-8. In commit bc877a7e94 (Add
support to indicate UTF-8 custom command pipe output encoding,
2020-04-08) CMake learned to add the setting in anticipation of the VS
16.6 release. However, when 16.6 was released it had a bug in the
implementation of custom tasks with StdOutEncoding enabled that was
exposed by our test suite. In commit 5058fb5401 (VS: Drop
StdOutEncoding with VS 16.6 pending investigation, 2020-05-29) we
disabled the setting pending investigation.
The problem is fixed in VS 16.7 Preview 3, so restore use of the
setting when a VS instance of at least that version is detected.
Fixes: #20769
|