Tizen:Mobile: re-sync from Tizen:Common
[scm/meta/obs.git] / Tizen:Mobile / _config
1 ################################################################################
2 # OBS Project config for Tizen:Mobile
3 #
4 # RE contacts:
5 # Joonsub Lee <joon-sub.lee@samsung.com>
6 #
7 # vim: set syntax=spec:
8 ################################################################################
9
10 Patterntype: rpm-md comps
11 Release: <CI_CNT>.<B_CNT>
12 Support: build
13 Support: build-compare build-mkbaselibs
14 Support: rpmlint-mini rpmlint-tizen
15
16 ############################# conflicts resolution #############################
17
18 FileProvides: /usr/sbin/groupadd pwdutils
19 Prefer: util-linux
20 Prefer: libtapi-devel
21 Prefer: libpci-devel
22
23 ############################# profile definition ###############################
24
25 %define profile mobile
26 %define _with_tizen 1
27
28 # %release_name and %tizen_full_version are used in platform/upstream/tizen-release
29
30 Macros:
31 %profile mobile
32 %release_name Tizen3/Mobile
33
34 %tizen_version_major 3
35 %tizen_version_minor 0
36 %tizen_version_patch 0
37
38 %tizen_version %{tizen_version_major}.%{tizen_version_minor}
39 %tizen_full_version %{tizen_version}.%{tizen_version_patch}
40 %tizen %tizen_version
41 %vendor tizen
42 %_vendor tizen
43 %_with_tizen 1
44
45 %check exit 0
46 %run_check_section 0
47 %opensuse_bs 1
48 %_default_patch_fuzz   2
49 :Macros
50
51 ############################# display system ###################################
52
53 ########## display system selection ##########
54
55 # selection of the display system
56 # this selection is done for each repository
57 #
58 # flags combinations:
59 # |----------------------------------------------------
60 # | wayland |  x  | meaning
61 # |----------------------------------------------------
62 # |         |  1  | pure X11 platform(no wayland)
63 # |   1     |     | pure wayland platform (no X11)
64 # |   1     |  1  | wayland but X compatibility
65 # |         |     | no X and no wayland
66 # |----------------------------------------------------
67 #
68 # Owner: Stephane <stephane.desneux@open.eurogiciel.org>
69
70 ########## RDP flag ##########
71
72 # enable/disable RDP (remote desktop protocol) for wayland
73 # flag: _with_rdp, used in repositories
74 # Affects: weston, freerdp
75 # Owner: Manuel <manuel.bachmann@open.eurogiciel.org>
76
77 ########## mesa activation ##########
78
79 %define _with_mesa 1
80 Macros:
81 %_with_mesa 1
82 :Macros
83
84 %ifarch %arm armv7l %{aarch64}
85    Substitute: mesa-devel pkgconfig(glesv2)
86    #FIXME Substitute: pkgconfig(egl)
87 %endif
88
89 ############################# X11 repositories #################################
90
91 %if "%_repository" == "atom-x11" || "%_repository" == "arm-x11"
92 Substitute: pkgconfig(gles20) pkgconfig(egl) pkgconfig(glesv2) pkgconfig(gl)
93 Substitute: pkgconfig(gles11) pkgconfig(egl) pkgconfig(glesv1_cm) pkgconfig(gl)
94
95 %define _with_x 1
96
97 Macros:
98 %_with_x 1
99 :Macros
100
101 %endif
102
103
104 ############################# misc config flags ################################
105
106 # This build macro controls the libdlog output. If enabled,
107 # libdlog writes to Systemd Journal. If disabled, libdlog writes to kernel Android
108 # logger FIFO. Affects: dlog.
109 # Owner: Mikko <mikko.ylinen@intel.com>
110 Macros:
111 %_with_dlog_to_systemd_journal 1
112 :Macros
113
114 # Macro used to handle bluetooth popups without syspopup/bt-syspopup which needs OSP .
115 # In IVI, this macro permits to address bluetooth notifications (using C API) to notification-service daemon.
116 # Then homescreen is supposed to deal with those notifications and display relevant popups.
117 # Affects: bluetooth-frwk
118 # Owner: Corentin Lecouvey <corentin.lecouvey@open.eurogiciel.org>
119 Macros:
120 %_with_bluetooth_frwk_libnotification 1
121 :Macros
122
123 # This build macro controls whether the OS uses
124 # legacy nfc-manager or neard enabled nfc-manager-neard. If enabled,
125 # nfc-manager-neard is used. Affects: nfc CAPI, emulator-plugin-nfc
126 # Owner: Arron Wang <arron.wang@intel.com>
127 Macros:
128 %_with_neard_nfc 1
129 :Macros
130
131 # Uses mobile-specific Samsung patches for PulseAudio. Tizen Mobile needs
132 # this -> Tizen Mobile is compiled with this option.
133 # Owner: Ismo Puustinen <ismo.puustinen@intel.com>
134 # FIXME: Why this extra define in the obs config ?
135 %define _with_pulseaudio_samsung_policy 1
136 Macros:
137 %_with_pulseaudio_samsung_policy 1
138 :Macros
139
140 # Activate introspection
141 # This is needed on GuPNP to build Rygel correctly in IVI
142 # Impacts potentially packages that use gobject-introspection
143 # Owner: Mikko <mikko.ylinen@intel.com>
144 Macros:
145 %_with_introspection 1
146 :Macros
147
148 ############################# build config #####################################
149
150 %define gcc_version 49
151 Macros:
152 %gcc_version 49
153 :Macros
154
155 ########## targets ##########
156
157 %ifarch i586
158 Target: i686-tizen-linux
159 %endif
160
161 %ifarch armv7hl
162 Target: armv7hl-tizen-linux
163 %endif
164
165 %ifarch armv7l
166 Target: armv7l-tizen-linux
167 %endif
168
169 %ifarch aarch64
170 Target: aarch64-tizen-linux
171 %endif
172
173 ########## cross build ##########
174
175 %ifarch %arm armv7l
176 Hostarch: x86_64
177 # cross build support for the build hosts
178 Preinstall: qemu-linux-user-cross-arm
179 Keep: qemu-linux-user-cross-arm
180 %endif
181
182 %ifarch armv7hl
183 Preinstall: qemu-accel-armv7hl
184 Runscripts: qemu-accel-armv7hl
185 Preinstall: libmount libblkid libuuid
186 %endif
187
188 %ifarch armv7l
189 Preinstall: qemu-accel-armv7l-cross-arm
190 Runscripts: qemu-accel-armv7l-cross-arm
191 Preinstall: libmount libblkid libuuid
192 %endif
193
194 ########## exports for different architectures ##########
195
196 ExportFilter: ^qemu-linux-user.*\..*\.rpm$ . armv7l armv7hl
197
198 ExportFilter: ^qemu-accel-armv7hl.*\..*\.rpm$ .  armv7hl
199 ExportFilter: ^qemu-accel-armv7l.*\..*\.rpm$ .  armv7l
200
201 ExportFilter: \.armv7l\.rpm$ armv7l
202 ExportFilter: \.x86_64\.rpm$ x86_64
203
204 ########## buildroot config ##########
205
206 Preinstall: setup filesystem
207 RunScripts: setup
208
209 Preinstall: bash bzip2 coreutils diffutils grep rpm
210 Preinstall: glibc libacl libattr
211 Preinstall: libcap
212 Preinstall: libgcc_s1
213 Preinstall: libpopt sed tar zlib
214 Preinstall: libncurses libreadline
215 Preinstall: libelf libbz2
216 Preinstall: liblzma
217 Preinstall: nss nspr libfreebl3 libsoftokn3
218 Preinstall: libmagic
219 Preinstall: liblua
220 Preinstall: smack libsmack libxml2 libmagic  libmagic-data
221 Preinstall: libsqlite
222 Preinstall: rpm-security-plugin
223 Preinstall: util-linux
224
225 VMinstall: perl libmount libblkid libext2fs libuuid  grep libpcre util-linux
226
227 Required: binutils gcc glibc rpm-build libtool
228
229 Support: glibc-locale
230 Support: perl
231 Support: hostname
232 Support: cpio findutils
233 Support: file findutils zlib bzip2
234 Support: gzip hostname net-tools
235 Support: make  patch sed  gawk tar grep coreutils pkg-config
236 Support: m4  tzdata
237 Support: util-linux
238 Support: less
239 Support: which  elfutils
240 Support: update-alternatives
241
242 # FIXME: TO REMOVE (? comes from IVI)
243 Support: gcc-c++
244
245 Keep: cpp%{gcc_version} gcc%{gcc_version} gcc%{gcc_version}-ada libstdc++%{gcc_version}
246 Keep: libstdc++%{gcc_version}-devel gcc%{gcc_version}-c++
247 Keep: cpp gcc libstdc++
248 Keep: pam
249 Keep: binutils cpp  libmagic-data file findutils gawk gcc  gcc-c++
250 Keep: gdbm gzip libada libunwind  glibc-devel libpcre xz-lzma-compat
251 Keep: make  gmp libcap groff cpio
252 Keep: patch rpm-build  nss nspr elfutils python grep libgcc gcc-c++
253 Keep: kernel-headers  perl-libs perl
254 Keep: pkgconfig glib2 tizen-rpm-config
255 Keep: libmpc libmpfr libppl libgmp libppl_c
256 Keep: libcloog libppl libgmpxx
257 Keep: nss-softokn-freebl libmagic libmagic-data
258 Keep: setup
259 Keep: update-alternatives
260 Prefer: libstdc++%{gcc_version} libgcc%{gcc_version}
261 Prefer: libstdc++%{gcc_version}-32bit libstdc++%{gcc_version}-64bit
262
263 Substitute: gettext gettext-tools
264
265 %ifarch x86_64
266 Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit
267 %else
268 Substitute: glibc-devel-32bit
269 %endif
270
271 ########## compilation flags ##########
272 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__