summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CMakeRules.make.in2
-rw-r--r--Source/cmUnixMakefileGenerator.cxx19
2 files changed, 20 insertions, 1 deletions
diff --git a/CMakeRules.make.in b/CMakeRules.make.in
index 6e1b50c..3a8e249 100644
--- a/CMakeRules.make.in
+++ b/CMakeRules.make.in
@@ -18,7 +18,7 @@ depend: ${CMAKE} ${SUBDIR_DEPEND}
clean: ${SUBDIR_CLEAN}
- rm -f ${SRC_OBJ} ${EXECUTABLES}
+ rm -f ${SRC_OBJ} ${EXECUTABLES} ${TARGETS}
CMakeTargets.make: ${CMAKE} ${srcdir}/CMakeLists.txt
${CMAKE} ${currentdir}/CMakeLists.txt -S${currentdir} -O${currentbindir} -H${topdir} -B${CMAKE_CONFIG_DIR}
diff --git a/Source/cmUnixMakefileGenerator.cxx b/Source/cmUnixMakefileGenerator.cxx
index 60941fe..6575b58 100644
--- a/Source/cmUnixMakefileGenerator.cxx
+++ b/Source/cmUnixMakefileGenerator.cxx
@@ -107,6 +107,25 @@ void cmUnixMakefileGenerator::OutputTargetRules(std::ostream& fout)
}
fout << "\n\n";
}
+
+ // get the classes from the source lists then add them to the SRC_OBJ list
+ fout << "SRC_OBJ = ";
+ for(cmTargets::const_iterator l = tgts.begin();
+ l != tgts.end(); l++)
+ {
+ std::vector<cmClassFile> classes =
+ m_Makefile->GetClassesFromSourceLists(l->second.GetSourceLists());
+ for(std::vector<cmClassFile>::iterator i = classes.begin();
+ i != classes.end(); i++)
+ {
+ if(!i->m_HeaderFileOnly)
+ {
+ fout << "\\\n" << i->m_ClassName << ".o ";
+ }
+ }
+ }
+ fout << "\n\n";
+
}