added SetLocal method

This commit is contained in:
Ken Martin 2001-05-18 11:12:21 -04:00
parent 06429282f5
commit 16fc8d78f1
5 changed files with 36 additions and 5 deletions

View File

@ -69,3 +69,7 @@ cmMSProjectGenerator::~cmMSProjectGenerator()
delete m_DSWMakefile; delete m_DSWMakefile;
} }
void cmMSProjectGenerator::SetLocal(bool local)
{
m_BuildDSW = !local;
}

View File

@ -70,20 +70,21 @@ public:
*/ */
virtual void GenerateMakefile(); virtual void GenerateMakefile();
//! controls the DSW/DSP settings
virtual void SetLocal(bool);
/** /**
* Turn off the generation of a Microsoft Visual C++ DSW file. * Turn off the generation of a Microsoft Visual C++ DSW file.
* This causes only the dsp file to be created. This * This causes only the dsp file to be created. This
* is used to run as a command line program from inside visual * is used to run as a command line program from inside visual
* studio. * studio.
*/ */
void BuildDSWOff() void BuildDSWOff() {m_BuildDSW = false;}
{m_BuildDSW = false;}
/** /**
* Turn on the generation of a Microsoft Visual C++ DSW file. * Turn on the generation of a Microsoft Visual C++ DSW file.
*/ */
void BuildDSWOn() void BuildDSWOn() {m_BuildDSW = true;}
{m_BuildDSW = true;}
/** /**
* Retrieve a pointer to a cmDSWMakefile instance. * Retrieve a pointer to a cmDSWMakefile instance.

View File

@ -67,6 +67,15 @@ public:
*/ */
virtual void GenerateMakefile() = 0; virtual void GenerateMakefile() = 0;
/**
* The local setting indicates that the generator is producing a
* fully configured makefile in the current directory. In Microsoft
* terms it is producing a DSP file if local is true and a DSW file
* if local is false. On UNIX when local is false it skips the
* dependecy check and recurses the full tree building the structure
*/
virtual void SetLocal(bool ) {};
protected: protected:
cmMakefile* m_Makefile; cmMakefile* m_Makefile;
}; };

View File

@ -875,3 +875,17 @@ void cmUnixMakefileGenerator::OutputMakeRule(std::ostream& fout,
} }
void cmUnixMakefileGenerator::SetLocal (bool local)
{
if (local)
{
m_CacheOnly = false;
m_Recurse = false;
}
else
{
m_CacheOnly = true;
m_Recurse = true;
}
}

View File

@ -55,7 +55,10 @@ class cmUnixMakefileGenerator : public cmMakefileGenerator
public: public:
///! Set cache only and recurse to false by default. ///! Set cache only and recurse to false by default.
cmUnixMakefileGenerator(); cmUnixMakefileGenerator();
//! just sets the Cache Only and Recurse flags
virtual void SetLocal(bool local);
/** /**
* If cache only is on. * If cache only is on.
* and only stub makefiles are generated, and no depends, for speed. * and only stub makefiles are generated, and no depends, for speed.