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