diff options
author | Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> | 2015-12-11 14:14:13 +0100 |
---|---|---|
committer | Frederik Gladhorn <frederik.gladhorn@theqtcompany.com> | 2016-01-08 09:36:20 +0000 |
commit | c0efee2f265279a4ced90279ad2e7536c596f08c (patch) | |
tree | e1e88387a7c6ff06b0cfd73cc0f2e3adb64262a1 | |
parent | 282f15feaae4c525602d537ab65cb61987eb5f7f (diff) |
add always_prepend mode to qtAddToolEnv()
this is just an optimization/clarification: variables which are known to
be never empty (like PATH) can be extended with less convoluted code.
Change-Id: Ib365bbec8301673ed1c874979b4de19bc983dab1
Reviewed-by: Romain Pokrzywka <romain.pokrzywka@gmail.com>
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
-rw-r--r-- | mkspecs/features/qt_functions.prf | 11 | ||||
-rw-r--r-- | src/angle/src/config.pri | 2 |
2 files changed, 9 insertions, 4 deletions
diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf index abb7439f18..6b72db6101 100644 --- a/mkspecs/features/qt_functions.prf +++ b/mkspecs/features/qt_functions.prf @@ -96,8 +96,10 @@ defineTest(qtAddToolEnv) { value = $$eval($${env}.value) !isEmpty(value) { name = $$eval($${env}.name) + config = $$eval($${env}.CONFIG) equals(ds, /) { - contains($${env}.CONFIG, prepend): infix = \${$$name:+:\$$$name} + contains(config, prepend): infix = \${$$name:+:\$$$name} + else: contains(config, always_prepend): infix = :\$$$name else: infix = # Under msys, this path is taken only in the non-system() # case, so using shell_quote() always works. @@ -108,13 +110,15 @@ defineTest(qtAddToolEnv) { value ~= s,\\^,^^^^,g value ~= s,!,^^!,g value ~= s,\\),^),g - contains($${env}.CONFIG, prepend) { + contains(config, prepend) { batch_sets += \ "if defined $$name (" \ " set $$name=$$join(value, ;);!$$name!" \ ") else (" \ " set $$name=$$join(value, ;)" \ ")" + } else: contains(config, always_prepend) { + batch_sets += "(set $$name=$$join(value, ;);!$$name!)" } else { batch_sets += "(set $$name=$$join(value, ;))" } @@ -162,8 +166,10 @@ defineTest(qtAddTargetEnv) { deps = $$resolve_depends(deps, "QT.", ".depends" ".run_depends") !isEmpty(deps) { libs = libs + deppath.CONFIG = prepend equals(QMAKE_HOST.os, Windows) { libs = bins + deppath.CONFIG = always_prepend deppath.name = PATH } else:contains(QMAKE_HOST.os, Linux|FreeBSD|OpenBSD|NetBSD|DragonFly|SunOS|HP-UX|QNX|GNU) { deppath.name = LD_LIBRARY_PATH @@ -188,7 +194,6 @@ defineTest(qtAddTargetEnv) { ptypes += $$eval(QT.$${dep}.plugin_types) } deppath.value = $$unique(deppath) - deppath.CONFIG = prepend pluginpath.value = ppaths = $$[QT_INSTALL_PLUGINS/get] diff --git a/src/angle/src/config.pri b/src/angle/src/config.pri index 085913ac83..be61282069 100644 --- a/src/angle/src/config.pri +++ b/src/angle/src/config.pri @@ -16,7 +16,7 @@ equals(QMAKE_HOST.os, Windows) { gnutools.value = $$absolute_path(../../../../gnuwin32/bin) exists($$gnutools.value/gperf.exe) { gnutools.name = PATH - gnutools.CONFIG = prepend + gnutools.CONFIG = always_prepend } } |