summaryrefslogtreecommitdiffstats
path: root/Source/cmGlobalNinjaGenerator.h
diff options
context:
space:
mode:
authorPeter Kümmel <syntheticpp@gmx.net>2012-07-18 09:27:49 (GMT)
committerPeter Kümmel <syntheticpp@gmx.net>2012-07-18 09:27:49 (GMT)
commit7751966297e3b68b6c9904300f96bb57882af11a (patch)
tree54d87eba73fb853c5d66f5d68e2b36a5cea7d35d /Source/cmGlobalNinjaGenerator.h
parentc3988ee871c99e31ad4d10e9033d89da902d5694 (diff)
downloadCMake-7751966297e3b68b6c9904300f96bb57882af11a.zip
CMake-7751966297e3b68b6c9904300f96bb57882af11a.tar.gz
CMake-7751966297e3b68b6c9904300f96bb57882af11a.tar.bz2
Ninja: remove 'friend' in ninja code
Diffstat (limited to 'Source/cmGlobalNinjaGenerator.h')
-rw-r--r--Source/cmGlobalNinjaGenerator.h104
1 files changed, 52 insertions, 52 deletions
diff --git a/Source/cmGlobalNinjaGenerator.h b/Source/cmGlobalNinjaGenerator.h
index 61353c5..b2fe243 100644
--- a/Source/cmGlobalNinjaGenerator.h
+++ b/Source/cmGlobalNinjaGenerator.h
@@ -153,6 +153,7 @@ public:
static bool IsMinGW() { return UsingMinGW; }
+
public:
/// Default constructor.
cmGlobalNinjaGenerator();
@@ -216,12 +217,12 @@ public:
}
virtual const char* GetCleanTargetName() const { return "clean"; }
-public:
- cmGeneratedFileStream* GetBuildFileStream() const
- { return this->BuildFileStream; }
- cmGeneratedFileStream* GetRulesFileStream() const
- { return this->RulesFileStream; }
+ cmGeneratedFileStream* GetBuildFileStream() const {
+ return this->BuildFileStream; }
+
+ cmGeneratedFileStream* GetRulesFileStream() const {
+ return this->RulesFileStream; }
void AddCXXCompileCommand(const std::string &commandLine,
const std::string &sourceFile);
@@ -246,27 +247,63 @@ public:
void AddCustomCommandRule();
void AddMacOSXContentRule();
+ bool HasCustomCommandOutput(const std::string &output) {
+ return this->CustomCommandOutputs.find(output) !=
+ this->CustomCommandOutputs.end();
+ }
+
+ /// Called when we have seen the given custom command. Returns true
+ /// if we has seen it before.
+ bool SeenCustomCommand(cmCustomCommand const *cc) {
+ return !this->CustomCommands.insert(cc).second;
+ }
+
+ /// Called when we have seen the given custom command output.
+ void SeenCustomCommandOutput(const std::string &output) {
+ this->CustomCommandOutputs.insert(output);
+ // We don't need the assumed dependencies anymore, because we have
+ // an output.
+ this->AssumedSourceDependencies.erase(output);
+ }
+
+ void AddAssumedSourceDependencies(const std::string &source,
+ const cmNinjaDeps &deps) {
+ std::set<std::string> &ASD = this->AssumedSourceDependencies[source];
+ // Because we may see the same source file multiple times (same source
+ // specified in multiple targets), compute the union of any assumed
+ // dependencies.
+ ASD.insert(deps.begin(), deps.end());
+ }
+
+ void AppendTargetOutputs(cmTarget* target, cmNinjaDeps& outputs);
+ void AppendTargetDepends(cmTarget* target, cmNinjaDeps& outputs);
+ void AddDependencyToAll(cmTarget* target);
+ void AddDependencyToAll(const std::string& input);
+
+ const std::vector<cmLocalGenerator*>& GetLocalGenerators() const {
+ return LocalGenerators; }
+
+ bool IsExcluded(cmLocalGenerator* root, cmTarget& target) {
+ return cmGlobalGenerator::IsExcluded(root, target); }
+
+ int GetRuleCmdLength(const std::string& name) {
+ return RuleCmdLength[name]; }
+
+ void AddTargetAlias(const std::string& alias, cmTarget* target);
+
+
protected:
/// Overloaded methods.
/// @see cmGlobalGenerator::CheckALLOW_DUPLICATE_CUSTOM_TARGETS()
virtual bool CheckALLOW_DUPLICATE_CUSTOM_TARGETS() { return true; }
+
private:
/// @see cmGlobalGenerator::ComputeTargetObjects
virtual void ComputeTargetObjects(cmGeneratorTarget* gt) const;
-private:
- // In order to access the AddDependencyToAll() functions and co.
- friend class cmLocalNinjaGenerator;
-
- // In order to access the SeenCustomCommand() function.
- friend class cmNinjaTargetGenerator;
- friend class cmNinjaNormalTargetGenerator;
- friend class cmNinjaUtilityTargetGenerator;
-
-private:
void OpenBuildFileStream();
void CloseBuildFileStream();
@@ -278,15 +315,8 @@ private:
/// Write the common disclaimer text at the top of each build file.
void WriteDisclaimer(std::ostream& os);
- void AddDependencyToAll(cmTarget* target);
- void AddDependencyToAll(const std::string& input);
-
void WriteAssumedSourceDependencies();
- void AppendTargetOutputs(cmTarget* target, cmNinjaDeps& outputs);
- void AppendTargetDepends(cmTarget* target, cmNinjaDeps& outputs);
-
- void AddTargetAlias(const std::string& alias, cmTarget* target);
void WriteTargetAliases(std::ostream& os);
void WriteBuiltinTargets(std::ostream& os);
@@ -295,39 +325,9 @@ private:
void WriteTargetClean(std::ostream& os);
void WriteTargetHelp(std::ostream& os);
- /// Called when we have seen the given custom command. Returns true
- /// if we has seen it before.
- bool SeenCustomCommand(cmCustomCommand const *cc) {
- return !this->CustomCommands.insert(cc).second;
- }
-
- /// Called when we have seen the given custom command output.
- void SeenCustomCommandOutput(const std::string &output) {
- this->CustomCommandOutputs.insert(output);
- // We don't need the assumed dependencies anymore, because we have
- // an output.
- this->AssumedSourceDependencies.erase(output);
- }
-
- bool HasCustomCommandOutput(const std::string &output) {
- return this->CustomCommandOutputs.find(output) !=
- this->CustomCommandOutputs.end();
- }
-
- void AddAssumedSourceDependencies(const std::string &source,
- const cmNinjaDeps &deps) {
- std::set<std::string> &ASD = this->AssumedSourceDependencies[source];
- // Because we may see the same source file multiple times (same source
- // specified in multiple targets), compute the union of any assumed
- // dependencies.
- ASD.insert(deps.begin(), deps.end());
- }
-
std::string ninjaCmd() const;
- int GetRuleCmdLength(const std::string& name) { return RuleCmdLength[name]; }
-private:
/// The file containing the build statement. (the relation ship of the
/// compilation DAG).
cmGeneratedFileStream* BuildFileStream;