mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-04 04:40:56 -06:00
Xcode: Enable multi-arch TARGET_OBJECTS genex in [INTERFACE_]LINK_LIBRARIES
This was an oversight in the original implementation.
This commit is contained in:
@@ -6291,6 +6291,7 @@ void cmGeneratorTarget::ExpandLinkItems(
|
|||||||
}
|
}
|
||||||
std::vector<std::string> libs;
|
std::vector<std::string> libs;
|
||||||
std::unique_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(value);
|
std::unique_ptr<cmCompiledGeneratorExpression> cge = ge.Parse(value);
|
||||||
|
cge->SetEvaluateForBuildsystem(true);
|
||||||
cmExpandList(cge->Evaluate(this->LocalGenerator, config, headTarget,
|
cmExpandList(cge->Evaluate(this->LocalGenerator, config, headTarget,
|
||||||
&dagChecker, this, headTarget->LinkerLanguage),
|
&dagChecker, this, headTarget->LinkerLanguage),
|
||||||
libs);
|
libs);
|
||||||
@@ -7428,6 +7429,7 @@ void cmGeneratorTarget::ComputeLinkImplementationLibraries(
|
|||||||
nullptr);
|
nullptr);
|
||||||
cmGeneratorExpression ge(*btIt);
|
cmGeneratorExpression ge(*btIt);
|
||||||
std::unique_ptr<cmCompiledGeneratorExpression> const cge = ge.Parse(*le);
|
std::unique_ptr<cmCompiledGeneratorExpression> const cge = ge.Parse(*le);
|
||||||
|
cge->SetEvaluateForBuildsystem(true);
|
||||||
std::string const& evaluated =
|
std::string const& evaluated =
|
||||||
cge->Evaluate(this->LocalGenerator, config, head, &dagChecker, nullptr,
|
cge->Evaluate(this->LocalGenerator, config, head, &dagChecker, nullptr,
|
||||||
this->LinkerLanguage);
|
this->LinkerLanguage);
|
||||||
|
|||||||
@@ -2,6 +2,4 @@ include(RunCMake)
|
|||||||
|
|
||||||
run_cmake(NoSources)
|
run_cmake(NoSources)
|
||||||
run_cmake(OnlyObjectSources)
|
run_cmake(OnlyObjectSources)
|
||||||
if(NOT RunCMake_GENERATOR STREQUAL "Xcode" OR NOT "$ENV{CMAKE_OSX_ARCHITECTURES}" MATCHES "[;$]")
|
run_cmake(NoSourcesButLinkObjects)
|
||||||
run_cmake(NoSourcesButLinkObjects)
|
|
||||||
endif()
|
|
||||||
|
|||||||
@@ -16,11 +16,9 @@ run_cmake(SHAREDwithOnlyObjectSources)
|
|||||||
run_cmake(MODULEwithOnlyObjectSources)
|
run_cmake(MODULEwithOnlyObjectSources)
|
||||||
run_cmake(UNKNOWNwithOnlyObjectSources)
|
run_cmake(UNKNOWNwithOnlyObjectSources)
|
||||||
|
|
||||||
if(NOT RunCMake_GENERATOR STREQUAL "Xcode" OR NOT "$ENV{CMAKE_OSX_ARCHITECTURES}" MATCHES "[;$]")
|
run_cmake(INTERFACEwithNoSourcesButLinkObjects)
|
||||||
run_cmake(INTERFACEwithNoSourcesButLinkObjects)
|
run_cmake(OBJECTwithNoSourcesButLinkObjects)
|
||||||
run_cmake(OBJECTwithNoSourcesButLinkObjects)
|
run_cmake(STATICwithNoSourcesButLinkObjects)
|
||||||
run_cmake(STATICwithNoSourcesButLinkObjects)
|
run_cmake(SHAREDwithNoSourcesButLinkObjects)
|
||||||
run_cmake(SHAREDwithNoSourcesButLinkObjects)
|
run_cmake(MODULEwithNoSourcesButLinkObjects)
|
||||||
run_cmake(MODULEwithNoSourcesButLinkObjects)
|
run_cmake(UNKNOWNwithNoSourcesButLinkObjects)
|
||||||
run_cmake(UNKNOWNwithNoSourcesButLinkObjects)
|
|
||||||
endif()
|
|
||||||
|
|||||||
Reference in New Issue
Block a user