summaryrefslogtreecommitdiff
path: root/Source/cmTargetIncludeDirectoriesCommand.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'join-algorithm'Brad King2015-01-121-9/+1
|\ | | | | | | | | | | | | 55a73e6b Use the cmJoin algorithm where possible. 8dc8d756 cmStandardIncludes: Add a join algorithm for string containers. b5813cee cmInstallCommand: Remove unused variable.
| * Use the cmJoin algorithm where possible.Stephen Kelly2015-01-081-9/+1
| |
* | Port all cmOStringStream to std::ostringstream.Stephen Kelly2015-01-111-2/+2
|/ | | | All compilers hosting CMake support the std class.
* cmMakefile: return a backtraceBen Boeckel2014-06-051-2/+1
| | | | | This allows backtraces to be fully controlled by the makefile rather than externally (and makes changing how they are manipulated easier).
* cmTargetPropCommandBase: Change the interface to return bool.Stephen Kelly2014-04-071-1/+2
| | | | | This is needed for the target_compile_features command, which may fail at configure time if an invalid feature is specified.
* include_directory: Add missing include.Stephen Kelly2014-02-171-0/+2
| | | | | | | | | | | The cmGeneratorExpression is used here, but the header for it is not in the include heirarchy. This would be a compile error if the file were compiled as a standalone translation unit, but it is instead used in a mini-unity-build by inclusion in cmCommands.cxx. The header for cmGeneratorExpression happens to be included first, so the compilation works fine. IDEs do not know this however, and flag the use as an error.
* target_include_directories: Allow relative path with genexStephen Kelly2013-11-261-1/+1
| | | | | | | | | | | | | | | Treat paths which are relative and which contain a generator expression which is not at the beginning as relative to the source directory. This matches the behavior of paths which are relative but contain no generator expression at all. Previously this would generate a relative path with the IMPORTED target on export(), which would be a reported as a non-existent path on import. If used directly in the buildsystem, it would be reported as a relative path, which is also an error. There is no need for a policy in this case.
* Add the INTERFACE_SYSTEM_INCLUDE_DIRECTORIES target property.Stephen Kelly2013-07-161-3/+14
| | | | | | | | Unlike other target properties, this does not have a corresponding non-INTERFACE variant. This allows propagation of system attribute on include directories from link dependents.
* Add a SYSTEM parameter to target_include_directories (#14180)Stephen Kelly2013-07-021-2/+21
| | | | | | This is similar to the include_directories(SYSTEM) signature in that it allows telling the compiler to ignore warnings from such headers.
* Rename the IncludeDirectoriesEntry to be more generic.Stephen Kelly2013-02-121-3/+1
|
* Deduplicate the isGeneratorExpression method.Stephen Kelly2013-02-071-9/+1
| | | | This API seems like the most appropriate.
* Make subclasses responsible for joining content.Stephen Kelly2013-01-291-2/+34
| | | | | This way we can add handling of relative/absolute paths and of -D in compile definitions.
* Don't allow targets args in the new target commands.Stephen Kelly2013-01-291-20/+0
|
* Disallow porcelain to populate includes and defines of IMPORTED targets.Stephen Kelly2013-01-211-5/+3
| | | | | | | | | | | | | | | | With similar reasoning to the parent commit, as downstreams, we can't determine what $<CONFIG> generator expressions would be appropriate. Upstream would have populated the INTERFACE_INCLUDE_DIRECTORIES with config-specific generator expressions, possibly appropriate for their DEBUG_CONFIGURATIONS. In theory, if we would add include directories for a DEBUG intent, we would have to match the upstream configurations for that. Rather than attempting to discover the appropriate configurations at this time, simplify the feature instead. The use of IMPORTED targets with these commands could still be added in the future if targets would export their DEBUG_CONFIGURATIONS somehow.
* Add the target_include_directories command.Stephen Kelly2013-01-101-0/+74
This is a convenience API to populate the corresponding properties.