Added rust compiler as buildrequire and fix for big endian icu data

This commit is contained in:
Jan Horak 2017-04-04 21:51:16 +02:00
parent 6b25e5ecf3
commit 9f930d1e0b
2 changed files with 37 additions and 0 deletions

View File

@ -0,0 +1,12 @@
diff -up mozilla-aurora/build/autoconf/icu.m4.icu-endian mozilla-aurora/build/autoconf/icu.m4
--- mozilla-aurora/build/autoconf/icu.m4.icu-endian 2016-12-09 09:11:01.227317790 +0100
+++ mozilla-aurora/build/autoconf/icu.m4 2016-12-09 09:18:40.608712247 +0100
@@ -78,7 +78,7 @@ if test -n "$USE_ICU"; then
# TODO: the l is actually endian-dependent
# We could make this set as 'l' or 'b' for little or big, respectively,
# but we'd need to check in a big-endian version of the file.
- ICU_DATA_FILE="icudt${version}l.dat"
+ ICU_DATA_FILE="icudt${version}b.dat"
dnl We won't build ICU data as a separate file when building
dnl JS standalone so that embedders don't have to deal with it.

View File

@ -42,6 +42,14 @@
%define system_libicu 0
%endif
# Big endian platforms
%ifarch ppc64 s390x
# Javascript Intl API is not supported on big endian platforms right now:
# https://bugzilla.mozilla.org/show_bug.cgi?id=1322212
%define big_endian 1
%endif
%define build_with_rust 0
%if 0%{?fedora} > 23
@ -102,6 +110,7 @@ Source21: thunderbird.sh.in
Patch0: thunderbird-install-dir.patch
Patch9: mozilla-build-arm.patch
Patch10: firefox-build-prbool.patch
Patch26: build-icu-big-endian.patch
# Build patches
Patch100: thunderbird-objdir.patch
@ -179,6 +188,10 @@ BuildRequires: yasm
BuildRequires: dbus-glib-devel
Obsoletes: thunderbird-lightning
Provides: thunderbird-lightning
%if %{?build_with_rust}
BuildRequires: rust
BuildRequires: cargo
%endif
ExcludeArch: aarch64
@ -244,7 +257,12 @@ cd mozilla
%patch400 -p1 -b .966424
#%patch402 -p1 -b .rhbz-1014858 FIXME musi byt
%patch304 -p1 -b .1245783
# Patch for big endian platforms only
%if 0%{?big_endian}
%patch26 -p1 -b .icu
%endif
cd ..
%patch305 -p1 -b .fix-dupes
%patch105 -p1 -b .bad-langs
%patch200 -p1 -b .addons
@ -382,6 +400,13 @@ esac
cd %{tarballdir}
echo "Generate big endian version of config/external/icu/data/icud58l.dat"
%if 0%{?big_endian}
./mach python intl/icu_sources_data.py .
ls -l config/external/icu/data
rm -f config/external/icu/data/icudt*l.dat
%endif
# Update the various config.guess to upstream release for aarch64 support
find ./ -name config.guess -exec cp /usr/lib/rpm/config.guess {} ';'