summaryrefslogtreecommitdiff
path: root/Source/cmMakefileTargetGenerator.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2006-08-15 12:00:27 -0400
committerBrad King <brad.king@kitware.com>2006-08-15 12:00:27 -0400
commitc6f1a11480f478b430fcb798ddeac972ec17ae6a (patch)
treea9e71d302bcb44201b223dee7528fcfb726662b9 /Source/cmMakefileTargetGenerator.cxx
parent7169980b59c16370fa5abec8159afc5cc84a96cd (diff)
downloadcmake-c6f1a11480f478b430fcb798ddeac972ec17ae6a.tar.gz
BUG: Added object language to list of object files in a local generator's directory. Fixed generation of preprocessing and assembly rules to be done only for C and C++ objects.
Diffstat (limited to 'Source/cmMakefileTargetGenerator.cxx')
-rw-r--r--Source/cmMakefileTargetGenerator.cxx10
1 files changed, 7 insertions, 3 deletions
diff --git a/Source/cmMakefileTargetGenerator.cxx b/Source/cmMakefileTargetGenerator.cxx
index 098aa427f7..558a78f187 100644
--- a/Source/cmMakefileTargetGenerator.cxx
+++ b/Source/cmMakefileTargetGenerator.cxx
@@ -350,7 +350,9 @@ void cmMakefileTargetGenerator::WriteObjectRuleFiles(cmSourceFile& source)
objNoTargetDir = cmSystemTools::GetFilenameName(objNoTargetDir);
}
this->LocalGenerator->LocalObjectFiles[objNoTargetDir].
- push_back(this->Target);
+ push_back(
+ cmLocalUnixMakefileGenerator3::LocalObjectEntry(this->Target, lang)
+ );
}
//----------------------------------------------------------------------------
@@ -495,9 +497,11 @@ cmMakefileTargetGenerator
relativeObj.c_str(),
depends, commands, false);
- bool do_preprocess_rules =
+ bool lang_is_c_or_cxx = ((strcmp(lang, "C") == 0) ||
+ (strcmp(lang, "CXX") == 0));
+ bool do_preprocess_rules = lang_is_c_or_cxx &&
this->LocalGenerator->GetCreatePreprocessedSourceRules();
- bool do_assembly_rules =
+ bool do_assembly_rules = lang_is_c_or_cxx &&
this->LocalGenerator->GetCreateAssemblySourceRules();
if(do_preprocess_rules || do_assembly_rules)
{