deploy_tool strip support

This commit is contained in:
2020-09-07 10:40:52 +03:00
parent 2511e96372
commit 410bc42830

View File

@@ -84,6 +84,7 @@ void usage() {
piCout << "-D <dpkg> " << Green << "- \"dpkg\" path, default \"/usr/bin/dpkg\"";
piCout << "--dpkg-workdir <d> " << Green << "- dpkg \"admindir\" path, default \"\"";
piCout << "--name-tool <path> " << Green << "- \"install_name_tool\" path, default \"install_name_tool\"";
piCout << "--strip <path> " << Green << "- \"strip\" path, default \"strip\"";
piCout << "-d <depth> " << Green << "- maximum dependepcies depth, default 8";
piCout << "";
piCout << Bold << "Qt control";
@@ -127,7 +128,7 @@ QtDep qt_deps[] = {
int depth = 8;
bool fake = false, is_ldd = true, is_deps = false, need_qt = false;
PIString ldd, readelf, objdump, otool, dpkg, nametool, out_dir, qt_dir, out_plugins_dir, dpkg_workdir;
PIString ldd, readelf, objdump, otool, dpkg, nametool, strip, out_dir, qt_dir, out_plugins_dir, dpkg_workdir;
PIStringList styles, lib_dirs, add_libs, platforms, sqldrivers, input_files, plugin_libs;
PISet<PIString> all_libs, miss_libs, all_deps, frameworks, framework_libs, miss_frameworks, qt_plugins, ignore_libs;
PIMap<PIString, PIStringList> qt_filters;
@@ -488,6 +489,7 @@ int main(int argc, char * argv[]) {
cli.addArgument("Wobjdump", true);
cli.addArgument("Motool", true);
cli.addArgument("name-tool", PIChar('\0'), true);
cli.addArgument("strip", PIChar('\0'), true);
cli.addArgument("Dpkg", true);
cli.addArgument("dpkg-workdir", PIChar('\0'), true);
cli.addArgument("depth", true);
@@ -512,8 +514,11 @@ int main(int argc, char * argv[]) {
objdump = cli.argumentValue("Wobjdump");
otool = cli.argumentValue("Motool");
nametool = cli.argumentValue("name-tool");
strip = cli.argumentValue("strip");
if (nametool.isEmpty())
nametool = "install_name_tool";
if (strip.isEmpty())
strip = "strip";
dpkg = cli.argumentValue("Dpkg");
dpkg_workdir = cli.argumentValue("dpkg-workdir");
#ifdef WINDOWS
@@ -628,6 +633,8 @@ int main(int argc, char * argv[]) {
#endif
PIVector<PIString> clibs = all_libs.toVector();
piForeach (PIString l, clibs) {
PIFile::FileInfo fi;
fi.path = l;
#ifdef WINDOWS
l.replaceAll("/", "\\");
#endif
@@ -636,8 +643,10 @@ int main(int argc, char * argv[]) {
need_cp = !procDpkg(l);
if (need_cp) {
piCout << "copy" << l;
if (!fake)
if (!fake) {
system(cmd_copy + "\"" + l + "\" \"" + out_dir + "\"" + cmd_suffix);
system(strip + " -s \"" + out_dir + fi.name() + "\"");
}
}
}
PIVector<PIString> fwdirs = frameworks.toVector();