summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemi Collet <fedora@famillecollet.com>2013-09-18 11:24:17 +0200
committerRemi Collet <fedora@famillecollet.com>2013-09-18 11:24:17 +0200
commit4744877a5b1eb955d091ac9cab9614763a2dc6fd (patch)
tree4e33938f62aa374926908e4cd083dc72f9598247
parent89561e4f60e97a24d6965a4c6eca9b2195ea400b (diff)
Thunderbird 24.0
-rw-r--r--mozilla-746112.patch86
-rw-r--r--mozilla-791626.patch46
-rw-r--r--mozilla-build-arm.patch12
-rw-r--r--rhbz-855923.patch19
-rw-r--r--rhbz-966424.patch6
-rw-r--r--thunderbird-enigmail.spec84
-rw-r--r--thunderbird-mozconfig3
-rw-r--r--xulrunner-16.0-jemalloc-ppc.patch14
-rw-r--r--xulrunner-24.0-jemalloc-ppc.patch12
9 files changed, 78 insertions, 204 deletions
diff --git a/mozilla-746112.patch b/mozilla-746112.patch
deleted file mode 100644
index 01f6e16..0000000
--- a/mozilla-746112.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-diff -up xulrunner-17.0/mozilla-beta/js/src/gc/Heap.h.746112 xulrunner-17.0/mozilla-beta/js/src/gc/Heap.h
---- xulrunner-17.0/mozilla-beta/js/src/gc/Heap.h.746112 2012-10-17 16:32:43.000000000 +0200
-+++ xulrunner-17.0/mozilla-beta/js/src/gc/Heap.h 2012-10-24 14:48:12.186640489 +0200
-@@ -103,26 +103,31 @@ struct Cell
- };
-
- /*
-- * Page size is 4096 by default, except for SPARC, where it is 8192.
-+ * Page size must be static to support our arena pointer optimizations, so we
-+ * are forced to support each platform with non-4096 pages as a special case.
-+ * Note: The freelist supports a maximum arena shift of 15.
- * Note: Do not use JS_CPU_SPARC here, this header is used outside JS.
- * Bug 692267: Move page size definition to gc/Memory.h and include it
- * directly once jsgc.h is no longer an installed header.
- */
- #if defined(SOLARIS) && (defined(__sparc) || defined(__sparcv9))
- const size_t PageShift = 13;
-+const size_t ArenaShift = PageShift;
-+#elif defined(__powerpc__)
-+const size_t PageShift = 16;
-+const size_t ArenaShift = 12;
- #else
- const size_t PageShift = 12;
-+const size_t ArenaShift = PageShift;
- #endif
- const size_t PageSize = size_t(1) << PageShift;
-+const size_t ArenaSize = size_t(1) << ArenaShift;
-+const size_t ArenaMask = ArenaSize - 1;
-
- const size_t ChunkShift = 20;
- const size_t ChunkSize = size_t(1) << ChunkShift;
- const size_t ChunkMask = ChunkSize - 1;
-
--const size_t ArenaShift = PageShift;
--const size_t ArenaSize = PageSize;
--const size_t ArenaMask = ArenaSize - 1;
--
- /*
- * This is the maximum number of arenas we allow in the FreeCommitted state
- * before we trigger a GC_SHRINK to release free arenas to the OS.
-diff -up xulrunner-17.0/mozilla-beta/js/src/jsgc.cpp.746112 xulrunner-17.0/mozilla-beta/js/src/jsgc.cpp
---- xulrunner-17.0/mozilla-beta/js/src/jsgc.cpp.746112 2012-10-17 16:32:44.000000000 +0200
-+++ xulrunner-17.0/mozilla-beta/js/src/jsgc.cpp 2012-10-24 14:46:28.253638095 +0200
-@@ -251,6 +251,13 @@ static const int BackgroundPhaseLength[]
- sizeof(BackgroundPhaseStrings) / sizeof(AllocKind)
- };
-
-+/* Unused memory decommiting requires the arena size match the page size. */
-+static bool
-+DecommitEnabled()
-+{
-+ return PageSize == ArenaSize;
-+}
-+
- #ifdef DEBUG
- void
- ArenaHeader::checkSynchronizedWithFreeList() const
-@@ -742,7 +749,8 @@ Chunk::fetchNextDecommittedArena()
- decommittedArenas.unset(offset);
-
- Arena *arena = &arenas[offset];
-- MarkPagesInUse(arena, ArenaSize);
-+ if (DecommitEnabled())
-+ MarkPagesInUse(arena, ArenaSize);
- arena->aheader.setAsNotAllocated();
-
- return &arena->aheader;
-@@ -2731,7 +2739,7 @@ DecommitArenasFromAvailableList(JSRuntim
- chunk->removeFromAvailableList();
-
- size_t arenaIndex = Chunk::arenaIndex(aheader->arenaAddress());
-- bool ok;
-+ bool ok = true;
- {
- /*
- * If the main thread waits for the decommit to finish, skip
-@@ -2741,7 +2749,8 @@ DecommitArenasFromAvailableList(JSRuntim
- Maybe<AutoUnlockGC> maybeUnlock;
- if (!rt->isHeapBusy())
- maybeUnlock.construct(rt);
-- ok = MarkPagesUnused(aheader->getArena(), ArenaSize);
-+ if (DecommitEnabled())
-+ ok = MarkPagesUnused(aheader->getArena(), ArenaSize);
- }
-
- if (ok) {
diff --git a/mozilla-791626.patch b/mozilla-791626.patch
deleted file mode 100644
index c2e77ab..0000000
--- a/mozilla-791626.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-# HG changeset patch
-# Parent 3523e7f7a89d7933c5f1dc8f5f22559b48ec44c4
-diff --git a/netwerk/base/src/nsIOService.cpp b/netwerk/base/src/nsIOService.cpp
---- a/netwerk/base/src/nsIOService.cpp
-+++ b/netwerk/base/src/nsIOService.cpp
-@@ -818,17 +818,18 @@ nsIOService::PrefsChanged(nsIPrefBranch
- if (NS_SUCCEEDED(rv)) {
- if (mSocketTransportService)
- mSocketTransportService->SetAutodialEnabled(enableAutodial);
- }
- }
-
- if (!pref || strcmp(pref, MANAGE_OFFLINE_STATUS_PREF) == 0) {
- bool manage;
-- if (NS_SUCCEEDED(prefs->GetBoolPref(MANAGE_OFFLINE_STATUS_PREF,
-+ if (mNetworkLinkServiceInitialized &&
-+ NS_SUCCEEDED(prefs->GetBoolPref(MANAGE_OFFLINE_STATUS_PREF,
- &manage)))
- SetManageOfflineStatus(manage);
- }
-
- if (!pref || strcmp(pref, NECKO_BUFFER_CACHE_COUNT_PREF) == 0) {
- int32_t count;
- if (NS_SUCCEEDED(prefs->GetIntPref(NECKO_BUFFER_CACHE_COUNT_PREF,
- &count)))
-@@ -928,16 +929,20 @@ nsIOService::Observe(nsISupports *subjec
- }
- else if (!strcmp(topic, kProfileDoChange)) {
- if (data && NS_LITERAL_STRING("startup").Equals(data)) {
- // Lazy initialization of network link service (see bug 620472)
- InitializeNetworkLinkService();
- // Set up the initilization flag regardless the actuall result.
- // If we fail here, we will fail always on.
- mNetworkLinkServiceInitialized = true;
-+ // And now reflect the preference setting
-+ nsCOMPtr<nsIPrefBranch> prefBranch;
-+ GetPrefBranch(getter_AddRefs(prefBranch));
-+ PrefsChanged(prefBranch, MANAGE_OFFLINE_STATUS_PREF);
- }
- }
- else if (!strcmp(topic, NS_XPCOM_SHUTDOWN_OBSERVER_ID)) {
- // Remember we passed XPCOM shutdown notification to prevent any
- // changes of the offline status from now. We must not allow going
- // online after this point.
- mShutdown = true;
-
diff --git a/mozilla-build-arm.patch b/mozilla-build-arm.patch
new file mode 100644
index 0000000..6e27f78
--- /dev/null
+++ b/mozilla-build-arm.patch
@@ -0,0 +1,12 @@
+diff -up xulrunner-24.0/mozilla-release/gfx/ycbcr/moz.build.neon xulrunner-24.0/mozilla-release/gfx/ycbcr/moz.build
+--- xulrunner-24.0/mozilla-release/gfx/ycbcr/moz.build.neon 2013-09-11 01:15:02.000000000 +0200
++++ xulrunner-24.0/mozilla-release/gfx/ycbcr/moz.build 2013-09-16 11:23:40.487028288 +0200
+@@ -61,7 +61,7 @@ else:
+ 'yuv_row_other.cpp',
+ ]
+
+-if CONFIG['OS_TEST'] == 'arm' and CONFIG['HAVE_ARM_NEON']:
++if CONFIG['HAVE_ARM_NEON']:
+ CPP_SOURCES += [
+ 'yuv_convert_arm.cpp',
+ ]
diff --git a/rhbz-855923.patch b/rhbz-855923.patch
deleted file mode 100644
index c6282b0..0000000
--- a/rhbz-855923.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Index: comm-release/mozilla/js/src/gc/Memory.cpp
-===================================================================
---- comm-release.orig/mozilla/js/src/gc/Memory.cpp
-+++ comm-release/mozilla/js/src/gc/Memory.cpp
-@@ -348,9 +348,14 @@ UnmapPages(void *p, size_t size)
- bool
- MarkPagesUnused(void *p, size_t size)
- {
-+// A workaround for Bug 746112 - endless loop on ppc64
-+#if !(defined(__powerpc__))
- JS_ASSERT(uintptr_t(p) % PageSize == 0);
- int result = madvise(p, size, MADV_DONTNEED);
- return result != -1;
-+#else
-+ return true;
-+#endif
- }
-
- bool
diff --git a/rhbz-966424.patch b/rhbz-966424.patch
index 37ddc6e..cfd6ca8 100644
--- a/rhbz-966424.patch
+++ b/rhbz-966424.patch
@@ -1,6 +1,6 @@
-diff --git a/toolkit/mozapps/shared/CertUtils.jsm b/toolkit/toolkit/mozapps/shared/CertUtils.jsm
---- a/toolkit/mozapps/shared/CertUtils.jsm
-+++ b/toolkit/mozapps/shared/CertUtils.jsm
+diff --git a/toolkit/module/CertUtils.jsm b/toolkit/toolkit/modules/CertUtils.jsm
+--- a/toolkit/modules/CertUtils.jsm
++++ b/toolkit/modules/CertUtils.jsm
@@ -170,17 +170,19 @@ this.checkCert =
issuerCert = issuerCert.QueryInterface(Ci.nsIX509Cert3);
var tokenNames = issuerCert.getAllTokenNames({});
diff --git a/thunderbird-enigmail.spec b/thunderbird-enigmail.spec
index f2affce..4400810 100644
--- a/thunderbird-enigmail.spec
+++ b/thunderbird-enigmail.spec
@@ -1,40 +1,46 @@
# Use system nspr/nss?
-%if 0%{?fedora} < 16 && 0%{?rhel} < 7
-%global system_nss 0
+%if 0%{?fedora} < 18
+%define system_nss 0
%else
-%global system_nss 1
+%define system_nss 1
%endif
-# Build as a debug package?
-%global debug_build 0
-
-# Use system Librairies ?
-%if 0%{?fedora} < 18 && 0%{?rhel} < 7
-%global system_sqlite 0
+%if 0%{?fedora} < 15
+%define system_vpx 0
%else
-%global system_sqlite 1
+%define system_vpx 1
%endif
-%if 0%{?fedora} < 15 && 0%{?rhel} < 7
-%global system_cairo 0
-%global system_vpx 0
+# Use system Librairies ?
+%if 0%{?fedora} < 19
+%define system_sqlite 0
+%define system_ffi 0
%else
-%global system_cairo 1
-%global system_vpx 1
+%define system_sqlite 1
+%define system_ffi 1
%endif
+# Use system libpeg (and libjpeg-turbo) ?
+%define system_jpeg 1
+
+# Use system cairo?
+%define system_cairo 0
+
+# Build as a debug package?
+%global debug_build 0
+
%global build_langpacks 1
%if %{?system_nss}
-%global nspr_version 4.9.2
-%global nss_version 3.13.6
+%global nspr_version 4.9.6
+%global nss_version 3.15
%endif
%if %{?system_cairo}
%global cairo_version 1.10.0
%endif
%global freetype_version 2.1.9
%if %{?system_sqlite}
-%global sqlite_version 3.7.13
+%global sqlite_version 3.7.17
%endif
%global libnotify_version 0.4
%if %{?system_vpx}
@@ -45,15 +51,14 @@
%global thunderbird_app_id \{3550f703-e582-4d05-9a08-453d09bdfdc6\}
%global enimail_app_id \{847b3a00-7ab1-11d4-8f02-006008948af5\}
-%global thunver 17.0.7
-%global thunmax 18.0
+%global thunver 24.0
# The tarball is pretty inconsistent with directory structure.
# Sometimes there is a top level directory. That goes here.
#
# IMPORTANT: If there is no top level directory, this should be
# set to the cwd, ie: '.'
-%global tarballdir comm-esr17
+%global tarballdir comm-esr24
%global official_branding 1
@@ -64,7 +69,7 @@
Summary: Authentication and encryption extension for Mozilla Thunderbird
Name: thunderbird-enigmail
Version: 1.5.2
-Release: 1%{?dist}
+Release: 2%{?dist}
URL: http://enigmail.mozdev.org/
# All files licensed under MPL 1.1/GPL 2.0/LGPL 2.1
License: MPLv1.1 or GPLv2+ or LGPLv2+
@@ -82,7 +87,7 @@ Source100: http://www.mozilla-enigmail.org/download/source/enigmail-%{versi
# Mozilla (XULRunner) patches
Patch0: thunderbird-install-dir.patch
Patch8: xulrunner-10.0-secondary-ipc.patch
-Patch9: mozilla-791626.patch
+Patch9: mozilla-build-arm.patch
# Build patches
Patch104: xulrunner-10.0-gcc47.patch
@@ -91,9 +96,7 @@ Patch104: xulrunner-10.0-gcc47.patch
Patch200: thunderbird-8.0-enable-addons.patch
# PPC fixes
-Patch300: xulrunner-16.0-jemalloc-ppc.patch
-Patch301: rhbz-855923.patch
-Patch302: mozilla-746112.patch
+Patch300: xulrunner-24.0-jemalloc-ppc.patch
# Fedora specific patches
Patch400: rhbz-966424.patch
@@ -140,6 +143,9 @@ BuildRequires: hunspell-devel
%if %{?system_sqlite}
BuildRequires: sqlite-devel >= %{sqlite_version}
%endif
+%if %{?system_ffi}
+BuildRequires: libffi-devel
+%endif
BuildRequires: startup-notification-devel
BuildRequires: alsa-lib-devel
BuildRequires: desktop-file-utils
@@ -163,7 +169,6 @@ AutoReq: 0
# All others deps already required by thunderbird
Requires: gnupg
Requires: thunderbird >= %{thunver}
-Conflicts: thunderbird >= %{thunmax}
# Nothing usefull provided
AutoProv: 0
@@ -184,15 +189,13 @@ cd %{tarballdir}
# Mozilla (XULRunner) patches
cd mozilla
%patch8 -p3 -b .secondary-ipc
-%patch9 -p1 -b .791626
+%patch9 -p2 -b .arm
%patch104 -p1 -b .gcc47
-%patch302 -p2 -b .746112
+%patch300 -p2 -b .852698
%patch400 -p1 -b .966424
cd ..
%patch200 -p1 -b .addons
-%patch300 -p1 -b .852698
-%patch301 -p1 -b .855923
%if %{official_branding}
# Required by Mozilla Corporation
@@ -205,12 +208,12 @@ cd ..
%{__rm} -f .mozconfig
cat %{SOURCE10} \
-%if ! %{system_cairo}
- | grep -v enable-system-cairo \
-%endif
%if ! %{system_vpx}
| grep -v with-system-libvpx \
%endif
+%if ! %{system_jpeg}
+ | grep -v with-system-jpeg \
+%endif
| tee .mozconfig
%if %{official_branding}
@@ -236,6 +239,16 @@ echo "ac_add_options --enable-system-sqlite" >> .mozconfig
echo "ac_add_options --disable-system-sqlite" >> .mozconfig
%endif
+%if %{?system_cairo}
+echo "ac_add_options --enable-system-cairo" >> .mozconfig
+%else
+echo "ac_add_options --disable-system-cairo" >> .mozconfig
+%endif
+
+%if %{?system_ffi}
+echo "ac_add_options --enable-system-ffi" >> .mozconfig
+%endif
+
%if %{?debug_build}
echo "ac_add_options --enable-debug" >> .mozconfig
echo "ac_add_options --disable-optimize" >> .mozconfig
@@ -350,6 +363,9 @@ unzip -q objdir/mozilla/dist/bin/enigmail-*-linux-*.xpi -d $RPM_BUILD_ROOT%{enig
#===============================================================================
%changelog
+* Wed Sep 18 2013 Remi Collet <remi@fedoraproject.org> 1.5.2-2
+- Enigmail 1.5.2 for Thunderbird 24.0
+
* Thu Jul 4 2013 Remi Collet <remi@fedoraproject.org> 1.5.2-1
- Enigmail 1.5.2 for Thunderbird 17.0.7
diff --git a/thunderbird-mozconfig b/thunderbird-mozconfig
index bd801a0..39665bc 100644
--- a/thunderbird-mozconfig
+++ b/thunderbird-mozconfig
@@ -19,8 +19,6 @@ ac_add_options --disable-xprint
ac_add_options --disable-strip
ac_add_options --disable-install-strip
ac_add_options --enable-pango
-# temporary disable system cairo, because compilation fails
-#ac_add_options --enable-system-cairo
ac_add_options --enable-svg
ac_add_options --enable-canvas
ac_add_options --enable-system-hunspell
@@ -29,6 +27,7 @@ ac_add_options --disable-updater
ac_add_options --enable-startup-notification
ac_add_options --enable-gio
ac_add_options --disable-gnomevfs
+ac_add_options --disable-gstreamer
export BUILD_OFFICIAL=1
export MOZILLA_OFFICIAL=1
diff --git a/xulrunner-16.0-jemalloc-ppc.patch b/xulrunner-16.0-jemalloc-ppc.patch
deleted file mode 100644
index e4fca79..0000000
--- a/xulrunner-16.0-jemalloc-ppc.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Index: xulrunner-11.0/mozilla-release/memory/jemalloc/jemalloc.c
-===================================================================
---- a/mozilla/memory/mozjemalloc/jemalloc.c
-+++ b/mozilla/memory/mozjemalloc/jemalloc.c
-@@ -1089,7 +1089,9 @@ static unsigned ncpus;
- * controlling the malloc behavior are defined as compile-time constants
- * for best performance and cannot be altered at runtime.
- */
-+#if !(defined(__powerpc__))
- #define MALLOC_STATIC_SIZES 1
-+#endif
-
- #ifdef MALLOC_STATIC_SIZES
-
diff --git a/xulrunner-24.0-jemalloc-ppc.patch b/xulrunner-24.0-jemalloc-ppc.patch
new file mode 100644
index 0000000..fe404ca
--- /dev/null
+++ b/xulrunner-24.0-jemalloc-ppc.patch
@@ -0,0 +1,12 @@
+diff -up xulrunner-24.0/mozilla-release/memory/mozjemalloc/jemalloc.c.jemalloc-ppc xulrunner-24.0/mozilla-release/memory/mozjemalloc/jemalloc.c
+--- xulrunner-24.0/mozilla-release/memory/mozjemalloc/jemalloc.c.jemalloc-ppc 2013-09-11 01:15:18.000000000 +0200
++++ xulrunner-24.0/mozilla-release/memory/mozjemalloc/jemalloc.c 2013-09-13 13:36:34.171680919 +0200
+@@ -1104,7 +1104,7 @@ static unsigned ncpus;
+ * controlling the malloc behavior are defined as compile-time constants
+ * for best performance and cannot be altered at runtime.
+ */
+-#if !defined(__ia64__) && !defined(__sparc__) && !defined(__mips__)
++#if !defined(__ia64__) && !defined(__sparc__) && !defined(__mips__) && !(defined(__powerpc__))
+ #define MALLOC_STATIC_SIZES 1
+ #endif
+