diff options
author | ryoon <ryoon> | 2013-06-26 11:32:12 +0000 |
---|---|---|
committer | ryoon <ryoon> | 2013-06-26 11:32:12 +0000 |
commit | 3eef69839b30a480d1ff5d1d76d5e2008bd58285 (patch) | |
tree | ded0d566db364a06dc2170d6b5f7be7de6938b17 /www/firefox/patches | |
parent | a35a36f44f6968706d3f9fcd02c9ec0275a28781 (diff) | |
download | pkgsrc-3eef69839b30a480d1ff5d1d76d5e2008bd58285.tar.gz |
Update to 22.0
* On NetBSD WebRTC support is disabled, because libxul.so has some errors
in link stage. WebRTC support should be tested on non-NetBSD platforms.
* It seems that OSS sound support is not working properly on NetBSD.
Changelog:
NEW
WebRTC is now enabled by default!
NEW
Windows: Firefox now follows display scaling options to render text larger on high-res displays
NEW
Mac OS X: Download progress in Dock application icon
NEW
HTML5 audio/video playback rate can now be changed
NEW
Social services management implemented in Add-ons Manager
NEW
asm.js optimizations (OdinMonkey) enabled for major performance improvements
CHANGED
Improved WebGL rendering performance through asynchronous canvas updates
CHANGED
Plain text files displayed within Firefox will now word-wrap
CHANGED
For user security, the |Components| object is no longer accessible from web content
CHANGED
Pointer Lock API can now be used outside of fullscreen
DEVELOPER
CSS3 Flexbox implemented and enabled by default
DEVELOPER
New Web Notifications API implemented
DEVELOPER
Added clipboardData API for JavaScript access to a user's clipboard
DEVELOPER
New built-in font inspector
HTML5
New HTML5 <data> and <time> elements
FIXED
Various security fixes
FIXED
Scrolling using some high-resolution-scroll aware touchpads feels slow (829952)
Fixed in Firefox 22
MFSA 2013-62 Inaccessible updater can lead to local privilege escalation
MFSA 2013-61 Homograph domain spoofing in .com, .net and .name
MFSA 2013-60 getUserMedia permission dialog incorrectly displays location
MFSA 2013-59 XrayWrappers can be bypassed to run user defined methods in a privileged context
MFSA 2013-58 X-Frame-Options ignored when using server push with multi-part responses
MFSA 2013-57 Sandbox restrictions not applied to nested frame elements
MFSA 2013-56 PreserveWrapper has inconsistent behavior
MFSA 2013-55 SVG filters can lead to information disclosure
MFSA 2013-54 Data in the body of XHR HEAD requests leads to CSRF attacks
MFSA 2013-53 Execution of unmapped memory through onreadystatechange event
MFSA 2013-52 Arbitrary code execution within Profiler
MFSA 2013-51 Privileged content access and execution via XBL
MFSA 2013-50 Memory corruption found using Address Sanitizer
MFSA 2013-49 Miscellaneous memory safety hazards (rv:22.0 / rv:17.0.7)
Diffstat (limited to 'www/firefox/patches')
42 files changed, 390 insertions, 545 deletions
diff --git a/www/firefox/patches/patch-aa b/www/firefox/patches/patch-aa index 3900be6af8c..037843d60a2 100644 --- a/www/firefox/patches/patch-aa +++ b/www/firefox/patches/patch-aa @@ -1,10 +1,10 @@ -$NetBSD: patch-aa,v 1.11 2013/06/02 06:48:37 ryoon Exp $ +$NetBSD: patch-aa,v 1.12 2013/06/26 11:32:12 ryoon Exp $ ---- configure.in.orig 2013-05-11 19:19:23.000000000 +0000 +--- configure.in.orig 2013-06-17 22:12:58.000000000 +0000 +++ configure.in -@@ -1404,6 +1404,17 @@ if test "$GNU_CC"; then +@@ -1388,6 +1388,17 @@ if test "$GNU_CC"; then CFLAGS=$_SAVE_CFLAGS - AC_SUBST(HAVE_TOOLCHAIN_SUPPORT_MSSSE3) + AC_SUBST(HAVE_TOOLCHAIN_SUPPORT_MSSE4_1) + # Check for -msse4.1 on $CC + AC_MSG_CHECKING([if toolchain supports -msse4.1 option]) @@ -30,7 +30,7 @@ $NetBSD: patch-aa,v 1.11 2013/06/02 06:48:37 ryoon Exp $ ;; *-mingw*) DSO_CFLAGS= -@@ -2848,6 +2862,7 @@ EOF +@@ -2862,6 +2876,7 @@ EOF #pragma GCC visibility push(hidden) #pragma GCC visibility push(default) #include <string.h> @@ -38,7 +38,7 @@ $NetBSD: patch-aa,v 1.11 2013/06/02 06:48:37 ryoon Exp $ #pragma GCC visibility pop __attribute__ ((visibility ("default"))) void Func() { -@@ -2856,7 +2871,7 @@ __attribute__ ((visibility ("default"))) +@@ -2870,7 +2885,7 @@ __attribute__ ((visibility ("default"))) } EOF ac_cv_have_visibility_builtin_bug=no @@ -47,7 +47,7 @@ $NetBSD: patch-aa,v 1.11 2013/06/02 06:48:37 ryoon Exp $ ac_cv_have_visibility_builtin_bug=yes else if test `grep -c "@PLT" conftest.S` = 0; then -@@ -3018,6 +3033,9 @@ dnl ==================================== +@@ -3032,6 +3047,9 @@ dnl ==================================== case $target in *-hpux11.*) ;; @@ -57,7 +57,7 @@ $NetBSD: patch-aa,v 1.11 2013/06/02 06:48:37 ryoon Exp $ *) AC_CHECK_LIB(c_r, gethostbyname_r) ;; -@@ -3319,6 +3337,9 @@ AC_CACHE_CHECK( +@@ -3333,6 +3351,9 @@ AC_CACHE_CHECK( #ifdef linux #define _BSD_SOURCE 1 #endif @@ -67,7 +67,7 @@ $NetBSD: patch-aa,v 1.11 2013/06/02 06:48:37 ryoon Exp $ #include <resolv.h> ], [int foo = res_ninit(&_res);], -@@ -3989,6 +4010,14 @@ if test -n "$YASM"; then +@@ -3995,6 +4016,14 @@ if test -n "$YASM"; then _YASM_BUILD=` echo ${YASM_VERSION} | $AWK -F\. '{ print $4 }'` fi @@ -82,7 +82,7 @@ $NetBSD: patch-aa,v 1.11 2013/06/02 06:48:37 ryoon Exp $ if test -z "$SKIP_LIBRARY_CHECKS"; then dnl system JPEG support dnl ======================================================== -@@ -4016,11 +4045,7 @@ if test "$MOZ_NATIVE_JPEG" = 1; then +@@ -4022,11 +4051,7 @@ if test "$MOZ_NATIVE_JPEG" = 1; then #include <jpeglib.h> ], [ #if JPEG_LIB_VERSION < $MOZJPEG #error "Insufficient JPEG library version ($MOZJPEG required)." @@ -95,41 +95,26 @@ $NetBSD: patch-aa,v 1.11 2013/06/02 06:48:37 ryoon Exp $ MOZ_NATIVE_JPEG=1, AC_MSG_ERROR([Insufficient JPEG library version for --with-system-jpeg])) fi -@@ -5212,7 +5237,11 @@ if test -n "$MOZ_WEBRTC"; then - dnl Make sure doesn't get matched by *-linux* - MOZ_WEBRTC= +@@ -5260,7 +5285,7 @@ if test -n "$MOZ_WEBRTC"; then + MOZ_WEBRTC= + fi ;; - *-linux*|*-mingw*|*-darwin*) -+ *-netbsd*|*-dragonfly*) -+ dnl Custom socketvar.h is not compatible with NetBSD. -+ MOZ_WEBRTC= -+ ;; -+ *-linux*|*-mingw*|*-darwin*|*-freebsd*|*-openbsd*) ++ *-linux*|*-mingw*|*-darwin*|*-dragonfly*|*-freebsd*|*-netbsd*|*-openbsd*) dnl Leave enabled ;; *) -@@ -5263,6 +5292,9 @@ if test -n "$MOZ_WEBRTC"; then +@@ -5314,6 +5339,9 @@ if test -n "$MOZ_WEBRTC"; then MOZ_VP8_ENCODER=1 MOZ_VP8_ERROR_CONCEALMENT=1 + dnl with libv4l2 we can support more cameras + PKG_CHECK_MODULES(MOZ_LIBV4L2, libv4l2) + - dnl OpenSLES is only available in Android 2.3 and later; we'll change this - dnl hard dependency to a dynamic load with graceful runtime failure before - dnl we make --enable-webrtc on by default in Android (bug 815905) -@@ -5299,8 +5331,8 @@ AC_SUBST(MOZ_WEBRTC_IN_LIBXUL) - AC_SUBST(MOZ_SCTP) - AC_SUBST(MOZ_SRTP) - --case "$target_cpu" in --arm*) -+case "$target" in -+arm-*-linux*|*-dragonfly*|*-freebsd*|*-netbsd*|*-openbsd*) - MOZ_SAMPLE_TYPE_S16=1 - AC_DEFINE(MOZ_SAMPLE_TYPE_S16) - AC_SUBST(MOZ_SAMPLE_TYPE_S16) -@@ -5704,7 +5736,7 @@ MOZ_ALSA=) + if test "$MOZ_WIDGET_TOOLKIT" != "gonk"; then + dnl OpenSLES is only available in Android 2.3 and later; we'll change this + dnl hard dependency to a dynamic load with graceful runtime failure before +@@ -5727,7 +5755,7 @@ MOZ_ALSA=) if test -n "$MOZ_ALSA"; then AC_DEFINE(MOZ_CUBEB) @@ -138,7 +123,7 @@ $NetBSD: patch-aa,v 1.11 2013/06/02 06:48:37 ryoon Exp $ [echo "$MOZ_ALSA_PKG_ERRORS" AC_MSG_ERROR([Need alsa for Ogg, Wave or WebM decoding on Linux. Disable with --disable-ogg --disable-wave --disable-webm. (On Ubuntu, you might try installing the package libasound2-dev.)])]) fi -@@ -8311,16 +8343,26 @@ MOZ_ARG_DISABLE_BOOL(necko-wifi, +@@ -8413,16 +8441,26 @@ MOZ_ARG_DISABLE_BOOL(necko-wifi, NECKO_WIFI=, NECKO_WIFI=1) @@ -175,8 +160,8 @@ $NetBSD: patch-aa,v 1.11 2013/06/02 06:48:37 ryoon Exp $ fi if test "$NECKO_WIFI"; then -@@ -8981,6 +9023,27 @@ elif test "${OS_TARGET}" = "Android"; th - fi +@@ -9102,6 +9140,27 @@ if test -z "$HAVE_TOOLCHAIN_SUPPORT_MSSE + EXTRA_GYP_DEFINES="$EXTRA_GYP_DEFINES -D yuv_disable_asm=1" fi +# Keep libcubeb and audio_device backends in sync diff --git a/www/firefox/patches/patch-an b/www/firefox/patches/patch-an deleted file mode 100644 index fe7f6bb3c09..00000000000 --- a/www/firefox/patches/patch-an +++ /dev/null @@ -1,48 +0,0 @@ -$NetBSD: patch-an,v 1.9 2013/05/23 13:12:13 ryoon Exp $ - -SHA1_Update conflicts with openssl which may be dynamically loaded -at runtime via libcups or libgssapi so causing a crash due to using -the wrong binding. So rename here to avoid conflict. - ---- security/nss/lib/freebl/sha-fast-amd64-sun.s.orig 2013-01-04 23:44:43.000000000 +0000 -+++ security/nss/lib/freebl/sha-fast-amd64-sun.s -@@ -1680,9 +1680,9 @@ shaCompress: - .LFE7: - .size shaCompress, .-shaCompress - .align 16 --.globl SHA1_Update -- .type SHA1_Update, @function --SHA1_Update: -+.globl NSS_SHA1_Update -+ .type NSS_SHA1_Update, @function -+NSS_SHA1_Update: - .LFB5: - pushq %rbp - .LCFI5: -@@ -1768,7 +1768,7 @@ SHA1_Update: - call shaCompress - jmp .L245 - .LFE5: -- .size SHA1_Update, .-SHA1_Update -+ .size NSS_SHA1_Update, .-NSS_SHA1_Update - .section .rodata - .align 32 - .type bulk_pad.0, @object -@@ -1870,7 +1870,7 @@ SHA1_End: - subl %r8d, %edx - andl $63, %edx - incl %edx -- call SHA1_Update@PLT -+ call NSS_SHA1_Update@PLT - movq %rbx, %rdi - movq %r12, %rsi - shrq $32, %rdi -@@ -1986,7 +1986,7 @@ SHA1_HashBuf: - movl %r12d, %edx - movq %r13, %rsi - movq %rbx, %rdi -- call SHA1_Update@PLT -+ call NSS_SHA1_Update@PLT - leaq -292(%rbp), %rdx - movq %r14, %rsi - movq %rbx, %rdi diff --git a/www/firefox/patches/patch-au b/www/firefox/patches/patch-au deleted file mode 100644 index 144739dd78e..00000000000 --- a/www/firefox/patches/patch-au +++ /dev/null @@ -1,41 +0,0 @@ -$NetBSD: patch-au,v 1.3 2013/05/23 13:12:13 ryoon Exp $ - -- Fix device name on NetBSD -- SOUND_VERSION just isn't a reliable way to detect features supported by - particular OSS implementation. - ---- media/libsydneyaudio/src/sydney_audio_oss.c.orig 2013-05-11 19:19:43.000000000 +0000 -+++ media/libsydneyaudio/src/sydney_audio_oss.c -@@ -23,7 +23,7 @@ - // support only versions newer than 3.6.1 - #define SUPP_OSS_VERSION OSS_VERSION(3,0,1) - --#if (SOUND_VERSION < SUPP_OSS_VERSION) -+#if 0 // (SOUND_VERSION < SUPP_OSS_VERSION) - #error Unsupported OSS Version - #else - -@@ -173,7 +173,12 @@ sa_stream_create_pcm( - return SA_ERROR_SYSTEM; - } - -+#if defined(__NetBSD__) -+ /* XXX should use DEVOSSAUDIO provided by pkgsrc. */ -+ s->output_unit = "/dev/audio"; -+#else - s->output_unit = "/dev/dsp"; -+#endif - s->output_fd = -1; - s->thread_id = 0; - s->playing = 0; -@@ -446,6 +451,10 @@ static void audio_callback(void* data) - printf("!"); /* not enough audio data */ - #endif - bytes = bytes-bytes_to_copy; -+ struct timespec ts = {0, 1000000}; -+ pthread_mutex_unlock(&s->mutex); -+ nanosleep(&ts, NULL); -+ pthread_mutex_lock(&s->mutex); - break; - } - free(s->bl_head); diff --git a/www/firefox/patches/patch-config_stl__wrappers_ios b/www/firefox/patches/patch-config_stl__wrappers_ios deleted file mode 100644 index 08b9e3367b5..00000000000 --- a/www/firefox/patches/patch-config_stl__wrappers_ios +++ /dev/null @@ -1,8 +0,0 @@ -$NetBSD: patch-config_stl__wrappers_ios,v 1.1 2013/05/23 13:12:13 ryoon Exp $ - ---- config/stl_wrappers/ios.orig 2013-05-13 18:23:07.000000000 +0000 -+++ config/stl_wrappers/ios -@@ -0,0 +1,3 @@ -+#pragma GCC visibility push(default) -+#include_next <ios> -+#pragma GCC visibility pop diff --git a/www/firefox/patches/patch-config_stl__wrappers_ostream b/www/firefox/patches/patch-config_stl__wrappers_ostream deleted file mode 100644 index 96911b99e24..00000000000 --- a/www/firefox/patches/patch-config_stl__wrappers_ostream +++ /dev/null @@ -1,8 +0,0 @@ -$NetBSD: patch-config_stl__wrappers_ostream,v 1.1 2013/05/23 13:12:13 ryoon Exp $ - ---- config/stl_wrappers/ostream.orig 2013-05-13 18:22:40.000000000 +0000 -+++ config/stl_wrappers/ostream -@@ -0,0 +1,3 @@ -+#pragma GCC visibility push(default) -+#include_next <ostream> -+#pragma GCC visibility pop diff --git a/www/firefox/patches/patch-config_system__wrappers_unwind.h b/www/firefox/patches/patch-config_system__wrappers_unwind.h deleted file mode 100644 index 62dd43784e2..00000000000 --- a/www/firefox/patches/patch-config_system__wrappers_unwind.h +++ /dev/null @@ -1,9 +0,0 @@ -$NetBSD: patch-config_system__wrappers_unwind.h,v 1.1 2013/05/23 13:12:13 ryoon Exp $ - ---- config/system_wrappers/unwind.h.orig 2013-05-13 19:56:18.000000000 +0000 -+++ config/system_wrappers/unwind.h -@@ -0,0 +1,4 @@ -+#pragma GCC system_header -+#pragma GCC visibility push(default) -+#include_next <unwind.h> -+#pragma GCC visibility pop diff --git a/www/firefox/patches/patch-content_media_AudioStream.cpp b/www/firefox/patches/patch-content_media_AudioStream.cpp deleted file mode 100644 index ec469674baf..00000000000 --- a/www/firefox/patches/patch-content_media_AudioStream.cpp +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-content_media_AudioStream.cpp,v 1.1 2013/05/23 13:12:13 ryoon Exp $ - ---- content/media/AudioStream.cpp.orig 2013-05-11 19:19:24.000000000 +0000 -+++ content/media/AudioStream.cpp -@@ -314,7 +314,7 @@ nsresult NativeAudioStream::Init(int32_t - mChannels = aNumChannels; - - if (sa_stream_create_pcm(reinterpret_cast<sa_stream_t**>(&mAudioHandle), -- NULL, -+ "Mozilla", - SA_MODE_WRONLY, - SA_PCM_FORMAT_S16_NE, - aRate, diff --git a/www/firefox/patches/patch-js__public__HeapAPI.h b/www/firefox/patches/patch-js__public__HeapAPI.h index 29f8ff9f91b..278a6ebc33b 100644 --- a/www/firefox/patches/patch-js__public__HeapAPI.h +++ b/www/firefox/patches/patch-js__public__HeapAPI.h @@ -1,6 +1,7 @@ -$NetBSD: patch-js__public__HeapAPI.h,v 1.1 2013/06/21 23:11:42 ryoon Exp $ +$NetBSD: patch-js__public__HeapAPI.h,v 1.2 2013/06/26 11:32:12 ryoon Exp $ -From bugzilla, bug 840242, attachment v1 +From bugzilla, bug 840242, +https://hg.mozilla.org/integration/mozilla-inbound/rev/49e4ff129351 Use the runtime page size to control arena decommit. As a side effect, this removes the hard coded page-size == 4k requirement. diff --git a/www/firefox/patches/patch-js__src__gc__Marking.cpp b/www/firefox/patches/patch-js__src__gc__Marking.cpp index 7e12924b1fb..3041f88e4bd 100644 --- a/www/firefox/patches/patch-js__src__gc__Marking.cpp +++ b/www/firefox/patches/patch-js__src__gc__Marking.cpp @@ -1,4 +1,4 @@ -$NetBSD: patch-js__src__gc__Marking.cpp,v 1.1 2013/06/21 23:11:42 ryoon Exp $ +$NetBSD: patch-js__src__gc__Marking.cpp,v 1.2 2013/06/26 11:32:12 ryoon Exp $ # HG changeset patch # User Martin Husemann <martin@netbsd.org> @@ -8,14 +8,9 @@ $NetBSD: patch-js__src__gc__Marking.cpp,v 1.1 2013/06/21 23:11:42 ryoon Exp $ Bug 871101: Make "kind" a full uintptr_t value so it overwrites its pointer union counterpart for sure r=billm diff js/src/gc/Marking.cpp js/src/gc/Marking.cpp ---- js/src/gc/Marking.cpp +--- js/src/gc/Marking.cpp.orig 2013-06-17 22:13:09.000000000 +0000 +++ js/src/gc/Marking.cpp -@@ -1199,17 +1199,17 @@ gc::PushArena(GCMarker *gcmarker, ArenaH - break; - } - } - - struct SlotArrayLayout +@@ -1143,7 +1143,7 @@ struct SlotArrayLayout { union { HeapSlot *end; @@ -24,9 +19,3 @@ diff js/src/gc/Marking.cpp js/src/gc/Marking.cpp }; union { HeapSlot *start; - uintptr_t index; - }; - JSObject *obj; - - static void staticAsserts() { - diff --git a/www/firefox/patches/patch-js__src__gc__Memory.h b/www/firefox/patches/patch-js__src__gc__Memory.h index bf27862c58f..3dc16c68337 100644 --- a/www/firefox/patches/patch-js__src__gc__Memory.h +++ b/www/firefox/patches/patch-js__src__gc__Memory.h @@ -1,4 +1,4 @@ -$NetBSD: patch-js__src__gc__Memory.h,v 1.1 2013/06/21 23:11:42 ryoon Exp $ +$NetBSD: patch-js__src__gc__Memory.h,v 1.2 2013/06/26 11:32:12 ryoon Exp $ From bugzilla, bug 840242, attachment v1 Use the runtime page size to control arena decommit. @@ -7,14 +7,9 @@ As a side effect, this removes the hard coded page-size == 4k requirement. diff js/src/gc/Memory.h js/src/gc/Memory.h ---- js/src/gc/Memory.h +--- js/src/gc/Memory.h.orig 2013-06-17 22:13:09.000000000 +0000 +++ js/src/gc/Memory.h -@@ -10,30 +10,41 @@ - #include <stddef.h> - #include "jsgc.h" - - namespace js { - namespace gc { +@@ -16,23 +16,34 @@ namespace gc { // Sanity check that our compiled configuration matches the currently running // instance and initialize any runtime data needed for allocation. @@ -55,5 +50,3 @@ diff js/src/gc/Memory.h js/src/gc/Memory.h } // namespace gc } // namespace js - - #endif // jsgc_memory_h___ diff --git a/www/firefox/patches/patch-js__src__jsapi.cpp b/www/firefox/patches/patch-js__src__jsapi.cpp index e2b31f78c47..a6aa5bbc122 100644 --- a/www/firefox/patches/patch-js__src__jsapi.cpp +++ b/www/firefox/patches/patch-js__src__jsapi.cpp @@ -1,4 +1,4 @@ -$NetBSD: patch-js__src__jsapi.cpp,v 1.1 2013/06/21 23:11:42 ryoon Exp $ +$NetBSD: patch-js__src__jsapi.cpp,v 1.2 2013/06/26 11:32:12 ryoon Exp $ From bugzilla, bug 840242, attachment v1 Use the runtime page size to control arena decommit. @@ -7,14 +7,9 @@ As a side effect, this removes the hard coded page-size == 4k requirement. diff js/src/jsapi.cpp js/src/jsapi.cpp ---- js/src/jsapi.cpp +--- js/src/jsapi.cpp.orig 2013-06-17 22:13:11.000000000 +0000 +++ js/src/jsapi.cpp -@@ -1138,18 +1138,16 @@ JS_NewRuntime(uint32_t maxbytes, JSUseHe - ++numfmtspecs; \ - } \ - JS_ASSERT(count == numfmtspecs); \ - JS_END_MACRO; - #include "js.msg" +@@ -1131,8 +1131,6 @@ JS_NewRuntime(uint32_t maxbytes, JSUseHe #undef MSG_DEF #endif /* DEBUG */ @@ -23,8 +18,3 @@ diff js/src/jsapi.cpp js/src/jsapi.cpp if (!js::TlsPerThreadData.init()) return NULL; - js_NewRuntimeWasCalled = JS_TRUE; - } - - JSRuntime *rt = js_new<JSRuntime>(useHelperThreads); - if (!rt) diff --git a/www/firefox/patches/patch-js__src__jscntxt.h b/www/firefox/patches/patch-js__src__jscntxt.h index 700ada8b3c6..03e4fd1307e 100644 --- a/www/firefox/patches/patch-js__src__jscntxt.h +++ b/www/firefox/patches/patch-js__src__jscntxt.h @@ -1,4 +1,4 @@ -$NetBSD: patch-js__src__jscntxt.h,v 1.1 2013/06/21 23:11:42 ryoon Exp $ +$NetBSD: patch-js__src__jscntxt.h,v 1.2 2013/06/26 11:32:12 ryoon Exp $ From bugzilla, bug 840242, attachment v1 Use the runtime page size to control arena decommit. @@ -7,14 +7,9 @@ As a side effect, this removes the hard coded page-size == 4k requirement. diff js/src/jscntxt.h js/src/jscntxt.h ---- js/src/jscntxt.h +--- js/src/jscntxt.h.orig 2013-06-17 22:13:11.000000000 +0000 +++ js/src/jscntxt.h -@@ -1132,16 +1132,25 @@ struct JSRuntime : public JS::shadow::Ru - JSTraceDataOp gcBlackRootsTraceOp; - void *gcBlackRootsData; - JSTraceDataOp gcGrayRootsTraceOp; - void *gcGrayRootsData; - +@@ -1101,6 +1101,15 @@ struct JSRuntime : js::RuntimeFriendFiel /* Stack of thread-stack-allocated GC roots. */ js::AutoGCRooter *autoGCRooters; @@ -30,8 +25,3 @@ diff js/src/jscntxt.h js/src/jscntxt.h /* Strong references on scripts held for PCCount profiling API. */ js::ScriptAndCountsVector *scriptAndCountsVector; - /* Well-known numbers held for use by this runtime's contexts. */ - js::Value NaNValue; - js::Value negativeInfinityValue; - js::Value positiveInfinityValue; - diff --git a/www/firefox/patches/patch-js__src__jsgc.cpp b/www/firefox/patches/patch-js__src__jsgc.cpp index fe679e4d7f0..6bcf834b1e0 100644 --- a/www/firefox/patches/patch-js__src__jsgc.cpp +++ b/www/firefox/patches/patch-js__src__jsgc.cpp @@ -1,6 +1,7 @@ -$NetBSD: patch-js__src__jsgc.cpp,v 1.1 2013/06/21 23:11:42 ryoon Exp $ +$NetBSD: patch-js__src__jsgc.cpp,v 1.2 2013/06/26 11:32:12 ryoon Exp $ -From bugzilla, bug 840242, attachment v1 +From bugzilla, bug 840242, +https://hg.mozilla.org/integration/mozilla-inbound/rev/49e4ff129351 Use the runtime page size to control arena decommit. As a side effect, this removes the hard coded page-size == 4k requirement. diff --git a/www/firefox/patches/patch-js_src_ion_AsmJS.cpp b/www/firefox/patches/patch-js_src_ion_AsmJS.cpp new file mode 100644 index 00000000000..c9b504c9a6a --- /dev/null +++ b/www/firefox/patches/patch-js_src_ion_AsmJS.cpp @@ -0,0 +1,31 @@ +$NetBSD: patch-js_src_ion_AsmJS.cpp,v 1.1 2013/06/26 11:32:12 ryoon Exp $ + +--- js/src/ion/AsmJS.cpp.orig 2013-06-17 22:13:09.000000000 +0000 ++++ js/src/ion/AsmJS.cpp +@@ -1324,7 +1324,7 @@ class ModuleCompiler + + void setSecondPassComplete() { + JS_ASSERT(currentPass_ == 2); +- masm_.align(gc::PageSize); ++ masm_.align(AsmJSPageSize); + module_->setFunctionBytes(masm_.size()); + currentPass_ = 3; + } +@@ -1357,7 +1357,7 @@ class ModuleCompiler + + // The code must be page aligned, so include extra space so that we can + // AlignBytes the allocation result below. +- size_t allocedBytes = totalBytes + gc::PageSize; ++ size_t allocedBytes = totalBytes + AsmJSPageSize; + + // Allocate the slab of memory. + JSC::ExecutableAllocator *execAlloc = cx_->compartment->ionCompartment()->execAlloc(); +@@ -1365,7 +1365,7 @@ class ModuleCompiler + uint8_t *unalignedBytes = (uint8_t*)execAlloc->alloc(allocedBytes, &pool, JSC::ASMJS_CODE); + if (!unalignedBytes) + return false; +- uint8_t *code = (uint8_t*)AlignBytes((uintptr_t)unalignedBytes, gc::PageSize); ++ uint8_t *code = (uint8_t*)AlignBytes((uintptr_t)unalignedBytes, AsmJSPageSize); + + // The ExecutablePool owns the memory and must be released by the AsmJSModule. + module_->takeOwnership(pool, code, codeBytes, totalBytes); diff --git a/www/firefox/patches/patch-js_src_ion_AsmJS.h b/www/firefox/patches/patch-js_src_ion_AsmJS.h new file mode 100644 index 00000000000..8dbcf77e8b9 --- /dev/null +++ b/www/firefox/patches/patch-js_src_ion_AsmJS.h @@ -0,0 +1,14 @@ +$NetBSD: patch-js_src_ion_AsmJS.h,v 1.1 2013/06/26 11:32:12 ryoon Exp $ + +--- js/src/ion/AsmJS.h.orig 2013-06-17 22:13:09.000000000 +0000 ++++ js/src/ion/AsmJS.h +@@ -97,6 +97,9 @@ class AsmJSActivation + void setResumePC(void *pc) { resumePC_ = pc; } + }; + ++// The assumed page size; dynamically checked in CompileAsmJS. ++const size_t AsmJSPageSize = 4096; ++ + // The asm.js spec requires that the ArrayBuffer's byteLength be a multiple of 4096. + static const size_t AsmJSAllocationGranularity = 4096; + diff --git a/www/firefox/patches/patch-js_src_ion_AsmJSSignalHandlers.cpp b/www/firefox/patches/patch-js_src_ion_AsmJSSignalHandlers.cpp new file mode 100644 index 00000000000..d594060bdb5 --- /dev/null +++ b/www/firefox/patches/patch-js_src_ion_AsmJSSignalHandlers.cpp @@ -0,0 +1,13 @@ +$NetBSD: patch-js_src_ion_AsmJSSignalHandlers.cpp,v 1.1 2013/06/26 11:32:12 ryoon Exp $ + +--- js/src/ion/AsmJSSignalHandlers.cpp.orig 2013-06-17 22:13:09.000000000 +0000 ++++ js/src/ion/AsmJSSignalHandlers.cpp +@@ -271,7 +271,7 @@ LookupHeapAccess(const AsmJSModule &modu + # if defined(JS_CPU_X64) + # if defined(__DragonFly__) + # include <machine/npx.h> // for union savefpu +-# elif defined(__FreeBSD__) || defined(__OpenBSD__) ++# elif defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) + # include <machine/fpu.h> // for struct savefpu/fxsave64 + # endif + # endif diff --git a/www/firefox/patches/patch-js_src_jscompartment.h b/www/firefox/patches/patch-js_src_jscompartment.h index 22b6fdc3365..18fbbe0dcf4 100644 --- a/www/firefox/patches/patch-js_src_jscompartment.h +++ b/www/firefox/patches/patch-js_src_jscompartment.h @@ -1,20 +1,16 @@ -$NetBSD: patch-js_src_jscompartment.h,v 1.1 2013/05/23 13:12:13 ryoon Exp $ +$NetBSD: patch-js_src_jscompartment.h,v 1.2 2013/06/26 11:32:12 ryoon Exp $ ---- js/src/jscompartment.h.orig 2013-05-11 19:19:34.000000000 +0000 +--- js/src/jscompartment.h.orig 2013-06-17 22:13:11.000000000 +0000 +++ js/src/jscompartment.h -@@ -596,12 +596,12 @@ class js::AutoDebugModeGC - // The DEBUG_MODE_GC reason forces the collector to always throw - // everything away, as required for debug mode transitions. - if (needGC) -- GC(rt, GC_NORMAL, gcreason::DEBUG_MODE_GC); -+ GC(rt, GC_NORMAL, js::gcreason::DEBUG_MODE_GC); +@@ -396,9 +396,9 @@ class js::AutoDebugModeGC + GC(rt, GC_NORMAL, JS::gcreason::DEBUG_MODE_GC); } - void scheduleGC(Zone *zone) { + void scheduleGC(JS::Zone *zone) { JS_ASSERT(!rt->isHeapBusy()); - PrepareZoneForGC(zone); -+ js::PrepareZoneForGC(zone); ++ JS::PrepareZoneForGC(zone); needGC = true; } }; diff --git a/www/firefox/patches/patch-js_src_jspropertycacheinlines.h b/www/firefox/patches/patch-js_src_jspropertycacheinlines.h deleted file mode 100644 index c67744f6898..00000000000 --- a/www/firefox/patches/patch-js_src_jspropertycacheinlines.h +++ /dev/null @@ -1,22 +0,0 @@ -$NetBSD: patch-js_src_jspropertycacheinlines.h,v 1.1 2013/05/23 13:12:13 ryoon Exp $ - ---- js/src/jspropertycacheinlines.h.orig 2013-05-11 19:19:34.000000000 +0000 -+++ js/src/jspropertycacheinlines.h -@@ -32,7 +32,7 @@ JS_ALWAYS_INLINE void - js::PropertyCache::test(JSContext *cx, jsbytecode *pc, JSObject **obj, - JSObject **pobj, PropertyCacheEntry **entry, PropertyName **name) - { -- AutoAssertNoGC nogc; -+ js::AutoAssertNoGC nogc; - - JS_ASSERT(this == &cx->propertyCache()); - -@@ -65,7 +65,7 @@ JS_ALWAYS_INLINE bool - js::PropertyCache::testForSet(JSContext *cx, jsbytecode *pc, JSObject *obj, - PropertyCacheEntry **entryp, JSObject **obj2p, PropertyName **namep) - { -- AutoAssertNoGC nogc; -+ js::AutoAssertNoGC nogc; - - JS_ASSERT(this == &cx->propertyCache()); - diff --git a/www/firefox/patches/patch-js_src_jstypedarray.cpp b/www/firefox/patches/patch-js_src_jstypedarray.cpp new file mode 100644 index 00000000000..e1efd8a56df --- /dev/null +++ b/www/firefox/patches/patch-js_src_jstypedarray.cpp @@ -0,0 +1,54 @@ +$NetBSD: patch-js_src_jstypedarray.cpp,v 1.1 2013/06/26 11:32:12 ryoon Exp $ + +https://hg.mozilla.org/integration/mozilla-inbound/rev/49e4ff129351 + +--- js/src/jstypedarray.cpp.orig 2013-06-17 22:13:11.000000000 +0000 ++++ js/src/jstypedarray.cpp +@@ -341,9 +341,9 @@ ArrayBufferObject::uninlineData(JSContex + // | \ / + // obj->elements required to be page boundaries + // +-JS_STATIC_ASSERT(sizeof(ObjectElements) < PageSize); +-JS_STATIC_ASSERT(AsmJSAllocationGranularity == PageSize); +-static const size_t AsmJSMappedSize = PageSize + AsmJSBufferProtectedSize; ++JS_STATIC_ASSERT(sizeof(ObjectElements) < AsmJSPageSize); ++JS_STATIC_ASSERT(AsmJSAllocationGranularity == AsmJSPageSize); ++static const size_t AsmJSMappedSize = AsmJSPageSize + AsmJSBufferProtectedSize; + + bool + ArrayBufferObject::prepareForAsmJS(JSContext *cx, Handle<ArrayBufferObject*> buffer) +@@ -364,17 +364,19 @@ ArrayBufferObject::prepareForAsmJS(JSCon + # endif + + // Enable access to the valid region. +- JS_ASSERT(buffer->byteLength() % AsmJSAllocationGranularity == 0); ++ JS_ASSERT(buffer->byteLength() % static const size_t AsmJSMappedSize = PageSize + AsmJSBufferProtectedSize;smJSAllocationGranularity == 0); + # ifdef XP_WIN +- if (!VirtualAlloc(p, PageSize + buffer->byteLength(), MEM_COMMIT, PAGE_READWRITE)) ++ if (!VirtualAlloc(p, AsmJSPageSize + buffer->byteLength(), MEM_COMMIT, PAGE_READWRITE)) { + return false; ++ } + # else +- if (mprotect(p, PageSize + buffer->byteLength(), PROT_READ | PROT_WRITE)) ++ if (mprotect(p, AsmJSPageSize + buffer->byteLength(), PROT_READ | PROT_WRITE)) { + return false; ++ } + # endif + + // Copy over the current contents of the typed array. +- uint8_t *data = reinterpret_cast<uint8_t*>(p) + PageSize; ++ uint8_t *data = reinterpret_cast<uint8_t*>(p) + AsmJSPageSize; + memcpy(data, buffer->dataPointer(), buffer->byteLength()); + + // Swap the new elements into the ArrayBufferObject. +@@ -396,8 +398,8 @@ ArrayBufferObject::releaseAsmJSArrayBuff + ArrayBufferObject &buffer = obj->asArrayBuffer(); + JS_ASSERT(buffer.isAsmJSArrayBuffer()); + +- uint8_t *p = buffer.dataPointer() - PageSize ; +- JS_ASSERT(uintptr_t(p) % PageSize == 0); ++ uint8_t *p = buffer.dataPointer() - AsmJSPageSize ; ++ JS_ASSERT(uintptr_t(p) % AsmJSPageSize == 0); + # ifdef XP_WIN + VirtualFree(p, 0, MEM_RELEASE); + # else diff --git a/www/firefox/patches/patch-js_src_vm_ObjectImpl-inl.h b/www/firefox/patches/patch-js_src_vm_ObjectImpl-inl.h index 7e4ebb6cdea..b6d3a46fd84 100644 --- a/www/firefox/patches/patch-js_src_vm_ObjectImpl-inl.h +++ b/www/firefox/patches/patch-js_src_vm_ObjectImpl-inl.h @@ -1,8 +1,8 @@ -$NetBSD: patch-js_src_vm_ObjectImpl-inl.h,v 1.1 2013/05/23 13:12:13 ryoon Exp $ +$NetBSD: patch-js_src_vm_ObjectImpl-inl.h,v 1.2 2013/06/26 11:32:12 ryoon Exp $ ---- js/src/vm/ObjectImpl-inl.h.orig 2013-05-11 19:19:36.000000000 +0000 +--- js/src/vm/ObjectImpl-inl.h.orig 2013-06-17 22:13:12.000000000 +0000 +++ js/src/vm/ObjectImpl-inl.h -@@ -164,9 +164,9 @@ js::ObjectImpl::initializeSlotRange(uint +@@ -181,9 +181,9 @@ js::ObjectImpl::initializeSlotRange(uint JSRuntime *rt = runtime(); uint32_t offset = start; for (HeapSlot *sp = fixedStart; sp < fixedEnd; sp++) @@ -14,7 +14,7 @@ $NetBSD: patch-js_src_vm_ObjectImpl-inl.h,v 1.1 2013/05/23 13:12:13 ryoon Exp $ } inline bool -@@ -321,7 +321,7 @@ js::ObjectImpl::sizeOfThis() const +@@ -353,7 +353,7 @@ ZoneOfValue(const JS::Value &value) js::ObjectImpl::readBarrier(ObjectImpl *obj) { #ifdef JSGC_INCREMENTAL @@ -23,7 +23,7 @@ $NetBSD: patch-js_src_vm_ObjectImpl-inl.h,v 1.1 2013/05/23 13:12:13 ryoon Exp $ if (zone->needsBarrier()) { MOZ_ASSERT(!zone->rt->isHeapBusy()); JSObject *tmp = obj->asObjectPtr(); -@@ -335,7 +335,7 @@ inline void +@@ -367,7 +367,7 @@ inline void js::ObjectImpl::privateWriteBarrierPre(void **old) { #ifdef JSGC_INCREMENTAL @@ -32,8 +32,8 @@ $NetBSD: patch-js_src_vm_ObjectImpl-inl.h,v 1.1 2013/05/23 13:12:13 ryoon Exp $ if (zone->needsBarrier()) { if (*old && getClass()->trace) getClass()->trace(zone->barrierTracer(), this->asObjectPtr()); -@@ -362,7 +362,7 @@ js::ObjectImpl::writeBarrierPre(ObjectIm - if (uintptr_t(obj) < 32) +@@ -394,7 +394,7 @@ js::ObjectImpl::writeBarrierPre(ObjectIm + if (IsNullTaggedPointer(obj)) return; - Zone *zone = obj->zone(); diff --git a/www/firefox/patches/patch-media_libsoundtouch_src_cpu__detect__x86.cpp b/www/firefox/patches/patch-media_libsoundtouch_src_cpu__detect__x86.cpp index 43aee0260be..f168e26a935 100644 --- a/www/firefox/patches/patch-media_libsoundtouch_src_cpu__detect__x86.cpp +++ b/www/firefox/patches/patch-media_libsoundtouch_src_cpu__detect__x86.cpp @@ -1,23 +1,14 @@ -$NetBSD: patch-media_libsoundtouch_src_cpu__detect__x86.cpp,v 1.1 2013/05/23 13:12:13 ryoon Exp $ +$NetBSD: patch-media_libsoundtouch_src_cpu__detect__x86.cpp,v 1.2 2013/06/26 11:32:12 ryoon Exp $ ---- media/libsoundtouch/src/cpu_detect_x86.cpp.orig 2013-05-11 19:19:43.000000000 +0000 +--- media/libsoundtouch/src/cpu_detect_x86.cpp.orig 2013-06-17 22:13:19.000000000 +0000 +++ media/libsoundtouch/src/cpu_detect_x86.cpp -@@ -101,7 +101,7 @@ uint detectCPUextensions(void) - - uint res = 0; - --#if defined(__GNUC__) -+#if defined(__GNUC__) && defined(HAVE_CPUID_H) - // GCC version of cpuid. Requires GCC 4.3.0 or later for __cpuid intrinsic support. - uint eax, ebx, ecx, edx; // unsigned int is the standard type. uint is defined by the compiler and not guaranteed to be portable. +@@ -131,6 +131,9 @@ uint detectCPUextensions(void) -@@ -112,6 +112,9 @@ uint detectCPUextensions(void) - if (edx & bit_SSE) res = res | SUPPORT_SSE; - if (edx & bit_SSE2) res = res | SUPPORT_SSE2; + return res & ~_dwDisabledISA; +#elif defined(__GNUC__) + // No cpuid.h --> no cpuid support + return 0; #else - // Window / VS version of cpuid. Notice that Visual Studio 2005 or later required - // for __cpuid intrinsic support. + + /// One of these is true: diff --git a/www/firefox/patches/patch-media_mtransport_third__party_nICEr_src_stun_addrs.c b/www/firefox/patches/patch-media_mtransport_third__party_nICEr_src_stun_addrs.c index dbe165352f9..df57454c718 100644 --- a/www/firefox/patches/patch-media_mtransport_third__party_nICEr_src_stun_addrs.c +++ b/www/firefox/patches/patch-media_mtransport_third__party_nICEr_src_stun_addrs.c @@ -1,32 +1,21 @@ -$NetBSD: patch-media_mtransport_third__party_nICEr_src_stun_addrs.c,v 1.1 2013/05/23 13:12:13 ryoon Exp $ +$NetBSD: patch-media_mtransport_third__party_nICEr_src_stun_addrs.c,v 1.2 2013/06/26 11:32:12 ryoon Exp $ ---- media/mtransport/third_party/nICEr/src/stun/addrs.c.orig 2013-05-11 19:19:43.000000000 +0000 +--- media/mtransport/third_party/nICEr/src/stun/addrs.c.orig 2013-06-17 22:13:19.000000000 +0000 +++ media/mtransport/third_party/nICEr/src/stun/addrs.c -@@ -55,7 +55,9 @@ static char *RCSSTRING __UNUSED__="$Id: +@@ -54,11 +54,15 @@ static char *RCSSTRING __UNUSED__="$Id: + #include <linux/sysctl.h> #endif #include <net/if.h> - #ifndef LINUX -+#if !defined(__OpenBSD__) && !defined(__NetBSD__) +-#ifndef LINUX ++#if defined(__FreeBSD__) #include <net/if_var.h> -+#endif #include <net/if_dl.h> #include <net/if_types.h> #include <sys/sockio.h> -@@ -80,7 +82,7 @@ static char *RCSSTRING __UNUSED__="$Id: - - - --#ifdef DARWIN -+#if defined(BSD) || defined(DARWIN) - /* - * Copyright (c) 1983, 1993 - * The Regents of the University of California. All rights reserved. -@@ -690,7 +692,7 @@ nr_stun_get_addrs(nr_transport_addr addr - int _status=0; - int i; - --#ifdef DARWIN -+#if defined(BSD) || defined(DARWIN) - _status = stun_get_mib_addrs(addrs, maxaddrs, count); - #elif defined(WIN32) - _status = stun_get_win32_addrs(addrs, maxaddrs, count); ++#elif defined(__NetBSD__) ++#include <net/if_dl.h> ++#include <net/if_types.h> ++#include <sys/sockio.h> + #else + #include <linux/if.h> + #endif diff --git a/www/firefox/patches/patch-media_mtransport_third__party_nICEr_src_util_mbslen.c b/www/firefox/patches/patch-media_mtransport_third__party_nICEr_src_util_mbslen.c index 5e8a5d43340..2b6111024aa 100644 --- a/www/firefox/patches/patch-media_mtransport_third__party_nICEr_src_util_mbslen.c +++ b/www/firefox/patches/patch-media_mtransport_third__party_nICEr_src_util_mbslen.c @@ -1,6 +1,6 @@ -$NetBSD: patch-media_mtransport_third__party_nICEr_src_util_mbslen.c,v 1.1 2013/05/23 13:12:13 ryoon Exp $ +$NetBSD: patch-media_mtransport_third__party_nICEr_src_util_mbslen.c,v 1.2 2013/06/26 11:32:12 ryoon Exp $ ---- media/mtransport/third_party/nICEr/src/util/mbslen.c.orig 2013-05-11 19:19:43.000000000 +0000 +--- media/mtransport/third_party/nICEr/src/util/mbslen.c.orig 2013-06-17 22:13:19.000000000 +0000 +++ media/mtransport/third_party/nICEr/src/util/mbslen.c @@ -43,9 +43,17 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE #include <locale.h> @@ -53,7 +53,7 @@ $NetBSD: patch-media_mtransport_third__party_nICEr_src_util_mbslen.c,v 1.1 2013/ #ifdef WIN32 if (!setlocale(LC_CTYPE, 0)) -@@ -98,18 +106,18 @@ mbslen(const char *s, size_t *ncharsp) +@@ -99,18 +107,18 @@ mbslen(const char *s, size_t *ncharsp) ABORT(R_NOT_FOUND); #endif @@ -75,4 +75,4 @@ $NetBSD: patch-media_mtransport_third__party_nICEr_src_util_mbslen.c,v 1.1 2013/ +#endif /* HAVE_XLOCALE */ { if (nbytes == (size_t)-1) /* should never happen */ { - assert(0); + ABORT(R_INTERNAL); diff --git a/www/firefox/patches/patch-media_webrtc_trunk_build_common.gypi b/www/firefox/patches/patch-media_webrtc_trunk_build_common.gypi deleted file mode 100644 index 38081eb4aea..00000000000 --- a/www/firefox/patches/patch-media_webrtc_trunk_build_common.gypi +++ /dev/null @@ -1,60 +0,0 @@ -$NetBSD: patch-media_webrtc_trunk_build_common.gypi,v 1.1 2013/05/23 13:12:13 ryoon Exp $ - ---- media/webrtc/trunk/build/common.gypi.orig 2013-05-11 19:19:44.000000000 +0000 -+++ media/webrtc/trunk/build/common.gypi -@@ -80,12 +80,21 @@ - ['use_ash==1', { - 'use_aura%': 1, - }], -+ -+ # A flag for BSD platforms -+ ['OS=="dragonfly" or OS=="freebsd" or OS=="netbsd" or \ -+ OS=="openbsd"', { -+ 'os_bsd%': 1, -+ }, { -+ 'os_bsd%': 0, -+ }], - ], - }, - # Copy conditionally-set variables out one scope. - 'chromeos%': '<(chromeos)', - 'use_aura%': '<(use_aura)', - 'use_ash%': '<(use_ash)', -+ 'os_bsd%': '<(os_bsd)', - 'use_openssl%': '<(use_openssl)', - 'use_ibus%': '<(use_ibus)', - 'enable_viewport%': '<(enable_viewport)', -@@ -119,7 +128,7 @@ - }], - - # Set toolkit_uses_gtk for the Chromium browser on Linux. -- ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris") and use_aura==0', { -+ ['(OS=="linux" or OS=="solaris" or os_bsd==1) and use_aura==0', { - 'toolkit_uses_gtk%': 1, - }, { - 'toolkit_uses_gtk%': 0, -@@ -144,6 +153,7 @@ - 'toolkit_uses_gtk%': '<(toolkit_uses_gtk)', - 'use_aura%': '<(use_aura)', - 'use_ash%': '<(use_ash)', -+ 'os_bsd%': '<(os_bsd)', - 'use_openssl%': '<(use_openssl)', - 'use_ibus%': '<(use_ibus)', - 'enable_viewport%': '<(enable_viewport)', -@@ -406,15 +416,8 @@ - 'os_posix%': 1, - }], - -- # A flag for BSD platforms -- ['OS=="freebsd" or OS=="openbsd"', { -- 'os_bsd%': 1, -- }, { -- 'os_bsd%': 0, -- }], -- - # NSS usage. -- ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris") and use_openssl==0', { -+ ['(OS=="linux" or OS=="solaris" or os_bsd==1) and use_openssl==0', { - 'use_nss%': 1, - }, { - 'use_nss%': 0, diff --git a/www/firefox/patches/patch-media_webrtc_trunk_testing_gtest_include_gtest_internal_gtest-port.h b/www/firefox/patches/patch-media_webrtc_trunk_testing_gtest_include_gtest_internal_gtest-port.h deleted file mode 100644 index 0fe88296002..00000000000 --- a/www/firefox/patches/patch-media_webrtc_trunk_testing_gtest_include_gtest_internal_gtest-port.h +++ /dev/null @@ -1,19 +0,0 @@ -$NetBSD: patch-media_webrtc_trunk_testing_gtest_include_gtest_internal_gtest-port.h,v 1.1 2013/05/23 13:12:13 ryoon Exp $ - ---- media/webrtc/trunk/testing/gtest/include/gtest/internal/gtest-port.h.orig 2013-05-11 19:19:44.000000000 +0000 -+++ media/webrtc/trunk/testing/gtest/include/gtest/internal/gtest-port.h -@@ -490,10 +490,10 @@ - # define GTEST_ENV_HAS_TR1_TUPLE_ 1 - # endif - --// C++11 specifies that <tuple> provides std::tuple. Users can't use --// gtest in C++11 mode until their standard library is at least that --// compliant. --# if GTEST_LANG_CXX11 -+// C++11 specifies that <tuple> provides std::tuple. Use that if gtest is used -+// in C++11 mode and libstdc++ isn't very old (binaries targeting OS X 10.6 -+// can build with clang but need to use gcc4.2's libstdc++). -+# if GTEST_LANG_CXX11 && (!defined(__GLIBCXX__) || __GLIBCXX__ > 20110325) - # define GTEST_ENV_HAS_STD_TUPLE_ 1 - # endif - diff --git a/www/firefox/patches/patch-media_webrtc_trunk_third__party_libyuv_libyuv.gyp b/www/firefox/patches/patch-media_webrtc_trunk_third__party_libyuv_libyuv.gyp index 153536a9a01..11e99aa2a21 100644 --- a/www/firefox/patches/patch-media_webrtc_trunk_third__party_libyuv_libyuv.gyp +++ b/www/firefox/patches/patch-media_webrtc_trunk_third__party_libyuv_libyuv.gyp @@ -1,18 +1,10 @@ -$NetBSD: patch-media_webrtc_trunk_third__party_libyuv_libyuv.gyp,v 1.1 2013/05/23 13:12:13 ryoon Exp $ +$NetBSD: patch-media_webrtc_trunk_third__party_libyuv_libyuv.gyp,v 1.2 2013/06/26 11:32:12 ryoon Exp $ ---- media/webrtc/trunk/third_party/libyuv/libyuv.gyp.orig 2013-05-11 19:19:44.000000000 +0000 +--- media/webrtc/trunk/third_party/libyuv/libyuv.gyp.orig 2013-06-17 22:13:19.000000000 +0000 +++ media/webrtc/trunk/third_party/libyuv/libyuv.gyp -@@ -9,6 +9,7 @@ - { - 'variables': { - 'use_system_libjpeg%': 0, -+ 'yuv_disable_asm%': 0, - }, - 'targets': [ - { -@@ -50,6 +51,11 @@ - ], - }, +@@ -58,6 +58,11 @@ + }], + ], 'conditions': [ + ['yuv_disable_asm==1', { + 'defines': [ diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_build_common.gypi b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_build_common.gypi index ede6bd8c8b0..93c272ea0d5 100644 --- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_build_common.gypi +++ b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_build_common.gypi @@ -1,7 +1,19 @@ -$NetBSD: patch-media_webrtc_trunk_webrtc_build_common.gypi,v 1.1 2013/05/23 13:12:13 ryoon Exp $ +$NetBSD: patch-media_webrtc_trunk_webrtc_build_common.gypi,v 1.2 2013/06/26 11:32:12 ryoon Exp $ ---- media/webrtc/trunk/webrtc/build/common.gypi.orig 2013-05-11 19:19:44.000000000 +0000 +--- media/webrtc/trunk/webrtc/build/common.gypi.orig 2013-06-17 22:13:20.000000000 +0000 +++ media/webrtc/trunk/webrtc/build/common.gypi +@@ -71,9 +71,9 @@ + 'enable_data_logging%': 0, + + # Disable these to not build components which can be externally provided. +- 'build_libjpeg%': 1, ++ 'build_libjpeg%': 0, + 'build_libyuv%': 1, +- 'build_libvpx%': 1, ++ 'build_libvpx%': 0, + + # Enable to use the Mozilla internal settings. + 'build_with_mozilla%': 0, @@ -124,6 +124,11 @@ # and Java Implementation 'enable_android_opensl%': 0, @@ -14,7 +26,7 @@ $NetBSD: patch-media_webrtc_trunk_webrtc_build_common.gypi,v 1.1 2013/05/23 13:1 ['OS=="ios"', { 'enable_video%': 0, 'enable_protobuf%': 0, -@@ -210,6 +215,18 @@ +@@ -215,6 +220,18 @@ }], ], }], diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture__factory.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture__factory.cc new file mode 100644 index 00000000000..827b195229a --- /dev/null +++ b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture__factory.cc @@ -0,0 +1,15 @@ +$NetBSD: patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture__factory.cc,v 1.1 2013/06/26 11:32:12 ryoon Exp $ + +--- media/webrtc/trunk/webrtc/modules/video_capture/video_capture_factory.cc.orig 2013-06-17 22:13:20.000000000 +0000 ++++ media/webrtc/trunk/webrtc/modules/video_capture/video_capture_factory.cc +@@ -8,8 +8,10 @@ + * be found in the AUTHORS file in the root of the source tree. + */ + ++_Pragma("GCC visibility push(default)") + #include "video_capture_factory.h" + #include "video_capture_impl.h" ++_Pragma("GCC visibility pop") + + namespace webrtc + { diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.cc index 4562c3bc9bd..1cb66ddae48 100644 --- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.cc +++ b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.cc @@ -1,13 +1,15 @@ -$NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.cc,v 1.1 2013/05/23 13:12:13 ryoon Exp $ +$NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.cc,v 1.2 2013/06/26 11:32:12 ryoon Exp $ ---- media/webrtc/trunk/webrtc/system_wrappers/source/thread_posix.cc.orig 2013-05-11 19:19:46.000000000 +0000 +--- media/webrtc/trunk/webrtc/system_wrappers/source/thread_posix.cc.orig 2013-06-17 22:13:20.000000000 +0000 +++ media/webrtc/trunk/webrtc/system_wrappers/source/thread_posix.cc -@@ -59,6 +59,17 @@ +@@ -59,6 +59,19 @@ #include <sys/prctl.h> #endif +#if defined(__NetBSD__) +#include <lwp.h> ++#include <pthread.h> ++#include <sched.h> +#elif defined(__FreeBSD__) +#include <sys/param.h> +#include <sys/thr.h> @@ -20,7 +22,7 @@ $NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.c #include "webrtc/system_wrappers/interface/critical_section_wrapper.h" #include "webrtc/system_wrappers/interface/event_wrapper.h" #include "webrtc/system_wrappers/interface/trace.h" -@@ -141,6 +152,20 @@ uint32_t ThreadWrapper::GetThreadId() { +@@ -141,6 +154,20 @@ uint32_t ThreadWrapper::GetThreadId() { return static_cast<uint32_t>(syscall(__NR_gettid)); #elif defined(WEBRTC_MAC) || defined(WEBRTC_IOS) return pthread_mach_thread_np(pthread_self()); @@ -41,7 +43,7 @@ $NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.c #else return reinterpret_cast<uint32_t>(pthread_self()); #endif -@@ -172,7 +197,7 @@ ThreadPosix::~ThreadPosix() { +@@ -172,7 +199,7 @@ ThreadPosix::~ThreadPosix() { delete crit_state_; } @@ -50,13 +52,12 @@ $NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.c bool ThreadPosix::Start(unsigned int& thread_id) { -@@ -237,13 +262,18 @@ bool ThreadPosix::Start(unsigned int& th +@@ -237,21 +264,43 @@ bool ThreadPosix::Start(unsigned int& th // CPU_ZERO and CPU_SET are not available in NDK r7, so disable // SetAffinity on Android for now. --#if (defined(WEBRTC_LINUX) && (!defined(WEBRTC_ANDROID))) -+#if defined(__FreeBSD__) || (defined(WEBRTC_LINUX) && \ -+ (!defined(WEBRTC_ANDROID))) +-#if (defined(WEBRTC_LINUX) && (!defined(WEBRTC_ANDROID)) && (!defined(WEBRTC_GONK))) ++#if defined(__FreeBSD__) || defined(__NetBSD__) || (defined(WEBRTC_LINUX) && (!defined(WEBRTC_ANDROID)) && (!defined(WEBRTC_GONK))) bool ThreadPosix::SetAffinity(const int* processor_numbers, const unsigned int amount_of_processors) { if (!processor_numbers || (amount_of_processors == 0)) { @@ -64,26 +65,40 @@ $NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.c } +#if defined(__FreeBSD__) + cpuset_t mask; ++#elif defined(__NetBSD__) ++ cpuset_t *mask; +#else cpu_set_t mask; +#endif ++#if defined(__NetBSD__) ++ cpuset_zero(mask); ++#else CPU_ZERO(&mask); ++#endif for (unsigned int processor = 0; -@@ -251,7 +281,11 @@ bool ThreadPosix::SetAffinity(const int* + processor < amount_of_processors; ++processor) { ++#if defined(__NetBSD__) ++ cpuset_set(processor_numbers[processor], mask); ++#else CPU_SET(processor_numbers[processor], &mask); ++#endif } --#if defined(WEBRTC_ANDROID) +-#if defined(WEBRTC_ANDROID) || defined(WEBRTC_GONK) +#if defined(__FreeBSD__) + const int result = pthread_setaffinity_np(thread_, + sizeof(mask), + &mask); -+#elif defined(WEBRTC_ANDROID) ++#elif defined(__NetBSD__) ++ const int result = pthread_setaffinity_np(thread_, ++ sizeof(mask), ++ mask); ++#elif defined(WEBRTC_ANDROID) || defined(WEBRTC_GONK) // Android. const int result = syscall(__NR_sched_setaffinity, pid_, -@@ -325,6 +359,10 @@ void ThreadPosix::Run() { +@@ -325,6 +374,10 @@ void ThreadPosix::Run() { if (set_thread_name_) { #ifdef WEBRTC_LINUX prctl(PR_SET_NAME, (unsigned long)name_, 0, 0, 0); diff --git a/www/firefox/patches/patch-media_webrtc_webrtc__config.gypi b/www/firefox/patches/patch-media_webrtc_webrtc__config.gypi index 2b827584637..f16543444ac 100644 --- a/www/firefox/patches/patch-media_webrtc_webrtc__config.gypi +++ b/www/firefox/patches/patch-media_webrtc_webrtc__config.gypi @@ -1,6 +1,6 @@ -$NetBSD: patch-media_webrtc_webrtc__config.gypi,v 1.1 2013/05/23 13:12:13 ryoon Exp $ +$NetBSD: patch-media_webrtc_webrtc__config.gypi,v 1.2 2013/06/26 11:32:12 ryoon Exp $ ---- media/webrtc/webrtc_config.gypi.orig 2013-05-11 19:19:46.000000000 +0000 +--- media/webrtc/webrtc_config.gypi.orig 2013-06-17 22:13:21.000000000 +0000 +++ media/webrtc/webrtc_config.gypi @@ -14,7 +14,6 @@ 'include_internal_video_render': 0, @@ -8,5 +8,5 @@ $NetBSD: patch-media_webrtc_webrtc__config.gypi,v 1.1 2013/05/23 13:12:13 ryoon 'enable_protobuf': 0, - 'include_pulse_audio': 0, 'include_tests': 0, + 'enable_android_opensl': 1, # use_system_lib* still seems to be in use in trunk/build - 'use_system_libjpeg': 0, diff --git a/www/firefox/patches/patch-mp b/www/firefox/patches/patch-mp deleted file mode 100644 index 4060c67e8bd..00000000000 --- a/www/firefox/patches/patch-mp +++ /dev/null @@ -1,23 +0,0 @@ -$NetBSD: patch-mp,v 1.3 2013/05/23 13:12:13 ryoon Exp $ - ---- media/libsydneyaudio/src/Makefile.in.orig 2013-05-11 19:19:43.000000000 +0000 -+++ media/libsydneyaudio/src/Makefile.in -@@ -70,6 +70,18 @@ CSRCS = \ - $(NULL) - endif - -+ifdef MOZ_PULSEAUDIO -+CSRCS = \ -+ sydney_audio_pulseaudio.c \ -+ $(NULL) -+endif -+ -+ifdef MOZ_PULSEAUDIO -+CSRCS = \ -+ sydney_audio_pulseaudio.c \ -+ $(NULL) -+endif -+ - ifeq ($(OS_ARCH),WINNT) - OS_LIBS += winmm.lib - endif diff --git a/www/firefox/patches/patch-netwerk__protocol__websocket__WebSocketChannel.cpp b/www/firefox/patches/patch-netwerk__protocol__websocket__WebSocketChannel.cpp index cca3c637187..e3aeb089c84 100644 --- a/www/firefox/patches/patch-netwerk__protocol__websocket__WebSocketChannel.cpp +++ b/www/firefox/patches/patch-netwerk__protocol__websocket__WebSocketChannel.cpp @@ -1,4 +1,4 @@ -$NetBSD: patch-netwerk__protocol__websocket__WebSocketChannel.cpp,v 1.1 2013/06/21 23:11:42 ryoon Exp $ +$NetBSD: patch-netwerk__protocol__websocket__WebSocketChannel.cpp,v 1.2 2013/06/26 11:32:12 ryoon Exp $ # HG changeset patch # User Martin Husemann <martin@netbsd.org> @@ -8,14 +8,9 @@ $NetBSD: patch-netwerk__protocol__websocket__WebSocketChannel.cpp,v 1.1 2013/06/ Bug 871555: Use memcpy and properly aligned temporary variables instead of pointer casts with unclear alignment r=mcmanus diff netwerk/protocol/websocket/WebSocketChannel.cpp netwerk/protocol/websocket/WebSocketChannel.cpp ---- netwerk/protocol/websocket/WebSocketChannel.cpp +--- netwerk/protocol/websocket/WebSocketChannel.cpp.orig 2013-06-17 22:13:23.000000000 +0000 +++ netwerk/protocol/websocket/WebSocketChannel.cpp -@@ -1627,17 +1627,18 @@ WebSocketChannel::PrimeNewOutgoingMessag - // payload is offset 6 including 4 for the mask - payload = mOutHeader + 6; - - // The close reason code sits in the first 2 bytes of payload - // If the channel user provided a code and reason during Close() +@@ -1632,7 +1632,8 @@ WebSocketChannel::PrimeNewOutgoingMessag // and there isn't an internal error, use that. if (NS_SUCCEEDED(mStopOnClose)) { if (mScriptCloseCode) { @@ -25,17 +20,7 @@ diff netwerk/protocol/websocket/WebSocketChannel.cpp netwerk/protocol/websocket/ mOutHeader[1] += 2; mHdrOutToSend = 8; if (!mScriptCloseReason.IsEmpty()) { - NS_ABORT_IF_FALSE(mScriptCloseReason.Length() <= 123, - "Close Reason Too Long"); - mOutHeader[1] += mScriptCloseReason.Length(); - mHdrOutToSend += mScriptCloseReason.Length(); - memcpy (payload + 2, -@@ -1646,17 +1647,18 @@ WebSocketChannel::PrimeNewOutgoingMessag - } - } else { - // No close code/reason, so payload length = 0. We must still send mask - // even though it's not used. Keep payload offset so we write mask - // below. +@@ -1651,7 +1652,8 @@ WebSocketChannel::PrimeNewOutgoingMessag mHdrOutToSend = 6; } } else { @@ -45,17 +30,7 @@ diff netwerk/protocol/websocket/WebSocketChannel.cpp netwerk/protocol/websocket/ mOutHeader[1] += 2; mHdrOutToSend = 8; } - - if (mServerClosed) { - /* bidi close complete */ - mReleaseOnTransmit = 1; - } else if (NS_FAILED(mStopOnClose)) { -@@ -1734,17 +1736,18 @@ WebSocketChannel::PrimeNewOutgoingMessag - LOG(("WebSocketChannel::PrimeNewOutgoingMessage(): " - "GenerateRandomBytes failure %x\n", rv)); - StopSession(rv); - return; - } +@@ -1739,7 +1741,8 @@ WebSocketChannel::PrimeNewOutgoingMessag mask = * reinterpret_cast<uint32_t *>(buffer); NS_Free(buffer); } while (!mask); @@ -65,9 +40,3 @@ diff netwerk/protocol/websocket/WebSocketChannel.cpp netwerk/protocol/websocket/ LOG(("WebSocketChannel::PrimeNewOutgoingMessage() using mask %08x\n", mask)); - // We don't mask the framing, but occasionally we stick a little payload - // data in the buffer used for the framing. Close frames are the current - // example. This data needs to be masked, but it is never more than a - // handful of bytes and might rotate the mask, so we can just do it locally. - // For real data frames we ship the bulk of the payload off to ApplyMask() - diff --git a/www/firefox/patches/patch-netwerk_sctp_src_netinet6_sctp6__usrreq.c b/www/firefox/patches/patch-netwerk_sctp_src_netinet6_sctp6__usrreq.c new file mode 100644 index 00000000000..93c78d4232c --- /dev/null +++ b/www/firefox/patches/patch-netwerk_sctp_src_netinet6_sctp6__usrreq.c @@ -0,0 +1,13 @@ +$NetBSD: patch-netwerk_sctp_src_netinet6_sctp6__usrreq.c,v 1.1 2013/06/26 11:32:12 ryoon Exp $ + +--- netwerk/sctp/src/netinet6/sctp6_usrreq.c.orig 2013-06-17 22:13:23.000000000 +0000 ++++ netwerk/sctp/src/netinet6/sctp6_usrreq.c +@@ -459,6 +459,8 @@ sctp6_notify(struct sctp_inpcb *inp, + (icmph->icmp6_code == ICMP_UNREACH_HOST_PROHIB) || + #ifdef __Panda__ + (icmph->icmp6_code == ICMP_UNREACH_ADMIN)) { ++#elif defined(__Userspace_os_NetBSD) ++ (icmph->icmp6_code == ICMP_UNREACH_ADMIN_PROHIBIT)) { + #else + (icmph->icmp6_code == ICMP_UNREACH_FILTER_PROHIB)) { + #endif diff --git a/www/firefox/patches/patch-netwerk_sctp_src_netinet_sctp__os__userspace.h b/www/firefox/patches/patch-netwerk_sctp_src_netinet_sctp__os__userspace.h index ce6a786c477..4f5c98dc6b8 100644 --- a/www/firefox/patches/patch-netwerk_sctp_src_netinet_sctp__os__userspace.h +++ b/www/firefox/patches/patch-netwerk_sctp_src_netinet_sctp__os__userspace.h @@ -1,8 +1,17 @@ -$NetBSD: patch-netwerk_sctp_src_netinet_sctp__os__userspace.h,v 1.1 2013/05/23 13:12:13 ryoon Exp $ +$NetBSD: patch-netwerk_sctp_src_netinet_sctp__os__userspace.h,v 1.2 2013/06/26 11:32:12 ryoon Exp $ ---- netwerk/sctp/src/netinet/sctp_os_userspace.h.orig 2013-05-11 19:19:49.000000000 +0000 +--- netwerk/sctp/src/netinet/sctp_os_userspace.h.orig 2013-06-17 22:13:23.000000000 +0000 +++ netwerk/sctp/src/netinet/sctp_os_userspace.h -@@ -395,7 +395,9 @@ typedef pthread_t userland_thread_t; +@@ -383,7 +383,7 @@ struct udphdr { + #else /* !defined(Userspace_os_Windows) */ + #include <sys/cdefs.h> /* needed? added from old __FreeBSD__ */ + #include <sys/socket.h> +-#if defined(__Userspace_os_FreeBSD) || defined(__Userspace_os_OpenBSD) || defined(ANDROID) ++#if defined(__Userspace_os_FreeBSD) || defined(__Userspace_os_OpenBSD) || defined(ANDROID) || defined(__Userspace_os_NetBSD) + #include <pthread.h> + #endif + typedef pthread_mutex_t userland_mutex_t; +@@ -397,7 +397,9 @@ typedef pthread_t userland_thread_t; #define MA_OWNED 7 /* sys/mutex.h typically on FreeBSD */ #if !defined(__Userspace_os_FreeBSD) struct mtx {int dummy;}; @@ -12,3 +21,21 @@ $NetBSD: patch-netwerk_sctp_src_netinet_sctp__os__userspace.h,v 1.1 2013/05/23 1 struct sx {int dummy;}; #endif +@@ -500,7 +502,7 @@ struct sx {int dummy;}; + #include <netinet/ip6.h> + #include <netinet/icmp6.h> + #endif +-#if defined(__Userspace_os_Linux) || defined(__Userspace_os_Darwin) || defined(__Userspace_os_FreeBSD) || defined(__Userspace_os_OpenBSD) ||defined(__Userspace_os_Windows) ++#if defined(__Userspace_os_Linux) || defined(__Userspace_os_Darwin) || defined(__Userspace_os_FreeBSD) || defined(__Userspace_os_OpenBSD) ||defined(__Userspace_os_Windows) || defined(__Userspace_os_NetBSD) + #include "user_ip6_var.h" + #else + #include <netinet6/ip6_var.h> +@@ -1120,6 +1122,8 @@ sctp_get_mbuf_for_msg(unsigned int space + #if defined(__Userspace_os_FreeBSD) || defined(__Userspace_os_OpenBSD) + /* stolen from /usr/include/sys/socket.h */ + #define CMSG_ALIGN(n) _ALIGN(n) ++#elif defined(__Userspace_os_NetBSD) ++#define CMSG_ALIGN(n) (((n) + __ALIGNBYTES) & ~__ALIGNBYTES) + #elif defined(__Userspace_os_Darwin) + #if !defined(__DARWIN_ALIGNBYTES) + #define __DARWIN_ALIGNBYTES (sizeof(__darwin_size_t) - 1) diff --git a/www/firefox/patches/patch-netwerk_sctp_src_netinet_sctp__usrreq.c b/www/firefox/patches/patch-netwerk_sctp_src_netinet_sctp__usrreq.c new file mode 100644 index 00000000000..5be2b66e3b3 --- /dev/null +++ b/www/firefox/patches/patch-netwerk_sctp_src_netinet_sctp__usrreq.c @@ -0,0 +1,13 @@ +$NetBSD: patch-netwerk_sctp_src_netinet_sctp__usrreq.c,v 1.1 2013/06/26 11:32:12 ryoon Exp $ + +--- netwerk/sctp/src/netinet/sctp_usrreq.c.orig 2013-06-17 22:13:23.000000000 +0000 ++++ netwerk/sctp/src/netinet/sctp_usrreq.c +@@ -414,6 +414,8 @@ sctp_notify(struct sctp_inpcb *inp, + (icmph->icmp_code == ICMP_UNREACH_HOST_PROHIB) || + #ifdef __Panda__ + (icmph->icmp_code == ICMP_UNREACH_ADMIN)) { ++#elif defined(__Userspace_os_NetBSD) ++ (icmph->icmp_code == ICMP_UNREACH_ADMIN_PROHIBIT)) { + #else + (icmph->icmp_code == ICMP_UNREACH_FILTER_PROHIB)) { + #endif diff --git a/www/firefox/patches/patch-netwerk_sctp_src_user__socket.c b/www/firefox/patches/patch-netwerk_sctp_src_user__socket.c new file mode 100644 index 00000000000..46b3ad82819 --- /dev/null +++ b/www/firefox/patches/patch-netwerk_sctp_src_user__socket.c @@ -0,0 +1,53 @@ +$NetBSD: patch-netwerk_sctp_src_user__socket.c,v 1.1 2013/06/26 11:32:12 ryoon Exp $ + +--- netwerk/sctp/src/user_socket.c.orig 2013-06-17 22:13:23.000000000 +0000 ++++ netwerk/sctp/src/user_socket.c +@@ -1104,8 +1104,13 @@ userspace_sctp_recvmsg(struct socket *so + (struct sctp_sndrcvinfo *)sinfo, 1); + + if (error) { ++#if defined(__Userspace_os_NetBSD) ++ if (auio.uio_resid != (int)ulen && ( ++ error == EINTR || error == EWOULDBLOCK)) ++#else + if (auio.uio_resid != (int)ulen && (error == ERESTART || + error == EINTR || error == EWOULDBLOCK)) ++#endif + error = 0; + } + if ((fromlenp != NULL) && (fromlen > 0) && (from != NULL)) { +@@ -1193,7 +1198,11 @@ usrsctp_recvv(struct socket *so, + (struct sctp_sndrcvinfo *)&seinfo, 1); + if (errno) { + if (auio.uio_resid != (int)ulen && ++#if defined(__Userspace_os_NetBSD) ++ (errno == EINTR || errno == EWOULDBLOCK)) { ++#else + (errno == ERESTART || errno == EINTR || errno == EWOULDBLOCK)) { ++#endif + errno = 0; + } + } +@@ -2143,7 +2152,11 @@ int user_connect(struct socket *so, stru + error = pthread_cond_wait(SOCK_COND(so), SOCK_MTX(so)); + #endif + if (error) { ++#if defined(__Userspace_os_NetBSD) ++ if (error == EINTR) ++#else + if (error == EINTR || error == ERESTART) ++#endif + interrupted = 1; + break; + } +@@ -2157,8 +2170,10 @@ int user_connect(struct socket *so, stru + bad: + if (!interrupted) + so->so_state &= ~SS_ISCONNECTING; ++#if !defined(__Userspace_os_NetBSD) + if (error == ERESTART) + error = EINTR; ++#endif + done1: + return (error); + } diff --git a/www/firefox/patches/patch-netwerk_sctp_src_user__socketvar.h b/www/firefox/patches/patch-netwerk_sctp_src_user__socketvar.h index e7f07a0cd6c..70bd3e69213 100644 --- a/www/firefox/patches/patch-netwerk_sctp_src_user__socketvar.h +++ b/www/firefox/patches/patch-netwerk_sctp_src_user__socketvar.h @@ -1,6 +1,6 @@ -$NetBSD: patch-netwerk_sctp_src_user__socketvar.h,v 1.1 2013/05/23 13:12:13 ryoon Exp $ +$NetBSD: patch-netwerk_sctp_src_user__socketvar.h,v 1.2 2013/06/26 11:32:12 ryoon Exp $ ---- netwerk/sctp/src/user_socketvar.h.orig 2013-05-11 19:19:49.000000000 +0000 +--- netwerk/sctp/src/user_socketvar.h.orig 2013-06-17 22:13:23.000000000 +0000 +++ netwerk/sctp/src/user_socketvar.h @@ -47,7 +47,7 @@ /* #include <sys/_lock.h> was 0 byte file */ @@ -11,23 +11,17 @@ $NetBSD: patch-netwerk_sctp_src_user__socketvar.h,v 1.1 2013/05/23 13:12:13 ryoo #include <sys/uio.h> #endif #define SOCK_MAXADDRLEN 255 -@@ -64,16 +64,18 @@ +@@ -64,11 +64,11 @@ #define ERESTART (-1) #endif --#if !defined(__Userspace_os_Darwin) -+#if !defined(__Userspace_os_Darwin) && !defined(__Userspace_os_NetBSD) +-#if !defined(__Userspace_os_Darwin) && !defined(__Userspace_os_OpenBSD) ++#if !defined(__Userspace_os_Darwin) && !defined(__Userspace_os_OpenBSD) && !defined(__Userspace_os_NetBSD) enum uio_rw { UIO_READ, UIO_WRITE }; #endif -+#if !defined(__Userspace_os_NetBSD) +-#if !defined(__Userspace_os_OpenBSD) ++#if !defined(__Userspace_os_OpenBSD) && !defined(__Userspace_os_NetBSD) /* Segment flag values. */ enum uio_seg { UIO_USERSPACE, /* from user data space */ - UIO_SYSSPACE, /* from system space */ - UIO_NOCOPY /* don't copy, already in object */ - }; -+#endif - - struct proc { - int stub; /* struct proc is a dummy for __Userspace__ */ diff --git a/www/firefox/patches/patch-toolkit_toolkit-tiers.mk b/www/firefox/patches/patch-toolkit_toolkit-tiers.mk deleted file mode 100644 index 6eaceeaf07e..00000000000 --- a/www/firefox/patches/patch-toolkit_toolkit-tiers.mk +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-toolkit_toolkit-tiers.mk,v 1.1 2013/05/23 13:12:13 ryoon Exp $ - ---- toolkit/toolkit-tiers.mk.orig 2013-01-04 23:44:46.000000000 +0000 -+++ toolkit/toolkit-tiers.mk -@@ -43,7 +43,7 @@ ifdef MOZ_UPDATER - ifndef MOZ_NATIVE_BZ2 - tier_platform_dirs += modules/libbz2 - endif --tier_platform_dirs += other-licenses/bsdiff -+#tier_platform_dirs += other-licenses/bsdiff - endif - - tier_platform_dirs += gfx/qcms diff --git a/www/firefox/patches/patch-toolkit_toolkit.mozbuild b/www/firefox/patches/patch-toolkit_toolkit.mozbuild new file mode 100644 index 00000000000..6b098bf4e46 --- /dev/null +++ b/www/firefox/patches/patch-toolkit_toolkit.mozbuild @@ -0,0 +1,13 @@ +$NetBSD: patch-toolkit_toolkit.mozbuild,v 1.1 2013/06/26 11:32:12 ryoon Exp $ + +--- toolkit/toolkit.mozbuild.orig 2013-06-17 22:13:28.000000000 +0000 ++++ toolkit/toolkit.mozbuild +@@ -46,7 +46,7 @@ if CONFIG['MOZ_UPDATER']: + if not CONFIG['MOZ_NATIVE_BZ2']: + add_tier_dir('platform', 'modules/libbz2') + +- add_tier_dir('platform', 'other-licenses/bsdiff') ++# add_tier_dir('platform', 'other-licenses/bsdiff') + + # Gecko/Core components. + diff --git a/www/firefox/patches/patch-xpcom_Makefile.in b/www/firefox/patches/patch-xpcom_Makefile.in deleted file mode 100644 index 9e49ec14d04..00000000000 --- a/www/firefox/patches/patch-xpcom_Makefile.in +++ /dev/null @@ -1,15 +0,0 @@ -$NetBSD: patch-xpcom_Makefile.in,v 1.1 2013/05/23 13:12:13 ryoon Exp $ - ---- xpcom/Makefile.in.orig 2013-01-04 23:44:47.000000000 +0000 -+++ xpcom/Makefile.in -@@ -35,6 +35,10 @@ DIRS += windbgdlg - endif - endif - -+ifeq ($(OS_ARCH),NetBSD) -+EXTRA_DSO_LDOPTS += -Wl,-rpath,${PREFIX}/lib/xulrunner/sdk/lib -+endif -+ - ifdef ENABLE_TESTS - TOOL_DIRS += \ - tests \ diff --git a/www/firefox/patches/patch-xpcom__reflect__xptcall__src__md__unix__xptcstubs_sparc64_openbsd.cpp b/www/firefox/patches/patch-xpcom__reflect__xptcall__src__md__unix__xptcstubs_sparc64_openbsd.cpp index 1170aa070a1..f51cf95eac6 100644 --- a/www/firefox/patches/patch-xpcom__reflect__xptcall__src__md__unix__xptcstubs_sparc64_openbsd.cpp +++ b/www/firefox/patches/patch-xpcom__reflect__xptcall__src__md__unix__xptcstubs_sparc64_openbsd.cpp @@ -1,4 +1,4 @@ -$NetBSD: patch-xpcom__reflect__xptcall__src__md__unix__xptcstubs_sparc64_openbsd.cpp,v 1.1 2013/06/21 23:11:42 ryoon Exp $ +$NetBSD: patch-xpcom__reflect__xptcall__src__md__unix__xptcstubs_sparc64_openbsd.cpp,v 1.2 2013/06/26 11:32:12 ryoon Exp $ # HG changeset patch # User Martin Husemann <martin@netbsd.org> @@ -10,14 +10,9 @@ Bug 867914: Declare SharedStub as returning nsresult in xptcstubs_sparc64_openbs Fixes a build issue on NetBSD/sparc64, no apparent fallout on OpenBSD/sparc64 diff xpcom/reflect/xptcall/src/md/unix/xptcstubs_sparc64_openbsd.cpp xpcom/reflect/xptcall/src/md/unix/xptcstubs_sparc64_openbsd.cpp ---- xpcom/reflect/xptcall/src/md/unix/xptcstubs_sparc64_openbsd.cpp +--- xpcom/reflect/xptcall/src/md/unix/xptcstubs_sparc64_openbsd.cpp.orig 2013-06-17 22:13:29.000000000 +0000 +++ xpcom/reflect/xptcall/src/md/unix/xptcstubs_sparc64_openbsd.cpp -@@ -78,17 +78,17 @@ PrepareAndDispatch(nsXPTCStubBase* self, - result = self->mOuter->CallMethod((uint16_t)methodIndex, info, dispatchParams); - - if(dispatchParams != paramBuffer) - delete [] dispatchParams; - +@@ -83,7 +83,7 @@ PrepareAndDispatch(nsXPTCStubBase* self, return result; } @@ -26,9 +21,3 @@ diff xpcom/reflect/xptcall/src/md/unix/xptcstubs_sparc64_openbsd.cpp xpcom/refle #define STUB_ENTRY(n) \ nsresult nsXPTCStubBase::Stub##n() \ - { \ - int dummy; /* defeat tail-call optimization */ \ - return SharedStub(n, &dummy); \ - } - - diff --git a/www/firefox/patches/patch-xpcom_io_nsMultiplexInputStream_cpp b/www/firefox/patches/patch-xpcom_io_nsMultiplexInputStream_cpp deleted file mode 100644 index 1a8f182489a..00000000000 --- a/www/firefox/patches/patch-xpcom_io_nsMultiplexInputStream_cpp +++ /dev/null @@ -1,18 +0,0 @@ -$NetBSD: patch-xpcom_io_nsMultiplexInputStream_cpp,v 1.1 2013/05/23 13:12:13 ryoon Exp $ - -Fix PR/47722, dragonfly (gcc 4.7) build problem: -error: no matching function for call to - 'NS_MIN(int64_t&, __gnu_cxx::__enable_if<true, double>::__type)' -devel/xulrunner/work/mozilla-release/xpcom/io/nsMultiplexInputStream.cpp:532:83 - ---- xpcom/io/nsMultiplexInputStream.cpp.orig 2013-05-11 19:19:56.000000000 +0000 -+++ xpcom/io/nsMultiplexInputStream.cpp -@@ -529,7 +529,7 @@ nsMultiplexInputStream::Seek(int32_t aWh - rv = stream->Tell(&avail); - NS_ENSURE_SUCCESS(rv, rv); - -- int64_t newPos = streamPos + XPCOM_MIN(avail, std::abs(remaining)); -+ int64_t newPos = streamPos + XPCOM_MIN(avail, (int64_t)std::abs(remaining)); - - rv = stream->Seek(NS_SEEK_END, -newPos); - NS_ENSURE_SUCCESS(rv, rv); |