summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@digia.com>2012-11-13 14:17:32 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2012-11-14 12:29:01 +0100
commit9cdcd2f6398e082e0211215483e1a1574ddb322f (patch)
tree2c57b20ba8131c93e2d3560dda68d0cd0e4c48ce /mkspecs
parent39a09526870e7cd0b27402aca817a71306dc5c41 (diff)
qtAddModule(): define PRE_TARGETDEPS for static modules
This ensures that for example the platform plugins get properly re-linked when the static platform-support lib changes. Change-Id: Iad493d4de30d6f6977f80aa56d0b27d05e9e3770 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/features/qt_functions.prf12
1 files changed, 8 insertions, 4 deletions
diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
index a89f0838d7..2998bb93ae 100644
--- a/mkspecs/features/qt_functions.prf
+++ b/mkspecs/features/qt_functions.prf
@@ -103,14 +103,17 @@ defineTest(qtAddModule) {
!isEmpty(MODULE_LIBS): LINKAGE = -L$$MODULE_LIBS
lib =
if(!debug_and_release|build_pass):CONFIG(debug, debug|release) {
- win32: lib = -l$${MODULE_NAME}$${QT_LIBINFIX}d
- mac: lib = -l$${MODULE_NAME}$${QT_LIBINFIX}_debug
+ win32: lib = $${MODULE_NAME}$${QT_LIBINFIX}d
+ mac: lib = $${MODULE_NAME}$${QT_LIBINFIX}_debug
}
- isEmpty(lib): lib = -l$${MODULE_NAME}$${QT_LIBINFIX}
- LINKAGE += $$lib
+ isEmpty(lib): lib = $${MODULE_NAME}$${QT_LIBINFIX}
+ LINKAGE += -l$$lib
contains(QT_CONFIG, rpath): QMAKE_RPATHDIR *= $$eval(QT.$${1}.rpath)
+ contains(MODULE_CONFIG, staticlib): \
+ PRE_TARGETDEPS *= $$MODULE_LIBS/$${QMAKE_PREFIX_STATICLIB}$${lib}.$${QMAKE_EXTENSION_STATICLIB}
+
# Make sure we can link to uninstalled libraries
unix:!mac:!isEmpty(QT.$${1}.libs) { # Use unmodified path, so /usr/lib also works
for(rpl, QT.$${1}.rpath_link): \
@@ -136,6 +139,7 @@ defineTest(qtAddModule) {
export(QMAKE_LFLAGS)
export(QMAKE_LIBDIR)
export(QMAKE_RPATHDIR)
+ export(PRE_TARGETDEPS)
return(true)
}