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