Commit Graph

947 Commits

Author SHA1 Message Date
Brad King
e159b5b2ae Merge topic 'doc-improvements'
d4d1f85297 Help: Move a note about arguments and genexes into include file
968224484f Help: Drop unused `PROPERTY_GENEX` replace from `prop_tgt/INTERFACE_*` files
65457e4fae Help: Add _See Also_ sections to related CMake commands
c86ec79d07 Help: Use direct refs to genexes instead of ``$<GENEX-NAME>``
8c6274326d Help: Use CMake highlighting for command synopsis
c356a94512 Help: Use monospaced font for a genex name in a section title
f98c8707f4 Help: Use `code-block:: cmake` instead of `::` for sub-commands descriptions
2ba351ca4f Help: ``CMake`` → CMake
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7873
2022-11-10 10:11:22 -05:00
Alex Turbov
c86ec79d07 Help: Use direct refs to genexes instead of `$<GENEX-NAME>` 2022-11-09 23:52:30 +04:00
Brad King
dab81ced1b Merge topic 'sphinx-linkcheck'
a89c76a773 Build: Add `SPHINX_LINKCHECK` build option
137b00cda1 Build: Do not redirect `sphinx-build` output if CMake running in verbose mode
d954fb8a60 Build: Deduplicate `add_custom_command()` calls for Sphinx targets
2af8724485 Merge branch 'backport-sphinx-linkcheck' into sphinx-linkcheck
435b0c573c Help: Fix some redirects reported with sphinx linkcheck
ac5295a9de Help: Fix broken external links found by sphinx linkcheck

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7876
2022-11-08 09:02:31 -05:00
Alex Turbov
2ba351ca4f Help: `CMake` → CMake 2022-11-07 22:55:06 +04: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
Christoph Seitz
beade1cb42 Tasking: Update CMAKE_TASKING_TOOLSET documentation
Clarify the relationship between the compiler version and
toolset/architecture.

Fixes: #24117
2022-11-07 09:24:03 -05:00
Alex Turbov
3043c17039 Help: Add more CLI :option: references to various pages 2022-10-20 11:21:40 -04:00
Brad King
20587e5af9 Merge topic 'doc-flag-init' into release-3.25
e0075799ed Help: Clarify how language-specific flag environment values are used

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7804
2022-10-18 15:32:26 -04:00
Brad King
e0075799ed Help: Clarify how language-specific flag environment values are used
Previous the wording could be interpreted to mean that the environment
variables like `CXXFLAGS` are used exclusively to initialize the
corresponding cache entries like `CMAKE_CXX_FLAGS`.  State clearly
that the value will be used in combination with builtin defaults.

Issue: #23956
2022-10-18 14:10:41 -04:00
Brad King
a739b55bb6 Help: Clarify historical-only role of CMAKE_ANDROID_API variable
Revise documentation added by commit 6b84df8da9 (Help: Document cross
compiling for Android, 2016-06-20, v3.7.0-rc1~229^2~2) to avoid implying
that `CMAKE_ANDROID_API` is interchangeable with `CMAKE_SYSTEM_VERSION`.
The latter is the authoritative value of the Android API level.

Issue: #23830
2022-10-17 11:42:46 -04:00
Craig Scott
f8b3b24915 Help: Minor grammar, typo and formatting cleanups 2022-10-09 13:34:05 +11:00
Craig Scott
3de30134f1 Help: Re-sort property, variable and compiler id lists 2022-10-09 13:34:05 +11:00
Brad King
b768a5e23b Help: Disambiguate cmake(1) program modes in Sphinx option references
Define the entry point to each mode as an option for the `cmake`
program, but reference the options for that mode as part of stand-in
`cmake-<mode>` programs.
2022-10-05 15:27:40 -04:00
Brad King
8d6f015d59 Drop Visual Studio 10 2010 generator
This generator has been deprecated since CMake 3.22.  Remove it.
2022-09-26 15:43:04 -04:00
Marc Chevrier
0bd3efffbc Genex LINK_LIBRARY: Add support for framework with postfix 2022-09-21 16:14:36 +02:00
Brad King
01a25d72c6 Merge topic 'add_tasking_compiler'
94df5b6ef1 Tasking: Add support for several compiler toolsets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7491
2022-09-15 09:19:58 -04:00
Christoph Seitz
94df5b6ef1 Tasking: Add support for several compiler toolsets
Add support for the Tasking compiler toolset:

* TriCore Compiler Toolset 6.3 (with TriCore, ARM, MCS,
  8051 and PCP architecture compilers)
* SmartCode Compiler Toolset 10.1 (with TriCore, ARC, MCS,
  8051 architecture compilers)
* ARM Compiler 6.0
* MCS Complier 3.3
* 8051 Compiler 7.2

Fixes: #23756
2022-09-14 09:58:50 -04:00
Brad King
c3e68020d6 Merge topic 'MsvcDebugInformationFormatAbstraction'
a858466aac MSVC: Add test for debug information format
0e96a20478 MSVC: Add abstraction for debug information format
d4c8111da4 Clang/Windows: Clarify name of internal runtime library flags variables

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7606
2022-09-14 09:21:27 -04:00
Glen Chung
0e96a20478 MSVC: Add abstraction for debug information format
Replace our hard-coded default for `/Zi` with a first-class abstraction
to select the debug information format an enumeration of logical
names.  We've long hesitated to do this because the idea of "debug
information format" touches on related concepts on several platforms.
Avoid that scope creep by simply defining an abstraction that applies
only when targeting the MSVC ABI on Windows.

Removing the old default flag requires a policy because existing
projects may rely on string processing to edit them and choose a
runtime library under the old behavior.  Add policy CMP0141 to
provide compatibility.

Fixes: #10189
2022-09-14 09:12:47 -04:00
Cristian Adam
caffb15d09 LINUX: Set CMAKE_HOST_LINUX variable when running on a Linux host
Relates: #23840
2022-09-09 20:10:43 +02:00
Cristian Adam
1ea8b8ed86 BSD: Set CMAKE_HOST_BSD variable on a BSD host
Also the BSD variable will be set in CMake scripting mode (-P).

Relates: #23853
2022-09-06 01:15:44 +02:00
Cristian Adam
288f72efea BSD: Only use BSD as variable for target BSD system
Instead of having multiple boolean variables, we only have one
string variable: BSD with the name of the target BSD system.

Relates: #23853
2022-09-06 01:02:34 +02:00
Brad King
fc4451dd31 Merge topic 'xcode-add-gpu-validation-and-default-configuration'
740bee97bd Xcode: Add settings to control a scheme's launch configuration
39456c70e1 Xcode: Add settings to control a scheme's GPU Validation values
4034272ed8 gitignore: Tell Git to ignore the .cache/ directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7581
2022-08-31 09:43:50 -04:00
Brad King
b9371c0477 Merge topic 'CMAKE_FIND_USE_INSTALL_PREFIX-support-staging-prefix'
0fc10bb19b CMAKE_FIND_USE_INSTALL_PREFIX considers CMAKE_STAGING_PREFIX
43d31c5198 cmFindBase: Refactor CMAKE_FIND_USE_INSTALL_PREFIX handling

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7623
2022-08-31 09:39:52 -04:00
Robert Maynard
0fc10bb19b CMAKE_FIND_USE_INSTALL_PREFIX considers CMAKE_STAGING_PREFIX
Fixes #23900
2022-08-30 17:52:40 -04:00
PatriceJiang
740bee97bd Xcode: Add settings to control a scheme's launch configuration 2022-08-30 10:28:27 -04:00
PatriceJiang
39456c70e1 Xcode: Add settings to control a scheme's GPU Validation values 2022-08-30 10:26:48 -04:00
Michael Hirsch
a28fb5980b Help:CMAKE_[CTEST,CPACK]_COMMAND]: correct copy-paste error 2022-08-24 21:32:15 -04:00
Michael Hirsch
1ed074cf6d Help:CMAKE_EXPORT_COMPILE_COMMANDS: link to Ninja Generators
compile_commands.json is generated for Ninja and Ninja Multi-Config
2022-08-24 21:28:45 -04:00
Craig Scott
a8b274c74e Merge topic 'bsd-variables'
a20d7a9707 BSD: Set *BSD variables when targeting a *BSD system
2ae42d0aa3 kFreeBSD: Do not unset LINUX variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7573
2022-08-22 17:37:49 -04:00
Cristian Adam
a20d7a9707 BSD: Set *BSD variables when targeting a *BSD system
Fixes: #23853
2022-08-21 09:27:59 +10:00
Brad King
7b1ab24d79 Merge topic 'doc-compiler-id-table'
a8430527f3 Help: `CMAKE_<LANG>_COMPILER_ID` turn code block into table

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7567
2022-08-16 12:58:42 -04:00
Brad King
14aca54c0a Merge topic 'doc-cmake-cli-options'
0224576995 Help: Replace `cmake -P` option mentions w/ Sphinx role
1b94770f27 Help: Insert link to `cmake --toolchain` option
2c54cd871a Help: Turn items of presets manual page into description list
e2198fd9dc Help: Format `-Werror`/`-Wno-error` in the way it can be referenced
a6070b480f Help: Use placeholder instead of listing choices in option lines
8ba20cb56f Help: Simplify `cmake --log-level` option definition
146e4e6bad Help: Split `ctest` options into groups like `cmake` man page has
4c1008d739 Help: Use `:option:` role to reference `ctest` options
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7554
2022-08-16 12:46:26 -04:00
Alex Turbov
a8430527f3 Help: CMAKE_<LANG>_COMPILER_ID turn code block into table 2022-08-15 20:37:25 +04:00
Alex Turbov
0224576995 Help: Replace cmake -P option mentions w/ Sphinx role 2022-08-14 09:58:42 +04:00
Cristian Adam
62cd3904bf variable: Set LINUX variable on Linux target systems
Fixes: #23840
2022-08-12 07:20:05 +10:00
Brad King
ed86192cd8 Merge topic 'doc-markup-program-options'
a6abdf6c8f Help: Consistent options declaration -- short first, then long
f4563f05db Help: Value for `--graphviz=` option actually is mandatory
04843d743e Help: Replace a bunch of more ``--option`` to `:option:` role
09446266ee Help: Replace mentions of ``-D`` option with :option:`-D` role
b57f27b087 Help: Replace mentions of ``-T`` and ``-A`` options with role
d25b232dee Help: Replace mentions of ``-G`` option with :option:`-G` role
63940e1cab Help: Replace mentions of ``-C`` option with :option:`-C` role
183a49cbfe Help: Replace mentions of ``-S`` option with :option:`-S` role
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7544
2022-08-08 09:39:41 -04:00
Alex Turbov
04843d743e Help: Replace a bunch of more `--option to :option:` role 2022-08-04 19:34:45 +04:00
Alex Turbov
09446266ee Help: Replace mentions of `-D option with :option:-D` role 2022-08-04 19:34:45 +04:00
Alex Turbov
b57f27b087 Help: Replace mentions of `-T and -A` options with role 2022-08-04 19:34:45 +04:00
Alex Turbov
183a49cbfe Help: Replace mentions of `-S option with :option:-S` role 2022-08-04 19:33:42 +04:00
Brad King
d4ec1ded39 Merge topic 'fetchcontent-set-CMAKE_VERIFY_INTERFACE_HEADER_SETS'
2a9cc3e8e8 FetchContent: Disable header set verification for dependencies

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7535
2022-08-04 09:34:48 -04:00
Craig Scott
2a9cc3e8e8 FetchContent: Disable header set verification for dependencies
The CMAKE_VERIFY_INTERFACE_HEADER_SETS variable is intended to
be under the control of the user. It doesn't discriminate between
header sets defined in the main project and those defined by
dependencies brought into the build directly via FetchContent.
Developers will usually only be interested in verifying the main project's
header sets, not those from dependencies.

Make the variable effectively only enable header set verification of the
main project by turning it off during FetchContent_MakeAvailable() calls.
The user still has variables like CMAKE_PROJECT_INCLUDE and
CMAKE_PROJECT_<projectName>_INCLUDE available to them if they
want to enable verification of all or specific dependencies respectively.

Fixes: #23808
2022-08-04 09:43:10 +10:00
Craig Scott
51dd0d758d Merge topic 'doc-LINK_LIBRARY_genex'
d185f7c0a8 Help: Rework $<LINK_LIBRARY>, $<LINK_GROUP> and related docs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7413
2022-07-03 00:50:45 -04:00
Craig Scott
2a336d8554 Merge topic 'doc-LINK_LIBRARY_genex' into release-3.24
d185f7c0a8 Help: Rework $<LINK_LIBRARY>, $<LINK_GROUP> and related docs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7413
2022-07-03 00:50:44 -04:00
Craig Scott
d185f7c0a8 Help: Rework $<LINK_LIBRARY>, $<LINK_GROUP> and related docs
These changes restructure the docs to improve readability and flow,
correct grammar and typos, and fix errors and inconsistencies in
some of the examples.

Fixes: #23684
2022-07-03 14:34:41 +10:00
Brad King
b1d8141534 Merge topic 'log_level_command'
23bbac941a Add cmake_language(GET_MESSAGE_LOG_LEVEL) sub command
2b6ef864e0 Move LogLevel enum out of cmake.h header

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7348
2022-06-29 08:52:13 -04:00
Alexandru Croitor
23bbac941a Add cmake_language(GET_MESSAGE_LOG_LEVEL) sub command
The new sub-command writes a string representation of the
current log level to the output variable given to the
sub-command.

Given that the log-level might be set either via the --log-level
command line option or via the CMAKE_MESSAGE_LOG_LEVEL
cache / regular variables, the priority for each of the log level
sources is as follows, with the first one being the highest:
1) --log-level
2) CMAKE_MESSAGE_LOG_LEVEL regular variable
3) CMAKE_MESSAGE_LOG_LEVEL cache variable
4) default log level (STATUS)

Fixes: #23572
2022-06-28 16:03:22 +02:00
Brad King
3dd5b864f3 Merge topic 'doc-osx-cmp0126'
3fac3d365d Help: Mention CMP0126 in CMAKE_OSX_* variable documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7414
2022-06-28 09:19:35 -04:00
Da Quexian
3fac3d365d Help: Mention CMP0126 in CMAKE_OSX_* variable documentation
Signed-off-by: Da Quexian <daquexian566@gmail.com>
2022-06-27 13:36:13 -04:00