summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2015-04-21 13:39:53 (GMT)
committerCMake Topic Stage <kwrobot@kitware.com>2015-04-21 13:39:53 (GMT)
commit81c01d4a3461cf645ff3db794cf6217318f268d3 (patch)
treec1442153b091f744436d07e3b6c6dde8d9bfa2d0 /Source
parent0d852d4c6525594a6dea8c95db629b7341bc21d3 (diff)
parent8090904198238bce7108d7734099f35c9d1bfab2 (diff)
downloadCMake-81c01d4a3461cf645ff3db794cf6217318f268d3.zip
CMake-81c01d4a3461cf645ff3db794cf6217318f268d3.tar.gz
CMake-81c01d4a3461cf645ff3db794cf6217318f268d3.tar.bz2
Merge topic 'disable-cmMakefile-copy'
80909041 cmMakefile: Disable copy constructor. f3af9517 CPack: Don't copy cmMakefile. Just push a scope instead.
Diffstat (limited to 'Source')
-rw-r--r--Source/CPack/cpack.cxx4
-rw-r--r--Source/cmMakefile.cxx46
-rw-r--r--Source/cmMakefile.h3
3 files changed, 4 insertions, 49 deletions
diff --git a/Source/CPack/cpack.cxx b/Source/CPack/cpack.cxx
index 2752270..2207873 100644
--- a/Source/CPack/cpack.cxx
+++ b/Source/CPack/cpack.cxx
@@ -356,8 +356,8 @@ int main (int argc, char const* const* argv)
++it )
{
const char* gen = it->c_str();
- cmMakefile newMF(*globalMF);
- cmMakefile* mf = &newMF;
+ cmMakefile::ScopePushPop raii(globalMF);
+ cmMakefile* mf = globalMF;
cmCPack_Log(&log, cmCPackLog::LOG_VERBOSE,
"Specified generator: " << gen << std::endl);
if ( parsed && !mf->GetDefinition("CPACK_PACKAGE_NAME") )
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
index 7be920d..83efc05 100644
--- a/Source/cmMakefile.cxx
+++ b/Source/cmMakefile.cxx
@@ -106,52 +106,6 @@ cmMakefile::cmMakefile(): Internal(new Internals)
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()
{
diff --git a/Source/cmMakefile.h b/Source/cmMakefile.h
index 73d6910..e3566c5 100644
--- a/Source/cmMakefile.h
+++ b/Source/cmMakefile.h
@@ -75,7 +75,6 @@ public:
* Construct an empty makefile.
*/
cmMakefile();
- cmMakefile(const cmMakefile& mf);
/**
* Destructor.
@@ -988,6 +987,8 @@ protected:
cmExecutionStatus &status);
private:
+ cmMakefile(const cmMakefile& mf);
+ cmMakefile& operator=(const cmMakefile& mf);
void Initialize();