mirror of
https://github.com/reactos/CMake.git
synced 2024-11-28 22:10:32 +00:00
Merge topic 'ninja-framework-POST_BUILD'
20278872
Ninja: Fix POST_BUILD commands on macOS Frameworks
This commit is contained in:
commit
dabd177922
@ -652,7 +652,9 @@ void cmNinjaNormalTargetGenerator::WriteLinkStatement()
|
||||
std::string postBuildCmdLine = localGen.BuildCommandLine(postBuildCmdLines);
|
||||
|
||||
cmNinjaVars symlinkVars;
|
||||
if (targetOutput == targetOutputReal) {
|
||||
bool const symlinkNeeded =
|
||||
(targetOutput != targetOutputReal && !gt.IsFrameworkOnApple());
|
||||
if (!symlinkNeeded) {
|
||||
vars["POST_BUILD"] = postBuildCmdLine;
|
||||
} else {
|
||||
vars["POST_BUILD"] = ":";
|
||||
@ -694,7 +696,7 @@ void cmNinjaNormalTargetGenerator::WriteLinkStatement()
|
||||
commandLineLengthLimit, &usedResponseFile);
|
||||
this->WriteLinkRule(usedResponseFile);
|
||||
|
||||
if (targetOutput != targetOutputReal && !gt.IsFrameworkOnApple()) {
|
||||
if (symlinkNeeded) {
|
||||
if (targetType == cmState::EXECUTABLE) {
|
||||
globalGen.WriteBuild(
|
||||
this->GetBuildFileStream(),
|
||||
|
@ -51,6 +51,11 @@ install(TARGETS foo bar
|
||||
# duplicate install rules for the pieces of the framework.
|
||||
)
|
||||
|
||||
# test that framework post-build commands run
|
||||
add_custom_command(TARGET foo POST_BUILD COMMAND ${CMAKE_COMMAND} -E touch foo-post-build)
|
||||
add_custom_target(fooCustom ALL COMMAND ${CMAKE_COMMAND} -E copy foo-post-build foo-custom)
|
||||
add_dependencies(fooCustom foo)
|
||||
|
||||
# Make a static library and apply the framework properties to it to verify
|
||||
# that everything still builds correctly, but it will not actually produce
|
||||
# a framework... The framework properties only apply when the library type
|
||||
|
Loading…
Reference in New Issue
Block a user