Commit 39d13438 authored by Brad King's avatar Brad King 💬
Browse files

BUG: Fix install_name_tool update of the executable in an installed bundle on...

BUG: Fix install_name_tool update of the executable in an installed bundle on OSX.  This addresses bug#4534.
parent 611f86b7
......@@ -178,6 +178,13 @@ cmInstallTargetGenerator
const char* config,
Indent const& indent)
{
// Compute the full path to the main installed file for this target.
std::string toFullPath = "$ENV{DESTDIR}";
toFullPath += this->Destination;
toFullPath += "/";
toFullPath += this->GetInstallFilename(this->Target, config,
this->ImportLibrary, false);
// Compute the list of files to install for this target.
std::vector<std::string> files;
std::string literal_args;
......@@ -214,6 +221,9 @@ cmInstallTargetGenerator
from1 += ".app";
files.push_back(from1);
type = cmTarget::INSTALL_DIRECTORY;
toFullPath += ".app/Contents/MacOS/";
toFullPath += this->GetInstallFilename(this->Target, config,
this->ImportLibrary, false);
literal_args += " USE_SOURCE_PERMISSIONS";
// TODO: Still need to apply install_name_tool and stripping
// to binaries inside bundle.
......@@ -284,12 +294,6 @@ cmInstallTargetGenerator
no_rename, literal_args.c_str(),
indent);
std::string toFullPath = "$ENV{DESTDIR}";
toFullPath += this->Destination;
toFullPath += "/";
toFullPath += this->GetInstallFilename(this->Target, config,
this->ImportLibrary, false);
os << indent << "IF(EXISTS \"" << toFullPath << "\")\n";
this->AddInstallNamePatchRule(os, indent.Next(), config, toFullPath);
this->AddRanlibRule(os, indent.Next(), type, toFullPath);
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment