summaryrefslogtreecommitdiffstats
path: root/mkspecs/features
diff options
context:
space:
mode:
Diffstat (limited to 'mkspecs/features')
-rw-r--r--mkspecs/features/sis_targets.prf139
-rw-r--r--mkspecs/features/symbian/application_icon.prf20
-rw-r--r--mkspecs/features/symbian/debug.prf1
-rw-r--r--mkspecs/features/symbian/default_post.prf4
-rw-r--r--mkspecs/features/symbian/moc.prf24
-rw-r--r--mkspecs/features/symbian/platform_paths.prf217
-rw-r--r--mkspecs/features/symbian/qt.prf114
-rw-r--r--mkspecs/features/symbian/release.prf1
-rw-r--r--mkspecs/features/symbian/thread.prf2
9 files changed, 285 insertions, 237 deletions
diff --git a/mkspecs/features/sis_targets.prf b/mkspecs/features/sis_targets.prf
new file mode 100644
index 0000000..66a7a9d
--- /dev/null
+++ b/mkspecs/features/sis_targets.prf
@@ -0,0 +1,139 @@
+# Sis file creation
+contains(TEMPLATE, app)|!isEmpty(DEPLOYMENT) {
+ symbian-abld|symbian-sbsv2 {
+ sis_destdir =
+ make_cache_name = .make.cache
+ sis_target.target = sis
+ sis_target.commands = $(if $(wildcard $$basename(TARGET)_template.pkg), \
+ $(if $(wildcard $$make_cache_name), \
+ $(MAKE) -f $(MAKEFILE) ok_sis MAKEFILES=$$make_cache_name \
+ , \
+ $(if $(QT_SIS_TARGET), \
+ $(MAKE) -f $(MAKEFILE) ok_sis \
+ , \
+ $(MAKE) -f $(MAKEFILE) fail_sis_nocache \
+ ) \
+ ) \
+ , \
+ $(MAKE) -f $(MAKEFILE) fail_sis_nopkg \
+ )
+
+ ok_sis_target.target = ok_sis
+ ok_sis_target.commands = createpackage.bat $(QT_SIS_OPTIONS) $$basename(TARGET)_template.pkg \
+ $(QT_SIS_TARGET) $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
+
+ target_sis_target.target = $${sis_destdir}$${TARGET}.sis
+ target_sis_target.commands = $(MAKE) -f $(MAKEFILE) sis
+
+ installer_sis_target.target = installer_sis
+ installer_sis_target.commands = $(if $(wildcard $$basename(TARGET)_installer.pkg), \
+ $(MAKE) -f $(MAKEFILE) ok_installer_sis \
+ , \
+ $(MAKE) -f $(MAKEFILE) fail_sis_nopkg \
+ )
+ installer_sis_target.depends = $${sis_destdir}$${TARGET}.sis
+
+ ok_installer_sis_target.target = ok_installer_sis
+ ok_installer_sis_target.commands = createpackage.bat $(QT_SIS_OPTIONS) $$basename(TARGET)_installer.pkg - \
+ $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
+
+ fail_sis_nopkg_target.target = fail_sis_nopkg
+ fail_sis_nopkg_target.commands = "$(error PKG file does not exist, 'sis' and 'installer_sis' target are only supported for executables or projects with DEPLOYMENT statement)"
+
+ fail_sis_nocache_target.target = fail_sis_nocache
+ fail_sis_nocache_target.commands = "$(error Project has to be built or QT_SIS_TARGET environment variable has to be set before calling 'SIS' target)"
+
+ stub_sis_target.target = stub_sis
+ stub_sis_target.commands = $(if $(wildcard $$basename(TARGET)_template.pkg), \
+ $(if $(wildcard $$make_cache_name), \
+ $(MAKE) -f $(MAKEFILE) ok_stub_sis MAKEFILES=$$make_cache_name \
+ , \
+ $(if $(QT_SIS_TARGET), \
+ $(MAKE) -f $(MAKEFILE) ok_stub_sis \
+ , \
+ $(MAKE) -f $(MAKEFILE) fail_sis_nocache \
+ ) \
+ ) \
+ , \
+ $(MAKE) -f $(MAKEFILE) fail_sis_nopkg \
+ )
+
+ ok_stub_sis_target.target = ok_stub_sis
+ ok_stub_sis_target.commands = createpackage.bat -s $(QT_SIS_OPTIONS) $$basename(TARGET)_template.pkg \
+ $(QT_SIS_TARGET) $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
+
+ QMAKE_EXTRA_TARGETS += sis_target \
+ ok_sis_target \
+ target_sis_target \
+ installer_sis_target \
+ ok_installer_sis_target \
+ fail_sis_nopkg_target \
+ fail_sis_nocache_target \
+ stub_sis_target \
+ ok_stub_sis_target
+ # Sbsv2 has its own store_build target which is using flms.
+ !symbian-sbsv2 {
+ contains(QMAKE_HOST.os, "Windows") {
+ shellFixedHash = $${LITERAL_HASH}
+ } else {
+ shellFixedHash = \\$${LITERAL_HASH}
+ }
+ store_build_target.target = store_build
+ store_build_target.commands = \
+ @echo $${shellFixedHash} ============================================================================== > $$make_cache_name \
+ && echo $${shellFixedHash} This file is generated by make and should not be modified by the user >> $$make_cache_name \
+ && echo $${shellFixedHash} Name : $$make_cache_name >> $$make_cache_name \
+ && echo $${shellFixedHash} Part of : lineedits >> $$make_cache_name \
+ && echo $${shellFixedHash} Description : This file is used to cache last build target for >> $$make_cache_name \
+ && echo $${shellFixedHash} make sis target. >> $$make_cache_name \
+ && echo $${shellFixedHash} Version : >> $$make_cache_name \
+ && echo $${shellFixedHash} >> $$make_cache_name \
+ && echo $${shellFixedHash} ============================================================================== >> $$make_cache_name \
+ && echo. >> $$make_cache_name \
+ && echo QT_SIS_TARGET ?= $(QT_SIS_TARGET) >> $$make_cache_name
+
+ QMAKE_EXTRA_TARGETS += store_build_target
+ }
+ } else {
+ sis_destdir = $$DESTDIR
+ !isEmpty(sis_destdir):!contains(sis_destdir, "[/\\]$"):sis_destdir = $${sis_destdir}/
+ contains(QMAKE_HOST.os, "Windows"):sis_destdir = $$replace(sis_destdir, "/", "\\")
+
+ sis_target.target = sis
+ sis_target.commands = createpackage $(QT_SIS_OPTIONS) $$basename(TARGET)_template.pkg \
+ - $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
+ sis_target.depends = first
+
+ target_sis_target.target = $${sis_destdir}$${TARGET}.sis
+ target_sis_target.commands = $(MAKE) -f $(MAKEFILE) sis
+
+ installer_sis_target.target = installer_sis
+ installer_sis_target.commands = createpackage $(QT_SIS_OPTIONS) $$basename(TARGET)_installer.pkg - \
+ $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
+ installer_sis_target.depends = $${sis_destdir}$${TARGET}.sis
+
+ !isEmpty(DESTDIR) {
+ sis_target.commands += && $$QMAKE_MOVE $$basename(TARGET).sis $$DESTDIR
+ installer_sis_target.commands += && $$QMAKE_MOVE $$basename(TARGET).sis $$DESTDIR
+ }
+
+ QMAKE_EXTRA_TARGETS += sis_target \
+ target_sis_target \
+ installer_sis_target
+ }
+} else {
+ contains(TEMPLATE, subdirs) {
+ # Enable recursive sis target.
+ sis_target.CONFIG = recursive
+ sis_target.recurse = $$SUBDIRS
+ } else {
+ # Make sure we build everything, since other sis targets in a recursive invocation
+ # may depend on them, even if this one is empty.
+ sis_target.depends = first
+ }
+ sis_target.commands =
+ sis_target.target = sis
+ QMAKE_EXTRA_TARGETS += sis_target
+}
+
+QMAKE_DISTCLEAN += $${sis_destdir}$${TARGET}.sis
diff --git a/mkspecs/features/symbian/application_icon.prf b/mkspecs/features/symbian/application_icon.prf
index b790463..41f1718 100644
--- a/mkspecs/features/symbian/application_icon.prf
+++ b/mkspecs/features/symbian/application_icon.prf
@@ -28,23 +28,33 @@ contains( CONFIG, no_icon ) {
baseTarget = $$replace(baseTarget, " ",_)
# Note: symbian-sbsv2 builds can't utilize extra compiler for mifconv, so ICON handling is done in code
- symbian-abld {
+ !symbian-sbsv2 {
#Makefile: requires paths with backslash
- contains(QMAKE_HOST.os, "Windows"):ICON = $$replace(ICON, /, \\)
+ ICON_backslashed = $$replace( ICON, /, \\)
+
+ symbian-abld {
+ mifIconZDir = ${ZDIR}$$APP_RESOURCE_DIR
+ } else {
+ isEmpty(DESTDIR) {
+ mifIconZDir = .
+ } else {
+ mifIconZDir = $$DESTDIR
+ }
+ }
# Extra compiler rules for mifconv
- mifconv.output = ${ZDIR}$$APP_RESOURCE_DIR/$${baseTarget}.mif
+ mifconv.output = $$mifIconZDir/$${baseTarget}.mif
# Based on: http://www.forum.nokia.com/document/Cpp_Developers_Library
# svg-t icons should always use /c32 depth
mifconv.commands = mifconv ${QMAKE_FILE_OUT} /c32 ${QMAKE_FILE_IN}
- mifconv.input = ICON
+ mifconv.input = ICON_backslashed
mifconv.CONFIG = no_link combine
# target_predeps together with combine seems not to work correctly, lets define it by ourselves
PRE_TARGETDEPS += $$mifconv.output
QMAKE_EXTRA_COMPILERS += mifconv
}
# Rules to use generated MIF file from symbian resources
- RSS_RULES.number_of_icons = $$size(ICON)
+ RSS_RULES.number_of_icons = $$size(ICON_backslashed)
RSS_RULES.icon_file = $$APP_RESOURCE_DIR/$${baseTarget}.mif
}
}
diff --git a/mkspecs/features/symbian/debug.prf b/mkspecs/features/symbian/debug.prf
new file mode 100644
index 0000000..19f5348
--- /dev/null
+++ b/mkspecs/features/symbian/debug.prf
@@ -0,0 +1 @@
+QMAKE_LIBDIR_QT += $${EPOCROOT}epoc32/release/armv5/udeb
diff --git a/mkspecs/features/symbian/default_post.prf b/mkspecs/features/symbian/default_post.prf
index 7c9e8ee..ed90e3c 100644
--- a/mkspecs/features/symbian/default_post.prf
+++ b/mkspecs/features/symbian/default_post.prf
@@ -28,4 +28,6 @@ contains(TEMPLATE, lib): {
contains(TEMPLATE, ".*app"):contains(QT, gui):contains(CONFIG,qt) {
load(application_icon.prf)
-} \ No newline at end of file
+}
+
+isEmpty(TARGET.UID3):TARGET.UID3 = $$generate_uid("$${OUT_PWD}/$${TARGET}")
diff --git a/mkspecs/features/symbian/moc.prf b/mkspecs/features/symbian/moc.prf
index 9c21ed7..29e0d8d 100644
--- a/mkspecs/features/symbian/moc.prf
+++ b/mkspecs/features/symbian/moc.prf
@@ -1,16 +1,18 @@
load(moc)
-RET = $$find(MOC_DIR, "(/|^)\.[^/]+/?$")
-!isEmpty(RET):{
- error("Symbian does not support directories starting with a dot. Please set MOC_DIR to a different value in your profile. MOC_DIR: $$MOC_DIR")
-}
+symbian-abld|symbian-sbsv2 {
+ RET = $$find(MOC_DIR, "(/|^)\.[^/]+/?$")
+ !isEmpty(RET):{
+ error("Symbian does not support directories starting with a dot. Please set MOC_DIR to a different value in your profile. MOC_DIR: $$MOC_DIR")
+ }
-RET = $$find(RCC_DIR, "(/|^)\.[^/]+/?$")
-!isEmpty(RET):{
- error("Symbian does not support directories starting with a dot. Please set RCC_DIR to a different value in your profile. RCC_DIR: $$RCC_DIR")
-}
+ RET = $$find(RCC_DIR, "(/|^)\.[^/]+/?$")
+ !isEmpty(RET):{
+ error("Symbian does not support directories starting with a dot. Please set RCC_DIR to a different value in your profile. RCC_DIR: $$RCC_DIR")
+ }
-RET = $$find(OBJECTS_DIR, "(/|^)\.[^/]+/?$")
-!isEmpty(RET):{
- error("Symbian does not support directories starting with a dot. Please set OBJECTS_DIR to a different value in your profile. OBJECTS_DIR: $$OBJECTS_DIR")
+ RET = $$find(OBJECTS_DIR, "(/|^)\.[^/]+/?$")
+ !isEmpty(RET):{
+ error("Symbian does not support directories starting with a dot. Please set OBJECTS_DIR to a different value in your profile. OBJECTS_DIR: $$OBJECTS_DIR")
+ }
}
diff --git a/mkspecs/features/symbian/platform_paths.prf b/mkspecs/features/symbian/platform_paths.prf
index c723d8c..1bfc116 100644
--- a/mkspecs/features/symbian/platform_paths.prf
+++ b/mkspecs/features/symbian/platform_paths.prf
@@ -50,6 +50,12 @@
#
# ==============================================================================
+symbian-abld|symbian-sbsv2 {
+ epocroot_prefix = /
+} else {
+ epocroot_prefix = $${EPOCROOT}
+}
+
exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# Load platform specific paths
@@ -66,10 +72,10 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# ---------------------------------------
defineReplace(APP_LAYER_SDK_EXPORT_PATH) {
- return (/epoc32/include/app/$$1)
+ return ($${epocroot_prefix}epoc32/include/app/$$1)
}
defineReplace(APP_LAYER_PUBLIC_EXPORT_PATH) {
- return (/epoc32/include/app/$$1)
+ return ($${epocroot_prefix}epoc32/include/app/$$1)
}
# ---------------------------------------
@@ -77,10 +83,10 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# ---------------------------------------
defineReplace(APP_LAYER_DOMAIN_EXPORT_PATH) {
- return (/epoc32/include/platform/app/$$1)
+ return ($${epocroot_prefix}epoc32/include/platform/app/$$1)
}
defineReplace(APP_LAYER_PLATFORM_EXPORT_PATH) {
- return (/epoc32/include/platform/app/$$1)
+ return ($${epocroot_prefix}epoc32/include/platform/app/$$1)
}
# ---------------------------------------
@@ -88,10 +94,10 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# ---------------------------------------
defineReplace(MW_LAYER_SDK_EXPORT_PATH) {
- return (/epoc32/include/mw/$$1)
+ return ($${epocroot_prefix}epoc32/include/mw/$$1)
}
defineReplace(MW_LAYER_PUBLIC_EXPORT_PATH) {
- return (/epoc32/include/mw/$$1)
+ return ($${epocroot_prefix}epoc32/include/mw/$$1)
}
# ---------------------------------------
@@ -99,10 +105,10 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# ---------------------------------------
defineReplace(MW_LAYER_DOMAIN_EXPORT_PATH) {
- return (/epoc32/include/platform/mw/$$1)
+ return ($${epocroot_prefix}epoc32/include/platform/mw/$$1)
}
defineReplace(MW_LAYER_PLATFORM_EXPORT_PATH) {
- return (/epoc32/include/platform/mw/$$1)
+ return ($${epocroot_prefix}epoc32/include/platform/mw/$$1)
}
# ---------------------------------------
@@ -110,11 +116,11 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# ---------------------------------------
defineReplace(OSEXT_LAYER_SDK_EXPORT_PATH) {
- return (/epoc32/include/$$1)
+ return ($${epocroot_prefix}epoc32/include/$$1)
}
# WARNING: If the following path changes see the exists() function around line 219
defineReplace(OS_LAYER_PUBLIC_EXPORT_PATH) {
- return (/epoc32/include/$$1)
+ return ($${epocroot_prefix}epoc32/include/$$1)
}
# ---------------------------------------
@@ -122,10 +128,10 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# ---------------------------------------
defineReplace(OSEXT_LAYER_DOMAIN_EXPORT_PATH) {
- return (/epoc32/include/platform/$$1)
+ return ($${epocroot_prefix}epoc32/include/platform/$$1)
}
defineReplace(OS_LAYER_PLATFORM_EXPORT_PATH) {
- return (/epoc32/include/platform/$$1)
+ return ($${epocroot_prefix}epoc32/include/platform/$$1)
}
# ---------------------------------------
@@ -152,18 +158,18 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# the headers come from middleware or os-layer => thus they are first.
APP_LAYER_SYSTEMINCLUDE = \
- /epoc32/include \
- /epoc32/include/mw \
- /epoc32/include/platform/mw \
- /epoc32/include/platform \
- /epoc32/include/app \
- /epoc32/include/platform/app \
- /epoc32/include/platform/loc \
- /epoc32/include/platform/mw/loc \
- /epoc32/include/platform/app/loc \
- /epoc32/include/platform/loc/sc \
- /epoc32/include/platform/mw/loc/sc \
- /epoc32/include/platform/app/loc/sc
+ $${epocroot_prefix}epoc32/include \
+ $${epocroot_prefix}epoc32/include/mw \
+ $${epocroot_prefix}epoc32/include/platform/mw \
+ $${epocroot_prefix}epoc32/include/platform \
+ $${epocroot_prefix}epoc32/include/app \
+ $${epocroot_prefix}epoc32/include/platform/app \
+ $${epocroot_prefix}epoc32/include/platform/loc \
+ $${epocroot_prefix}epoc32/include/platform/mw/loc \
+ $${epocroot_prefix}epoc32/include/platform/app/loc \
+ $${epocroot_prefix}epoc32/include/platform/loc/sc \
+ $${epocroot_prefix}epoc32/include/platform/mw/loc/sc \
+ $${epocroot_prefix}epoc32/include/platform/app/loc/sc
# This define statements defines the include paths, which are intended to be
# used in the pro-files that are part of the middleware-layer. It includes all
@@ -171,14 +177,14 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# middleware-layer components.
MW_LAYER_SYSTEMINCLUDE = \
- /epoc32/include \
- /epoc32/include/mw \
- /epoc32/include/platform/mw \
- /epoc32/include/platform \
- /epoc32/include/platform/loc \
- /epoc32/include/platform/mw/loc \
- /epoc32/include/platform/loc/sc \
- /epoc32/include/platform/mw/loc/sc
+ $${epocroot_prefix}epoc32/include \
+ $${epocroot_prefix}epoc32/include/mw \
+ $${epocroot_prefix}epoc32/include/platform/mw \
+ $${epocroot_prefix}epoc32/include/platform \
+ $${epocroot_prefix}epoc32/include/platform/loc \
+ $${epocroot_prefix}epoc32/include/platform/mw/loc \
+ $${epocroot_prefix}epoc32/include/platform/loc/sc \
+ $${epocroot_prefix}epoc32/include/platform/mw/loc/sc
# This define statements defines the include paths, which are intended to be
# used in the pro-files that are part of the osextensions-layer. It includes all
@@ -186,10 +192,10 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# os-layer components.
OS_LAYER_SYSTEMINCLUDE = \
- /epoc32/include \
- /epoc32/include/platform \
- /epoc32/include/platform/loc \
- /epoc32/include/platform/loc/sc
+ $${epocroot_prefix}epoc32/include \
+ $${epocroot_prefix}epoc32/include/platform \
+ $${epocroot_prefix}epoc32/include/platform/loc \
+ $${epocroot_prefix}epoc32/include/platform/loc/sc
# This define statements defines the include paths, which are intended to be
# used in the pro-files that are part of the os-layer. This is intended
@@ -198,7 +204,7 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# 2 files already contain the /epoc32/include as system include path.
OS_LAYER_KERNEL_SYSTEMINCLUDE = \
- /epoc32/include/platform
+ $${epocroot_prefix}epoc32/include/platform
# ---------------------------------------
@@ -236,19 +242,19 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# ---------------------------------------
defineReplace(CORE_APP_LAYER_IBY_EXPORT_PATH) {
- return(/epoc32/rom/include/core/app/$$1)
+ return($${epocroot_prefix}epoc32/rom/include/core/app/$$1)
}
defineReplace(CORE_MW_LAYER_IBY_EXPORT_PATH) {
- return(/epoc32/rom/include/core/mw/$$1)
+ return($${epocroot_prefix}epoc32/rom/include/core/mw/$$1)
}
defineReplace(CORE_OSEXT_LAYER_IBY_EXPORT_PATH) {
- return(/epoc32/rom/include/core/os/$$1)
+ return($${epocroot_prefix}epoc32/rom/include/core/os/$$1)
}
defineReplace(CORE_OS_LAYER_IBY_EXPORT_PATH) {
- return(/epoc32/rom/include/core/os/$$1)
+ return($${epocroot_prefix}epoc32/rom/include/core/os/$$1)
}
defineReplace(CORE_ADAPT_LAYER_IBY_EXPORT_PATH) {
- return(/epoc32/rom/include/$$1)
+ return($${epocroot_prefix}epoc32/rom/include/$$1)
}
# You need to define the following in pro-file, if you are using the stllib:
@@ -264,10 +270,10 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# ---------------------------------------
defineReplace(APP_LAYER_SDK_EXPORT_PATH) {
- return (/epoc32/include/applications/$$1)
+ return ($${epocroot_prefix}epoc32/include/applications/$$1)
}
defineReplace(APP_LAYER_PUBLIC_EXPORT_PATH) {
- return (/epoc32/include/applications/$$1)
+ return ($${epocroot_prefix}epoc32/include/applications/$$1)
}
# ---------------------------------------
@@ -275,10 +281,10 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# ---------------------------------------
defineReplace(APP_LAYER_DOMAIN_EXPORT_PATH) {
- return (/epoc32/include/domain/applications/$$1)
+ return ($${epocroot_prefix}epoc32/include/domain/applications/$$1)
}
defineReplace(APP_LAYER_PLATFORM_EXPORT_PATH) {
- return (/epoc32/include/domain/applications/$$1)
+ return ($${epocroot_prefix}epoc32/include/domain/applications/$$1)
}
# ---------------------------------------
@@ -286,10 +292,10 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# ---------------------------------------
defineReplace(MW_LAYER_SDK_EXPORT_PATH) {
- return (/epoc32/include/middleware/$$1)
+ return ($${epocroot_prefix}epoc32/include/middleware/$$1)
}
defineReplace(MW_LAYER_PUBLIC_EXPORT_PATH) {
- return (/epoc32/include/middleware/$$1)
+ return ($${epocroot_prefix}epoc32/include/middleware/$$1)
}
# ---------------------------------------
@@ -297,10 +303,10 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# ---------------------------------------
defineReplace(MW_LAYER_DOMAIN_EXPORT_PATH) {
- return (/epoc32/include/domain/middleware/$$1)
+ return ($${epocroot_prefix}epoc32/include/domain/middleware/$$1)
}
defineReplace(MW_LAYER_PLATFORM_EXPORT_PATH) {
- return (/epoc32/include/domain/middleware/$$1)
+ return ($${epocroot_prefix}epoc32/include/domain/middleware/$$1)
}
# ---------------------------------------
@@ -308,11 +314,11 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# ---------------------------------------
defineReplace(OSEXT_LAYER_SDK_EXPORT_PATH) {
- return (/epoc32/include/osextensions/$$1)
+ return ($${epocroot_prefix}epoc32/include/osextensions/$$1)
}
# WARNING: If the following path changes see the exists() function around line 430
defineReplace(OS_LAYER_PUBLIC_EXPORT_PATH) {
- return (/epoc32/include/osextensions/$$1)
+ return ($${epocroot_prefix}epoc32/include/osextensions/$$1)
}
# ---------------------------------------
@@ -320,10 +326,10 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# ---------------------------------------
defineReplace(OSEXT_LAYER_DOMAIN_EXPORT_PATH) {
- return (/epoc32/include/domain/osextensions/$$1)
+ return ($${epocroot_prefix}epoc32/include/domain/osextensions/$$1)
}
defineReplace(OS_LAYER_PLATFORM_EXPORT_PATH) {
- return (/epoc32/include/domain/osextensions/$$1)
+ return ($${epocroot_prefix}epoc32/include/domain/osextensions/$$1)
}
# ---------------------------------------
@@ -350,20 +356,20 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# the headers come from middleware or os-layer => thus they are first.
APP_LAYER_SYSTEMINCLUDE = \
- /epoc32/include \
- /epoc32/include/oem \
- /epoc32/include/middleware \
- /epoc32/include/domain/middleware \
- /epoc32/include/osextensions \
- /epoc32/include/domain/osextensions \
- /epoc32/include/applications \
- /epoc32/include/domain/applications \
- /epoc32/include/domain/osextensions/loc \
- /epoc32/include/domain/middleware/loc \
- /epoc32/include/domain/applications/loc \
- /epoc32/include/domain/osextensions/loc/sc \
- /epoc32/include/domain/middleware/loc/sc \
- /epoc32/include/domain/applications/loc/sc
+ $${epocroot_prefix}epoc32/include \
+ $${epocroot_prefix}epoc32/include/oem \
+ $${epocroot_prefix}epoc32/include/middleware \
+ $${epocroot_prefix}epoc32/include/domain/middleware \
+ $${epocroot_prefix}epoc32/include/osextensions \
+ $${epocroot_prefix}epoc32/include/domain/osextensions \
+ $${epocroot_prefix}epoc32/include/applications \
+ $${epocroot_prefix}epoc32/include/domain/applications \
+ $${epocroot_prefix}epoc32/include/domain/osextensions/loc \
+ $${epocroot_prefix}epoc32/include/domain/middleware/loc \
+ $${epocroot_prefix}epoc32/include/domain/applications/loc \
+ $${epocroot_prefix}epoc32/include/domain/osextensions/loc/sc \
+ $${epocroot_prefix}epoc32/include/domain/middleware/loc/sc \
+ $${epocroot_prefix}epoc32/include/domain/applications/loc/sc
# This define statements defines the include paths, which are intended to be
# used in the pro-files that are part of the middleware-layer. It includes all
@@ -371,16 +377,16 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# middleware-layer components.
MW_LAYER_SYSTEMINCLUDE = \
- /epoc32/include \
- /epoc32/include/oem \
- /epoc32/include/middleware \
- /epoc32/include/domain/middleware \
- /epoc32/include/osextensions \
- /epoc32/include/domain/osextensions \
- /epoc32/include/domain/osextensions/loc \
- /epoc32/include/domain/middleware/loc \
- /epoc32/include/domain/osextensions/loc/sc \
- /epoc32/include/domain/middleware/loc/sc
+ $${epocroot_prefix}epoc32/include \
+ $${epocroot_prefix}epoc32/include/oem \
+ $${epocroot_prefix}epoc32/include/middleware \
+ $${epocroot_prefix}epoc32/include/domain/middleware \
+ $${epocroot_prefix}epoc32/include/osextensions \
+ $${epocroot_prefix}epoc32/include/domain/osextensions \
+ $${epocroot_prefix}epoc32/include/domain/osextensions/loc \
+ $${epocroot_prefix}epoc32/include/domain/middleware/loc \
+ $${epocroot_prefix}epoc32/include/domain/osextensions/loc/sc \
+ $${epocroot_prefix}epoc32/include/domain/middleware/loc/sc
# This define statements defines the include paths, which are intended to be
# used in the pro-files that are part of the osextensions-layer. It includes all
@@ -388,12 +394,12 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# os-layer components.
OS_LAYER_SYSTEMINCLUDE = \
- /epoc32/include \
- /epoc32/include/oem \
- /epoc32/include/osextensions \
- /epoc32/include/domain/osextensions \
- /epoc32/include/domain/osextensions/loc \
- /epoc32/include/domain/osextensions/loc/sc
+ $${epocroot_prefix}epoc32/include \
+ $${epocroot_prefix}epoc32/include/oem \
+ $${epocroot_prefix}epoc32/include/osextensions \
+ $${epocroot_prefix}epoc32/include/domain/osextensions \
+ $${epocroot_prefix}epoc32/include/domain/osextensions/loc \
+ $${epocroot_prefix}epoc32/include/domain/osextensions/loc/sc
# This define statements defines the include paths, which are intended to be
# used in the pro-files that are part of the os-layer. This is intended
@@ -402,9 +408,9 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# 2 files already contain the /epoc32/include as system include path.
OS_LAYER_KERNEL_SYSTEMINCLUDE = \
- /epoc32/include/oem \
- /epoc32/include/osextensions \
- /epoc32/include/domain/osextensions
+ $${epocroot_prefix}epoc32/include/oem \
+ $${epocroot_prefix}epoc32/include/osextensions \
+ $${epocroot_prefix}epoc32/include/domain/osextensions
# ---------------------------------------
@@ -414,41 +420,41 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
OS_LAYER_LIBC_SYSTEMINCLUDE = $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis) \
$$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/sys) \
- /epoc32/include/stdapis \
- /epoc32/include/stdapis/sys
+ $${epocroot_prefix}epoc32/include/stdapis \
+ $${epocroot_prefix}epoc32/include/stdapis/sys
OS_LAYER_GLIB_SYSTEMINCLUDE = $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/glib-2.0) \
$$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/glib-2.0/glib) \
$$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/glib-2.0/gObject) \
- /epoc32/include/stdapis/glib-2.0 \
- /epoc32/include/stdapis/glib-2.0/glib \
- /epoc32/include/stdapis/glib-2.0/gObject
+ $${epocroot_prefix}epoc32/include/stdapis/glib-2.0 \
+ $${epocroot_prefix}epoc32/include/stdapis/glib-2.0/glib \
+ $${epocroot_prefix}epoc32/include/stdapis/glib-2.0/gObject
OS_LAYER_SSL_SYSTEMINCLUDE = $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/openssl) \
- /epoc32/include/stdapis/openssl
+ $${epocroot_prefix}epoc32/include/stdapis/openssl
# stlportv5 is preferred over stlport as it has the throwing version of operator new
OS_LAYER_STDCPP_SYSTEMINCLUDE = $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/stlportv5) \
- /epoc32/include/stdapis/stlportv5
+ $${epocroot_prefix}epoc32/include/stdapis/stlportv5
exists($${EPOCROOT}epoc32/include/osextensions/stdapis/stlport) \
|exists($${EPOCROOT}epoc32/include/stdapis/stlport) {
!exists($${EPOCROOT}epoc32/include/osextensions/stdapis/stlportv5) \
:!exists($${EPOCROOT}epoc32/include/stdapis/stlportv5) {
OS_LAYER_STDCPP_SYSTEMINCLUDE = $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/stlport) \
- /epoc32/include/stdapis/stlport
+ $${epocroot_prefix}epoc32/include/stdapis/stlport
}
}
OS_LAYER_BOOST_SYSTEMINCLUDE = $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/boost) \
- /epoc32/include/stdapis/boost
+ $${epocroot_prefix}epoc32/include/stdapis/boost
OS_LAYER_DBUS_SYSTEMINCLUDE = $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/dbus-1.0) \
$$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/dbus-1.0/dbus) \
- /epoc32/include/stdapis/dbus-1.0 \
- /epoc32/include/stdapis/dbus-1.0/dbus
+ $${epocroot_prefix}epoc32/include/stdapis/dbus-1.0 \
+ $${epocroot_prefix}epoc32/include/stdapis/dbus-1.0/dbus
OS_LAYER_LIBUTILITY_SYSTEMINCLUDE = $$OS_LAYER_PLATFORM_EXPORT_PATH(stdapis/utility) \
- /epoc32/include/stdapis/utility
+ $${epocroot_prefix}epoc32/include/stdapis/utility
# ---------------------------------------
# Definitions to export IBY files to different folders where they will be taken
@@ -456,19 +462,19 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
# ---------------------------------------
defineReplace(CORE_APP_LAYER_IBY_EXPORT_PATH) {
- return(/epoc32/rom/include/core/app/$$1)
+ return($${epocroot_prefix}epoc32/rom/include/core/app/$$1)
}
defineReplace(CORE_MW_LAYER_IBY_EXPORT_PATH) {
- return(/epoc32/rom/include/core/mw/$$1)
+ return($${epocroot_prefix}epoc32/rom/include/core/mw/$$1)
}
defineReplace(CORE_OSEXT_LAYER_IBY_EXPORT_PATH) {
- return(/epoc32/rom/include/core/osext/$$1)
+ return($${epocroot_prefix}epoc32/rom/include/core/osext/$$1)
}
defineReplace(CORE_OS_LAYER_IBY_EXPORT_PATH) {
- return(/epoc32/rom/include/core/osext/$$1)
+ return($${epocroot_prefix}epoc32/rom/include/core/osext/$$1)
}
defineReplace(CORE_ADAPT_LAYER_IBY_EXPORT_PATH) {
- return(/epoc32/rom/include/$$1)
+ return($${epocroot_prefix}epoc32/rom/include/$$1)
}
# You need to define the following in pro-file, if you are using the stllib:
@@ -480,5 +486,4 @@ exists($${EPOCROOT}epoc32/include/platform_paths.prf) {
}
}
-
-
+epocroot_prefix =
diff --git a/mkspecs/features/symbian/qt.prf b/mkspecs/features/symbian/qt.prf
index 02b3003..99f5ece 100644
--- a/mkspecs/features/symbian/qt.prf
+++ b/mkspecs/features/symbian/qt.prf
@@ -39,117 +39,3 @@ contains(CONFIG, qt):!contains(TARGET.UID3, 0x2001E61C):!contains(TARGET.UID3, 0
isEmpty(TARGET.EPOCSTACKSIZE):TARGET.EPOCSTACKSIZE = 0x14000
isEmpty(TARGET.EPOCHEAPSIZE):TARGET.EPOCHEAPSIZE = 0x020000 0x800000
-
-# Sis file creation
-make_cache_name = .make.cache
-!symbian-abld:!symbian-sbsv2 {
- fixedDestdir = $$DESTDIR
- !isEmpty(fixedDestdir):!contains(fixedDestdir, "[/\\]$"):fixedDestdir = $${fixedDestdir}/
- contains(QMAKE_HOST.os, "Windows"):fixedDestdir = $$replace(fixedDestdir, "/", "\\")
-} else {
- fixedDestdir =
-}
-
-sis_target.target = sis
-sis_target.commands = $(if $(wildcard $$basename(TARGET)_template.pkg), \
- $(if $(wildcard $$make_cache_name), \
- $(MAKE) -f $(MAKEFILE) ok_sis MAKEFILES=$$make_cache_name \
- , \
- $(if $(QT_SIS_TARGET), \
- $(MAKE) -f $(MAKEFILE) ok_sis \
- , \
- $(MAKE) -f $(MAKEFILE) fail_sis_nocache \
- ) \
- ) \
- , \
- $(MAKE) -f $(MAKEFILE) fail_sis_nopkg \
- )
-
-ok_sis_target.target = ok_sis
-ok_sis_target.commands = createpackage.bat $(QT_SIS_OPTIONS) $$basename(TARGET)_template.pkg \
- $(QT_SIS_TARGET) $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
-
-target_sis_target.target = $${fixedDestdir}$${TARGET}.sis
-target_sis_target.commands = $(MAKE) -f $(MAKEFILE) sis
-
-installer_sis_target.target = installer_sis
-installer_sis_target.commands = $(if $(wildcard $$basename(TARGET)_installer.pkg), \
- $(MAKE) -f $(MAKEFILE) ok_installer_sis \
- , \
- $(MAKE) -f $(MAKEFILE) fail_sis_nopkg \
- )
-installer_sis_target.depends = $${fixedDestdir}$${TARGET}.sis
-
-ok_installer_sis_target.target = ok_installer_sis
-ok_installer_sis_target.commands = createpackage.bat $(QT_SIS_OPTIONS) $$basename(TARGET)_installer.pkg - \
- $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
-
-fail_sis_nopkg_target.target = fail_sis_nopkg
-fail_sis_nopkg_target.commands = "$(error PKG file does not exist, 'sis' and 'installer_sis' target are only supported for executables or projects with DEPLOYMENT statement)"
-
-fail_sis_nocache_target.target = fail_sis_nocache
-fail_sis_nocache_target.commands = "$(error Project has to be built or QT_SIS_TARGET environment variable has to be set before calling 'SIS' target)"
-
-symbian-abld|symbian-sbsv2 {
- # Only enable stub_sis files for the abld/sbsv2 build systems for now, since we don't
- # support ROM builds for any other Symbian build system.
- stub_sis_target.target = stub_sis
- stub_sis_target.commands = $(if $(wildcard $$basename(TARGET)_template.pkg), \
- $(if $(wildcard $$make_cache_name), \
- $(MAKE) -f $(MAKEFILE) ok_stub_sis MAKEFILES=$$make_cache_name \
- , \
- $(if $(QT_SIS_TARGET), \
- $(MAKE) -f $(MAKEFILE) ok_stub_sis \
- , \
- $(MAKE) -f $(MAKEFILE) fail_sis_nocache \
- ) \
- ) \
- , \
- $(MAKE) -f $(MAKEFILE) fail_sis_nopkg \
- )
-
- ok_stub_sis_target.target = ok_stub_sis
- ok_stub_sis_target.commands = createpackage.bat -s $(QT_SIS_OPTIONS) $$basename(TARGET)_template.pkg \
- $(QT_SIS_TARGET) $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
-
- QMAKE_EXTRA_TARGETS += stub_sis_target \
- ok_stub_sis_target
-} else {
- # DESTDIR is not honored on abld and sbsv2
- !isEmpty(DESTDIR) {
- ok_sis_target.commands += && $$QMAKE_MOVE $$basename(TARGET).sis $$DESTDIR
- ok_installer_sis_target.commands += && $$QMAKE_MOVE $$basename(TARGET).sis $$DESTDIR
- }
-}
-
-QMAKE_EXTRA_TARGETS += sis_target \
- ok_sis_target \
- target_sis_target \
- installer_sis_target \
- ok_installer_sis_target \
- fail_sis_nopkg_target \
- fail_sis_nocache_target
-
-# Sbsv2 has its own store_build target which is using flms.
-!symbian-sbsv2 {
- contains(QMAKE_HOST.os, "Windows") {
- shellFixedHash = $${LITERAL_HASH}
- } else {
- shellFixedHash = \\$${LITERAL_HASH}
- }
- store_build_target.target = store_build
- store_build_target.commands = \
- @echo $${shellFixedHash} ============================================================================== > $$make_cache_name \
- && echo $${shellFixedHash} This file is generated by make and should not be modified by the user >> $$make_cache_name \
- && echo $${shellFixedHash} Name : $$make_cache_name >> $$make_cache_name \
- && echo $${shellFixedHash} Part of : lineedits >> $$make_cache_name \
- && echo $${shellFixedHash} Description : This file is used to cache last build target for >> $$make_cache_name \
- && echo $${shellFixedHash} make sis target. >> $$make_cache_name \
- && echo $${shellFixedHash} Version : >> $$make_cache_name \
- && echo $${shellFixedHash} >> $$make_cache_name \
- && echo $${shellFixedHash} ============================================================================== >> $$make_cache_name \
- && echo. >> $$make_cache_name \
- && echo QT_SIS_TARGET ?= $(QT_SIS_TARGET) >> $$make_cache_name
-
- QMAKE_EXTRA_TARGETS += store_build_target
-}
diff --git a/mkspecs/features/symbian/release.prf b/mkspecs/features/symbian/release.prf
new file mode 100644
index 0000000..abfa3ac
--- /dev/null
+++ b/mkspecs/features/symbian/release.prf
@@ -0,0 +1 @@
+QMAKE_LIBDIR_QT += $${EPOCROOT}epoc32/release/armv5/urel
diff --git a/mkspecs/features/symbian/thread.prf b/mkspecs/features/symbian/thread.prf
new file mode 100644
index 0000000..885438a
--- /dev/null
+++ b/mkspecs/features/symbian/thread.prf
@@ -0,0 +1,2 @@
+# Symbian behaves like POSIX when it comes to threads.
+include(../unix/thread.prf)