summaryrefslogtreecommitdiffstats
path: root/Help/manual/cmake-generator-expressions.7.rst
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'doc-custom-output-genex'Brad King2021-03-251-0/+2
|\ | | | | | | | | | | | | 2f59b683d3 Help: Custom OUTPUT and BYPRODUCTS genexes cannot refer to targets Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5939
| * Help: Custom OUTPUT and BYPRODUCTS genexes cannot refer to targetsCraig Scott2021-03-251-0/+2
| | | | | | Relates: #21364
* | Genex: Add TARGET_RUNTIME_DLLS genexKyle Edwards2021-02-241-0/+23
|/ | | | Co-Authored-by: Brad King <brad.king@kitware.com>
* Help: Convert genex documentation to sphinx domain objectsBrad King2021-01-181-102/+282
| | | | This makes them linkable, indexed, and enables cross-references.
* Help: Remove extra blank line from cmake-generator-expressions(7)Brad King2021-01-181-1/+0
|
* Ninja Multi-Config: Add support for cross-config custom commandsKyle Edwards2020-12-151-0/+18
| | | | Co-Author: Brad King <brad.king@kitware.com>
* Document CMP0112 covers $<TARGET_FILE_NAME,tgt>Robert Maynard2020-12-071-0/+3
| | | | Fixes #21559
* Merge topic 'target_genex_dependency'Brad King2020-09-011-0/+30
|\ | | | | | | | | | | | | | | f14b390198 GenEx: Remove unneeded dependencies from target info queries Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Raul Tambre <raul@tambre.ee> Merge-request: !5127
| * GenEx: Remove unneeded dependencies from target info queriesRobert Maynard2020-09-011-0/+30
| | | | | | | | | | | | | | | | | | | | Only generate a graph dependency between a custom command and a target when the custom command queries for the file path of an artifact of the target. This makes generator expressions such as `TARGET_FILE_DIR` behave the same way as `TARGET_PROPERTY` which never generated a graph dependency.
* | ISPC: Update help documentation to include ISPCRobert Maynard2020-08-281-0/+14
|/
* Fix typos identified using codespellJean-Christophe Fillion-Robin2020-07-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See https://github.com/codespell-project/codespell#readme The following command was used: ``` codespell -q6 --skip="\ .git,\ *.json,\ ./Copyright.txt,\ ./Help/command/foreach.rst,\ ./Help/prop_test/REQUIRED_FILES.rst,\ ./Help/variable/CTEST_COVERAGE_COMMAND.rst,\ ./Modules/CMakeCheckCompilerFlagCommonPatterns.cmake,\ ./Modules/CMakeRCInformation.cmake,\ ./Modules/Internal/CPack/NSIS.template.in,\ ./Modules/FindMatlab.cmake,\ ./Modules/MatlabTestsRedirect.cmake,\ ./Modules/Platform/Windows-Clang.cmake,\ ./Modules/Platform/Windows-Intel-Fortran.cmake,\ ./Modules/Platform/Windows-MSVC.cmake,\ ./Source/CMakeVersion.cmake,\ ./Source/cmConvertMSBuildXMLToJSON.py,\ ./Source/cmCreateTestSourceList.cxx,\ ./Source/cmGlobalVisualStudio10Generator.cxx,\ ./Source/cmExportBuildFileGenerator.cxx,\ ./Source/cmExportInstallAndroidMKGenerator.cxx,\ ./Source/cmExportInstallFileGenerator.cxx,\ ./Source/cmExportSet.cxx,\ ./Source/cmExportTryCompileFileGenerator.cxx,\ ./Source/cmFindPackageCommand.cxx,\ ./Source/cmInstallCommand.cxx,\ ./Source/cmGeneratorExpressionLexer.cxx,\ ./Source/cmLocalVisualStudio7Generator.cxx,\ ./Source/cmOrderDirectories.cxx,\ ./Source/cmTarget.cxx,\ ./Source/kwsys/*,\ ./Source/QtDialog/CMakeSetupDialog.ui,\ ./Source/CPack/WiX/cmWIXRichTextFormatWriter.cxx,\ ./Source/CTest/cmParseCoberturaCoverage.h,\ ./Tests/CMakeTests/ImplicitLinkInfoTest.cmake.in,\ ./Tests/RunCMake/CPack/tests/DMG_SLA/English.license.rtf,\ ./Tests/RunCMake/CPack/tests/DMG_SLA/German.license.txt,\ ./Tests/RunCMake/CPack/tests/DMG_SLA/German.menu.txt,\ ./Tests/RunCMake/GoogleTest/xml_output.cpp,\ ./Tests/RunCMake/Make/TargetMessages*,\ ./Utilities/*,\ " \ -L "\ dependees,\ endwhile,\ fo,\ filetest,\ helpfull,\ nd,\ objext,\ stoll,\ supercedes,\ superceded,\ vas,\ varn,\ " ```
* Genex: $<CONFIG:> now supports multiple configurationsRobert Maynard2020-06-241-4/+5
| | | | | Instead of having to do $<OR:$<CONFIG:Release>,$<CONFIG:MinSizeRel>> you can do $<CONFIG:Release,MinSizeRel>
* Help: Better document that CMP0105 controls DEVICE_LINK parsingRobert Maynard2020-06-181-2/+3
|
* Genex: Add generator expressions $<DEVICE_LINK> and $<HOST_LINK>Marc Chevrier2020-04-191-0/+12
| | | | | | These generator expressions can only be used in link options properties. These expressions return the arguments respectively for device and host link step, otherwise return an empty string.
* Merge topic 'Genex-LINK_LANGUAGE'Brad King2020-02-271-0/+114
|\ | | | | | | | | | | | | 461efa7b51 Genex: Add $<LINK_LANGUAGE:...> and $<LINK_LANG_AND_ID:...> Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4244
| * Genex: Add $<LINK_LANGUAGE:...> and $<LINK_LANG_AND_ID:...>Marc Chevrier2020-02-261-0/+114
| | | | | | | | | | | | This MR may help to solve issues #19757 and #18008 Fixes: #19965
* | Help: cmake-generator-expressions(7): Target-Dependent QueriesJoachim Wuttke (h)2020-02-251-31/+37
|/ | | | | Explain ``tgt`` at beginning of section. Then refer to ``tgt`` without redundant reexplanations.
* Help: Add documentation and release notes for INSTALL_NAME_DIR genexKyle Edwards2019-11-051-1/+2
|
* Help: drop confusing reference to `if()` from `$<BOOL:>`Ben Boeckel2019-10-311-2/+2
| | | | | | `if()` uses the internal `IsOn` call whild `$<BOOL:>` uses `IsOff`. For historical reasons, these are not inverses of each other, so drop mention of `if()` from the documentation of `$<BOOL:>`.
* Merge branch 'doc-genex-tweak' into release-3.16Brad King2019-10-211-1/+1
|\ | | | | | | Merge-request: !3939
| * Help: Fix COMPILE_LANG_AND_ID genex exampleAlan W. Irwin2019-10-211-1/+1
| | | | | | | | | | | | | | | | | | | | Fix the `COMPILE_LANGUAGE/CXX_COMPILER_ID` variant of the example to have the same meaning as the `COMPILE_LANG_AND_ID` variant. The inconsistency was introduced by commit 808b818063 (Genex: CompileLang and CompileLangAndId now match against a list of ids, 2019-05-30, v3.15.0-rc1~11^2~1). Fixes: #19862
* | Languages: Add support for Objective-C++Steve Wilson2019-09-281-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add entries in Modules and Modules/Platform to support Objective-C++ compiler determination and identification. Add Modules to check Objective-C++ compiler flags, source compilations, program checks, etc... Use OBJCXX as the designator of the language, eg: project(foo OBJCXX) Add various tests for Objective-C++ language features. Add tests to preserve C++ handling of .M and .mm files when Objective-C++ is not a configured language. Co-authored-by: Cristian Adam <cristian.adam@gmail.com>
* | Languages: Add support for Objective-CSteve Wilson2019-09-281-0/+8
|/ | | | | | | | | | | | | | | | | Add entries in Modules and Modules/Platform to support Objective-C compiler determination and identification. Add Modules to check Objective-C compiler flags, source compilations, program checks, etc... Use OBJC as the designator of the language, eg: project(foo OBJC) Add various tests for Objective-C language features. Add tests to preserve C++ handling of .m and .mm files when OBJC is not a configured language. Co-Authored-By: Cristian Adam <cristian.adam@gmail.com>
* Genex: CompileLang and CompileLangAndId now match against a list of idsRobert Maynard2019-06-031-12/+12
| | | | | | This allows for expressions such as: $<COMPILE_LANG_AND_ID, CXX, GNU, Clang>
* Genex: PlatformId now can match against a list of ids.Robert Maynard2019-06-031-3/+4
|
* Genex: CompilerId now can match against a list of ids.Robert Maynard2019-06-031-12/+17
| | | | | This allows for expressions like: $<$<CXX_COMPILER_ID:Clang,GNU>:-DMY_PRIVATE_DEFINE>
* Genex: Add COMPILE_LANG_AND_ID generator expressionRobert Maynard2019-05-141-0/+36
|
* Docs: Generator-expressions remove usage of `CMake-id`Robert Maynard2019-05-131-10/+10
|
* Genex: Update $<TARGET_FILE_BASE_NAME:...>: take care of POSTFIXMarc Chevrier2019-05-021-0/+23
| | | | | This capability complement MR !3190 and !3207 and is also needed to solve issue #18771.
* Merge topic 'relax_TARGET_OBJECT_generator_expr'Brad King2019-04-301-2/+1
|\ | | | | | | | | | | | | ce078dda79 Relax the usage of TARGET_OBJECTS generator expression Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3178
| * Relax the usage of TARGET_OBJECTS generator expressionRobert Maynard2019-04-191-2/+1
| | | | | | | | | | The geneator expression can now be used with static, shared, and module libraries and executables.
* | Genex: Rename $<TARGET_*_OUTPUT_NAME:...> in $<TARGET_*_FILE_BASE_NAME:...>Marc Chevrier2019-04-151-15/+40
| |
* | Genex: add $<TARGET_FILE_PREFIX:...> and $<TARGET_FILE_SUFFIX:...>Marc Chevrier2019-04-101-1/+22
| | | | | | | | | | These capabilities complement MR !3190 and is also needed to solve issue #18771.
* | Genex: Add $<FILTER:list,INCLUDE|EXCLUDE,regex>Sebastian Lipponer2019-04-081-0/+2
| |
* | Help: Move entry to correct section in cmake-generator-expressions(7) manualSebastian Lipponer2019-04-081-2/+2
| | | | | | | | | | The generator expression $<REMOVE_DUPLICATES:list> is string-valued, not boolean-valued.
* | Genex: Add capability to retrieve base name for various target artifactsMarc Chevrier2019-04-081-0/+19
| | | | | | | | This new capability is required to solve efficiently issue #18771
* | Genex: Add $<REMOVE_DUPLICATES:list>Sebastian Lipponer2019-04-011-0/+2
| |
* | Help: Fix description in cmake-generator-expressions(7) manualSebastian Lipponer2019-04-011-1/+1
|/
* Merge topic 'cuda_compiler_generator_expressions'Brad King2019-03-131-0/+12
|\ | | | | | | | | | | | | | | b53766b205 CUDA: Support compiler id and version generator expressions b544e34af6 All VersionNode use the same capitalization pattern Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3085
| * CUDA: Support compiler id and version generator expressionsRobert Maynard2019-03-111-0/+12
| | | | | | | | | | Introduce the CUDA_COMPILER_ID and CUDA_COMPILER_VERSION generator expressions.
* | Genex: Teach SHELL_PATH to support a list of pathsHenri Manson2019-03-111-0/+5
|/ | | | | | | Extend the genex added by commit ca6ba3fee5 (Genex: Add a SHELL_PATH expression, 2015-09-24, v3.4.0-rc1~37^2) to accept a `;`-list of paths, convert them all, and generate a list separated by the native shell `PATH``` separator.
* Fortran: Add compiler ID/Version generator expressionsAndrew Paprocki2019-01-181-0/+13
| | | | | | | | | | | | Adds `Fortran_COMPILER_ID` and `Fortran_COMPILER_VERSION` generator expression support to match equivalent `C_COMPILER_ID`, `CXX_COMPILER_ID`, `C_COMPILER_VERSION`, and `CXX_COMPILER_VERSION` support. This is very helpful in the case where the C/C++ compiler suite is a different type of compiler from the platform Fortran compiler and projects use generator expressions to assign compiler flags and definitions. (e.g. `GNU` C/C++ and `SunPro` Fortran on Linux)
* Help: Say early on that generator expressions can be nested.Joachim Wuttke (o)2018-11-061-2/+4
|
* Help: add section on debugging generator expressions.Joachim Wuttke (h)2018-11-061-0/+22
| | | | This resolves #18550.
* Help: Explain conversion rules of $<BOOL:string>.Joachim Wuttke (h)2018-11-061-2/+10
| | | | This resolves #18549.
* Help: Code example for case-insensitive comparisonJoachim Wuttke (h)2018-11-061-3/+12
|
* Help: Terminate explanations with a dot.Joachim Wuttke (h)2018-11-061-4/+4
|
* Help: Expand placeholders in string comparisons.Joachim Wuttke (h)2018-11-061-6/+8
| | | | And point out that STREQUAL is case sensitive.
* Help: sort conditional expressions below string-valued ones.Joachim Wuttke (h)2018-11-061-30/+29
| | | | | Makes things yet clearer and simpler. Also correct remnant of "informational expression".
* Help: Add deprecation date of $<CONFIGURATION>Joachim Wuttke (h)2018-11-061-1/+1
|