We no longer add granular compile features. Only language standard
meta features like `cxx_std_##`` need to be added, and these can
be done by following existing patterns.
Move deprecated or obsolete modules to the section
"Deprectated Modules" of cmake-modules(7):
- MacroAddFileDependencies (Text says: Using the macro
MACRO_ADD_FILE_DEPENDENCIES() is discouraged.)
- UsePkgConfig (Text calls it "obsolete")
- Use_wxWindows (was already listed in deprecation section)
c4b4d8b3a6 POSITION_INDEPENDENT_CODE: Manage link flags for executables
724a0346f7 POSITION_INDEPENDENT_CODE: Fix erroneous '-fPIE' flag for Sun Studio
023188ffb4 INTERFACE_POSITION_INDEPENDENT_CODE: add generator expressions support
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2465
Section "Variables References" said that environment and cache
variables are "evaluated in the same contexts as a normal variable
reference". The reader has to guess what "contexts" means in
this context. Probably "inside a Quoted Argument or an Unquoted
Argument", exactly as for ordinary variable references.
But this is exactly what the reader would tacitly assume anyway.
Therefore I think the removed clause was unnecessary, and possibly
more confusing than helpful.
86c07b9165 Help: Say early on that generator expressions can be nested.
ab1d7df757 Help: add section on debugging generator expressions.
e0f0f80f02 Help: Explain conversion rules of $<BOOL:string>.
2b2b41f038 Help: Code example for case-insensitive comparison
e045fb202d Help: Terminate explanations with a dot.
3fa0a03b7e Help: Expand placeholders in string comparisons.
fb423b3c49 Help: sort conditional expressions below string-valued ones.
867c9c9c0d Help: Add deprecation date of $<CONFIGURATION>
...
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex Turbov <i.zaufi@gmail.com>
Merge-request: !2564
Before, the closely related signatures
$<condition:true_value>
$<IF:condition,true_value,false_value>
were explained in two different sections. The former section
was badly explained, with '0' and '1' in place of the formal
parameter 'condition'.
No need to save a few characters on formal parameters.
Use this occasion to correct $<PLATFORM_ID:comp>:
the parameter is a platform_id, not a compiler_id.
Minor rewording around the updated link and extra blank line
added to improve readability and remove a potential
ambiguity around the same area.
Fixes: #18545
95bd6317bc RPATH: Record support for $ORIGIN on various *BSD
c9b8c79271 RPATH: Record support for $ORIGIN on Haiku and Solaris
6114d85a7d RPATH: Add option for using $ORIGIN in build tree
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2456
This makes binaries independent of the build directory by not embedding
the build directory via RPATH. The tests are partially based on the
existing RuntimePath test, but with the check moved into a POST_BUILD
command such that it can be skipped when the platform lacks support.
Fixes: #18413
93f3f65516 Help: Revise docs of modules AddFileDependencies..CheckFunctionExists
fc7ee1ca45 Help: Override pygments CMakeLexer to support <..> and [..]
74b3eacdc7 Help: Use appropriate list types in FindPkgConfig
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2468
* The code snippets in the docs consist of CMake code mixed
with syntax definition punctuation like < > [ ] ... Therefore
a pure CMake lexer is inadequate. Here it is replaced by a
CMake syntax definition parser.
* Fixed syntax definition snippets in FindPkgConfig.cmake to
make best use of syntax highlighting. This source file is the
hardest to support because it contains comparison operators
<= = >=, which need special attention to avoid confusion
with the placeholder indicators <...>.
* Fixed syntax in execute_process.rst (there were unbalanced
brackets).
* Disabled syntax highlighting for long string examples in
cmake-language.7.rst.
* No highlighting of removed syntax in CMP0049
* To inspect the outcome of this patch, see e.g. the pages
* manual/cmake-buildsystem.7.html
* module/ExternalProject.html
* module/FindPkgConfig.html
which are particularly rich in complex code snippets.
Revert commit v3.13.0-rc1~144^2 (cmake-server: Support codemodel
filegroups for INTERFACE_SOURCES, 2018-08-10). The changes activate
code paths not meant to be used with interface libraries. Another
approach will be needed to expose this information later.
This revert has to be done by hand because the code in question has been
changed somewhat since the changes were made, and was also factored out
to another source file.
Fixes: #18463