[thunderbird] Update to 9.0
Jan Horak
xhorak at fedoraproject.org
Tue Dec 20 12:10:14 UTC 2011
commit 3bac5786de70229d3768fd1763fb9fe59a47f8af
Author: Jan Horak <jhorak at redhat.com>
Date: Tue Dec 20 13:10:09 2011 +0100
Update to 9.0
.gitignore | 2 +
mozilla-670719.patch | 53 --------------------------------
mozilla-696393.patch | 58 ++++++++++++++---------------------
sources | 4 +-
thunderbird.spec | 40 +++++++++++++++++-------
xulrunner-6.0-secondary-ipc.patch | 60 -------------------------------------
xulrunner-9.0-secondary-ipc.patch | 60 +++++++++++++++++++++++++++++++++++++
xulrunner-install.patch | 12 -------
8 files changed, 115 insertions(+), 174 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index add0d8f..0db5706 100644
--- a/.gitignore
+++ b/.gitignore
@@ -30,3 +30,5 @@ thunderbird-langpacks-3.1.2-20100803.tar.bz2
/thunderbird-langpacks-7.0.1-20110930.tar.xz
/thunderbird-8.0.source.tar.bz2
/thunderbird-langpacks-8.0-20111108.tar.xz
+/thunderbird-9.0.source.tar.bz2
+/thunderbird-langpacks-9.0-20111220.tar.xz
diff --git a/mozilla-696393.patch b/mozilla-696393.patch
index 66614ac..8859d97 100644
--- a/mozilla-696393.patch
+++ b/mozilla-696393.patch
@@ -1,7 +1,7 @@
-diff -up mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp.696393 mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp
---- mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp.696393 2011-11-04 17:34:23.000000000 -0400
-+++ mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp 2011-12-01 12:25:09.947558444 -0500
-@@ -200,56 +200,22 @@ invoke_copy_to_stack(PRUint32 paramCount
+diff -up xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp.696393 xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp
+--- xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp.696393 2011-12-07 07:28:08.000000000 +0100
++++ xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp 2011-12-09 15:06:10.584998410 +0100
+@@ -200,52 +200,21 @@ invoke_copy_to_stack(PRUint32 paramCount
}
}
@@ -12,22 +12,12 @@ diff -up mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390
PRUint32 paramCount, nsXPTCVariant* params)
{
- PRUint32 *vtable = *(PRUint32 **)that;
--#if defined(__GXX_ABI_VERSION) && __GXX_ABI_VERSION >= 100 /* G++ V3 ABI */
- PRUint32 method = vtable[methodIndex];
--#else /* not G++ V3 ABI */
-- PRUint32 method = vtable[methodIndex + 2];
--#endif /* G++ V3 ABI */
+ vtable_func *vtable = *reinterpret_cast<vtable_func **>(that);
+ vtable_func method = vtable[methodIndex];
PRUint32 overflow = invoke_count_words (paramCount, params);
- PRUint32 result;
-+ PRUint32 *stack_space = reinterpret_cast<PRUint32 *>(__builtin_alloca((overflow + 8 /* 4 32-bits gpr + 2 64-bits fpr */) * 4));
-+
-+ invoke_copy_to_stack(paramCount, params, stack_space, overflow);
-+
-+ PRUint32 *d_gpr = stack_space + overflow;
-+ double *d_fpr = reinterpret_cast<double *>(d_gpr + 4);
-
+-
- __asm__ __volatile__
- (
- "lr 7,15\n\t"
@@ -39,19 +29,23 @@ diff -up mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390
- "l 2,0(15)\n\t"
- "la 15,0(3,7)\n\t"
- "st 2,0(15)\n\t"
--
++ PRUint32 *stack_space = reinterpret_cast<PRUint32 *>(__builtin_alloca((overflow + 8 /* 4 32-bits gpr + 2 64-bits fpr */) * 4));
+
- "lr 2,%1\n\t"
- "lr 3,%2\n\t"
- "la 4,96(15)\n\t"
- "lr 5,%3\n\t"
- "basr 14,%4\n\t"
--
++ invoke_copy_to_stack(paramCount, params, stack_space, overflow);
+
- "lr 2,%5\n\t"
- "ld 0,112(7)\n\t"
- "ld 2,120(7)\n\t"
- "lm 3,6,96(7)\n\t"
- "basr 14,%6\n\t"
--
++ PRUint32 *d_gpr = stack_space + overflow;
++ double *d_fpr = reinterpret_cast<double *>(d_gpr + 4);
+
- "la 15,32(7)\n\t"
-
- "lr %0,2\n\t"
@@ -68,11 +62,11 @@ diff -up mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390
- return result;
+ return method(that, d_gpr[0], d_gpr[1], d_gpr[2], d_gpr[3], d_fpr[0], d_fpr[1]);
}
-
-diff -up mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp.696393 mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp
---- mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp.696393 2011-11-04 17:34:23.000000000 -0400
-+++ mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp 2011-12-02 09:33:06.717556519 -0500
-@@ -194,59 +194,23 @@ invoke_copy_to_stack(PRUint32 paramCount
+-
+diff -up xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp.696393 xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp
+--- xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp.696393 2011-12-07 07:28:08.000000000 +0100
++++ xulrunner-9.0/mozilla-beta/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp 2011-12-09 15:07:07.609097348 +0100
+@@ -194,55 +194,22 @@ invoke_copy_to_stack(PRUint32 paramCount
}
}
@@ -83,11 +77,7 @@ diff -up mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390
PRUint32 paramCount, nsXPTCVariant* params)
{
- PRUint64 *vtable = *(PRUint64 **)that;
--#if defined(__GXX_ABI_VERSION) && __GXX_ABI_VERSION >= 100 /* G++ V3 ABI */
- PRUint64 method = vtable[methodIndex];
--#else /* not G++ V3 ABI */
-- PRUint64 method = vtable[methodIndex + 2];
--#endif /* G++ V3 ABI */
+ vtable_func *vtable = *reinterpret_cast<vtable_func **>(that);
+ vtable_func method = vtable[methodIndex];
PRUint64 overflow = invoke_count_words (paramCount, params);
@@ -111,7 +101,8 @@ diff -up mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390
- "la 4,160(15)\n\t"
- "lgr 5,%3\n\t"
- "basr 14,%4\n\t"
--
++ invoke_copy_to_stack(paramCount, params, stack_space, overflow);
+
- "lgr 2,%5\n\t"
- "ld 0,192(7)\n\t"
- "ld 2,200(7)\n\t"
@@ -119,7 +110,9 @@ diff -up mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390
- "ld 6,216(7)\n\t"
- "lmg 3,6,160(7)\n\t"
- "basr 14,%6\n\t"
--
++ PRUint64 *d_gpr = stack_space + overflow;
++ double *d_fpr = reinterpret_cast<double *>(d_gpr + 4);
+
- "la 15,64(7)\n\t"
-
- "lgr %0,2\n\t"
@@ -135,11 +128,6 @@ diff -up mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390
- );
-
- return result;
-+ invoke_copy_to_stack(paramCount, params, stack_space, overflow);
-+
-+ PRUint64 *d_gpr = stack_space + overflow;
-+ double *d_fpr = reinterpret_cast<double *>(d_gpr + 4);
-+
+ return method(that, d_gpr[0], d_gpr[1], d_gpr[2], d_gpr[3], d_fpr[0], d_fpr[1], d_fpr[2], d_fpr[3]);
}
-
+-
diff --git a/sources b/sources
index dcbc173..3159abc 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-332f60036aebdce7dec6ee2b1af4941d thunderbird-8.0.source.tar.bz2
-6bffd9152416e3ddb52afc51269cefcc thunderbird-langpacks-8.0-20111108.tar.xz
+d558b457d439fd0d86e23543f0cc30ba thunderbird-9.0.source.tar.bz2
+394af2d9c73460843e0be77aa9619e1b thunderbird-langpacks-9.0-20111220.tar.xz
diff --git a/thunderbird.spec b/thunderbird.spec
index 5a5b552..8d6ca6b 100644
--- a/thunderbird.spec
+++ b/thunderbird.spec
@@ -1,12 +1,18 @@
-%define nspr_version 4.8
-%define nss_version 3.12.10
+%define nspr_version 4.8.8
+%define nss_version 3.13.1
%define cairo_version 1.8.8
%define freetype_version 2.1.9
-%define sqlite_version 3.6.14
+%define sqlite_version 3.7.7.1
%define libnotify_version 0.4
%define build_langpacks 1
%define thunderbird_app_id \{3550f703-e582-4d05-9a08-453d09bdfdc6\}
+%if 0%{?fedora} <= 15
+%define system_sqlite 0
+%else
+%define system_sqlite 1
+%endif
+
# The tarball is pretty inconsistent with directory structure.
# Sometimes there is a top level directory. That goes here.
#
@@ -26,8 +32,8 @@
Summary: Mozilla Thunderbird mail/newsgroup client
Name: thunderbird
-Version: 8.0
-Release: 4%{?dist}
+Version: 9.0
+Release: 1%{?dist}
URL: http://www.mozilla.org/projects/thunderbird/
License: MPLv1.1 or GPLv2+ or LGPLv2+
Group: Applications/Internet
@@ -38,7 +44,7 @@ Group: Applications/Internet
%endif
Source0: %{tarball}
%if %{build_langpacks}
-Source1: thunderbird-langpacks-%{version}-20111108.tar.xz
+Source1: thunderbird-langpacks-%{version}-20111220.tar.xz
%endif
Source10: thunderbird-mozconfig
Source11: thunderbird-mozconfig-branded
@@ -51,14 +57,12 @@ Source100: find-external-requires
# Mozilla (XULRunner) patches
Patch0: thunderbird-install-dir.patch
Patch7: crashreporter-remove-static.patch
-Patch8: xulrunner-6.0-secondary-ipc.patch
-Patch9: mozilla-670719.patch
+Patch8: xulrunner-9.0-secondary-ipc.patch
Patch10: xulrunner-2.0-network-link-service.patch
Patch11: xulrunner-2.0-NetworkManager09.patch
Patch12: mozilla-696393.patch
# Build patches
-Patch100: xulrunner-install.patch
# Linux specific
Patch200: thunderbird-8.0-enable-addons.patch
@@ -91,7 +95,9 @@ BuildRequires: freetype-devel >= %{freetype_version}
BuildRequires: libXt-devel
BuildRequires: libXrender-devel
BuildRequires: hunspell-devel
+%if %{?system_sqlite}
BuildRequires: sqlite-devel >= %{sqlite_version}
+%endif
BuildRequires: startup-notification-devel
BuildRequires: alsa-lib-devel
BuildRequires: autoconf213
@@ -102,7 +108,9 @@ BuildRequires: mesa-libGL-devel
Requires: mozilla-filesystem
Requires: nspr >= %{nspr_version}
Requires: nss >= %{nss_version}
+%if %{?system_sqlite}
Requires: sqlite >= %{sqlite_version}
+%endif
AutoProv: 0
%define _use_internal_dependency_generator 0
@@ -140,11 +148,9 @@ cd %{tarballdir}
cd mozilla
%patch7 -p2 -b .static
%patch8 -p2 -b .secondary-ipc
-%patch9 -p1 -b .moz670719
%patch10 -p1 -b .link-service
%patch11 -p1 -b .NetworkManager09
-%patch12 -p1 -b .696393
-%patch100 -p2 -b .install
+%patch12 -p2 -b .696393
cd ..
%patch200 -p1 -b .addons
@@ -166,6 +172,12 @@ cd ..
%{__cat} %{SOURCE13} >> .mozconfig
%endif
+%if %{?system_sqlite}
+echo "ac_add_options --enable-system-sqlite" >> .mozconfig
+%else
+echo "ac_add_options --disable-system-sqlite" >> .mozconfig
+%endif
+
#===============================================================================
%build
@@ -348,10 +360,14 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%exclude %{_includedir}/%{name}-%{version}
%exclude %{_libdir}/%{name}-devel-%{version}
%{mozappdir}/chrome.manifest
+%{mozappdir}/distribution/extensions
#===============================================================================
%changelog
+* Tue Dec 20 2011 Jan Horak <jhorak at redhat.com> - 9.0-1
+- Update to 9.0
+
* Fri Dec 9 2011 Martin Stransky <stransky at redhat.com> - 8.0-4
- enabled gio support (#760644)
diff --git a/xulrunner-9.0-secondary-ipc.patch b/xulrunner-9.0-secondary-ipc.patch
new file mode 100644
index 0000000..40ecfd5
--- /dev/null
+++ b/xulrunner-9.0-secondary-ipc.patch
@@ -0,0 +1,60 @@
+diff -up xulrunner-9.0/mozilla-beta/ipc/chromium/src/base/data_pack.cc.secondary-ipc xulrunner-9.0/mozilla-beta/ipc/chromium/src/base/data_pack.cc
+--- xulrunner-9.0/mozilla-beta/ipc/chromium/src/base/data_pack.cc.secondary-ipc 2011-12-07 07:27:43.000000000 +0100
++++ xulrunner-9.0/mozilla-beta/ipc/chromium/src/base/data_pack.cc 2011-12-09 14:35:50.397220865 +0100
+@@ -91,14 +91,7 @@ bool DataPack::Load(const FilePath& path
+ bool DataPack::Get(uint32_t resource_id, StringPiece* data) {
+ // It won't be hard to make this endian-agnostic, but it's not worth
+ // bothering to do right now.
+-#if defined(__BYTE_ORDER)
+- // Linux check
+- COMPILE_ASSERT(__BYTE_ORDER == __LITTLE_ENDIAN,
+- datapack_assumes_little_endian);
+-#elif defined(__BIG_ENDIAN__)
+- // Mac check
+- #error DataPack assumes little endian
+-#endif
++#warning DoTheRightThingMakingThisEndianAgnostic!
+
+ DataPackEntry* target = reinterpret_cast<DataPackEntry*>(
+ bsearch(&resource_id, mmap_->data() + kHeaderLength, resource_count_,
+diff -up xulrunner-9.0/mozilla-beta/ipc/chromium/src/build/build_config.h.secondary-ipc xulrunner-9.0/mozilla-beta/ipc/chromium/src/build/build_config.h
+--- xulrunner-9.0/mozilla-beta/ipc/chromium/src/build/build_config.h.secondary-ipc 2011-12-07 07:27:43.000000000 +0100
++++ xulrunner-9.0/mozilla-beta/ipc/chromium/src/build/build_config.h 2011-12-09 14:39:44.922231601 +0100
+@@ -59,11 +59,23 @@
+ #define ARCH_CPU_ARMEL 1
+ #define ARCH_CPU_32_BITS 1
+ #define WCHAR_T_IS_UNSIGNED 1
++#elif defined(__powerpc64__)
++#define ARCH_CPU_PPC64 1
++#define ARCH_CPU_64_BITS 1
+ #elif defined(__ppc__) || defined(__powerpc__)
+ #define ARCH_CPU_PPC 1
+ #define ARCH_CPU_32_BITS 1
+-#elif defined(__sparc64__)
++#elif defined(__s390x__)
++#define ARCH_CPU_S390X 1
++#define ARCH_CPU_64_BITS 1
++#elif defined(__s390__)
++#define ARCH_CPU_S390 1
++#define ARCH_CPU_32_BITS 1
++#elif defined(__sparc__) && !defined(__arch64)
+ #define ARCH_CPU_SPARC 1
++#define ARCH_CPU_32_BITS 1
++#elif defined(__sparc__) && defined(__arch64)
++#define ARCH_CPU_SPARC64 1
+ #define ARCH_CPU_64_BITS 1
+ #else
+ #error Please add support for your architecture in build/build_config.h
+diff -up xulrunner-9.0/mozilla-beta/ipc/chromium/src/chrome/common/ipc_message_utils.h.secondary-ipc xulrunner-9.0/mozilla-beta/ipc/chromium/src/chrome/common/ipc_message_utils.h
+--- xulrunner-9.0/mozilla-beta/ipc/chromium/src/chrome/common/ipc_message_utils.h.secondary-ipc 2011-12-07 07:27:43.000000000 +0100
++++ xulrunner-9.0/mozilla-beta/ipc/chromium/src/chrome/common/ipc_message_utils.h 2011-12-09 14:40:59.602679278 +0100
+@@ -195,7 +195,8 @@ struct ParamTraits<unsigned long long> {
+ };
+ #endif
+
+-#if !(defined(OS_MACOSX) || defined(OS_OPENBSD) || defined(OS_WIN) || (defined(OS_LINUX) && defined(ARCH_CPU_64_BITS)))
++// Although s390 is a 32-bit system it defines size_t as unsigned long
++#if !(defined(OS_MACOSX) || defined(OS_OPENBSD) || defined(OS_WIN) || (defined(OS_LINUX) && (defined(ARCH_CPU_64_BITS) || defined(ARCH_CPU_S390))))
+ // There size_t is a synonym for |unsigned long| ...
+ template <>
+ struct ParamTraits<size_t> {
More information about the scm-commits
mailing list