Brad King
b325484928
VS: Fix C language standard in target with C++ sources
...
Add C-language standard to target-wide C++ settings.
Fixes : #21195
2020-09-29 07:26:36 -04:00
Marc Chevrier
212b0afb66
find_package: raise error on empty version range
2020-09-29 13:06:09 +02:00
Brad King
1a5bf8245e
cmMakefile: Clarify name of internal list file run method
2020-09-29 06:03:15 -04:00
Brad King
39677de5e2
Merge topic 'simplify-execution-context'
...
07c1bdda3d cmMakefile: Replace GetExecutionFilePath with the top of the Backtrace
727ed0c403 cmMakefile: Simplify ExpandArguments signature
e456dae669 cmConditionEvaluator: Remove extra copy of execution context
0100a4943e cmMakefile: Remove now-unused overload of GetBacktrace
dc49abcb89 if,while: Clarify condition backtrace construction
68af831505 cmMakefile: Inline GetExecutionContext at call sites
280f3918f3 cmMakefile: Simplify GetExecutionContext implementation
0e59b45dfc cmListFileCache: Add explicit constructors
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !5276
2020-09-29 05:58:25 -04:00
Brad King
1382002ae2
Merge topic 'ctest_launch_report_make_errors'
...
a8b7dd061b ctest: improve Unicode support for launchers
ab9ad2a6a0 ctest: report make-level errors to CDash when using launchers
56e4e942d2 ctest: split launcher XML writer into separate class
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: Zack Galbreath <zack.galbreath@kitware.com >
Merge-request: !5266
2020-09-29 05:51:25 -04:00
Brad King
ede7a32ef6
Merge topic 'refactor-cmprop'
...
c88dde2869 cmGeneratorTarget: internal refactoring
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !5289
2020-09-29 05:50:45 -04:00
Brad King
275c7be867
Merge topic 'return-cmprop'
...
d298ae7470 cmake::GetCacheDefinition: Return cmProp
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !5288
2020-09-29 05:49:48 -04:00
Brad King
a456dd6c26
Merge topic 'system_include_dir_caching_pre_lang'
...
b6418155f3 cmGeneratorTarget: Include Cache now occurs per language+config
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !5274
2020-09-29 05:48:11 -04:00
Brad King
2132f2d49b
Merge branch 'upstream-KWSys' into update-kwsys
...
# By KWSys Upstream
* upstream-KWSys:
KWSys 2020-09-29 (4a19ed43)
2020-09-29 05:22:13 -04:00
Kitware Robot
cf2f440658
CMake Nightly Date Stamp
2020-09-29 00:01:15 -04:00
vvs31415
c88dde2869
cmGeneratorTarget: internal refactoring
2020-09-28 10:37:25 -07:00
Zack Galbreath
a8b7dd061b
ctest: improve Unicode support for launchers
...
Fix launcher behavior for international characters in the path on Windows.
2020-09-28 13:13:52 -04:00
Zack Galbreath
ab9ad2a6a0
ctest: report make-level errors to CDash when using launchers
...
Fixes : #19545
2020-09-28 13:13:52 -04:00
Zack Galbreath
56e4e942d2
ctest: split launcher XML writer into separate class
...
This refactor will allow us to more easily add additional warnings and errors
to builds that use launchers.
2020-09-28 13:13:52 -04:00
vvs31415
d298ae7470
cmake::GetCacheDefinition: Return cmProp
2020-09-28 09:32:22 -07:00
Brad King
07c1bdda3d
cmMakefile: Replace GetExecutionFilePath with the top of the Backtrace
...
The execution file path stack and the backtrace stack are kept in sync.
At all call sites of `GetExecutionFilePath`, the execution file path
matches the path in the context at the top of the backtrace stack.
2020-09-28 09:49:08 -04:00
Brad King
727ed0c403
cmMakefile: Simplify ExpandArguments signature
...
The only call sites that pass the explicit file name argument are in
function blocker `ArgumentsMatch` methods for `function` and `macro`.
We already ensure that they are balanced within a file scope, and the
RAII helpers `BuildsystemFileScope` and `ListFileScope` ensure that the
backtrace and execution list file stacks unwind to the matching level.
Therefore we can assume that the file name where we are checking for
matching arguments matches starting file name where those arguments
first appeared, and do not need to pass it explicitly.
2020-09-28 09:49:08 -04:00
Brad King
e456dae669
cmConditionEvaluator: Remove extra copy of execution context
...
The execution context passed to the constructor always matches the top
of the backtrace, so the former can be removed in favor of using only
the latter.
2020-09-28 09:49:08 -04:00
Brad King
0100a4943e
cmMakefile: Remove now-unused overload of GetBacktrace
2020-09-28 09:49:08 -04:00
Brad King
dc49abcb89
if,while: Clarify condition backtrace construction
...
Evaluation of the `elseif`, `else`, and `while` commands takes place
during function blocker evaluation before any actual command execution
takes place. Therefore they do not have an entry in the backtrace
stack. Each of their implementations needs to construct an extra
backtrace entry to use in error messages and such. Each of them used a
slightly different approach due to evolution over time. Clean up their
construction of the extra backtrace entry and use a named variable to
contain it for clarity.
2020-09-28 09:49:08 -04:00
Brad King
68af831505
cmMakefile: Inline GetExecutionContext at call sites
...
The method only had one line, and its implementation is more clear
at the call sites than the method name.
2020-09-28 09:49:07 -04:00
Brad King
280f3918f3
cmMakefile: Simplify GetExecutionContext implementation
...
This method takes the function name and line from the top of the
current backtrace and then gets the file path from the state's
`GetExecutionListFile`. This exactly matches what the `cmMakefileCall`
constructor does to create the top of the current backtrace anyway,
so we can just take that directly.
2020-09-28 09:49:07 -04:00
Kyle Edwards
85f5009d27
CMake GUI: Add environment editor
2020-09-28 09:46:35 -04:00
Brad King
0e59b45dfc
cmListFileCache: Add explicit constructors
...
In order to construct with an initializer list in pure C++11, add
the explicit constructors.
2020-09-28 09:46:34 -04:00
Kyle Edwards
071755c3ef
Merge topic 'cmake-gui-slot-connections'
...
ab8f6fdd8c CMake GUI: Modernize signal-slot connections
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: Ben Boeckel <ben.boeckel@kitware.com >
Merge-request: !5278
2020-09-28 09:01:47 -04:00
Brad King
13e0a0d74e
Merge topic 'libuv-qnx'
...
f9e950d4c5 libuv: Add support for building for QNX within CMake
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !5200
2020-09-28 08:39:54 -04:00
Kitware Robot
97626b1dec
CMake Nightly Date Stamp
2020-09-28 00:01:22 -04:00
Kyle Edwards
ab8f6fdd8c
CMake GUI: Modernize signal-slot connections
...
Qt5 supports passing function pointers to QObject::connect(), and
prefers this over SIGNAL() and SLOT(). Modernize the connections,
stop using a deprecated signal from QComboBox, and modernize a few
QKeySequence's.
2020-09-27 12:06:54 -04:00
Kitware Robot
558ce94016
CMake Nightly Date Stamp
2020-09-27 00:01:10 -04:00
Kitware Robot
f68a21dc5c
CMake Nightly Date Stamp
2020-09-26 00:01:12 -04:00
Robert Maynard
b6418155f3
cmGeneratorTarget: Include Cache now occurs per language+config
...
Previously only occurred per config which broke per-language
system includes.
2020-09-25 14:00:06 -04:00
Brad King
7a4d84d8d2
Merge topic 'find_package_module_mode_print_debug_message'
...
b423a20ce1 FindPackage: Provide better debug message when <PKG_FOUND> is false
a7acafc977 FindPackage: find_package(MODULE) respects CMAKE_FIND_DEBUG_MODE
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !5256
2020-09-25 12:26:10 -04:00
Brad King
f0592b3497
Merge topic 'cuda_clang_separable'
...
c63fe01835 CUDA: Clang separable compilation
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !5221
2020-09-25 12:25:30 -04:00
Brad King
7b4861b082
Merge topic 'xcode-12-new-build-system'
...
0a67c3ebe1 Xcode: Remove dependency Makefile hacks under the "new build system"
c6c7f6fbeb Xcode: Remove remnants of ancient XCODE_DEPEND_HELPER utility target
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !5267
2020-09-25 12:23:48 -04:00
Elad Lahav
f9e950d4c5
libuv: Add support for building for QNX within CMake
2020-09-25 11:53:44 -04:00
Kitware Robot
0cd1ef0932
CMake Nightly Date Stamp
2020-09-25 00:01:17 -04:00
Raul Tambre
c63fe01835
CUDA: Clang separable compilation
...
For NVCC the compiler takes care of device linking when passed the "-dlink"
flag.
Clang doesn't support such magic and requires the buildsystem to do the work
that NVCC does behind the scenes.
The implementation is based on Bazel's device linking documentation:
https://github.com/tensorflow/tensorflow/blob/7cabcdf073abad8c46e9dda62bb8fa4682d2061e/third_party/nccl/build_defs.bzl.tpl#L259
Closes : #20726
2020-09-24 15:19:54 -04:00
Brad King
0ff74958f4
Merge topic 'cmake-gui-tests'
...
1dcc569828 gitlab-ci: Add GUI testing to each OS
4c6e5cd0fa Tests: Add some basic tests for CMake GUI
41e223deb3 CMake GUI: Split up into libraries, add test shim
b7995b62f0 QCMakeCacheView: Default to nullptr for parent
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !5224
2020-09-24 15:15:19 -04:00
Brad King
9aa93937f9
Merge topic 'obj-lib-per-config-source'
...
2f76e7429b OBJECT libraries: Properly recognize if sources depend on configuration
d575ecc9de cmGeneratorTarget: Better name for internal variable
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !5252
2020-09-24 15:10:04 -04:00
Brad King
0a67c3ebe1
Xcode: Remove dependency Makefile hacks under the "new build system"
...
The original Xcode build system did not properly re-link targets that consumed
object libraies. We worked around that with a post-build command on the object
libraries themselves that removed their consumers if out of date. The "new
build system" does not appear to need such help, so drop the workaround.
2020-09-24 14:53:28 -04:00
Brad King
c6c7f6fbeb
Xcode: Remove remnants of ancient XCODE_DEPEND_HELPER utility target
...
The target has not been generated since commit d92d51429e (BUG: fix for bug
6193, fix xcode depend helper, 2008-01-10, v2.6.0~553). Remove it from
the list of special targets.
2020-09-24 14:53:22 -04:00
Craig Scott
ac5195c408
Merge topic 'find_package-version-range'
...
5b3356263c CMakePackageConfigHelpers: Add version range support
6bfc442fde FPHSA: add support of version range
d7df81067b find_package: Add support of version range
09095dbcd2 cmFindPackageCommand: Refactoring
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: Michael Hirsch, Ph.D. <michael@scivision.dev >
Merge-request: !5226
2020-09-24 07:29:03 -04:00
Kitware Robot
d18c564210
CMake Nightly Date Stamp
2020-09-24 00:01:12 -04:00
Kyle Edwards
41e223deb3
CMake GUI: Split up into libraries, add test shim
2020-09-23 14:10:40 -04:00
Kyle Edwards
b7995b62f0
QCMakeCacheView: Default to nullptr for parent
2020-09-23 14:10:40 -04:00
Brad King
d827fdb6f9
Merge topic 'separate_arguments-program'
...
d832c1cc7d separate_arguments: add option PROGRAM
f4c21d4953 separate_arguments: refactoring
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !5253
2020-09-23 12:05:26 -04:00
Brad King
869d6c82a0
Merge topic 'install-EXPORT-source-CONFIG'
...
bf114602da install(EXPORT): Fix exporting target w/ source named using CONFIG genex
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !5240
2020-09-23 11:58:02 -04:00
Brad King
145730c746
Merge topic 'binary-dir-props'
...
f2daa025e3 {get,set}_property: Add support for referencing binary directories
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: Ben Boeckel <ben.boeckel@kitware.com >
Merge-request: !5254
2020-09-23 10:22:56 -04:00
Deniz Bahadir
2f76e7429b
OBJECT libraries: Properly recognize if sources depend on configuration
...
Fixes : #21198
2020-09-23 10:05:55 -04:00
Brad King
f2daa025e3
{get,set}_property: Add support for referencing binary directories
...
Index directories by their binary directory path in addition to their
source directory path.
Fixes : #19262
2020-09-23 09:25:42 -04:00