summaryrefslogtreecommitdiffstats
path: root/Source/cmGeneratorExpression.h
Commit message (Collapse)AuthorAgeFilesLines
* Add API to check that dependent target properties form a DAG.Stephen Kelly2012-09-281-1/+3
| | | | | | Initially this will only be used to check for self-references, but can be extended to check for cycles when chaining properties of other targets.
* Add a generator expression for target properties.Stephen Kelly2012-09-281-1/+3
| | | | | | | | There are two overloads, so that it can use the operational target when a target property is being evaluated, and a target can alternatively be specified by name. At this point, the generators don't chain. That comes later.
* Add include guard for cmGeneratorExpression.Stephen Kelly2012-09-211-0/+6
|
* cmGeneratorExpression: Port users to two-stage processingStephen Kelly2012-09-181-19/+35
| | | | | | | | | | Removing the Process() API and removing the parameters from the constructor will allow cmGeneratorExpressions to be cached and evaluated with multiple configs for example, such as when evaluating target properties. This requires the creation of a new compiled representation of cmGeneratorExpression. The cmListFileBacktrace remains in the constructor so that we can record where a particular generator expression appeared in the CMakeLists file.
* cmGeneratorExpression: Re-write for multi-stage evaluationStephen Kelly2012-09-181-7/+14
| | | | | | | | The expressions may be parsed and then cached and evaluated multiple times. They are evaluated lazily so that literals such as ',' can be treated as universal parameter separators, and can be processed from results without appearing literally, and without interfering with the parsing/evaluation of the entire expression.
* Add $<CONFIG:...> boolean query generator expressionBrad King2012-08-151-0/+1
| | | | | | | This expression evaluates to '1' or '0' to indicate whether the build configuration for which the expression is evaluated matches tha named configuration. In combination with the "$<0:...>" and "$<1:...>" expressions this allows per-configuration content to be generated.
* Record set of targets used in cmGeneratorExpressionBrad King2010-12-151-0/+6
|
* Optionally suppress errors in cmGeneratorExpressionBrad King2010-12-151-1/+3
|
* Convert CMake to OSI-approved BSD LicenseBrad King2009-09-281-14/+9
| | | | | | | This converts the CMake license to a pure 3-clause OSI-approved BSD License. We drop the previous license clause requiring modified versions to be plainly marked. We also update the CMake copyright to cover the full development time range.
* Introduce "generator expressions" to add_test()Brad King2009-08-111-0/+55
This introduces a new syntax called "generator expressions" to the test COMMAND option of the add_test(NAME) command mode. These expressions have a syntax like $<TARGET_FILE:mytarget> and are evaluated during build system generation. This syntax allows per-configuration target output files to be referenced in test commands and arguments.