summaryrefslogtreecommitdiff
path: root/Source/cmInstallTargetGenerator.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2008-04-08 00:06:47 -0400
committerBrad King <brad.king@kitware.com>2008-04-08 00:06:47 -0400
commit67834f2d535b46655074932371d9e4f2f024c44c (patch)
tree2a688fad6dd6a2043af7109433b5a1c2a91bd7f0 /Source/cmInstallTargetGenerator.cxx
parent5c3a5daaf1f0ccaa447ad3856f2ee8445d3df325 (diff)
downloadcmake-67834f2d535b46655074932371d9e4f2f024c44c.tar.gz
BUG: Correct Mac OS X framework behavior
- Place the built library in foo.framework/Versions/A/foo - Do not create unused content symlinks (like PrivateHeaders) - Do not use VERSION/SOVERSION properties for frameworks - Make cmTarget::GetDirectory return by value - Remove the foo.framework part from cmTarget::GetDirectory - Correct install_name construction and conversion on install - Fix MACOSX_PACKAGE_LOCATION under Xcode to use the Versions/<version> directory for frameworks - Update the Framework test to try these things
Diffstat (limited to 'Source/cmInstallTargetGenerator.cxx')
-rw-r--r--Source/cmInstallTargetGenerator.cxx9
1 files changed, 5 insertions, 4 deletions
diff --git a/Source/cmInstallTargetGenerator.cxx b/Source/cmInstallTargetGenerator.cxx
index f05c3756a8..5fd408e366 100644
--- a/Source/cmInstallTargetGenerator.cxx
+++ b/Source/cmInstallTargetGenerator.cxx
@@ -239,16 +239,17 @@ cmInstallTargetGenerator
// Compute the build tree location of the framework directory
std::string from1 = fromDirConfig;
- // Remove trailing slashes... so that from1 ends with ".framework":
- //
- cmSystemTools::ConvertToUnixSlashes(from1);
+ from1 += targetName;
+ from1 += ".framework";
files.push_back(from1);
type = cmTarget::INSTALL_DIRECTORY;
// Need to apply install_name_tool and stripping to binary
// inside framework.
- toInstallPath += ".framework/";
+ toInstallPath += ".framework/Versions/";
+ toInstallPath += this->Target->GetFrameworkVersion();
+ toInstallPath += "/";
toInstallPath += this->GetInstallFilename(this->Target, config,
NameNormal);