| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
Starting with Clang 12, `otool -l` reports `LC_LOAD_WEAK_DYLIB` instead
of `LC_LOAD_DYLIB` for weakly linked libraries. Update the
implementation of `file(GET_RUNTIME_DEPENDENCIES)` to recognize these.
Fixes: #21684
|
|
|
|
|
|
| |
Bracket arguments are literal and shouldn't be expanded.
Fixes #21671.
|
|
|
|
|
|
|
|
|
|
| |
The Xcode "new build system" only considers a script build phase up to
date if it has run before, even if outputs are newer than inputs. Use a
deterministic object id for script build phases associated with custom
commands so that they do not need to re-run after CMake re-generates the
project.
Fixes: #21669
|
|\
| |
| |
| |
| |
| |
| | |
51595e5f01 FetchContent: Relative SOURCE_DIR override cannot be a hard error
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5641
|
| |
| |
| | |
Fixes: #21624
|
|/
|
|
|
|
| |
The test requires a non-empty `CMAKE_BUILD_TYPE` to function on
single-config generators. Force a non-empty configuration if the test
is configured explicitly with empty `-DCMAKE_BUILD_TYPE=`.
|
|\
| |
| |
| |
| |
| |
| | |
c9a50f3556 ISPC: Generated Headers suffix configurable with a better default
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5597
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The target property `ISPC_HEADER_SUFFIX` and associated global
variable now can control the suffix used when generating the
C/C++ interoperability ISPC headers.
In addition the default suffix is now "_ispc.h" which matches the
common convention that the ISPC compiler team uses and recommends.
|
|/ |
|
|\
| |
| |
| |
| |
| |
| | |
e5a4ffaad1 execute_process: Improve COMMAND_ERROR_IS_FATAL error capture scenarios
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5588
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
1. COMMAND_ERROR_IS_FATAL ANY will capture errors if the exit code is
non zero, there is a timeout or an abnormal exit.
2. COMMAND_ERROR_IS_FATAL LAST
will capture if only the last process has an exit code non zero, there
is a timeout or an abnormal exit.
Fixes: #21562
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add test cases verifying that `CMAKE_APPLE_SILICON_PROCESSOR` set as
either a cache or environment variable causes that to be selected as the
host architecture. Also verify that sources compile using whatever is
selected as the host architecture, even when the explicit setting is not
used.
Issue: #21554
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
55193c8013 ci: Hard-code XCTest deployment target to 10.15
40877903ac Tests: Remove outdated exclusion of tests on OS X 10.3
c404d7f221 Tests: Add cache entry to control XCTest deployment target
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5593
|
| | | |
|
| |/ |
|
|\ \
| |/
|/|
| |
| |
| |
| | |
8da25e4a3c ISPC: Treat system includes as '-I' includes
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5591
|
| |
| |
| |
| | |
ISPC doesn't have specific syntax for system includes.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
9af93fef11 ISPC: Handle OBJECT sources in different directories
72ae15ebcb ISPC: Ninja properly compute ISPC_HEADER_DIRECTORY location
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5581
|
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Update logic added by commit 6051a49c78 (Visual Studio: Add Android
support, 2020-06-12, v3.19.0-rc1~619^2) to only look for VS
installations using `cmake_host_system_information` on Windows hosts.
Otherwise the `VS_*_DIR` keys are not available.
Fixes: #21547
|
| |
| |
| |
| |
| |
| |
| |
| | |
Update the change from commit 64690f6df0 (export: Do not fail generation
for namelink-only case, 2020-10-09, v3.19.0-rc1~7^2) to also handle
separate namelink-only and namelink-skip calls.
Fixes: #21529
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fix the language checks added by commit 90dead024c (CheckCompilerFlag:
unified way to check compiler flags per language, 2020-09-25,
v3.19.0-rc1~88^2), commit 10ae907de0 (CheckSoureCompiles: Add a unified
way to check if a source compiles, 2020-09-14, v3.19.0-rc1~118^2~1), and
commit 357e2ef429 (CheckSoureRuns: Add a unified way to check if a
source runs, 2020-09-14, v3.19.0-rc1~118^2) to work when variables of
the language names are set.
Fixes: #21500
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
5213328008 gitlab-ci: update macOS jobs to use Xcode 12.2
928ca50b6f Tests: Teach RunCMake to ignore Xcode install_name_tool signature warnings
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5534
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The `install_name_tool` may warn:
install_name_tool: warning: changes being made to the file will
invalidate the code signature in: ...
Teach RunCMake to drop such incidental lines before matching against
expected output.
|
|/ |
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
54ef732b0c cmVisualStudio10TargetGenerator: Avoid GetFullPath on INTERFACE library
f06f4b517c cmTarget: Do not enforce CMP0111 on imported INTERFACE libraries
43c95df8fb Tests: Match RunCMake.CMP0111 stderr more strictly
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5530
|
| |
| |
| |
| |
| |
| |
| |
| | |
Fix logic added by commit 359c500a24 (cmTarget: Raise error if imported
target location is not set, 2020-08-08, v3.19.0-rc1~273^2) to exclude
INTERFACE libraries from the policy. They have no location.
Fixes: #21470
|
| | |
|
|\ \
| |/
|/|
| |
| |
| |
| | |
36921d2d23 Xcode: Fix custom command work-dir placeholders in "new build system"
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5527
|
| |
| |
| |
| |
| |
| |
| |
| | |
The placeholders for `CONFIGURATION` and `EFFECTIVE_PLATFORM_NAME` need
to be handled in the `WORKING_DIRECTORY` of custom commands just as we
already do for the `COMMAND`.
Fixes: #21483
|
|\ \
| |/
|/|
| |
| |
| |
| | |
67e2130c96 Makefiles: Fix CMAKE_EXPORT_COMPILE_COMMANDS crash with custom compile rule
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5521
|
| |
| |
| |
| | |
Fixes: #21471
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Revert commit 74b1c9fc8e (Explicitly specify language flag when source
LANGUAGE property is set, 2020-06-01, v3.19.0-rc1~722^2) and the lookup
tables from its two immediate ancestors. The purpose of that change was
to convert an explicit `LANGUAGE` source file property into an explicit
language specification compiler flag like `-x c`. This seems reasonable
since the property is documented as meaning "indicate what programming
language the source file is". It is also needed to help compilers deal
with non-standard source file extensions they don't recognize.
However, some projects have been setting `LANGUAGE C` on `.S` assembler
source files to mean "use the C compiler". Passing `-x c` for them
breaks the build because the `.S` sources are not written in C. These
projects should be updated to use `enable_language(ASM)`, for which
CMake often chooses the C compiler as the assembler when using
toolchains that support it (which would have to be the case for projects
using the approach).
Revert the change for now to preserve the old behavior for such projects.
We can re-introduce it with a policy in a future version of CMake.
Fixes: #21469
Issue: #14516, #20716
|
| |
|
| |
|
|
|
|
| |
Tests must be successful when multiple versions are installed.
|
|
|
|
|
|
|
| |
Defer adding this command until post-3.19 development so that it
has more time to mature before being included in a release.
Issue: #21385
|
|
|
|
|
|
|
|
|
| |
If --preset is specified with no path argument, use the current
directory as the source directory, the preset's binaryDir as the
binary directory, and don't issue the standard warning for no path
specified.
Fixes: #21386
|
|\
| |
| |
| |
| |
| |
| | |
a524bf3aa7 CheckSourceRuns: do not fail on unrecognized arguments
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5426
|
| |
| |
| |
| |
| |
| |
| | |
The old `check_X_source_runs` modules did not verify the arguments, so
we cannot start doing it now. Downgrade the hard error introduced in
commit 357e2ef429 (CheckSoureRuns: Add a unified way to check if a
source runs, 2020-09-14) via !5223 into a noisy warning.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
dd77dec18d VS: Don't compute CUDA options unless necessary
e9109dec36 Merge branch 'ninja-multi-per-config-sources' into release-3.18
7c0de4175b Merge branch 'cmake-E-cat-binary' into release-3.18
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5422
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In the following scenario (with 3.18 policies):
1. A CXX target is created.
2. CUDA language is enabled.
CMake 3.18 introduced CMP0104, which requires CUDA_ARCHITECTURES to be
set. Because the CXX target was created before CUDA was enabled it
wouldn't have it set. The Visual Studio generator would however end up
computing CUDA compile options for the CXX target, which would result in
a fatal error due to the policy violation.
There doesn't seem to be a reason to do this for targets that don't
actually use the CUDA language, so we can skip and generate the CXX
target just fine.
Fixes: #21341
|
| |\ \
| | | |
| | | |
| | | | |
Merge-request: !5430
|
|\ \ \ \
| |_|_|/
|/| | |
| | | |
| | | |
| | | |
| | | | |
b7d7eca66d CMakePresets.json: Rework how --preset argument is handled
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5416
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If a path argument with no -S or -B leads to a cache directory,
use that directory as the binary directory. Otherwise, use the
binary directory from the preset.
Fixes: #21311
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
d192918586 Modules: Do not implicitly add new functions via old Check Modules
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5424
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The conversion of Check<Lang>CompilerFlag, SourceCompiles, and
SourceRuns over to the new functions has the possibility of breaking
projects that had functions with those existing names.
To reduce the possibility of collisions we now have all the
legacy code call functions that start with `cmake_`, and users
will need to explicitly include the new modules to get the
non-prefixed versions
Fixes: #21359
|
|\ \ \ \ \
| |/ / / /
| | | | /
| |_|_|/
|/| | | |
|
| |\ \ \
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | | |
cd33bfcad5 add_custom_command: Properly recognize if sources depend on config
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5410
|