summaryrefslogtreecommitdiffstats
path: root/Source/cmUnixMakefileGenerator.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/cmUnixMakefileGenerator.h')
-rw-r--r--Source/cmUnixMakefileGenerator.h23
1 files changed, 22 insertions, 1 deletions
diff --git a/Source/cmUnixMakefileGenerator.h b/Source/cmUnixMakefileGenerator.h
index 4e8b069..ca13919 100644
--- a/Source/cmUnixMakefileGenerator.h
+++ b/Source/cmUnixMakefileGenerator.h
@@ -53,6 +53,22 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
class cmUnixMakefileGenerator : public cmMakefileGenerator
{
public:
+ ///! Set cache only and recurse to false by default.
+ cmUnixMakefileGenerator();
+
+ /**
+ * If cache only is on.
+ * and only stub makefiles are generated, and no depends, for speed.
+ * The default is OFF.
+ **/
+ void SetCacheOnlyOn() {m_CacheOnly = true;}
+ void SetCacheOnlyOff() {m_CacheOnly = false;}
+ /**
+ * If recurse is on, then all the makefiles below this one are parsed as well.
+ */
+ void SetRecurseOn() {m_Recurse = true;}
+ void SetRecurseOff() {m_Recurse = false;}
+
/**
* Produce the makefile (in this case a Unix makefile).
*/
@@ -65,7 +81,9 @@ public:
*/
void OutputObjectDepends(std::ostream&);
-protected:
+private:
+ void RecursiveGenerateCacheOnly();
+ void GenerateCacheOnly();
void OutputMakefile(const char* file);
void OutputMakeFlags(std::ostream&);
void OutputVerbatim(std::ostream&);
@@ -76,6 +94,9 @@ protected:
void OutputDependInformation(std::ostream&);
void OutputDependencies(std::ostream&);
void OutputCustomRules(std::ostream&);
+private:
+ bool m_CacheOnly;
+ bool m_Recurse;
};
#endif