2e6c7a794c145e13c58a78c9403eef72b66a0047
[scm/meta/obs.git] / Tizen:Common / _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:Common
5 #
6 # RE contacts:
7 # Maciej Wereski <m.wereski@partner.samsung.com>
8 # Pawel Wieczorek <p.wieczorek2@samsung.com>
9 #
10 # Git mirror for OBS config: review.tizen.org:scm/meta/build-config / branch tizen_common
11 #
12 # vim: set syntax=spec:
13 ################################################################################
14
15 Patterntype: rpm-md comps
16 Release: <CI_CNT>.<B_CNT>
17 Support: build
18 Support: build-compare build-mkbaselibs
19 Support: rpmlint-mini rpmlint-tizen
20
21 ############################# conflicts resolution #############################
22
23 FileProvides: /usr/sbin/groupadd shadow-utils
24 Prefer: util-linux
25 Prefer: libtapi-devel
26 Prefer: libpci-devel
27 Prefer: bluetooth-tools-no-firmware
28
29 Prefer: vconf-buxton
30 Prefer: vconf-buxton-devel
31 Prefer: vconf-buxton-keys-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 ########## RDP flag ##########
62
63 # enable/disable RDP (remote desktop protocol) for wayland
64 # flag: _with_rdp, used in repositories
65 # Affects: weston, freerdp
66 # Owner: Manuel <manuel.bachmann@open.eurogiciel.org>
67
68 ########## mesa activation ##########
69
70 %define _with_mesa 1
71 Macros:
72 %_with_mesa 1
73 :Macros
74
75 Substitute: mesa-devel pkgconfig(glesv2)
76 #FIXME Substitute: pkgconfig(egl)
77
78 ############################# wayland repositories #############################
79
80 %if "%_repository" == "arm-wayland" || "%_repository" == "arm64-wayland" || "%_repository" == "ia32-wayland" || "%_repository" == "x86_64-wayland"
81
82 Prefer: coregl coregl-devel
83 Prefer: libwayland-egl libwayland-egl-devel
84 Prefer: mesa libgbm
85 Substitute: mesa-libGLESv2 coregl
86 Substitute: mesa-libEGL coregl
87
88 Substitute: pkgconfig(gles20)  pkgconfig(egl) pkgconfig(glesv2)
89 Substitute: pkgconfig(gles11)  pkgconfig(egl) pkgconfig(glesv1) pkgconfig(gl)
90
91 %define _with_wayland 1
92 %define _with_rdp 1
93
94 Macros:
95 %_with_wayland 1
96 %_with_rdp 1
97 :Macros
98
99 %endif
100
101 ############################# emulator repositories ############################
102
103 %if "%_repository" == "emulator32-wayland"
104
105 Substitute: mesa-devel pkgconfig(glesv2)
106
107 Prefer: libgbm
108 Prefer: coregl coregl-devel
109 Prefer: emulator-yagl emulator-yagl-devel
110 Prefer: libwayland-egl libwayland-egl-devel
111
112 Substitute: pkgconfig(gles20)  pkgconfig(egl) pkgconfig(glesv2)
113 Substitute: pkgconfig(gles11)  pkgconfig(egl) pkgconfig(glesv1) pkgconfig(gl)
114
115 %define _with_wayland 1
116 %define _with_emulator 1
117
118 Macros:
119 %_with_wayland 1
120 %_with_emulator 1
121 :Macros
122
123 %endif
124
125
126 ############################# misc config flags ################################
127
128 ########## USAGE ##########
129 #
130 # IMPORTANT: please follow the following rules when playing with flags
131 # ********************************************************************
132 #
133 # In spec file, call %bcond_with macro at the beginning and test with %with:
134 # -------------------------
135 # | %bcond_with myfeature
136 # | [...]
137 # | %if %{with myfeature}
138 # | [...]
139 # | %endif
140 # | [...]
141 # -------------------------
142 #
143 # To activate an option, use:
144 # -------------------------
145 # | %define _with_myfeature 1
146 # | Macros:
147 # | %_with_myfeature 1
148 # | :Macros
149 # -------------------------
150 #
151 # To disable an option, DON'T set the values to 0, as the option would still be defined
152 # but simply comment the lines: this will undefine the option.
153 # -------------------------
154 # | #%define _with_myfeature 1
155 # | #Macros:
156 # | #%_with_myfeature 1
157 # | #:Macros
158 # -------------------------
159 #
160 # More information here:
161 # https://en.opensuse.org/openSUSE:Build_Service_prjconf#.25bcond
162 #
163
164 ########## flags ##########
165
166 # This build macro controls the libdlog output. If enabled,
167 # libdlog writes to Systemd Journal. If disabled, libdlog writes to kernel Android
168 # logger FIFO. Affects: dlog.
169 # Owner: Mikko <mikko.ylinen@intel.com>
170 Macros:
171 %_with_dlog_to_systemd_journal 1
172 :Macros
173
174 # Macro used to handle bluetooth popups without syspopup/bt-syspopup which needs OSP .
175 # In IVI, this macro permits to address bluetooth notifications (using C API) to notification-service daemon.
176 # Then homescreen is supposed to deal with those notifications and display relevant popups.
177 # Affects: bluetooth-frwk
178 # Owner: Corentin Lecouvey <corentin.lecouvey@open.eurogiciel.org>
179 Macros:
180 %_with_bluetooth_frwk_libnotification 1
181 :Macros
182
183 # Macro used for testing gstreamer 1.X API
184 # Used: qt*
185 # Owner: Philippe Coval <philippe.coval@open.eurogiciel.org>
186 %define _with_gstreamer1 1
187 Macros:
188 %_with_gstreamer1 1
189 :Macros
190
191 # Macro used for testing libva availability
192 # Used: weston
193 # Owner: Philippe Coval <philippe.coval@open.eurogiciel.org>
194 %ifarch x86_64 i586
195 %define _with_libva 1
196 Macros:
197 %_with_libva 1
198 :Macros
199 %endif
200
201 # Macro used for testing Input methods
202 # Used: qt*
203 # Owner: Philippe Coval <philippe.coval@open.eurogiciel.org>
204 #%define _with_tizenscim 1
205 #Macros:
206 #%_with_tizenscim 1
207 #:Macros
208
209 # This build macro controls whether the OS uses
210 # legacy nfc-manager or neard enabled nfc-manager-neard. If enabled,
211 # nfc-manager-neard is used. Affects: nfc CAPI, emulator-plugin-nfc
212 # Owner: Arron Wang <arron.wang@intel.com>
213 Macros:
214 %_with_neard_nfc 1
215 :Macros
216
217 # Uses mobile-specific Samsung patches for PulseAudio. Tizen Mobile needs
218 # this -> Tizen Mobile is compiled with this option.
219 # Owner: Ismo Puustinen <ismo.puustinen@intel.com>
220 # FIXME: Why this extra define in the obs config ?
221 %define _with_pulseaudio_samsung_policy 1
222 Macros:
223 %_with_pulseaudio_samsung_policy 1
224 :Macros
225
226 # Activate introspection
227 # This is needed on GuPNP to build Rygel correctly in IVI
228 # Impacts potentially packages that use gobject-introspection
229 # Owner: Mikko <mikko.ylinen@intel.com>
230 Macros:
231 %_with_introspection 1
232 :Macros
233
234 # Activate KDBUS
235 # This configuration flag enables the support of KDBUS
236 # Used: platform/upstream/setup
237 # Owner: Stephane Desneux <stephane.desneux@open.eurogiciel.org>
238 #%define _with_kdbus 1
239 #Macros:
240 #%_with_kdbus 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 aarch64
271 Hostarch: x86_64
272 # cross build support for the build hosts
273 Preinstall: qemu-linux-user-cross
274 Runscripts: qemu-linux-user-cross
275 Keep: qemu-linux-user-cross
276 %endif
277
278 %ifarch armv7l
279 Preinstall: qemu-accel-armv7l
280 Runscripts: qemu-accel-armv7l
281 Preinstall: libmount libblkid libuuid
282 %endif
283
284 %ifarch aarch64
285 Preinstall: qemu-accel-aarch64
286 Runscripts: qemu-accel-aarch64
287 Preinstall: libmount libblkid libuuid
288 %endif # aarch64
289
290 ########## exports for different architectures ##########
291
292 ExportFilter: \.armv7l\.rpm$ armv7l
293 ExportFilter: \.aarch64\.rpm$ aarch64
294 ExportFilter: \.x86_64\.rpm$ x86_64
295
296 ########## buildroot config ##########
297
298 Preinstall: setup filesystem
299 RunScripts: setup
300
301 Preinstall: bash bzip2 coreutils diffutils grep rpm
302 Preinstall: glibc libacl libattr
303 Preinstall: libcap
304 Preinstall: libgcc
305 Preinstall: libpopt sed tar zlib
306 Preinstall: libncurses libreadline
307 Preinstall: libelf libbz2
308 Preinstall: liblzma
309 Preinstall: nss nspr libfreebl3 libsoftokn3
310 Preinstall: libmagic
311 Preinstall: liblua
312 Preinstall: smack libsmack libxml2 libmagic  libmagic-data
313 Preinstall: libsqlite
314 Preinstall: util-linux
315
316 VMinstall: perl libmount libblkid libext2fs libuuid  grep libpcre util-linux libsmartcols
317
318
319 Required: binutils gcc glibc rpm-build libtool
320 Required: gcc-c++
321
322 Support: glibc-locale
323 Support: perl
324 Support: hostname
325 Support: cpio findutils
326 Support: file findutils zlib bzip2
327 Support: gzip hostname net-tools
328 Support: make  patch sed  gawk tar grep coreutils pkg-config
329 Support: m4  tzdata
330 Support: util-linux
331 Support: less
332 Support: which  elfutils
333 Support: update-alternatives
334 Support: libstdc++-devel
335 Support: cpp
336 Support: libatomic
337 Support: libgomp
338 Support: libitm
339
340 Keep: libstdc++-devel
341 Keep: cpp gcc libstdc++
342 Keep: pam
343 Keep: binutils cpp  libmagic-data file findutils gawk gcc  gcc-c++
344 Keep: gdbm gzip libada libunwind  glibc-devel libpcre xz-lzma-compat
345 Keep: make  gmp libcap groff cpio
346 Keep: patch rpm-build  nss nspr elfutils python grep libgcc gcc-c++
347 Keep: kernel-headers  perl-libs perl
348 Keep: pkgconfig glib2 tizen-rpm-config
349 Keep: libmpc libmpfr libppl libgmp libppl_c
350 Keep: libcloog libppl libgmpxx
351 Keep: nss-softokn-freebl libmagic libmagic-data
352 Keep: setup
353 Keep: update-alternatives
354 Keep: cpp
355 Keep: gcc-c++
356 Keep: libatomic
357 Keep: libgomp
358 Keep: libitm
359
360 Substitute: gettext gettext-tools
361
362 %ifarch x86_64
363 Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit
364 Substitute: libgcc_s1-32bit libgcc-32bit
365 %else
366 Substitute: glibc-devel-32bit
367 %endif
368
369 ########## compilation flags ##########
370 # derived from Tizen:Base
371 #######################################