diff options
author | axis <qt-info@nokia.com> | 2009-10-16 11:45:22 (GMT) |
---|---|---|
committer | axis <qt-info@nokia.com> | 2009-10-23 15:32:24 (GMT) |
commit | 31d299b666e2043a450eac7f76b318d664d9efa0 (patch) | |
tree | 985526cabdc0f2e536e9b2599c4c1e7be3f3fa09 | |
parent | 3c8f2ad71e0afe9ded1f2f695709f98fa1ef644b (diff) | |
download | Qt-31d299b666e2043a450eac7f76b318d664d9efa0.zip Qt-31d299b666e2043a450eac7f76b318d664d9efa0.tar.gz Qt-31d299b666e2043a450eac7f76b318d664d9efa0.tar.bz2 |
Added support for both lib and app templates.
-rw-r--r-- | mkspecs/symbian/linux-armcc/features/default_post.prf | 81 | ||||
-rw-r--r-- | mkspecs/symbian/linux-armcc/qmake.conf | 8 |
2 files changed, 59 insertions, 30 deletions
diff --git a/mkspecs/symbian/linux-armcc/features/default_post.prf b/mkspecs/symbian/linux-armcc/features/default_post.prf index e7f658b..5645637 100644 --- a/mkspecs/symbian/linux-armcc/features/default_post.prf +++ b/mkspecs/symbian/linux-armcc/features/default_post.prf @@ -1,27 +1,54 @@ -exports.commands = winewrapper getexports.exe ${QMAKE_FILE_NAME} > ${OBJECTS_DIR}${QMAKE_FILE_BASE}.exports -exports.output = $$OBJECTS_DIR/${QMAKE_FILE_BASE}.exports -exports.input = OBJECTS -exports.variable_out = ORDINALMAP -exports.CONFIG = no_link - -deffile.input = ORDINALMAP -deffile.output = $$OBJECTS_DIR/$${TARGET}.def -deffile.commands = makedeffile $$OBJECTS_DIR/$${TARGET}.def ${QMAKE_FILE_NAME} -deffile.variable_out = DEFFILE -deffile.CONFIG = no_link combine - -expfile.input = DEFFILE -expfile.output = $$OBJECTS_DIR/$${TARGET}.exp -expfile.commands = makeexpfile ${QMAKE_FILE_NAME} $$OBJECTS_DIR/$${TARGET}.exp -expfile.variable_out = QMAKE_LIBS -expfile.CONFIG = target_predeps - -ordinalmap.input = DEFFILE -ordinalmap.output = $$OBJECTS_DIR/$${TARGET}.lib -ordinalmap.commands = makeordinalmap $$OBJECTS_DIR ${QMAKE_FILE_NAME} $${TARGET}.dll $$OBJECTS_DIR/$${TARGET}.lib -ordinalmap.variable_out = PRE_TARGETDEPS - -QMAKE_EXTRA_COMPILERS += exports -QMAKE_EXTRA_COMPILERS += deffile -QMAKE_EXTRA_COMPILERS += expfile -QMAKE_EXTRA_COMPILERS += ordinalmap +isEmpty(DESTDIR) { + DESTDIR = . +} + +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 + exports.input = OBJECTS + exports.variable_out = ORDINALMAP + exports.CONFIG = no_link + + deffile.input = ORDINALMAP + deffile.output = $$OBJECTS_DIR/$${TARGET}.def + deffile.commands = makedeffile $$OBJECTS_DIR/$${TARGET}.def ${QMAKE_FILE_NAME} + deffile.variable_out = DEFFILE + deffile.CONFIG = no_link combine + + expfile.input = DEFFILE + expfile.output = $$OBJECTS_DIR/$${TARGET}.exp + expfile.commands = makeexpfile ${QMAKE_FILE_NAME} $$OBJECTS_DIR/$${TARGET}.exp + expfile.variable_out = QMAKE_LIBS + expfile.CONFIG = target_predeps + + ordinalmap.input = DEFFILE + ordinalmap.output = $$DESTDIR/$${TARGET}.lib + ordinalmap.commands = makeordinalmap $$OBJECTS_DIR ${QMAKE_FILE_NAME} $${TARGET}.dll $$DESTDIR/$${TARGET}.lib + ordinalmap.variable_out = PRE_TARGETDEPS + + elftran.target = $${DESTDIR}/lib$${TARGET}.tran + elftran.commands = winewrapper elftran.exe -version 4.1536 -sid 0xe001b2dc -allow -nocall -heap 0x00020000 0x00800000 -stack 0x00014000 -unpaged -uid1 0x10000079 -uid2 0x1000008d -uid3 0xe001b2dc -fpu softvfp -capability All-Tcb $${DESTDIR}/lib$${TARGET}.dll $${DESTDIR}/lib$${TARGET}.tran + elftran.depends = $${DESTDIR}/lib$${TARGET}.dll + QMAKE_POST_LINK += winewrapper elftran.exe -version 4.1536 -sid 0xe001b2dc -allow -nocall -heap 0x00020000 0x00800000 -stack 0x00014000 -unpaged -uid1 0x10000079 -uid2 0x1000008d -uid3 0xe001b2dc -fpu softvfp -capability All-Tcb $${DESTDIR}/lib$${TARGET}.dll $${DESTDIR}/lib$${TARGET}.tran + QMAKE_CLEAN += $${DESTDIR}/lib$${TARGET}.tran + + QMAKE_EXTRA_COMPILERS += exports + QMAKE_EXTRA_COMPILERS += deffile + QMAKE_EXTRA_COMPILERS += expfile + QMAKE_EXTRA_COMPILERS += ordinalmap + QMAKE_EXTRA_TARGETS += elftran + + QMAKE_LIBS += -ledllstub -ledll.lib\\(uc_dll_.o\\) +} + +contains(TEMPLATE, app) { + elftran.target = $${DESTDIR}/$${TARGET}.tran + elftran.commands = winewrapper elftran.exe -version 10.0 -sid 0xe4d10fc9 -nocall -heap 0x00020000 0x00800000 -stack 0x00014000 -unpaged -uid1 0x1000007a -uid2 0x1000008d -uid3 0xe4d10fc9 -fpu softvfp -capability None $${DESTDIR}/$${TARGET} $${DESTDIR}/$${TARGET}.tran + elftran.depends = $${DESTDIR}/$${TARGET} + QMAKE_POST_LINK += winewrapper elftran.exe -version 10.0 -sid 0xe4d10fc9 -nocall -heap 0x00020000 0x00800000 -stack 0x00014000 -unpaged -uid1 0x1000007a -uid2 0x1000008d -uid3 0xe4d10fc9 -fpu softvfp -capability None $${DESTDIR}/$${TARGET} $${DESTDIR}/$${TARGET}.tran + QMAKE_CLEAN += $${DESTDIR}/$${TARGET}.tran + + QMAKE_EXTRA_TARGETS += elftran + + QMAKE_LIBS += -leexe.lib\\(uc_exe_.o\\) +} diff --git a/mkspecs/symbian/linux-armcc/qmake.conf b/mkspecs/symbian/linux-armcc/qmake.conf index 2a926dd..577c4e2 100644 --- a/mkspecs/symbian/linux-armcc/qmake.conf +++ b/mkspecs/symbian/linux-armcc/qmake.conf @@ -28,7 +28,9 @@ QMAKE_MKDIR = mkdir -p QMAKE_CFLAGS += --preinclude rvct2_2.h --diag_suppress 186,654,1300 --thumb --fpu softvfp --cpu 5T --enum_is_int -Ono_known_library --fpmode ieee_no_fenv --export_all_vtbl --no_vfe --apcs /inter --dllimport_runtime --gnu QMAKE_CXXFLAGS += $$QMAKE_CFLAGS --no_parse_templates -QMAKE_LFLAGS_SHLIB += --entry _E32Dll --diag_suppress 6331,6780 --shl --reloc --split --rw-base 0x400000 --noscanlib +QMAKE_LFLAGS += --diag_suppress 6331,6780 --shl --reloc --split --rw-base 0x400000 --noscanlib +QMAKE_LFLAGS_APP += --entry _E32Startup +QMAKE_LFLAGS_SHLIB += --entry _E32Dll QT_ARCH = symbian @@ -37,7 +39,7 @@ 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 += -ledllstub -ledll.lib\\(uc_dll_.o\\) -lusrt2_2 -ldfpaeabi -ldfprvct2_2.lib -ldrtaeabi -ldrtaeabi.lib\\(VtblExports.o\\) -lscppnwdl -ldrtrvct2_2 +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 include(../../common/unix.conf) |