summaryrefslogtreecommitdiffstats
path: root/mkspecs/symbian/linux-armcc
diff options
context:
space:
mode:
authoraxis <qt-info@nokia.com>2009-11-13 10:13:00 (GMT)
committeraxis <qt-info@nokia.com>2009-11-13 10:13:00 (GMT)
commitf0de149de54d9c058722161bc3d66a89fc7cce53 (patch)
tree16904e22d601eed2d45550ba1ce425c069a7711b /mkspecs/symbian/linux-armcc
parent6448dcd057f6831606eb6a805540db228e2fac88 (diff)
downloadQt-f0de149de54d9c058722161bc3d66a89fc7cce53.zip
Qt-f0de149de54d9c058722161bc3d66a89fc7cce53.tar.gz
Qt-f0de149de54d9c058722161bc3d66a89fc7cce53.tar.bz2
Added automatic mangling of LIBS to include vtable exports.
Diffstat (limited to 'mkspecs/symbian/linux-armcc')
-rw-r--r--mkspecs/symbian/linux-armcc/features/qt.prf (renamed from mkspecs/symbian/linux-armcc/features/default_post.prf)18
-rw-r--r--mkspecs/symbian/linux-armcc/platformlibs.conf1
-rw-r--r--mkspecs/symbian/linux-armcc/qmake.conf3
3 files changed, 20 insertions, 2 deletions
diff --git a/mkspecs/symbian/linux-armcc/features/default_post.prf b/mkspecs/symbian/linux-armcc/features/qt.prf
index c570eba..50c219d 100644
--- a/mkspecs/symbian/linux-armcc/features/default_post.prf
+++ b/mkspecs/symbian/linux-armcc/features/qt.prf
@@ -1,7 +1,25 @@
+load(qt)
+
isEmpty(DESTDIR) {
DESTDIR = .
}
+for(libraries, LIBS) {
+ isLib = $$find(libraries, \.lib)
+ isEmpty(isLib) {
+ LIBS += $${libraries}.lib\\(VtblExports.o\\)
+ }
+}
+for(libraries, QMAKE_LIBS) {
+ isLib = $$find(libraries, \.lib)
+ isEmpty(isLib) {
+ QMAKE_LIBS += $${libraries}.lib\\(VtblExports.o\\)
+ }
+}
+
+# This needs to be done after the above LIBS mangling.
+include(../platformlibs.conf)
+
contains(TEMPLATE, lib):!contains(CONFIG, static):!contains(CONFIG, staticlib) {
exports.commands = winewrapper getexports.exe ${QMAKE_FILE_NAME} > ${OBJECTS_DIR}${QMAKE_FILE_BASE}.exports
exports.output = $$OBJECTS_DIR/${QMAKE_FILE_BASE}.exports
diff --git a/mkspecs/symbian/linux-armcc/platformlibs.conf b/mkspecs/symbian/linux-armcc/platformlibs.conf
new file mode 100644
index 0000000..9ef31dc
--- /dev/null
+++ b/mkspecs/symbian/linux-armcc/platformlibs.conf
@@ -0,0 +1 @@
+QMAKE_LIBS += -lusrt2_2 -ldfpaeabi -ldfprvct2_2.lib -ldrtaeabi -ldrtaeabi.lib\\(VtblExports.o\\) -lscppnwdl -ldrtrvct2_2
diff --git a/mkspecs/symbian/linux-armcc/qmake.conf b/mkspecs/symbian/linux-armcc/qmake.conf
index 577c4e2..8639367 100644
--- a/mkspecs/symbian/linux-armcc/qmake.conf
+++ b/mkspecs/symbian/linux-armcc/qmake.conf
@@ -39,7 +39,6 @@ DEFINES += __SYMBIAN32__ EKA2 __S60_50__ __S60_3X__ __SERIES60_3X__
INCLUDEPATH += $$[QT_INSTALL_PREFIX]/mkspecs/common/symbian/stl-off
# ### FIXME Move these to proper locations.
-QMAKE_LIBS += -llibc -llibm -leuser -llibdl -llibpthread -lefsrv -llibstdcpp -llibc.lib\\(VtblExports.o\\) -llibm.lib\\(VtblExports.o\\) -leuser.lib\\(VtblExports.o\\) -llibdl.lib\\(VtblExports.o\\) -llibpthread.lib\\(VtblExports.o\\) -lefsrv.lib\\(VtblExports.o\\) -llibstdcpp.lib\\(VtblExports.o\\)
-QMAKE_LIBS += -lusrt2_2 -ldfpaeabi -ldfprvct2_2.lib -ldrtaeabi -ldrtaeabi.lib\\(VtblExports.o\\) -lscppnwdl -ldrtrvct2_2
+QMAKE_LIBS += -llibc -llibm -leuser -llibdl -llibpthread -lefsrv -llibstdcpp
include(../../common/unix.conf)