summaryrefslogtreecommitdiffstats
path: root/Source/cmMakefileTargetGenerator.h
diff options
context:
space:
mode:
authorNicolas Despres <nicolas.despres@gmail.com>2012-07-16 15:34:22 (GMT)
committerPeter Kümmel <syntheticpp@gmx.net>2012-07-17 12:03:10 (GMT)
commit5d885db416a4cec236ba6422868dc3db3d766bc4 (patch)
treed7d30b2df4e3c706c7598407b96c0abbdcba36ee /Source/cmMakefileTargetGenerator.h
parent3b2a01e80ef0faf626afd4c5031395c00e1c9ecd (diff)
downloadCMake-5d885db416a4cec236ba6422868dc3db3d766bc4.zip
CMake-5d885db416a4cec236ba6422868dc3db3d766bc4.tar.gz
CMake-5d885db416a4cec236ba6422868dc3db3d766bc4.tar.bz2
Re-factor bundle content copying rules generation.
Diffstat (limited to 'Source/cmMakefileTargetGenerator.h')
-rw-r--r--Source/cmMakefileTargetGenerator.h16
1 files changed, 14 insertions, 2 deletions
diff --git a/Source/cmMakefileTargetGenerator.h b/Source/cmMakefileTargetGenerator.h
index 36a1f68..d5eb634 100644
--- a/Source/cmMakefileTargetGenerator.h
+++ b/Source/cmMakefileTargetGenerator.h
@@ -13,6 +13,7 @@
#define cmMakefileTargetGenerator_h
#include "cmLocalUnixMakefileGenerator3.h"
+#include "cmOSXBundleGenerator.h"
class cmCustomCommand;
class cmDependInformation;
@@ -73,8 +74,17 @@ protected:
void WriteTargetDependRules();
// write rules for Mac OS X Application Bundle content.
- void WriteMacOSXContentRules(std::vector<cmSourceFile*> const& sources);
- void WriteMacOSXContentRules(cmSourceFile& source, const char* pkgloc);
+ class MacOSXContentGeneratorType
+ : public cmOSXBundleGenerator::MacOSXContentGeneratorType
+ {
+ public:
+ MacOSXContentGeneratorType(cmMakefileTargetGenerator* Generator);
+ virtual void operator()(cmSourceFile& source, const char* pkgloc);
+
+ private:
+ cmMakefileTargetGenerator* Generator;
+ };
+ friend class MacOSXContentGeneratorType;
// write the rules for an object
void WriteObjectRuleFiles(cmSourceFile& source);
@@ -223,6 +233,8 @@ protected:
// Mac OS X content info.
std::string MacContentDirectory;
std::set<cmStdString> MacContentFolders;
+ cmOSXBundleGenerator* OSXBundleGenerator;
+ MacOSXContentGeneratorType MacOSXContentGenerator;
typedef std::map<cmStdString, cmStdString> ByLanguageMap;
std::string GetFlags(const std::string &l);