diff --git a/.gitignore b/.gitignore index 09c38ff..7adf552 100644 --- a/.gitignore +++ b/.gitignore @@ -77,5 +77,5 @@ thunderbird-langpacks-3.1.2-20100803.tar.bz2 /thunderbird-langpacks-17.0.7-20130625.tar.xz /thunderbird-17.0.8.source.tar.bz2 /thunderbird-langpacks-17.0.8-20130805.tar.xz -/thunderbird-17.0.9esr.source.tar.bz2 -/thunderbird-langpacks-17.0.9esr-20130923.tar.xz +/thunderbird-24.0.source.tar.bz2 +/thunderbird-langpacks-24.0-20130916.tar.xz 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 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 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/sources b/sources index 0287335..bdbb88c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -e875eeb75c70d95c3758923317d2678f thunderbird-17.0.9esr.source.tar.bz2 -a5fa6c643c4c2addb95b17a1cd89394b thunderbird-langpacks-17.0.9esr-20130923.tar.xz +38f4b2e574751e4e6cbe36dc8b3bce20 thunderbird-24.0.source.tar.bz2 +137202a59008d2f2049740aa4482ad75 thunderbird-langpacks-24.0-20130916.tar.xz diff --git a/thunderbird-mozconfig b/thunderbird-mozconfig index bd801a0..0d4916f 100644 --- a/thunderbird-mozconfig +++ b/thunderbird-mozconfig @@ -29,6 +29,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/thunderbird.spec b/thunderbird.spec index 1ceca03..86ceed0 100644 --- a/thunderbird.spec +++ b/thunderbird.spec @@ -4,7 +4,7 @@ # Build as a debug package? %define debug_build 0 -%if 0%{?fedora} <= 17 +%if 0%{?fedora} <= 18 %define system_sqlite 0 %else %define system_sqlite 1 @@ -23,7 +23,7 @@ %define freetype_version 2.1.9 %if %{?system_sqlite} -%define sqlite_version 3.7.13 +%define sqlite_version 3.7.17 # The actual sqlite version (see #480989): %global sqlite_build_version %(pkg-config --silence-errors --modversion sqlite3 2>/dev/null || echo 65536) %endif @@ -39,7 +39,7 @@ # # IMPORTANT: If there is no top level directory, this should be # set to the cwd, ie: '.' -%define tarballdir comm-esr17 +%define tarballdir comm-esr24 %define official_branding 1 # enable crash reporter only for iX86 @@ -53,14 +53,15 @@ Summary: Mozilla Thunderbird mail/newsgroup client Name: thunderbird -Version: 17.0.9 -Release: 1%{?dist} +Version: 24.0 +Release: 3%{?dist} URL: http://www.mozilla.org/projects/thunderbird/ License: MPLv1.1 or GPLv2+ or LGPLv2+ Group: Applications/Internet -Source0: ftp://ftp.mozilla.org/pub/thunderbird/releases/%{version}%{?pre_version}/source/thunderbird-%{version}%{?pre_version}esr.source.tar.bz2 +ExcludeArch: armv7hl +Source0: ftp://ftp.mozilla.org/pub/thunderbird/releases/%{version}%{?pre_version}/source/thunderbird-%{version}%{?pre_version}.source.tar.bz2 %if %{build_langpacks} -Source1: thunderbird-langpacks-%{version}esr-20130923.tar.xz +Source1: thunderbird-langpacks-%{version}-20130916.tar.xz %endif Source10: thunderbird-mozconfig Source11: thunderbird-mozconfig-branded @@ -72,7 +73,7 @@ Source100: find-external-requires # 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 @@ -81,9 +82,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 @@ -171,15 +170,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 @@ -390,7 +387,6 @@ fi gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : #=============================================================================== - %files -f %{tarballdir}/%{name}.lang %defattr(-,root,root,-) %attr(755,root,root) %{_bindir}/thunderbird @@ -403,7 +399,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %dir %{mozappdir}/components %ghost %{mozappdir}/components/compreg.dat %ghost %{mozappdir}/components/xpti.dat -%{mozappdir}/components/binary.manifest +%{mozappdir}/components/components.manifest %{mozappdir}/components/libdbusservice.so %{mozappdir}/components/libmozgnome.so %{mozappdir}/omni.ja @@ -442,12 +438,14 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %exclude %{_includedir}/%{name}-%{version} %{mozappdir}/chrome.manifest %{mozappdir}/searchplugins -%{mozappdir}/distribution/extensions %{mozappdir}/dependentlibs.list #=============================================================================== %changelog +* Wed Sep 25 2013 Jan Horak - 24.0-3 +- Update to 24.0 + * Mon Sep 23 2013 Jan Horak - 17.0.9-1 - Update to 17.0.9 ESR 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 +