mirror of
https://github.com/Kitware/CMake.git
synced 2026-04-28 18:09:42 -05:00
ENH: Support exporting/importing of Framework targets.
- Imported frameworks have the FRAMEWORK property set - Added cmTarget::IsFrameworkOnApple method to simplify checks - Also remove separate IMPORTED_ENABLE_EXPORTS property and just use ENABLE_EXPORTS since, like FRAMEWORK, it just represents the target type. - Document FRAMEWORK keyword in INSTALL command. - Updated IMPORTED_LOCATION property documentation for Frameworks
This commit is contained in:
@@ -498,8 +498,7 @@ cmGlobalXCodeGenerator::CreateXCodeSourceFile(cmLocalGenerator* lg,
|
||||
// Is this a "private" or "public" framework header file?
|
||||
// Set the ATTRIBUTES attribute appropriately...
|
||||
//
|
||||
if(cmtarget.GetType() == cmTarget::SHARED_LIBRARY &&
|
||||
cmtarget.GetPropertyAsBool("FRAMEWORK"))
|
||||
if(cmtarget.IsFrameworkOnApple())
|
||||
{
|
||||
if(tsFlags.PrivateHeader)
|
||||
{
|
||||
@@ -710,8 +709,7 @@ cmGlobalXCodeGenerator::CreateXCodeTargets(cmLocalGenerator* gen,
|
||||
}
|
||||
|
||||
// some build phases only apply to bundles and/or frameworks
|
||||
bool isFrameworkTarget = cmtarget.GetType() == cmTarget::SHARED_LIBRARY &&
|
||||
cmtarget.GetPropertyAsBool("FRAMEWORK");
|
||||
bool isFrameworkTarget = cmtarget.IsFrameworkOnApple();
|
||||
bool isBundleTarget = cmtarget.GetPropertyAsBool("MACOSX_BUNDLE");
|
||||
|
||||
cmXCodeObject* buildFiles = 0;
|
||||
@@ -1359,8 +1357,7 @@ void cmGlobalXCodeGenerator::CreateBuildSettings(cmTarget& target,
|
||||
target.GetType() == cmTarget::EXECUTABLE)
|
||||
{
|
||||
std::string pndir = target.GetDirectory();
|
||||
if (target.GetType() == cmTarget::SHARED_LIBRARY &&
|
||||
target.GetPropertyAsBool("FRAMEWORK"))
|
||||
if(target.IsFrameworkOnApple())
|
||||
{
|
||||
pndir += "/..";
|
||||
pndir = cmSystemTools::CollapseFullPath(pndir.c_str());
|
||||
|
||||
Reference in New Issue
Block a user