summaryrefslogtreecommitdiffstats
path: root/Tests/GeneratorExpression/check-part2.cmake
Commit message (Collapse)AuthorAgeFilesLines
* Split the GeneratorExpression test into a third part.Stephen Kelly2013-06-281-6/+0
| | | | | | | Avoid command lines beyond NMake limits. http://open.cdash.org/testDetails.php?test=196577461&build=2949683 expanded command line '...' too long
* Add generator expressions for version comparision.Stephen Kelly2013-06-121-0/+6
|
* Fix handling of commas in arbitrary content in genexes.Stephen Kelly2013-05-161-0/+10
| | | | | As the comma is the parameter separator, it needs to be re-added when evaluating to reconstruct arbitrary content.
* Fix the tests for evaluating includes and defines.Stephen Kelly2013-02-231-4/+4
| | | | | | | | | | | | We should also check whether the INTERFACE_ variant of a property is being read, and in the case of the compile definitions, we should test the _<CONFIG> suffixed variants. That is already available through the use of the methods. This way, we use the ALREADY_SEEN optimization when evaluating the includes of a target in 'external' generator expressions, ie, those used in a add_custom_command invokation, as opposed to evaluating the INCLUDE_DIRECTORIES of a target itself via GetIncludeDirectories.
* Expand includes and defines transitively in 'external' genexes.Stephen Kelly2013-02-231-0/+8
| | | | | | | | | | | | | | | This means that we can use expressions of the form $<TARGET_PROPERTY:foo,INTERFACE_INCLUDE_DIRECTORIES> to get a list of the interface include directories of foo, including those coming from dependencies. We can't have a test of a target which has a single include directory in its INCLUDE_DIRECTORIES because the shell on the MSYS platforms transforms a single include directory to include a prefix, which is not what the test expects. We test a target with two directories instead as a means to test a target with no link dependencies.
* Make it an error for INSTALL_PREFIX to be evaluated.Stephen Kelly2013-01-311-1/+0
| | | | | | An empty string is not likely going to produce expected results in any evaluation context. It is replaced by preprocessing currently.
* Add the INSTALL_PREFIX genex.Stephen Kelly2013-01-271-0/+1
|
* Add the TARGET_NAME generator expression.Stephen Kelly2013-01-051-0/+2
| | | | It will be used as a preprocessing marker.
* GenEx: Add expressions to specify build- or install-only valuesStephen Kelly2013-01-051-0/+26
This is for specifying INCLUDE_DIRECTORIES relevant to the build-location or the install location for example: set_property(TARGET foo PROPERTY INTERFACE_INCLUDE_DIRECTORIES "$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR};${CMAKE_CURRENT_SOURCE_DIR}>" "$<INSTALL_INTERFACE:${CMAKE_INSTALL_PREFIX}/include>" ) A 'bar' target can then use: set_property(TARGET bar PROPERTY INCLUDE_DIRECTORIES "$<TARGET_PROPERTY:foo,INTERFACE_INCLUDE_DIRECTORIES>" ) and it will work whether foo is in the same project, or an imported target from an installation location, or an imported target from a build location generated by the export() command. Because the generator expressions are only evaluated at build-time, these new expressions are equivalent to the ZeroNode and OneNode. The GeneratorExpression test is split into parts. Some shells can't run the custom command as it is getting too long.