summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2008-01-10 20:17:23 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2008-01-10 20:17:23 (GMT)
commitd92d51429edf07cc07c9da44c2d43927a6110f94 (patch)
treee167ce98ae6f1bfddf13d47085c9c53a0efe1940 /Source
parentd6a21fc25cbd35be978c7bab9ea7a349ab7b7fca (diff)
downloadCMake-d92d51429edf07cc07c9da44c2d43927a6110f94.zip
CMake-d92d51429edf07cc07c9da44c2d43927a6110f94.tar.gz
CMake-d92d51429edf07cc07c9da44c2d43927a6110f94.tar.bz2
BUG: fix for bug 6193, fix xcode depend helper
Diffstat (limited to 'Source')
-rw-r--r--Source/cmGlobalXCodeGenerator.cxx21
-rw-r--r--Source/cmInstallTargetGenerator.cxx15
2 files changed, 16 insertions, 20 deletions
diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx
index d02fe26..44d857a 100644
--- a/Source/cmGlobalXCodeGenerator.cxx
+++ b/Source/cmGlobalXCodeGenerator.cxx
@@ -294,11 +294,6 @@ cmGlobalXCodeGenerator::AddExtraTargets(cmLocalGenerator* root,
}
cmCustomCommandLines commandLines;
commandLines.push_back(makecommand);
- mf->AddUtilityCommand("XCODE_DEPEND_HELPER", true,
- no_working_directory,
- no_depends,
- commandLines);
-
// Add Re-Run CMake rules
this->CreateReRunCMakeFile(root);
@@ -316,13 +311,22 @@ cmGlobalXCodeGenerator::AddExtraTargets(cmLocalGenerator* root,
for(cmTargets::iterator l = tgts.begin(); l != tgts.end(); l++)
{
cmTarget& target = l->second;
- // make all exe, shared libs and modules depend
- // on the XCODE_DEPEND_HELPER target
+ // make all exe, shared libs and modules
+ // run the depend check makefile as a post build rule
+ // this will make sure that when the next target is built
+ // things are up-to-date
if((target.GetType() == cmTarget::EXECUTABLE ||
+ target.GetType() == cmTarget::STATIC_LIBRARY ||
target.GetType() == cmTarget::SHARED_LIBRARY ||
target.GetType() == cmTarget::MODULE_LIBRARY))
{
- target.AddUtility("XCODE_DEPEND_HELPER");
+ lg->GetMakefile()->AddCustomCommandToTarget(target.GetName(),
+ no_depends,
+ commandLines,
+ cmTarget::POST_BUILD,
+ "Depend check for xcode",
+ dir.c_str());
+
}
if(!target.GetPropertyAsBool("EXCLUDE_FROM_ALL"))
{
@@ -2849,6 +2853,7 @@ cmGlobalXCodeGenerator
newDir += "/";
newDir += config;
dir = newDir;
+ dir += framework;
}
else
{
diff --git a/Source/cmInstallTargetGenerator.cxx b/Source/cmInstallTargetGenerator.cxx
index 15aa9e6..d6a9345 100644
--- a/Source/cmInstallTargetGenerator.cxx
+++ b/Source/cmInstallTargetGenerator.cxx
@@ -238,18 +238,9 @@ cmInstallTargetGenerator
{
// Compute the build tree location of the framework directory
std::string from1 = fromDirConfig;
- if(config && *config)
- {
- from1 += "/";
- from1 += targetName;
- from1 += ".framework";
- }
- else
- {
- // Remove trailing slashes... so that from1 ends with ".framework":
- //
- cmSystemTools::ConvertToUnixSlashes(from1);
- }
+ // Remove trailing slashes... so that from1 ends with ".framework":
+ //
+ cmSystemTools::ConvertToUnixSlashes(from1);
files.push_back(from1);
type = cmTarget::INSTALL_DIRECTORY;