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