Bastien Montagne
3a9d56d2c7
Ninja: Add support for per-source JOB_POOL_COMPILE property
...
This commit allows to override a global or target-wide 'job pool'
property on a per-source basis.
It modifies the Ninja generator to first look into the source's
properties, and only use the target properties as a fallback.
The new `source` parameter to
`cmNinjaTargetGenerator::addPoolNinjaVariable` may be null, e.g. when
the function is called in context where there is no source (e.g. a
linking task).
Closes : #23994
2025-07-16 21:16:24 +02:00
Bastien Montagne
44bf494fe6
Help: Global SPLIT_JOBS: reformat usages into a list.
2025-07-16 20:31:32 +02:00
Alex Turbov
9784834b4c
Help: Use *.rst
extension for included files
...
So, editor(s) can correctly highlight the RST syntax in the included files.
2025-04-14 03:07:46 +04:00
Peter Kokot
e9b86f5618
CMakeFindPackageMode: Move documentation to --find-package option
...
- This moves the CMakeFindPackageMode internal module documentation to
the --find-package option as this module itself cannot be used by the
project.
- Additionally, some links added.
- The `QUIET` variable renamed in documentation to `SILENT` to be
effective according to the current code.
2025-03-27 15:29:36 +01:00
Peter Kokot
99546ef425
Help: Improve DEBUG_CONFIGURATIONS documentation and usage
...
This adds a short example demonstrating how to set this property.
Additionally, a paragraph is added to the target_link_libraries() and
its debug/optimized keywords to mention that imported targets with
IMPORTED_CONFIGURATIONS property may provide better alternative for
linking.
2025-03-15 15:47:51 +01:00
Martin Duffy
f1a80380ae
Help: Improve language in INSTALL_PARALLEL doc
...
Remove unneeded comma, clarify and link reference to Ninja generators, and substitute ``ON`` for enabled.
2025-01-27 09:41:59 -05:00
Peter Kokot
8ad171553b
Help: Add _See Also_ to CMAKE_SCRIPT_MODE and CMAKE_ROLE
2025-01-12 07:24:57 +01:00
Peter Kokot
40d68b5087
Help: Add links to FeatureSummary module
2024-12-25 17:32:04 +01:00
Martin Duffy
159ba027b9
Install: Add parallel installation option
...
Fixes : #26000
2024-07-15 11:49:29 -04:00
Craig Scott
6636b11997
Help: Minor grammar and formatting cleanup
2024-06-14 16:19:28 +10:00
Brad King
e0a11dfa24
Merge topic 'dep-provider-try_compile'
...
4cb5bb014d
try_compile: Propagating top level includes into whole-project calls
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: Robert Maynard <robertjmaynard@gmail.com >
Merge-request: !9532
2024-05-31 09:20:27 -04:00
Craig Scott
4cb5bb014d
try_compile: Propagating top level includes into whole-project calls
...
Fixes : #24151
2024-05-30 19:01:03 +10:00
Brad King
5d93c421f1
HIP: Populate CMAKE_HIP_KNOWN_FEATURES global property
...
Fixes : #26013
2024-05-28 14:36:42 -04:00
Brad King
1d519cf796
Merge topic 'ninja-parallel'
...
0e5250e63c
Ninja: Add option for parallel install
daeb8fffa2
Help: Add Builtin Targets section to Ninja help
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9505
2024-05-24 10:29:57 -04:00
Martin Duffy
0e5250e63c
Ninja: Add option for parallel install
...
Adds the global property ``INSTALL_PARALLEL`` to enable a parallel install
target for Ninja.
Fixes : #25459
2024-05-23 09:54:19 -04:00
Raul Tambre
f21dbf8f26
C++26: Fix C++/CUDA/HIP compile feature support
...
In commit f808d8afb9
(CMake: Support upcoming C++26 language level,
2022-08-19, v3.25.0-rc1~218^2) we forgot some necessary scaffolding.
Fixes : #25819
2024-04-09 11:38:59 +03:00
Gregor Jasny
25977e177b
apple: add preliminary visionOS support
2023-07-11 20:20:25 +02:00
Craig Scott
9f1360ae19
Help: Improve wording of FOLDER-related properties and policies
2023-02-25 17:15:17 +11:00
Ben Boeckel
c36910476a
Help: remove links from pages to themselves
...
At least the top-reference links. Internal `:ref:` usages have been left
intact.
2022-11-18 14:09:32 -05:00
Ben Boeckel
de4909ea16
Help: fix some minor markup errors
2022-11-18 14:09:08 -05:00
Brad King
9758dbd9d4
Merge topic 'use_folders_on_by_default'
...
d3acd22380
USE_FOLDERS: Treat as on by default
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: Amir Masoud Abdol <amirmasoudabdol@icloud.com >
Merge-request: !7830
2022-11-08 14:28:21 -05:00
Juan Ramos
d3acd22380
USE_FOLDERS: Treat as on by default
...
Add a policy to treat the `USE_FOLDERS` global property as ON by default
if it is not set.
Fixes : #21695
2022-11-08 09:32:18 -05:00
Alex Turbov
435b0c573c
Help: Fix some redirects reported with sphinx linkcheck
...
Mostly it's about replace `http:` with `https:` protocol.
2022-11-07 10:07:36 -05:00
Robert Maynard
f808d8afb9
CMake: Support upcoming C++26 language level
2022-08-31 13:46:18 -04:00
Craig Scott
e281ba27b7
Help: Clarify that RULE_LAUNCH_COMPILE is meant for internal use
...
Fixes : #22405
2022-06-02 22:18:17 +10:00
Brad King
fbda79f39d
Help: Document explicitly that 'cxx_std_##' features may not add a flag
...
This is commonly reported incorrectly as a bug, so call out this
behavior explicitly in the documentation.
2022-03-07 09:48:26 -05:00
FeRD (Frank Dana)
b75f778531
Help: Detailed version tags for compiler known features
2021-10-02 09:13:53 +10:00
Duncan Barber
7f0151dc91
Help: Document the AUTOUIC_SOURCE_GROUP property
...
This property came into existence with the changes in b4a103bdec
because generated files are now being added for UIC.
2021-04-04 12:29:56 +01:00
Duncan Barber
f6c47dd0b4
Help: Fix a typo in the AUTOGEN_SOURCE_GROUP help
2021-04-04 12:24:43 +01:00
Raul Tambre
dcd599757f
C23 support
2021-02-25 18:22:10 +02:00
Raul Tambre
93b7d3d292
C17 support
...
Implements #17755 .
2021-02-25 18:22:10 +02:00
Brad King
2ea4f390c1
Merge topic 'doc-multi-config-prop'
...
1d7daa668c
Help: Add Ninja Multi-Config to list in GENERATOR_IS_MULTI_CONFIG
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: Kyle Edwards <kyle.edwards@kitware.com >
Merge-request: !5737
2021-01-25 11:40:50 -05:00
Brad King
1d7daa668c
Help: Add Ninja Multi-Config to list in GENERATOR_IS_MULTI_CONFIG
...
Fixes : #21739
2021-01-25 10:52:49 -05:00
Raul Tambre
9f3c70a333
CUDA, CXX, OBJCXX: C++23 support with Clang 12
...
Clang 12 landed initial support for C++23 language mode flag -std={c|gnu}++2b
in commit 6627a3c2873fdf7ccba1a1573371079be48b36e8.
2020-12-08 18:43:59 +02:00
Francisco Pombal
268fcc2782
Help: Separate C++ compile feature by standard
...
Additionally, mention that no fine-grained features are available for
C++ 17 and beyond.
Co-Authored-By: Craig Scott <craig.scott@crascit.com >
2020-08-23 13:49:40 +10:00
Kitware Robot
496ec6036f
Help: Add Sphinx 'versionadded' directives to each top-level document
...
Run the `Utilities/Sphinx/update_versions.py` script to add initial
markup to every top-level document and find module.
Issue: #19715
2020-07-06 10:23:20 -04:00
Robert Maynard
2467a2b318
CUDA: Add cuda meta-features (e.g. `cuda_std_11
`) support
2019-12-10 17:56:48 -05:00
Robert Maynard
53cd86ea78
Help: Clarify what 'aware' means as it relates to C++ standards
2019-11-04 17:16:57 -05:00
Rosen Matev
9f76961de8
Support job pools in custom commands and targets
...
Provide a way for custom commands and targets to set the pool variable
of the ninja build statement. Setting `JOB_POOL` is not compatible with
`USES_TERMINAL`, which implies the `console` pool.
The option is silently ignored with other generators.
Closes : #18483
2019-05-14 15:58:00 +02:00
Bartosz Kosiorek
456e0fb64f
Help: Improve documentation formating
2019-04-04 15:13:58 +02:00
Kyle Edwards
4568d046c4
Properties: Add CMAKE_ROLE global property
...
This property allows scripts to determine whether they're in project
mode, script mode, find-package mode, CTest, or CPack.
2019-01-17 09:44:29 -05:00
Julien Schueller
17e581af4c
Help: Document CMAKE_RULE_MESSAGES variable
...
Fixes : #18368
2018-09-17 10:05:30 +02:00
Melanie Cappelaere
fd0da95f63
Eclipse: Add property to include additional contents in .cproject file
...
Similar to ECLIPSE_EXTRA_NATURES which can be used to add a third party
nature to the .project, this property offers the possibility to inject
third party contents into the .cproject.
An example of where this is useful is MCUXpresso. This is an IDE based
on Eclipse. Compiling through CMake generated Eclipse projects works
fine by using a custom toolchain. However, in order to be able to debug
using such a project, an extra storageModule specific to the target
board is needed in the cproject.
2018-05-18 10:12:19 -04:00
Brad King
7fe580a362
Features: Add infrastructure for C++ 20 language standard
...
Issue: #17849
2018-03-27 07:40:54 -04:00
Paul "TBBle" Hampson
da3a329a06
Linkify target_link_libraries in DEBUG_CONFIGURATIONS
2018-01-11 00:00:30 +11:00
Matt McCormick
07185055d5
Ninja: add CMAKE_JOB_POOLS variable as default for JOBS_POOLS
...
This enables configuration of build parallelism with the Ninja generator by
passing arguments on the command line to CMake. For example,
cmake \
'-DCMAKE_JOB_POOLS:STRING=compile=5;link=2' \
-DCMAKE_JOB_POOL_COMPILE:STRING=compile \
-DCMAKE_JOB_POOL_LINK:STRING=link \
~/src/MyProject
2017-11-29 15:13:36 -05:00
Bastien Schatt
38fd5866c0
Add GENERATOR_IS_MULTI_CONFIG global property
...
Fixes : #16768
2017-04-04 09:49:00 -04:00
Sebastian Holtermann
850eb734f5
Autogen: Add AUTOGEN_SOURCE_GROUP documentation
2017-03-16 11:52:55 +01:00
Gregor Jasny
cf13e49544
Xcode: Control schema generation via variable
...
Issue: #15441
2017-03-12 21:24:46 +01:00
Steven Newbury
462cf25427
Add support for x32-abi
...
Detect x32-abi through CMakeCompilerABI infrastruture and use this
information at runtime to determine the correct library paths with
`FIND_LIBRARY_USE_LIBX32_PATHS`.
Fixes : #15994
2017-03-07 15:22:55 -05:00