Commit Graph

28141 Commits

Author SHA1 Message Date
Ben Boeckel
fd0ba705ce add_custom_command: check if a relative path should be an in-source path
This still is broken for dependencies on generated paths where they get
generated to the source directory rather than the build directory
however, but there's no way to determine that is the case.

Fixes: #20194
2020-01-16 13:54:26 -05:00
Ben Boeckel
fd84f510f8 cmLocalGenerator: simplify the current source dir query 2020-01-16 13:54:25 -05:00
Brad King
b2edb72642 Merge topic 'nag-submodule'
f7f60ddcf9 Fortran: Add support for NAG Fortran submodules

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4229
2020-01-16 10:56:03 -05:00
Brad King
05738b5f21 Merge topic 'pch_job_pool'
97c124e30f Ninja: Add a separate job pool for PCH creation
ebd0b16ddb vim: Add target_precompile_headers command highlighting

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Cristian Adam <cristian.adam@gmail.com>
Merge-request: !4224
2020-01-16 10:33:48 -05:00
Dan Johnston
97c124e30f Ninja: Add a separate job pool for PCH creation
Add a `JOB_POOL_PRECOMPILE_HEADER` target property to specify the pool
name, and its associated `CMAKE_JOB_POOL_PRECOMPILE_HEADER` variable.

Fixes: #20217
2020-01-16 10:32:25 -05:00
Brad King
c0ac53b90c Merge topic 'file_download_filename'
c0da651c09 file(DOWNLOAD): Don't fail if given just a filename to write to
b56d429324 Tests: Fix CMake.FileDownload test failures not reported
3bc73803b4 Tests: Fix CMake.FileDownload test in presence of proxy
1352585301 Tests: Extend CMake.FileDownload test internal timeouts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4159
2020-01-16 10:26:04 -05:00
Kitware Robot
1e728706de CMake Nightly Date Stamp 2020-01-16 00:01:15 -05:00
Neil Carlson
f7f60ddcf9 Fortran: Add support for NAG Fortran submodules
They use a `.sub` extension.

Fixes: #20220
2020-01-15 14:12:22 -05:00
Brad King
6e6f5afd03 Merge topic 'unity-lang-filename'
274a6f3699 Unity Build: include language in generated source file name

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4223
2020-01-15 13:37:33 -05:00
Brad King
2272d256fb Merge topic 'ctest-timeout-on-pipe'
d1976cd1f2 CTest: Fix timeout when grandchild keeps pipes open
2f5eb1800b Tests: Add RunCMake.CTestTimeout test

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4217
2020-01-15 13:35:51 -05:00
Brad King
601af8f2b4 Merge topic 'avoid-getcwd'
22f38c0d6b cmake: avoid getcwd in `CollapseFullPath`

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4218
2020-01-15 13:32:52 -05:00
Brad King
f11b8342a0 Merge topic 'modernize-memory-management'
328f586be7 cmAlgorithms.h: remove obsolete helpers
f466cea3c9 cmMakefile: modernize memory management

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4215
2020-01-15 13:32:00 -05:00
Johnny Jazeix
c0da651c09 file(DOWNLOAD): Don't fail if given just a filename to write to
Fixes: #17969
2020-01-15 10:03:35 -05:00
Kitware Robot
e125d50ddf CMake Nightly Date Stamp 2020-01-15 00:01:17 -05:00
Kyle Edwards
93526fd913 Merge topic 'ninja_multi_config_support_cuda'
c7ac13e8ed CUDA: Mult-Config Ninja generator now supports CUDA

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4187
2020-01-14 15:11:35 -05:00
Cristian Adam
274a6f3699 Unity Build: include language in generated source file name
Fixes: #20206
2020-01-14 18:48:08 +01:00
Brad King
d1976cd1f2 CTest: Fix timeout when grandchild keeps pipes open
When a test's process creates its own child and exits, the grandchild
may keep pipes open.  Fix CTest logic to correctly timeout if the
grandchild does not exit and close the pipes before the timeout expires.
This was broken by commit b5e21d7d2e (CTest: Re-implement test process
handling using libuv, 2017-12-10, v3.11.0-rc1~117^2) which added an
unnecessary condition to the timeout handling.

Fixes: #20116
2020-01-14 10:29:05 -05:00
Brad King
a2a91eb141 Merge topic 'cross-ninja-improve-error-handling'
ca9100c5ce Ninja Multi-Config: Improve error handling when not doing cross-config build

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4214
2020-01-14 09:03:09 -05:00
Brad King
e74049b388 Merge topic 'vs-Fortran-link-flags' into release-3.16
a3c827b2ea VS: Add Fortran link flag table entries for /OPT:*

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4210
2020-01-14 09:01:21 -05:00
Brad King
c42ade942d Merge topic 'vs-Fortran-link-flags'
a3c827b2ea VS: Add Fortran link flag table entries for /OPT:*

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4210
2020-01-14 09:01:21 -05:00
Brad King
47dac86c08 Merge topic 'xcode-default-warnings'
b7b8331d68 Xcode: Drop hard-coded default warning flags like -Wmost

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4213
2020-01-14 08:59:37 -05:00
Tim Blechmann
22f38c0d6b cmake: avoid getcwd in CollapseFullPath
`CollapseFullPath` calls getcwd, which is a rather expensive system
call. we can replace it with `GetHomeOutputDirectory()` to save us from
the calling overhead
2020-01-14 18:20:39 +08:00
Marc Chevrier
328f586be7 cmAlgorithms.h: remove obsolete helpers 2020-01-14 11:03:09 +01:00
Marc Chevrier
f466cea3c9 cmMakefile: modernize memory management 2020-01-14 11:03:07 +01:00
Kitware Robot
2d5e9f3d8c CMake Nightly Date Stamp 2020-01-14 00:01:16 -05:00
Robert Maynard
c7ac13e8ed CUDA: Mult-Config Ninja generator now supports CUDA 2020-01-13 12:50:37 -05:00
Kyle Edwards
ca9100c5ce Ninja Multi-Config: Improve error handling when not doing cross-config build 2020-01-13 11:58:07 -05:00
Brad King
b7b8331d68 Xcode: Drop hard-coded default warning flags like -Wmost
The `-Wmost` flag was added by commit 97a51d2172 (ENH: add more xcode
stuff, 2005-01-27, v2.4.0~2396), along with a couple others, as part of
very early work on the Xcode generator.  I suspect that the flags were
part of Xcode's project creation wizard.  However, they are not
appropriate for CMake-based projects because we already have our own
mechanisms for specifying flags desired by the project or user.
Simply drop the flags.

Fixes: #13516
2020-01-13 11:45:23 -05:00
Pavel Liavonau
a3c827b2ea VS: Add Fortran link flag table entries for /OPT:*
Fixes: #20190
2020-01-13 11:14:00 -05:00
Brad King
4bac5b628e Merge topic 'target_compile_options-BEFORE-keyword'
2678e31053 target_compile_options: ensure BEFORE keyword is handled in all scopes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4203
2020-01-13 10:38:00 -05:00
Brad King
041e58d195 Merge topic 'ninja-cross-build-disable'
e8032e202e Ninja Multi-Config: Make cross-config building opt-in

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4205
2020-01-13 10:34:18 -05:00
Brad King
1631db97ec Merge topic 'std-string'
93e9d10c7f cmCacheManager: more members use std::string

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4186
2020-01-13 10:31:56 -05:00
Brad King
95e3c8b440 Merge topic 'refactoring-STL-erase_if'
968477517e Refactoring: suppress cmEraseIf in favor of cm::erase_if
348b60d19d STL support: add c++20 std::erase and std::erase_if functions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Rejected-by: Leonid Pospelov <pospelovlm@yandex.ru>
Merge-request: !4192
2020-01-13 10:31:05 -05:00
Brad King
9a5d399725 Merge topic 'out-of-dir-link-keyword'
09721ca078 target_link_libraries: Fix out-of-dir calls with debug/optimized keywords
c40229968c target_link_libraries: Add FIXME comment for out-of-dir genex list

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4202
2020-01-13 10:29:10 -05:00
Brad King
e8462a105e Merge topic 'fix-cpack-deb-description-file' into release-3.16
d491f34a5e CPack: Fix regression in DEB generator description

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4204
2020-01-13 10:23:26 -05:00
Brad King
e61c2ed9ac Merge topic 'fix-cpack-deb-description-file'
d491f34a5e CPack: Fix regression in DEB generator description

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4204
2020-01-13 10:23:26 -05:00
Brad King
b1a9d49a69 Merge topic 'objc-visibility-inlines' into release-3.16
7347e2f830 ObjC: Add VISIBLITY_INLINES_HIDDEN support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4199
2020-01-13 10:22:06 -05:00
Brad King
24d143e0f6 Merge topic 'objc-visibility-inlines'
7347e2f830 ObjC: Add VISIBLITY_INLINES_HIDDEN support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4199
2020-01-13 10:22:06 -05:00
Kitware Robot
e4c0711602 CMake Nightly Date Stamp 2020-01-13 00:01:10 -05:00
Kitware Robot
26e9e091c1 CMake Nightly Date Stamp 2020-01-12 00:01:08 -05:00
Kitware Robot
ea851fbe44 CMake Nightly Date Stamp 2020-01-11 00:01:18 -05:00
Marc Chevrier
2678e31053 target_compile_options: ensure BEFORE keyword is handled in all scopes
Fixes: #20200
2020-01-11 01:25:25 +01:00
Kyle Edwards
d491f34a5e CPack: Fix regression in DEB generator description
Fixes: #20102
2020-01-10 17:22:52 -05:00
Kyle Edwards
e8032e202e Ninja Multi-Config: Make cross-config building opt-in
Many users will want to use the Ninja Multi-Config generator like a
traditional Visual Studio-style multi-config generator, which doesn't
mix configurations - custom commands are built using target executables
of the same configuration the command is for. We do not want to force
these people to generate an N*N build matrix when they only need N*1,
especially if they have lots of targets. Add a new variable,
CMAKE_NINJA_CROSS_CONFIG_ENABLE, to opt-in to the cross-config build
matrix.
2020-01-10 16:31:29 -05:00
Kyle Edwards
78f9c9dd0e Merge topic 'nsis-headerimage'
ebfffc609e CPack/NSIS: Add option for setting MUI_HEADERIMAGE_BITMAP

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4157
2020-01-10 13:48:47 -05:00
Brad King
2ee6baef4f Merge topic 'ninja-postgen-commands'
fb18215904 Ninja: clean ninja metadata once generated

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Jan Niklas Hasse <jhasse@bixense.com>
Merge-request: !3316
2020-01-10 13:30:35 -05:00
Brad King
9fa8b7d5dd Merge topic 'cuda-device-link-only-cuda' into release-3.16
7ffa42288e Merge branch 'backport-3.15-cuda-device-link-only-cuda'
071c4f1a2a CUDA: Do not device link if target has no CUDA usage

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4191
2020-01-10 13:21:12 -05:00
Brad King
4a010ee52b Merge topic 'cuda-device-link-only-cuda'
01c90d76a1 Merge branch 'backport-3.16-cuda-device-link-only-cuda'
7ffa42288e Merge branch 'backport-3.15-cuda-device-link-only-cuda'
071c4f1a2a CUDA: Do not device link if target has no CUDA usage

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4191
2020-01-10 13:21:12 -05:00
Brad King
eb672da7d4 Merge topic 'objc-compiler-launcher'
f6ef6e5a73 Merge branch 'backport-3.16-objc-compiler-launcher'
1a9f6bad98 ObjC: Add _COMPILE_LAUNCHER support
a05b9d4239 ObjC: Add _COMPILE_LAUNCHER support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4189
2020-01-10 13:18:35 -05:00
Brad King
fc94de6897 Merge topic 'custom-target-FOLDER'
353405daef Add support for FOLDER target property to custom targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4193
2020-01-10 13:17:28 -05:00