git-svn-id: svn://db.shs.com.ru/pip@1018 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5

This commit is contained in:
2020-04-16 07:24:03 +00:00
parent 9643bc7f57
commit d093942330
2 changed files with 22 additions and 13 deletions

View File

@@ -2,6 +2,8 @@
#include <pidir.h>
#include <piprocess.h>
#define DELIM "::"
using namespace PICoutManipulators;
PIString cmd_copy, cmd_copydir, cmd_suffix;
@@ -36,8 +38,8 @@ void usage() {
piCout << "If some Qt dependency found, copy corresponding Qt plugins.";
piCout << "Styles and platforms selected by -S and -P flags,";
piCout << "any other plugins described by --qt-plugins flag in next format:";
piCout << "\"[*=!]<plugins>=<regexp>,<regexp>!<plugins>=<regexp>,<regexp>\", e.g.";
piCout << "\"sqldrivers=lite,mysql!geoservices=!position=nmea\".";
piCout << "\"[*="DELIM"]<plugins>=<regexp>,<regexp>"DELIM"<plugins>=<regexp>,<regexp>\", e.g.";
piCout << "\"sqldrivers=lite,mysql"DELIM"geoservices="DELIM"position=nmea\".";
piCout << "If no regexp specified for plugins, nothing will be copied.";
piCout << "Default regexp set by \"*=<regexp>\".";
piCout << "\"*=\" disable optional plugins.";
@@ -54,8 +56,8 @@ void usage() {
piCout << "";
piCout << Bold << "Processing control";
piCout << "-f, --fake " << Green << "- don`t copy, only print";
piCout << "-s <search_path> " << Green << "- set search pathes for system libraries, may be separated by \"!\", default \"/usr/lib\"";
piCout << "--ignore <libs> " << Green << "- ignore libraries names, may be separated by \"!\", default \"\"";
piCout << "-s <search_path> " << Green << "- set search pathes for system libraries, may be separated by \""DELIM"\", default \"/usr/lib\"";
piCout << "--ignore <libs> " << Green << "- ignore libraries names, may be separated by \""DELIM"\", default \"\"";
piCout << "-l <ldd> " << Green << "- \"ldd\" path, default \"/usr/bin/ldd\"";
piCout << "-L <readelf> " << Green << "- \"readelf\" path, overrides \"ldd\"";
piCout << "-W <objdump> " << Green << "- \"objdump\" path, overrides \"ldd\"";
@@ -79,7 +81,7 @@ void usage() {
piCout << "";
piCout << Bold << "Input control";
piCout << "<file> ... " << Green << "- executable to process";
piCout << "-a <add_libs> " << Green << "- additional libs, separated by \"!\". Libraries will be searched in <search_path>";
piCout << "-a <add_libs> " << Green << "- additional libs, separated by \""DELIM"\". Libraries will be searched in <search_path>";
}
struct QtDep {
@@ -391,9 +393,9 @@ int main(int argc, char * argv[]) {
piDebug = cli.hasArgument("verbose");
is_deps = cli.hasArgument("dependencies");
out_dir = cli.argumentValue("output");
lib_dirs = cli.argumentValue("search_path").split("!");
add_libs = cli.argumentValue("add_libs").split("!");
ignore_libs = cli.argumentValue("ignore").split("!");
lib_dirs = cli.argumentValue("search_path").split(DELIM);
add_libs = cli.argumentValue("add_libs").split(DELIM);
ignore_libs = cli.argumentValue("ignore").split(DELIM);
qt_dir = cli.argumentValue("qtdir");
ldd = cli.argumentValue("ldd");
readelf = cli.argumentValue("Lreadelf");
@@ -446,7 +448,7 @@ int main(int argc, char * argv[]) {
platforms = qplatforms.split(",");
styles = cli.argumentValue("Styles").split(",");
if (styles.isEmpty()) styles << "";
PIStringList qpd = cli.argumentValue("qt-plugins").toLowerCase().split("!");
PIStringList qpd = cli.argumentValue("qt-plugins").toLowerCase().split(DELIM);
piForeachC (PIString & qp, qpd) {
int _i = qp.indexOf("=");
if (_i < 0) continue;