diff options
Diffstat (limited to 'mkspecs')
-rw-r--r-- | mkspecs/common/symbian/symbian-makefile.conf | 2 | ||||
-rw-r--r-- | mkspecs/common/symbian/symbian-mmp.conf | 5 | ||||
-rw-r--r-- | mkspecs/features/qt_functions.prf | 6 | ||||
-rw-r--r-- | mkspecs/features/symbian/default_post.prf | 14 | ||||
-rw-r--r-- | mkspecs/features/symbian/symbian_building.prf | 7 | ||||
-rw-r--r-- | mkspecs/symbian-sbsv2/flm/qt/qmake_clean.flm | 18 | ||||
-rw-r--r-- | mkspecs/symbian-sbsv2/flm/qt/qmake_emulator_deployment.flm | 8 | ||||
-rw-r--r-- | mkspecs/symbian-sbsv2/flm/qt/qmake_post_link.flm | 2 | ||||
-rw-r--r-- | mkspecs/symbian-sbsv2/flm/qt/qt.xml | 5 | ||||
-rw-r--r-- | mkspecs/symbian/linux-gcce/qmake.conf | 9 | ||||
-rw-r--r-- | mkspecs/win32-g++/qmake.conf | 2 |
11 files changed, 51 insertions, 27 deletions
diff --git a/mkspecs/common/symbian/symbian-makefile.conf b/mkspecs/common/symbian/symbian-makefile.conf index 0360615fb9..e51de1df66 100644 --- a/mkspecs/common/symbian/symbian-makefile.conf +++ b/mkspecs/common/symbian/symbian-makefile.conf @@ -19,8 +19,6 @@ QMAKE_ELF2E32_FLAGS = --dlldata \ --compressionmethod bytepair \ --unpaged -include(../../common/unix.conf) - QMAKE_PREFIX_SHLIB = CONFIG *= no_plugin_name_prefix QMAKE_PREFIX_STATICLIB = diff --git a/mkspecs/common/symbian/symbian-mmp.conf b/mkspecs/common/symbian/symbian-mmp.conf index 4d554bd4ae..8ed326ae3f 100644 --- a/mkspecs/common/symbian/symbian-mmp.conf +++ b/mkspecs/common/symbian/symbian-mmp.conf @@ -13,7 +13,7 @@ symbian-abld { } else { MMP_RULES_DONT_EXPORT_ALL_CLASS_IMPEDIMENTA = "OPTION_REPLACE ARMCC --export_all_vtbl // don't use --export_all_vtbl" } -MMP_RULES += PAGED BYTEPAIRCOMPRESSTARGET +MMP_RULES += BYTEPAIRCOMPRESSTARGET MMP_RULES += $$MMP_RULES_DONT_EXPORT_ALL_CLASS_IMPEDIMENTA SYMBIAN_PLATFORMS = WINSCW GCCE ARMV5 ARMV6 @@ -28,7 +28,8 @@ INCLUDEPATH = \ # RVCT seems to do this automatically, but WINSCW compiler does not, so add it here. MMP_RULES += "USERINCLUDE ." -contains(S60_VERSION, 3.1):MMP_RULES -= PAGED BYTEPAIRCOMPRESSTARGET +# S60 3.1 devices don't support paging for non-ROM components, so no point in using the less efficient compression mechanism +contains(S60_VERSION, 3.1):MMP_RULES -= BYTEPAIRCOMPRESSTARGET QMAKE_CXXFLAGS_FAST_VFP.ARMCC = --fpmode fast # [TODO] QMAKE_CXXFLAGS_FAST_VFP.GCCE = diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf index 964e13b77c..24c84a5dc6 100644 --- a/mkspecs/features/qt_functions.prf +++ b/mkspecs/features/qt_functions.prf @@ -53,15 +53,15 @@ defineTest(qtAddLibrary) { # Needed for because relative inclusion problem in toolchain INCLUDEPATH *= $$QMAKE_INCDIR_QT/QtXmlPatterns INCLUDEPATH *= $$QMAKE_INCDIR_QT/QtNetwork - TARGET.CAPABILITY *= NetworkServices + isEmpty(TARGET.CAPABILITY): TARGET.CAPABILITY = NetworkServices isEmpty(TARGET.EPOCHEAPSIZE):TARGET.EPOCHEAPSIZE = 0x20000 0x2000000 } else:isEqual(LIB_NAME, QtXmlPatterns) { # Needed for #include <QtXmlPatterns/QtXmlPatterns> because relative inclusion problem in toolchain INCLUDEPATH *= $$QMAKE_INCDIR_QT/QtNetwork } else:isEqual(LIB_NAME, QtNetwork) { - TARGET.CAPABILITY *= NetworkServices + isEmpty(TARGET.CAPABILITY): TARGET.CAPABILITY = NetworkServices } else:isEqual(LIB_NAME, QtDeclarative) { - TARGET.CAPABILITY *= NetworkServices + isEmpty(TARGET.CAPABILITY): TARGET.CAPABILITY = NetworkServices isEmpty(TARGET.EPOCHEAPSIZE):TARGET.EPOCHEAPSIZE = 0x20000 0x2000000 } export(TARGET.EPOCHEAPSIZE) diff --git a/mkspecs/features/symbian/default_post.prf b/mkspecs/features/symbian/default_post.prf index ec6ecd0c84..126981e78f 100644 --- a/mkspecs/features/symbian/default_post.prf +++ b/mkspecs/features/symbian/default_post.prf @@ -53,14 +53,16 @@ isEmpty(TARGET.UID2) { } } -# Supports S60 3.1, 3.2, 5.0, Symbian^3, and Symbian^4 by default +# Supports Symbian^3 and Symbian^4 by default and also S60 3.1, 3.2, and 5.0 if built against any of those. platform_product_id = S60ProductID platform_product_id = $$addLanguageDependentPkgItem(platform_product_id) pkg_platform_dependencies = \ "; Default HW/platform dependencies" \ - "[0x102032BE],0,0,0,{$$platform_product_id}" \ - "[0x102752AE],0,0,0,{$$platform_product_id}" \ - "[0x1028315F],0,0,0,{$$platform_product_id}" \ "[0x20022E6D],0,0,0,{$$platform_product_id}" \ - "[0x20032DE7],0,0,0,{$$platform_product_id}" \ - " " + "[0x20032DE7],0,0,0,{$$platform_product_id}" +contains(S60_VERSION, 3.1)|contains(S60_VERSION, 3.2)|contains(S60_VERSION, 5.0) { + pkg_platform_dependencies += \ + "[0x102032BE],0,0,0,{$$platform_product_id}" \ + "[0x102752AE],0,0,0,{$$platform_product_id}" \ + "[0x1028315F],0,0,0,{$$platform_product_id}" +} diff --git a/mkspecs/features/symbian/symbian_building.prf b/mkspecs/features/symbian/symbian_building.prf index 0cedaa03ec..0d2e05387b 100644 --- a/mkspecs/features/symbian/symbian_building.prf +++ b/mkspecs/features/symbian/symbian_building.prf @@ -51,7 +51,7 @@ defineReplace(processSymbianLibrary) { } # This part turn "-llibc" into "libc.dso", and moves -L entries to QMAKE_LIBDIR. -libsToProcess = LIBS QMAKE_LIBS +libsToProcess = LIBS LIBS_PRIVATE QMAKE_LIBS for(libToProcess, libsToProcess) { qt_libraries = $$split($$libToProcess, " ") eval($$libToProcess =) @@ -90,8 +90,8 @@ count(splitVersion, 0) { } else { count(splitVersion, 3) { hexVersion = $$system("sh -c 'printf %02x $$member(splitVersion, 0)'") - hexPart2 = $$system("sh -c 'printf %02x $$member(splitVersion, 1)'")" - hexPart2 = $$hexPart2$$system("sh -c 'printf %02x $$member(splitVersion, 2)'")" + hexPart2 = $$system("sh -c 'printf %02x $$member(splitVersion, 1)'") + hexPart2 = $$hexPart2$$system("sh -c 'printf %02x $$member(splitVersion, 2)'") decVersion = $$system("sh -c 'printf %1d 0x$$hexVersion'"). hexVersion = $$hexVersion$$hexPart2 decVersion = $$decVersion$$system("sh -c 'printf %d 0x$$hexPart2'") @@ -147,6 +147,7 @@ contains(TEMPLATE, lib):!contains(CONFIG, static):!contains(CONFIG, staticlib) { LIBS += -ledllstub.lib -ledll.lib\\(uc_dll_.o\\) } else :linux-gcce { LIBS += \ + -l:edllstub.lib \ -l:edll.lib \ -l:usrt2_2.lib \ -l:dfpaeabi.dso \ diff --git a/mkspecs/symbian-sbsv2/flm/qt/qmake_clean.flm b/mkspecs/symbian-sbsv2/flm/qt/qmake_clean.flm new file mode 100644 index 0000000000..fe35e6ef4d --- /dev/null +++ b/mkspecs/symbian-sbsv2/flm/qt/qmake_clean.flm @@ -0,0 +1,18 @@ +# /**************************************************************************** +# ** +# ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +# ** Contact: Nokia Corporation (qt-info@nokia.com) +# ** +# ** This file is part of symbian-sbsv2 mkspec. +# ** +# ****************************************************************************/ + + +SINGLETON:=$(call sanitise,QMAKE_CLEAN_SINGLETON_$(EXTENSION_ROOT)) + +ifeq ($($(SINGLETON)),) +# Prevent duplicate targets from being created +$(SINGLETON):=1 +$(eval $(call GenerateStandardCleanTarget,$(CLEAN_FILES),'')) +endif + diff --git a/mkspecs/symbian-sbsv2/flm/qt/qmake_emulator_deployment.flm b/mkspecs/symbian-sbsv2/flm/qt/qmake_emulator_deployment.flm index db91f7f977..39ab0f090c 100644 --- a/mkspecs/symbian-sbsv2/flm/qt/qmake_emulator_deployment.flm +++ b/mkspecs/symbian-sbsv2/flm/qt/qmake_emulator_deployment.flm @@ -11,6 +11,9 @@ SINGLETON:=$(call sanitise,TARGET_$(DEPLOY_TARGET)) CLEAN_TARGET:= +# Deployment dependencies collection target for post link operations +all_qmake_emulator_deployment_dependencies:: + define qmake_emulator_deployment $(ALLTARGET):: $(1) @@ -19,7 +22,7 @@ $(SINGLETON):=1 CLEAN_TARGET:=$(1) -$(1): $(2) +$(1): $(2) all_qmake_emulator_deployment_dependencies $(call startrule,qmake_emulator_deployment) \ $(GNUCP) --remove-destination --no-preserve=mode $(2) "$$@" && \ $(GNUCHMOD) a+rw "$$@" \ @@ -32,6 +35,3 @@ $(call makepath,$(dir $(DEPLOY_TARGET))) $(eval $(call GenerateStandardCleanTarget,$(CLEAN_TARGET),'')) endif - - - diff --git a/mkspecs/symbian-sbsv2/flm/qt/qmake_post_link.flm b/mkspecs/symbian-sbsv2/flm/qt/qmake_post_link.flm index ae53741cfc..0312d14dbb 100644 --- a/mkspecs/symbian-sbsv2/flm/qt/qmake_post_link.flm +++ b/mkspecs/symbian-sbsv2/flm/qt/qmake_post_link.flm @@ -18,6 +18,8 @@ define command_fixer THE_COMMAND:=$(POST_LINK_CMD) endef +all_qmake_emulator_deployment_dependencies:: $(POST_LINK_TARGET) + define qmake_post_link $(ALLTARGET):: $(POST_LINK_TARGET) diff --git a/mkspecs/symbian-sbsv2/flm/qt/qt.xml b/mkspecs/symbian-sbsv2/flm/qt/qt.xml index ddd8d559e6..f2f32ee287 100644 --- a/mkspecs/symbian-sbsv2/flm/qt/qt.xml +++ b/mkspecs/symbian-sbsv2/flm/qt/qt.xml @@ -38,4 +38,9 @@ <interface name="qt.qmake_store_build" extends="Symbian.UserFLM" flm="qmake_store_build.flm"> </interface> + + <interface name="qt.qmake_clean" extends="Symbian.UserFLM" + flm="qmake_clean.flm"> + <param name='CLEAN_FILES' /> + </interface> </build> diff --git a/mkspecs/symbian/linux-gcce/qmake.conf b/mkspecs/symbian/linux-gcce/qmake.conf index faac2f12f1..62cc9aee98 100644 --- a/mkspecs/symbian/linux-gcce/qmake.conf +++ b/mkspecs/symbian/linux-gcce/qmake.conf @@ -46,15 +46,14 @@ QMAKE_CXXFLAGS_STATIC_LIB -= -fPIC QMAKE_LFLAGS_SONAME = #QMAKE_LFLAGS_THREAD += -#QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined +QMAKE_LFLAGS_NOUNDEF = QMAKE_LFLAGS_RPATH = --rpath= DEFINES += __GCCE__ \ - UNICODE \ - _STLP_NO_EXCEPTION_HEADER + UNICODE QMAKE_LFLAGS_APP += --entry=_E32Startup -u _E32Startup -QMAKE_LFLAGS_SHLIB += --default-symver --entry _E32Dll +QMAKE_LFLAGS_SHLIB += --default-symver --entry=_E32Dll -u _E32Dll QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SHLIB gcceExtraFlags = --include=${EPOCROOT}/epoc32/include/gcce/gcce.h -march=armv5t -mapcs -mthumb-interwork -nostdinc -c -msoft-float -T script @@ -89,7 +88,5 @@ INCLUDEPATH = ${EPOCROOT}/epoc32/include/ \ $${EPOCROOT}/epoc32/include/variant \ $${EPOCROOT}/epoc32/include/stdapis \ $${EPOCROOT}/epoc32/include/gcce \ - ${EPOCROOT}/epoc32/include/stdapis/sys \ - ${EPOCROOT}/epoc32/include/stdapis/stlport \ $$INCLUDEPATH diff --git a/mkspecs/win32-g++/qmake.conf b/mkspecs/win32-g++/qmake.conf index 2d9833b885..65ae590cfc 100644 --- a/mkspecs/win32-g++/qmake.conf +++ b/mkspecs/win32-g++/qmake.conf @@ -77,7 +77,7 @@ QMAKE_LIBS_QT_ENTRY = -lmingw32 -lqtmain QMAKE_DIR_SEP = / QMAKE_QMAKE ~= s,\\\\,/, QMAKE_COPY = cp - QMAKE_COPY_DIR = xcopy /s /q /y /i + QMAKE_COPY_DIR = cp -r QMAKE_MOVE = mv QMAKE_DEL_FILE = rm QMAKE_MKDIR = mkdir |