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

This commit is contained in:
2017-11-21 12:25:04 +00:00
parent 11f5ebb23d
commit eb2c99cf02
8 changed files with 995 additions and 20 deletions

View File

@@ -8,11 +8,12 @@ using namespace PICoutManipulators;
void usage() {
piCout << Bold << "PIP Resources Compiler";
piCout << Cyan << "Version" << Bold << PIPVersion() << NewLine;
piCout << Green << Bold << "Usage:" << Default << "\"pirc [-h] -i <in_file> -o <out_file>\"" << NewLine;
piCout << Green << Bold << "Usage:" << Default << "\"pirc [-hl] -i <in_file> -o <out_file>\"" << NewLine;
piCout << Green << Bold << "Details:";
piCout << "-h --help " << Green << "- display this message and exit";
piCout << "-i --input <in_file> " << Green << "- resources description file";
piCout << "-o --out <out_file> " << Green << "- output .cpp file";
piCout << "-h --help " << Green << "- display this message and exit";
piCout << "-i --input <in_file> " << Green << "- resources description file";
piCout << "-o --out <out_file> " << Green << "- output .cpp file";
piCout << "-l --list " << Green << "- print readed files from description and exit";
}
@@ -21,10 +22,10 @@ int main (int argc, char * argv[]) {
cli.addArgument("input", true);
cli.addArgument("out", true);
cli.addArgument("help");
cli.addArgument("list");
if (!cli.hasArgument("input") ||
!cli.hasArgument("out") ||
cli.hasArgument("help")) {
if (cli.hasArgument("help") || !cli.hasArgument("input") ||
(!cli.hasArgument("out") && !cli.hasArgument("list"))) {
usage();
return 0;
}
@@ -36,17 +37,21 @@ int main (int argc, char * argv[]) {
piCout << "Error: resources description file is empty";
return 0;
}
/*piForeachC (ParserSection & s, files) {
piCout << "[" << s.name << "]";
piCout << s.files;
}*/
if (cli.hasArgument("list")) {
piForeachC (ParserSection & s, files) {
piForeachC (ParserEntry & e, s.files) {
piCout << e.path;
}
}
return 0;
}
PIString out_file = cli.argumentValue("out");
PIFile outf;
if (!out_file.isEmpty()) {
if (outf.open(out_file, PIIODevice::ReadWrite)) {
outf.clear();
} else piCout << "Error: while open out file";
} else piCout << "Error: can`t open out file";
outf << "// Generated by \"PIP Resources Compiler\" " << PIDateTime::current().toString("dd.MM.yyyy hh:mm:ss\n");
outf << "// Execute command:\n";
piForeachC (PIString & _a, cli.rawArguments())