Commit Graph

46767 Commits

Author SHA1 Message Date
Brad King 2dad438980 Merge topic 'ninja-multi-framework-dependency-autogen-fix' into release-3.17
7abc3d61ac Ninja Multi-Config: Fix issue with framework dependencies and Autogen

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4363
2020-02-18 11:20:56 -05:00
Brad King bf718ccd60 Merge topic 'git-config-with-spaces' into release-3.17
ef3194a6f8 ExternalProject: Quote each git --config option to handle spaces
40d1d29cfa Tests: Add missing ExternalProject smoke tests
afc8956765 Tests: Fix test_clean target missing some test directories

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4364
2020-02-17 10:39:46 -05:00
Kyle Edwards 7abc3d61ac Ninja Multi-Config: Fix issue with framework dependencies and Autogen
Fixes: #20345
2020-02-17 08:24:57 -05:00
Craig Scott ef3194a6f8 ExternalProject: Quote each git --config option to handle spaces
Fixes: #20354
2020-02-15 13:23:56 +11:00
Craig Scott 40d1d29cfa Tests: Add missing ExternalProject smoke tests 2020-02-15 13:23:46 +11:00
Craig Scott afc8956765 Tests: Fix test_clean target missing some test directories 2020-02-15 13:23:37 +11:00
Brad King b88a671f75 Merge topic 'doc-ascii' into release-3.17
c5d7c29137 Help: Replace UTF-8 apostrophe with ascii apostrophe

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kyle Edwards <kyle.edwards@kitware.com>
Merge-request: !4358
2020-02-12 15:04:41 -05:00
Brad King c5d7c29137 Help: Replace UTF-8 apostrophe with ascii apostrophe
Also replace UTF-8 graphical characters with simple dashes.

Fixes: #20349
2020-02-12 14:37:41 -05:00
Brad King 125f0451a9 CMake 3.17.0-rc1 v3.17.0-rc1 2020-02-12 10:32:47 -05:00
Brad King 6f2464b2ed Merge topic 'doc-cpack' into release-3.17
3af0b33ec6 Help: module CPack: Make internal hyperlink target more unique

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4353
2020-02-12 10:32:05 -05:00
Brad King 3af0b33ec6 Help: module CPack: Make internal hyperlink target more unique
We already have a `.. _targets:` in `Help/command/install.rst`.
2020-02-12 10:28:10 -05:00
Brad King 9c9ed28088 Merge topic 'doc-cpack' into release-3.17
59e9f33d78 Help: module CPack: New section on targets.
f33708eed9 Help: module CPack: add cross-reference to cpack-generators(7).
4949e1261a Help: module CPack. Explain usage of the build targets.
72eaeb41f5 Help: module CPack: correction: 2 config files are generated, not just 1
c35a9ff9c3 Help: CPack module: Correct the summary (configure, not build)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4352
2020-02-12 10:01:40 -05:00
Joachim Wuttke (o) 59e9f33d78 Help: module CPack: New section on targets.
To explain in full detail to what extent the targets package and
package_source are supported by different generators.
2020-02-12 09:49:26 -05:00
Brad King 42f77c7f69 Merge topic 'PrintSystemInformation' into release-3.17
1e9328a00d Help: CMakePrintSystemInformation.cmake: Minor corrections.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4351
2020-02-12 09:36:12 -05:00
Brad King 9fc86efe4a Merge topic 'cpack-ifw-qt-links' into release-3.17
e240371ab1 Help: CPackIFWGenerator: explain relation to CPackIWF
78779c6111 Help: Show external link only once per page; explain abbreviation QtIFW.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4348
2020-02-12 09:35:22 -05:00
Brad King 645474dba1 Merge topic 'ninja-multi-default-configs-fix' into release-3.17
46c836644d Ninja Multi-Config: Fix issue with "all" in CMAKE_NMC_DEFAULT_CONFIGS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4349
2020-02-12 09:15:54 -05:00
Brad King 10b834a3eb Merge topic 'file-CONFIGURE_DEPENDS-verify-CMP0009' into release-3.17
818ec34bdd file: GLOB_RECURSE VerifyGlobs.cmake should have CMP0009 set to new
b620dc566d file: Fix GLOB_RECURSE LIST_DIRECTORIES documentation regarding CMP0009
715f90bdd9 Tests: Perform minor cleanups in RunCMake.file test

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kyle Edwards <kyle.edwards@kitware.com>
Merge-request: !4342
2020-02-12 09:15:07 -05:00
Brad King 96ee8b7266 Merge topic 'install-default-fix' into release-3.17
9442ae5083 install: Fix regression when using default destinations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4340
2020-02-12 09:05:31 -05:00
Joachim Wuttke (o) f33708eed9 Help: module CPack: add cross-reference to cpack-generators(7). 2020-02-12 13:37:15 +01:00
Joachim Wuttke (o) 4949e1261a Help: module CPack. Explain usage of the build targets.
Explain the usage of the two new build targets, package and
package_source.
2020-02-12 13:23:08 +01:00
Joachim Wuttke (o) 72eaeb41f5 Help: module CPack: correction: 2 config files are generated, not just 1
Besides CPackConfig.cmake, the module also generates CPackSourceConfig.cmake.
2020-02-12 13:22:51 +01:00
Joachim Wuttke (o) c35a9ff9c3 Help: CPack module: Correct the summary (configure, not build)
Including CPack does not "build" installers.
It just *configures* them.
2020-02-12 12:37:48 +01:00
Joachim Wuttke (o) 1e9328a00d Help: CMakePrintSystemInformation.cmake: Minor corrections.
Punctuation.
"file" -> "module"
2020-02-12 12:34:08 +01:00
Kyle Edwards 46c836644d Ninja Multi-Config: Fix issue with "all" in CMAKE_NMC_DEFAULT_CONFIGS
Prior to this fix, CMAKE_NMC_DEFAULT_CONFIGS would inherit "all" from
the union of CMAKE_NMC_DEFAULT_BUILD_FILE_CONFIG and
CMAKE_NMC_CROSS_CONFIGS. This is inconsistent with the behavior of the
"all" target signifying CMAKE_NMC_CROSS_CONFIGS. Update "all" in
CMAKE_NMC_DEFAULT_CONFIGS to inherit only from CMAKE_NMC_CROSS_CONFIGS.
2020-02-11 10:49:54 -05:00
Joachim Wuttke (o) e240371ab1 Help: CPackIFWGenerator: explain relation to CPackIWF
* Make overview more focussed
* Explain the relation to CPackIFW
2020-02-11 10:47:26 -05:00
Joachim Wuttke (o) 78779c6111 Help: Show external link only once per page; explain abbreviation QtIFW. 2020-02-11 10:47:26 -05:00
Brad King 0db0b72156 Merge topic 'link-line-backtrace' into release-3.17
8752c1bd64 Merge branch 'backport-3.16-link-line-backtrace'
e756328434 Propagate backtraces from LINK_LIBRARIES through to link line items

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: Dennis Klein <d.klein@gsi.de>
Merge-request: !4344
2020-02-11 09:08:38 -05:00
Shane Parris 818ec34bdd file: GLOB_RECURSE VerifyGlobs.cmake should have CMP0009 set to new
In certain cases, rebuilds with CMake using the CONFIGURE_DEPENDS flag
with GLOB_RECURSE could result in a reconfigure loop due to CMP0009 not
being propogated to the generated VerifyGlobs.cmake script.

During the inital configuration phase, RecurseThroughSymlinksOn() is
called for recursive glob operations either by having the CMP0009 status
not set to NEW or by explicitly providing the FOLLOW_SYMLINKS flag. At
the end when the VerifyGlobs script is created, the FOLLOW_SYMLINKS flag
is written according to the final resolved form through a call to
GetRecurseThroughSymlinks(). Thus, setting CMP0009 to NEW in the
generated file is safe and allows correct behavior whether or not the
end user sets the policy status to NEW or OLD.
2020-02-11 08:45:35 -05:00
Shane Parris b620dc566d file: Fix GLOB_RECURSE LIST_DIRECTORIES documentation regarding CMP0009 2020-02-11 08:45:35 -05:00
Shane Parris 715f90bdd9 Tests: Perform minor cleanups in RunCMake.file test 2020-02-11 08:45:35 -05:00
Kyle Edwards 9442ae5083 install: Fix regression when using default destinations
In commit 9fc20a4f3e (install: Add sane set of defaults for DESTINATION
and file type parameters, 2018-11-02, v3.14.0-rc1~410^2~1), a regression
was introduced, in which an `install(TARGETS)` with a
RUNTIME/LIBRARY/ARCHIVE DESTINATION but no PUBLIC_HEADER/PRIVATE_HEADER
DESTINATION would then install the headers.  The old behavior did not do
this.  Restore the old behavior.

Fixes: #20326
2020-02-11 08:34:16 -05:00
Brad King a55d0c11d6 Merge topic 'ExternalProject-submodules-recurse' into release-3.17
0ba8010255 ExternalProject: Fix git submodule recursion on update

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4346
2020-02-11 08:26:35 -05:00
Brad King 00cd7269e1 Merge topic 'FindOpenMP-clang-windows' into release-3.17
ceb5ee4a7b FindOpenMP: Add support for Clang on Windows
2dbff623f9 FindOpenMP: Save flags/libs in cache entries each time they are detected

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4327
2020-02-11 08:22:49 -05:00
Brad King bdd4fb32ad Merge topic 'FindPython-reduce-resources-comsumption' into release-3.17
3dab4682f6 FindPython: reduces consumption of resources

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4338
2020-02-11 08:21:06 -05:00
Brad King 8e39e0c3e3 Merge topic 'swift-no-sdk-include' into release-3.17
5c2a92f44f Swift: Exclude SDK include paths

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4315
2020-02-11 08:20:03 -05:00
Brad King 783f4720f5 Merge topic 'FindMPI-fix-rerun' into release-3.17
b4d5ea8233 FindMPI: Preserve order of include directories on re-runs of CMake
8261ee3a9c FindMPI: Restore re-construction of include directories

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4341
2020-02-11 08:17:45 -05:00
Charis Marangos 0ba8010255 ExternalProject: Fix git submodule recursion on update
In commit 5bc6230741 (ExternalProject: Option to turn off recursive
update of git submodules, 2019-10-16) we implemented the feature in the
clone script written by `_ep_write_gitclone_script` but not in the
update script written by `_ep_write_gitupdate_script`.  Implement the
latter by factoring out a common helper to use in both places.

Fixes: #20335
2020-02-11 10:14:42 +11:00
Tim Hutton ceb5ee4a7b FindOpenMP: Add support for Clang on Windows
Fixes: #19404
2020-02-10 17:20:19 -05:00
Tim Hutton 2dbff623f9 FindOpenMP: Save flags/libs in cache entries each time they are detected 2020-02-10 17:20:19 -05:00
Brad King 8752c1bd64 Merge branch 'backport-3.16-link-line-backtrace' 2020-02-10 16:17:03 -05:00
Brad King e756328434 Propagate backtraces from LINK_LIBRARIES through to link line items
Since commit d4d0dd0f6a (cmLinkLineComputer: Add ComputeLinkLibs
overload with backtraces, 2019-09-13, v3.16.0-rc1~87^2~4), backtraces
have been collected by `ComputeLinkLibs` by looking back through the
link implementation libraries for one matching the text of the link line
item.  This is slow in projects with long link lines.

Instead, teach `cmComputeLinkDepends` and `cmComputeLinkInformation` to
carry backtrace information explicitly along with the text of each item.

Fixes: #20322
2020-02-10 16:11:38 -05:00
Brad King b4d5ea8233 FindMPI: Preserve order of include directories on re-runs of CMake
The fix in commit 5861c6d450 (FindMPI: Preserve include order when
extracting component directories, 2019-12-19) only works on the first
run of CMake in which we find MPI.  Extend the fix to save the compiler
wrapper's entire include path in our cache without splitting anything
out.  That way we can preserve the order when CMake re-runs.

Fixes: #20338
2020-02-10 11:14:42 -05:00
Brad King 8261ee3a9c FindMPI: Restore re-construction of include directories
The fix in commit 5861c6d450 (FindMPI: Preserve include order when
extracting component directories, 2019-12-19) only works on the first
run of CMake in which we find MPI.  It preserves the include directories
on the first run but still splits them up and saves the pieces in the
cache.  On future runs the pieces are not re-assembled, and we do not
know the order anyway.

Restore the re-assembly step so that at least all the include dirs are
available.  Leave preservation of the original order to later work.

Issue: #20338
2020-02-10 11:10:29 -05:00
Brad King 35e9fbec0b Merge topic 'ninja-multi-depfile' into release-3.17
67102d3252 Ninja Multi-Config: Add support for DEPFILE option in add_custom_command()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4334
2020-02-10 10:39:48 -05:00
Yauheni Khnykin 5c2a92f44f Swift: Exclude SDK include paths
Populate `CMAKE_Swift_IMPLICIT_INCLUDE_DIRECTORIES` with the macOS SDK's
include directory so that we filter such implicit directories out of
Swift targets.

Fixes: #19845
2020-02-10 10:32:37 -05:00
Marc Chevrier 3dab4682f6 FindPython: reduces consumption of resources
Stores more information in the cache to reduce the number
of sub-processes required on subsequent find_package calls.

Fixes: #20337
2020-02-10 12:41:04 +01:00
Kyle Edwards 67102d3252 Ninja Multi-Config: Add support for DEPFILE option in add_custom_command()
And give other generators a path forward to add support in the future.
2020-02-07 14:18:54 -05:00
Brad King ad17c37d34 Merge topic 'libarchive-win-codepage' into release-3.17
16e31523ba libarchive: Add support for UTF-8 locale on Windows
f7c54d2049 libarchive: Fix WideCharToMultiByte output buffer size

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4332
2020-02-07 10:23:44 -05:00
Brad King 135378fd18 Merge topic 'ninja-multi-default-config-fix' into release-3.17
1844be451e Ninja Multi-Config: Fix issue with CMAKE_NMC_DEFAULT_BUILD_FILE_CONFIG

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4331
2020-02-07 09:26:36 -05:00
Brad King 92faf1aeb4 Merge topic 'ninja-multi-no-minsizerel' into release-3.17
9e219de4fb Ninja Multi-Config: Don't include MinSizeRel by default

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !4326
2020-02-07 09:17:26 -05:00