Tizen:Mobile/TV: Add dbuspolicy value
[scm/meta/obs.git] / Tizen:Mobile / _config
1 Substitute: python-accel-armv7l-cross-arm python-accel-armv7l
2 Substitute: python-accel-aarch64-cross-aarch64 python-accel-aarch64
3 ################################################################################
4 # OBS Project config for Tizen:Mobile
5 #
6 # RE contacts:
7 # Joonsub Lee <joon-sub.lee@samsung.com>
8 #
9 # vim: set syntax=spec:
10 ################################################################################
11
12 Patterntype: rpm-md comps
13 Release: <CI_CNT>.<B_CNT>
14 Support: build
15 Support: build-compare build-mkbaselibs
16 Support: rpmlint-mini rpmlint-tizen
17
18 ############################# conflicts resolution #############################
19
20 FileProvides: /usr/sbin/groupadd pwdutils
21 Prefer: util-linux
22 Prefer: libtapi-devel
23 Prefer: libpci-devel
24
25 ############################# profile definition ###############################
26
27 %define profile mobile
28 %define _with_tizen 1
29
30 # For classifying debug/release mode
31 Macros:
32 %tizen_build_devel_mode 1
33 :Macros
34
35 # %release_name and %tizen_full_version are used in platform/upstream/tizen-release
36
37 Macros:
38 %profile mobile
39 %release_name Tizen3/Mobile
40
41 %tizen_version_major 3
42 %tizen_version_minor 0
43 %tizen_version_patch 0
44
45 %tizen_version %{tizen_version_major}.%{tizen_version_minor}
46 %tizen_full_version %{tizen_version}.%{tizen_version_patch}
47 %tizen %tizen_version
48 %vendor tizen
49 %_vendor tizen
50 %_with_tizen 1
51
52 %check exit 0
53 %run_check_section 0
54 %opensuse_bs 1
55 %_default_patch_fuzz   2
56 :Macros
57
58 ############################# display system ###################################
59
60 ########## display system selection ##########
61
62 # selection of the display system
63 # this selection is done for each repository
64 #
65 # flags combinations:
66 # |----------------------------------------------------
67 # | wayland |  x  | meaning
68 # |----------------------------------------------------
69 # |         |  1  | pure X11 platform(no wayland)
70 # |   1     |     | pure wayland platform (no X11)
71 # |   1     |  1  | wayland but X compatibility
72 # |         |     | no X and no wayland
73 # |----------------------------------------------------
74 #
75 # Owner: Stephane <stephane.desneux@open.eurogiciel.org>
76
77 ########## RDP flag ##########
78
79 # enable/disable RDP (remote desktop protocol) for wayland
80 # flag: _with_rdp, used in repositories
81 # Affects: weston, freerdp
82 # Owner: Manuel <manuel.bachmann@open.eurogiciel.org>
83
84 ########## mesa activation ##########
85
86 %define _with_mesa 1
87 Macros:
88 %_with_mesa 1
89 :Macros
90
91 %ifarch %arm armv7l aarch64
92    Substitute: mesa-devel pkgconfig(glesv2)
93    #FIXME Substitute: pkgconfig(egl)
94 %endif
95
96 ########## coregl ##########
97 %ifarch %arm aarch64
98 Prefer: coregl coregl-devel
99 Prefer: libwayland-egl libwayland-egl-devel
100 Substitute: mesa-libGLESv2 coregl
101 Substitute: mesa-libEGL coregl
102 %endif
103
104 ###################### Activate KDBUS ######################
105 # This configuration flag enables the support of KDBUS
106
107 #%if "%_repository" == "arm64-wayland"
108
109 #%define _with_kdbus 1
110
111 #Macros:
112 #%_with_kdbus 1
113 #:Macros
114
115 #%endif
116
117 ###################### Activate Dbus Policy ######################      
118
119 # Owner : hyotaek.shim@samsung.com
120 # This configuration flag enables the support of Cynara-based Dbus Policy
121 %if "%_repository" == "target-TM1"
122
123 %define _with_dbuspolicy 1
124
125 Macros:
126 %_with_dbuspolicy 1
127 :Macros
128
129 %endif
130
131 ############################# wayland repositories #############################
132
133 %if "%_repository" == "atom-wayland" || "%_repository" == "x86_64-wayland" || "%_repository" == "arm-wayland" || "%_repository" == "arm64-wayland" || "%_repository" == "target-TM1"
134
135 Substitute: pkgconfig(gles20)  pkgconfig(egl) pkgconfig(glesv2)
136 Substitute: pkgconfig(gles11)  pkgconfig(egl) pkgconfig(glesv1) pkgconfig(gl)
137
138 %define _with_wayland 1
139 %define _with_rdp 1
140
141 Macros:
142 %_with_wayland 1
143 %_with_rdp 1
144 :Macros
145
146 %endif
147
148 ############################# emulator repositories ############################
149
150 %if "%_repository" == "emulator32-wayland" || "%_repository" == "emulator64-wayland"
151
152 Substitute: mesa-devel pkgconfig(glesv2)
153
154 Substitute: pkgconfig(gles20)  pkgconfig(egl) pkgconfig(glesv2)
155 Substitute: pkgconfig(gles11)  pkgconfig(egl) pkgconfig(glesv1) pkgconfig(gl)
156
157 Prefer: libgbm
158 Prefer: coregl coregl-devel
159 Prefer: emulator-yagl emulator-yagl-devel
160
161 %define _with_wayland 1
162 %define _with_emulator 1
163
164 Macros:
165 %_with_wayland 1
166 %_with_emulator 1
167 :Macros
168
169 %endif
170
171 %if "%_repository" == "target-TM1"
172
173 Macros:
174 %tizen_target_name TM1
175 :Macros
176
177 %endif
178
179 ############################# misc config flags ################################
180
181 # This build macro controls the libdlog output. If enabled,
182 # libdlog writes to Systemd Journal. If disabled, libdlog writes to kernel Android
183 # logger FIFO. Affects: dlog.
184 # Owner: Mikko <mikko.ylinen@intel.com>
185 Macros:
186 %_with_dlog_to_systemd_journal 1
187 :Macros
188
189 # Macro used to handle bluetooth popups without syspopup/bt-syspopup which needs OSP .
190 # In IVI, this macro permits to address bluetooth notifications (using C API) to notification-service daemon.
191 # Then homescreen is supposed to deal with those notifications and display relevant popups.
192 # Affects: bluetooth-frwk
193 # Owner: Corentin Lecouvey <corentin.lecouvey@open.eurogiciel.org>
194 Macros:
195 %_with_bluetooth_frwk_libnotification 1
196 :Macros
197
198 # This build macro controls whether the OS uses
199 # legacy nfc-manager or neard enabled nfc-manager-neard. If enabled,
200 # nfc-manager-neard is used. Affects: nfc CAPI, emulator-plugin-nfc
201 # Owner: Arron Wang <arron.wang@intel.com>
202 Macros:
203 %_with_neard_nfc 1
204 :Macros
205
206 # Uses mobile-specific Samsung patches for PulseAudio. Tizen Mobile needs
207 # this -> Tizen Mobile is compiled with this option.
208 # Owner: Ismo Puustinen <ismo.puustinen@intel.com>
209 # FIXME: Why this extra define in the obs config ?
210 %define _with_pulseaudio_samsung_policy 1
211 Macros:
212 %_with_pulseaudio_samsung_policy 1
213 :Macros
214
215 # Activate introspection
216 # This is needed on GuPNP to build Rygel correctly in IVI
217 # Impacts potentially packages that use gobject-introspection
218 # Owner: Mikko <mikko.ylinen@intel.com>
219 Macros:
220 %_with_introspection 1
221 :Macros
222
223 ############################# build config #####################################
224
225 %define gcc_version 49
226 Macros:
227 %gcc_version 49
228 :Macros
229
230 ########## targets ##########
231
232 %ifarch i586
233 Target: i686-tizen-linux
234 %endif
235
236 %ifarch armv7hl
237 Target: armv7hl-tizen-linux
238 %endif
239
240 %ifarch armv7l
241 Target: armv7l-tizen-linux
242 %endif
243
244 %ifarch aarch64
245 Target: aarch64-tizen-linux
246 %endif
247
248 ########## cross build ##########
249
250 %ifarch %arm armv7l aarch64
251 Hostarch: x86_64
252 # cross build support for the build hosts
253 Preinstall: qemu-linux-user-cross
254 Runscripts: qemu-linux-user-cross
255 Keep: qemu-linux-user-cross
256 %endif
257
258 %ifarch armv7l
259 Preinstall: qemu-accel-armv7l
260 Runscripts: qemu-accel-armv7l
261 Preinstall: libmount libblkid libuuid
262 %endif
263
264 %ifarch aarch64
265 Preinstall: qemu-accel-aarch64
266 Runscripts: qemu-accel-aarch64
267 Preinstall: libmount libblkid libuuid
268 %endif # aarch64
269
270 ########## exports for different architectures ##########
271
272 ExportFilter: \.armv7l\.rpm$ armv7l
273 ExportFilter: \.aarch64\.rpm$ aarch64
274 ExportFilter: \.x86_64\.rpm$ x86_64
275
276 ########## buildroot config ##########
277
278 Preinstall: setup filesystem
279 RunScripts: setup
280
281 Preinstall: bash bzip2 coreutils diffutils grep rpm
282 Preinstall: glibc libacl libattr
283 Preinstall: libcap
284 Preinstall: libgcc
285 Preinstall: libpopt sed tar zlib
286 Preinstall: libncurses libreadline
287 Preinstall: libelf libbz2
288 Preinstall: liblzma
289 Preinstall: nss nspr libfreebl3 libsoftokn3
290 Preinstall: libmagic
291 Preinstall: liblua
292 Preinstall: smack libsmack libxml2 libmagic  libmagic-data
293 Preinstall: libsqlite
294 #Preinstall: rpm-security-plugin
295 Preinstall: util-linux
296
297 VMinstall: perl libmount libblkid libext2fs libuuid  grep libpcre util-linux libsmartcols
298
299 Required: binutils gcc glibc rpm-build libtool
300 Required: gcc-c++
301
302 Support: glibc-locale
303 Support: perl
304 Support: hostname
305 Support: cpio findutils
306 Support: file findutils zlib bzip2
307 Support: gzip hostname net-tools
308 Support: make  patch sed  gawk tar grep coreutils pkg-config
309 Support: m4  tzdata
310 Support: util-linux
311 Support: less
312 Support: which  elfutils
313 Support: update-alternatives
314 Support: libstdc++-devel
315 Support: cpp
316 Support: libatomic
317 Support: libgomp
318 Support: libitm
319
320 Keep: libstdc++-devel
321 Keep: cpp gcc libstdc++
322 Keep: pam
323 Keep: binutils cpp  libmagic-data file findutils gawk gcc  gcc-c++
324 Keep: gdbm gzip libada libunwind  glibc-devel libpcre xz-lzma-compat
325 Keep: make  gmp libcap groff cpio
326 Keep: patch rpm-build  nss nspr elfutils python grep libgcc gcc-c++
327 Keep: kernel-headers  perl-libs perl
328 Keep: pkgconfig glib2 tizen-rpm-config
329 Keep: libmpc libmpfr libppl libgmp libppl_c
330 Keep: libcloog libppl libgmpxx
331 Keep: nss-softokn-freebl libmagic libmagic-data
332 Keep: setup
333 Keep: update-alternatives
334 Keep: cpp
335 Keep: gcc-c++
336 Keep: libatomic
337 Keep: libgomp
338 Keep: libitm
339
340 Substitute: gettext gettext-tools
341
342 %ifarch x86_64
343 Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit
344 Substitute: libgcc_s1-32bit libgcc-32bit
345 %else
346 Substitute: glibc-devel-32bit
347 %endif
348
349 ########## compilation flags ##########
350 Optflags: armv7l -O2 -g2 -feliminate-unused-debug-types -pipe -Wall  -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector  --param=ssp-buffer-size=32 -Wformat -Wformat-security -fmessage-length=0 -march=armv7-a -mtune=cortex-a8 -mlittle-endian  -mfpu=neon -mfloat-abi=softfp -Wp,-D__SOFTFP__
351 Optflags: aarch64 -O2 -g2 -feliminate-unused-debug-types -pipe -Wall  -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector  -Wformat -Wformat-security -fmessage-length=0 -march=armv8-a+fp+simd+crc+crypto -mtune=cortex-a57.cortex-a53
352 Optflags: i686 -O2 -g2 -feliminate-unused-debug-types -pipe -Wall  -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector  --param=ssp-buffer-size=32 -Wformat -Wformat-security -fmessage-length=0 -m32 -march=i686 -mtune=i686 -msse4.2 -mfpmath=sse -fasynchronous-unwind-tables -fno-omit-frame-pointer
353 Optflags: x86_64 -O2 -g2 -feliminate-unused-debug-types -pipe -Wall  -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector  --param=ssp-buffer-size=32 -Wformat -Wformat-security -fmessage-length=0 -m64 -march=corei7 -msse4.2  -mtune=corei7-avx -mfpmath=sse -fasynchronous-unwind-tables -fno-omit-frame-pointer  -fipa-cp-clone