equal
deleted
inserted
replaced
29 |
29 |
30 # use clang (upstream default since 64.0) |
30 # use clang (upstream default since 64.0) |
31 %if 0%{?suse_version} > 1320 |
31 %if 0%{?suse_version} > 1320 |
32 %define clang_build 1 |
32 %define clang_build 1 |
33 %endif |
33 %endif |
|
34 # Except on aarch64 due to bmo#1513605 |
|
35 # and on %%arm due to large ld memory requirements |
|
36 %ifarch %arm aarch64 |
|
37 %define clang_build 0 |
|
38 %endif |
34 |
39 |
35 # PIE, full relro (x86_64 for now) |
40 # PIE, full relro (x86_64 for now) |
|
41 %ifnarch %arm aarch64 |
36 %define build_hardened 1 |
42 %define build_hardened 1 |
|
43 %endif |
37 |
44 |
38 # Firefox only supports i686 |
45 # Firefox only supports i686 |
39 %ifarch %ix86 |
46 %ifarch %ix86 |
40 ExclusiveArch: i586 i686 |
47 ExclusiveArch: i586 i686 |
41 BuildArch: i686 |
48 BuildArch: i686 |
69 %if 0%{?suse_version} <= 1320 |
76 %if 0%{?suse_version} <= 1320 |
70 BuildRequires: gcc7-c++ |
77 BuildRequires: gcc7-c++ |
71 %else |
78 %else |
72 BuildRequires: gcc-c++ |
79 BuildRequires: gcc-c++ |
73 %endif |
80 %endif |
|
81 BuildRequires: cargo >= 1.29 |
74 BuildRequires: libXcomposite-devel |
82 BuildRequires: libXcomposite-devel |
75 BuildRequires: libcurl-devel |
83 BuildRequires: libcurl-devel |
76 BuildRequires: libidl-devel |
84 BuildRequires: libidl-devel |
77 BuildRequires: libiw-devel |
85 BuildRequires: libiw-devel |
78 BuildRequires: libnotify-devel |
86 BuildRequires: libnotify-devel |
83 BuildRequires: nodejs8 >= 8.11 |
91 BuildRequires: nodejs8 >= 8.11 |
84 BuildRequires: python-devel |
92 BuildRequires: python-devel |
85 BuildRequires: python2-xml |
93 BuildRequires: python2-xml |
86 BuildRequires: python3 >= 3.5 |
94 BuildRequires: python3 >= 3.5 |
87 BuildRequires: rust >= 1.29 |
95 BuildRequires: rust >= 1.29 |
88 BuildRequires: cargo >= 1.29 |
|
89 BuildRequires: rust-cbindgen >= 0.6.4 |
96 BuildRequires: rust-cbindgen >= 0.6.4 |
90 BuildRequires: startup-notification-devel |
97 BuildRequires: startup-notification-devel |
91 BuildRequires: unzip |
98 BuildRequires: unzip |
92 BuildRequires: update-desktop-files |
99 BuildRequires: update-desktop-files |
93 BuildRequires: xorg-x11-libXt-devel |
100 BuildRequires: xorg-x11-libXt-devel |
301 export MOZILLA_OFFICIAL=1 |
308 export MOZILLA_OFFICIAL=1 |
302 export BUILD_OFFICIAL=1 |
309 export BUILD_OFFICIAL=1 |
303 export MOZ_TELEMETRY_REPORTING=1 |
310 export MOZ_TELEMETRY_REPORTING=1 |
304 %if 0%{?suse_version} <= 1320 |
311 %if 0%{?suse_version} <= 1320 |
305 export CC=gcc-7 |
312 export CC=gcc-7 |
|
313 %else |
|
314 %if 0%{?clang_build} == 0 |
|
315 export CC=gcc |
|
316 export CXX=g++ |
|
317 %endif |
306 %endif |
318 %endif |
307 export CFLAGS="%{optflags} -fno-strict-aliasing" |
319 export CFLAGS="%{optflags} -fno-strict-aliasing" |
308 # boo#986541: add -fno-delete-null-pointer-checks for gcc6 |
320 # boo#986541: add -fno-delete-null-pointer-checks for gcc6 |
309 %if 0%{?clang_build} == 0 |
321 %if 0%{?clang_build} == 0 |
310 %if 0%{?suse_version} > 1320 |
322 %if 0%{?suse_version} > 1320 |
319 %ifarch x86_64 |
331 %ifarch x86_64 |
320 export LDFLAGS="${LDFLAGS} -Wl,-z,relro,-z,now" |
332 export LDFLAGS="${LDFLAGS} -Wl,-z,relro,-z,now" |
321 %endif |
333 %endif |
322 %endif |
334 %endif |
323 %ifarch ppc64 ppc64le |
335 %ifarch ppc64 ppc64le |
|
336 %if 0%{?clang_build} == 0 |
324 export CFLAGS="$CFLAGS -mminimal-toc" |
337 export CFLAGS="$CFLAGS -mminimal-toc" |
|
338 %endif |
325 %endif |
339 %endif |
326 export CXXFLAGS="$CFLAGS" |
340 export CXXFLAGS="$CFLAGS" |
327 export MOZCONFIG=$RPM_BUILD_DIR/mozconfig |
341 export MOZCONFIG=$RPM_BUILD_DIR/mozconfig |
328 %limit_build -m 1500 |
342 %limit_build -m 1500 |
329 cat << EOF > $MOZCONFIG |
343 cat << EOF > $MOZCONFIG |