summaryrefslogtreecommitdiffstats
path: root/Source/cmNinjaTargetGenerator.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/cmNinjaTargetGenerator.h')
-rw-r--r--Source/cmNinjaTargetGenerator.h19
1 files changed, 14 insertions, 5 deletions
diff --git a/Source/cmNinjaTargetGenerator.h b/Source/cmNinjaTargetGenerator.h
index 49168c4..0a3329f 100644
--- a/Source/cmNinjaTargetGenerator.h
+++ b/Source/cmNinjaTargetGenerator.h
@@ -16,6 +16,7 @@
#include "cmStandardIncludes.h"
#include "cmNinjaTypes.h"
#include "cmLocalNinjaGenerator.h"
+#include "cmOSXBundleGenerator.h"
class cmTarget;
class cmGlobalNinjaGenerator;
@@ -24,7 +25,6 @@ class cmGeneratorTarget;
class cmMakefile;
class cmSourceFile;
class cmCustomCommand;
-class cmOSXBundleGenerator;
class cmNinjaTargetGenerator
{
@@ -115,12 +115,21 @@ protected:
void EnsureDirectoryExists(const std::string& dir);
void EnsureParentDirectoryExists(const std::string& path);
- void WriteMacOSXContentBuildStatements(
- std::vector<cmSourceFile*> const& sources);
- void WriteMacOSXContentBuildStatement(cmSourceFile& source,
- const char* pkgloc);
+ // write rules for Mac OS X Application Bundle content.
+ class MacOSXContentGeneratorType
+ : public cmOSXBundleGenerator::MacOSXContentGeneratorType
+ {
+ public:
+ MacOSXContentGeneratorType(cmNinjaTargetGenerator* Generator);
+ virtual void operator()(cmSourceFile& source, const char* pkgloc);
+
+ private:
+ cmNinjaTargetGenerator* Generator;
+ };
+ friend class MacOSXContentGeneratorType;
protected:
+ MacOSXContentGeneratorType MacOSXContentGenerator;
// Properly initialized by sub-classes.
cmOSXBundleGenerator* OSXBundleGenerator;
std::set<cmStdString> MacContentFolders;