summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2006-10-11 12:41:20 -0400
committerBrad King <brad.king@kitware.com>2006-10-11 12:41:20 -0400
commitb20fd1af117df4defd8ecd6f34dfb65d6c9c7ad6 (patch)
tree797c9b88cf0a76f024036334a95a174ad76a5140 /Source
parentc0326d0d543615b5f3e0c10d382e0275a18d5b47 (diff)
downloadcmake-b20fd1af117df4defd8ecd6f34dfb65d6c9c7ad6.tar.gz
BUG: Do not collapse the INSTALL_NAME_DIR setting because users may intend to have .. in the path. This makes the makefile generator consistent with the already working Xcode implementation of this feature. Also added a test for @executable_path/.. style settings for this property.
Diffstat (limited to 'Source')
-rw-r--r--Source/cmMakefileLibraryTargetGenerator.cxx21
1 files changed, 3 insertions, 18 deletions
diff --git a/Source/cmMakefileLibraryTargetGenerator.cxx b/Source/cmMakefileLibraryTargetGenerator.cxx
index 006caa709d..fa65215fe6 100644
--- a/Source/cmMakefileLibraryTargetGenerator.cxx
+++ b/Source/cmMakefileLibraryTargetGenerator.cxx
@@ -548,19 +548,9 @@ void cmMakefileLibraryTargetGenerator::WriteLibraryRules
std::string install_name_dir;
if(this->Target->GetType() == cmTarget::SHARED_LIBRARY)
{
- // Select whether to generate an install_name directory for the
- // install tree or the build tree.
+ // Get the install_name directory for the build tree.
const char* config = this->LocalGenerator->ConfigurationName.c_str();
- if(this->Target->GetPropertyAsBool("BUILD_WITH_INSTALL_RPATH"))
- {
- install_name_dir =
- this->Target->GetInstallNameDirForInstallTree(config);
- }
- else
- {
- install_name_dir =
- this->Target->GetInstallNameDirForBuildTree(config);
- }
+ install_name_dir = this->Target->GetInstallNameDirForBuildTree(config);
// Set the rule variable replacement value.
if(install_name_dir.empty())
@@ -572,13 +562,8 @@ void cmMakefileLibraryTargetGenerator::WriteLibraryRules
// Convert to a path for the native build tool.
install_name_dir =
this->LocalGenerator->Convert(install_name_dir.c_str(),
- cmLocalGenerator::FULL,
+ cmLocalGenerator::NONE,
cmLocalGenerator::SHELL, false);
-
- // The Convert method seems to strip trailing slashes, which should
- // probably be fixed. Since the only platform supporting install_name
- // right now uses forward slashes just add one.
- install_name_dir += "/";
vars.TargetInstallNameDir = install_name_dir.c_str();
}
}