summaryrefslogtreecommitdiffstats
path: root/Source/cmTarget.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2013-06-03 13:56:32 (GMT)
committerCMake Topic Stage <kwrobot@kitware.com>2013-06-03 13:56:32 (GMT)
commitb0759da303ebf8a49cb840504591c92fd290f419 (patch)
treebdf08b3919b5c068e51fef9040ac05432e2481d4 /Source/cmTarget.h
parent800e764e8047e194cb5532b6528104a16f83bd8f (diff)
parent373faae5e1c936351b143b0561c61ef9884303e1 (diff)
downloadCMake-b0759da303ebf8a49cb840504591c92fd290f419.zip
CMake-b0759da303ebf8a49cb840504591c92fd290f419.tar.gz
CMake-b0759da303ebf8a49cb840504591c92fd290f419.tar.bz2
Merge topic 'framework-refactor'
373faae Refactor how bundles and frameworks are supported.
Diffstat (limited to 'Source/cmTarget.h')
-rw-r--r--Source/cmTarget.h33
1 files changed, 20 insertions, 13 deletions
diff --git a/Source/cmTarget.h b/Source/cmTarget.h
index 508fc11..402379c 100644
--- a/Source/cmTarget.h
+++ b/Source/cmTarget.h
@@ -412,10 +412,8 @@ public:
/** Return true if builtin chrpath will work for this target */
bool IsChrpathUsed(const char* config);
- std::string GetInstallNameDirForBuildTree(const char* config,
- bool for_xcode = false);
- std::string GetInstallNameDirForInstallTree(const char* config,
- bool for_xcode = false);
+ std::string GetInstallNameDirForBuildTree(const char* config);
+ std::string GetInstallNameDirForInstallTree();
cmComputeLinkInformation* GetLinkInformation(const char* config,
cmTarget *head = 0);
@@ -467,6 +465,10 @@ public:
/** Return whether this target is an executable Bundle on Apple. */
bool IsAppBundleOnApple();
+ /** Return whether this target is an executable Bundle, a framework
+ or CFBundle on Apple. */
+ bool IsBundleOnApple();
+
/** Return the framework version string. Undefined if
IsFrameworkOnApple returns false. */
std::string GetFrameworkVersion();
@@ -481,21 +483,21 @@ public:
directory. */
bool UsesDefaultOutputDir(const char* config, bool implib);
- /** Append to @a base the mac content directory and return it. */
- std::string BuildMacContentDirectory(const std::string& base,
- const char* config = 0,
- bool includeMacOS = true);
-
/** @return the mac content directory for this target. */
- std::string GetMacContentDirectory(const char* config = 0,
- bool implib = false,
- bool includeMacOS = true);
+ std::string GetMacContentDirectory(const char* config,
+ bool implib);
/** @return whether this target have a well defined output file name. */
bool HaveWellDefinedOutputFiles();
/** @return the Mac framework directory without the base. */
- std::string GetFrameworkDirectory(const char* config = 0);
+ std::string GetFrameworkDirectory(const char* config, bool rootDir);
+
+ /** @return the Mac CFBundle directory without the base */
+ std::string GetCFBundleDirectory(const char* config, bool contentOnly);
+
+ /** @return the Mac App directory without the base */
+ std::string GetAppBundleDirectory(const char* config, bool contentOnly);
std::vector<std::string> GetIncludeDirectories(const char *config);
void InsertInclude(const cmValueWithOrigin &entry,
@@ -601,6 +603,11 @@ private:
the same as GetFullName. */
std::string NormalGetRealName(const char* config);
+ /** Append to @a base the mac content directory and return it. */
+ std::string BuildMacContentDirectory(const std::string& base,
+ const char* config,
+ bool contentOnly);
+
private:
std::string Name;
std::vector<cmCustomCommand> PreBuildCommands;