0
|
1 |
#
|
|
2 |
# qmake configuration for symbian-*
|
|
3 |
#
|
|
4 |
|
|
5 |
TEMPLATE = app
|
|
6 |
CONFIG += qt warn_on release incremental
|
|
7 |
QT += core gui
|
|
8 |
QMAKE_INCREMENTAL_STYLE = sublib
|
|
9 |
|
|
10 |
DEFINES += UNICODE QT_KEYPAD_NAVIGATION QT_SOFTKEYS_ENABLED
|
|
11 |
QMAKE_COMPILER_DEFINES += SYMBIAN
|
|
12 |
|
|
13 |
QMAKE_EXT_OBJ = .o
|
|
14 |
QMAKE_EXT_RES = _res.o
|
|
15 |
|
|
16 |
QMAKE_CC = gcc
|
|
17 |
QMAKE_LEX = flex
|
|
18 |
QMAKE_LEXFLAGS =
|
|
19 |
QMAKE_YACC = byacc
|
|
20 |
QMAKE_YACCFLAGS = -d
|
|
21 |
QMAKE_CFLAGS =
|
|
22 |
QMAKE_CFLAGS_DEPS =
|
|
23 |
QMAKE_CFLAGS_WARN_ON =
|
|
24 |
QMAKE_CFLAGS_WARN_OFF =
|
|
25 |
QMAKE_CFLAGS_RELEASE =
|
|
26 |
QMAKE_CFLAGS_DEBUG =
|
|
27 |
QMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses
|
|
28 |
|
|
29 |
QMAKE_CXX = g++
|
|
30 |
QMAKE_CXXFLAGS = $$QMAKE_CFLAGS
|
|
31 |
QMAKE_CXXFLAGS.CW =
|
|
32 |
QMAKE_CXXFLAGS.ARMCC = --visibility_inlines_hidden
|
|
33 |
QMAKE_CXXFLAGS_DEPS = $$QMAKE_CFLAGS_DEPS
|
|
34 |
QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
|
|
35 |
QMAKE_CXXFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF
|
|
36 |
QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE
|
|
37 |
QMAKE_CXXFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG
|
|
38 |
QMAKE_CXXFLAGS_YACC = $$QMAKE_CFLAGS_YACC
|
|
39 |
QMAKE_CXXFLAGS_THREAD = $$QMAKE_CFLAGS_THREAD
|
|
40 |
QMAKE_CXXFLAGS_RTTI_ON =
|
|
41 |
QMAKE_CXXFLAGS_RTTI_OFF =
|
|
42 |
QMAKE_CXXFLAGS_EXCEPTIONS_ON =
|
|
43 |
QMAKE_CXXFLAGS_EXCEPTIONS_OFF =
|
|
44 |
|
|
45 |
QMAKE_INCDIR =
|
|
46 |
QMAKE_INCDIR_QT = $$[QT_INSTALL_HEADERS]
|
|
47 |
|
|
48 |
QMAKE_RUN_CC = $(CC) -c $(CFLAGS) $(INCPATH) -o $obj $src
|
|
49 |
QMAKE_RUN_CC_IMP = $(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<
|
|
50 |
QMAKE_RUN_CXX = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $obj $src
|
|
51 |
QMAKE_RUN_CXX_IMP = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
|
|
52 |
|
|
53 |
QMAKE_LINK = g++
|
|
54 |
QMAKE_LFLAGS = -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc
|
|
55 |
QMAKE_LFLAGS_EXCEPTIONS_ON = -mthreads -Wl
|
|
56 |
QMAKE_LFLAGS_EXCEPTIONS_OFF =
|
|
57 |
QMAKE_LFLAGS_RELEASE = -Wl,-s
|
|
58 |
QMAKE_LFLAGS_DEBUG =
|
|
59 |
QMAKE_LFLAGS_CONSOLE = -Wl,-subsystem,console
|
|
60 |
QMAKE_LFLAGS_WINDOWS = -Wl,-subsystem,windows
|
|
61 |
QMAKE_LFLAGS_DLL = -shared
|
|
62 |
QMAKE_LINK_OBJECT_MAX = 10
|
|
63 |
QMAKE_LINK_OBJECT_SCRIPT= object_script
|
|
64 |
|
|
65 |
QMAKE_LIBS = -llibc -llibm -leuser -llibdl -lcone -leikcore -lmediaclientaudio -leikcoctl -leiksrv -lapparc -lavkon -lefsrv -lcharconv -lws32 -lhal -lgdi -lapgrfx
|
|
66 |
QMAKE_LIBS_CORE = $$QMAKE_LIBS -llibpthread -lefsrv -lcharconv
|
|
67 |
QMAKE_LIBS_GUI = $$QMAKE_LIBS_CORE -lfbscli -lbitgdi -lhal -lgdi -lws32 -lapgrfx -lcone -leikcore -lmediaclientaudio -leikcoctl -leiksrv -lapparc
|
|
68 |
QMAKE_LIBS_NETWORK =
|
|
69 |
QMAKE_LIBS_EGL = -llibEGL
|
|
70 |
QMAKE_LIBS_OPENGL =
|
|
71 |
QMAKE_LIBS_OPENVG = -llibOpenVG -lgraphicsresource
|
|
72 |
QMAKE_LIBS_COMPAT =
|
|
73 |
QMAKE_LIBS_QT_ENTRY = -llibcrt0.lib
|
|
74 |
QMAKE_LIBS_S60 = -lavkon
|
|
75 |
|
|
76 |
!isEmpty(QMAKE_SH) {
|
|
77 |
QMAKE_COPY = cp
|
|
78 |
QMAKE_COPY_DIR = cp -r
|
|
79 |
QMAKE_MOVE = mv
|
|
80 |
QMAKE_DEL_FILE = rm -f
|
|
81 |
QMAKE_MKDIR = mkdir
|
|
82 |
QMAKE_DEL_DIR = rmdir
|
|
83 |
QMAKE_CHK_DIR_EXISTS = test -d
|
|
84 |
} else {
|
|
85 |
QMAKE_COPY = copy /y
|
|
86 |
QMAKE_COPY_DIR = xcopy /s /q /y /i
|
|
87 |
QMAKE_MOVE = move
|
|
88 |
QMAKE_DEL_FILE = del
|
|
89 |
QMAKE_MKDIR = mkdir
|
|
90 |
QMAKE_DEL_DIR = rmdir
|
|
91 |
QMAKE_CHK_DIR_EXISTS = if not exist
|
|
92 |
}
|
|
93 |
|
|
94 |
QMAKE_MOC = $${EPOCROOT}epoc32/tools/qt/moc.exe
|
|
95 |
QMAKE_UIC = $${EPOCROOT}epoc32/tools/qt/uic.exe
|
|
96 |
QMAKE_IDC = $${EPOCROOT}epoc32/tools/qt/idc.exe
|
|
97 |
|
|
98 |
QMAKE_IDL = midl
|
|
99 |
QMAKE_LIB = $${EPOCROOT}epoc32/gcc_mingw/bin/ar -ru
|
|
100 |
QMAKE_RC = $${EPOCROOT}epoc32/gcc_mingw/bin/windres
|
|
101 |
QMAKE_ZIP = zip -r -9
|
|
102 |
|
|
103 |
QMAKE_STRIP = $${EPOCROOT}epoc32/gcc_mingw/bin/strip
|
|
104 |
QMAKE_STRIPFLAGS_LIB += --strip-unneeded
|
|
105 |
|
|
106 |
load(qt_config)
|
|
107 |
load(platform_paths)
|
|
108 |
|
|
109 |
symbian-abld {
|
|
110 |
# Versions of abld prior to Symbian^3 have a bug where you cannot remove something from the command line without replacing it
|
|
111 |
# Rather than figure out which version of abld we're using, we'll replace the command with a macro *that should never be used*
|
|
112 |
MMP_RULES_DONT_EXPORT_ALL_CLASS_IMPEDIMENTA = "OPTION_REPLACE ARMCC --export_all_vtbl -D__QT_NOEFFECTMACRO_DONOTUSE"
|
|
113 |
} else {
|
|
114 |
MMP_RULES_DONT_EXPORT_ALL_CLASS_IMPEDIMENTA = "OPTION_REPLACE ARMCC --export_all_vtbl // don't use --export_all_vtbl"
|
|
115 |
}
|
|
116 |
MMP_RULES += PAGED
|
|
117 |
MMP_RULES += $$MMP_RULES_DONT_EXPORT_ALL_CLASS_IMPEDIMENTA
|
|
118 |
SYMBIAN_PLATFORMS = WINSCW GCCE ARMV5 ARMV6
|
|
119 |
|
|
120 |
# Legacy support requires some hardcoded stdapis paths.
|
|
121 |
INCLUDEPATH = \
|
|
122 |
$$[QT_INSTALL_PREFIX]/mkspecs/common/symbian/stl-off \
|
|
123 |
$$[QT_INSTALL_PREFIX]/mkspecs/common/symbian \
|
|
124 |
$${EPOCROOT}epoc32/include \
|
|
125 |
$$OS_LAYER_LIBC_SYSTEMINCLUDE \
|
|
126 |
$$INCLUDEPATH
|
|
127 |
|
|
128 |
# Supports S60 3.0, 3.1, 3.2 and 5.0 by default
|
|
129 |
default_deployment.pkg_prerules = \
|
|
130 |
"; Default HW/platform dependencies" \
|
|
131 |
"[0x101F7961],0,0,0,{\"S60ProductID\"}" \
|
|
132 |
"[0x102032BE],0,0,0,{\"S60ProductID\"}" \
|
|
133 |
"[0x102752AE],0,0,0,{\"S60ProductID\"}" \
|
|
134 |
"[0x1028315F],0,0,0,{\"S60ProductID\"}" \
|
|
135 |
" "
|
|
136 |
|
|
137 |
DEPLOYMENT += default_deployment
|
|
138 |
|
|
139 |
exists($${EPOCROOT}epoc32/release/winscw/udeb/z/system/install/Series60v5.0.sis )|exists($${EPOCROOT}epoc32/data/z/system/install/Series60v5.0.sis) {
|
|
140 |
S60_VERSION = 5.0
|
|
141 |
} else {
|
|
142 |
exists($${EPOCROOT}epoc32/release/winscw/udeb/z/system/install/Series60v3.2.sis )|exists($${EPOCROOT}epoc32/data/z/system/install/Series60v3.2.sis) {
|
|
143 |
S60_VERSION = 3.2
|
|
144 |
} else {
|
|
145 |
S60_VERSION = 3.1
|
|
146 |
MMP_RULES -= PAGED
|
|
147 |
}
|
|
148 |
}
|