Commit Graph

1825 Commits

Author SHA1 Message Date
Brad King
bf0fd71ad1 Merge topic 'preset-no-comments'
06e16ea008 Merge branch 'backport-3.19-preset-no-comments' into preset-no-comments
afaa69f5b3 Tests: Remove comments from CMakePresetsTest/Good.json.in
4a92277f45 Revert "Help: Document JSON comment support in cmake-presets(7)"
431dd59b5e CMakePresets.json: Remove undocumented support for comments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5853
2021-02-24 09:42:00 -05:00
Kyle Edwards
4a92277f45 Revert "Help: Document JSON comment support in cmake-presets(7)"
Revert commit 8f1e607ed9 (Help: Document JSON comment support in
cmake-presets(7), 2021-02-18).  The support for comments was a mistake
when the feature was implemented in 3.19, and is being removed.
2021-02-24 09:33:50 -05:00
Brad King
6fa3647023 ctest: Add support for '--prefix=<prefix>' form of the argument
The main `cmake --preset` argument for configure presets supports both
forms, so support it for `ctest --preset` too.

Fixes: #21855
2021-02-23 09:22:00 -05:00
Brad King
3357d37761 cmake: Add support for '--build --prefix=<prefix>' form of the argument
The main `cmake --preset` argument for configure presets supports both
forms, so support it for `cmake --build --preset` too.

Issue: #21855
2021-02-23 09:11:44 -05:00
Brad King
2f13fdef0a cmake: Document '--preset <preset>' form of the argument
This form already works.  Document it and add tests.

Issue: #21855
2021-02-23 09:11:32 -05:00
Brad King
b3e39a133f Merge topic 'list-index-arg-parsing'
79eaa908dc cmListCommand: add a policy for failing on invalid indicies
1f1fdff7fa cmListCommand: prefer strtol to atoi
9934a97642 cmListCommand: refactor out index argument parsing

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Michael Hirsch, Ph.D. <michael@scivision.dev>
Merge-request: !5817
2021-02-19 09:40:28 -05:00
Brad King
3412d95bf7 Merge topic 'docpreset'
87b170d9f9 Help: Add build and test preset to examples in cmake-presets(7)
3f8cf006cb Help: Clarify preset name conflict rules in cmake-presets(7)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5823
2021-02-19 09:34:35 -05:00
Michael Hirsch
87b170d9f9 Help: Add build and test preset to examples in cmake-presets(7)
Co-Author: Brad King <brad.king@kitware.com>
2021-02-18 14:53:28 -05:00
Michael Hirsch
3f8cf006cb Help: Clarify preset name conflict rules in cmake-presets(7) 2021-02-18 14:53:28 -05:00
Brad King
98ae005137 Merge topic 'preset-json-comments' into release-3.20
8f1e607ed9 Help: Document JSON comment support in cmake-presets(7)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5830
2021-02-18 14:52:26 -05:00
Brad King
b8e4e524d3 Merge topic 'preset-json-comments'
8f1e607ed9 Help: Document JSON comment support in cmake-presets(7)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5830
2021-02-18 14:52:26 -05:00
Brad King
91b4c27d8a Merge topic 'doc-presets'
47ab2d4d2e Help: Clarify role of binaryDir inheritance in cmake-presets(7)
0e3c361f77 Help: Link to tool-specific preset arguments from cmake-presets(7)
dd6165fbd4 Help: Mention version 2 in cmake-presets(7)
cdbd1ae64b Utilities/Sphinx: Avoid converting -- to an en-dash

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5829
2021-02-18 14:35:36 -05:00
Michael Hirsch
8f1e607ed9 Help: Document JSON comment support in cmake-presets(7) 2021-02-18 11:47:40 -05:00
Brad King
47ab2d4d2e Help: Clarify role of binaryDir inheritance in cmake-presets(7)
Suggested-by: Michael Hirsch
2021-02-18 11:01:29 -05:00
Brad King
0e3c361f77 Help: Link to tool-specific preset arguments from cmake-presets(7)
Fixes: #21835
2021-02-18 10:55:10 -05:00
Brad King
dd6165fbd4 Help: Mention version 2 in cmake-presets(7)
Version 2 is required for build and test presets.

Fixes: #21829
2021-02-18 10:55:10 -05:00
Ben Boeckel
79eaa908dc cmListCommand: add a policy for failing on invalid indicies 2021-02-18 08:30:55 -05:00
Brad King
4388c3f717 Merge topic 'DOC-SelectLibraryConfiguration'
b6445ddeda Help: Add SelectLibraryConfigurations example to cmake-developer(7)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex <leha-bot@yandex.ru>
Merge-request: !5815
2021-02-18 08:21:50 -05:00
Johan Andruejol
b6445ddeda Help: Add SelectLibraryConfigurations example to cmake-developer(7) 2021-02-17 14:27:52 -05:00
Sam Freed
7fd6bb6895 presets: Remove unintended rerunFailed option from test presets
This was accidentally included after discussion in #21391 had decided to
leave it out.  It was never included in a release.

Issue: #21391
2021-02-15 10:52:32 -05:00
Brad King
9cddaad940 AddFileDependencies: Deprecate this unnecessary module
Document that one can call `set_property` directly instead.
2021-02-08 12:44:37 -05:00
Sam Freed
4f4f2028b8 Help: Add documentation for buildPresets and testPresets 2021-02-01 07:53:36 -08:00
Sam Freed
166dc3c46b Help: Add buildPresets and testPresets to JSON schema 2021-01-27 10:20:12 -08:00
Brad King
c2dc7e0f53 Help: Convert genex documentation to sphinx domain objects
This makes them linkable, indexed, and enables cross-references.
2021-01-18 12:35:41 -05:00
Brad King
778321beb4 Help: Remove extra blank line from cmake-generator-expressions(7) 2021-01-18 12:35:41 -05:00
Brad King
3115cc3895 Help: Fix layout of architecture/toolset fields in cmake-presets(7) manual
These two fields share common documentation and so should be a single
entry in the definition list.

Fixes: #21642
2021-01-14 13:44:50 -05:00
Brad King
69dbaba6fb Help: Add section heading for configure presets in cmake-presets(7)
Cross-reference it from the main `configurePresets` field.
This removes an extra layer of indentation and makes the
section linkable.
2021-01-14 13:40:16 -05:00
Brad King
501bcb6327 Help: Add section heading for macro expansion in cmake-presets(7)
Also cross-reference it from the prose.
2021-01-14 13:40:04 -05:00
Brad King
1c4c742f40 Help: Remove unnecessary indentation in cmake-presets(7)
The entire "Format" section had an extra 2 spaces of indentation.
2021-01-14 13:40:02 -05:00
Brad King
cc47f4ebf9 Merge topic 'fileapi-toolchains'
6418dabb87 Tests: Add test for toolchains-v1 File API object
1c5bd1bed5 Tests: Add toolchains kind to capabilities test
f72bb2ee0d Help: Add documentation for "toolchains" object kind
bb069c0857 cmFileAPI: Add "toolchains" object kind.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5678
2021-01-14 13:02:54 -05:00
Ben McMorran
6418dabb87 Tests: Add test for toolchains-v1 File API object 2021-01-12 15:43:38 -08:00
Ben McMorran
f72bb2ee0d Help: Add documentation for "toolchains" object kind 2021-01-12 11:21:28 -08:00
Anakin Skywalker
cc32eeae17 Help: Clarify standard module variable naming
Co-Authored-By: Craig Scott <craig.scott@crascit.com>
2021-01-12 23:00:34 +11:00
Shannon Booth
a742b5d137 CMAKE_EXPORT_COMPILE_COMMANDS: allow configuration per target
The new target property `EXPORT_COMPILE_COMMANDS` associated with the
existing global variable can be used to optionally configure targets for
their compile commands to be exported.

Fixes: #19462
2021-01-06 11:51:39 +13:00
Brad King
05a59f37ab Merge topic 'ctest-test-dir'
dbcf86d24d Ctest: Support build tree on command line

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5623
2020-12-21 10:04:58 -05:00
Brad King
6d7621baea Merge topic 'qt-autogen-per-config'
20e4db4a66 cmGeneratorTarget: Make GetConfigCommonSourceFiles Xcode-specific
92d7b456e5 Autogen: Add support for per-config sources
3ffebbaefb Tests/QtAutogen: Forward build configuration in multi-config generators

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5624
2020-12-17 13:22:40 -05:00
Asit Dhal
dbcf86d24d Ctest: Support build tree on command line
Fixes: #21268
2020-12-17 05:01:03 +01:00
Brad King
92d7b456e5 Autogen: Add support for per-config sources
Fixes: #20682
2020-12-16 14:04:30 -05:00
Craig Scott
d2456b29f4 Merge topic 'unity-anon-ns'
0fe9c40494 Unity Build: Add option for generating per-file unique id

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4784
2020-12-16 07:40:41 -05:00
Brad King
34469a4f71 Merge topic 'custom-command-output-genex-nmc'
1526ae3aba Tests: Add cases for Ninja Multi-Config cross-config custom commands
dcf9f4d2f7 Ninja Multi-Config: Add support for cross-config custom commands
15467f12f7 cmLocalGenerator: Adopt custom target 'force' output name generation
7b64b0cd5a cmLocalGenerator: Refactor custom command generator construction
d29da8ed3e cmMakefile: Simplify custom target 'force' output name generation
2b1cc175ee Help: Clarify version adding add_custom_{command,target} OUTPUT genex support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5612
2020-12-16 06:20:39 -05:00
Brad King
67f12dd1d6 Merge topic 'ispc_control_header_suffixes'
c9a50f3556 ISPC: Generated Headers suffix configurable with a better default

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5597
2020-12-15 07:40:34 -05:00
Kyle Edwards
dcf9f4d2f7 Ninja Multi-Config: Add support for cross-config custom commands
Co-Author: Brad King <brad.king@kitware.com>
2020-12-15 07:01:21 -05:00
Stephen Kelly
0fe9c40494 Unity Build: Add option for generating per-file unique id
Fixes: #21477
2020-12-15 22:26:09 +11:00
Robert Maynard
c9a50f3556 ISPC: Generated Headers suffix configurable with a better default
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.
2020-12-14 13:13:09 -05:00
Brad King
23df57a3a7 Merge topic 'apple-silicon-host-arch' into release-3.19
b7f0327dcd Tests: Cover macOS host architecture selection on Apple Silicon hosts
5f882f6ce5 macOS: Offer control over host architecture on Apple Silicon hosts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5589
2020-12-11 13:05:34 -05:00
Brad King
794aa36b1f Merge topic 'apple-silicon-host-arch'
b7f0327dcd Tests: Cover macOS host architecture selection on Apple Silicon hosts
5f882f6ce5 macOS: Offer control over host architecture on Apple Silicon hosts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5589
2020-12-11 13:05:34 -05:00
Brad King
3765a415df Merge branch 'master' into doc-3_19_release-fixes 2020-12-11 10:39:14 -05:00
Craig Scott
b4c02a0a1d Help: Re-sort indexes in the manuals 2020-12-11 11:19:04 +11:00
Brad King
5f882f6ce5 macOS: Offer control over host architecture on Apple Silicon hosts
Since commit b6c60f14b6 (macOS: Default to arm64 architecture on Apple
Silicon hosts, 2020-09-28, v3.19.0-rc1~63^2) we use `sysctl` to detect
that we are running on Apple Silicon in a way that pierces Rosetta.
This always sets `CMAKE_HOST_SYSTEM_PROCESSOR` to be `arm64` on such
hosts.  However, macOS offers strong support for running processes under
an emulated `x86_64` architecture.

Teach CMake to select either `arm64` or `x86_64` as the host
architecture on Apple Silicon based on the architecture of its own
process.  When CMake is built as a universal binary, macOS will select
whichever slice (architecture) is appropriate under the user's shell,
and `CMAKE_HOST_SYSTEM_PROCESSOR` will match.

Also offer a `CMAKE_APPLE_SILICON_PROCESSOR` variable and environment
variable to provide users with explicit control over the host
architecture selection regardless of CMake's own architecture.

Finally, if `CMAKE_OSX_ARCHITECTURES` is not set, pass explicit flags to
the toolchain to use selected host architecture instead of letting the
toolchain pick.

Fixes: #21554
2020-12-10 12:08:13 -05:00
Brad King
a2f98803f0 Merge topic 'android-docs'
1a4b1cca1c Android: update documentation for NDK integration

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5586
2020-12-09 09:15:13 -05:00