git-svn-id: svn://db.shs.com.ru/pip@1032 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5
This commit is contained in:
@@ -386,6 +386,7 @@ void patchNameTool() {
|
|||||||
PIString fl = findLib(frameworkName(f));
|
PIString fl = findLib(frameworkName(f));
|
||||||
if (fl.isEmpty()) continue;
|
if (fl.isEmpty()) continue;
|
||||||
patch_list << (out_dir + frameworkName(f) + "/" + frameworkInternalPath(f));
|
patch_list << (out_dir + frameworkName(f) + "/" + frameworkInternalPath(f));
|
||||||
|
PICout(DefaultControls) << "map" << f << "->" << (out_dir + frameworkName(f) + "/" + frameworkInternalPath(f));
|
||||||
}
|
}
|
||||||
piForeach (PIString local_lib, patch_list) {
|
piForeach (PIString local_lib, patch_list) {
|
||||||
cmd = otool + " -L \"" + local_lib;
|
cmd = otool + " -L \"" + local_lib;
|
||||||
@@ -400,20 +401,20 @@ void patchNameTool() {
|
|||||||
fi.path = sys_lib;
|
fi.path = sys_lib;
|
||||||
libname = fi.name();
|
libname = fi.name();
|
||||||
PIString fl = findLib(libname), fname = frameworkName(sys_lib);
|
PIString fl = findLib(libname), fname = frameworkName(sys_lib);
|
||||||
|
PIString new_path;
|
||||||
if (all_libs.contains(fl)) {
|
if (all_libs.contains(fl)) {
|
||||||
|
new_path = "@executable_path/../Frameworks/" + libname;
|
||||||
PICout(DefaultControls) << " depend on lib" << fl;
|
PICout(DefaultControls) << " depend on lib" << fl;
|
||||||
cmd = nametool + " -change \"" + sys_lib + "\"";
|
|
||||||
cmd += " \"@executable_path/../Frameworks/" + libname + "\"";
|
|
||||||
cmd += " \"" + local_lib + "\"";
|
|
||||||
//PICout(DefaultControls) << " " << cmd;
|
|
||||||
execute(cmd);
|
|
||||||
}
|
}
|
||||||
if (frameworks.contains(fname)) {
|
if (frameworks.contains(fname)) {
|
||||||
fl = findLib(fname);
|
fl = findLib(fname);
|
||||||
if (fl.isEmpty()) continue;
|
if (fl.isEmpty()) continue;
|
||||||
|
new_path = "@executable_path/../Frameworks/" + fname + "/" + frameworkInternalPath(sys_lib);
|
||||||
PICout(DefaultControls) << " depend on framework" << fl;
|
PICout(DefaultControls) << " depend on framework" << fl;
|
||||||
|
}
|
||||||
|
if (!new_path.isEmpty()) {
|
||||||
cmd = nametool + " -change \"" + sys_lib + "\"";
|
cmd = nametool + " -change \"" + sys_lib + "\"";
|
||||||
cmd += " \"@executable_path/../Frameworks/" + fname + "/" + frameworkInternalPath(sys_lib) + "\"";
|
cmd += " \"" + new_path + "\"";
|
||||||
cmd += " \"" + local_lib + "\"";
|
cmd += " \"" + local_lib + "\"";
|
||||||
//PICout(DefaultControls) << " " << cmd;
|
//PICout(DefaultControls) << " " << cmd;
|
||||||
execute(cmd);
|
execute(cmd);
|
||||||
|
|||||||
Reference in New Issue
Block a user