diff options
author | Oswald Buddenhagen <oswald.buddenhagen@nokia.com> | 2012-08-09 16:13:56 +0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-08-14 23:12:23 +0200 |
commit | 807579ff64e1182eede092927403ad9672c18755 (patch) | |
tree | f7f035ea8d3931fc2791864cbbfc48e162e4f962 /qmake | |
parent | 910c717461a4d9321d537ddf87c0f642eb2a2902 (diff) |
take parsing of qmake mode out of parseCommandLine()
it wouldn't do anything particularly useful when parsing QMAKEFLAGS, so
take it out of the common path.
Change-Id: I60f1215c4645707e1f99932dd19160e1d1c9d953
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Diffstat (limited to 'qmake')
-rw-r--r-- | qmake/option.cpp | 50 |
1 files changed, 24 insertions, 26 deletions
diff --git a/qmake/option.cpp b/qmake/option.cpp index 32c6e2a1b4..a0a543e42d 100644 --- a/qmake/option.cpp +++ b/qmake/option.cpp @@ -220,32 +220,6 @@ Option::parseCommandLine(int argc, char **argv) for (int x = 0; x < argc; x++) { if(*argv[x] == '-' && strlen(argv[x]) > 1) { /* options */ QString opt = argv[x] + 1; - - //first param is a mode, or we default - if(x == 1) { - bool specified = true; - if(opt == "project") { - Option::recursive = true; - Option::qmake_mode = Option::QMAKE_GENERATE_PROJECT; - } else if(opt == "prl") { - Option::mkfile::do_deps = false; - Option::mkfile::do_mocs = false; - Option::qmake_mode = Option::QMAKE_GENERATE_PRL; - } else if(opt == "set") { - Option::qmake_mode = Option::QMAKE_SET_PROPERTY; - } else if(opt == "unset") { - Option::qmake_mode = Option::QMAKE_UNSET_PROPERTY; - } else if(opt == "query") { - Option::qmake_mode = Option::QMAKE_QUERY_PROPERTY; - } else if(opt == "makefile") { - Option::qmake_mode = Option::QMAKE_GENERATE_MAKEFILE; - } else { - specified = false; - } - if(specified) - continue; - } - //all modes if(opt == "o" || opt == "output") { Option::output.setFileName(argv[++x]); } else if(opt == "after") { @@ -479,6 +453,30 @@ Option::init(int argc, char **argv) } if(argc && argv) { argv++, argc--; + while (argc) { + QString opt = *argv; + if (opt == "-project") { + Option::recursive = true; + Option::qmake_mode = Option::QMAKE_GENERATE_PROJECT; + } else if (opt == "-prl") { + Option::mkfile::do_deps = false; + Option::mkfile::do_mocs = false; + Option::qmake_mode = Option::QMAKE_GENERATE_PRL; + } else if (opt == "-set") { + Option::qmake_mode = Option::QMAKE_SET_PROPERTY; + } else if (opt == "-unset") { + Option::qmake_mode = Option::QMAKE_UNSET_PROPERTY; + } else if (opt == "-query") { + Option::qmake_mode = Option::QMAKE_QUERY_PROPERTY; + } else if (opt == "-makefile") { + Option::qmake_mode = Option::QMAKE_GENERATE_MAKEFILE; + } else { + break; + } + argv++, argc--; + break; + } + int ret = parseCommandLine(argc, argv); if(ret != Option::QMAKE_CMDLINE_SUCCESS) { if ((ret & Option::QMAKE_CMDLINE_SHOW_USAGE) != 0) |