summaryrefslogtreecommitdiffstats
path: root/mkspecs/features
diff options
context:
space:
mode:
authorOswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>2016-08-30 18:25:37 +0200
committerOswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>2016-10-04 08:26:49 +0000
commit546191b03f5dfdc525ee37220aa394d2dd72bdac (patch)
tree177dd57bfc82e5d5d66f2b086e151ee763aaf448 /mkspecs/features
parent0872b62b2e3429743db89ac84827943f5b630357 (diff)
fix parsing of -system-proxies
this is, in fact, not the same as --proxies=system, and the old configure handles this by putting special cases before the catch-all patterns. we achieve this by trying the verbatim names (of all options, which is admittedly a tad inefficient) before applying the -qt/-system transformation. Change-Id: Ic85a9d76d6e8ca95b2e1b5566f047f4b7ac38b98 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'mkspecs/features')
-rw-r--r--mkspecs/features/qt_configure.prf16
1 files changed, 10 insertions, 6 deletions
diff --git a/mkspecs/features/qt_configure.prf b/mkspecs/features/qt_configure.prf
index 8119a130b8..58e0b1c88e 100644
--- a/mkspecs/features/qt_configure.prf
+++ b/mkspecs/features/qt_configure.prf
@@ -251,15 +251,19 @@ defineTest(qtConfParseCommandLine) {
} else: contains(c, "^--(.*)") {
opt = $$replace(c, "^--(.*)", "\\1")
val = yes
- } else: contains(c, "^-qt-(.*)") {
- opt = $$replace(c, "^-qt-(.*)", "\\1")
- val = qt
- } else: contains(c, "^-system-(.*)") {
- opt = $$replace(c, "^-system-(.*)", "\\1")
- val = system
} else: contains(c, "^-(.*)") {
opt = $$replace(c, "^-(.*)", "\\1")
val =
+ for (cc, allConfigs) {
+ type = $$eval($${cc}.commandline.options.$${opt})
+ !isEmpty(type): break()
+ type = $$eval($${cc}.commandline.options.$${opt}.type)
+ !isEmpty(type): break()
+ }
+ isEmpty(type):contains(opt, "(qt|system)-.*") {
+ val = $$replace(opt, "(qt|system)-(.*)", "\\1")
+ opt = $$replace(opt, "(qt|system)-(.*)", "\\2")
+ }
} else {
qtConfAddError("Invalid command line parameter '$$c'.")
return()