Commit Graph

29610 Commits

Author SHA1 Message Date
Kitware Robot
b3adccc8ed CMake Nightly Date Stamp 2020-10-02 00:01:13 -04:00
Brad King
2e8b85b040 Merge topic 'macos-arm64'
b6c60f14b6 macOS: Default to arm64 architecture on Apple Silicon hosts
383e81aa60 Tests: Teach RunCMake to ignore Xcode internal objc warnings
8f75912176 Tests: Enable Assembler test case when CMAKE_OSX_ARCHITECTURES has one value

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5291
2020-10-01 08:45:13 -04:00
Brad King
cb8c51a08e Merge topic 'cmake-gui-reference-manual'
0fe2ee3d43 CMake GUI: Add "CMake Reference Manual" help item
391ff1ec51 Refactor: Modernize cmSystemTools::FindCMakeResources()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5302
2020-10-01 08:17:11 -04:00
Brad King
436b57ccb2 Merge topic 'genexpr-for-mfc-flag'
c1f1eaf7a4 VS: Teach CMAKE_MFC_FLAG to support generator expressions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5283
2020-10-01 07:59:33 -04:00
Brad King
b1e1cb2d0d Merge topic 'msvc_implib'
7bda9a7fc7 VS: Make ImportLibary generation optional

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5282
2020-10-01 07:58:09 -04:00
Brad King
95aa5c40cf Merge topic 'find_package-check-dir'
2ff1693066 find_package: avoid showing files as directories when searching config files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5301
2020-10-01 07:57:23 -04:00
Kitware Robot
47b569a858 CMake Nightly Date Stamp 2020-10-01 00:01:15 -04:00
Kyle Edwards
0fe2ee3d43 CMake GUI: Add "CMake Reference Manual" help item
And switch the ordering of "Help" and "About".
2020-09-30 16:17:31 -04:00
Kyle Edwards
391ff1ec51 Refactor: Modernize cmSystemTools::FindCMakeResources()
Use cmStrCat(), cmStrLen(), and cmHasLiteralSuffix().
2020-09-30 16:13:10 -04:00
Andrey Starodubtsev
c1f1eaf7a4 VS: Teach CMAKE_MFC_FLAG to support generator expressions 2020-09-30 12:24:13 -04:00
Mark Jansen
7bda9a7fc7 VS: Make ImportLibary generation optional
Fixes: #21180
2020-09-30 12:11:54 -04:00
Brad King
b6c60f14b6 macOS: Default to arm64 architecture on Apple Silicon hosts
Detect `arm64` hardware using a method that pierces Rosetta.  If
`CMAKE_OSX_ARCHITECTURES` is not set, pass explicit flags to the
toolchain to use `arm64` instead of letting the toolchain pick.

Fixes: #20989
2020-09-30 11:58:44 -04:00
Brad King
d91c3e33cb Merge topic 'cmake_language-DEFER'
e8b0359a43 cmake_language: Add signature to DEFER calls to later times
9880549405 cmake_language: Make all errors fatal
4f33f3dcff cmake_language(CALL): Accept empty ${var} expansions
4ebe9c4ce1 cmake_language(EVAL): Factor out internal helper
78ff24a3a7 Help: Use singular placeholder name in cmake_language signature
edd60d4419 Tests: Simplify RunCMake.cmake_language invalid command cases
1a5bf8245e cmMakefile: Clarify name of internal list file run method

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5262
2020-09-30 11:55:33 -04:00
sanchayanghosh
2ff1693066 find_package: avoid showing files as directories when searching config files
Teach `cmFileListGeneratorBase::Consider` to skip non-directories so
that all call sites get the check.

Fixes: #21212
2020-09-30 11:50:23 -04:00
Craig Scott
f002c1cfc7 Merge topic 'find-package-check-empty-version-range'
212b0afb66 find_package: raise error on empty version range

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5294
2020-09-30 08:22:49 -04:00
Brad King
1c3244ca30 Merge topic 'vs-mixed-lang-std'
b325484928 VS: Fix C language standard in target with C++ sources

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5295
2020-09-30 08:10:34 -04:00
Brad King
c297b61779 Merge topic 'update-kwsys'
2132f2d49b Merge branch 'upstream-KWSys' into update-kwsys
eaf37ffde9 KWSys 2020-09-29 (4a19ed43)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5293
2020-09-30 08:09:54 -04:00
Kitware Robot
e3ae4061cd CMake Nightly Date Stamp 2020-09-30 00:02:17 -04:00
Brad King
e8b0359a43 cmake_language: Add signature to DEFER calls to later times
Fixes: #19575
2020-09-29 17:12:33 -04:00
Brad King
9880549405 cmake_language: Make all errors fatal 2020-09-29 10:00:24 -04:00
Brad King
4f33f3dcff cmake_language(CALL): Accept empty ${var} expansions
Factor out an internal helper.  Generalize partial argument expansion
and call the helper on a clean boundary between raw arguments.
2020-09-29 10:00:24 -04:00
Brad King
4ebe9c4ce1 cmake_language(EVAL): Factor out internal helper 2020-09-29 10:00:24 -04:00
Kyle Edwards
af048185b1 Merge topic 'cmake-gui-environment'
85f5009d27 CMake GUI: Add environment editor
d6c051c126 Tests: Add some basic configure tests for the CMake GUI
7cd95d9996 Tests: Add CatchShow helper for CMake GUI tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5270
2020-09-29 09:51:22 -04:00
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