|
1 # |
|
2 # Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies). |
|
3 # All rights reserved. |
|
4 # This component and the accompanying materials are made available |
|
5 # under the terms of "Eclipse Public License v1.0" |
|
6 # which accompanies this distribution, and is available |
|
7 # at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 # |
|
9 # Initial Contributors: |
|
10 # Nokia Corporation - initial contribution. |
|
11 # |
|
12 # Contributors: |
|
13 # |
|
14 # Description: |
|
15 # |
|
16 |
|
17 # This (gnu) makefile has the general project defines. Plain variable |
|
18 # definitions are usable as such in subsystem makefiles, e.g. for |
|
19 # conditionally including some subcomponent based on the variable. |
|
20 |
|
21 # All contents of variable "PROJECT_DEFINES" are added to the C/C++ |
|
22 # compilations as preprocessor macros. The PROJECT_DEFINES is also |
|
23 # usable in qmake, as conditional scope parameter. |
|
24 |
|
25 |
|
26 |
|
27 # NOTE! Unnecessary flags should be removed after the implementation has been |
|
28 # finalized. |
|
29 |
|
30 ifeq ($(BUILDENV),symbian) |
|
31 USE_INSTALLERUI = 1 |
|
32 USE_PREWARM = 1 |
|
33 #SHOW_MIDP_EXIT_FAILURE = 1 |
|
34 OPENC_BETA_PATCH = 1 |
|
35 PROJECT_DEFINES += RD_JAVA_SYMBIAN_TARGET |
|
36 endif |
|
37 |
|
38 ifeq ($(BUILDENV),linux) |
|
39 PROJECT_DEFINES += RD_JAVA_LINUX_TARGET |
|
40 endif |
|
41 |
|
42 # Determine S60 release being built |
|
43 ifeq ($(BUILDENV),symbian) |
|
44 S60_STUBSIS_DIRS = $(EPOCROOT)epoc32/release/winscw/udeb/z/system/install/ $(EPOCROOT)epoc32/data/z/system/install/ |
|
45 |
|
46 ifeq ($(RD_JAVA_S60_RELEASE),) |
|
47 # S60 release is not set, autodetermine |
|
48 ifneq ($(wildcard $(RD_JAVA_S60_RELEASE_FILE)),) |
|
49 # Use release written in file |
|
50 include $(RD_JAVA_S60_RELEASE_FILE) |
|
51 else |
|
52 ifneq ($(wildcard $(addsuffix Series60v5.2.sis,$(S60_STUBSIS_DIRS))),) |
|
53 RD_JAVA_S60_RELEASE = 9.2 |
|
54 else |
|
55 ifneq ($(wildcard $(addsuffix Series60v5.1.sis,$(S60_STUBSIS_DIRS))),) |
|
56 RD_JAVA_S60_RELEASE = 9.1 |
|
57 else |
|
58 ifneq ($(wildcard $(addsuffix Series60v5.0.sis,$(S60_STUBSIS_DIRS))),) |
|
59 RD_JAVA_S60_RELEASE = 5.0 |
|
60 else |
|
61 $(error Cannot determine S60 release, no known stub files in $(S60_STUBSIS_DIRS)) |
|
62 endif |
|
63 endif |
|
64 endif |
|
65 endif |
|
66 # Export the release info, so that no autodetermination is needed after this |
|
67 export RD_JAVA_S60_RELEASE |
|
68 endif |
|
69 |
|
70 ifeq ($(RD_JAVA_S60_RELEASE),10.1) |
|
71 RD_JAVA_S60_RELEASE_10_1 = 1 |
|
72 RD_JAVA_S60_RELEASE_10_1_ONWARDS = 1 |
|
73 RD_JAVA_S60_RELEASE_9_2_ONWARDS = 1 |
|
74 RD_JAVA_S60_RELEASE_5_0_ONWARDS = 1 |
|
75 PROJECT_DEFINES += RD_JAVA_S60_RELEASE_10_1 RD_JAVA_S60_RELEASE_10_1_ONWARDS RD_JAVA_S60_RELEASE_9_2_ONWARDS RD_JAVA_S60_RELEASE_5_0_ONWARDS |
|
76 else |
|
77 ifeq ($(RD_JAVA_S60_RELEASE),9.2) |
|
78 RD_JAVA_S60_RELEASE_9_2 = 1 |
|
79 RD_JAVA_S60_RELEASE_9_2_ONWARDS = 1 |
|
80 RD_JAVA_S60_RELEASE_5_0_ONWARDS = 1 |
|
81 PROJECT_DEFINES += RD_JAVA_S60_RELEASE_9_2 RD_JAVA_S60_RELEASE_9_2_ONWARDS RD_JAVA_S60_RELEASE_5_0_ONWARDS |
|
82 else |
|
83 ifeq ($(RD_JAVA_S60_RELEASE),5.0) |
|
84 RD_JAVA_S60_RELEASE_5_0 = 1 |
|
85 RD_JAVA_S60_RELEASE_5_0_ONWARDS = 1 |
|
86 PROJECT_DEFINES += RD_JAVA_S60_RELEASE_5_0 RD_JAVA_S60_RELEASE_5_0_ONWARDS |
|
87 else |
|
88 $(error RD_JAVA_S60_RELEASE not set) |
|
89 endif |
|
90 endif |
|
91 endif |
|
92 endif |
|
93 |
|
94 # By default use Raptor on non-5.0 builds |
|
95 ifndef RD_JAVA_S60_RELEASE_5_0 |
|
96 export USESBS = 1 |
|
97 endif |
|
98 |
|
99 ifeq ($(BUILDENV),symbian) |
|
100 ifdef RD_JAVA_S60_RELEASE_10_1 |
|
101 UI = QT |
|
102 else |
|
103 UI = AVKON |
|
104 endif |
|
105 else |
|
106 UI = QT |
|
107 endif |
|
108 |
|
109 ifeq ($(UI),QT) |
|
110 RD_JAVA_UI_QT = 1 |
|
111 PROJECT_DEFINES += RD_JAVA_UI_QT |
|
112 endif |
|
113 |
|
114 # Define IAD flags |
|
115 ifdef RD_JAVA_S60_RELEASE_5_0 |
|
116 # IAD is the default on 5.0 releases |
|
117 RD_JAVA_S60_RELEASE_5_0_IAD = 1 |
|
118 PROJECT_DEFINES += RD_JAVA_S60_RELEASE_5_0_IAD |
|
119 endif |
|
120 |
|
121 # Define stdcpp version |
|
122 ifneq ($(wildcard $(EPOCROOT)epoc32/release/armv5/urel/libstdcppv5.dll),) |
|
123 RD_JAVA_STDCPPV5 = 1 |
|
124 endif |
|
125 ifeq ($(RD_JAVA_STDCPPV5),1) |
|
126 PROJECT_DEFINES += RD_JAVA_STDCPPV5 |
|
127 endif |
|
128 |
|
129 # Workaround for 9.1 and 9.2 OpenC problem with static data on Raptor |
|
130 ifndef RD_JAVA_S60_RELEASE_5_0 |
|
131 RD_JAVA_EPOCALLOWDLLDATA_FIX = 1 |
|
132 endif |
|
133 ifdef RD_JAVA_EPOCALLOWDLLDATA_FIX |
|
134 PROJECT_DEFINES += RD_JAVA_EPOCALLOWDLLDATA_FIX |
|
135 endif |
|
136 |
|
137 # Variation for the potential CDMA support in 5.0 based devices |
|
138 ifdef RD_JAVA_S60_RELEASE_5_0 |
|
139 RD_JAVA_SUPPORT_CDMA = 1 |
|
140 endif |
|
141 ifdef RD_JAVA_SUPPORT_CDMA |
|
142 PROJECT_DEFINES += RD_JAVA_SUPPORT_CDMA |
|
143 endif |
|
144 |
|
145 # Variation for the SIDChecker library, old library used in 5.0 and 9.1 |
|
146 ifdef RD_JAVA_S60_RELEASE_5_0 |
|
147 RD_JAVA_OLD_SIDCHECKER_LIBRARY = 1 |
|
148 endif |
|
149 ifdef RD_JAVA_OLD_SIDCHECKER_LIBRARY |
|
150 PROJECT_DEFINES += RD_JAVA_OLD_SIDCHECKER_LIBRARY |
|
151 endif |
|
152 |
|
153 # HttpStreaming uses EMC API in MMAPI and AMMS if platform is 9.1 or 9.2 only(can not be used if 5.0) |
|
154 ifndef RD_JAVA_S60_RELEASE_5_0 |
|
155 RD_JAVA_HTTP_EMC_ENABLED = 1 |
|
156 endif |
|
157 ifdef RD_JAVA_HTTP_EMC_ENABLED |
|
158 PROJECT_DEFINES += RD_JAVA_HTTP_EMC_ENABLED |
|
159 endif |
|
160 |
|
161 # NGA changes, 9.2 and onwards only |
|
162 ifndef RD_JAVA_S60_RELEASE_5_0 |
|
163 RD_JAVA_NGA_ENABLED =1 |
|
164 endif |
|
165 ifdef RD_JAVA_NGA_ENABLED |
|
166 PROJECT_DEFINES += RD_JAVA_NGA_ENABLED |
|
167 endif |
|
168 |
|
169 # Uiaccelerator AlfDrawer is supported since 9.2 |
|
170 ifndef RD_JAVA_S60_RELEASE_5_0 |
|
171 ifneq ($(wildcard $(EPOCROOT)epoc32/include/platform/mw/alf/alfdrawer.h),) |
|
172 RD_JAVA_UI_ALFDRAWER_ENABLED = 1 |
|
173 endif |
|
174 endif |
|
175 ifdef RD_JAVA_UI_ALFDRAWER_ENABLED |
|
176 PROJECT_DEFINES += RD_JAVA_UI_ALFDRAWER_ENABLED |
|
177 endif |
|
178 |
|
179 # Check if USIF is supported |
|
180 ifneq ($(wildcard $(EPOCROOT:\=/)epoc32/include/mw/usif/scr/scr.h),) |
|
181 RD_JAVA_USIF_ENABLED = 1 |
|
182 endif |
|
183 |
|
184 ifdef RD_JAVA_USIF_ENABLED |
|
185 SYMBIAN_UNIVERSAL_INSTALL_FRAMEWORK = 1 |
|
186 PROJECT_DEFINES += SYMBIAN_UNIVERSAL_INSTALL_FRAMEWORK |
|
187 # Following flag enables application registrations to USIF |
|
188 # and disables application registrations to AppArc. |
|
189 PROJECT_DEFINES += RD_JAVA_USIF_APP_REG |
|
190 # Following flag enables application notifications to AppArc. |
|
191 #PROJECT_DEFINES += RD_JAVA_USIF_NOTIFY_APP_ARC |
|
192 endif |
|
193 |
|
194 # Java proximity Listener support exsist in 9.2 only(can not be used if 5.0 untill IAD dependecy mentioned) |
|
195 ifndef RD_JAVA_S60_RELEASE_5_0 |
|
196 RD_JAVA_PROXIMITY_LISTENER_ENABLED = 1 |
|
197 endif |
|
198 ifdef RD_JAVA_PROXIMITY_LISTENER_ENABLED |
|
199 PROJECT_DEFINES += RD_JAVA_PROXIMITY_LISTENER_ENABLED |
|
200 endif |
|
201 |
|
202 ifeq ($(OPENC_BETA_PATCH),1) |
|
203 PROJECT_DEFINES += RD_JAVA_OPENC_BETA_PATCH |
|
204 endif |
|
205 |
|
206 ifeq ($(S60_50_REL2),1) |
|
207 PROJECT_DEFINES += RD_JAVA_S60_50_REL2 |
|
208 endif |
|
209 |
|
210 ifeq ($(UI),QT) |
|
211 PROJECT_DEFINES += OPENLCDUI_ENABLED RD_JAVA_OPENLCDUI_ENABLED |
|
212 endif |
|
213 |
|
214 ifeq ($(COMPILE_LEGACY_UI),0) |
|
215 PROJECT_DEFINES += OPENLCDUI_ENABLED RD_JAVA_OPENLCDUI_ENABLED |
|
216 endif |
|
217 |
|
218 ifdef USE_INSTALLERUI |
|
219 PROJECT_DEFINES += RD_JAVA_INSTALLERUI_ENABLED |
|
220 endif |
|
221 |
|
222 # Enables emma instrumentation for Java code coverage measurement. |
|
223 ifdef EMMA |
|
224 ANT_EMMA_DEFINES += -Dset.emma.enabled=true |
|
225 endif |
|
226 |
|
227 #ifdef SHOW_MIDP_EXIT_FAILURE |
|
228 PROJET_DEFINES += RD_JAVA_EXIT_ERROR_DIALOG |
|
229 #endif |
|
230 |
|
231 ifdef USE_PREWARM |
|
232 PROJECT_DEFINES += RD_JAVA_PREWARM |
|
233 endif |
|
234 |
|
235 ifdef USE_INI_FILE |
|
236 PROJECT_DEFINES += RD_JAVA_INI_FILE_ACCESS_IN_USE |
|
237 endif |
|
238 |
|
239 # Enables advanced tactile feedback for Java UI |
|
240 ifdef RD_JAVA_S60_RELEASE_9_2 |
|
241 RD_JAVA_ADVANCED_TACTILE_FEEDBACK = 1 |
|
242 PROJECT_DEFINES += RD_JAVA_ADVANCED_TACTILE_FEEDBACK |
|
243 endif |
|
244 ifdef RD_JAVA_S60_RELEASE_10_1 |
|
245 RD_JAVA_ADVANCED_TACTILE_FEEDBACK = 1 |
|
246 PROJECT_DEFINES += RD_JAVA_ADVANCED_TACTILE_FEEDBACK |
|
247 endif |
|
248 |
|
249 # Skip the following targets in 10.1 build |
|
250 ifdef RD_JAVA_S60_RELEASE_10_1 |
|
251 SKIPTARGETS=pim |
|
252 endif |
|
253 |
|
254 ifdef RD_JAVA_S60_RELEASE_10_1 |
|
255 RD_JAVA_APPLICATION_SETTINGS_QT = 1 |
|
256 PROJECT_DEFINES += RD_JAVA_APPLICATION_SETTINGS_QT |
|
257 endif |
|
258 |
|
259 # selects RMS implementation (file or db) |
|
260 ifndef RD_JAVA_S60_RELEASE_5_0 |
|
261 RD_JAVA_MIDPRMS_DB = 1 |
|
262 endif |
|
263 ifdef RD_JAVA_MIDPRMS_DB |
|
264 PROJECT_DEFINES += RD_JAVA_MIDPRMS_DB |
|
265 endif |