From 97e658c571432757902f3333bb15aab90156dc9f Mon Sep 17 00:00:00 2001 From: Brad King Date: Mon, 7 Jul 2008 10:05:29 -0400 Subject: [PATCH] BUG: Fix AppBundle=>Library depends in Xcode - The Xcode generator xcode-depend-helper needs to account for the paths of executables within application bundles. - See bug #7278. --- Source/cmGlobalXCodeGenerator.cxx | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index 84d088f72..b2afa7fd1 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -2579,9 +2579,14 @@ cmGlobalXCodeGenerator::CreateXCodeDependHackTarget( t->GetType() == cmTarget::SHARED_LIBRARY || t->GetType() == cmTarget::MODULE_LIBRARY) { + std::string tfull = t->GetFullPath(configName); + if(t->IsAppBundleOnApple()) + { + tfull += ".app/Contents/MacOS/"; + tfull += t->GetFullName(configName); + } makefileStream << "\\\n\t" << - this->ConvertToRelativeForMake( - t->GetFullPath(configName).c_str()); + this->ConvertToRelativeForMake(tfull.c_str()); } } makefileStream << "\n\n"; @@ -2637,6 +2642,11 @@ cmGlobalXCodeGenerator::CreateXCodeDependHackTarget( { // Create a rule for this target. std::string tfull = t->GetFullPath(configName); + if(t->IsAppBundleOnApple()) + { + tfull += ".app/Contents/MacOS/"; + tfull += t->GetFullName(configName); + } makefileStream << this->ConvertToRelativeForMake(tfull.c_str()) << ":";