diff options
author | Brad King <brad.king@kitware.com> | 2018-03-13 17:42:38 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2018-03-13 17:42:45 (GMT) |
commit | bdbee54a8317806b4a93aec9f8eee1b876da9a32 (patch) | |
tree | 94140855754fd9e6ee81b9d71995606eeae8599a /Source/cmGeneratorTarget.cxx | |
parent | 7c557e2227f446d1c265ac7b5aa8055e3f4ea713 (diff) | |
parent | 1b5e52fd651ab17b3f9efb8f3e2e069550bf7a66 (diff) | |
download | CMake-bdbee54a8317806b4a93aec9f8eee1b876da9a32.zip CMake-bdbee54a8317806b4a93aec9f8eee1b876da9a32.tar.gz CMake-bdbee54a8317806b4a93aec9f8eee1b876da9a32.tar.bz2 |
Merge topic 'genex-COMPILE_LANGUAGE-system-include'
1b5e52fd65 Genex: Fix COMPILE_LANGUAGE propagation through try_compile
2deb9b7f34 Genex: Fix COMPILE_LANGUAGE in SYSTEM include directories
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1844
Diffstat (limited to 'Source/cmGeneratorTarget.cxx')
-rw-r--r-- | Source/cmGeneratorTarget.cxx | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/Source/cmGeneratorTarget.cxx b/Source/cmGeneratorTarget.cxx index b9e2978..66105b5 100644 --- a/Source/cmGeneratorTarget.cxx +++ b/Source/cmGeneratorTarget.cxx @@ -387,14 +387,15 @@ static void handleSystemIncludesDep( cmLocalGenerator* lg, cmGeneratorTarget const* depTgt, const std::string& config, cmGeneratorTarget const* headTarget, cmGeneratorExpressionDAGChecker* dagChecker, - std::vector<std::string>& result, bool excludeImported) + std::vector<std::string>& result, bool excludeImported, + std::string const& language) { if (const char* dirs = depTgt->GetProperty("INTERFACE_SYSTEM_INCLUDE_DIRECTORIES")) { cmGeneratorExpression ge; cmSystemTools::ExpandListArgument( ge.Parse(dirs)->Evaluate(lg, config, false, headTarget, depTgt, - dagChecker), + dagChecker, language), result); } if (!depTgt->IsImported() || excludeImported) { @@ -406,7 +407,7 @@ static void handleSystemIncludesDep( cmGeneratorExpression ge; cmSystemTools::ExpandListArgument( ge.Parse(dirs)->Evaluate(lg, config, false, headTarget, depTgt, - dagChecker), + dagChecker, language), result); } } @@ -738,7 +739,8 @@ const char* cmGeneratorTarget::GetLocationForBuild() const } bool cmGeneratorTarget::IsSystemIncludeDirectory( - const std::string& dir, const std::string& config) const + const std::string& dir, const std::string& config, + const std::string& language) const { assert(this->GetType() != cmStateEnums::INTERFACE_LIBRARY); std::string config_upper; @@ -761,7 +763,7 @@ bool cmGeneratorTarget::IsSystemIncludeDirectory( cmGeneratorExpression ge; cmSystemTools::ExpandListArgument( ge.Parse(it)->Evaluate(this->LocalGenerator, config, false, this, - &dagChecker), + &dagChecker, language), result); } @@ -769,7 +771,7 @@ bool cmGeneratorTarget::IsSystemIncludeDirectory( this->GetLinkImplementationClosure(config); for (cmGeneratorTarget const* dep : deps) { handleSystemIncludesDep(this->LocalGenerator, dep, config, this, - &dagChecker, result, excludeImported); + &dagChecker, result, excludeImported, language); } std::for_each(result.begin(), result.end(), |