summaryrefslogtreecommitdiff
path: root/www/firefox/patches
diff options
context:
space:
mode:
authorryoon <ryoon>2013-06-26 11:32:12 +0000
committerryoon <ryoon>2013-06-26 11:32:12 +0000
commit3eef69839b30a480d1ff5d1d76d5e2008bd58285 (patch)
treeded0d566db364a06dc2170d6b5f7be7de6938b17 /www/firefox/patches
parenta35a36f44f6968706d3f9fcd02c9ec0275a28781 (diff)
downloadpkgsrc-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')
-rw-r--r--www/firefox/patches/patch-aa59
-rw-r--r--www/firefox/patches/patch-an48
-rw-r--r--www/firefox/patches/patch-au41
-rw-r--r--www/firefox/patches/patch-config_stl__wrappers_ios8
-rw-r--r--www/firefox/patches/patch-config_stl__wrappers_ostream8
-rw-r--r--www/firefox/patches/patch-config_system__wrappers_unwind.h9
-rw-r--r--www/firefox/patches/patch-content_media_AudioStream.cpp13
-rw-r--r--www/firefox/patches/patch-js__public__HeapAPI.h5
-rw-r--r--www/firefox/patches/patch-js__src__gc__Marking.cpp17
-rw-r--r--www/firefox/patches/patch-js__src__gc__Memory.h13
-rw-r--r--www/firefox/patches/patch-js__src__jsapi.cpp16
-rw-r--r--www/firefox/patches/patch-js__src__jscntxt.h16
-rw-r--r--www/firefox/patches/patch-js__src__jsgc.cpp5
-rw-r--r--www/firefox/patches/patch-js_src_ion_AsmJS.cpp31
-rw-r--r--www/firefox/patches/patch-js_src_ion_AsmJS.h14
-rw-r--r--www/firefox/patches/patch-js_src_ion_AsmJSSignalHandlers.cpp13
-rw-r--r--www/firefox/patches/patch-js_src_jscompartment.h14
-rw-r--r--www/firefox/patches/patch-js_src_jspropertycacheinlines.h22
-rw-r--r--www/firefox/patches/patch-js_src_jstypedarray.cpp54
-rw-r--r--www/firefox/patches/patch-js_src_vm_ObjectImpl-inl.h14
-rw-r--r--www/firefox/patches/patch-media_libsoundtouch_src_cpu__detect__x86.cpp21
-rw-r--r--www/firefox/patches/patch-media_mtransport_third__party_nICEr_src_stun_addrs.c37
-rw-r--r--www/firefox/patches/patch-media_mtransport_third__party_nICEr_src_util_mbslen.c8
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_build_common.gypi60
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_testing_gtest_include_gtest_internal_gtest-port.h19
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_third__party_libyuv_libyuv.gyp18
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_build_common.gypi18
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture__factory.cc15
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.cc41
-rw-r--r--www/firefox/patches/patch-media_webrtc_webrtc__config.gypi6
-rw-r--r--www/firefox/patches/patch-mp23
-rw-r--r--www/firefox/patches/patch-netwerk__protocol__websocket__WebSocketChannel.cpp41
-rw-r--r--www/firefox/patches/patch-netwerk_sctp_src_netinet6_sctp6__usrreq.c13
-rw-r--r--www/firefox/patches/patch-netwerk_sctp_src_netinet_sctp__os__userspace.h33
-rw-r--r--www/firefox/patches/patch-netwerk_sctp_src_netinet_sctp__usrreq.c13
-rw-r--r--www/firefox/patches/patch-netwerk_sctp_src_user__socket.c53
-rw-r--r--www/firefox/patches/patch-netwerk_sctp_src_user__socketvar.h20
-rw-r--r--www/firefox/patches/patch-toolkit_toolkit-tiers.mk13
-rw-r--r--www/firefox/patches/patch-toolkit_toolkit.mozbuild13
-rw-r--r--www/firefox/patches/patch-xpcom_Makefile.in15
-rw-r--r--www/firefox/patches/patch-xpcom__reflect__xptcall__src__md__unix__xptcstubs_sparc64_openbsd.cpp17
-rw-r--r--www/firefox/patches/patch-xpcom_io_nsMultiplexInputStream_cpp18
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);