summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemi Collet <fedora@famillecollet.com>2012-11-29 18:15:10 +0100
committerRemi Collet <fedora@famillecollet.com>2012-11-29 18:15:10 +0100
commit1bc3913ad6c6bf3ebe2f8598af93c3485e1e98d4 (patch)
treef64382377c8e0964f4b40e1294ada97300d401b4
parentb4f402c58c7f926b3c7ed27f41aa1167ad172e9c (diff)
Xulrunner / Firefox 17.0.1
-rw-r--r--mozilla-746112.patch121
-rw-r--r--xulrunner-2.0-chromium-types.patch14
-rw-r--r--xulrunner.spec23
3 files changed, 113 insertions, 45 deletions
diff --git a/mozilla-746112.patch b/mozilla-746112.patch
index 765f993..01f6e16 100644
--- a/mozilla-746112.patch
+++ b/mozilla-746112.patch
@@ -1,35 +1,86 @@
-Index: xulrunner-10.0.1/mozilla-release/js/src/yarr/YarrInterpreter.h
-===================================================================
---- xulrunner-10.0.1.orig/mozilla-release/js/src/yarr/YarrInterpreter.h
-+++ xulrunner-10.0.1/mozilla-release/js/src/yarr/YarrInterpreter.h
-@@ -167,7 +167,7 @@ struct ByteTerm {
- inputPosition = inputPos;
- }
-
-- ByteTerm(Type type, unsigned subpatternId, ByteDisjunction* parenthesesInfo, bool capture, int inputPos)
-+ ByteTerm(Type type, unsigned subpatternId, ByteDisjunction* parenthesesInfo, bool capture, int inputPos) __attribute__((noinline))
- : type(type)
- , m_capture(capture)
- , m_invert(false)
-@@ -188,7 +188,7 @@ struct ByteTerm {
- atom.quantityCount = 1;
- }
-
-- ByteTerm(Type type, unsigned subpatternId, bool capture, bool invert, int inputPos)
-+ ByteTerm(Type type, unsigned subpatternId, bool capture, bool invert, int inputPos) __attribute__((noinline))
- : type(type)
- , m_capture(capture)
- , m_invert(invert)
-Index: xulrunner-10.0.1/mozilla-release/js/src/yarr/YarrPattern.h
-===================================================================
---- xulrunner-10.0.1.orig/mozilla-release/js/src/yarr/YarrPattern.h
-+++ xulrunner-10.0.1/mozilla-release/js/src/yarr/YarrPattern.h
-@@ -171,7 +171,7 @@ struct PatternTerm {
- quantityCount = 1;
- }
-
-- PatternTerm(Type type, unsigned subpatternId, PatternDisjunction* disjunction, bool capture = false, bool invert = false)
-+ PatternTerm(Type type, unsigned subpatternId, PatternDisjunction* disjunction, bool capture = false, bool invert = false) __attribute__((noinline))
- : type(type)
- , m_capture(capture)
- , m_invert(invert)
+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/xulrunner-2.0-chromium-types.patch b/xulrunner-2.0-chromium-types.patch
index dfc82cc..2b3db8c 100644
--- a/xulrunner-2.0-chromium-types.patch
+++ b/xulrunner-2.0-chromium-types.patch
@@ -1,14 +1,12 @@
-Bug 627669 - add support for s390(x) and ppc(64)
-
-diff -up mozilla-release/gfx/ycbcr/chromium_types.h.chromium-types mozilla-release/gfx/ycbcr/chromium_types.h
---- mozilla-release/gfx/ycbcr/chromium_types.h.chromium-types 2011-06-15 23:57:26.000000000 +0200
-+++ mozilla-release/gfx/ycbcr/chromium_types.h 2011-06-30 10:04:25.105032221 +0200
-@@ -61,7 +61,11 @@ typedef PRInt16 int16;
+diff -up xulrunner-17.0/mozilla-release/gfx/ycbcr/chromium_types.h.chromium-types xulrunner-17.0/mozilla-release/gfx/ycbcr/chromium_types.h
+--- xulrunner-17.0/mozilla-release/gfx/ycbcr/chromium_types.h.chromium-types 2012-11-16 20:56:29.000000000 +0100
++++ xulrunner-17.0/mozilla-release/gfx/ycbcr/chromium_types.h 2012-11-20 09:19:14.843448418 +0100
+@@ -30,7 +30,11 @@ typedef int16_t int16;
#define ARCH_CPU_ARM_FAMILY 1
#define ARCH_CPU_ARMEL 1
#define ARCH_CPU_32_BITS 1
-#elif defined(__ppc__) || defined(__powerpc) || defined(__PPC__)
-+#elif defined(__ppc64__) || defined(__powerpc64__)
++#elif defined(__powerpc64__)
+#define ARCH_CPU_PPC_FAMILY 1
+#define ARCH_CPU_PPC 1
+#define ARCH_CPU_64_BITS 1
@@ -16,7 +14,7 @@ diff -up mozilla-release/gfx/ycbcr/chromium_types.h.chromium-types mozilla-relea
#define ARCH_CPU_PPC_FAMILY 1
#define ARCH_CPU_PPC 1
#define ARCH_CPU_32_BITS 1
-@@ -73,6 +77,14 @@ typedef PRInt16 int16;
+@@ -42,6 +46,14 @@ typedef int16_t int16;
#define ARCH_CPU_SPARC_FAMILY 1
#define ARCH_CPU_SPARC 1
#define ARCH_CPU_64_BITS 1
diff --git a/xulrunner.spec b/xulrunner.spec
index 70731cb..8f10136 100644
--- a/xulrunner.spec
+++ b/xulrunner.spec
@@ -82,7 +82,7 @@
Summary: XUL Runtime for Gecko Applications
Name: %{shortname}-last
-Version: 17.0
+Version: 17.0.1
Release: 1%{?pre_tag}%{?dist}
URL: http://developer.mozilla.org/En/XULRunner
License: MPLv1.1 or GPLv2+ or LGPLv2+
@@ -247,7 +247,7 @@ cd %{tarballdir}
%patch1 -p1
%patch2 -p1 -b .build
-%patch14 -p1 -b .chromium-types
+%patch14 -p2 -b .chromium-types
%patch17 -p2 -b .gcc47
%patch18 -p2 -b .jemalloc-ppc
@@ -324,6 +324,10 @@ echo "ac_add_options --disable-polyic" >> .mozconfig
echo "ac_add_options --disable-tracejit" >> .mozconfig
%endif
+%ifnarch %{ix86} x86_64 %{arm}
+echo "ac_add_options --disable-webrtc" >> .mozconfig
+%endif
+
#---------------------------------------------------------------------
%build
@@ -545,6 +549,21 @@ fi
#---------------------------------------------------------------------
%changelog
+* Thu Nov 29 2012 Remi Collet <RPMS@FamilleCollet.com> - 17.0-1
+- Sync with rawhide, Update to 17.0.1
+
+* Thu Nov 29 2012 Jan Horak <jhorak@redhat.com> - 17.0.1-1
+- Update to 17.0.1
+
+* Tue Nov 27 2012 Jan Horak <jhorak@redhat.com> - 17.0-4
+- Rebuild agains older NSS
+
+* Mon Nov 19 2012 Martin Stransky <stransky@redhat.com> - 17.0-3
+- Updated second arch patches
+
+* Mon Nov 19 2012 Dan HorĂ¡k <dan[at]danny.cz> - 17.0-2
+- webrtc is available only on selected arches
+
* Mon Nov 19 2012 Remi Collet <RPMS@FamilleCollet.com> - 17.0-1
- Update to 17.0