summaryrefslogtreecommitdiffstats
path: root/Source/cmGlobalUnixMakefileGenerator3.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'Source/cmGlobalUnixMakefileGenerator3.cxx')
-rw-r--r--Source/cmGlobalUnixMakefileGenerator3.cxx43
1 files changed, 23 insertions, 20 deletions
diff --git a/Source/cmGlobalUnixMakefileGenerator3.cxx b/Source/cmGlobalUnixMakefileGenerator3.cxx
index 78d36d2..4a0596c 100644
--- a/Source/cmGlobalUnixMakefileGenerator3.cxx
+++ b/Source/cmGlobalUnixMakefileGenerator3.cxx
@@ -509,26 +509,29 @@ cmGlobalUnixMakefileGenerator3
std::string makeTargetName;
depends.push_back("cmake_check_build_system");
- std::string dir = lg->GetMakefile()->GetStartOutputDirectory();
- dir = lg->Convert(dir.c_str(),cmLocalGenerator::HOME_OUTPUT,cmLocalGenerator::MAKEFILE);
- localName = dir;
- localName += "/directory";
-
- // write the directory rule
- commands.clear();
- makeTargetName = dir;
- makeTargetName += "/depend";
- commands.push_back(lg->GetRecursiveMakeCall("depend.make",makeTargetName.c_str()));
- makeTargetName = dir;
- makeTargetName += "/requires";
- commands.push_back(lg->GetRecursiveMakeCall("depend.make",makeTargetName.c_str()));
- makeTargetName = dir;
- makeTargetName += "/build";
- commands.push_back(lg->GetRecursiveMakeCall("build.make",makeTargetName.c_str()));
-
- // Write the rule.
- lg->WriteMakeRule(ruleFileStream, "Convenience name for target.",
- localName.c_str(), depends, commands);
+ if (lg->GetParent())
+ {
+ std::string dir = lg->GetMakefile()->GetStartOutputDirectory();
+ dir = lg->Convert(dir.c_str(),cmLocalGenerator::HOME_OUTPUT,cmLocalGenerator::MAKEFILE);
+ localName = dir;
+ localName += "/directory";
+
+ // write the directory rule
+ commands.clear();
+ makeTargetName = dir;
+ makeTargetName += "/depend";
+ commands.push_back(lg->GetRecursiveMakeCall("depend.make",makeTargetName.c_str()));
+ makeTargetName = dir;
+ makeTargetName += "/requires";
+ commands.push_back(lg->GetRecursiveMakeCall("depend.make",makeTargetName.c_str()));
+ makeTargetName = dir;
+ makeTargetName += "/build";
+ commands.push_back(lg->GetRecursiveMakeCall("build.make",makeTargetName.c_str()));
+
+ // Write the rule.
+ lg->WriteMakeRule(ruleFileStream, "Convenience name for directory.",
+ localName.c_str(), depends, commands);
+ }
// for each target Generate the rule files for each target.
const cmTargets& targets = lg->GetMakefile()->GetTargets();