diff options
| -rw-r--r-- | mozilla-746112.patch | 86 | ||||
| -rw-r--r-- | mozilla-791626.patch | 46 | ||||
| -rw-r--r-- | mozilla-build-arm.patch | 12 | ||||
| -rw-r--r-- | rhbz-855923.patch | 19 | ||||
| -rw-r--r-- | rhbz-966424.patch | 6 | ||||
| -rw-r--r-- | thunderbird-enigmail.spec | 84 | ||||
| -rw-r--r-- | thunderbird-mozconfig | 3 | ||||
| -rw-r--r-- | xulrunner-16.0-jemalloc-ppc.patch | 14 | ||||
| -rw-r--r-- | xulrunner-24.0-jemalloc-ppc.patch | 12 | 
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 +   | 
