summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2014-03-14 10:02:47 (GMT)
committerStephen Kelly <steveire@gmail.com>2014-03-15 08:29:44 (GMT)
commitc481fadc07e72193f16a4f1fb9d477db133f1120 (patch)
tree374436fff0e80d70dfcb38efc510018aad6f0cd8
parentf6da044080d854b9ad87cef5c2a6f5195722a6da (diff)
downloadCMake-c481fadc07e72193f16a4f1fb9d477db133f1120.zip
CMake-c481fadc07e72193f16a4f1fb9d477db133f1120.tar.gz
CMake-c481fadc07e72193f16a4f1fb9d477db133f1120.tar.bz2
cmGeneratorTarget: Don't store ObjectSources for object libraries.
Compute them on demand instead.
-rw-r--r--Source/cmGeneratorTarget.cxx10
-rw-r--r--Source/cmGeneratorTarget.h1
2 files changed, 4 insertions, 7 deletions
diff --git a/Source/cmGeneratorTarget.cxx b/Source/cmGeneratorTarget.cxx
index 8efd7bb..2a144c6 100644
--- a/Source/cmGeneratorTarget.cxx
+++ b/Source/cmGeneratorTarget.cxx
@@ -310,10 +310,6 @@ cmGeneratorTarget
::GetObjectSources(std::vector<cmSourceFile const*> &data) const
{
IMPLEMENT_VISIT(ObjectSources);
- if (this->Target->GetType() == cmTarget::OBJECT_LIBRARY)
- {
- this->ObjectSources = data;
- }
}
//----------------------------------------------------------------------------
@@ -577,9 +573,11 @@ cmGeneratorTarget::UseObjectLibraries(std::vector<std::string>& objs) const
cmTarget* objLib = *ti;
cmGeneratorTarget* ogt =
this->GlobalGenerator->GetGeneratorTarget(objLib);
+ std::vector<cmSourceFile const*> objectSources;
+ ogt->GetObjectSources(objectSources);
for(std::vector<cmSourceFile const*>::const_iterator
- si = ogt->ObjectSources.begin();
- si != ogt->ObjectSources.end(); ++si)
+ si = objectSources.begin();
+ si != objectSources.end(); ++si)
{
std::string obj = ogt->ObjectDirectory;
obj += ogt->Objects[*si];
diff --git a/Source/cmGeneratorTarget.h b/Source/cmGeneratorTarget.h
index 139e736..53e27c5 100644
--- a/Source/cmGeneratorTarget.h
+++ b/Source/cmGeneratorTarget.h
@@ -127,7 +127,6 @@ private:
std::map<cmSourceFile const*, std::string> Objects;
std::set<cmSourceFile const*> ExplicitObjectName;
- mutable std::vector<cmSourceFile const*> ObjectSources;
std::vector<cmTarget*> ObjectLibraries;
mutable std::map<std::string, std::vector<std::string> > SystemIncludesCache;