Merge topic 'disable-cmMakefile-copy'

80909041 cmMakefile: Disable copy constructor.
f3af9517 CPack: Don't copy cmMakefile. Just push a scope instead.
This commit is contained in:
Brad King 2015-04-21 09:39:53 -04:00 committed by CMake Topic Stage
commit 81c01d4a34
3 changed files with 4 additions and 49 deletions

View File

@ -356,8 +356,8 @@ int main (int argc, char const* const* argv)
++it ) ++it )
{ {
const char* gen = it->c_str(); const char* gen = it->c_str();
cmMakefile newMF(*globalMF); cmMakefile::ScopePushPop raii(globalMF);
cmMakefile* mf = &newMF; cmMakefile* mf = globalMF;
cmCPack_Log(&log, cmCPackLog::LOG_VERBOSE, cmCPack_Log(&log, cmCPackLog::LOG_VERBOSE,
"Specified generator: " << gen << std::endl); "Specified generator: " << gen << std::endl);
if ( parsed && !mf->GetDefinition("CPACK_PACKAGE_NAME") ) if ( parsed && !mf->GetDefinition("CPACK_PACKAGE_NAME") )

View File

@ -106,52 +106,6 @@ cmMakefile::cmMakefile(): Internal(new Internals)
this->SuppressWatches = false; this->SuppressWatches = false;
} }
cmMakefile::cmMakefile(const cmMakefile& mf): Internal(new Internals)
{
this->Internal->VarStack.push(mf.Internal->VarStack.top().Closure());
this->Internal->VarInitStack.push(mf.Internal->VarInitStack.top());
this->Internal->VarUsageStack.push(mf.Internal->VarUsageStack.top());
this->cmStartDirectory = mf.cmStartDirectory;
this->StartOutputDirectory = mf.StartOutputDirectory;
this->cmHomeDirectory = mf.cmHomeDirectory;
this->HomeOutputDirectory = mf.HomeOutputDirectory;
this->cmCurrentListFile = mf.cmCurrentListFile;
this->ProjectName = mf.ProjectName;
this->Targets = mf.Targets;
this->SourceFiles = mf.SourceFiles;
this->Tests = mf.Tests;
this->LinkDirectories = mf.LinkDirectories;
this->SystemIncludeDirectories = mf.SystemIncludeDirectories;
this->ListFiles = mf.ListFiles;
this->OutputFiles = mf.OutputFiles;
this->LinkLibraries = mf.LinkLibraries;
this->InstallGenerators = mf.InstallGenerators;
this->TestGenerators = mf.TestGenerators;
this->IncludeFileRegularExpression = mf.IncludeFileRegularExpression;
this->ComplainFileRegularExpression = mf.ComplainFileRegularExpression;
this->SourceFileExtensions = mf.SourceFileExtensions;
this->HeaderFileExtensions = mf.HeaderFileExtensions;
this->DefineFlags = mf.DefineFlags;
this->DefineFlagsOrig = mf.DefineFlagsOrig;
#if defined(CMAKE_BUILD_WITH_CMAKE)
this->SourceGroups = mf.SourceGroups;
#endif
this->LocalGenerator = mf.LocalGenerator;
this->FunctionBlockers = mf.FunctionBlockers;
this->MacrosList = mf.MacrosList;
this->Properties = mf.Properties;
this->WarnUnused = mf.WarnUnused;
this->Initialize();
this->CheckSystemVars = mf.CheckSystemVars;
this->ListFileStack = mf.ListFileStack;
this->OutputToSource = mf.OutputToSource;
this->SuppressWatches = mf.SuppressWatches;
}
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
void cmMakefile::Initialize() void cmMakefile::Initialize()
{ {

View File

@ -75,7 +75,6 @@ public:
* Construct an empty makefile. * Construct an empty makefile.
*/ */
cmMakefile(); cmMakefile();
cmMakefile(const cmMakefile& mf);
/** /**
* Destructor. * Destructor.
@ -988,6 +987,8 @@ protected:
cmExecutionStatus &status); cmExecutionStatus &status);
private: private:
cmMakefile(const cmMakefile& mf);
cmMakefile& operator=(const cmMakefile& mf);
void Initialize(); void Initialize();