2007-01-15 23:49:32 +01:00
|
|
|
#
|
2011-03-31 11:35:27 +02:00
|
|
|
# spec file for package MozillaThunderbird
|
2007-01-15 23:49:32 +01:00
|
|
|
#
|
2018-01-26 08:14:05 +01:00
|
|
|
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
|
|
|
|
# 2006-2018 Wolfgang Rosenauer <wr@rosenauer.org>
|
2007-01-15 23:49:32 +01:00
|
|
|
#
|
2008-09-15 12:18:41 +02:00
|
|
|
# All modifications and additions to the file contributed by third parties
|
|
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
|
|
# upon. The license for this file, and modifications and additions to the
|
|
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
|
|
# license for the pristine package is not an Open Source License, in which
|
|
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
|
|
# published by the Open Source Initiative.
|
|
|
|
|
2018-10-29 09:28:50 +01:00
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
2007-01-15 23:49:32 +01:00
|
|
|
#
|
|
|
|
|
2011-12-20 21:28:19 +01:00
|
|
|
|
- update to Thunderbird 60.3.0
* various theme fixes
* Shift+PageUp/PageDown in Write window
* Gloda attachment filtering
* Mailing list address auto-complete enter/return handling
* Thunderbird hung if HTML signature references non-existent image
* Filters not working for headers that appear more than once
- Security fixes for the Mozilla platform picked up from 60.3
(Firefox ESR release). In general, these flaws cannot be exploited
through email in Thunderbird because scripting is disabled when
reading mail, but are potentially risks in browser or browser-like
contexts (MFSA 2018-28) (bsc#1112852)
* CVE-2018-12391 (bmo#1478843) (Android only)
HTTP Live Stream audio data is accessible cross-origin
* CVE-2018-12392 (bmo#1492823)
Crash with nested event loops
* CVE-2018-12393 (bmo#1495011)
Integer overflow during Unicode conversion while loading JavaScript
* CVE-2018-12389 (bmo#1498460, bmo#1499198)
Memory safety bugs fixed in Firefox ESR 60.3
* CVE-2018-12390 (bmo#1487098, bmo#1487660, bmo#1490234, bmo#1496159,
bmo#1443748, bmo#1496340, bmo#1483905, bmo#1493347, bmo#1488803,
bmo#1498701, bmo#1498482, bmo#1442010, bmo#1495245, bmo#1483699,
bmo#1469486, bmo#1484905, bmo#1490561, bmo#1492524, bmo#1481844)
Memory safety bugs fixed in Firefox 63 and Firefox ESR 60.3
* Fix security info dialog in compose window not showing
OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/MozillaThunderbird?expand=0&rev=437
2018-11-01 18:28:09 +01:00
|
|
|
%define mainversion 60.3.0
|
2013-10-12 22:10:48 +02:00
|
|
|
%define update_channel release
|
- update to Thunderbird 60.3.0
* various theme fixes
* Shift+PageUp/PageDown in Write window
* Gloda attachment filtering
* Mailing list address auto-complete enter/return handling
* Thunderbird hung if HTML signature references non-existent image
* Filters not working for headers that appear more than once
- Security fixes for the Mozilla platform picked up from 60.3
(Firefox ESR release). In general, these flaws cannot be exploited
through email in Thunderbird because scripting is disabled when
reading mail, but are potentially risks in browser or browser-like
contexts (MFSA 2018-28) (bsc#1112852)
* CVE-2018-12391 (bmo#1478843) (Android only)
HTTP Live Stream audio data is accessible cross-origin
* CVE-2018-12392 (bmo#1492823)
Crash with nested event loops
* CVE-2018-12393 (bmo#1495011)
Integer overflow during Unicode conversion while loading JavaScript
* CVE-2018-12389 (bmo#1498460, bmo#1499198)
Memory safety bugs fixed in Firefox ESR 60.3
* CVE-2018-12390 (bmo#1487098, bmo#1487660, bmo#1490234, bmo#1496159,
bmo#1443748, bmo#1496340, bmo#1483905, bmo#1493347, bmo#1488803,
bmo#1498701, bmo#1498482, bmo#1442010, bmo#1495245, bmo#1483699,
bmo#1469486, bmo#1484905, bmo#1490561, bmo#1492524, bmo#1481844)
Memory safety bugs fixed in Firefox 63 and Firefox ESR 60.3
* Fix security info dialog in compose window not showing
OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/MozillaThunderbird?expand=0&rev=437
2018-11-01 18:28:09 +01:00
|
|
|
%define releasedate 20181025202514
|
2014-07-28 15:29:31 +02:00
|
|
|
|
2016-01-19 11:28:29 +01:00
|
|
|
%bcond_without mozilla_tb_kde4
|
|
|
|
%bcond_with mozilla_tb_valgrind
|
|
|
|
%bcond_without mozilla_tb_optimize_for_size
|
2013-09-16 11:26:56 +02:00
|
|
|
|
2007-01-15 23:49:32 +01:00
|
|
|
Name: MozillaThunderbird
|
2011-12-20 09:05:23 +01:00
|
|
|
BuildRequires: Mesa-devel
|
2017-09-28 10:25:59 +02:00
|
|
|
BuildRequires: alsa-devel
|
2011-12-20 09:05:23 +01:00
|
|
|
BuildRequires: autoconf213
|
|
|
|
BuildRequires: dbus-1-glib-devel
|
|
|
|
BuildRequires: fdupes
|
2018-08-06 16:26:01 +02:00
|
|
|
%if 0%{?suse_version} <= 1320
|
|
|
|
BuildRequires: gcc7-c++
|
|
|
|
%else
|
2011-12-20 09:05:23 +01:00
|
|
|
BuildRequires: gcc-c++
|
2018-08-06 16:26:01 +02:00
|
|
|
%endif
|
|
|
|
BuildRequires: cargo
|
|
|
|
#BuildRequires: hunspell-devel
|
2015-12-30 09:16:54 +01:00
|
|
|
BuildRequires: libXcomposite-devel
|
2011-12-20 09:05:23 +01:00
|
|
|
BuildRequires: libcurl-devel
|
|
|
|
BuildRequires: libidl-devel
|
|
|
|
BuildRequires: libnotify-devel
|
2018-10-29 09:28:50 +01:00
|
|
|
BuildRequires: memory-constraints
|
2018-08-06 16:26:01 +02:00
|
|
|
BuildRequires: mozilla-nspr-devel >= 4.19
|
|
|
|
BuildRequires: mozilla-nss-devel >= 3.36.4
|
2011-12-20 09:05:23 +01:00
|
|
|
BuildRequires: python
|
2017-12-11 09:32:59 +01:00
|
|
|
BuildRequires: python2-xml
|
2018-08-06 16:26:01 +02:00
|
|
|
BuildRequires: rust >= 1.24
|
|
|
|
BuildRequires: rust-std
|
2011-12-20 09:05:23 +01:00
|
|
|
BuildRequires: startup-notification-devel
|
|
|
|
BuildRequires: unzip
|
|
|
|
BuildRequires: update-desktop-files
|
2012-03-14 08:47:37 +01:00
|
|
|
BuildRequires: xorg-x11-libXt-devel
|
2014-07-28 15:29:31 +02:00
|
|
|
BuildRequires: xz
|
2011-12-20 09:05:23 +01:00
|
|
|
BuildRequires: yasm
|
|
|
|
BuildRequires: zip
|
2018-08-15 11:38:21 +02:00
|
|
|
%if 0%{?suse_version} < 1550
|
2017-11-22 20:21:46 +01:00
|
|
|
BuildRequires: pkgconfig(gconf-2.0) >= 1.2.1
|
2018-08-15 11:38:21 +02:00
|
|
|
%endif
|
2017-11-25 08:08:27 +01:00
|
|
|
BuildRequires: pkgconfig(gdk-x11-2.0)
|
|
|
|
BuildRequires: pkgconfig(glib-2.0) >= 2.22
|
|
|
|
BuildRequires: pkgconfig(gobject-2.0)
|
2017-11-22 20:21:46 +01:00
|
|
|
BuildRequires: pkgconfig(gtk+-2.0) >= 2.18.0
|
2018-08-06 16:26:01 +02:00
|
|
|
BuildRequires: pkgconfig(gtk+-3.0) >= 3.4.0
|
2017-11-22 20:21:46 +01:00
|
|
|
BuildRequires: pkgconfig(gtk+-unix-print-2.0)
|
2018-08-06 16:26:01 +02:00
|
|
|
BuildRequires: pkgconfig(gtk+-unix-print-3.0)
|
2017-05-16 11:11:43 +02:00
|
|
|
BuildRequires: pkgconfig(libffi)
|
2014-07-28 15:29:31 +02:00
|
|
|
BuildRequires: pkgconfig(libpulse)
|
2016-01-19 11:28:29 +01:00
|
|
|
%if %{with mozilla_tb_valgrind}
|
|
|
|
BuildRequires: pkgconfig(valgrind)
|
|
|
|
%endif
|
2018-08-06 16:26:01 +02:00
|
|
|
%if 0%{?suse_version} > 1320
|
|
|
|
BuildRequires: llvm-clang-devel >= 3.9.0
|
|
|
|
%else
|
|
|
|
# this covers the workaround to compile on Leap 42 in OBS
|
|
|
|
BuildRequires: clang4-devel
|
2014-07-28 15:29:31 +02:00
|
|
|
%endif
|
2017-03-18 22:27:55 +01:00
|
|
|
# libavcodec is required for H.264 support but the
|
|
|
|
# openSUSE version is currently not able to play H.264
|
|
|
|
# therefore the Packman version is required
|
|
|
|
# minimum version of libavcodec is 53
|
|
|
|
Recommends: libavcodec-full >= 0.10.16
|
2009-07-21 12:08:52 +02:00
|
|
|
Version: %{mainversion}
|
2011-12-20 09:05:23 +01:00
|
|
|
Release: 0
|
2018-10-12 17:11:47 +02:00
|
|
|
Provides: MozillaThunderbird-devel = %version
|
|
|
|
Obsoletes: MozillaThunderbird-devel < %version
|
2010-12-10 10:44:42 +01:00
|
|
|
Provides: thunderbird = %{version}
|
2015-11-24 08:57:32 +01:00
|
|
|
Provides: appdata()
|
|
|
|
Provides: appdata(thunderbird.appdata.xml)
|
2016-01-19 11:28:29 +01:00
|
|
|
%if %{with mozilla_tb_kde4}
|
2012-03-14 08:47:37 +01:00
|
|
|
# this is needed to match this package with the kde4 helper package without the main package
|
|
|
|
# having a hard requirement on the kde4 package
|
|
|
|
%define kde_helper_version 6
|
|
|
|
Provides: mozilla-kde4-version = %{kde_helper_version}
|
|
|
|
%endif
|
2007-01-15 23:49:32 +01:00
|
|
|
Summary: The Stand-Alone Mozilla Mail Component
|
2012-07-16 10:37:53 +02:00
|
|
|
License: MPL-2.0
|
2007-01-15 23:49:32 +01:00
|
|
|
Group: Productivity/Networking/Email/Clients
|
2011-12-20 09:05:23 +01:00
|
|
|
Url: http://www.mozilla.org/products/thunderbird/
|
2018-10-03 22:05:00 +02:00
|
|
|
Source: http://ftp.mozilla.org/pub/thunderbird/releases/%{version}/source/thunderbird-%{version}.source.tar.xz
|
2012-03-14 08:47:37 +01:00
|
|
|
Source1: thunderbird.desktop
|
2007-01-15 23:49:32 +01:00
|
|
|
Source3: mozilla.sh.in
|
2014-07-28 15:29:31 +02:00
|
|
|
Source4: l10n-%{version}.tar.xz
|
2007-01-15 23:49:32 +01:00
|
|
|
Source6: suse-default-prefs.js
|
2012-03-14 08:47:37 +01:00
|
|
|
Source8: thunderbird-rpmlintrc
|
2014-10-14 23:45:11 +02:00
|
|
|
Source9: thunderbird.appdata.xml
|
2009-07-21 12:08:52 +02:00
|
|
|
Source10: create-tar.sh
|
2014-07-28 15:29:31 +02:00
|
|
|
Source11: compare-locales.tar.xz
|
2012-03-14 08:47:37 +01:00
|
|
|
Source12: kde.js
|
2018-10-03 22:05:00 +02:00
|
|
|
Source13: thunderbird-%{version}.source.tar.xz.asc
|
|
|
|
Source14: http://ftp.mozilla.org/pub/thunderbird/releases/%{version}/KEY#/%{name}.keyring
|
2011-06-28 20:42:13 +02:00
|
|
|
# Gecko/Toolkit
|
2015-06-21 13:26:59 +02:00
|
|
|
Patch2: mozilla-nongnome-proxies.patch
|
|
|
|
Patch3: mozilla-kde.patch
|
2016-04-30 15:53:52 +02:00
|
|
|
Patch5: mozilla-no-stdcxx-check.patch
|
2017-03-18 22:27:55 +01:00
|
|
|
Patch6: mozilla-aarch64-startup-crash.patch
|
2018-08-06 16:26:01 +02:00
|
|
|
Patch7: mozilla-bmo1375074.patch
|
|
|
|
Patch8: mozilla-bmo1464766.patch
|
|
|
|
Patch9: mozilla-i586-DecoderDoctorLogger.patch
|
|
|
|
Patch10: mozilla-i586-domPrefs.patch
|
2018-10-29 09:28:50 +01:00
|
|
|
Patch11: mozilla-bmo1463035.patch
|
2007-01-15 23:49:32 +01:00
|
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
2008-10-23 22:52:20 +02:00
|
|
|
PreReq: coreutils fileutils textutils /bin/sh
|
2012-04-20 23:16:28 +02:00
|
|
|
Recommends: libcanberra0
|
2017-03-18 22:27:55 +01:00
|
|
|
Recommends: libpulse0
|
2018-03-29 15:46:17 +02:00
|
|
|
# Exclude bigendian archs for now, have not built
|
|
|
|
# since version 45.8.0
|
|
|
|
ExcludeArch: ppc ppc64 s390 s390x
|
2009-07-21 12:08:52 +02:00
|
|
|
### build options
|
2015-10-05 17:42:43 +02:00
|
|
|
%ifarch aarch64 ppc ppc64 ppc64le s390 s390x ia64 %arm
|
2012-06-06 08:41:25 +02:00
|
|
|
%define crashreporter 0
|
2015-10-05 17:42:43 +02:00
|
|
|
%else
|
|
|
|
%define crashreporter 1
|
2011-11-21 22:53:27 +01:00
|
|
|
%endif
|
2007-01-15 23:49:32 +01:00
|
|
|
%define has_system_cairo 0
|
2011-06-28 20:42:13 +02:00
|
|
|
%define localize 1
|
2009-07-21 12:08:52 +02:00
|
|
|
### build options end
|
2018-07-02 15:49:36 +02:00
|
|
|
%define __provides_exclude ^lib.*\\.so.*$
|
2018-07-05 08:01:02 +02:00
|
|
|
%define __requires_exclude ^(libmoz.*|liblgpllibs.*|libxul.*|libldap.*|libldif.*|libprldap.*)$
|
2017-12-11 09:32:59 +01:00
|
|
|
Requires: mozilla-nspr >= %(rpm -q --queryformat '%%{VERSION}' mozilla-nspr)
|
|
|
|
Requires: mozilla-nss >= %(rpm -q --queryformat '%%{VERSION}' mozilla-nss)
|
2012-03-14 08:47:37 +01:00
|
|
|
Conflicts: thunderbird-esr
|
2007-01-15 23:49:32 +01:00
|
|
|
%define progname thunderbird
|
|
|
|
%define progdir %{_prefix}/%_lib/thunderbird
|
|
|
|
%define libgssapi libgssapi_krb5.so.2
|
2011-01-13 14:15:29 +01:00
|
|
|
%define desktop_file_name thunderbird
|
2007-01-15 23:49:32 +01:00
|
|
|
|
|
|
|
%description
|
|
|
|
Mozilla Thunderbird is a redesign of the Mozilla Mail component. It is
|
|
|
|
written using the XUL user interface language and designed to be
|
|
|
|
cross-platform. It is a stand-alone application instead of part of the
|
|
|
|
Mozilla application suite.
|
|
|
|
|
2011-06-28 20:42:13 +02:00
|
|
|
%if %localize
|
2011-08-18 09:08:25 +02:00
|
|
|
|
2009-08-10 18:18:59 +02:00
|
|
|
%package translations-common
|
|
|
|
Summary: Common translations for MozillaThunderbird
|
2009-08-28 23:51:34 +02:00
|
|
|
Group: System/Localization
|
2013-09-16 17:36:59 +02:00
|
|
|
Provides: locale(%{name}:ar;ca;cs;da;de;el;en_GB;es_AR;es_ES;fi;fr;hu;it;ja;ko;nb_NO;nl;pl;pt_BR;pt_PT;ru;sv_SE;zh_CN;zh_TW)
|
2009-08-10 18:18:59 +02:00
|
|
|
PreReq: %{name} = %{mainversion}
|
|
|
|
Obsoletes: %{name}-translations < %{version}-%{release}
|
|
|
|
|
|
|
|
%description translations-common
|
|
|
|
This package contains several optional languages for the user interface
|
|
|
|
of MozillaThunderbird.
|
2007-01-15 23:49:32 +01:00
|
|
|
|
|
|
|
|
2009-08-10 18:18:59 +02:00
|
|
|
%package translations-other
|
|
|
|
Summary: Extra translations for MozillaThunderbird
|
2009-08-28 23:51:34 +02:00
|
|
|
Group: System/Localization
|
2013-09-16 17:36:59 +02:00
|
|
|
Provides: locale(%{name}:ast;be;bg;bn_BD;br;et;eu;fy_NL;ga_IE;gd;gl;he;hr;hy_AM;id;is;lt;nn_NO;pa_IN;rm;ro;si;sk;sl;sq;sr;ta_LK;tr;uk;vi)
|
2009-07-21 12:08:52 +02:00
|
|
|
PreReq: %{name} = %{mainversion}
|
2009-08-10 18:18:59 +02:00
|
|
|
Obsoletes: %{name}-translations < %{version}-%{release}
|
2007-01-15 23:49:32 +01:00
|
|
|
|
2009-08-10 18:18:59 +02:00
|
|
|
%description translations-other
|
2007-01-15 23:49:32 +01:00
|
|
|
This package contains several optional languages for the user interface
|
|
|
|
of MozillaThunderbird.
|
2011-06-28 20:42:13 +02:00
|
|
|
%endif
|
2008-01-18 19:28:32 +01:00
|
|
|
|
2010-07-24 17:36:48 +02:00
|
|
|
%if %crashreporter
|
|
|
|
%package buildsymbols
|
|
|
|
Summary: Breakpad buildsymbols for %{name}
|
|
|
|
Group: Development/Debug
|
|
|
|
|
|
|
|
%description buildsymbols
|
|
|
|
This subpackage contains the Breakpad created and compatible debugging
|
|
|
|
symbols meant for upload to Mozilla's crash collector database.
|
|
|
|
%endif
|
|
|
|
|
2007-01-15 23:49:32 +01:00
|
|
|
%prep
|
2018-07-02 14:10:40 +02:00
|
|
|
%setup -n thunderbird-%{version} -q -b 4 -b 11
|
2009-07-21 12:08:52 +02:00
|
|
|
# xulrunner patches
|
2011-11-09 13:52:23 +01:00
|
|
|
%patch2 -p1
|
2016-01-19 11:28:29 +01:00
|
|
|
%if %{with mozilla_tb_kde4}
|
2015-06-21 13:26:59 +02:00
|
|
|
%patch3 -p1
|
2012-03-14 08:47:37 +01:00
|
|
|
%endif
|
2012-08-28 21:12:48 +02:00
|
|
|
%patch5 -p1
|
2016-05-25 09:19:28 +02:00
|
|
|
%patch6 -p1
|
2018-08-06 16:26:01 +02:00
|
|
|
%patch7 -p1
|
|
|
|
%patch8 -p1
|
|
|
|
%ifarch %ix86
|
|
|
|
%patch9 -p1
|
|
|
|
%patch10 -p1
|
|
|
|
%endif
|
2018-10-29 09:28:50 +01:00
|
|
|
%patch11 -p1
|
2007-01-15 23:49:32 +01:00
|
|
|
|
|
|
|
%build
|
2011-06-28 20:42:13 +02:00
|
|
|
# no need to add build time to binaries
|
|
|
|
modified="$(sed -n '/^----/n;s/ - .*$//;p;q' "%{_sourcedir}/%{name}.changes")"
|
|
|
|
DATE="\"$(date -d "${modified}" "+%%b %%e %%Y")\""
|
|
|
|
TIME="\"$(date -d "${modified}" "+%%R")\""
|
|
|
|
find . -regex ".*\.c\|.*\.cpp\|.*\.h" -exec sed -i "s/__DATE__/${DATE}/g;s/__TIME__/${TIME}/g" {} +
|
|
|
|
#
|
2016-01-19 11:28:29 +01:00
|
|
|
%if %{with mozilla_tb_kde4}
|
2018-08-06 16:26:01 +02:00
|
|
|
kdehelperversion=$(cat toolkit/xre/nsKDEUtils.cpp | grep '#define KMOZILLAHELPER_VERSION' | cut -d ' ' -f 3)
|
2012-03-14 08:47:37 +01:00
|
|
|
if test "$kdehelperversion" != %{kde_helper_version}; then
|
|
|
|
echo fix kde helper version in the .spec file
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
%endif
|
2009-06-20 05:15:11 +02:00
|
|
|
export SUSE_ASNEEDED=0
|
2007-01-15 23:49:32 +01:00
|
|
|
export MOZ_BUILD_DATE=%{releasedate}
|
|
|
|
export MOZILLA_OFFICIAL=1
|
|
|
|
export BUILD_OFFICIAL=1
|
2013-10-12 22:10:48 +02:00
|
|
|
%if %{update_channel} == "esr"
|
|
|
|
export MOZ_ESR=1
|
|
|
|
%endif
|
2018-08-06 16:26:01 +02:00
|
|
|
%if 0%{?suse_version} <= 1320
|
|
|
|
export CC=gcc-7
|
|
|
|
%endif
|
2016-01-19 11:28:29 +01:00
|
|
|
export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
|
2016-06-23 16:40:05 +02:00
|
|
|
%if 0%{?suse_version} > 1320
|
|
|
|
export CFLAGS="$CFLAGS -fno-delete-null-pointer-checks"
|
|
|
|
%endif
|
2014-01-02 22:34:06 +01:00
|
|
|
%ifarch ppc64 ppc64le
|
2007-06-14 00:42:39 +02:00
|
|
|
export CFLAGS="$CFLAGS -mminimal-toc"
|
|
|
|
%endif
|
2018-08-06 16:26:01 +02:00
|
|
|
%ifarch %arm
|
|
|
|
export CFLAGS="${CFLAGS/-g / }"
|
|
|
|
%endif
|
2018-07-02 15:49:36 +02:00
|
|
|
%ifarch %ix86 %arm
|
2014-11-04 12:16:51 +01:00
|
|
|
# Limit RAM usage during link
|
|
|
|
export LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
|
|
|
|
%endif
|
2007-01-15 23:49:32 +01:00
|
|
|
export CXXFLAGS="$CFLAGS"
|
2018-08-06 16:26:01 +02:00
|
|
|
%ifarch %{arm}
|
|
|
|
export RUSTFLAGS="-Cdebuginfo=0"
|
|
|
|
%endif
|
2007-01-15 23:49:32 +01:00
|
|
|
export MOZCONFIG=$RPM_BUILD_DIR/mozconfig
|
2016-01-26 07:33:46 +01:00
|
|
|
# -g might be part of RPM_OPT_FLAGS, depending on the debuginfo setting in prj config
|
|
|
|
# gcc lacks a an explicit -noop, so use something similar to make sure -g
|
|
|
|
# is not forced into CFLAGS
|
|
|
|
export MOZ_DEBUG_FLAGS="-pipe"
|
2009-07-21 12:08:52 +02:00
|
|
|
#
|
2018-10-29 09:28:50 +01:00
|
|
|
# Limit RAM usage to avoid OOM
|
|
|
|
%limit_build -m 1500
|
2007-01-15 23:49:32 +01:00
|
|
|
cat << EOF > $MOZCONFIG
|
|
|
|
mk_add_options MOZILLA_OFFICIAL=1
|
|
|
|
mk_add_options BUILD_OFFICIAL=1
|
2009-07-21 12:08:52 +02:00
|
|
|
mk_add_options MOZ_MILESTONE_RELEASE=1
|
2016-04-30 15:53:52 +02:00
|
|
|
%if 0%{?suse_version} > 1320
|
|
|
|
%ifarch i586
|
|
|
|
mk_add_options MOZ_MAKE_FLAGS=-j1
|
|
|
|
%else
|
2007-01-15 23:49:32 +01:00
|
|
|
mk_add_options MOZ_MAKE_FLAGS=%{?jobs:-j%jobs}
|
2016-04-30 15:53:52 +02:00
|
|
|
%endif
|
|
|
|
%endif
|
2014-07-28 15:29:31 +02:00
|
|
|
mk_add_options MOZ_OBJDIR=$RPM_BUILD_DIR/obj
|
2018-08-06 16:26:01 +02:00
|
|
|
ac_add_options --enable-application=comm/mail
|
2015-06-21 13:26:59 +02:00
|
|
|
ac_add_options --enable-calendar
|
2007-01-15 23:49:32 +01:00
|
|
|
ac_add_options --prefix=%{_prefix}
|
2009-07-21 12:08:52 +02:00
|
|
|
ac_add_options --libdir=%{progdir}
|
2007-01-15 23:49:32 +01:00
|
|
|
ac_add_options --includedir=%{_includedir}
|
2009-07-21 12:08:52 +02:00
|
|
|
ac_add_options --disable-tests
|
|
|
|
ac_add_options --disable-debug
|
2017-04-17 14:52:44 +02:00
|
|
|
ac_add_options --enable-alsa
|
2017-06-01 08:10:49 +02:00
|
|
|
# gcc7 (boo#104105)
|
|
|
|
%if 0%{?suse_version} > 1320
|
|
|
|
ac_add_options --enable-optimize="-g -O2"
|
|
|
|
%endif
|
2018-08-06 16:26:01 +02:00
|
|
|
%ifarch %ix86 %arm
|
2017-06-01 08:10:49 +02:00
|
|
|
%if 0%{?suse_version} > 1230
|
2018-08-06 16:26:01 +02:00
|
|
|
#ac_add_options --disable-optimize
|
2017-06-01 08:10:49 +02:00
|
|
|
%endif
|
|
|
|
%endif
|
2018-08-06 16:26:01 +02:00
|
|
|
%ifarch %arm
|
|
|
|
ac_add_options --disable-elf-hack
|
|
|
|
%endif
|
|
|
|
%ifarch x86_64
|
|
|
|
%if 0%{?suse_version} >= 1550
|
|
|
|
ac_add_options --disable-elf-hack
|
2017-03-18 22:27:55 +01:00
|
|
|
%endif
|
2018-08-06 16:26:01 +02:00
|
|
|
%endif
|
|
|
|
ac_add_options --enable-default-toolkit=cairo-gtk3
|
2018-08-15 11:38:21 +02:00
|
|
|
%if 0%{?suse_version} >= 1550
|
|
|
|
ac_add_options --disable-gconf
|
|
|
|
%endif
|
2009-07-21 12:08:52 +02:00
|
|
|
ac_add_options --with-system-nspr
|
|
|
|
ac_add_options --with-system-nss
|
2007-01-15 23:49:32 +01:00
|
|
|
ac_add_options --with-system-jpeg
|
|
|
|
ac_add_options --with-system-zlib
|
2011-06-28 20:42:13 +02:00
|
|
|
ac_add_options --with-l10n-base=$RPM_BUILD_DIR/l10n
|
2009-12-08 13:41:27 +01:00
|
|
|
ac_add_options --disable-updater
|
2009-07-21 12:08:52 +02:00
|
|
|
#ac_add_options --with-system-png # no apng support
|
2018-08-06 16:26:01 +02:00
|
|
|
#ac_add_options --enable-system-hunspell
|
2009-07-21 12:08:52 +02:00
|
|
|
ac_add_options --enable-startup-notification
|
|
|
|
ac_add_options --enable-official-branding
|
2010-07-24 17:36:48 +02:00
|
|
|
ac_add_options --disable-necko-wifi
|
2012-04-20 23:16:28 +02:00
|
|
|
ac_add_options --enable-update-channel=%{update_channel}
|
2007-01-15 23:49:32 +01:00
|
|
|
%if %has_system_cairo
|
|
|
|
ac_add_options --enable-system-cairo
|
|
|
|
%endif
|
2010-07-24 17:36:48 +02:00
|
|
|
%if ! %crashreporter
|
|
|
|
ac_add_options --disable-crashreporter
|
|
|
|
%endif
|
2016-01-19 11:28:29 +01:00
|
|
|
%if %{with mozilla_tb_valgrind}
|
|
|
|
ac_add_options --disable-jemalloc
|
|
|
|
ac_add_options --enable-valgrind
|
|
|
|
%endif
|
2014-07-28 15:29:31 +02:00
|
|
|
EOF
|
2018-08-06 16:26:01 +02:00
|
|
|
./mach build
|
2007-01-15 23:49:32 +01:00
|
|
|
|
|
|
|
%install
|
2014-07-28 15:29:31 +02:00
|
|
|
cd $RPM_BUILD_DIR/obj
|
2018-08-06 16:26:01 +02:00
|
|
|
make -C comm/mail/installer STRIP=/bin/true MOZ_PKG_FATAL_WARNINGS=0
|
2007-01-15 23:49:32 +01:00
|
|
|
# copy tree into RPM_BUILD_ROOT
|
2018-07-02 15:49:36 +02:00
|
|
|
mkdir -p %{buildroot}%{progdir}
|
2015-06-21 13:26:59 +02:00
|
|
|
cp -rf $RPM_BUILD_DIR/obj/dist/thunderbird/* \
|
2018-07-02 15:49:36 +02:00
|
|
|
%{buildroot}%{progdir}
|
2016-01-19 11:28:29 +01:00
|
|
|
%if %{with mozilla_tb_kde4}
|
2012-03-14 08:47:37 +01:00
|
|
|
# install kde.js
|
2018-07-02 15:49:36 +02:00
|
|
|
install -m 644 %{SOURCE12} %{buildroot}%{progdir}/defaults/pref/kde.js
|
2012-03-14 08:47:37 +01:00
|
|
|
# make sure that instantApply is true by default
|
|
|
|
# (TODO: mozilla-kde.patch needs to be improved to really not load kde.js in non-KDE envs)
|
2018-07-02 15:49:36 +02:00
|
|
|
echo 'pref("browser.preferences.instantApply", true);' > %{buildroot}%{progdir}/defaults/pref/all-thunderbird.js
|
2012-03-14 08:47:37 +01:00
|
|
|
%endif
|
2007-01-15 23:49:32 +01:00
|
|
|
# build additional locales
|
|
|
|
%if %localize
|
2018-07-02 15:49:36 +02:00
|
|
|
truncate -s 0 %{_tmppath}/translations.{common,other}
|
2018-08-06 16:26:01 +02:00
|
|
|
sed -r '/^(ja-JP-mac|en-US|$)/d;s/ .*$//' $RPM_BUILD_DIR/thunderbird-%{version}/comm/mail/locales/shipped-locales \
|
2018-07-02 15:49:36 +02:00
|
|
|
| xargs -P 8 -n 1 -I {} /bin/sh -c '
|
|
|
|
locale=$1
|
2011-06-28 20:42:13 +02:00
|
|
|
pushd $RPM_BUILD_DIR/compare-locales
|
|
|
|
PYTHONPATH=lib \
|
|
|
|
scripts/compare-locales -m ../l10n-merged/$locale \
|
2018-08-06 16:26:01 +02:00
|
|
|
../thunderbird-%{version}/comm/mail/locales/l10n.ini ../l10n $locale
|
2011-06-28 20:42:13 +02:00
|
|
|
popd
|
|
|
|
LOCALE_MERGEDIR=$RPM_BUILD_DIR/l10n-merged/$locale \
|
2018-08-06 16:26:01 +02:00
|
|
|
make -C comm/mail/locales langpack-$locale
|
2015-06-21 13:26:59 +02:00
|
|
|
cp -rL dist/xpi-stage/locale-$locale \
|
2018-07-02 15:49:36 +02:00
|
|
|
%{buildroot}%{progdir}/extensions/langpack-$locale@thunderbird.mozilla.org
|
2011-06-28 20:42:13 +02:00
|
|
|
# remove prefs and profile defaults from langpack
|
2018-07-02 15:49:36 +02:00
|
|
|
rm -rf %{buildroot}%{progdir}/extensions/langpack-$locale@thunderbird.mozilla.org/defaults
|
2009-08-10 18:18:59 +02:00
|
|
|
# check against the fixed common list and sort into the right filelist
|
|
|
|
_matched=0
|
2013-09-16 17:36:59 +02:00
|
|
|
for _match in ar ca cs da de el en-GB es-AR es-CL es-ES fi fr hu it ja ko nb-NO nl pl pt-BR pt-PT ru sv-SE zh-CN zh-TW; do
|
2009-08-10 18:18:59 +02:00
|
|
|
[ "$_match" = "$locale" ] && _matched=1
|
|
|
|
done
|
|
|
|
[ $_matched -eq 1 ] && _l10ntarget=common || _l10ntarget=other
|
2011-06-28 20:42:13 +02:00
|
|
|
echo %{progdir}/extensions/langpack-$locale@thunderbird.mozilla.org \
|
|
|
|
>> %{_tmppath}/translations.$_l10ntarget
|
2018-07-02 15:49:36 +02:00
|
|
|
' -- {}
|
2007-01-15 23:49:32 +01:00
|
|
|
%endif
|
|
|
|
# overwrite the mozilla start-script and link it to /usr/bin
|
2018-07-02 15:49:36 +02:00
|
|
|
mkdir --parents %{buildroot}%{_bindir}/
|
2007-01-15 23:49:32 +01:00
|
|
|
sed "s:%%PREFIX:%{_prefix}:g
|
|
|
|
s:%%PROGDIR:%{progdir}:g
|
2009-07-21 12:08:52 +02:00
|
|
|
s:%%APPNAME:thunderbird:g
|
2007-01-15 23:49:32 +01:00
|
|
|
s:%%PROFILE:.thunderbird:g" \
|
2018-07-02 15:49:36 +02:00
|
|
|
%{SOURCE3} > %{buildroot}%{progdir}/%{progname}.sh
|
|
|
|
chmod 755 %{buildroot}%{progdir}/%{progname}.sh
|
|
|
|
ln -sf ../..%{progdir}/%{progname}.sh %{buildroot}%{_bindir}/%{progname}
|
2007-01-15 23:49:32 +01:00
|
|
|
# freedesktop definition
|
2018-07-02 15:49:36 +02:00
|
|
|
mkdir -p %{buildroot}%{_datadir}/applications
|
2007-01-15 23:49:32 +01:00
|
|
|
install -m 644 %{SOURCE1} \
|
2018-07-02 15:49:36 +02:00
|
|
|
%{buildroot}%{_datadir}/applications/%{desktop_file_name}.desktop
|
2014-10-14 23:45:11 +02:00
|
|
|
# appdata
|
2018-07-02 15:49:36 +02:00
|
|
|
mkdir -p %{buildroot}%{_datadir}/appdata
|
|
|
|
cp %{SOURCE9} %{buildroot}%{_datadir}/appdata/%{desktop_file_name}.appdata.xml
|
2007-01-15 23:49:32 +01:00
|
|
|
# apply SUSE defaults
|
2010-04-12 07:11:02 +02:00
|
|
|
sed -e 's,RPM_VERSION,%{mainversion},g
|
2007-01-15 23:49:32 +01:00
|
|
|
s,GSSAPI,%{libgssapi},g' \
|
|
|
|
%{SOURCE6} > suse-default-prefs
|
2018-07-02 15:49:36 +02:00
|
|
|
cp suse-default-prefs %{buildroot}%{progdir}/defaults/pref/all-opensuse.js
|
2007-01-15 23:49:32 +01:00
|
|
|
rm suse-default-prefs
|
|
|
|
# use correct locale for useragent
|
2018-07-02 15:49:36 +02:00
|
|
|
cat > %{buildroot}%{progdir}/defaults/pref/all-l10n.js << EOF
|
2007-01-15 23:49:32 +01:00
|
|
|
pref("general.useragent.locale", "chrome://global/locale/intl.properties");
|
|
|
|
EOF
|
2008-10-23 22:52:20 +02:00
|
|
|
# remove spurious executable bits
|
2018-07-02 15:49:36 +02:00
|
|
|
find %{buildroot}%{_libdir}/%{progname} \
|
2011-11-21 22:58:20 +01:00
|
|
|
-name "*.js" -o \
|
|
|
|
-name "*.jsm" -o \
|
|
|
|
-name "*.rdf" -o \
|
|
|
|
-name "*.properties" -o \
|
2011-12-20 09:05:23 +01:00
|
|
|
-name "*.dtd" -o \
|
2018-07-02 15:49:36 +02:00
|
|
|
-name "*.css" \
|
|
|
|
-exec chmod a-x {} +
|
2012-11-23 11:34:29 +01:00
|
|
|
# remove mkdir.done files from installed base
|
2018-07-02 14:10:40 +02:00
|
|
|
find $RPM_BUILD_ROOT%{progdir} -type f -name ".mkdir.done" -delete -print
|
2008-10-23 22:52:20 +02:00
|
|
|
#
|
2018-08-06 16:26:01 +02:00
|
|
|
for size in 16 22 24 32 48 64 128; do
|
2018-07-02 15:49:36 +02:00
|
|
|
mkdir -p %{buildroot}%{_datadir}/icons/hicolor/${size}x${size}/apps/
|
2016-05-17 08:38:09 +02:00
|
|
|
cp %{buildroot}%{progdir}/chrome/icons/default/default$size.png \
|
|
|
|
%{buildroot}%{_datadir}/icons/hicolor/${size}x${size}/apps/%{progname}.png
|
2009-07-21 12:08:52 +02:00
|
|
|
done
|
2011-01-13 14:15:29 +01:00
|
|
|
%suse_update_desktop_file %{desktop_file_name} Network Email GTK
|
2009-07-29 01:23:56 +02:00
|
|
|
# excluded files
|
2018-07-02 15:49:36 +02:00
|
|
|
rm -f %{buildroot}%{progdir}/thunderbird
|
|
|
|
rm -f %{buildroot}%{progdir}/removed-files
|
|
|
|
rm -f %{buildroot}%{progdir}/precomplete
|
|
|
|
rm -f %{buildroot}%{progdir}/updater
|
|
|
|
rm -f %{buildroot}%{progdir}/updater.ini
|
|
|
|
rm -f %{buildroot}%{progdir}/update.locale
|
|
|
|
rm -f %{buildroot}%{progdir}/dictionaries/en-US*
|
|
|
|
rm -f %{buildroot}%{progdir}/nspr-config
|
2007-09-10 12:43:39 +02:00
|
|
|
# Some sites use different partitions for /usr/(lib|lib64) and /usr/share. Since you
|
|
|
|
# can't create hardlinks across partitions, we'll do this more than once.
|
2018-07-02 15:49:36 +02:00
|
|
|
%fdupes %{buildroot}%{progdir}
|
|
|
|
%fdupes %{buildroot}%{_libdir}/mozilla
|
|
|
|
%fdupes %{buildroot}%{_datadir}
|
2010-07-24 17:36:48 +02:00
|
|
|
%if %crashreporter
|
|
|
|
SYMBOLS_NAME="thunderbird-%{mainversion}-%{release}.%{_arch}-%{suse_version}-symbols"
|
|
|
|
make buildsymbols \
|
|
|
|
SYMBOL_INDEX_NAME="$SYMBOLS_NAME.txt" \
|
|
|
|
SYMBOL_ARCHIVE_BASENAME="$SYMBOLS_NAME"
|
2015-06-21 13:26:59 +02:00
|
|
|
if [ -e dist/*symbols.zip ]; then
|
2018-07-02 15:49:36 +02:00
|
|
|
mkdir -p %{buildroot}%{_datadir}/mozilla/
|
|
|
|
cp dist/*symbols.zip %{buildroot}%{_datadir}/mozilla/
|
2010-07-24 17:36:48 +02:00
|
|
|
fi
|
|
|
|
%endif
|
2007-01-15 23:49:32 +01:00
|
|
|
|
|
|
|
%clean
|
2018-07-02 15:49:36 +02:00
|
|
|
rm -rf %{buildroot}
|
2009-08-10 18:18:59 +02:00
|
|
|
%if %localize
|
|
|
|
rm -rf %{_tmppath}/translations.*
|
|
|
|
%endif
|
2007-01-15 23:49:32 +01:00
|
|
|
|
|
|
|
%post
|
2011-11-09 14:17:12 +01:00
|
|
|
%icon_theme_cache_post
|
2009-07-21 12:08:52 +02:00
|
|
|
exit 0
|
|
|
|
|
2011-11-09 14:17:12 +01:00
|
|
|
%postun
|
|
|
|
%icon_theme_cache_postun
|
|
|
|
exit 0
|
|
|
|
|
2007-01-15 23:49:32 +01:00
|
|
|
%files
|
|
|
|
%defattr(-,root,root)
|
|
|
|
%attr(755,root,root) %{progdir}/%{progname}.sh
|
|
|
|
%dir %{progdir}
|
2009-07-21 12:08:52 +02:00
|
|
|
%{progdir}/application.ini
|
2010-10-20 00:30:24 +02:00
|
|
|
%{progdir}/blocklist.xml
|
2017-03-18 22:27:55 +01:00
|
|
|
%{progdir}/chrome.manifest
|
2012-06-06 08:41:25 +02:00
|
|
|
%{progdir}/dependentlibs.list
|
2017-03-18 22:27:55 +01:00
|
|
|
%{progdir}/fonts/
|
2017-04-02 23:31:26 +02:00
|
|
|
%dir %{progdir}/gtk2
|
|
|
|
%{progdir}/gtk2/libmozgtk.so
|
2011-06-28 20:42:13 +02:00
|
|
|
%{progdir}/*.so
|
2012-02-01 15:14:46 +01:00
|
|
|
%{progdir}/omni.ja
|
2018-09-12 11:58:10 +02:00
|
|
|
%if %crashreporter
|
2018-08-06 16:26:01 +02:00
|
|
|
%{progdir}/minidump-analyzer
|
2018-09-12 11:58:10 +02:00
|
|
|
%endif
|
2018-08-06 16:26:01 +02:00
|
|
|
%{progdir}/pingsender
|
2009-07-21 12:08:52 +02:00
|
|
|
%{progdir}/platform.ini
|
2011-06-28 20:42:13 +02:00
|
|
|
%{progdir}/plugin-container
|
2007-01-15 23:49:32 +01:00
|
|
|
%{progdir}/thunderbird-bin
|
2010-07-24 17:36:48 +02:00
|
|
|
# crashreporter files
|
|
|
|
%if %crashreporter
|
|
|
|
%{progdir}/crashreporter
|
|
|
|
%{progdir}/crashreporter.ini
|
|
|
|
%{progdir}/Throbber-small.gif
|
|
|
|
%endif
|
2007-01-15 23:49:32 +01:00
|
|
|
%dir %{progdir}/chrome/
|
|
|
|
%{progdir}/chrome/icons/
|
2009-07-21 12:08:52 +02:00
|
|
|
%dir %{progdir}/dictionaries/
|
2015-06-21 13:26:59 +02:00
|
|
|
%{progdir}/distribution/
|
2007-01-15 23:49:32 +01:00
|
|
|
%{progdir}/defaults/
|
2011-06-28 20:42:13 +02:00
|
|
|
%dir %{progdir}/extensions/
|
2016-04-30 15:53:52 +02:00
|
|
|
%{progdir}/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}.xpi
|
2007-06-14 00:42:39 +02:00
|
|
|
%{progdir}/isp/
|
2014-10-14 23:45:11 +02:00
|
|
|
%{_datadir}/appdata/
|
2011-01-13 14:15:29 +01:00
|
|
|
%{_datadir}/applications/%{desktop_file_name}.desktop
|
2009-07-21 12:08:52 +02:00
|
|
|
%{_datadir}/icons/hicolor/*/apps/%{progname}.png
|
2007-01-15 23:49:32 +01:00
|
|
|
%{_bindir}/%{progname}
|
|
|
|
|
2010-07-24 17:36:48 +02:00
|
|
|
%if %localize
|
2009-08-10 18:18:59 +02:00
|
|
|
%files translations-common -f %{_tmppath}/translations.common
|
|
|
|
%defattr(-,root,root)
|
|
|
|
|
|
|
|
%files translations-other -f %{_tmppath}/translations.other
|
2007-01-15 23:49:32 +01:00
|
|
|
%defattr(-,root,root)
|
|
|
|
%endif
|
2008-01-18 19:28:32 +01:00
|
|
|
|
2010-07-24 17:36:48 +02:00
|
|
|
%if %crashreporter
|
|
|
|
%files buildsymbols
|
|
|
|
%defattr(-,root,root)
|
|
|
|
%{_datadir}/mozilla/
|
|
|
|
%endif
|
|
|
|
|
2007-03-08 19:54:29 +01:00
|
|
|
%changelog
|