Add -mstackrealign option to ix86 build
[scm/meta/obs.git] / Tizen:Base / _config
1 ################################################################################
2 # OBS Project config for Tizen:Base
3 #
4 # RE contacts:
5 #
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 Prefer: util-linux
19 Prefer: mono-wcf
20 Prefer: monodoc
21 Prefer: mono-extras
22 Prefer: mono-web
23 Prefer: mono-data
24 Prefer: mono-mvc
25 Prefer: mono-winforms
26 Prefer: mono-data-sqlite
27
28 # Set a preference for ambiguous libs to use *-64bit libs
29 #     *-64bit libs on 32bit build environment are required for .Net build (e.g., coreclr, corefx)
30 #     But when building 64bit target, they could make 'have choice' error with original libs in 64bit repository.
31 #     e.g., libstdc++ and libstdc++-64bit provides same libs. It's ambiguous to choose appropriate one.
32 #     Owner : Jiyoung Yun (jy910.yun@samsung.com)
33 #     libopenssl11 : Dongsun Lee (ds73.lee@samsung.com)
34 Prefer: libgcc libstdc++ libunwind libuuid zlib libopenssl libopenssl11
35
36 ############################# base definition ###############################
37
38 # %release_name and %tizen_full_version are used in platform/upstream/tizen-release
39
40 Macros:
41 %release_name Tizen5/Unified
42
43 %tizen_version_major 5
44 %tizen_version_minor 5
45 %tizen_version_patch 0
46
47 %tizen_version %{tizen_version_major}.%{tizen_version_minor}
48 %tizen_full_version %{tizen_version}.%{tizen_version_patch}
49 %tizen %tizen_version
50 %vendor tizen
51 %_vendor tizen
52 %_with_tizen 1
53
54 #### %__spec_check_pre exit 0
55 #### %run_check_section 0
56
57 %opensuse_bs 1
58 %_default_patch_fuzz   2
59
60 %_binary_payload w5T.xzdio
61 :Macros
62
63
64 ############################# build config #####################################
65
66 %define gcc_version 62
67 Macros:
68 %gcc_version 62
69 :Macros
70
71 ########## targets ##########
72
73 %ifarch i586
74 Target: i686-tizen-linux
75 %endif
76
77 %ifarch armv7hl
78 Target: armv7hl-tizen-linux
79 %endif
80
81 %ifarch armv7l
82 Target: armv7l-tizen-linux
83 %endif
84
85 %ifarch aarch64
86 Target: aarch64-tizen-linux
87 %endif
88
89 ########## cross build ##########
90
91 %define build_hostarch x86_64
92 Macros:
93 %build_hostarch x86_64
94 :Macros
95
96 %ifarch %arm armv7l aarch64
97 Hostarch: x86_64
98 # cross build support for the build hosts
99 Preinstall: qemu-linux-user-%{build_hostarch}-cross
100 Runscripts: qemu-linux-user-%{build_hostarch}-cross
101 Keep: qemu-linux-user-%{build_hostarch}-cross
102 Macros:
103 %qemu_user_space_build 1
104 :Macros
105 %endif
106
107 %ifarch armv7l
108 Preinstall: qemu-accel-%{build_hostarch}-armv7l
109 Runscripts: qemu-accel-%{build_hostarch}-armv7l
110 Preinstall: libmount libblkid libuuid
111 %endif
112
113 %ifarch aarch64
114 Preinstall: qemu-accel-%{build_hostarch}-aarch64
115 Runscripts: qemu-accel-%{build_hostarch}-aarch64
116 Preinstall: libmount libblkid libuuid
117 %endif # aarch64
118
119 Substitute: python-accel-armv7l-cross-arm python-accel-%{build_hostarch}-armv7l
120 Substitute: python-accel-aarch64-cross-aarch64 python-accel-%{build_hostarch}-aarch64
121
122 Substitute: clang-accel-armv7l-cross-arm clang-accel-%{build_hostarch}-armv7l
123 Substitute: clang-accel-aarch64-cross-aarch64 clang-accel-%{build_hostarch}-aarch64
124
125 ########## exports for different architectures ##########
126
127 ExportFilter: \.armv7l\.rpm$ armv7l
128 ExportFilter: \.aarch64\.rpm$ aarch64
129 ExportFilter: \.i586\.rpm$ i586
130 ExportFilter: \.x86_64\.rpm$ x86_64
131
132 ########## buildroot config ##########
133
134 Preinstall: setup filesystem
135 RunScripts: setup
136
137 Preinstall: bash bzip2 coreutils diffutils grep rpm
138 Preinstall: glibc libacl libattr
139 Preinstall: libcap
140 Preinstall: libgcc
141 Preinstall: libpopt sed tar zlib
142 Preinstall: libncurses libreadline
143 Preinstall: libelf libbz2
144 Preinstall: liblzma
145 Preinstall: nss nspr libfreebl3 libsoftokn3
146 Preinstall: libmagic
147 Preinstall: liblua
148 Preinstall: smack libsmack libxml2 libmagic  libmagic-data
149 Preinstall: libsqlite
150 #Preinstall: rpm-security-plugin
151 Preinstall: util-linux util-linux-su
152
153 VMinstall: perl libmount libblkid libext2fs libuuid  grep libpcre util-linux libsmartcols procps-ng
154
155 Required: binutils gcc glibc rpm-build libtool
156 Required: gcc-c++
157
158 Support: glibc-locale
159 Support: perl
160 Support: hostname
161 Support: cpio findutils
162 Support: file findutils zlib bzip2
163 Support: gzip hostname net-tools
164 Support: make  patch sed  gawk tar grep coreutils pkg-config
165 Support: m4  tzdata
166 Support: util-linux
167 Support: less
168 Support: which  elfutils
169 Support: update-alternatives
170 Support: libstdc++-devel
171 Support: cpp
172 Support: libatomic
173 Support: libgomp
174 Support: libitm
175
176 Keep: libstdc++-devel
177 Keep: cpp gcc libstdc++
178 Keep: pam
179 Keep: binutils cpp  libmagic-data file findutils gawk gcc  gcc-c++
180 Keep: gdbm gzip libada libunwind  glibc-devel libpcre xz-lzma-compat
181 Keep: make  gmp libcap groff cpio
182 Keep: patch rpm-build  nss nspr elfutils python grep libgcc gcc-c++
183 Keep: kernel-headers  perl-libs perl
184 Keep: pkgconfig glib2 tizen-rpm-config
185 Keep: libmpc libmpfr libppl libgmp libppl_c
186 Keep: libcloog libppl libgmpxx
187 Keep: nss-softokn-freebl libmagic libmagic-data
188 Keep: setup
189 Keep: update-alternatives
190 Keep: cpp
191 Keep: gcc-c++
192 Keep: libatomic
193 Keep: libgomp
194 Keep: libitm
195
196 Substitute: gettext gettext-tools
197
198 %ifarch x86_64
199 Substitute: glibc-devel-32bit glibc-devel-32bit glibc-32bit
200 Substitute: libgcc_s1-32bit libgcc-32bit
201 %else
202 Substitute: glibc-devel-32bit
203 %endif
204
205 ########## compilation flags ##########
206 %define __global_cflags -O2 -g2 -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector -Wformat-security -fmessage-length=0 -Wl,--as-needed
207
208 Optflags: armv7l %{__global_cflags} --param=ssp-buffer-size=4 -march=armv7-a -mtune=cortex-a8 -mlittle-endian -mfpu=neon -mfloat-abi=softfp -mthumb -Wp,-D__SOFTFP__ -Wl,-O1 -Wl,--hash-style=gnu -Wa,-mimplicit-it=thumb
209 Optflags: aarch64 %{__global_cflags} -feliminate-unused-debug-types -Wformat -march=armv8-a+fp+simd+crc+crypto -mtune=cortex-a57.cortex-a53
210 Optflags: i686 %{__global_cflags} -feliminate-unused-debug-types --param=ssp-buffer-size=4 -fdiagnostics-color=never -m32 -march=i686 -mtune=i686 -msse4.2 -mfpmath=sse -fasynchronous-unwind-tables -fno-omit-frame-pointer -mstackrealign
211 Optflags: x86_64 %{__global_cflags} -feliminate-unused-debug-types --param=ssp-buffer-size=4 -fdiagnostics-color=never -m64 -march=nehalem -msse4.2 -mfpmath=sse -fasynchronous-unwind-tables -fno-omit-frame-pointer