summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-04-12 01:09:43 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-04-12 01:09:43 (GMT)
commit27f8facfea87d7c4669852e7aa0fe5d9ca828eb3 (patch)
tree5635d4876571b5f84905cc9ff3e97138061f0c06 /mkspecs
parentac27c8ad39a9646a9e509ba7a58f75eeae10bb6e (diff)
parente3696e62e54959f1a2ea71d38c4c5c04750ec743 (diff)
downloadQt-27f8facfea87d7c4669852e7aa0fe5d9ca828eb3.zip
Qt-27f8facfea87d7c4669852e7aa0fe5d9ca828eb3.tar.gz
Qt-27f8facfea87d7c4669852e7aa0fe5d9ca828eb3.tar.bz2
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: Fix build error in QtGui armv5 udeb Updated qtbench to build against modified QStaticText API Make compiling / linking a non-qt app work too on symbian/gcce When on Symbian use smaller files. Fixing the missing "\\" The cmd line arguments have not been delegated properly. Clear QFontCache TLS content before nullifying TLS pointer. Add --download option to runonphone Implement download support to TRK Launcher Fix library creation on symbian/gcce Update Symbian def files for 4.7 Various fixes for symbian/gcce building. Make encoding clear Fix 'make sis' working on symbian makefile based system again. Make shipped symbian scripts available from the build-dir bin dir.
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/features/symbian/symbian_building.prf41
-rw-r--r--mkspecs/symbian/linux-gcce/qmake.conf11
2 files changed, 36 insertions, 16 deletions
diff --git a/mkspecs/features/symbian/symbian_building.prf b/mkspecs/features/symbian/symbian_building.prf
index ef03b0a..a097771 100644
--- a/mkspecs/features/symbian/symbian_building.prf
+++ b/mkspecs/features/symbian/symbian_building.prf
@@ -45,15 +45,6 @@ for(libraries, QMAKE_LIBS) {
}
QMAKE_LIBS = $$newLIBS
-linux-gcce {
- QMAKE_LIBS += -l:usrt2_2.lib \
- -l:dfpaeabi.dso \
- -l:drtaeabi.dso \
- -l:scppnwdl.dso \
- -lsupc++ \
- -lgcc
-}
-
elf2e32_LIBPATH =
for(libPath, QMAKE_LIBDIR) {
elf2e32_LIBPATH += "--libpath=$$libPath"
@@ -131,7 +122,14 @@ contains(TEMPLATE, lib):!contains(CONFIG, static):!contains(CONFIG, staticlib) {
linux-armcc: {
QMAKE_LIBS += -ledllstub.lib -ledll.lib\\(uc_dll_.o\\)
} else :linux-gcce {
- #QMAKE_LIBS += -l:edllstub.lib -l:edll.lib
+ QMAKE_LIBS += \
+ -l:edll.lib \
+ -l:usrt2_2.lib \
+ -l:dfpaeabi.dso \
+ -l:drtaeabi.dso \
+ -l:scppnwdl.dso \
+ -lsupc++ \
+ -lgcc
}
QMAKE_LFLAGS += --soname $${TARGET}\\{$${hexVersion}\\}\\[$${intUid3}\\].dll
@@ -162,12 +160,31 @@ contains(TEMPLATE, app):!contains(QMAKE_LINK, "^@.*") {
linux-armcc: {
QMAKE_LIBS += -leexe.lib\\(uc_exe_.o\\)
+ contains(CONFIG, "qt"):contains(QT, "core") { #if linking with QtCore
+ QMAKE_LIBS += -lqtmain$${QT_LIBINFIX}.lib
+ } else {
+ QMAKE_LIBS += -llibcrt0.lib
+ }
} else :linux-gcce {
- #QMAKE_LIBS += -l:eexe.lib
+ # notice that we can't merge these as ordering of arguments is important.
+ QMAKE_LIBS += \
+ -l:eexe.lib \
+ -l:usrt2_2.lib
+ contains(CONFIG, "qt"):contains(QT, "core") { #if linking with QtCore
+ QMAKE_LIBS += -l:qtmain$${QT_LIBINFIX}.lib
+ } else {
+ QMAKE_LIBS += -l:libcrt0_gcce.lib
+ }
+ QMAKE_LIBS += \
+ -l:dfpaeabi.dso \
+ -l:drtaeabi.dso \
+ -l:scppnwdl.dso \
+ -lsupc++ \
+ -lgcc
+ QMAKE_LFLAGS += --shared
}
QMAKE_LFLAGS += --soname $${TARGET}\\{$${hexVersion}\\}\\[$${intUid3}\\].exe
-# TODO gcce added --shared here...
DEFINES += __EXE__
}
diff --git a/mkspecs/symbian/linux-gcce/qmake.conf b/mkspecs/symbian/linux-gcce/qmake.conf
index de3791c..c75e46e 100644
--- a/mkspecs/symbian/linux-gcce/qmake.conf
+++ b/mkspecs/symbian/linux-gcce/qmake.conf
@@ -53,17 +53,20 @@ DEFINES += __GCCE__ \
UNICODE \
_STLP_NO_EXCEPTION_HEADER
-QMAKE_LFLAGS_APP += --entry _E32Startup
+QMAKE_LFLAGS_APP += --entry=_E32Startup -u _E32Startup
QMAKE_LFLAGS_SHLIB += --default-symver --entry _E32Dll
QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SHLIB
-gcceExtraFlags = --include=${EPOCROOT}epoc32/include/gcce/gcce.h -march=armv5t -mapcs -mthumb-interwork -nostdinc -c -fvisibility-inlines-hidden -msoft-float -T script
+gcceExtraFlags = --include=${EPOCROOT}/epoc32/include/gcce/gcce.h -march=armv5t -mapcs -mthumb-interwork -nostdinc -c -msoft-float -T script
QMAKE_CFLAGS += $${gcceExtraFlags}
-QMAKE_CXXFLAGS += $${gcceExtraFlags} -x c++ -fexceptions -fno-unit-at-a-time
+QMAKE_CXXFLAGS += $${gcceExtraFlags} -x c++ -fexceptions -fno-unit-at-a-time -fvisibility-inlines-hidden
+#If we are not going to link to Qt or qtmain.lib, we need to include this at least once.
+isEmpty(QT):contains(TEMPLATE, app) {
+ QMAKE_CXXFLAGS += --include=${EPOCROOT}/epoc32/include/stdapis/staticlibinit_gcce.h
+}
QMAKE_LFLAGS += --target1-abs \
--no-undefined \
- --strip-debug \
--nostdlib
QMAKE_LIBDIR += ${EPOCROOT}/epoc32/release/armv5/udeb/