summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--www/firefox/Makefile23
-rw-r--r--www/firefox/PLIST262
-rw-r--r--www/firefox/distinfo129
-rw-r--r--www/firefox/mozilla-common.mk6
-rw-r--r--www/firefox/patches/patch-aa66
-rw-r--r--www/firefox/patches/patch-as108
-rw-r--r--www/firefox/patches/patch-bf15
-rw-r--r--www/firefox/patches/patch-browser_app_profile_firefox.js12
-rw-r--r--www/firefox/patches/patch-browser_locales_en-US_chrome_browser-region_region.properties12
-rw-r--r--www/firefox/patches/patch-browser_locales_en-US_searchplugins_duckduckgo.xml16
-rw-r--r--www/firefox/patches/patch-browser_locales_en-US_searchplugins_list.txt11
-rw-r--r--www/firefox/patches/patch-build_pgo_profileserver.py13
-rw-r--r--www/firefox/patches/patch-config_Makefile.in12
-rw-r--r--www/firefox/patches/patch-config_system-headers23
-rw-r--r--www/firefox/patches/patch-content_media_gstreamer_GStreamerFormatHelper.cpp166
-rw-r--r--www/firefox/patches/patch-dist_stl__wrappers_ios8
-rw-r--r--www/firefox/patches/patch-dist_stl__wrappers_ostream8
-rw-r--r--www/firefox/patches/patch-extensions_spellcheck_hunspell_src_mozHunspell.cpp17
-rw-r--r--www/firefox/patches/patch-gfx_skia_Makefile.in16
-rw-r--r--www/firefox/patches/patch-gfx_skia_moz.build16
-rw-r--r--www/firefox/patches/patch-gfx_thebes_gfxPlatform.cpp36
-rw-r--r--www/firefox/patches/patch-ipc_chromium_Makefile.in19
-rw-r--r--www/firefox/patches/patch-ipc_chromium_src_base_platform__thread.h6
-rw-r--r--www/firefox/patches/patch-ipc_chromium_src_base_platform__thread__posix.cc13
-rw-r--r--www/firefox/patches/patch-ipc_chromium_src_base_process__util.h14
-rw-r--r--www/firefox/patches/patch-js__public__HeapAPI.h37
-rw-r--r--www/firefox/patches/patch-js__public__Value.h16
-rw-r--r--www/firefox/patches/patch-js__src__gc__Marking.cpp21
-rw-r--r--www/firefox/patches/patch-js__src__gc__Memory.cpp319
-rw-r--r--www/firefox/patches/patch-js__src__gc__Memory.h52
-rw-r--r--www/firefox/patches/patch-js__src__jsapi.cpp20
-rw-r--r--www/firefox/patches/patch-js__src__jscntxt.h27
-rw-r--r--www/firefox/patches/patch-js__src__jsgc.cpp135
-rw-r--r--www/firefox/patches/patch-js__src__jsscript.cpp37
-rw-r--r--www/firefox/patches/patch-js__src__vm__SPSProfiler.cpp12
-rw-r--r--www/firefox/patches/patch-js__src__yarr__YarrInterpreter.cpp15
-rw-r--r--www/firefox/patches/patch-js_src_Makefile.in50
-rw-r--r--www/firefox/patches/patch-js_src_config_Makefile.in12
-rw-r--r--www/firefox/patches/patch-js_src_config_system-headers23
-rw-r--r--www/firefox/patches/patch-js_src_ctypes_CTypes.h (renamed from www/firefox/patches/patch-bd)16
-rw-r--r--www/firefox/patches/patch-js_src_frontend_ParseMaps.cpp12
-rw-r--r--www/firefox/patches/patch-js_src_gdb_Makefile.in15
-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_AsmJSModule.h37
-rw-r--r--www/firefox/patches/patch-js_src_ion_AsmJSSignalHandlers.cpp13
-rw-r--r--www/firefox/patches/patch-js_src_jit_AsmJSSignalHandlers.cpp13
-rw-r--r--www/firefox/patches/patch-js_src_jsapi-tests_Makefile.in15
-rw-r--r--www/firefox/patches/patch-js_src_jsmath.cpp12
-rw-r--r--www/firefox/patches/patch-js_src_jstypedarray.cpp53
-rw-r--r--www/firefox/patches/patch-js_src_methodjit_MethodJIT.cpp25
-rw-r--r--www/firefox/patches/patch-js_src_shell_Makefile.in14
-rw-r--r--www/firefox/patches/patch-js_src_vm_ObjectImpl-inl.h26
-rw-r--r--www/firefox/patches/patch-js_src_vm_Stack.cpp16
-rw-r--r--www/firefox/patches/patch-mb46
-rw-r--r--www/firefox/patches/patch-media_mtransport_third__party_nICEr_src_stun_addrs.c41
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_build_build__config.h41
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_third__party_libyuv_libyuv.gyp16
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_build_common.gypi38
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device.gypi91
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device__impl.cc71
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device__utility.cc21
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_audio__device_test_audio__device__test__api.cc31
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_rtp__rtcp_source_forward__error__correction.cc12
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_rtp__rtcp_source_rtp__utility.cc49
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_udp__transport_source_udp__transport__impl.cc90
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_utility_source_rtp__dump__impl.cc22
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_device__info__impl.cc31
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc32
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc31
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi39
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_interface_asm__defines.h13
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_interface_tick__util.h67
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_atomic32__posix.cc12
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_condition__variable.cc28
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_condition__variable__posix.cc13
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_cpu.cc22
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_cpu__info.cc50
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.cc91
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_trace__posix.cc13
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_typedefs.h13
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_video__engine_vie__defines.h13
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_voice__engine_voe__network__impl.cc31
-rw-r--r--www/firefox/patches/patch-media_webrtc_trunk_webrtc_voice__engine_voice__engine__defines.h38
-rw-r--r--www/firefox/patches/patch-media_webrtc_webrtc__config.gypi12
-rw-r--r--www/firefox/patches/patch-mfbt_Atomics.h13
-rw-r--r--www/firefox/patches/patch-modules_libpref_src_init_all.js13
-rw-r--r--www/firefox/patches/patch-netwerk__protocol__websocket__WebSocketChannel.cpp42
-rw-r--r--www/firefox/patches/patch-netwerk_sctp_src_Makefile.in23
-rw-r--r--www/firefox/patches/patch-netwerk_wifi_Makefile.in13
-rw-r--r--www/firefox/patches/patch-netwerk_wifi_moz.build24
-rw-r--r--www/firefox/patches/patch-netwerk_wifi_nsWifiScannerFreeBSD.cpp177
-rw-r--r--www/firefox/patches/patch-pa11
-rw-r--r--www/firefox/patches/patch-pd11
-rw-r--r--www/firefox/patches/patch-pg14
-rw-r--r--www/firefox/patches/patch-security_manager_ssl_src_JARSignatureVerification.cpp17
-rw-r--r--www/firefox/patches/patch-security_manager_ssl_src_nsNSSComponent.cpp10
-rw-r--r--www/firefox/patches/patch-toolkit_components_osfile_osfile__unix__allthreads.jsm13
-rw-r--r--www/firefox/patches/patch-toolkit_xre_Makefile.in10
-rw-r--r--www/firefox/patches/patch-xpcom__reflect__xptcall__src__md__unix__xptcstubs_sparc64_openbsd.cpp23
-rw-r--r--www/firefox/patches/patch-xpcom_ds_moz.build24
-rw-r--r--www/firefox/patches/patch-xpcom_reflect_xptcall_src_md_unix_moz.build15
102 files changed, 1446 insertions, 2240 deletions
diff --git a/www/firefox/Makefile b/www/firefox/Makefile
index 11020764504..fb492e18e0f 100644
--- a/www/firefox/Makefile
+++ b/www/firefox/Makefile
@@ -1,18 +1,17 @@
-# $NetBSD: Makefile,v 1.137 2013/09/02 19:51:28 adam Exp $
+# $NetBSD: Makefile,v 1.138 2013/09/19 12:37:49 ryoon Exp $
FIREFOX_VER= ${MOZ_BRANCH}${MOZ_BRANCH_MINOR}
-MOZ_BRANCH= 23.0
-MOZ_BRANCH_MINOR= .1
+MOZ_BRANCH= 24.0
+MOZ_BRANCH_MINOR= esr
DISTNAME= firefox-${FIREFOX_VER}.source
-PKGNAME= firefox-${MOZ_BRANCH}${MOZ_BRANCH_MINOR:S/b/beta/}
-PKGREVISION= 1
+PKGNAME= firefox-${MOZ_BRANCH}${MOZ_BRANCH_MINOR:S/b/beta/:S/esr//}
CATEGORIES= www
-MASTER_SITES= ${MASTER_SITE_MOZILLA:=firefox/releases/${FIREFOX_VER}/source/} \
- ${MASTER_SITE_MOZILLA_ALL:=firefox/releases/${FIREFOX_VER}/source/}
+#MASTER_SITES= ${MASTER_SITE_MOZILLA:=firefox/releases/${FIREFOX_VER}/source/}
+MASTER_SITES+= ${MASTER_SITE_MOZILLA_ALL:=firefox/releases/${FIREFOX_VER}/source/}
EXTRACT_SUFX= .tar.bz2
-WRKSRC= ${WRKDIR}/mozilla-release
+WRKSRC= ${WRKDIR}/mozilla-esr24
MAINTAINER= ryoon@NetBSD.org
HOMEPAGE= http://www.mozilla.com/en-US/firefox/
@@ -46,6 +45,8 @@ LDFLAGS.Linux= -lnspr4
.include "../../www/firefox/mozilla-common.mk"
.include "options.mk"
+CHECK_PORTABILITY_SKIP+= js/src/tests/update-test262.sh
+
CHECK_INTERPRETER_SKIP+=lib/firefox-sdk/sdk/bin/header.py
CHECK_INTERPRETER_SKIP+=lib/firefox-sdk/sdk/bin/typelib.py
CHECK_INTERPRETER_SKIP+=lib/firefox-sdk/sdk/bin/xpidl.py
@@ -59,6 +60,12 @@ MOZILLA_NAME= Firefox
MOZILLA_NAME= Browser
.endif
+SUBST_CLASSES+= sys-dic
+SUBST_STAGE.sys-dic= pre-configure
+SUBST_MESSAGE.sys-dic= Reference to system hunspell dictionaries.
+SUBST_FILES.sys-dic= extensions/spellcheck/hunspell/src/mozHunspell.cpp
+SUBST_VARS.sys-dic= PREFIX
+
pre-configure:
cd ${WRKSRC} && autoconf
cd ${WRKSRC}/js/src && autoconf
diff --git a/www/firefox/PLIST b/www/firefox/PLIST
index 65f96e947cb..14fae6e8e7b 100644
--- a/www/firefox/PLIST
+++ b/www/firefox/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.70 2013/08/29 18:48:25 martin Exp $
+@comment $NetBSD: PLIST,v 1.71 2013/09/19 12:37:49 ryoon Exp $
bin/firefox
include/firefox/AbstractMediaDecoder.h
include/firefox/AccEvent.h
@@ -34,6 +34,7 @@ include/firefox/Composer2D.h
include/firefox/CompositableHost.h
include/firefox/CompositorChild.h
include/firefox/CompositorParent.h
+include/firefox/ContainerWriter.h
include/firefox/CopyableCanvasLayer.h
include/firefox/Crypto.h
include/firefox/CryptoTask.h
@@ -68,6 +69,7 @@ include/firefox/GLScreenBuffer.h
include/firefox/GLTextureImage.h
include/firefox/GLXLibrary.h
include/firefox/GeckoProfiler.h
+include/firefox/GeneratedEventClasses.h
include/firefox/GeneratedEvents.h
include/firefox/GfxInfoCollector.h
include/firefox/GonkCameraControl.h
@@ -98,6 +100,7 @@ include/firefox/MediaDecoder.h
include/firefox/MediaDecoderOwner.h
include/firefox/MediaDecoderReader.h
include/firefox/MediaDecoderStateMachine.h
+include/firefox/MediaEncoder.h
include/firefox/MediaEngine.h
include/firefox/MediaEngineDefault.h
include/firefox/MediaMetadataManager.h
@@ -107,6 +110,8 @@ include/firefox/MediaStreamGraph.h
include/firefox/OggCodecState.h
include/firefox/OggDecoder.h
include/firefox/OggReader.h
+include/firefox/OggWriter.h
+include/firefox/OpusTrackEncoder.h
include/firefox/PCOMContentPermissionRequestChild.h
include/firefox/ReadbackLayer.h
include/firefox/RoundedRect.h
@@ -124,7 +129,6 @@ include/firefox/SharedSurface.h
include/firefox/SharedSurfaceEGL.h
include/firefox/SharedSurfaceGL.h
include/firefox/SharedTextureImage.h
-include/firefox/ShmemYCbCrImage.h
include/firefox/SpecialSystemDirectory.h
include/firefox/StackArena.h
include/firefox/StreamBuffer.h
@@ -134,6 +138,9 @@ include/firefox/SurfaceTypes.h
include/firefox/TexturePoolOGL.h
include/firefox/ThreeDPoint.h
include/firefox/TimeVarying.h
+include/firefox/TrackEncoder.h
+include/firefox/TrackUnionStream.h
+include/firefox/Units.h
include/firefox/VideoFrameContainer.h
include/firefox/VideoSegment.h
include/firefox/VideoUtils.h
@@ -145,6 +152,7 @@ include/firefox/WebMDecoder.h
include/firefox/WebMReader.h
include/firefox/WrapperFactory.h
include/firefox/XPCJSMemoryReporter.h
+include/firefox/amIAddonManager.h
include/firefox/amIInstallTrigger.h
include/firefox/amIWebInstallListener.h
include/firefox/amIWebInstaller.h
@@ -274,10 +282,8 @@ include/firefox/jscpucfg.h
include/firefox/jsdIDebuggerService.h
include/firefox/jsdbgapi.h
include/firefox/jsdebug.h
-include/firefox/jsdhash.h
include/firefox/jsfriendapi.h
include/firefox/jslock.h
-include/firefox/json.h
include/firefox/jsperf.h
include/firefox/jsprf.h
include/firefox/jsprototypes.h
@@ -335,6 +341,7 @@ include/firefox/mozilla-config.h
include/firefox/mozilla/AppData.h
include/firefox/mozilla/AppProcessChecker.h
include/firefox/mozilla/Assertions.h
+include/firefox/mozilla/Atomics.h
include/firefox/mozilla/Attributes.h
include/firefox/mozilla/AutoRestore.h
include/firefox/mozilla/AvailableMemoryTracker.h
@@ -351,12 +358,14 @@ include/firefox/mozilla/ClearOnShutdown.h
include/firefox/mozilla/Compiler.h
include/firefox/mozilla/CondVar.h
include/firefox/mozilla/Constants.h
+include/firefox/mozilla/CycleCollectedJSRuntime.h
include/firefox/mozilla/DeadlockDetector.h
include/firefox/mozilla/DebugOnly.h
include/firefox/mozilla/Decimal.h
include/firefox/mozilla/Endian.h
include/firefox/mozilla/EnumSet.h
include/firefox/mozilla/ErrorResult.h
+include/firefox/mozilla/FFTBlock.h
include/firefox/mozilla/FileLocation.h
include/firefox/mozilla/FileUtils.h
include/firefox/mozilla/FloatingPoint.h
@@ -371,6 +380,7 @@ include/firefox/mozilla/HalWakeLock.h
include/firefox/mozilla/HangMonitor.h
include/firefox/mozilla/HashFunctions.h
include/firefox/mozilla/IHistory.h
+include/firefox/mozilla/IOInterposer.h
include/firefox/mozilla/IntentionalCrash.h
include/firefox/mozilla/LazyIdleThread.h
include/firefox/mozilla/Likely.h
@@ -406,6 +416,7 @@ include/firefox/mozilla/RangedPtr.h
include/firefox/mozilla/ReentrantMonitor.h
include/firefox/mozilla/RefPtr.h
include/firefox/mozilla/SHA1.h
+include/firefox/mozilla/SQLiteInterposer.h
include/firefox/mozilla/SSE.h
include/firefox/mozilla/Scoped.h
include/firefox/mozilla/Selection.h
@@ -415,6 +426,7 @@ include/firefox/mozilla/SplayTree.h
include/firefox/mozilla/StackWalk.h
include/firefox/mozilla/StandardInteger.h
include/firefox/mozilla/StartupTimeline.h
+include/firefox/mozilla/StaticMutex.h
include/firefox/mozilla/StaticPtr.h
include/firefox/mozilla/StringBuilder.h
include/firefox/mozilla/SyncRunnable.h
@@ -487,6 +499,8 @@ include/firefox/mozilla/dom/AudioProcessingEvent.h
include/firefox/mozilla/dom/AudioProcessingEventBinding.h
include/firefox/mozilla/dom/AudioStreamTrack.h
include/firefox/mozilla/dom/AudioStreamTrackBinding.h
+include/firefox/mozilla/dom/BarPropBinding.h
+include/firefox/mozilla/dom/BarProps.h
include/firefox/mozilla/dom/BatteryManagerBinding.h
include/firefox/mozilla/dom/BeforeUnloadEventBinding.h
include/firefox/mozilla/dom/BindingDeclarations.h
@@ -494,9 +508,9 @@ include/firefox/mozilla/dom/BindingUtils.h
include/firefox/mozilla/dom/BiquadFilterNode.h
include/firefox/mozilla/dom/BiquadFilterNodeBinding.h
include/firefox/mozilla/dom/BlobBinding.h
+include/firefox/mozilla/dom/BlobEventBinding.h
include/firefox/mozilla/dom/CDATASection.h
include/firefox/mozilla/dom/CDATASectionBinding.h
-include/firefox/mozilla/dom/CFStateChangeEventBinding.h
include/firefox/mozilla/dom/CSS.h
include/firefox/mozilla/dom/CSS2PropertiesBinding.h
include/firefox/mozilla/dom/CSSBinding.h
@@ -509,6 +523,7 @@ include/firefox/mozilla/dom/CSSValueListBinding.h
include/firefox/mozilla/dom/CallbackFunction.h
include/firefox/mozilla/dom/CallbackInterface.h
include/firefox/mozilla/dom/CallbackObject.h
+include/firefox/mozilla/dom/CameraManagerBinding.h
include/firefox/mozilla/dom/CanvasGradient.h
include/firefox/mozilla/dom/CanvasPattern.h
include/firefox/mozilla/dom/CanvasRenderingContext2D.h
@@ -524,6 +539,7 @@ include/firefox/mozilla/dom/ChildNodeBinding.h
include/firefox/mozilla/dom/ClientRectBinding.h
include/firefox/mozilla/dom/ClientRectListBinding.h
include/firefox/mozilla/dom/ClipboardEventBinding.h
+include/firefox/mozilla/dom/CloseEventBinding.h
include/firefox/mozilla/dom/CommandEventBinding.h
include/firefox/mozilla/dom/Comment.h
include/firefox/mozilla/dom/CommentBinding.h
@@ -531,12 +547,16 @@ include/firefox/mozilla/dom/CompositionEventBinding.h
include/firefox/mozilla/dom/ContentChild.h
include/firefox/mozilla/dom/ContentParent.h
include/firefox/mozilla/dom/ContentProcess.h
+include/firefox/mozilla/dom/ConvolverNode.h
+include/firefox/mozilla/dom/ConvolverNodeBinding.h
include/firefox/mozilla/dom/CoordinatesBinding.h
include/firefox/mozilla/dom/CrashReporterChild.h
include/firefox/mozilla/dom/CrashReporterParent.h
+include/firefox/mozilla/dom/CustomEventBinding.h
include/firefox/mozilla/dom/DOMCursor.h
include/firefox/mozilla/dom/DOMCursorBinding.h
include/firefox/mozilla/dom/DOMError.h
+include/firefox/mozilla/dom/DOMErrorBinding.h
include/firefox/mozilla/dom/DOMImplementation.h
include/firefox/mozilla/dom/DOMImplementationBinding.h
include/firefox/mozilla/dom/DOMJSClass.h
@@ -549,11 +569,18 @@ include/firefox/mozilla/dom/DOMStorageIPC.h
include/firefox/mozilla/dom/DOMStringMapBinding.h
include/firefox/mozilla/dom/DOMTokenListBinding.h
include/firefox/mozilla/dom/DOMTransactionBinding.h
+include/firefox/mozilla/dom/DOMTransactionEventBinding.h
+include/firefox/mozilla/dom/DataContainerEventBinding.h
include/firefox/mozilla/dom/DelayNode.h
include/firefox/mozilla/dom/DelayNodeBinding.h
include/firefox/mozilla/dom/DesktopNotification.h
include/firefox/mozilla/dom/DesktopNotificationBinding.h
+include/firefox/mozilla/dom/DeviceLightEventBinding.h
include/firefox/mozilla/dom/DeviceMotionEventBinding.h
+include/firefox/mozilla/dom/DeviceOrientationEventBinding.h
+include/firefox/mozilla/dom/DeviceProximityEventBinding.h
+include/firefox/mozilla/dom/DeviceStorageBinding.h
+include/firefox/mozilla/dom/DeviceStorageChangeEventBinding.h
include/firefox/mozilla/dom/DirectionalityUtils.h
include/firefox/mozilla/dom/DocumentBinding.h
include/firefox/mozilla/dom/DocumentFragment.h
@@ -566,6 +593,7 @@ include/firefox/mozilla/dom/DynamicsCompressorNode.h
include/firefox/mozilla/dom/DynamicsCompressorNodeBinding.h
include/firefox/mozilla/dom/Element.h
include/firefox/mozilla/dom/ElementBinding.h
+include/firefox/mozilla/dom/ElementReplaceEventBinding.h
include/firefox/mozilla/dom/EnableSpeechSynthesisCheck.h
include/firefox/mozilla/dom/EnableWebAudioCheck.h
include/firefox/mozilla/dom/EncodingUtils.h
@@ -583,13 +611,18 @@ include/firefox/mozilla/dom/FakeSpeechRecognitionService.h
include/firefox/mozilla/dom/FileBinding.h
include/firefox/mozilla/dom/FileHandleBinding.h
include/firefox/mozilla/dom/FileListBinding.h
+include/firefox/mozilla/dom/FileModeBinding.h
include/firefox/mozilla/dom/FileReaderBinding.h
include/firefox/mozilla/dom/FileReaderSyncBinding.h
include/firefox/mozilla/dom/FileRequestBinding.h
+include/firefox/mozilla/dom/FocusEventBinding.h
include/firefox/mozilla/dom/FormDataBinding.h
include/firefox/mozilla/dom/FragmentOrElement.h
include/firefox/mozilla/dom/FromParser.h
include/firefox/mozilla/dom/FunctionBinding.h
+include/firefox/mozilla/dom/Future.h
+include/firefox/mozilla/dom/FutureBinding.h
+include/firefox/mozilla/dom/FutureResolver.h
include/firefox/mozilla/dom/GainNode.h
include/firefox/mozilla/dom/GainNodeBinding.h
include/firefox/mozilla/dom/GeolocationBinding.h
@@ -625,6 +658,8 @@ include/firefox/mozilla/dom/HTMLFieldSetElement.h
include/firefox/mozilla/dom/HTMLFieldSetElementBinding.h
include/firefox/mozilla/dom/HTMLFontElement.h
include/firefox/mozilla/dom/HTMLFontElementBinding.h
+include/firefox/mozilla/dom/HTMLFormElement.h
+include/firefox/mozilla/dom/HTMLFormElementBinding.h
include/firefox/mozilla/dom/HTMLFrameElement.h
include/firefox/mozilla/dom/HTMLFrameElementBinding.h
include/firefox/mozilla/dom/HTMLFrameSetElement.h
@@ -716,10 +751,14 @@ include/firefox/mozilla/dom/HTMLTimeElement.h
include/firefox/mozilla/dom/HTMLTimeElementBinding.h
include/firefox/mozilla/dom/HTMLTitleElement.h
include/firefox/mozilla/dom/HTMLTitleElementBinding.h
+include/firefox/mozilla/dom/HTMLTrackElement.h
+include/firefox/mozilla/dom/HTMLTrackElementBinding.h
include/firefox/mozilla/dom/HTMLUListElementBinding.h
include/firefox/mozilla/dom/HTMLUnknownElement.h
include/firefox/mozilla/dom/HTMLVideoElement.h
include/firefox/mozilla/dom/HTMLVideoElementBinding.h
+include/firefox/mozilla/dom/HashChangeEventBinding.h
+include/firefox/mozilla/dom/IDBDatabaseBinding.h
include/firefox/mozilla/dom/IDBFactoryBinding.h
include/firefox/mozilla/dom/IDBVersionChangeEventBinding.h
include/firefox/mozilla/dom/ImageData.h
@@ -727,6 +766,7 @@ include/firefox/mozilla/dom/ImageDataBinding.h
include/firefox/mozilla/dom/ImageDocument.h
include/firefox/mozilla/dom/ImageDocumentBinding.h
include/firefox/mozilla/dom/InspectorUtilsBinding.h
+include/firefox/mozilla/dom/KeyEventBinding.h
include/firefox/mozilla/dom/KeyboardEventBinding.h
include/firefox/mozilla/dom/Link.h
include/firefox/mozilla/dom/LinkStyleBinding.h
@@ -734,16 +774,27 @@ include/firefox/mozilla/dom/LocalMediaStreamBinding.h
include/firefox/mozilla/dom/LocationBinding.h
include/firefox/mozilla/dom/MediaError.h
include/firefox/mozilla/dom/MediaErrorBinding.h
+include/firefox/mozilla/dom/MediaStreamAudioDestinationNode.h
+include/firefox/mozilla/dom/MediaStreamAudioDestinationNodeBinding.h
include/firefox/mozilla/dom/MediaStreamBinding.h
+include/firefox/mozilla/dom/MediaStreamEventBinding.h
include/firefox/mozilla/dom/MediaStreamTrack.h
include/firefox/mozilla/dom/MediaStreamTrackBinding.h
include/firefox/mozilla/dom/MessageEventBinding.h
include/firefox/mozilla/dom/MmsMessage.h
include/firefox/mozilla/dom/MobileMessageManager.h
+include/firefox/mozilla/dom/MobileMessageManagerBinding.h
include/firefox/mozilla/dom/MouseEventBinding.h
include/firefox/mozilla/dom/MouseScrollEventBinding.h
include/firefox/mozilla/dom/MozActivityBinding.h
+include/firefox/mozilla/dom/MozApplicationEventBinding.h
+include/firefox/mozilla/dom/MozContactChangeEventBinding.h
+include/firefox/mozilla/dom/MozMmsEventBinding.h
+include/firefox/mozilla/dom/MozMmsMessageBinding.h
include/firefox/mozilla/dom/MozNamedAttrMapBinding.h
+include/firefox/mozilla/dom/MozSettingsEventBinding.h
+include/firefox/mozilla/dom/MozSmsEventBinding.h
+include/firefox/mozilla/dom/MozTimeManagerBinding.h
include/firefox/mozilla/dom/MutationEventBinding.h
include/firefox/mozilla/dom/MutationObserverBinding.h
include/firefox/mozilla/dom/NetDashboardBinding.h
@@ -758,6 +809,11 @@ include/firefox/mozilla/dom/NotificationBinding.h
include/firefox/mozilla/dom/NotifyAudioAvailableEventBinding.h
include/firefox/mozilla/dom/NotifyPaintEventBinding.h
include/firefox/mozilla/dom/Nullable.h
+include/firefox/mozilla/dom/OfflineAudioCompletionEvent.h
+include/firefox/mozilla/dom/OfflineAudioCompletionEventBinding.h
+include/firefox/mozilla/dom/OfflineAudioContextBinding.h
+include/firefox/mozilla/dom/OfflineResourceListBinding.h
+include/firefox/mozilla/dom/PageTransitionEventBinding.h
include/firefox/mozilla/dom/PaintRequestBinding.h
include/firefox/mozilla/dom/PaintRequestListBinding.h
include/firefox/mozilla/dom/PannerNode.h
@@ -765,15 +821,25 @@ include/firefox/mozilla/dom/PannerNodeBinding.h
include/firefox/mozilla/dom/PerformanceBinding.h
include/firefox/mozilla/dom/PerformanceNavigationBinding.h
include/firefox/mozilla/dom/PerformanceTimingBinding.h
+include/firefox/mozilla/dom/PeriodicWave.h
+include/firefox/mozilla/dom/PeriodicWaveBinding.h
include/firefox/mozilla/dom/PermissionMessageUtils.h
+include/firefox/mozilla/dom/PopStateEventBinding.h
+include/firefox/mozilla/dom/PopupBlockedEventBinding.h
include/firefox/mozilla/dom/PositionBinding.h
include/firefox/mozilla/dom/PositionErrorBinding.h
include/firefox/mozilla/dom/PrimitiveConversions.h
include/firefox/mozilla/dom/ProcessingInstruction.h
include/firefox/mozilla/dom/ProcessingInstructionBinding.h
+include/firefox/mozilla/dom/ProgressEventBinding.h
include/firefox/mozilla/dom/PrototypeList.h
include/firefox/mozilla/dom/RGBColorBinding.h
include/firefox/mozilla/dom/RTCConfigurationBinding.h
+include/firefox/mozilla/dom/RTCDataChannelEventBinding.h
+include/firefox/mozilla/dom/RTCIceCandidateBinding.h
+include/firefox/mozilla/dom/RTCPeerConnectionBinding.h
+include/firefox/mozilla/dom/RTCPeerConnectionIceEventBinding.h
+include/firefox/mozilla/dom/RTCSessionDescriptionBinding.h
include/firefox/mozilla/dom/RangeBinding.h
include/firefox/mozilla/dom/RectBinding.h
include/firefox/mozilla/dom/RegisterBindings.h
@@ -802,6 +868,8 @@ include/firefox/mozilla/dom/SVGAnimatedPointsBinding.h
include/firefox/mozilla/dom/SVGAnimatedPreserveAspectRatioBinding.h
include/firefox/mozilla/dom/SVGAnimatedRect.h
include/firefox/mozilla/dom/SVGAnimatedRectBinding.h
+include/firefox/mozilla/dom/SVGAnimatedString.h
+include/firefox/mozilla/dom/SVGAnimatedStringBinding.h
include/firefox/mozilla/dom/SVGAnimatedTransformList.h
include/firefox/mozilla/dom/SVGAnimatedTransformListBinding.h
include/firefox/mozilla/dom/SVGAnimationElement.h
@@ -961,6 +1029,7 @@ include/firefox/mozilla/dom/ScriptProcessorNode.h
include/firefox/mozilla/dom/ScriptProcessorNodeBinding.h
include/firefox/mozilla/dom/ScrollAreaEventBinding.h
include/firefox/mozilla/dom/SimpleGestureEventBinding.h
+include/firefox/mozilla/dom/SmartCardEventBinding.h
include/firefox/mozilla/dom/SmsFilter.h
include/firefox/mozilla/dom/SmsManager.h
include/firefox/mozilla/dom/SmsMessage.h
@@ -973,6 +1042,8 @@ include/firefox/mozilla/dom/SpeechRecognition.h
include/firefox/mozilla/dom/SpeechRecognitionAlternative.h
include/firefox/mozilla/dom/SpeechRecognitionAlternativeBinding.h
include/firefox/mozilla/dom/SpeechRecognitionBinding.h
+include/firefox/mozilla/dom/SpeechRecognitionErrorBinding.h
+include/firefox/mozilla/dom/SpeechRecognitionEventBinding.h
include/firefox/mozilla/dom/SpeechRecognitionResult.h
include/firefox/mozilla/dom/SpeechRecognitionResultBinding.h
include/firefox/mozilla/dom/SpeechRecognitionResultList.h
@@ -981,14 +1052,19 @@ include/firefox/mozilla/dom/SpeechStreamListener.h
include/firefox/mozilla/dom/SpeechSynthesis.h
include/firefox/mozilla/dom/SpeechSynthesisBinding.h
include/firefox/mozilla/dom/SpeechSynthesisChild.h
+include/firefox/mozilla/dom/SpeechSynthesisEventBinding.h
include/firefox/mozilla/dom/SpeechSynthesisParent.h
include/firefox/mozilla/dom/SpeechSynthesisUtterance.h
include/firefox/mozilla/dom/SpeechSynthesisUtteranceBinding.h
include/firefox/mozilla/dom/SpeechSynthesisVoice.h
include/firefox/mozilla/dom/SpeechSynthesisVoiceBinding.h
+include/firefox/mozilla/dom/StorageEventBinding.h
include/firefox/mozilla/dom/StructuredCloneTags.h
include/firefox/mozilla/dom/StructuredCloneUtils.h
+include/firefox/mozilla/dom/StyleRuleChangeEventBinding.h
+include/firefox/mozilla/dom/StyleSheetApplicableStateChangeEventBinding.h
include/firefox/mozilla/dom/StyleSheetBinding.h
+include/firefox/mozilla/dom/StyleSheetChangeEventBinding.h
include/firefox/mozilla/dom/TabChild.h
include/firefox/mozilla/dom/TabContext.h
include/firefox/mozilla/dom/TabMessageUtils.h
@@ -1002,6 +1078,15 @@ include/firefox/mozilla/dom/TextEncoder.h
include/firefox/mozilla/dom/TextEncoderBase.h
include/firefox/mozilla/dom/TextEncoderBinding.h
include/firefox/mozilla/dom/TextMetrics.h
+include/firefox/mozilla/dom/TextTrack.h
+include/firefox/mozilla/dom/TextTrackBinding.h
+include/firefox/mozilla/dom/TextTrackCue.h
+include/firefox/mozilla/dom/TextTrackCueBinding.h
+include/firefox/mozilla/dom/TextTrackCueList.h
+include/firefox/mozilla/dom/TextTrackCueListBinding.h
+include/firefox/mozilla/dom/TextTrackList.h
+include/firefox/mozilla/dom/TextTrackListBinding.h
+include/firefox/mozilla/dom/TimeEventBinding.h
include/firefox/mozilla/dom/TimeRanges.h
include/firefox/mozilla/dom/TimeRangesBinding.h
include/firefox/mozilla/dom/Touch.h
@@ -1016,15 +1101,17 @@ include/firefox/mozilla/dom/UIEventBinding.h
include/firefox/mozilla/dom/URL.h
include/firefox/mozilla/dom/URLBinding.h
include/firefox/mozilla/dom/URLUtilsBinding.h
-include/firefox/mozilla/dom/USSDReceivedEventBinding.h
include/firefox/mozilla/dom/UndoManager.h
include/firefox/mozilla/dom/UndoManagerBinding.h
include/firefox/mozilla/dom/UnionConversions.h
include/firefox/mozilla/dom/UnionTypes.h
+include/firefox/mozilla/dom/UserProximityEventBinding.h
include/firefox/mozilla/dom/ValidityState.h
include/firefox/mozilla/dom/ValidityStateBinding.h
include/firefox/mozilla/dom/VideoStreamTrack.h
include/firefox/mozilla/dom/VideoStreamTrackBinding.h
+include/firefox/mozilla/dom/WaveShaperNode.h
+include/firefox/mozilla/dom/WaveShaperNodeBinding.h
include/firefox/mozilla/dom/WebComponentsBinding.h
include/firefox/mozilla/dom/WebGLRenderingContextBinding.h
include/firefox/mozilla/dom/WebSocketBinding.h
@@ -1116,6 +1203,7 @@ include/firefox/mozilla/dom/quota/UsageRunnable.h
include/firefox/mozilla/dom/quota/Utilities.h
include/firefox/mozilla/dom/time/DateCacheCleaner.h
include/firefox/mozilla/dom/time/TimeChangeObserver.h
+include/firefox/mozilla/dom/time/TimeManager.h
include/firefox/mozilla/dom/time/TimeService.h
include/firefox/mozilla/dom/workers/Workers.h
include/firefox/mozilla/dom/workers/bindings/DOMBindingBase.h
@@ -1143,6 +1231,7 @@ include/firefox/mozilla/gfx/PathHelpers.h
include/firefox/mozilla/gfx/Point.h
include/firefox/mozilla/gfx/Rect.h
include/firefox/mozilla/gfx/Scale.h
+include/firefox/mozilla/gfx/ScaleFactor.h
include/firefox/mozilla/gfx/SharedDIB.h
include/firefox/mozilla/gfx/Tools.h
include/firefox/mozilla/gfx/Types.h
@@ -1177,11 +1266,6 @@ include/firefox/mozilla/ipc/Transport.h
include/firefox/mozilla/ipc/Transport_posix.h
include/firefox/mozilla/ipc/URIUtils.h
include/firefox/mozilla/ipc/XPCShellEnvironment.h
-include/firefox/mozilla/jsipc/CPOWTypes.h
-include/firefox/mozilla/jsipc/ContextWrapperChild.h
-include/firefox/mozilla/jsipc/ContextWrapperParent.h
-include/firefox/mozilla/jsipc/ObjectWrapperChild.h
-include/firefox/mozilla/jsipc/ObjectWrapperParent.h
include/firefox/mozilla/layers/AsyncCompositionManager.h
include/firefox/mozilla/layers/AsyncPanZoomController.h
include/firefox/mozilla/layers/Axis.h
@@ -1222,7 +1306,6 @@ include/firefox/mozilla/layers/ShadowLayers.h
include/firefox/mozilla/layers/ShadowLayersManager.h
include/firefox/mozilla/layers/SharedPlanarYCbCrImage.h
include/firefox/mozilla/layers/SharedRGBImage.h
-include/firefox/mozilla/layers/ShmemYCbCrImage.h
include/firefox/mozilla/layers/TaskThrottler.h
include/firefox/mozilla/layers/TextureClient.h
include/firefox/mozilla/layers/TextureClientOGL.h
@@ -1230,6 +1313,7 @@ include/firefox/mozilla/layers/TextureHost.h
include/firefox/mozilla/layers/TextureHostOGL.h
include/firefox/mozilla/layers/ThebesLayerComposite.h
include/firefox/mozilla/layers/TiledContentClient.h
+include/firefox/mozilla/layers/YCbCrImageDataSerializer.h
include/firefox/mozilla/layout/FrameChildList.h
include/firefox/mozilla/layout/RenderFrameChild.h
include/firefox/mozilla/layout/RenderFrameParent.h
@@ -1258,6 +1342,7 @@ include/firefox/mozilla/net/NeckoCommon.h
include/firefox/mozilla/net/NeckoMessageUtils.h
include/firefox/mozilla/net/NeckoParent.h
include/firefox/mozilla/net/PHttpChannelParams.h
+include/firefox/mozilla/net/PSpdyPush3.h
include/firefox/mozilla/net/RemoteOpenFileChild.h
include/firefox/mozilla/net/RemoteOpenFileParent.h
include/firefox/mozilla/net/WebSocketChannel.h
@@ -1295,7 +1380,6 @@ include/firefox/mozilla/plugins/PluginStreamParent.h
include/firefox/mozilla/plugins/PluginUtilsOSX.h
include/firefox/mozilla/plugins/StreamNotifyChild.h
include/firefox/mozilla/plugins/StreamNotifyParent.h
-${PLIST.debug}include/firefox/pure.h
include/firefox/mozilla/scache/StartupCache.h
include/firefox/mozilla/scache/StartupCacheUtils.h
include/firefox/mozilla/storage.h
@@ -1418,8 +1502,9 @@ include/firefox/nsCoord.h
include/firefox/nsCopySupport.h
include/firefox/nsCppSharedAllocator.h
include/firefox/nsCrossSiteListenerProxy.h
-include/firefox/nsCycleCollectionJSRuntime.h
+include/firefox/nsCxPusher.h
include/firefox/nsCycleCollectionNoteChild.h
+include/firefox/nsCycleCollectionNoteRootCallback.h
include/firefox/nsCycleCollectionParticipant.h
include/firefox/nsCycleCollectionTraversalCallback.h
include/firefox/nsCycleCollector.h
@@ -1434,11 +1519,12 @@ include/firefox/nsDOMClassInfoID.h
include/firefox/nsDOMEvent.h
include/firefox/nsDOMEventTargetHelper.h
include/firefox/nsDOMFile.h
-include/firefox/nsDOMGamepad.h
include/firefox/nsDOMJSUtils.h
include/firefox/nsDOMKeyNameList.h
include/firefox/nsDOMMediaQueryList.h
+include/firefox/nsDOMOfflineResourceList.h
include/firefox/nsDOMString.h
+include/firefox/nsDOMTimeEvent.h
include/firefox/nsDOMTouchEvent.h
include/firefox/nsDOMUIEvent.h
include/firefox/nsDataHashtable.h
@@ -1567,7 +1653,6 @@ include/firefox/nsIAccessibilityService.h
include/firefox/nsIAccessible.h
include/firefox/nsIAccessibleApplication.h
include/firefox/nsIAccessibleCaretMoveEvent.h
-include/firefox/nsIAccessibleCursorable.h
include/firefox/nsIAccessibleDocument.h
include/firefox/nsIAccessibleEditableText.h
include/firefox/nsIAccessibleEvent.h
@@ -1658,8 +1743,6 @@ include/firefox/nsICMSMessage.h
include/firefox/nsICMSMessage2.h
include/firefox/nsICMSMessageErrors.h
include/firefox/nsICMSSecureMessage.h
-include/firefox/nsICRLInfo.h
-include/firefox/nsICRLManager.h
include/firefox/nsICSSDeclaration.h
include/firefox/nsICSSLoaderObserver.h
include/firefox/nsICSSPseudoComparator.h
@@ -1773,7 +1856,6 @@ include/firefox/nsIDOMAnimationEvent.h
include/firefox/nsIDOMApplicationRegistry.h
include/firefox/nsIDOMApplicationRegistry2.h
include/firefox/nsIDOMAttr.h
-include/firefox/nsIDOMBarProp.h
include/firefox/nsIDOMBeforeUnloadEvent.h
include/firefox/nsIDOMBlobEvent.h
include/firefox/nsIDOMCDATASection.h
@@ -1781,6 +1863,7 @@ include/firefox/nsIDOMCRMFObject.h
include/firefox/nsIDOMCSSCharsetRule.h
include/firefox/nsIDOMCSSConditionRule.h
include/firefox/nsIDOMCSSFontFaceRule.h
+include/firefox/nsIDOMCSSFontFeatureValuesRule.h
include/firefox/nsIDOMCSSGroupingRule.h
include/firefox/nsIDOMCSSImportRule.h
include/firefox/nsIDOMCSSMediaRule.h
@@ -1817,7 +1900,6 @@ include/firefox/nsIDOMCryptoDialogs.h
include/firefox/nsIDOMCryptoLegacy.h
include/firefox/nsIDOMCustomEvent.h
include/firefox/nsIDOMDOMCursor.h
-include/firefox/nsIDOMDOMError.h
include/firefox/nsIDOMDOMException.h
include/firefox/nsIDOMDOMImplementation.h
include/firefox/nsIDOMDOMRequest.h
@@ -1849,6 +1931,7 @@ include/firefox/nsIDOMFile.h
include/firefox/nsIDOMFileHandle.h
include/firefox/nsIDOMFileList.h
include/firefox/nsIDOMFileReader.h
+include/firefox/nsIDOMFocusEvent.h
include/firefox/nsIDOMFontFace.h
include/firefox/nsIDOMFontFaceList.h
include/firefox/nsIDOMFormData.h
@@ -1862,7 +1945,6 @@ include/firefox/nsIDOMGeoPositionCallback.h
include/firefox/nsIDOMGeoPositionCoords.h
include/firefox/nsIDOMGeoPositionError.h
include/firefox/nsIDOMGeoPositionErrorCallback.h
-include/firefox/nsIDOMGetSVGDocument.h
include/firefox/nsIDOMGlobalObjectConstructor.h
include/firefox/nsIDOMGlobalPropertyInitializer.h
include/firefox/nsIDOMHTMLAnchorElement.h
@@ -1876,7 +1958,6 @@ include/firefox/nsIDOMHTMLButtonElement.h
include/firefox/nsIDOMHTMLByteRanges.h
include/firefox/nsIDOMHTMLCanvasElement.h
include/firefox/nsIDOMHTMLCollection.h
-include/firefox/nsIDOMHTMLCommandElement.h
include/firefox/nsIDOMHTMLDListElement.h
include/firefox/nsIDOMHTMLDataListElement.h
include/firefox/nsIDOMHTMLDirectoryElement.h
@@ -2002,15 +2083,12 @@ include/firefox/nsIDOMPowerManager.h
include/firefox/nsIDOMProcessingInstruction.h
include/firefox/nsIDOMProgressEvent.h
include/firefox/nsIDOMPushManager.h
-include/firefox/nsIDOMRTCPeerConnection.h
include/firefox/nsIDOMRange.h
include/firefox/nsIDOMRect.h
include/firefox/nsIDOMSVGAnimatedEnum.h
include/firefox/nsIDOMSVGAnimatedInteger.h
include/firefox/nsIDOMSVGAnimatedLength.h
include/firefox/nsIDOMSVGAnimatedNumber.h
-include/firefox/nsIDOMSVGAnimatedString.h
-include/firefox/nsIDOMSVGDocument.h
include/firefox/nsIDOMSVGElement.h
include/firefox/nsIDOMSVGLength.h
include/firefox/nsIDOMSVGNumber.h
@@ -2031,14 +2109,14 @@ include/firefox/nsIDOMStorage.h
include/firefox/nsIDOMStorageEvent.h
include/firefox/nsIDOMStorageIndexedDB.h
include/firefox/nsIDOMStorageManager.h
+include/firefox/nsIDOMStyleRuleChangeEvent.h
include/firefox/nsIDOMStyleSheet.h
-include/firefox/nsIDOMStyleSheetAddedEvent.h
+include/firefox/nsIDOMStyleSheetApplicableStateChangeEvent.h
+include/firefox/nsIDOMStyleSheetChangeEvent.h
include/firefox/nsIDOMStyleSheetList.h
-include/firefox/nsIDOMStyleSheetRemovedEvent.h
include/firefox/nsIDOMTCPSocket.h
include/firefox/nsIDOMText.h
include/firefox/nsIDOMTimeEvent.h
-include/firefox/nsIDOMTimeManager.h
include/firefox/nsIDOMTimeRanges.h
include/firefox/nsIDOMToString.h
include/firefox/nsIDOMTouchEvent.h
@@ -2100,7 +2178,6 @@ include/firefox/nsIDirectoryService.h
include/firefox/nsIDiskSpaceWatcher.h
include/firefox/nsIDocCharset.h
include/firefox/nsIDocShell.h
-include/firefox/nsIDocShellHistory.h
include/firefox/nsIDocShellLoadInfo.h
include/firefox/nsIDocShellTreeItem.h
include/firefox/nsIDocShellTreeNode.h
@@ -2111,7 +2188,6 @@ include/firefox/nsIDocumentInlines.h
include/firefox/nsIDocumentLoader.h
include/firefox/nsIDocumentLoaderFactory.h
include/firefox/nsIDocumentObserver.h
-include/firefox/nsIDocumentRegister.h
include/firefox/nsIDocumentStateListener.h
include/firefox/nsIDocumentTransformer.h
include/firefox/nsIDownload.h
@@ -2350,6 +2426,7 @@ include/firefox/nsINativeKeyBindings.h
include/firefox/nsINavBookmarksService.h
include/firefox/nsINavHistoryService.h
include/firefox/nsINavigatorBattery.h
+include/firefox/nsINavigatorGamepads.h
include/firefox/nsINestedURI.h
include/firefox/nsINetAddr.h
include/firefox/nsINetUtil.h
@@ -2479,6 +2556,7 @@ include/firefox/nsIRecoveryService.h
include/firefox/nsIRedirectChannelRegistrar.h
include/firefox/nsIRedirectResultListener.h
include/firefox/nsIReflowCallback.h
+include/firefox/nsIReflowObserver.h
include/firefox/nsIRefreshURI.h
include/firefox/nsIRelativeFilePref.h
include/firefox/nsIRemoteOpenFileListener.h
@@ -2791,6 +2869,7 @@ include/firefox/nsJSNPRuntime.h
include/firefox/nsJSON.h
include/firefox/nsJSPrincipals.h
include/firefox/nsJSProtocolHandler.h
+include/firefox/nsJSThingHashtable.h
include/firefox/nsJSUtils.h
include/firefox/nsLWBrkCIID.h
include/firefox/nsLayoutCID.h
@@ -3070,6 +3149,7 @@ include/firefox/protobuf/google/protobuf/stubs/once.h
include/firefox/protobuf/google/protobuf/stubs/stl_util-inl.h
include/firefox/protobuf/google/protobuf/wire_format_lite.h
include/firefox/protobuf/google/protobuf/wire_format_lite_inl.h
+${PLIST.debug}include/firefox/pure.h
include/firefox/qcms.h
include/firefox/qcmstypes.h
include/firefox/qsObjectHelper.h
@@ -3357,6 +3437,7 @@ lib/firefox/browser/chrome/browser/content/browser/browser.js
lib/firefox/browser/chrome/browser/content/browser/browser.xul
lib/firefox/browser/chrome/browser/content/browser/certerror/aboutCertError.css
lib/firefox/browser/chrome/browser/content/browser/certerror/aboutCertError.xhtml
+lib/firefox/browser/chrome/browser/content/browser/chatWindow.xul
lib/firefox/browser/chrome/browser/content/browser/content-sessionStore.js
lib/firefox/browser/chrome/browser/content/browser/content.js
lib/firefox/browser/chrome/browser/content/browser/devtools/NetworkPanel.xhtml
@@ -3447,7 +3528,6 @@ lib/firefox/browser/chrome/browser/content/browser/migration/migration.xul
lib/firefox/browser/chrome/browser/content/browser/newtab/newTab.css
lib/firefox/browser/chrome/browser/content/browser/newtab/newTab.js
lib/firefox/browser/chrome/browser/content/browser/newtab/newTab.xul
-lib/firefox/browser/chrome/browser/content/browser/newtab/preload.xhtml
lib/firefox/browser/chrome/browser/content/browser/nsContextMenu.js
lib/firefox/browser/chrome/browser/content/browser/openLocation.js
lib/firefox/browser/chrome/browser/content/browser/openLocation.xul
@@ -3604,7 +3684,6 @@ lib/firefox/browser/chrome/browser/skin/classic/browser/browser.css
lib/firefox/browser/chrome/browser/skin/classic/browser/click-to-play-warning-stripes.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/alerticon-warning.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/arrow-e.png
-lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/arrows.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/background-noise-toolbar.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/breadcrumbs-scrollbutton.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/breadcrumbs/ltr-end-pressed.png
@@ -3638,8 +3717,8 @@ lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/command-paintfl
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/command-responsivemode.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/command-scratchpad.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/command-tilt.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/commandline-icon.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/commandline.css
-lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/commandline.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/common.css
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/computedview.css
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/dark-theme.css
@@ -3657,7 +3736,6 @@ lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/dropmarker.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/floating-scrollbars-light.css
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/floating-scrollbars.css
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/font-inspector.css
-lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/goto-mdn.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/inspect-button.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/inspector.css
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/itemArrow-ltr.png
@@ -3683,6 +3761,8 @@ lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/ruleview.css
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/scratchpad.css
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/splitview.css
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/styleeditor.css
+lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/toggle-tools.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/tool-debugger-paused.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/tool-debugger.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/tool-inspector.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/tool-network.png
@@ -3691,8 +3771,9 @@ lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/tool-profiler.p
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/tool-styleeditor.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/tool-webconsole.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/toolbox.css
-lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/tools-icons-small.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/undock.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/vview-delete.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/vview-edit.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/webconsole.css
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/webconsole.png
lib/firefox/browser/chrome/browser/skin/classic/browser/devtools/webconsole_networkpanel.css
@@ -3729,6 +3810,9 @@ lib/firefox/browser/chrome/browser/skin/classic/browser/newtab/newTab.css
lib/firefox/browser/chrome/browser/skin/classic/browser/newtab/noise.png
lib/firefox/browser/chrome/browser/skin/classic/browser/notification-16.png
lib/firefox/browser/chrome/browser/skin/classic/browser/notification-64.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-pluginAlert.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-pluginBlocked.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/notification-pluginNormal.png
lib/firefox/browser/chrome/browser/skin/classic/browser/page-livemarks.png
lib/firefox/browser/chrome/browser/skin/classic/browser/pageInfo.css
lib/firefox/browser/chrome/browser/skin/classic/browser/pageInfo.png
@@ -3767,7 +3851,7 @@ lib/firefox/browser/chrome/browser/skin/classic/browser/sanitizeDialog.css
lib/firefox/browser/chrome/browser/skin/classic/browser/searchbar.css
lib/firefox/browser/chrome/browser/skin/classic/browser/setDesktopBackground.css
lib/firefox/browser/chrome/browser/skin/classic/browser/slowStartup-16.png
-lib/firefox/browser/chrome/browser/skin/classic/browser/social/chat-close.png
+lib/firefox/browser/chrome/browser/skin/classic/browser/social/chat-icons.png
lib/firefox/browser/chrome/browser/skin/classic/browser/social/services-16.png
lib/firefox/browser/chrome/browser/skin/classic/browser/social/services-64.png
lib/firefox/browser/chrome/browser/skin/classic/browser/social/share-button-active.png
@@ -3923,6 +4007,7 @@ lib/firefox/browser/chrome/pdfjs/components/PdfRedirector.js
lib/firefox/browser/chrome/pdfjs/components/PdfStreamConverter.js
lib/firefox/browser/chrome/pdfjs/content/PdfJs.jsm
lib/firefox/browser/chrome/pdfjs/content/build/pdf.js
+lib/firefox/browser/chrome/pdfjs/content/network.js
lib/firefox/browser/chrome/pdfjs/content/web/debugger.js
lib/firefox/browser/chrome/pdfjs/content/web/images/annotation-check.svg
lib/firefox/browser/chrome/pdfjs/content/web/images/annotation-comment.svg
@@ -3942,13 +4027,13 @@ lib/firefox/browser/chrome/pdfjs/content/web/images/shadow.png
lib/firefox/browser/chrome/pdfjs/content/web/images/texture.png
lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-bookmark.png
lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-download.png
-lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-fullscreen.png
lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-menuArrows.png
lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-openFile.png
lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-pageDown-rtl.png
lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-pageDown.png
lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-pageUp-rtl.png
lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-pageUp.png
+lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-presentationMode.png
lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-print.png
lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-search.png
lib/firefox/browser/chrome/pdfjs/content/web/images/toolbarButton-sidebarToggle.png
@@ -4020,7 +4105,7 @@ lib/firefox/browser/modules/devtools/CmdTilt.jsm
lib/firefox/browser/modules/devtools/Commands.jsm
lib/firefox/browser/modules/devtools/DOMHelpers.jsm
lib/firefox/browser/modules/devtools/DebuggerPanel.jsm
-lib/firefox/browser/modules/devtools/DebuggerUI.jsm
+lib/firefox/browser/modules/devtools/DebuggerProcess.jsm
lib/firefox/browser/modules/devtools/DeveloperToolbar.jsm
lib/firefox/browser/modules/devtools/FloatingScrollbars.jsm
lib/firefox/browser/modules/devtools/Jsbeautify.jsm
@@ -4038,6 +4123,7 @@ lib/firefox/browser/modules/devtools/StyleEditorUI.jsm
lib/firefox/browser/modules/devtools/StyleEditorUtil.jsm
lib/firefox/browser/modules/devtools/StyleSheetEditor.jsm
lib/firefox/browser/modules/devtools/VariablesView.jsm
+lib/firefox/browser/modules/devtools/VariablesViewController.jsm
lib/firefox/browser/modules/devtools/ViewHelpers.jsm
lib/firefox/browser/modules/devtools/cmd-profiler.jsm
lib/firefox/browser/modules/devtools/framework/sidebar.js
@@ -4059,6 +4145,7 @@ lib/firefox/browser/modules/devtools/responsivedesign.jsm
lib/firefox/browser/modules/devtools/scratchpad-manager.jsm
lib/firefox/browser/modules/devtools/shared/event-emitter.js
lib/firefox/browser/modules/devtools/shared/inplace-editor.js
+lib/firefox/browser/modules/devtools/shared/telemetry.js
lib/firefox/browser/modules/devtools/shared/theme-switching.js
lib/firefox/browser/modules/devtools/shared/undo.js
lib/firefox/browser/modules/devtools/styleinspector/computed-view.js
@@ -4089,6 +4176,7 @@ lib/firefox/browser/modules/webappsUI.jsm
lib/firefox/browser/modules/webrtcUI.jsm
lib/firefox/browser/searchplugins/amazondotcom.xml
lib/firefox/browser/searchplugins/bing.xml
+lib/firefox/browser/searchplugins/duckduckgo.xml
lib/firefox/browser/searchplugins/eBay.xml
lib/firefox/browser/searchplugins/google.xml
lib/firefox/browser/searchplugins/twitter.xml
@@ -4243,16 +4331,31 @@ lib/firefox/chrome/en-US/locale/en-US/pippki/certManager.dtd
lib/firefox/chrome/en-US/locale/en-US/pippki/deviceManager.dtd
lib/firefox/chrome/en-US/locale/en-US/pippki/pippki.dtd
lib/firefox/chrome/en-US/locale/en-US/pippki/pippki.properties
-lib/firefox/chrome/en-US/locale/en-US/pippki/validation.dtd
lib/firefox/chrome/en-US/locale/en-US/places/places.properties
lib/firefox/chrome/en-US/locale/en-US/services/errors.properties
lib/firefox/chrome/en-US/locale/en-US/services/sync.properties
+lib/firefox/chrome/marionette/content/ChromePowers.js
+lib/firefox/chrome/marionette/content/ChromeUtils.js
+lib/firefox/chrome/marionette/content/EventUtils.js
+lib/firefox/chrome/marionette/content/MozillaLogger.js
+lib/firefox/chrome/marionette/content/SpecialPowersObserver.js
+lib/firefox/chrome/marionette/content/SpecialPowersObserverAPI.js
+lib/firefox/chrome/marionette/content/atoms.js
+lib/firefox/chrome/marionette/content/marionette-elements.js
+lib/firefox/chrome/marionette/content/marionette-listener.js
+lib/firefox/chrome/marionette/content/marionette-log-obj.js
+lib/firefox/chrome/marionette/content/marionette-sendkeys.js
+lib/firefox/chrome/marionette/content/marionette-server.js
+lib/firefox/chrome/marionette/content/marionette-simpletest.js
+lib/firefox/chrome/marionette/content/specialpowers.js
+lib/firefox/chrome/marionette/content/specialpowersAPI.js
+lib/firefox/chrome/marionette/modules/MockFilePicker.jsm
+lib/firefox/chrome/marionette/modules/MockPermissionPrompt.jsm
lib/firefox/chrome/pippki/content/pippki/CAOverlay.xul
lib/firefox/chrome/pippki/content/pippki/MineOverlay.xul
lib/firefox/chrome/pippki/content/pippki/OrphanOverlay.xul
lib/firefox/chrome/pippki/content/pippki/OthersOverlay.xul
lib/firefox/chrome/pippki/content/pippki/WebSitesOverlay.xul
-lib/firefox/chrome/pippki/content/pippki/cacertexists.xul
lib/firefox/chrome/pippki/content/pippki/certDump.xul
lib/firefox/chrome/pippki/content/pippki/certManager.js
lib/firefox/chrome/pippki/content/pippki/certManager.xul
@@ -4268,10 +4371,6 @@ lib/firefox/chrome/pippki/content/pippki/clientauthask.js
lib/firefox/chrome/pippki/content/pippki/clientauthask.xul
lib/firefox/chrome/pippki/content/pippki/createCertInfo.js
lib/firefox/chrome/pippki/content/pippki/createCertInfo.xul
-lib/firefox/chrome/pippki/content/pippki/crlImportDialog.js
-lib/firefox/chrome/pippki/content/pippki/crlImportDialog.xul
-lib/firefox/chrome/pippki/content/pippki/crlManager.js
-lib/firefox/chrome/pippki/content/pippki/crlManager.xul
lib/firefox/chrome/pippki/content/pippki/deletecert.js
lib/firefox/chrome/pippki/content/pippki/deletecert.xul
lib/firefox/chrome/pippki/content/pippki/device_manager.js
@@ -4293,14 +4392,10 @@ lib/firefox/chrome/pippki/content/pippki/getpassword.xul
lib/firefox/chrome/pippki/content/pippki/load_device.xul
lib/firefox/chrome/pippki/content/pippki/password.js
lib/firefox/chrome/pippki/content/pippki/pippki.js
-lib/firefox/chrome/pippki/content/pippki/pref-crlupdate.js
-lib/firefox/chrome/pippki/content/pippki/pref-crlupdate.xul
lib/firefox/chrome/pippki/content/pippki/protectedAuth.js
lib/firefox/chrome/pippki/content/pippki/protectedAuth.xul
lib/firefox/chrome/pippki/content/pippki/resetpassword.js
lib/firefox/chrome/pippki/content/pippki/resetpassword.xul
-lib/firefox/chrome/pippki/content/pippki/serverCrlNextupdate.js
-lib/firefox/chrome/pippki/content/pippki/serverCrlNextupdate.xul
lib/firefox/chrome/pippki/content/pippki/setp12password.xul
lib/firefox/chrome/pippki/content/pippki/viewCertDetails.js
lib/firefox/chrome/pippki/content/pippki/viewCertDetails.xul
@@ -4386,22 +4481,12 @@ lib/firefox/chrome/toolkit/content/global/console.js
lib/firefox/chrome/toolkit/content/global/console.xul
lib/firefox/chrome/toolkit/content/global/consoleBindings.xml
lib/firefox/chrome/toolkit/content/global/contentAreaUtils.js
-lib/firefox/chrome/toolkit/content/global/cpow/child.html
-lib/firefox/chrome/toolkit/content/global/cpow/test.xul
lib/firefox/chrome/toolkit/content/global/customizeCharset.js
lib/firefox/chrome/toolkit/content/global/customizeCharset.xul
lib/firefox/chrome/toolkit/content/global/customizeToolbar.css
lib/firefox/chrome/toolkit/content/global/customizeToolbar.js
lib/firefox/chrome/toolkit/content/global/customizeToolbar.xul
lib/firefox/chrome/toolkit/content/global/devicestorage.properties
-lib/firefox/chrome/toolkit/content/global/devtools/dbg-browser-actors.js
-lib/firefox/chrome/toolkit/content/global/devtools/dbg-gcli-actors.js
-lib/firefox/chrome/toolkit/content/global/devtools/dbg-profiler-actors.js
-lib/firefox/chrome/toolkit/content/global/devtools/dbg-script-actors.js
-lib/firefox/chrome/toolkit/content/global/devtools/dbg-server.js
-lib/firefox/chrome/toolkit/content/global/devtools/dbg-styleeditor-actors.js
-lib/firefox/chrome/toolkit/content/global/devtools/dbg-transport.js
-lib/firefox/chrome/toolkit/content/global/devtools/dbg-webconsole-actors.js
lib/firefox/chrome/toolkit/content/global/dialogOverlay.js
lib/firefox/chrome/toolkit/content/global/dialogOverlay.xul
lib/firefox/chrome/toolkit/content/global/directionDetector.html
@@ -4787,21 +4872,18 @@ lib/firefox/chrome/toolkit/skin/classic/mozapps/passwordmgr/key-16.png
lib/firefox/chrome/toolkit/skin/classic/mozapps/passwordmgr/key-64.png
lib/firefox/chrome/toolkit/skin/classic/mozapps/passwordmgr/key.png
lib/firefox/chrome/toolkit/skin/classic/mozapps/places/defaultFavicon.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginActivate.png
lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginBlocked.png
-lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginClickToPlay.png
-lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginClickToPlayPlain.png
lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginClose.png
lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginCrashed.png
lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginDisabled.png
lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginDownload.png
lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginMissing.png
-lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/notifyPluginBlocked.png
+lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/contentPluginStripe.png
lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/notifyPluginCrashed.png
lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/notifyPluginGeneric.png
-lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/notifyPluginOutdated.png
lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/pluginBlocked-64.png
lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/pluginBlocked.png
-lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/pluginDisabled.png
lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/pluginGeneric-16.png
lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/pluginGeneric.png
lib/firefox/chrome/toolkit/skin/classic/mozapps/plugins/pluginHelp-16.png
@@ -4825,13 +4907,14 @@ lib/firefox/components/DataReportingService.js
lib/firefox/components/DownloadLegacy.js
lib/firefox/components/FeedProcessor.js
lib/firefox/components/FormHistoryStartup.js
-lib/firefox/components/NavigatorPropertyHelper.js
lib/firefox/components/NetworkGeolocationProvider.js
lib/firefox/components/PageThumbsProtocol.js
lib/firefox/components/PermissionSettings.js
lib/firefox/components/PlacesCategoriesStarter.js
lib/firefox/components/Push.js
+lib/firefox/components/PushServiceLauncher.js
lib/firefox/components/SettingsManager.js
+lib/firefox/components/SettingsService.js
lib/firefox/components/SiteSpecificUserAgent.js
lib/firefox/components/TCPSocket.js
lib/firefox/components/TCPSocketParentIntermediary.js
@@ -4850,6 +4933,7 @@ lib/firefox/components/jsconsole-clhandler.js
${PLIST.gnome}lib/firefox/components/libdbusservice.so
lib/firefox/components/libmozgnome.so
${PLIST.gnome}lib/firefox/components/libnkgnomevfs.so
+lib/firefox/components/marionettecomponent.js
lib/firefox/components/messageWakeupService.js
lib/firefox/components/nsBlocklistService.js
lib/firefox/components/nsContentDispatchChooser.js
@@ -4947,6 +5031,7 @@ lib/firefox/modules/AlarmService.jsm
lib/firefox/modules/AppDownloadManager.jsm
lib/firefox/modules/AppsServiceChild.jsm
lib/firefox/modules/AppsUtils.jsm
+lib/firefox/modules/AsyncSpellCheckTestHelper.jsm
lib/firefox/modules/BackgroundPageThumbs.jsm
lib/firefox/modules/BookmarkHTMLUtils.jsm
lib/firefox/modules/BookmarkJSONUtils.jsm
@@ -4993,6 +5078,7 @@ lib/firefox/modules/InlineSpellChecker.jsm
lib/firefox/modules/LightweightThemeConsumer.jsm
lib/firefox/modules/LightweightThemeImageOptimizer.jsm
lib/firefox/modules/LightweightThemeManager.jsm
+lib/firefox/modules/LoginManagerContent.jsm
lib/firefox/modules/MessagePortBase.jsm
lib/firefox/modules/MessagePortWorker.js
lib/firefox/modules/Metrics.jsm
@@ -5021,6 +5107,7 @@ lib/firefox/modules/PluralForm.jsm
lib/firefox/modules/PopupNotifications.jsm
lib/firefox/modules/Preferences.jsm
lib/firefox/modules/PrivateBrowsingUtils.jsm
+lib/firefox/modules/Promise.jsm
lib/firefox/modules/PropertyListUtils.jsm
lib/firefox/modules/PushService.jsm
lib/firefox/modules/RemoteWebProgress.jsm
@@ -5036,6 +5123,7 @@ lib/firefox/modules/SystemMessagePermissionsChecker.jsm
lib/firefox/modules/Task.jsm
lib/firefox/modules/TelemetryStopwatch.jsm
lib/firefox/modules/TelemetryTimestamps.jsm
+lib/firefox/modules/ThirdPartyCookieProbe.jsm
lib/firefox/modules/Timer.jsm
lib/firefox/modules/Troubleshoot.jsm
lib/firefox/modules/UpdateChannel.jsm
@@ -5051,11 +5139,11 @@ lib/firefox/modules/XPIProviderUtils.js
lib/firefox/modules/accessibility/AccessFu.jsm
lib/firefox/modules/accessibility/EventManager.jsm
lib/firefox/modules/accessibility/Makefile.in
+lib/firefox/modules/accessibility/OutputGenerator.jsm
lib/firefox/modules/accessibility/Presentation.jsm
lib/firefox/modules/accessibility/TouchAdapter.jsm
lib/firefox/modules/accessibility/TraversalRules.jsm
lib/firefox/modules/accessibility/Utils.jsm
-lib/firefox/modules/accessibility/UtteranceGenerator.jsm
lib/firefox/modules/accessibility/jar.mn
lib/firefox/modules/commonjs/method/History.md
lib/firefox/modules/commonjs/method/License.md
@@ -5073,9 +5161,9 @@ lib/firefox/modules/commonjs/sdk/browser/events.js
lib/firefox/modules/commonjs/sdk/clipboard.js
lib/firefox/modules/commonjs/sdk/console/plain-text.js
lib/firefox/modules/commonjs/sdk/console/traceback.js
-lib/firefox/modules/commonjs/sdk/content/content-proxy.js
lib/firefox/modules/commonjs/sdk/content/content-worker.js
lib/firefox/modules/commonjs/sdk/content/content.js
+lib/firefox/modules/commonjs/sdk/content/events.js
lib/firefox/modules/commonjs/sdk/content/loader.js
lib/firefox/modules/commonjs/sdk/content/mod.js
lib/firefox/modules/commonjs/sdk/content/symbiont.js
@@ -5104,6 +5192,7 @@ lib/firefox/modules/commonjs/sdk/deprecated/unit-test.js
lib/firefox/modules/commonjs/sdk/deprecated/window-utils.js
lib/firefox/modules/commonjs/sdk/dom/events.js
lib/firefox/modules/commonjs/sdk/dom/events/keys.js
+lib/firefox/modules/commonjs/sdk/event/chrome.js
lib/firefox/modules/commonjs/sdk/event/core.js
lib/firefox/modules/commonjs/sdk/event/dom.js
lib/firefox/modules/commonjs/sdk/event/target.js
@@ -5143,6 +5232,7 @@ lib/firefox/modules/commonjs/sdk/panel/utils.js
lib/firefox/modules/commonjs/sdk/panel/window.js
lib/firefox/modules/commonjs/sdk/passwords.js
lib/firefox/modules/commonjs/sdk/passwords/utils.js
+lib/firefox/modules/commonjs/sdk/places/favicon.js
lib/firefox/modules/commonjs/sdk/platform/xpcom.js
lib/firefox/modules/commonjs/sdk/preferences/event-target.js
lib/firefox/modules/commonjs/sdk/preferences/service.js
@@ -5217,6 +5307,9 @@ lib/firefox/modules/commonjs/toolkit/loader.js
lib/firefox/modules/ctypes.jsm
lib/firefox/modules/debug.js
lib/firefox/modules/devtools/Console.jsm
+lib/firefox/modules/devtools/DevToolsUtils.js
+lib/firefox/modules/devtools/DevToolsUtils.jsm
+lib/firefox/modules/devtools/Loader.jsm
lib/firefox/modules/devtools/NetworkHelper.jsm
lib/firefox/modules/devtools/Require.jsm
lib/firefox/modules/devtools/SourceMap.jsm
@@ -5226,6 +5319,19 @@ lib/firefox/modules/devtools/WebConsoleUtils.jsm
lib/firefox/modules/devtools/dbg-client.jsm
lib/firefox/modules/devtools/dbg-server.jsm
lib/firefox/modules/devtools/gcli.jsm
+lib/firefox/modules/devtools/server/actors/gcli.js
+lib/firefox/modules/devtools/server/actors/inspector.js
+lib/firefox/modules/devtools/server/actors/profiler.js
+lib/firefox/modules/devtools/server/actors/root.js
+lib/firefox/modules/devtools/server/actors/script.js
+lib/firefox/modules/devtools/server/actors/string.js
+lib/firefox/modules/devtools/server/actors/styleeditor.js
+lib/firefox/modules/devtools/server/actors/webapps.js
+lib/firefox/modules/devtools/server/actors/webbrowser.js
+lib/firefox/modules/devtools/server/actors/webconsole.js
+lib/firefox/modules/devtools/server/main.js
+lib/firefox/modules/devtools/server/protocol.js
+lib/firefox/modules/devtools/server/transport.js
lib/firefox/modules/identity/Identity.jsm
lib/firefox/modules/identity/IdentityProvider.jsm
lib/firefox/modules/identity/IdentityStore.jsm
@@ -5300,6 +5406,7 @@ lib/firefox/modules/services/healthreport/providers.jsm
lib/firefox/modules/services/metrics/dataprovider.jsm
lib/firefox/modules/services/metrics/providermanager.jsm
lib/firefox/modules/services/metrics/storage.jsm
+lib/firefox/modules/workers/require.js
lib/firefox/mozilla-xremote-client
lib/firefox/platform.ini
lib/firefox/plugin-container
@@ -5374,6 +5481,7 @@ lib/firefox/webapprt/modules/WebappsHandler.jsm
lib/firefox/webapprt/webapprt.ini
share/applications/firefox.desktop
share/idl/firefox/IJSDebugger.idl
+share/idl/firefox/amIAddonManager.idl
share/idl/firefox/amIInstallTrigger.idl
share/idl/firefox/amIWebInstallListener.idl
share/idl/firefox/amIWebInstaller.idl
@@ -5445,7 +5553,6 @@ share/idl/firefox/nsIAboutModule.idl
share/idl/firefox/nsIAccessible.idl
share/idl/firefox/nsIAccessibleApplication.idl
share/idl/firefox/nsIAccessibleCaretMoveEvent.idl
-share/idl/firefox/nsIAccessibleCursorable.idl
share/idl/firefox/nsIAccessibleDocument.idl
share/idl/firefox/nsIAccessibleEditableText.idl
share/idl/firefox/nsIAccessibleEvent.idl
@@ -5531,8 +5638,6 @@ share/idl/firefox/nsICMSMessage.idl
share/idl/firefox/nsICMSMessage2.idl
share/idl/firefox/nsICMSMessageErrors.idl
share/idl/firefox/nsICMSSecureMessage.idl
-share/idl/firefox/nsICRLInfo.idl
-share/idl/firefox/nsICRLManager.idl
share/idl/firefox/nsICache.idl
share/idl/firefox/nsICacheEntryDescriptor.idl
share/idl/firefox/nsICacheInfoChannel.idl
@@ -5627,7 +5732,6 @@ share/idl/firefox/nsIDOMAnimationEvent.idl
share/idl/firefox/nsIDOMApplicationRegistry.idl
share/idl/firefox/nsIDOMApplicationRegistry2.idl
share/idl/firefox/nsIDOMAttr.idl
-share/idl/firefox/nsIDOMBarProp.idl
share/idl/firefox/nsIDOMBeforeUnloadEvent.idl
share/idl/firefox/nsIDOMBlobEvent.idl
share/idl/firefox/nsIDOMCDATASection.idl
@@ -5635,6 +5739,7 @@ share/idl/firefox/nsIDOMCRMFObject.idl
share/idl/firefox/nsIDOMCSSCharsetRule.idl
share/idl/firefox/nsIDOMCSSConditionRule.idl
share/idl/firefox/nsIDOMCSSFontFaceRule.idl
+share/idl/firefox/nsIDOMCSSFontFeatureValuesRule.idl
share/idl/firefox/nsIDOMCSSGroupingRule.idl
share/idl/firefox/nsIDOMCSSImportRule.idl
share/idl/firefox/nsIDOMCSSMediaRule.idl
@@ -5670,7 +5775,6 @@ share/idl/firefox/nsIDOMCryptoDialogs.idl
share/idl/firefox/nsIDOMCryptoLegacy.idl
share/idl/firefox/nsIDOMCustomEvent.idl
share/idl/firefox/nsIDOMDOMCursor.idl
-share/idl/firefox/nsIDOMDOMError.idl
share/idl/firefox/nsIDOMDOMException.idl
share/idl/firefox/nsIDOMDOMImplementation.idl
share/idl/firefox/nsIDOMDOMRequest.idl
@@ -5702,6 +5806,7 @@ share/idl/firefox/nsIDOMFile.idl
share/idl/firefox/nsIDOMFileHandle.idl
share/idl/firefox/nsIDOMFileList.idl
share/idl/firefox/nsIDOMFileReader.idl
+share/idl/firefox/nsIDOMFocusEvent.idl
share/idl/firefox/nsIDOMFontFace.idl
share/idl/firefox/nsIDOMFontFaceList.idl
share/idl/firefox/nsIDOMFormData.idl
@@ -5715,7 +5820,6 @@ share/idl/firefox/nsIDOMGeoPositionCallback.idl
share/idl/firefox/nsIDOMGeoPositionCoords.idl
share/idl/firefox/nsIDOMGeoPositionError.idl
share/idl/firefox/nsIDOMGeoPositionErrorCallback.idl
-share/idl/firefox/nsIDOMGetSVGDocument.idl
share/idl/firefox/nsIDOMGlobalObjectConstructor.idl
share/idl/firefox/nsIDOMGlobalPropertyInitializer.idl
share/idl/firefox/nsIDOMHTMLAnchorElement.idl
@@ -5729,7 +5833,6 @@ share/idl/firefox/nsIDOMHTMLButtonElement.idl
share/idl/firefox/nsIDOMHTMLByteRanges.idl
share/idl/firefox/nsIDOMHTMLCanvasElement.idl
share/idl/firefox/nsIDOMHTMLCollection.idl
-share/idl/firefox/nsIDOMHTMLCommandElement.idl
share/idl/firefox/nsIDOMHTMLDListElement.idl
share/idl/firefox/nsIDOMHTMLDataListElement.idl
share/idl/firefox/nsIDOMHTMLDirectoryElement.idl
@@ -5855,15 +5958,12 @@ share/idl/firefox/nsIDOMPowerManager.idl
share/idl/firefox/nsIDOMProcessingInstruction.idl
share/idl/firefox/nsIDOMProgressEvent.idl
share/idl/firefox/nsIDOMPushManager.idl
-share/idl/firefox/nsIDOMRTCPeerConnection.idl
share/idl/firefox/nsIDOMRange.idl
share/idl/firefox/nsIDOMRect.idl
share/idl/firefox/nsIDOMSVGAnimatedEnum.idl
share/idl/firefox/nsIDOMSVGAnimatedInteger.idl
share/idl/firefox/nsIDOMSVGAnimatedLength.idl
share/idl/firefox/nsIDOMSVGAnimatedNumber.idl
-share/idl/firefox/nsIDOMSVGAnimatedString.idl
-share/idl/firefox/nsIDOMSVGDocument.idl
share/idl/firefox/nsIDOMSVGElement.idl
share/idl/firefox/nsIDOMSVGLength.idl
share/idl/firefox/nsIDOMSVGNumber.idl
@@ -5883,14 +5983,14 @@ share/idl/firefox/nsIDOMStorage.idl
share/idl/firefox/nsIDOMStorageEvent.idl
share/idl/firefox/nsIDOMStorageIndexedDB.idl
share/idl/firefox/nsIDOMStorageManager.idl
+share/idl/firefox/nsIDOMStyleRuleChangeEvent.idl
share/idl/firefox/nsIDOMStyleSheet.idl
-share/idl/firefox/nsIDOMStyleSheetAddedEvent.idl
+share/idl/firefox/nsIDOMStyleSheetApplicableStateChangeEvent.idl
+share/idl/firefox/nsIDOMStyleSheetChangeEvent.idl
share/idl/firefox/nsIDOMStyleSheetList.idl
-share/idl/firefox/nsIDOMStyleSheetRemovedEvent.idl
share/idl/firefox/nsIDOMTCPSocket.idl
share/idl/firefox/nsIDOMText.idl
share/idl/firefox/nsIDOMTimeEvent.idl
-share/idl/firefox/nsIDOMTimeManager.idl
share/idl/firefox/nsIDOMTimeRanges.idl
share/idl/firefox/nsIDOMToString.idl
share/idl/firefox/nsIDOMTouchEvent.idl
@@ -5949,7 +6049,6 @@ share/idl/firefox/nsIDirectoryService.idl
share/idl/firefox/nsIDiskSpaceWatcher.idl
share/idl/firefox/nsIDocCharset.idl
share/idl/firefox/nsIDocShell.idl
-share/idl/firefox/nsIDocShellHistory.idl
share/idl/firefox/nsIDocShellLoadInfo.idl
share/idl/firefox/nsIDocShellTreeItem.idl
share/idl/firefox/nsIDocShellTreeNode.idl
@@ -5957,7 +6056,6 @@ share/idl/firefox/nsIDocShellTreeOwner.idl
share/idl/firefox/nsIDocumentEncoder.idl
share/idl/firefox/nsIDocumentLoader.idl
share/idl/firefox/nsIDocumentLoaderFactory.idl
-share/idl/firefox/nsIDocumentRegister.idl
share/idl/firefox/nsIDocumentStateListener.idl
share/idl/firefox/nsIDownload.idl
share/idl/firefox/nsIDownloadHistory.idl
@@ -6160,6 +6258,7 @@ share/idl/firefox/nsINativeAppSupport.idl
share/idl/firefox/nsINavBookmarksService.idl
share/idl/firefox/nsINavHistoryService.idl
share/idl/firefox/nsINavigatorBattery.idl
+share/idl/firefox/nsINavigatorGamepads.idl
share/idl/firefox/nsINestedURI.idl
share/idl/firefox/nsINetAddr.idl
share/idl/firefox/nsINetUtil.idl
@@ -6268,6 +6367,7 @@ share/idl/firefox/nsIRecentBadCertsService.idl
share/idl/firefox/nsIRecoveryService.idl
share/idl/firefox/nsIRedirectChannelRegistrar.idl
share/idl/firefox/nsIRedirectResultListener.idl
+share/idl/firefox/nsIReflowObserver.idl
share/idl/firefox/nsIRefreshURI.idl
share/idl/firefox/nsIRelativeFilePref.idl
share/idl/firefox/nsIRemoteOpenFileListener.idl
diff --git a/www/firefox/distinfo b/www/firefox/distinfo
index d607a7f1885..2084e9339bd 100644
--- a/www/firefox/distinfo
+++ b/www/firefox/distinfo
@@ -1,48 +1,52 @@
-$NetBSD: distinfo,v 1.112 2013/08/22 21:19:00 joerg Exp $
+$NetBSD: distinfo,v 1.113 2013/09/19 12:37:49 ryoon Exp $
-SHA1 (firefox-23.0.1.source.tar.bz2) = 937bcd41aa316afff60b04fa4813f59bb9608631
-RMD160 (firefox-23.0.1.source.tar.bz2) = 524f2c2872c39f0496ead812675d84ece1c394ee
-Size (firefox-23.0.1.source.tar.bz2) = 115727982 bytes
-SHA1 (patch-aa) = 25ec9ff7f812957f731aa95733624765630844f3
+SHA1 (firefox-24.0esr.source.tar.bz2) = b5859d4baf270e6f7e48baf7807fd8d23a80ca1a
+RMD160 (firefox-24.0esr.source.tar.bz2) = 0984b17713f57509826437bbcaf3bda0c5f5248c
+Size (firefox-24.0esr.source.tar.bz2) = 119722621 bytes
+SHA1 (patch-aa) = e8a10637cefb668f1db518464ba75b5469090f8f
SHA1 (patch-ak) = 971ddb1f12b14bcee604c9d7e72da5e7bf47d9be
SHA1 (patch-al) = 553c6042a98e4b381a46eec50c02cff349d88bd2
SHA1 (patch-ao) = ebf95a9abf76439cdd890ea34f75f0d8d1114fe0
-SHA1 (patch-as) = 076082d8b2c6f7ef91c152497a4cd7d60545e70b
-SHA1 (patch-bd) = 1a24cb9e4dc312725d0a6ffdf202b6f3e98d17fb
-SHA1 (patch-bf) = 6a052e8c83967e9054a81eb11f1501eb50e88782
+SHA1 (patch-as) = 678d50cccaa29e32bb703a8c66ecf31a10fe8078
+SHA1 (patch-bf) = 75c971043e9f693203d6bd670b2c20c4952a7756
SHA1 (patch-bg) = e5af56b3dca81ad67149c09942580ebd9062b38d
SHA1 (patch-bi) = 3dd927d93431afe000cd4a45b4d9920e63158a85
+SHA1 (patch-browser_app_profile_firefox.js) = 108efbe1ae65669912d2f76caec546753e1ac8f3
SHA1 (patch-browser_installer_package-manifest.in) = a00ac3c6ddedd316c7350ad9867a1a68cce974e1
+SHA1 (patch-browser_locales_en-US_chrome_browser-region_region.properties) = 284d62596718d7f372c4e5214fd05adec043c93a
+SHA1 (patch-browser_locales_en-US_searchplugins_duckduckgo.xml) = 69eca52185ac868e95041b5d87611ee32c2b6330
+SHA1 (patch-browser_locales_en-US_searchplugins_list.txt) = a6677b3a195b6c956858326e4e7474441823a47f
SHA1 (patch-build_autoconf_nss.m4) = 4731f46a41f6d4ff31a6da07c9badb328a0f676f
+SHA1 (patch-build_pgo_profileserver.py) = 2105ea756ae938095150e53a461ae9e4779f9b98
+SHA1 (patch-config_Makefile.in) = 57384964be7af2a65443534dfd18729c3ae951ec
SHA1 (patch-config_baseconfig.mk) = 1b47c82736d3c38e34b507138cf91268f4bc9e82
SHA1 (patch-config_stl__wrappers_ios) = 00d723e2f2f252485350ede5833f0bb84c1235c1
SHA1 (patch-config_stl__wrappers_ostream) = 7be7fe36704ffbdc070a113b46b4f391a598206b
-SHA1 (patch-config_system-headers) = 5957acc2b4d14a1a9e71791bca3eb76c448a02b2
+SHA1 (patch-config_system-headers) = 0da7f04309f7540a0038079568cf54d981f0d3f5
SHA1 (patch-config_system__wrappers_unwind.h) = b3bdac0710179b9c8f8eabd824216d0114504491
-SHA1 (patch-dist_stl__wrappers_ios) = 1044d6b54e2eca9ce8b5f0e8d1826dcf314dcee5
-SHA1 (patch-dist_stl__wrappers_ostream) = 0d8fc20c369f8329e0d324574ae1efa1cbde0af7
+SHA1 (patch-content_media_gstreamer_GStreamerFormatHelper.cpp) = 450d8202977ef30e75166372fe405c0908450641
SHA1 (patch-dom_plugins_ipc_PluginModuleChild.cpp) = 69b0a51d733cd52e7d200052362e0faf4ec918f1
SHA1 (patch-dom_plugins_ipc_PluginModuleChild.h) = 0a7f3167e939822013ae6195406657453578453e
SHA1 (patch-extensions_auth_nsAuthGSSAPI.cpp) = 548886fc4a86a988f3f91650061ddc04f37653a8
+SHA1 (patch-extensions_spellcheck_hunspell_src_mozHunspell.cpp) = 1f841becb14483909e05f179f4dce53a7d5b1bd1
SHA1 (patch-gfx__skia__include__core__SkPreConfig.h) = 447b3a311bfb25a0519b60b105ac360d3fe74370
SHA1 (patch-gfx_graphite2_src_Bidi.cpp) = 5e80b4a32a47ae44d237fec69ea87bdd612a76ce
-SHA1 (patch-gfx_skia_Makefile.in) = ddc7e4a375f4cfd7dd76c5b37835bbcd3ad13cf1
+SHA1 (patch-gfx_skia_moz.build) = 71b4dc2104cd403cc3cf979d62230a1c4acface3
SHA1 (patch-gfx_skia_src_sfnt_SkOTTable__head.h) = 493fced792610ea1ce5ab6b1e043ef36b33f8279
SHA1 (patch-gfx_skia_src_sfnt_SkOTTable__name.h) = 61a6611b3dd08f5bd56681244eefbfa3f209f6a1
SHA1 (patch-gfx_skia_src_sfnt_SkSFNTHeader.h) = 9d997d23ed80370e5b36648b9b35d80c5db88be8
-SHA1 (patch-gfx_thebes_gfxPlatform.cpp) = 1ebc8e894e9d63961f49ba0798ad3eed100d95a6
SHA1 (patch-image_decoders_nsJPEGDecoder.cpp) = e5df11499b1ec14e1d4c9a1408c0611d1c4e0574
SHA1 (patch-intl_hyphenation_src_hnjalloc.h) = 7fcc7b0fcf5a33486214197e925fbc8e6e22e2ee
-SHA1 (patch-ipc_chromium_Makefile.in) = 0dcb7013b2abea8813cf35661036c56314ea172a
+SHA1 (patch-ipc_chromium_Makefile.in) = ee56ff382dc6027780a02832c765335c25076eba
SHA1 (patch-ipc_chromium_chromium-config.mk) = 6eab1cb974a5a8550e9ea8f9290a9cec8e2aa133
SHA1 (patch-ipc_chromium_src_base_base__paths.h) = 7bc83577a9678542db4dff7dda19d751ff6d78c1
SHA1 (patch-ipc_chromium_src_base_debug__util__posix.cc) = 677f0b5ccdcde7a8551f2d07d2a472361a5da03f
SHA1 (patch-ipc_chromium_src_base_file__util.h) = 2bfc4b8f14cf5290f98902f11c9638cf71575655
SHA1 (patch-ipc_chromium_src_base_file__util__posix.cc) = 4d183855d7932ad6f526649dc3671b72cbfbb195
SHA1 (patch-ipc_chromium_src_base_message__pump__libevent.cc) = 12f3e063cf3fef23f0e3e0fdba5d5a4c1fc32af3
-SHA1 (patch-ipc_chromium_src_base_platform__thread.h) = 41d00aba93546af87fd3203f6324f6443fd62f1f
-SHA1 (patch-ipc_chromium_src_base_platform__thread__posix.cc) = a3c3034904cfd4aa5fa82ac8564e1369a7262c59
-SHA1 (patch-ipc_chromium_src_base_process__util.h) = a6e664699a4b218a6340138e4ba09af67c468933
+SHA1 (patch-ipc_chromium_src_base_platform__thread.h) = e6d7ac39a8b2a1b232638f7671e8530acfed0b97
+SHA1 (patch-ipc_chromium_src_base_platform__thread__posix.cc) = e386bfd56ae6f77ef1aaadd0fa81af147a09f75d
+SHA1 (patch-ipc_chromium_src_base_process__util.h) = 31b592d69d3c4f63642dae3c81c771ee3dfa8502
SHA1 (patch-ipc_chromium_src_base_process__util__posix.cc) = 6b2611cc902f17e726aabcf4fb5fff2c71852408
SHA1 (patch-ipc_chromium_src_base_sys__info__posix.cc) = 30646e3cd2d010a75e2a385cfa1f1f57eb74fac2
SHA1 (patch-ipc_chromium_src_base_time__posix.cc) = 337a0b4a5d51d68c7699b79c7591b953ea23ca67
@@ -51,36 +55,26 @@ SHA1 (patch-ipc_chromium_src_chrome_common_transport__dib.h) = 7af18973c005d7b14
SHA1 (patch-ipc_glue_AsyncChannel.cpp) = 0185791ada8e903943bcd245376486315b1c6515
SHA1 (patch-ipc_glue_GeckoChildProcessHost.cpp) = fe9ac2d0af8dd4757c93f50e6f74a31697f7e23c
SHA1 (patch-ipc_ipdl_ipdl_lower.py) = 4025c0a4e149d9b2087331e10b342734fa77a905
-SHA1 (patch-js__public__HeapAPI.h) = 8dc656293d75c92118c19b0fe070542f534bebd4
-SHA1 (patch-js__public__Value.h) = 38892a07c475001bcda87700f50504cb6a3dcedb
-SHA1 (patch-js__src__gc__Marking.cpp) = f2ee6320b2c7c9a4374c0cbb844ae6368ad03a13
-SHA1 (patch-js__src__gc__Memory.cpp) = 905b99349d6c40b402b52cac53b4d9afa732b13a
-SHA1 (patch-js__src__gc__Memory.h) = 4496889c2aa7417fa4e02236dfe0ef39069d436a
-SHA1 (patch-js__src__jsapi.cpp) = b70149c82d6c9708cc4952a527a0a2cbced24dae
-SHA1 (patch-js__src__jscntxt.h) = eaf0b2da673bdd05f4f7cbb0f8c04e80702d5fd0
-SHA1 (patch-js__src__jsgc.cpp) = 7d8070f75e4336dee2af8d34f343d5668ec6b212
-SHA1 (patch-js__src__jsscript.cpp) = a64e8b1211dac3021d6816879c648d7cfc65e6c0
-SHA1 (patch-js__src__vm__SPSProfiler.cpp) = bccdd60262f9f652351053b6dd2045821a993b32
-SHA1 (patch-js__src__yarr__YarrInterpreter.cpp) = a9bd5bd9f55f97cb9623e35e09b7bfaf8e4499b3
-SHA1 (patch-js_src_Makefile.in) = 98734e93974965419da3d3706f94e1be515799e1
-SHA1 (patch-js_src_config_system-headers) = ea170db4562cd69913e91d186b238ecbea9a3f83
-SHA1 (patch-js_src_ion_AsmJS.cpp) = 07fb48b921ec4b68593fe3685e369bc3ad439331
-SHA1 (patch-js_src_ion_AsmJS.h) = a1888a2e116179c5f6b1767805e5a7146ecb5af5
-SHA1 (patch-js_src_ion_AsmJSModule.h) = 4422e4adf7b7f424009db453a611eaa0b4e6a23e
-SHA1 (patch-js_src_ion_AsmJSSignalHandlers.cpp) = be7963f06b716aeaa93636cc5fd12233b716e9df
+SHA1 (patch-js__src__vm__SPSProfiler.cpp) = 73bb94adbba5cce848fe776c1bf00fabd9716558
+SHA1 (patch-js_src_Makefile.in) = abae2f8c055a919f5e3ccc7271ee598adc0a70e4
+SHA1 (patch-js_src_config_Makefile.in) = 5639c71af8b1b6777e730fce52c913a5469f2efe
+SHA1 (patch-js_src_config_system-headers) = a2a68c9eba37fa484af944ffe80969487940fc46
+SHA1 (patch-js_src_ctypes_CTypes.h) = a168d70707b0d09b6ff52141b5ceebf69caa1f90
+SHA1 (patch-js_src_frontend_ParseMaps.cpp) = c00117d79b78904bc50a1d664a8fc0e4e339bfbc
+SHA1 (patch-js_src_gdb_Makefile.in) = 5719a69750412e63a7772ed8bf9e8c5fa8df03ca
+SHA1 (patch-js_src_jit_AsmJSSignalHandlers.cpp) = 2db5ff71344a8f9fdec01a1d92445f89b6407bbe
+SHA1 (patch-js_src_jsapi-tests_Makefile.in) = cc204028b25f9c25f0d421305393ce166fb4cd58
SHA1 (patch-js_src_jscompartment.h) = 33708bc67f1c05f776dbb9c048ddf91f0eea25ca
-SHA1 (patch-js_src_jsmath.cpp) = c2349491ad56f4b45723540d864db9512609225e
-SHA1 (patch-js_src_jstypedarray.cpp) = c120d41c650e04de2688bd93759d073bf127da2f
-SHA1 (patch-js_src_methodjit_MethodJIT.cpp) = 77685fc735bde4e592a3ddc29fa05b13a694fa8a
-SHA1 (patch-js_src_vm_ObjectImpl-inl.h) = c18686be2c21c21a4d3e47a394f28b90de16d386
-SHA1 (patch-js_src_vm_Stack.cpp) = 3246e6e02fe4356c54c8d8d005406a1327adf5bb
-SHA1 (patch-mb) = 43500266e3a918ee311396c20e7edf1e2efafd94
+SHA1 (patch-js_src_jsmath.cpp) = 7d4993ae91e9b5e6820358165603819aefb586f9
+SHA1 (patch-js_src_shell_Makefile.in) = de91bbe75d12ef4885a49284240f9b2600afc6d0
+SHA1 (patch-js_src_vm_ObjectImpl-inl.h) = 6d7a47f52935e854f914106055b5ec4c93c9741d
+SHA1 (patch-mb) = 24daa34185852f4f865bcd42041fc1cb693d9fe7
SHA1 (patch-media_libpng_pngpriv.h) = 945ef0be0ac2ddbb0153376add1231f2a63b5699
SHA1 (patch-media_libsoundtouch_src_cpu__detect__x86.cpp) = 061b46d1ee33c055a5b39e6b20f47b80bcde0c86
SHA1 (patch-media_mtransport_objs.mk) = 1877b73706451bc9ff5254ab32d5e2edb9f36883
SHA1 (patch-media_mtransport_test_Makefile.in) = 9d2364f2bfd0f5fbafb6d0204f98ae0df4e5664c
SHA1 (patch-media_mtransport_third__party_nICEr_nicer.gyp) = 3ed56a7c9ea61f5910a7d608a1bd404b9ce58344
-SHA1 (patch-media_mtransport_third__party_nICEr_src_stun_addrs.c) = f63122ed6ad7e5aea52b18c8379148e0c5f23cdd
+SHA1 (patch-media_mtransport_third__party_nICEr_src_stun_addrs.c) = f4f8904e4a5047da0b6a03d186c5b4e768ccdc56
SHA1 (patch-media_mtransport_third__party_nICEr_src_stun_stun.h) = 90eb67c93dabf4d84bf3df521f1d53aa874d3050
SHA1 (patch-media_mtransport_third__party_nICEr_src_util_mbslen.c) = 52f57c4a5ba2708072a83fdfbe1ba27390dd5353
SHA1 (patch-media_mtransport_third__party_nrappkit_nrappkit.gyp) = 68b7c5a15ff6027baccf18130673670d51d6a724
@@ -90,55 +84,41 @@ SHA1 (patch-media_mtransport_third__party_nrappkit_src_util_util.c) = 8406228a49
SHA1 (patch-media_webrtc_signaling_signaling.gyp) = 3541d06aeb691032d9e63f9d5a17af555f2ee8dc
SHA1 (patch-media_webrtc_signaling_src_sipcc_cpr_darwin_cpr__darwin__ipc.c) = c6e604c731e1adecfff5706299b7999e479273e2
SHA1 (patch-media_webrtc_signaling_test_Makefile.in) = cdc7d5b87a465ba57d2f0523bb26a5cbfdaa03df
-SHA1 (patch-media_webrtc_trunk_third__party_libyuv_libyuv.gyp) = 82ff018ec35fb25135c03913ffe071effcf3a57d
+SHA1 (patch-media_webrtc_trunk_build_build__config.h) = 9fef8aab16142bc23426c00d279f0df5322a9170
SHA1 (patch-media_webrtc_trunk_tools_gyp_pylib_gyp_generator_mozmake.py) = f465afb37d74988764e4dd362911063b3697cfbd
-SHA1 (patch-media_webrtc_trunk_webrtc_build_common.gypi) = d37c47058dedc587b0f1b5b711b5e1e39875d4ed
-SHA1 (patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device.gypi) = 5500eed6ee6331f8d10594d0fe9c93d1dbcbd325
-SHA1 (patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device__utility.cc) = 9767c35fa45b54fb28d67479efa86cdc769aa447
-SHA1 (patch-media_webrtc_trunk_webrtc_modules_rtp__rtcp_source_forward__error__correction.cc) = e407e7714b9eb7cc79a8976ec62fc2092d8aeac1
-SHA1 (patch-media_webrtc_trunk_webrtc_modules_rtp__rtcp_source_rtp__utility.cc) = 29e331acf449bdb212305b96c7cb44e93721e335
-SHA1 (patch-media_webrtc_trunk_webrtc_modules_udp__transport_source_udp__transport__impl.cc) = 96b312ee61fdcb94004ed5aa29eefb0d5a51af81
-SHA1 (patch-media_webrtc_trunk_webrtc_modules_utility_source_rtp__dump__impl.cc) = 8610717389ae840b23252ea0f15068a03e3c99be
-SHA1 (patch-media_webrtc_trunk_webrtc_modules_video__capture_device__info__impl.cc) = fe09632ff216ba621ef6953ab3cb5354842d3a30
-SHA1 (patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc) = 6dfa87bc5a36fb9eb2555b1081455526948966f4
-SHA1 (patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc) = ec735e09515434f504fd1c16584b99fa61aff2ad
-SHA1 (patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi) = 7377ddf7a57d84c270a5387e0d2eaa51b6ee804b
+SHA1 (patch-media_webrtc_trunk_webrtc_build_common.gypi) = a6fffd8b0bc20fea5c462a7d9e894f21fbce4968
+SHA1 (patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device__impl.cc) = 5de51a8b8a3ba15dac3aeae739b0eeb802b8267e
+SHA1 (patch-media_webrtc_trunk_webrtc_modules_audio__device_test_audio__device__test__api.cc) = 8dfb591214e8a66614c98b9dbe35e9a37002f08d
+SHA1 (patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc) = 69ec8bec46bcb29ebf8487c5c089045755fed62a
+SHA1 (patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc) = c0589d47f1cf761e9b2a94c586699b20741696c4
+SHA1 (patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi) = 4721f01a89ef353c9b743b3cfefda4877d5283d9
SHA1 (patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture__factory.cc) = e83b21a561649f7ae262a1c5b04c5d0a560a67c9
-SHA1 (patch-media_webrtc_trunk_webrtc_system__wrappers_interface_asm__defines.h) = 8a061afbaae0948f46152a45b14160b3885c08b0
-SHA1 (patch-media_webrtc_trunk_webrtc_system__wrappers_interface_tick__util.h) = c96ef7e729868da5d897a71de214958d2f5b7c67
-SHA1 (patch-media_webrtc_trunk_webrtc_system__wrappers_source_atomic32__posix.cc) = 8178fdc13f5961a7d70fa75eb33968f55a76e24e
-SHA1 (patch-media_webrtc_trunk_webrtc_system__wrappers_source_condition__variable.cc) = 918474cffa9b10134a8aedc32b93289e923f9f4e
-SHA1 (patch-media_webrtc_trunk_webrtc_system__wrappers_source_condition__variable__posix.cc) = 43fa25f89b475cc8132d4863ab248e1e96fe13ea
-SHA1 (patch-media_webrtc_trunk_webrtc_system__wrappers_source_cpu.cc) = 1875fc230d3c02e05f9d848b9af9f60afe9474f4
-SHA1 (patch-media_webrtc_trunk_webrtc_system__wrappers_source_cpu__info.cc) = b92bb51b6640eaa16a18ed2b6bf186fed6cb7125
+SHA1 (patch-media_webrtc_trunk_webrtc_system__wrappers_source_condition__variable.cc) = 727fee5d35cfb9a4981dea1b39751eac6b3c0f1e
SHA1 (patch-media_webrtc_trunk_webrtc_system__wrappers_source_spreadsortlib_spreadsort.hpp) = 853b178ca1b95c6907ca2fc2de9865807661a8f5
-SHA1 (patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.cc) = 5ccd5d54da07c64c59f04b9337cc4234e576f9e0
-SHA1 (patch-media_webrtc_trunk_webrtc_system__wrappers_source_trace__posix.cc) = 7cb19fb82210887a6c6c17a5e60cb069f06466cc
-SHA1 (patch-media_webrtc_trunk_webrtc_typedefs.h) = 9a62eb31eb5acb8ff240244273de42d8c66c45a7
-SHA1 (patch-media_webrtc_trunk_webrtc_video__engine_vie__defines.h) = 33323114b03a4231c810e56964e354cb06e90f09
-SHA1 (patch-media_webrtc_trunk_webrtc_voice__engine_voe__network__impl.cc) = 42af9d8fb83ff2c3ea1f7353a15555c07ceca2b8
-SHA1 (patch-media_webrtc_trunk_webrtc_voice__engine_voice__engine__defines.h) = 8606dfda5b8a3090789e5599b12d0668632fd945
-SHA1 (patch-media_webrtc_webrtc__config.gypi) = adf9afcf64e2504a8216cdff2ebe0720b9d70826
+SHA1 (patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.cc) = 07497983c7c131f3fc148801c6350ab9ccfb19e5
SHA1 (patch-memory_mozalloc_mozalloc__abort.cpp) = 9d9036ddd28c7b8ce37860e0120df2997a3a0c59
+SHA1 (patch-mfbt_Atomics.h) = 1a1df4189cf8da1182baa5c2e9909f9add6d2451
SHA1 (patch-modules_libjar_nsZipArchive.cpp) = 6aff0f8ed42575d8ca36a524e12e9a1f7351004a
-SHA1 (patch-netwerk__protocol__websocket__WebSocketChannel.cpp) = 3b9a2212abd66b26c8af96d346d7c961ca665c93
-SHA1 (patch-netwerk_sctp_src_Makefile.in) = e86199357b57c64dac95e5eff5c0d29509dce628
+SHA1 (patch-modules_libpref_src_init_all.js) = 16764075621da048b6c8a359c32b4fc8be6f7d67
SHA1 (patch-netwerk_sctp_src_netinet6_sctp6__usrreq.c) = 31d49db31b1e130f1b455f883e5b7c606d438771
SHA1 (patch-netwerk_sctp_src_netinet_sctp__os__userspace.h) = b3f94ac0f2bd652371fef22c642b14bf30162998
SHA1 (patch-netwerk_sctp_src_netinet_sctp__usrreq.c) = 421b6e071a9934567ccba337033a42208e6e4bd5
SHA1 (patch-netwerk_sctp_src_user__recv__thread.c) = cf26945441f74c581aeb5a8d7435780f4a48a607
SHA1 (patch-netwerk_sctp_src_user__socket.c) = c0b32ed2888b5845ce2b7646b85af8f0728bc7c3
SHA1 (patch-netwerk_sctp_src_user__socketvar.h) = 1b6e2864916ced693b1ab6c1bbdd80a4ffc4f7e4
-SHA1 (patch-pa) = 8c2dbc863366515e80ac3be368e927c157635b23
+SHA1 (patch-netwerk_wifi_Makefile.in) = 9eef62b579a7000448aa898a560d3b46676af4ee
+SHA1 (patch-netwerk_wifi_moz.build) = c3300b73cb1cb63ce05665064cbdffde3a020d11
+SHA1 (patch-netwerk_wifi_nsWifiScannerFreeBSD.cpp) = 9c343bef282192e1ac4b0742f160137d394c21b6
SHA1 (patch-pb) = 97c9b2e4cefd524dc6ba825f71c3da2a761aa1f4
SHA1 (patch-pc) = 8b2baa88f0983a2fef4f801cf6b1ae425f6c813a
-SHA1 (patch-pd) = fa16112b87de0eb3e1d8170860d59e44231daf72
-SHA1 (patch-pg) = 7037f30166162bbccbdedd34e95a71723d26d24a
SHA1 (patch-rc) = 2733724442a2cb49c5091146fd7e6001af686121
-SHA1 (patch-security_manager_ssl_src_nsNSSComponent.cpp) = 15e9466d60e60f93a27fe23aadfea6e1d59ad0bc
+SHA1 (patch-security_manager_ssl_src_JARSignatureVerification.cpp) = e9749dfeb0d3fcb4637935322ffd1e0cad4f8ec3
+SHA1 (patch-security_manager_ssl_src_nsNSSComponent.cpp) = c4c96b7d3cb0c5dbcfe3820fd52421eec2592452
+SHA1 (patch-toolkit_components_osfile_osfile__unix__allthreads.jsm) = 0bb66da3445da1cab81b9ddf46e74b03070243af
SHA1 (patch-toolkit_library_Makefile.in) = 0c91d647f0f3a4653d39f11c9d8fd63611235932
SHA1 (patch-toolkit_mozapps_update_updater_updater.cpp) = 6936e5408fc7f0110768f3fc8f27506c0e7879fa
SHA1 (patch-toolkit_toolkit.mozbuild) = 07e87d977cee59c0f5a5d14a8d41dc2a4230c01e
+SHA1 (patch-toolkit_xre_Makefile.in) = 6ad65fa2fd026888cc8345e184daf2a070ea4885
SHA1 (patch-toolkit_xre_nsEmbedFunctions.cpp) = 6ee6fba04a3ecc6596f8aed67f752a1075901fa8
SHA1 (patch-xb) = 30eea880b40cee45d1235d3292fead4b5a54bbaa
SHA1 (patch-xc) = 8575fdac2b47966ccfb5e1cc7ca8505163e358c9
@@ -151,9 +131,10 @@ SHA1 (patch-xl) = e7dbe631e8d1fcee48054c0cb8ff01169cfcb744
SHA1 (patch-xm) = 81e02e410c00175cbb98c646dda90c7adf199657
SHA1 (patch-xn) = c042e39d93706934ec03c78be3dc6e224ac62c0e
SHA1 (patch-xo) = aae6107dcfaf731bd3e9962d953fb8701fc5f163
-SHA1 (patch-xpcom__reflect__xptcall__src__md__unix__xptcstubs_sparc64_openbsd.cpp) = 5292416db0fa94d8a03ea8a3d09a9c3c8b5a11ae
SHA1 (patch-xpcom_base_nsStackWalk.cpp) = b763f5f3505efbedf51a9544a03d0501d86138b1
SHA1 (patch-xpcom_ds_TimeStamp.h) = a1fb060f91720eb330f102b28d9373bbdbe96e30
+SHA1 (patch-xpcom_ds_moz.build) = 15006bf46dd31d498615f60574e93e172087cd8a
+SHA1 (patch-xpcom_reflect_xptcall_src_md_unix_moz.build) = c906f0f2cfa3197443df710145296618ed225351
SHA1 (patch-xpcom_reflect_xptcall_src_md_unix_xptcinvoke__gcc__x86__unix.cpp) = 8cd42915cd32756b55894a773a1e6d7c012b4467
SHA1 (patch-xpcom_reflect_xptcall_src_md_unix_xptcstubs__gcc__x86__unix.cpp) = e9e336817c172187f3e15ddf539a8a2176e3e952
SHA1 (patch-xpcom_string_public_nsAlgorithm.h) = 6cdce480510f0cebbb1271de385b6ec7f5c3ddee
diff --git a/www/firefox/mozilla-common.mk b/www/firefox/mozilla-common.mk
index 791296a6cea..502c45e6d43 100644
--- a/www/firefox/mozilla-common.mk
+++ b/www/firefox/mozilla-common.mk
@@ -1,4 +1,4 @@
-# $NetBSD: mozilla-common.mk,v 1.15 2013/09/04 16:25:50 drochner Exp $
+# $NetBSD: mozilla-common.mk,v 1.16 2013/09/19 12:37:49 ryoon Exp $
#
# common Makefile fragment for mozilla packages based on gecko 2.0.
#
@@ -43,6 +43,7 @@ CONFIGURE_ARGS+= --enable-system-pixman
CONFIGURE_ARGS+= --with-system-libvpx
CONFIGURE_ARGS+= --enable-system-hunspell
CONFIGURE_ARGS+= --enable-system-ffi
+CONFIGURE_ARGS+= --with-system-icu
CONFIGURE_ARGS+= --with-system-nss
CONFIGURE_ARGS+= --with-system-nspr
CONFIGURE_ARGS+= --with-system-jpeg
@@ -69,6 +70,8 @@ CONFIGURE_ARGS+= --enable-url-classifier
#CONFIGURE_ARGS+= --enable-startup-notification
CONFIGURE_ARGS+= --enable-shared-js
CONFIGURE_ARGS+= --with-system-ply
+CONFIGURE_ARGS+= --disable-icf
+CONFIGURE_ARGS+= --disable-necko-wifi
SUBST_CLASSES+= fix-paths
SUBST_STAGE.fix-paths= pre-configure
@@ -164,6 +167,7 @@ BUILDLINK_API_DEPENDS.libevent+= libevent>=1.1
.include "../../devel/libffi/buildlink3.mk"
BUILDLINK_API_DEPENDS.nspr+= nspr>=4.9.6
.include "../../devel/nspr/buildlink3.mk"
+.include "../../textproc/icu/buildlink3.mk"
BUILDLINK_API_DEPENDS.nss+= nss>=3.15
.include "../../devel/nss/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
diff --git a/www/firefox/patches/patch-aa b/www/firefox/patches/patch-aa
index 5dc4dc84198..17e957ec11f 100644
--- a/www/firefox/patches/patch-aa
+++ b/www/firefox/patches/patch-aa
@@ -1,8 +1,8 @@
-$NetBSD: patch-aa,v 1.14 2013/08/07 12:17:54 ryoon Exp $
+$NetBSD: patch-aa,v 1.15 2013/09/19 12:37:49 ryoon Exp $
---- configure.in.orig 2013-07-30 00:57:59.000000000 +0000
+--- configure.in.orig 2013-09-10 03:43:23.000000000 +0000
+++ configure.in
-@@ -1411,6 +1411,17 @@ if test "$GNU_CC"; then
+@@ -1370,6 +1370,17 @@ if test "$GNU_CC"; then
CFLAGS=$_SAVE_CFLAGS
AC_SUBST(HAVE_TOOLCHAIN_SUPPORT_MSSE4_1)
@@ -20,7 +20,7 @@ $NetBSD: patch-aa,v 1.14 2013/08/07 12:17:54 ryoon Exp $
# Turn on GNU-specific warnings:
# -Wall - turn on a lot of warnings
# -Wpointer-arith - good to have
-@@ -2088,6 +2099,9 @@ ia64*-hpux*)
+@@ -2047,6 +2058,9 @@ ia64*-hpux*)
if test -z "$MC"; then
MC=mc.exe
fi
@@ -30,7 +30,7 @@ $NetBSD: patch-aa,v 1.14 2013/08/07 12:17:54 ryoon Exp $
;;
*-mingw*)
DSO_CFLAGS=
-@@ -2887,6 +2901,7 @@ EOF
+@@ -2843,6 +2857,7 @@ EOF
#pragma GCC visibility push(hidden)
#pragma GCC visibility push(default)
#include <string.h>
@@ -38,7 +38,7 @@ $NetBSD: patch-aa,v 1.14 2013/08/07 12:17:54 ryoon Exp $
#pragma GCC visibility pop
__attribute__ ((visibility ("default"))) void Func() {
-@@ -2895,7 +2910,7 @@ __attribute__ ((visibility ("default")))
+@@ -2851,7 +2866,7 @@ __attribute__ ((visibility ("default")))
}
EOF
ac_cv_have_visibility_builtin_bug=no
@@ -47,7 +47,7 @@ $NetBSD: patch-aa,v 1.14 2013/08/07 12:17:54 ryoon Exp $
ac_cv_have_visibility_builtin_bug=yes
else
if test `grep -c "@PLT" conftest.S` = 0; then
-@@ -3057,6 +3072,9 @@ dnl ====================================
+@@ -3017,6 +3032,9 @@ dnl ====================================
case $target in
*-hpux11.*)
;;
@@ -57,7 +57,7 @@ $NetBSD: patch-aa,v 1.14 2013/08/07 12:17:54 ryoon Exp $
*)
AC_CHECK_LIB(c_r, gethostbyname_r)
;;
-@@ -3358,6 +3376,9 @@ AC_CACHE_CHECK(
+@@ -3319,6 +3337,9 @@ AC_CACHE_CHECK(
#ifdef linux
#define _BSD_SOURCE 1
#endif
@@ -67,7 +67,7 @@ $NetBSD: patch-aa,v 1.14 2013/08/07 12:17:54 ryoon Exp $
#include <resolv.h>
],
[int foo = res_ninit(&_res);],
-@@ -4012,6 +4033,14 @@ if test -n "$YASM"; then
+@@ -3973,6 +3994,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.14 2013/08/07 12:17:54 ryoon Exp $
if test -z "$SKIP_LIBRARY_CHECKS"; then
dnl system JPEG support
dnl ========================================================
-@@ -4039,11 +4068,7 @@ if test "$MOZ_NATIVE_JPEG" = 1; then
+@@ -4000,11 +4029,7 @@ if test "$MOZ_NATIVE_JPEG" = 1; then
#include <jpeglib.h> ],
[ #if JPEG_LIB_VERSION < $MOZJPEG
#error "Insufficient JPEG library version ($MOZJPEG required)."
@@ -95,7 +95,30 @@ $NetBSD: patch-aa,v 1.14 2013/08/07 12:17:54 ryoon Exp $
MOZ_NATIVE_JPEG=1,
AC_MSG_ERROR([Insufficient JPEG library version for --with-system-jpeg]))
fi
-@@ -5270,7 +5295,7 @@ dnl --enable-webrtc to override. Can di
+@@ -4139,6 +4164,22 @@ if test -n "$MOZ_NATIVE_FFI"; then
+ fi
+
+ dnl ========================================================
++dnl system icu support
++dnl ========================================================
++MOZ_NATIVE_ICU=
++MOZ_ARG_WITH_BOOL(system-icu,
++[ --with-system-icu
++ Use system icu (located with pkgconfig)],
++ MOZ_NATIVE_ICU=1)
++
++if test -n "$MOZ_NATIVE_ICU"; then
++ PKG_CHECK_MODULES(MOZ_ICU, icu-i18n >= 50.1)
++ MOZ_JS_STATIC_LIBS="$MOZ_JS_STATIC_LIBS $MOZ_ICU_LIBS"
++fi
++
++AC_SUBST(MOZ_NATIVE_ICU)
++
++dnl ========================================================
+ dnl Java SDK support
+ dnl ========================================================
+
+@@ -5297,7 +5338,7 @@ dnl --enable-webrtc to override. Can di
dnl the master list above.
if test -n "$MOZ_WEBRTC"; then
case "$target" in
@@ -104,7 +127,7 @@ $NetBSD: patch-aa,v 1.14 2013/08/07 12:17:54 ryoon Exp $
dnl Leave enabled
;;
*)
-@@ -5323,6 +5348,9 @@ if test -n "$MOZ_WEBRTC"; then
+@@ -5353,6 +5394,9 @@ if test -n "$MOZ_WEBRTC"; then
MOZ_VP8_ENCODER=1
MOZ_VP8_ERROR_CONCEALMENT=1
@@ -114,7 +137,7 @@ $NetBSD: patch-aa,v 1.14 2013/08/07 12:17:54 ryoon Exp $
dnl enable once Signaling lands
MOZ_WEBRTC_SIGNALING=1
AC_DEFINE(MOZ_WEBRTC_SIGNALING)
-@@ -5349,15 +5377,18 @@ AC_SUBST(MOZ_SRTP)
+@@ -5379,15 +5423,18 @@ AC_SUBST(MOZ_SRTP)
dnl Use integers over floats for audio on B2G and Android, because audio
dnl backends for those platforms don't support floats.
@@ -136,7 +159,7 @@ $NetBSD: patch-aa,v 1.14 2013/08/07 12:17:54 ryoon Exp $
dnl ========================================================
dnl = Disable Speech API code
-@@ -5707,7 +5738,7 @@ MOZ_ALSA=)
+@@ -5737,7 +5784,7 @@ MOZ_ALSA=)
if test -n "$MOZ_ALSA"; then
AC_DEFINE(MOZ_CUBEB)
@@ -145,16 +168,7 @@ $NetBSD: patch-aa,v 1.14 2013/08/07 12:17:54 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
-@@ -6410,7 +6441,7 @@ MOZ_ARG_ENABLE_BOOL(gtest,
- MOZ_ENABLE_GTEST= )
-
- if test -n "$MOZ_ENABLE_GTEST"; then
-- if test "${OS_TARGET}" = "WINNT" -o "${OS_TARGET}" = "Darwin" -o "${OS_TARGET}" = "Linux" -o "${OS_TARGET}" = "Android"; then
-+ if test "${OS_TARGET}" = "WINNT" -o "${OS_TARGET}" = "Darwin" -o "${OS_TARGET}" = "Linux" -o "${OS_TARGET}" = "Android" -o "${OS_TARGET}" = "NetBSD"; then
- MOZ_ENABLE_GTEST=1
- GTEST_HAS_RTTI=0
- AC_DEFINE(MOZ_ENABLE_GTEST)
-@@ -8330,7 +8361,7 @@ if test "$MOZ_ENABLE_SKIA"; then
+@@ -8385,7 +8432,7 @@ if test "$MOZ_ENABLE_SKIA"; then
AC_DEFINE(GR_DLL)
fi
@@ -163,7 +177,7 @@ $NetBSD: patch-aa,v 1.14 2013/08/07 12:17:54 ryoon Exp $
MOZ_ENABLE_SKIA_GPU=1
AC_DEFINE(USE_SKIA_GPU)
AC_SUBST(MOZ_ENABLE_SKIA_GPU)
-@@ -8411,16 +8442,26 @@ MOZ_ARG_DISABLE_BOOL(necko-wifi,
+@@ -8466,16 +8513,26 @@ MOZ_ARG_DISABLE_BOOL(necko-wifi,
NECKO_WIFI=,
NECKO_WIFI=1)
@@ -200,7 +214,7 @@ $NetBSD: patch-aa,v 1.14 2013/08/07 12:17:54 ryoon Exp $
fi
if test "$NECKO_WIFI"; then
-@@ -9114,6 +9155,27 @@ if test -z "$HAVE_TOOLCHAIN_SUPPORT_MSSE
+@@ -9186,6 +9243,27 @@ if test -z "$HAVE_TOOLCHAIN_SUPPORT_SSSE
EXTRA_GYP_DEFINES="$EXTRA_GYP_DEFINES -D yuv_disable_asm=1"
fi
diff --git a/www/firefox/patches/patch-as b/www/firefox/patches/patch-as
index dbf4713e7dd..9c825a3126a 100644
--- a/www/firefox/patches/patch-as
+++ b/www/firefox/patches/patch-as
@@ -1,10 +1,10 @@
-$NetBSD: patch-as,v 1.3 2013/05/23 13:12:13 ryoon Exp $
+$NetBSD: patch-as,v 1.4 2013/09/19 12:37:49 ryoon Exp $
Treat DragonFly like FreeBSD.
---- js/src/configure.in.orig 2013-05-11 19:19:32.000000000 +0000
+--- js/src/configure.in.orig 2013-09-10 03:43:34.000000000 +0000
+++ js/src/configure.in
-@@ -2399,6 +2399,7 @@ EOF
+@@ -2424,6 +2424,7 @@ EOF
#pragma GCC visibility push(hidden)
#pragma GCC visibility push(default)
#include <string.h>
@@ -12,7 +12,7 @@ Treat DragonFly like FreeBSD.
#pragma GCC visibility pop
__attribute__ ((visibility ("default"))) void Func() {
-@@ -2407,7 +2408,7 @@ __attribute__ ((visibility ("default")))
+@@ -2432,7 +2433,7 @@ __attribute__ ((visibility ("default")))
}
EOF
ac_cv_have_visibility_builtin_bug=no
@@ -21,7 +21,7 @@ Treat DragonFly like FreeBSD.
ac_cv_have_visibility_builtin_bug=yes
else
if test `grep -c "@PLT" conftest.S` = 0; then
-@@ -2628,7 +2629,7 @@ then
+@@ -2657,7 +2658,7 @@ then
fi
case "$target" in
@@ -30,7 +30,12 @@ Treat DragonFly like FreeBSD.
AC_DEFINE(_REENTRANT)
AC_DEFINE(_THREAD_SAFE)
dnl -pthread links in -lpthread, so don't specify it explicitly.
-@@ -2711,6 +2712,9 @@ AC_CACHE_CHECK(
+@@ -2736,14 +2737,19 @@ fi
+ AC_CACHE_CHECK(
+ [for res_ninit()],
+ ac_cv_func_res_ninit,
+- [AC_TRY_LINK([
++ [AC_TRY_RUN([
#ifdef linux
#define _BSD_SOURCE 1
#endif
@@ -38,9 +43,17 @@ Treat DragonFly like FreeBSD.
+ #error use of global _res variable in threaded programs is not portable
+ #endif
#include <resolv.h>
- ],
- [int foo = res_ninit(&_res);],
-@@ -3486,7 +3490,7 @@ if test "$MOZ_MEMORY"; then
+- ],
+- [int foo = res_ninit(&_res);],
++ int main(int argc, char **argv){
++ int foo = res_ninit(&_res);
++ }],
+ [ac_cv_func_res_ninit=yes],
++ [ac_cv_func_res_ninit=no],
+ [ac_cv_func_res_ninit=no])
+ ])
+
+@@ -3517,7 +3523,7 @@ if test "$MOZ_MEMORY"; then
*-darwin*)
AC_DEFINE(MOZ_MEMORY_DARWIN)
;;
@@ -49,3 +62,80 @@ Treat DragonFly like FreeBSD.
AC_DEFINE(MOZ_MEMORY_BSD)
;;
*-android*|*-linuxandroid*)
+@@ -4417,6 +4423,16 @@ fi
+ dnl ========================================================
+ dnl ECMAScript Internationalization API Support (uses ICU)
+ dnl ========================================================
++ICU_LIB_NAMES=
++MOZ_NATIVE_ICU=
++MOZ_ARG_WITH_BOOL(system-icu,
++[ --with-system-icu
++ Use system icu (located with pkgconfig)],
++ MOZ_NATIVE_ICU=1)
++
++if test -n "$MOZ_NATIVE_ICU"; then
++ PKG_CHECK_MODULES(MOZ_ICU, icu-i18n >= 50.1)
++fi
+
+ if test -n "$JS_STANDALONE"; then
+ ENABLE_INTL_API=1
+@@ -4429,37 +4445,36 @@ MOZ_ARG_ENABLE_BOOL(intl-api,
+ dnl Settings for the implementation of the ECMAScript Internationalization API
+ if test -n "$ENABLE_INTL_API"; then
+ AC_DEFINE(ENABLE_INTL_API)
+- # We build ICU as a static library.
+- AC_DEFINE(U_STATIC_IMPLEMENTATION)
+
+- case "$OS_TARGET" in
+- WINNT)
+- ICU_LIB_NAMES="icuin icuuc icudt"
+- ;;
+- Darwin|Linux)
+- ICU_LIB_NAMES="icui18n icuuc icudata"
+- ;;
+- *)
+- AC_MSG_ERROR([ECMAScript Internationalization API is not yet supported on this platform])
+- esac
+-
+- ICU_LIBS='$(call EXPAND_LIBNAME_PATH,$(ICU_LIB_NAMES),$(DEPTH)/intl/icu/lib)'
+-else
+- ICU_LIB_NAMES=
+- ICU_LIBS=
++ if test -z "$MOZ_NATIVE_ICU"; then
++ case "$OS_TARGET" in
++ WINNT)
++ ICU_LIB_NAMES="icuin icuuc icudt"
++ ;;
++ Darwin|Linux)
++ ICU_LIB_NAMES="icui18n icuuc icudata"
++ ;;
++ *)
++ AC_MSG_ERROR([ECMAScript Internationalization API is not yet supported on this platform])
++ esac
++ MOZ_ICU_LIBS='$(call EXPAND_LIBNAME_PATH,$(ICU_LIB_NAMES),$(DEPTH)/intl/icu/lib)'
++ fi
+ fi
+
+ AC_SUBST(ENABLE_INTL_API)
+ AC_SUBST(ICU_LIB_NAMES)
+-AC_SUBST(ICU_LIBS)
++AC_SUBST(MOZ_ICU_LIBS)
++AC_SUBST(MOZ_NATIVE_ICU)
+
+-dnl Source files that use ICU should have control over which parts of the ICU
+-dnl namespace they want to use.
+-AC_DEFINE(U_USING_ICU_NAMESPACE,0)
++dnl Settings for ICU
++if test -n "$ENABLE_INTL_API" -a -z "$MOZ_NATIVE_ICU"; then
++ dnl We build ICU as a static library.
++ AC_DEFINE(U_STATIC_IMPLEMENTATION)
+
++ dnl Source files that use ICU should have control over which parts of the ICU
++ dnl namespace they want to use.
++ AC_DEFINE(U_USING_ICU_NAMESPACE,0)
+
+-dnl Settings for ICU
+-if test -n "$ENABLE_INTL_API" ; then
+ # Set ICU compile options
+ ICU_CPPFLAGS=""
+ # don't use icu namespace automatically in client code
diff --git a/www/firefox/patches/patch-bf b/www/firefox/patches/patch-bf
index 55c998c98e1..700b7b2a50e 100644
--- a/www/firefox/patches/patch-bf
+++ b/www/firefox/patches/patch-bf
@@ -1,17 +1,8 @@
-$NetBSD: patch-bf,v 1.1 2013/05/23 13:12:13 ryoon Exp $
+$NetBSD: patch-bf,v 1.2 2013/09/19 12:37:49 ryoon Exp $
---- js/src/jsnativestack.cpp.orig 2013-03-26 22:17:48.000000000 +0000
+--- js/src/jsnativestack.cpp.orig 2013-09-10 03:43:36.000000000 +0000
+++ js/src/jsnativestack.cpp
-@@ -19,7 +19,7 @@
- #elif defined(XP_MACOSX) || defined(DARWIN) || defined(XP_UNIX)
- # include <pthread.h>
-
--# if defined(__FreeBSD__) || defined(__OpenBSD__)
-+# if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__DragonFly__)
- # include <pthread_np.h>
- # endif
-
-@@ -112,7 +112,7 @@ js::GetNativeStackBaseImpl()
+@@ -114,7 +114,7 @@ js::GetNativeStackBaseImpl()
pthread_attr_init(&sattr);
# if defined(__OpenBSD__)
stack_t ss;
diff --git a/www/firefox/patches/patch-browser_app_profile_firefox.js b/www/firefox/patches/patch-browser_app_profile_firefox.js
new file mode 100644
index 00000000000..d97001544b3
--- /dev/null
+++ b/www/firefox/patches/patch-browser_app_profile_firefox.js
@@ -0,0 +1,12 @@
+$NetBSD: patch-browser_app_profile_firefox.js,v 1.1 2013/09/19 12:37:49 ryoon Exp $
+
+--- browser/app/profile/firefox.js.orig 2013-09-10 03:43:20.000000000 +0000
++++ browser/app/profile/firefox.js
+@@ -354,6 +354,7 @@ pref("browser.search.log", false);
+ pref("browser.search.order.1", "chrome://browser-region/locale/region.properties");
+ pref("browser.search.order.2", "chrome://browser-region/locale/region.properties");
+ pref("browser.search.order.3", "chrome://browser-region/locale/region.properties");
++pref("browser.search.order.4", "chrome://browser-region/locale/region.properties");
+
+ // search bar results always open in a new tab
+ pref("browser.search.openintab", false);
diff --git a/www/firefox/patches/patch-browser_locales_en-US_chrome_browser-region_region.properties b/www/firefox/patches/patch-browser_locales_en-US_chrome_browser-region_region.properties
new file mode 100644
index 00000000000..f27a7cca15e
--- /dev/null
+++ b/www/firefox/patches/patch-browser_locales_en-US_chrome_browser-region_region.properties
@@ -0,0 +1,12 @@
+$NetBSD: patch-browser_locales_en-US_chrome_browser-region_region.properties,v 1.1 2013/09/19 12:37:49 ryoon Exp $
+
+--- browser/locales/en-US/chrome/browser-region/region.properties.orig 2013-09-10 03:43:22.000000000 +0000
++++ browser/locales/en-US/chrome/browser-region/region.properties
+@@ -9,6 +9,7 @@ browser.search.defaultenginename=Google
+ browser.search.order.1=Google
+ browser.search.order.2=Yahoo
+ browser.search.order.3=Bing
++browser.search.order.4=DuckDuckGo
+
+ # This is the default set of web based feed handlers shown in the reader
+ # selection UI
diff --git a/www/firefox/patches/patch-browser_locales_en-US_searchplugins_duckduckgo.xml b/www/firefox/patches/patch-browser_locales_en-US_searchplugins_duckduckgo.xml
new file mode 100644
index 00000000000..6715d630595
--- /dev/null
+++ b/www/firefox/patches/patch-browser_locales_en-US_searchplugins_duckduckgo.xml
@@ -0,0 +1,16 @@
+$NetBSD: patch-browser_locales_en-US_searchplugins_duckduckgo.xml,v 1.1 2013/09/19 12:37:49 ryoon Exp $
+
+--- browser/locales/en-US/searchplugins/duckduckgo.xml.orig 2013-09-14 15:17:46.000000000 +0000
++++ browser/locales/en-US/searchplugins/duckduckgo.xml
+@@ -0,0 +1,11 @@
++<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
++<ShortName>DuckDuckGo</ShortName>
++<Description>We believe in better search and not tracking.</Description>
++<InputEncoding>UTF-8</InputEncoding>
++<Image height="16" width="16" type="image/x-icon">data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAANcNAADXDQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJyDsJmlk8pf6+v3s/v7+++zr/fcnIOyzJyDsgCcg7CYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnIOwBJyDscCcg7PZttJ7/7Pfs//////++xO7/S5GA/ycg7P8nIOz2JyDscCcg7AEAAAAAAAAAAAAAAAAnIOwBJyDstScg7P8nIOz/Y8p5/2fHZf9Yv0z/YcF2/1rBUv8nIOz/JyDs/ycg7P8nIOy1JyDsAQAAAAAAAAAAJyDscCcg7P8nIOz/JyDs/4jQoP/p9+n//////05X3v9LkYD/JyDs/ycg7P8nIOz/JyDs/ycg7HAAAAAAJyDsJicg7PYnIOz/JyDs/zUu7f/+/v////////////89N+7/JyDs/yUo7f8nIOz/JyDs/ycg7P8nIOz2JyDsJicg7IAnIOz/JyDs/ycg7P9hXPH////////////t/P//GIr2/wfD+/8Gyfz/DKv5/yM57/8nIOz/JyDs/ycg7H8nIOyzJyDs/ycg7P8nIOz/jov1////////////Otz9/w3G/P8cWfH/JSvt/ycg7P8nIOz/JyDs/ycg7P8nIOyzJyDs5icg7P8nIOz/JyDs/7u5+f///////////27l/v8E0v3/BNL9/wTQ/f8Oofn/IT7v/ycg7P8nIOz/JyDs5icg7OYnIOz/JyDs/ycg7P/p6P3/uWsC////////////5fr//6Po/f8Thfb/DKv5/w6f+f8nIOz/JyDs/ycg7OYnIOyzJyDs/ycg7P8nIOz/9/b+/////////////////7lrAv/V1Pv/JyDs/ycg7P8nIOz/JyDs/ycg7P8nIOyzJyDsgCcg7P8nIOz/JyDs/8/N+///////////////////////iIX1/ycg7P8nIOz/JyDs/ycg7P8nIOz/JyDsfycg7CYnIOz2JyDs/ycg7P9FP+7/q6n4/+7u/f/n5v3/fXn0/yoj7P8nIOz/JyDs/ycg7P8nIOz/JyDs9icg7CYAAAAAJyDscCcg7P8nIOz/wsD6/+no/f/Y1/z/eHTz/ycg7P8nIOz/JyDs/ycg7P8nIOz/JyDs/ycg7HAAAAAAAAAAACcg7AEnIOy1JyDs/ycg7P8nIOz/JyDs/ycg7P8nIOz/JyDs/ycg7P8nIOz/JyDs/ycg7LUnIOwBAAAAAAAAAAAAAAAAJyDsAScg7HAnIOz2JyDs/ycg7P8nIOz/JyDs/ycg7P8nIOz/JyDs9icg7HAnIOwBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJyDsJicg7IAnIOyzJyDs5icg7OYnIOyzJyDsgCcg7CYAAAAAAAAAAAAAAAAAAAAA+B8AAPAPAADAAwAAwAMAAIABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAABAACAAQAAwAMAAMADAADwDwAA+B8AAA==</Image>
++<Url type="text/html" method="GET" template="https://duckduckgo.com/">
++<Param name="q" value="{searchTerms}"/>
++<Param name="t" value="freebsd"/>
++</Url>
++<SearchForm>https://duckduckgo.com/</SearchForm>
++</SearchPlugin>
diff --git a/www/firefox/patches/patch-browser_locales_en-US_searchplugins_list.txt b/www/firefox/patches/patch-browser_locales_en-US_searchplugins_list.txt
new file mode 100644
index 00000000000..debcccc95cd
--- /dev/null
+++ b/www/firefox/patches/patch-browser_locales_en-US_searchplugins_list.txt
@@ -0,0 +1,11 @@
+$NetBSD: patch-browser_locales_en-US_searchplugins_list.txt,v 1.1 2013/09/19 12:37:49 ryoon Exp $
+
+--- browser/locales/en-US/searchplugins/list.txt.orig 2013-09-10 03:43:22.000000000 +0000
++++ browser/locales/en-US/searchplugins/list.txt
+@@ -1,5 +1,6 @@
+ amazondotcom
+ bing
++duckduckgo
+ eBay
+ google
+ twitter
diff --git a/www/firefox/patches/patch-build_pgo_profileserver.py b/www/firefox/patches/patch-build_pgo_profileserver.py
new file mode 100644
index 00000000000..b45da7921cc
--- /dev/null
+++ b/www/firefox/patches/patch-build_pgo_profileserver.py
@@ -0,0 +1,13 @@
+$NetBSD: patch-build_pgo_profileserver.py,v 1.1 2013/09/19 12:37:49 ryoon Exp $
+
+--- build/pgo/profileserver.py.orig 2013-09-10 03:43:22.000000000 +0000
++++ build/pgo/profileserver.py
+@@ -59,7 +59,7 @@ if __name__ == '__main__':
+ env["MOZ_JAR_LOG_FILE"] = os.path.abspath(jarlog)
+ print "jarlog: %s" % env["MOZ_JAR_LOG_FILE"]
+
+- cmdargs = ["http://localhost:%d/index.html" % PORT]
++ cmdargs = ["http://127.0.0.1:%d/index.html" % PORT]
+ runner = FirefoxRunner(profile=profile,
+ binary=build.get_binary_path(where="staged-package"),
+ cmdargs=cmdargs,
diff --git a/www/firefox/patches/patch-config_Makefile.in b/www/firefox/patches/patch-config_Makefile.in
new file mode 100644
index 00000000000..b9ed3992add
--- /dev/null
+++ b/www/firefox/patches/patch-config_Makefile.in
@@ -0,0 +1,12 @@
+$NetBSD: patch-config_Makefile.in,v 1.1 2013/09/19 12:37:49 ryoon Exp $
+
+--- config/Makefile.in.orig 2013-09-10 03:43:23.000000000 +0000
++++ config/Makefile.in
+@@ -102,6 +102,7 @@ export:: $(export-preqs)
+ -DMOZ_NATIVE_JPEG=$(MOZ_NATIVE_JPEG) \
+ -DMOZ_NATIVE_LIBEVENT=$(MOZ_NATIVE_LIBEVENT) \
+ -DMOZ_NATIVE_LIBVPX=$(MOZ_NATIVE_LIBVPX) \
++ -DMOZ_NATIVE_ICU=$(MOZ_NATIVE_ICU) \
+ $(srcdir)/system-headers | $(PERL) $(topsrcdir)/nsprpub/config/make-system-wrappers.pl system_wrappers
+ $(INSTALL) system_wrappers $(DIST)
+
diff --git a/www/firefox/patches/patch-config_system-headers b/www/firefox/patches/patch-config_system-headers
index a7136c49c30..f83f3ada4d2 100644
--- a/www/firefox/patches/patch-config_system-headers
+++ b/www/firefox/patches/patch-config_system-headers
@@ -1,10 +1,19 @@
-$NetBSD: patch-config_system-headers,v 1.1 2013/05/23 13:12:13 ryoon Exp $
+$NetBSD: patch-config_system-headers,v 1.2 2013/09/19 12:37:49 ryoon Exp $
---- config/system-headers.orig 2013-05-11 19:19:23.000000000 +0000
+--- config/system-headers.orig 2013-09-10 03:43:23.000000000 +0000
+++ config/system-headers
-@@ -1126,3 +1126,5 @@ sys/thr.h
- sys/user.h
- kvm.h
+@@ -1132,3 +1132,14 @@ kvm.h
spawn.h
-+err.h
-+xlocale.h
+ err.h
+ xlocale.h
++#if MOZ_NATIVE_ICU==1
++unicode/locid.h
++unicode/numsys.h
++unicode/ucal.h
++unicode/ucol.h
++unicode/udat.h
++unicode/udatpg.h
++unicode/uenum.h
++unicode/unum.h
++unicode/ustring.h
++#endif
diff --git a/www/firefox/patches/patch-content_media_gstreamer_GStreamerFormatHelper.cpp b/www/firefox/patches/patch-content_media_gstreamer_GStreamerFormatHelper.cpp
new file mode 100644
index 00000000000..0fdaee27d85
--- /dev/null
+++ b/www/firefox/patches/patch-content_media_gstreamer_GStreamerFormatHelper.cpp
@@ -0,0 +1,166 @@
+$NetBSD: patch-content_media_gstreamer_GStreamerFormatHelper.cpp,v 1.1 2013/09/19 12:37:49 ryoon Exp $
+
+--- content/media/gstreamer/GStreamerFormatHelper.cpp.orig 2013-09-10 03:43:24.000000000 +0000
++++ content/media/gstreamer/GStreamerFormatHelper.cpp
+@@ -6,7 +6,7 @@
+
+ #include "GStreamerFormatHelper.h"
+ #include "nsCharSeparatedTokenizer.h"
+-#include "nsXPCOMStrings.h"
++#include "nsString.h"
+ #include "GStreamerLoader.h"
+
+ #define ENTRY_FORMAT(entry) entry[0]
+@@ -36,7 +36,7 @@ void GStreamerFormatHelper::Shutdown() {
+ }
+ }
+
+-char const *const GStreamerFormatHelper::mContainers[6][2] = {
++static char const *const sContainers[6][2] = {
+ {"video/mp4", "video/quicktime"},
+ {"video/quicktime", "video/quicktime"},
+ {"audio/mp4", "audio/x-m4a"},
+@@ -45,7 +45,7 @@ char const *const GStreamerFormatHelper:
+ {"audio/mp3", "audio/mpeg, mpegversion=(int)1"},
+ };
+
+-char const *const GStreamerFormatHelper::mCodecs[9][2] = {
++static char const *const sCodecs[9][2] = {
+ {"avc1.42E01E", "video/x-h264"},
+ {"avc1.42001E", "video/x-h264"},
+ {"avc1.58A01E", "video/x-h264"},
+@@ -57,6 +57,15 @@ char const *const GStreamerFormatHelper:
+ {"mp3", "audio/mpeg, mpegversion=(int)1"},
+ };
+
++static char const * const sDefaultCodecCaps[][2] = {
++ {"video/mp4", "video/x-h264"},
++ {"video/quicktime", "video/x-h264"},
++ {"audio/mp4", "audio/mpeg, mpegversion=(int)4"},
++ {"audio/x-m4a", "audio/mpeg, mpegversion=(int)4"},
++ {"audio/mp3", "audio/mpeg, layer=(int)3"},
++ {"audio/mpeg", "audio/mpeg, layer=(int)3"}
++};
++
+ GStreamerFormatHelper::GStreamerFormatHelper()
+ : mFactories(nullptr),
+ mCookie(static_cast<uint32_t>(-1))
+@@ -66,15 +75,15 @@ GStreamerFormatHelper::GStreamerFormatHe
+ }
+
+ mSupportedContainerCaps = gst_caps_new_empty();
+- for (unsigned int i = 0; i < G_N_ELEMENTS(mContainers); i++) {
+- const char* capsString = mContainers[i][1];
++ for (unsigned int i = 0; i < G_N_ELEMENTS(sContainers); i++) {
++ const char* capsString = sContainers[i][1];
+ GstCaps* caps = gst_caps_from_string(capsString);
+ gst_caps_append(mSupportedContainerCaps, caps);
+ }
+
+ mSupportedCodecCaps = gst_caps_new_empty();
+- for (unsigned int i = 0; i < G_N_ELEMENTS(mCodecs); i++) {
+- const char* capsString = mCodecs[i][1];
++ for (unsigned int i = 0; i < G_N_ELEMENTS(sCodecs); i++) {
++ const char* capsString = sCodecs[i][1];
+ GstCaps* caps = gst_caps_from_string(capsString);
+ gst_caps_append(mSupportedCodecCaps, caps);
+ }
+@@ -92,6 +101,41 @@ GStreamerFormatHelper::~GStreamerFormatH
+ g_list_free(mFactories);
+ }
+
++static GstCaps *
++GetContainerCapsFromMIMEType(const char *aType) {
++ /* convert aMIMEType to gst container caps */
++ const char* capsString = nullptr;
++ for (uint32_t i = 0; i < G_N_ELEMENTS(sContainers); i++) {
++ if (!strcmp(ENTRY_FORMAT(sContainers[i]), aType)) {
++ capsString = ENTRY_CAPS(sContainers[i]);
++ break;
++ }
++ }
++
++ if (!capsString) {
++ /* we couldn't find any matching caps */
++ return nullptr;
++ }
++
++ return gst_caps_from_string(capsString);
++}
++
++static GstCaps *
++GetDefaultCapsFromMIMEType(const char *aType) {
++ GstCaps *caps = GetContainerCapsFromMIMEType(aType);
++
++ for (uint32_t i = 0; i < G_N_ELEMENTS(sDefaultCodecCaps); i++) {
++ if (!strcmp(sDefaultCodecCaps[i][0], aType)) {
++ GstCaps *tmp = gst_caps_from_string(sDefaultCodecCaps[i][1]);
++
++ gst_caps_append(caps, tmp);
++ return caps;
++ }
++ }
++
++ return nullptr;
++}
++
+ bool GStreamerFormatHelper::CanHandleMediaType(const nsACString& aMIMEType,
+ const nsAString* aCodecs) {
+ if (!sLoadOK) {
+@@ -101,7 +145,15 @@ bool GStreamerFormatHelper::CanHandleMed
+ const char *type;
+ NS_CStringGetData(aMIMEType, &type, NULL);
+
+- GstCaps* caps = ConvertFormatsToCaps(type, aCodecs);
++ GstCaps *caps;
++ if (aCodecs && !aCodecs->IsEmpty()) {
++ caps = ConvertFormatsToCaps(type, aCodecs);
++ } else {
++ // Get a minimal set of codec caps for this MIME type we should support so
++ // that we don't overreport MIME types we are able to play.
++ caps = GetDefaultCapsFromMIMEType(type);
++ }
++
+ if (!caps) {
+ return false;
+ }
+@@ -118,21 +170,11 @@ GstCaps* GStreamerFormatHelper::ConvertF
+
+ unsigned int i;
+
+- /* convert aMIMEType to gst container caps */
+- const char* capsString = nullptr;
+- for (i = 0; i < G_N_ELEMENTS(mContainers); i++) {
+- if (!strcmp(ENTRY_FORMAT(mContainers[i]), aMIMEType)) {
+- capsString = ENTRY_CAPS(mContainers[i]);
+- break;
+- }
+- }
+-
+- if (!capsString) {
+- /* we couldn't find any matching caps */
++ GstCaps *caps = GetContainerCapsFromMIMEType(aMIMEType);
++ if (!caps) {
+ return nullptr;
+ }
+
+- GstCaps* caps = gst_caps_from_string(capsString);
+ /* container only */
+ if (!aCodecs) {
+ return caps;
+@@ -141,11 +183,11 @@ GstCaps* GStreamerFormatHelper::ConvertF
+ nsCharSeparatedTokenizer tokenizer(*aCodecs, ',');
+ while (tokenizer.hasMoreTokens()) {
+ const nsSubstring& codec = tokenizer.nextToken();
+- capsString = nullptr;
++ const char *capsString = nullptr;
+
+- for (i = 0; i < G_N_ELEMENTS(mCodecs); i++) {
+- if (codec.EqualsASCII(ENTRY_FORMAT(mCodecs[i]))) {
+- capsString = ENTRY_CAPS(mCodecs[i]);
++ for (i = 0; i < G_N_ELEMENTS(sCodecs); i++) {
++ if (codec.EqualsASCII(ENTRY_FORMAT(sCodecs[i]))) {
++ capsString = ENTRY_CAPS(sCodecs[i]);
+ break;
+ }
+ }
diff --git a/www/firefox/patches/patch-dist_stl__wrappers_ios b/www/firefox/patches/patch-dist_stl__wrappers_ios
deleted file mode 100644
index f2519fadc29..00000000000
--- a/www/firefox/patches/patch-dist_stl__wrappers_ios
+++ /dev/null
@@ -1,8 +0,0 @@
-$NetBSD: patch-dist_stl__wrappers_ios,v 1.1 2013/08/07 12:17:54 ryoon Exp $
-
---- dist/stl_wrappers/ios.orig 2013-08-04 08:03:50.000000000 +0000
-+++ dist/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-dist_stl__wrappers_ostream b/www/firefox/patches/patch-dist_stl__wrappers_ostream
deleted file mode 100644
index 2ebd29d83c7..00000000000
--- a/www/firefox/patches/patch-dist_stl__wrappers_ostream
+++ /dev/null
@@ -1,8 +0,0 @@
-$NetBSD: patch-dist_stl__wrappers_ostream,v 1.1 2013/08/07 12:17:54 ryoon Exp $
-
---- dist/stl_wrappers/ostream.orig 2013-08-04 08:03:50.000000000 +0000
-+++ dist/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-extensions_spellcheck_hunspell_src_mozHunspell.cpp b/www/firefox/patches/patch-extensions_spellcheck_hunspell_src_mozHunspell.cpp
new file mode 100644
index 00000000000..a3bb06d8e72
--- /dev/null
+++ b/www/firefox/patches/patch-extensions_spellcheck_hunspell_src_mozHunspell.cpp
@@ -0,0 +1,17 @@
+$NetBSD: patch-extensions_spellcheck_hunspell_src_mozHunspell.cpp,v 1.1 2013/09/19 12:37:49 ryoon Exp $
+
+--- extensions/spellcheck/hunspell/src/mozHunspell.cpp.orig 2013-09-10 03:43:29.000000000 +0000
++++ extensions/spellcheck/hunspell/src/mozHunspell.cpp
+@@ -417,6 +417,12 @@ mozHunspell::LoadDictionaryList()
+ }
+ }
+
++ // load system hunspell dictionaries
++ nsIFile* hunDir;
++ NS_NewNativeLocalFile(NS_LITERAL_CSTRING("@PREFIX@/share/hunspell"),
++ true, &hunDir);
++ LoadDictionariesFromDir(hunDir);
++
+ // find dictionaries from extensions requiring restart
+ nsCOMPtr<nsISimpleEnumerator> dictDirs;
+ rv = dirSvc->Get(DICTIONARY_SEARCH_DIRECTORY_LIST,
diff --git a/www/firefox/patches/patch-gfx_skia_Makefile.in b/www/firefox/patches/patch-gfx_skia_Makefile.in
deleted file mode 100644
index 57738e8e543..00000000000
--- a/www/firefox/patches/patch-gfx_skia_Makefile.in
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-gfx_skia_Makefile.in,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- gfx/skia/Makefile.in.orig 2013-01-04 23:44:33.000000000 +0000
-+++ gfx/skia/Makefile.in
-@@ -355,10 +355,9 @@ CPPSRCS += \
- SkMMapStream.cpp \
- SkOSFile.cpp \
- $(NULL)
--ifeq (Linux,$(OS_TARGET))
-+ifneq (,$(or $(MOZ_X11),$(filter Linux,$(OS_TARGET))))
- CPPSRCS += \
- SkFontHost_linux.cpp \
-- SkFontHost_tables.cpp \
- SkTime_Unix.cpp \
- $(NULL)
- endif
diff --git a/www/firefox/patches/patch-gfx_skia_moz.build b/www/firefox/patches/patch-gfx_skia_moz.build
new file mode 100644
index 00000000000..c61d41b5e87
--- /dev/null
+++ b/www/firefox/patches/patch-gfx_skia_moz.build
@@ -0,0 +1,16 @@
+$NetBSD: patch-gfx_skia_moz.build,v 1.1 2013/09/19 12:37:49 ryoon Exp $
+
+--- gfx/skia/moz.build.orig 2013-09-10 03:43:30.000000000 +0000
++++ gfx/skia/moz.build
+@@ -188,10 +188,9 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'qt
+ 'SkMMapStream.cpp',
+ 'SkOSFile.cpp',
+ ]
+- if CONFIG['OS_TARGET'] == 'Linux':
++ if CONFIG['MOZ_X11'] == 1 or CONFIG['OS_TARGET'] == 'Linux':
+ CPP_SOURCES += [
+ 'SkFontHost_linux.cpp',
+- 'SkFontHost_tables.cpp',
+ 'SkThread_pthread.cpp',
+ 'SkTime_Unix.cpp',
+ ]
diff --git a/www/firefox/patches/patch-gfx_thebes_gfxPlatform.cpp b/www/firefox/patches/patch-gfx_thebes_gfxPlatform.cpp
deleted file mode 100644
index f9bc2d0eedc..00000000000
--- a/www/firefox/patches/patch-gfx_thebes_gfxPlatform.cpp
+++ /dev/null
@@ -1,36 +0,0 @@
-$NetBSD: patch-gfx_thebes_gfxPlatform.cpp,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- gfx/thebes/gfxPlatform.cpp.orig 2013-01-04 23:44:33.000000000 +0000
-+++ gfx/thebes/gfxPlatform.cpp
-@@ -507,11 +507,9 @@ void SourceBufferDestroy(void *srcSurfUD
- delete static_cast<SourceSurfaceUserData*>(srcSurfUD);
- }
-
--void SourceSnapshotDetached(cairo_surface_t *nullSurf)
-+void SourceSnapshotDetached(void *nullSurf)
- {
-- gfxImageSurface* origSurf =
-- static_cast<gfxImageSurface*>(cairo_surface_get_user_data(nullSurf, &kSourceSurface));
--
-+ gfxImageSurface *origSurf = static_cast<gfxImageSurface*>(nullSurf);
- origSurf->SetData(&kSourceSurface, NULL, NULL);
- }
-
-@@ -626,14 +624,9 @@ gfxPlatform::GetSourceSurfaceForSurface(
-
- }
-
-- cairo_surface_t *nullSurf =
-- cairo_null_surface_create(CAIRO_CONTENT_COLOR_ALPHA);
-- cairo_surface_set_user_data(nullSurf,
-- &kSourceSurface,
-- imgSurface,
-- NULL);
-- cairo_surface_attach_snapshot(imgSurface->CairoSurface(), nullSurf, SourceSnapshotDetached);
-- cairo_surface_destroy(nullSurf);
-+ cairo_surface_set_mime_data(imgSurface->CairoSurface(), "mozilla/magic",
-+ (const unsigned char *) "data", 4,
-+ SourceSnapshotDetached, imgSurface.get());
- }
-
- SourceSurfaceUserData *srcSurfUD = new SourceSurfaceUserData;
diff --git a/www/firefox/patches/patch-ipc_chromium_Makefile.in b/www/firefox/patches/patch-ipc_chromium_Makefile.in
index 4f3ce4461ee..e68ecf9ea86 100644
--- a/www/firefox/patches/patch-ipc_chromium_Makefile.in
+++ b/www/firefox/patches/patch-ipc_chromium_Makefile.in
@@ -1,10 +1,21 @@
-$NetBSD: patch-ipc_chromium_Makefile.in,v 1.1 2013/07/17 11:00:13 jperkin Exp $
+$NetBSD: patch-ipc_chromium_Makefile.in,v 1.2 2013/09/19 12:37:49 ryoon Exp $
---- ipc/chromium/Makefile.in.orig 2013-05-11 19:19:32.000000000 +0000
+--- ipc/chromium/Makefile.in.orig 2013-09-10 03:43:34.000000000 +0000
+++ ipc/chromium/Makefile.in
-@@ -267,6 +267,33 @@ endif
+@@ -23,9 +23,7 @@ vpath %.c \
+ $(srcdir)/src/third_party/libevent \
+ $(NULL)
+ else # } else {
+-# message_pump_libevent.cc includes third_party/libevent/event.h,
+-# which we put in $(DIST), see export rule below
+-LOCAL_INCLUDES += -I$(DIST)
++LOCAL_INCLUDES += $(filter %/compat, $(MOZ_LIBEVENT_CFLAGS))
+ endif # }
- endif # } OS_BSD
+ vpath %.cc \
+@@ -68,6 +66,33 @@ CMMSRCS += \
+
+ endif # } OS_MACOSX
+ifdef OS_SOLARIS # {
+
diff --git a/www/firefox/patches/patch-ipc_chromium_src_base_platform__thread.h b/www/firefox/patches/patch-ipc_chromium_src_base_platform__thread.h
index 341e5891908..2320a5b4052 100644
--- a/www/firefox/patches/patch-ipc_chromium_src_base_platform__thread.h
+++ b/www/firefox/patches/patch-ipc_chromium_src_base_platform__thread.h
@@ -1,9 +1,9 @@
-$NetBSD: patch-ipc_chromium_src_base_platform__thread.h,v 1.1 2013/07/17 11:00:13 jperkin Exp $
+$NetBSD: patch-ipc_chromium_src_base_platform__thread.h,v 1.2 2013/09/19 12:37:49 ryoon Exp $
---- ipc/chromium/src/base/platform_thread.h.orig 2013-05-11 19:19:32.000000000 +0000
+--- ipc/chromium/src/base/platform_thread.h.orig 2013-09-10 03:43:34.000000000 +0000
+++ ipc/chromium/src/base/platform_thread.h
@@ -25,6 +25,9 @@ typedef pthread_t PlatformThreadHandle;
- #if defined(OS_LINUX) || defined(OS_OPENBSD)
+ #if defined(OS_LINUX) || defined(OS_OPENBSD) || defined(__GLIBC__)
#include <unistd.h>
typedef pid_t PlatformThreadId;
+#elif defined(OS_SOLARIS)
diff --git a/www/firefox/patches/patch-ipc_chromium_src_base_platform__thread__posix.cc b/www/firefox/patches/patch-ipc_chromium_src_base_platform__thread__posix.cc
index 077f126ddb0..b9f49fea019 100644
--- a/www/firefox/patches/patch-ipc_chromium_src_base_platform__thread__posix.cc
+++ b/www/firefox/patches/patch-ipc_chromium_src_base_platform__thread__posix.cc
@@ -1,6 +1,6 @@
-$NetBSD: patch-ipc_chromium_src_base_platform__thread__posix.cc,v 1.2 2013/07/17 11:00:13 jperkin Exp $
+$NetBSD: patch-ipc_chromium_src_base_platform__thread__posix.cc,v 1.3 2013/09/19 12:37:49 ryoon Exp $
---- ipc/chromium/src/base/platform_thread_posix.cc.orig 2013-06-18 11:01:23.000000000 +0000
+--- ipc/chromium/src/base/platform_thread_posix.cc.orig 2013-09-10 03:43:34.000000000 +0000
+++ ipc/chromium/src/base/platform_thread_posix.cc
@@ -10,7 +10,9 @@
#if defined(OS_MACOSX)
@@ -12,12 +12,13 @@ $NetBSD: patch-ipc_chromium_src_base_platform__thread__posix.cc,v 1.2 2013/07/17
#elif defined(OS_LINUX)
#include <sys/syscall.h>
#include <sys/prctl.h>
-@@ -106,7 +108,7 @@ void PlatformThread::SetName(const char*
- pthread_set_name_np(pthread_self(), name);
- #elif defined(OS_NETBSD)
+@@ -110,7 +112,8 @@ void PlatformThread::SetName(const char*
pthread_setname_np(pthread_self(), "%s", (void *)name);
+ #elif defined(OS_BSD) && !defined(__GLIBC__)
+ pthread_set_name_np(pthread_self(), name);
-#else
+#elif !defined(OS_SOLARIS)
- prctl(PR_SET_NAME, reinterpret_cast<uintptr_t>(name), 0, 0, 0);
++ prctl(PR_SET_NAME, reinterpret_cast<uintptr_t>(name), 0, 0, 0);
#endif
}
+ #endif // !OS_MACOSX
diff --git a/www/firefox/patches/patch-ipc_chromium_src_base_process__util.h b/www/firefox/patches/patch-ipc_chromium_src_base_process__util.h
index 3fab645a60d..f048690bf4c 100644
--- a/www/firefox/patches/patch-ipc_chromium_src_base_process__util.h
+++ b/www/firefox/patches/patch-ipc_chromium_src_base_process__util.h
@@ -1,13 +1,13 @@
-$NetBSD: patch-ipc_chromium_src_base_process__util.h,v 1.1 2013/07/17 11:00:13 jperkin Exp $
+$NetBSD: patch-ipc_chromium_src_base_process__util.h,v 1.2 2013/09/19 12:37:49 ryoon Exp $
---- ipc/chromium/src/base/process_util.h.orig 2013-05-11 19:19:32.000000000 +0000
+--- ipc/chromium/src/base/process_util.h.orig 2013-09-10 03:43:34.000000000 +0000
+++ ipc/chromium/src/base/process_util.h
@@ -13,7 +13,7 @@
#if defined(OS_WIN)
#include <windows.h>
#include <tlhelp32.h>
--#elif defined(OS_LINUX)
-+#elif defined(OS_LINUX) || defined(OS_SOLARIS)
+-#elif defined(OS_LINUX) || defined(__GLIBC__)
++#elif defined(OS_LINUX) || defined(__GLIBC__) || defined(OS_SOLARIS)
#include <dirent.h>
#include <limits.h>
#include <sys/types.h>
@@ -21,12 +21,12 @@ $NetBSD: patch-ipc_chromium_src_base_process__util.h,v 1.1 2013/07/17 11:00:13 j
// TODO(port): we should not rely on a Win32 structure.
struct ProcessEntry {
int pid;
-@@ -317,7 +320,7 @@ class NamedProcessIterator {
+@@ -316,7 +319,7 @@ class NamedProcessIterator {
#if defined(OS_WIN)
HANDLE snapshot_;
bool started_iteration_;
--#elif defined(OS_LINUX)
-+#elif defined(OS_LINUX) || defined(OS_SOLARIS)
+-#elif defined(OS_LINUX) || defined(__GLIBC__)
++#elif defined(OS_LINUX) || defined(__GLIBC__) || defined(OS_SOLARIS)
DIR *procfs_dir_;
#elif defined(OS_BSD)
std::vector<ProcessEntry> content;
diff --git a/www/firefox/patches/patch-js__public__HeapAPI.h b/www/firefox/patches/patch-js__public__HeapAPI.h
deleted file mode 100644
index 5bdfd080f57..00000000000
--- a/www/firefox/patches/patch-js__public__HeapAPI.h
+++ /dev/null
@@ -1,37 +0,0 @@
-$NetBSD: patch-js__public__HeapAPI.h,v 1.3 2013/08/07 12:17:54 ryoon Exp $
-
-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.
-
-
-+++ js/public/HeapAPI.h
---- js/public/HeapAPI.h.orig 2013-07-30 00:58:18.000000000 +0000
-+++ js/public/HeapAPI.h
-@@ -13,24 +13,7 @@
- namespace js {
- namespace gc {
-
--/*
-- * Page size must be static to support our arena pointer optimizations, so we
-- * are forced to support each platform with non-4096 pages as a special case.
-- * Note: The freelist supports a maximum arena shift of 15.
-- * Note: Do not use JS_CPU_SPARC here, this header is used outside JS.
-- */
--#if (defined(SOLARIS) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)) && \
-- (defined(__sparc) || defined(__sparcv9) || defined(__ia64))
--const size_t PageShift = 13;
--const size_t ArenaShift = PageShift;
--#elif defined(__powerpc64__)
--const size_t PageShift = 16;
- const size_t ArenaShift = 12;
--#else
--const size_t PageShift = 12;
--const size_t ArenaShift = PageShift;
--#endif
--const size_t PageSize = size_t(1) << PageShift;
- const size_t ArenaSize = size_t(1) << ArenaShift;
- const size_t ArenaMask = ArenaSize - 1;
-
diff --git a/www/firefox/patches/patch-js__public__Value.h b/www/firefox/patches/patch-js__public__Value.h
deleted file mode 100644
index 968744fe625..00000000000
--- a/www/firefox/patches/patch-js__public__Value.h
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-js__public__Value.h,v 1.1 2013/08/22 14:23:35 martin Exp $
-
-Fix jsvalue_layout for big endian 64 bit case.
-Fixed the same way upstream already.
-
-
---- js/public/Value.h.orig 2013-08-14 15:49:29.000000000 +0200
-+++ js/public/Value.h 2013-08-22 14:55:04.000000000 +0200
-@@ -321,7 +321,6 @@ typedef union jsval_layout
- int32_t i32;
- uint32_t u32;
- JSWhyMagic why;
-- uintptr_t word;
- } payload;
- } s;
- double asDouble;
diff --git a/www/firefox/patches/patch-js__src__gc__Marking.cpp b/www/firefox/patches/patch-js__src__gc__Marking.cpp
deleted file mode 100644
index 3041f88e4bd..00000000000
--- a/www/firefox/patches/patch-js__src__gc__Marking.cpp
+++ /dev/null
@@ -1,21 +0,0 @@
-$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>
-# Date 1370038993 -7200
-# Node ID d16914942a9c502dde37dce2a1deb09050218ba8
-# Parent d296fcc8f3dd6254c862cdfd47a5580ee05a94f4
-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.orig 2013-06-17 22:13:09.000000000 +0000
-+++ js/src/gc/Marking.cpp
-@@ -1143,7 +1143,7 @@ struct SlotArrayLayout
- {
- union {
- HeapSlot *end;
-- HeapSlot::Kind kind;
-+ uintptr_t kind;
- };
- union {
- HeapSlot *start;
diff --git a/www/firefox/patches/patch-js__src__gc__Memory.cpp b/www/firefox/patches/patch-js__src__gc__Memory.cpp
deleted file mode 100644
index cd4734fe3ff..00000000000
--- a/www/firefox/patches/patch-js__src__gc__Memory.cpp
+++ /dev/null
@@ -1,319 +0,0 @@
-$NetBSD: patch-js__src__gc__Memory.cpp,v 1.1 2013/06/21 23:11:42 ryoon Exp $
-
-From bugzilla, bug 840242, attachment v1
-Use the runtime page size to control arena decommit.
-
-As a side effect, this removes the hard coded page-size == 4k requirement.
-
-
-diff js/src/gc/Memory.cpp js/src/gc/Memory.cpp
---- js/src/gc/Memory.cpp.orig 2013-05-11 21:19:33.000000000 +0200
-+++ js/src/gc/Memory.cpp 2013-06-10 13:45:26.000000000 +0200
-@@ -8,6 +8,7 @@
- #include "mozilla/Assertions.h"
-
- #include "jsapi.h"
-+#include "jscntxt.h"
-
- #include "js/HeapAPI.h"
- #include "js/Utility.h"
-@@ -17,40 +18,35 @@
- using namespace js::gc;
-
- /* Unused memory decommiting requires the arena size match the page size. */
--static bool
--DecommitEnabled()
-+bool
-+gc::DecommitEnabled(JSRuntime *rt)
- {
-- return PageSize == ArenaSize;
-+ return rt->gcSystemPageSize == ArenaSize;
- }
-
- #if defined(XP_WIN)
- #include "jswin.h"
- #include <psapi.h>
-
--static size_t AllocationGranularity = 0;
--
- void
- gc::InitMemorySubsystem()
- {
- SYSTEM_INFO sysinfo;
- GetSystemInfo(&sysinfo);
-- if (sysinfo.dwPageSize != PageSize) {
-- fprintf(stderr,"SpiderMonkey compiled with incorrect page size; please update js/public/HeapAPI.h.\n");
-- MOZ_CRASH();
-- }
-- AllocationGranularity = sysinfo.dwAllocationGranularity;
-+ rt->gcSystemPageSize = sysinfo.dwPageSize;
-+ rt->gcSystemAllocGranularity = sysinfo.dwAllocationGranularity;
- }
-
- void *
--gc::MapAlignedPages(size_t size, size_t alignment)
-+gc::MapAlignedPages(JSRuntime *rt, size_t size, size_t alignment)
- {
- JS_ASSERT(size >= alignment);
- JS_ASSERT(size % alignment == 0);
-- JS_ASSERT(size % PageSize == 0);
-- JS_ASSERT(alignment % AllocationGranularity == 0);
-+ JS_ASSERT(size % rt->gcSystemPageSize == 0);
-+ JS_ASSERT(alignment % rt->gcSystemAllocGranularity == 0);
-
- /* Special case: If we want allocation alignment, no further work is needed. */
-- if (alignment == AllocationGranularity) {
-+ if (alignment == rt->gcSystemAllocGranularity) {
- return VirtualAlloc(NULL, size, MEM_COMMIT | MEM_RESERVE, PAGE_READWRITE);
- }
-
-@@ -74,7 +70,7 @@
- if (!p)
- return NULL;
- void *chunkStart = (void *)(uintptr_t(p) + (alignment - (uintptr_t(p) % alignment)));
-- UnmapPages(p, size * 2);
-+ UnmapPages(rt, p, size * 2);
- p = VirtualAlloc(chunkStart, size, MEM_COMMIT | MEM_RESERVE, PAGE_READWRITE);
-
- /* Failure here indicates a race with another thread, so try again. */
-@@ -85,26 +81,26 @@
- }
-
- void
--gc::UnmapPages(void *p, size_t size)
-+gc::UnmapPages(JSRuntime *rt, void *p, size_t size)
- {
- JS_ALWAYS_TRUE(VirtualFree(p, 0, MEM_RELEASE));
- }
-
- bool
--gc::MarkPagesUnused(void *p, size_t size)
-+gc::MarkPagesUnused(JSRuntime *rt, void *p, size_t size)
- {
-- if (!DecommitEnabled())
-- return false;
-+ if (!DecommitEnabled(rt))
-+ return true;
-
-- JS_ASSERT(uintptr_t(p) % PageSize == 0);
-+ JS_ASSERT(uintptr_t(p) % rt->gcSystemPageSize == 0);
- LPVOID p2 = VirtualAlloc(p, size, MEM_RESET, PAGE_READWRITE);
- return p2 == p;
- }
-
- bool
--gc::MarkPagesInUse(void *p, size_t size)
-+gc::MarkPagesInUse(JSRuntime *rt, void *p, size_t size)
- {
-- JS_ASSERT(uintptr_t(p) % PageSize == 0);
-+ JS_ASSERT(uintptr_t(p) % rt->gcSystemPageSize == 0);
- return true;
- }
-
-@@ -126,12 +122,13 @@
- #define OS2_MAX_RECURSIONS 16
-
- void
--gc::InitMemorySubsystem()
-+gc::InitMemorySubsystem(JSRuntime *rt)
- {
-+ rt->gcSystemPageSize = rt->gcSystemAllocGranularity = ArenaSize;
- }
-
- void
--gc::UnmapPages(void *addr, size_t size)
-+gc::UnmapPages(JSRuntime *rt, void *addr, size_t size)
- {
- if (!DosFreeMem(addr))
- return;
-@@ -152,7 +149,7 @@
- }
-
- static void *
--gc::MapAlignedPagesRecursively(size_t size, size_t alignment, int& recursions)
-+gc::MapAlignedPagesRecursively(JSRuntime *rt, size_t size, size_t alignment, int& recursions)
- {
- if (++recursions >= OS2_MAX_RECURSIONS)
- return NULL;
-@@ -178,7 +175,7 @@
- unsigned long rc = DosQueryMem(&(static_cast<char*>(tmp))[size],
- &cb, &flags);
- if (!rc && (flags & PAG_FREE) && cb >= filler) {
-- UnmapPages(tmp, 0);
-+ UnmapPages(rt, tmp, 0);
- if (DosAllocMem(&tmp, filler,
- OBJ_ANY | PAG_COMMIT | PAG_READ | PAG_WRITE)) {
- JS_ALWAYS_TRUE(DosAllocMem(&tmp, filler,
-@@ -186,19 +183,19 @@
- }
- }
-
-- void *p = MapAlignedPagesRecursively(size, alignment, recursions);
-- UnmapPages(tmp, 0);
-+ void *p = MapAlignedPagesRecursively(rt, size, alignment, recursions);
-+ UnmapPages(rt, tmp, 0);
-
- return p;
- }
-
- void *
--gc::MapAlignedPages(size_t size, size_t alignment)
-+gc::MapAlignedPages(JSRuntime *rt, size_t size, size_t alignment)
- {
- JS_ASSERT(size >= alignment);
- JS_ASSERT(size % alignment == 0);
-- JS_ASSERT(size % PageSize == 0);
-- JS_ASSERT(alignment % PageSize == 0);
-+ JS_ASSERT(size % rt->gcSystemPageSize == 0);
-+ JS_ASSERT(alignment % rt->gcSystemAllocGranularity == 0);
-
- int recursions = -1;
-
-@@ -207,7 +204,7 @@
- * of the right size by recursively allocating blocks of unaligned
- * free memory until only an aligned allocation is possible.
- */
-- void *p = MapAlignedPagesRecursively(size, alignment, recursions);
-+ void *p = MapAlignedPagesRecursively(rt, size, alignment, recursions);
- if (p)
- return p;
-
-@@ -229,16 +226,16 @@
- }
-
- bool
--gc::MarkPagesUnused(void *p, size_t size)
-+gc::MarkPagesUnused(JSRuntime *rt, void *p, size_t size)
- {
-- JS_ASSERT(uintptr_t(p) % PageSize == 0);
-+ JS_ASSERT(uintptr_t(p) % rt->gcSystemPageSize == 0);
- return true;
- }
-
- bool
--gc::MarkPagesInUse(void *p, size_t size)
-+gc::MarkPagesInUse(JSRuntime *rt, void *p, size_t size)
- {
-- JS_ASSERT(uintptr_t(p) % PageSize == 0);
-+ JS_ASSERT(uintptr_t(p) % rt->gcSystemPageSize == 0);
- return true;
- }
-
-@@ -258,17 +255,18 @@
- #endif
-
- void
--gc::InitMemorySubsystem()
-+gc::InitMemorySubsystem(JSRuntime *rt)
- {
-+ rt->gcSystemPageSize = rt->gcSystemAllocGranularity = size_t(sysconf(_SC_PAGESIZE));
- }
-
- void *
--gc::MapAlignedPages(size_t size, size_t alignment)
-+gc::MapAlignedPages(JSRuntime *rt, size_t size, size_t alignment)
- {
- JS_ASSERT(size >= alignment);
- JS_ASSERT(size % alignment == 0);
-- JS_ASSERT(size % PageSize == 0);
-- JS_ASSERT(alignment % PageSize == 0);
-+ JS_ASSERT(size % rt->gcSystemPageSize == 0);
-+ JS_ASSERT(alignment % rt->gcSystemAllocGranularity == 0);
-
- int prot = PROT_READ | PROT_WRITE;
- int flags = MAP_PRIVATE | MAP_ANON | MAP_ALIGN | MAP_NOSYNC;
-@@ -280,22 +278,22 @@
- }
-
- void
--gc::UnmapPages(void *p, size_t size)
-+gc::UnmapPages(JSRuntime *rt, void *p, size_t size)
- {
- JS_ALWAYS_TRUE(0 == munmap((caddr_t)p, size));
- }
-
- bool
--gc::MarkPagesUnused(void *p, size_t size)
-+gc::MarkPagesUnused(JSRuntime *rt, void *p, size_t size)
- {
-- JS_ASSERT(uintptr_t(p) % PageSize == 0);
-+ JS_ASSERT(uintptr_t(p) % rt->gcSystemPageSize == 0);
- return true;
- }
-
- bool
--gc::MarkPagesInUse(void *p, size_t size)
-+gc::MarkPagesInUse(JSRuntime *rt, void *p, size_t size)
- {
-- JS_ASSERT(uintptr_t(p) % PageSize == 0);
-+ JS_ASSERT(uintptr_t(p) % rt->gcSystemPageSize == 0);
- return true;
- }
-
-@@ -313,27 +311,24 @@
- #include <unistd.h>
-
- void
--gc::InitMemorySubsystem()
-+gc::InitMemorySubsystem(JSRuntime *rt)
- {
-- if (size_t(sysconf(_SC_PAGESIZE)) != PageSize) {
-- fprintf(stderr,"SpiderMonkey compiled with incorrect page size; please update js/public/HeapAPI.h.\n");
-- MOZ_CRASH();
-- }
-+ rt->gcSystemPageSize = rt->gcSystemAllocGranularity = size_t(sysconf(_SC_PAGESIZE));
- }
-
- void *
--gc::MapAlignedPages(size_t size, size_t alignment)
-+gc::MapAlignedPages(JSRuntime *rt, size_t size, size_t alignment)
- {
- JS_ASSERT(size >= alignment);
- JS_ASSERT(size % alignment == 0);
-- JS_ASSERT(size % PageSize == 0);
-- JS_ASSERT(alignment % PageSize == 0);
-+ JS_ASSERT(size % rt->gcSystemPageSize == 0);
-+ JS_ASSERT(alignment % rt->gcSystemAllocGranularity == 0);
-
- int prot = PROT_READ | PROT_WRITE;
- int flags = MAP_PRIVATE | MAP_ANON;
-
- /* Special case: If we want page alignment, no further work is needed. */
-- if (alignment == PageSize) {
-+ if (alignment == rt->gcSystemAllocGranularity) {
- return mmap(NULL, size, prot, flags, -1, 0);
- }
-
-@@ -359,26 +354,26 @@
- }
-
- void
--gc::UnmapPages(void *p, size_t size)
-+gc::UnmapPages(JSRuntime *rt, void *p, size_t size)
- {
- JS_ALWAYS_TRUE(0 == munmap(p, size));
- }
-
- bool
--gc::MarkPagesUnused(void *p, size_t size)
-+gc::MarkPagesUnused(JSRuntime *rt, void *p, size_t size)
- {
-- if (!DecommitEnabled())
-+ if (!DecommitEnabled(rt))
- return false;
-
-- JS_ASSERT(uintptr_t(p) % PageSize == 0);
-+ JS_ASSERT(uintptr_t(p) % rt->gcSystemPageSize == 0);
- int result = madvise(p, size, MADV_DONTNEED);
- return result != -1;
- }
-
- bool
--gc::MarkPagesInUse(void *p, size_t size)
-+gc::MarkPagesInUse(JSRuntime *rt, void *p, size_t size)
- {
-- JS_ASSERT(uintptr_t(p) % PageSize == 0);
-+ JS_ASSERT(uintptr_t(p) % rt->gcSystemPageSize == 0);
- return true;
- }
-
diff --git a/www/firefox/patches/patch-js__src__gc__Memory.h b/www/firefox/patches/patch-js__src__gc__Memory.h
deleted file mode 100644
index 3dc16c68337..00000000000
--- a/www/firefox/patches/patch-js__src__gc__Memory.h
+++ /dev/null
@@ -1,52 +0,0 @@
-$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.
-
-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.orig 2013-06-17 22:13:09.000000000 +0000
-+++ js/src/gc/Memory.h
-@@ -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.
--void InitMemorySubsystem();
-+void
-+InitMemorySubsystem(JSRuntime *rt);
-+
-+// Decommiting unused memory requires the arena size match the page size.
-+bool
-+DecommitEnabled(JSRuntime *rt);
-
- // Allocate or deallocate pages from the system with the given alignment.
--void *MapAlignedPages(size_t size, size_t alignment);
--void UnmapPages(void *p, size_t size);
-+void *
-+MapAlignedPages(JSRuntime *rt, size_t size, size_t alignment);
-+
-+void
-+UnmapPages(JSRuntime *rt, void *p, size_t size);
-
- // Tell the OS that the given pages are not in use, so they should not
- // be written to a paging file. This may be a no-op on some platforms.
--bool MarkPagesUnused(void *p, size_t size);
-+bool
-+MarkPagesUnused(JSRuntime *rt, void *p, size_t size);
-
- // Undo |MarkPagesUnused|: tell the OS that the given pages are of interest
- // and should be paged in and out normally. This may be a no-op on some
- // platforms.
--bool MarkPagesInUse(void *p, size_t size);
-+bool
-+MarkPagesInUse(JSRuntime *rt, void *p, size_t size);
-
- // Returns #(hard faults) + #(soft faults)
--size_t GetPageFaultCount();
-+size_t
-+GetPageFaultCount();
-
- } // namespace gc
- } // namespace js
diff --git a/www/firefox/patches/patch-js__src__jsapi.cpp b/www/firefox/patches/patch-js__src__jsapi.cpp
deleted file mode 100644
index a6aa5bbc122..00000000000
--- a/www/firefox/patches/patch-js__src__jsapi.cpp
+++ /dev/null
@@ -1,20 +0,0 @@
-$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.
-
-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.orig 2013-06-17 22:13:11.000000000 +0000
-+++ js/src/jsapi.cpp
-@@ -1131,8 +1131,6 @@ JS_NewRuntime(uint32_t maxbytes, JSUseHe
- #undef MSG_DEF
- #endif /* DEBUG */
-
-- InitMemorySubsystem();
--
- if (!js::TlsPerThreadData.init())
- return NULL;
-
diff --git a/www/firefox/patches/patch-js__src__jscntxt.h b/www/firefox/patches/patch-js__src__jscntxt.h
deleted file mode 100644
index 03e4fd1307e..00000000000
--- a/www/firefox/patches/patch-js__src__jscntxt.h
+++ /dev/null
@@ -1,27 +0,0 @@
-$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.
-
-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.orig 2013-06-17 22:13:11.000000000 +0000
-+++ js/src/jscntxt.h
-@@ -1101,6 +1101,15 @@ struct JSRuntime : js::RuntimeFriendFiel
- /* Stack of thread-stack-allocated GC roots. */
- js::AutoGCRooter *autoGCRooters;
-
-+ /*
-+ * The GC can only safely decommit memory when the page size of the
-+ * running process matches the compiled arena size.
-+ */
-+ size_t gcSystemPageSize;
-+
-+ /* The OS allocation granularity may not match the page size. */
-+ size_t gcSystemAllocGranularity;
-+
- /* Strong references on scripts held for PCCount profiling API. */
- js::ScriptAndCountsVector *scriptAndCountsVector;
-
diff --git a/www/firefox/patches/patch-js__src__jsgc.cpp b/www/firefox/patches/patch-js__src__jsgc.cpp
deleted file mode 100644
index 6bcf834b1e0..00000000000
--- a/www/firefox/patches/patch-js__src__jsgc.cpp
+++ /dev/null
@@ -1,135 +0,0 @@
-$NetBSD: patch-js__src__jsgc.cpp,v 1.2 2013/06/26 11:32:12 ryoon Exp $
-
-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 js/src/jsgc.cpp js/src/jsgc.cpp
---- js/src/jsgc.cpp.orig 2013-05-11 21:19:34.000000000 +0200
-+++ js/src/jsgc.cpp 2013-06-10 13:49:13.000000000 +0200
-@@ -465,13 +465,15 @@ FinalizeArenas(FreeOp *fop,
- }
-
- static inline Chunk *
--AllocChunk() {
-- return static_cast<Chunk *>(MapAlignedPages(ChunkSize, ChunkSize));
-+AllocChunk(JSRuntime *rt)
-+{
-+ return static_cast<Chunk *>(MapAlignedPages(rt, ChunkSize, ChunkSize));
- }
-
- static inline void
--FreeChunk(Chunk *p) {
-- UnmapPages(static_cast<void *>(p), ChunkSize);
-+FreeChunk(JSRuntime *rt, Chunk *p)
-+{
-+ UnmapPages(rt, static_cast<void *>(p), ChunkSize);
- }
-
- inline bool
-@@ -561,25 +563,25 @@ ChunkPool::expire(JSRuntime *rt, bool re
- }
-
- static void
--FreeChunkList(Chunk *chunkListHead)
-+FreeChunkList(JSRuntime *rt, Chunk *chunkListHead)
- {
- while (Chunk *chunk = chunkListHead) {
- JS_ASSERT(!chunk->info.numArenasFreeCommitted);
- chunkListHead = chunk->info.next;
-- FreeChunk(chunk);
-+ FreeChunk(rt, chunk);
- }
- }
-
- void
- ChunkPool::expireAndFree(JSRuntime *rt, bool releaseAll)
- {
-- FreeChunkList(expire(rt, releaseAll));
-+ FreeChunkList(rt, expire(rt, releaseAll));
- }
-
- /* static */ Chunk *
- Chunk::allocate(JSRuntime *rt)
- {
-- Chunk *chunk = static_cast<Chunk *>(AllocChunk());
-+ Chunk *chunk = AllocChunk(rt);
-
- #ifdef JSGC_ROOT_ANALYSIS
- // Our poison pointers are not guaranteed to be invalid on 64-bit
-@@ -592,7 +594,7 @@ Chunk::allocate(JSRuntime *rt)
- // were marked as uncommitted, but it's a little complicated to avoid
- // clobbering pre-existing unrelated mappings.
- while (IsPoisonedPtr(chunk))
-- chunk = static_cast<Chunk *>(AllocChunk());
-+ chunk = AllocChunk(rt);
- #endif
-
- if (!chunk)
-@@ -608,7 +610,7 @@ Chunk::release(JSRuntime *rt, Chunk *chu
- {
- JS_ASSERT(chunk);
- chunk->prepareToBeFreed(rt);
-- FreeChunk(chunk);
-+ FreeChunk(rt, chunk);
- }
-
- inline void
-@@ -736,7 +738,7 @@ Chunk::fetchNextDecommittedArena()
- decommittedArenas.unset(offset);
-
- Arena *arena = &arenas[offset];
-- MarkPagesInUse(arena, ArenaSize);
-+ MarkPagesInUse(info.runtime, arena, ArenaSize);
- arena->aheader.setAsNotAllocated();
-
- return &arena->aheader;
-@@ -937,6 +939,8 @@ static const int64_t JIT_SCRIPT_RELEASE_
- JSBool
- js_InitGC(JSRuntime *rt, uint32_t maxbytes)
- {
-+ InitMemorySubsystem(rt);
-+
- if (!rt->gcChunkSet.init(INITIAL_CHUNK_CAPACITY))
- return false;
-
-@@ -2051,6 +2055,9 @@ js::MaybeGC(JSContext *cx)
- static void
- DecommitArenasFromAvailableList(JSRuntime *rt, Chunk **availableListHeadp)
- {
-+ if (!DecommitEnabled(rt))
-+ return;
-+
- Chunk *chunk = *availableListHeadp;
- if (!chunk)
- return;
-@@ -2102,7 +2109,7 @@ DecommitArenasFromAvailableList(JSRuntim
- Maybe<AutoUnlockGC> maybeUnlock;
- if (!rt->isHeapBusy())
- maybeUnlock.construct(rt);
-- ok = MarkPagesUnused(aheader->getArena(), ArenaSize);
-+ ok = MarkPagesUnused(rt, aheader->getArena(), ArenaSize);
- }
-
- if (ok) {
-@@ -2132,7 +2139,7 @@ DecommitArenasFromAvailableList(JSRuntim
- JS_ASSERT(chunk->info.prevp);
- }
-
-- if (rt->gcChunkAllocationSinceLastGC) {
-+ if (rt->gcChunkAllocationSinceLastGC || !ok) {
- /*
- * The allocator thread has started to get new chunks. We should stop
- * to avoid decommitting arenas in just allocated chunks.
-@@ -2170,7 +2177,7 @@ ExpireChunksAndArenas(JSRuntime *rt, boo
- {
- if (Chunk *toFree = rt->gcChunkPool.expire(rt, shouldShrink)) {
- AutoUnlockGC unlock(rt);
-- FreeChunkList(toFree);
-+ FreeChunkList(rt, toFree);
- }
-
- if (shouldShrink)
diff --git a/www/firefox/patches/patch-js__src__jsscript.cpp b/www/firefox/patches/patch-js__src__jsscript.cpp
deleted file mode 100644
index b389c7ae90c..00000000000
--- a/www/firefox/patches/patch-js__src__jsscript.cpp
+++ /dev/null
@@ -1,37 +0,0 @@
-$NetBSD: patch-js__src__jsscript.cpp,v 1.1 2013/06/21 23:11:42 ryoon Exp $
-
-# HG changeset patch
-# User Martin Husemann <martin@netbsd.org>
-# Date 1370581392 25200
-# Node ID 88d63d06dec9a9d12a8e1200f1117d648fc386e2
-# Parent 1c14b70442b380d63119dbc7d3c465e9c0e655fd
-Bug 870325 - Fix alignment of Bindings on SPARC64. r=nnethercote.
-
-diff js/src/jsscript.cpp js/src/jsscript.cpp
---- js/src/jsscript.cpp.orig 2013-05-11 21:19:34.000000000 +0200
-+++ js/src/jsscript.cpp 2013-06-10 13:58:15.000000000 +0200
-@@ -1695,7 +1695,11 @@
- if (ntrynotes != 0)
- size += sizeof(TryNoteArray) + ntrynotes * sizeof(JSTryNote);
-
-- size += nbindings * sizeof(Binding);
-+ if (nbindings != 0) {
-+ // account for padding pre bindings
-+ size = JS_ROUNDUP(size, JS_ALIGNMENT_OF(Binding)) + nbindings * sizeof(Binding);
-+ }
-+
- return size;
- }
-
-@@ -1822,6 +1826,11 @@
- cursor += vectorSize;
- }
-
-+ if (script->bindings.count() != 0) {
-+ // Make sure bindings are sufficiently aligned.
-+ cursor = reinterpret_cast<uint8_t*>
-+ (JS_ROUNDUP(reinterpret_cast<uintptr_t>(cursor), JS_ALIGNMENT_OF(Binding)));
-+ }
- cursor = script->bindings.switchToScriptStorage(reinterpret_cast<Binding *>(cursor));
-
- JS_ASSERT(cursor == script->data + size);
diff --git a/www/firefox/patches/patch-js__src__vm__SPSProfiler.cpp b/www/firefox/patches/patch-js__src__vm__SPSProfiler.cpp
index c0b9acfcfda..02e36b6059e 100644
--- a/www/firefox/patches/patch-js__src__vm__SPSProfiler.cpp
+++ b/www/firefox/patches/patch-js__src__vm__SPSProfiler.cpp
@@ -1,16 +1,16 @@
-$NetBSD: patch-js__src__vm__SPSProfiler.cpp,v 1.1 2013/06/21 23:11:42 ryoon Exp $
+$NetBSD: patch-js__src__vm__SPSProfiler.cpp,v 1.2 2013/09/19 12:37:50 ryoon Exp $
Unclear fallout from our version of bug 840242, attachment v1: some architectures
fail to link if we do not add the inlines here - might be compiler/arch specific.
---- js/src/vm/SPSProfiler.cpp.orig 2013-05-11 21:19:36.000000000 +0200
-+++ js/src/vm/SPSProfiler.cpp 2013-06-15 11:49:39.000000000 +0200
-@@ -9,6 +9,7 @@
+--- js/src/vm/SPSProfiler.cpp.orig 2013-09-10 03:43:39.000000000 +0000
++++ js/src/vm/SPSProfiler.cpp
+@@ -8,6 +8,7 @@
#include "jsnum.h"
#include "jsscript.h"
+#include "jscntxtinlines.h"
- #include "methodjit/MethodJIT.h"
- #include "methodjit/Compiler.h"
+ #include "vm/SPSProfiler.h"
+ #include "vm/StringBuffer.h"
diff --git a/www/firefox/patches/patch-js__src__yarr__YarrInterpreter.cpp b/www/firefox/patches/patch-js__src__yarr__YarrInterpreter.cpp
deleted file mode 100644
index 7fe8125ce8d..00000000000
--- a/www/firefox/patches/patch-js__src__yarr__YarrInterpreter.cpp
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-js__src__yarr__YarrInterpreter.cpp,v 1.1 2013/06/21 23:11:42 ryoon Exp $
-
-Bugzilla ticket #871444
-
-diff -r 581ea0e6531e js/src/yarr/YarrInterpreter.cpp
---- js/src/yarr/YarrInterpreter.cpp Tue May 07 09:47:43 2013 -0400
-+++ js/src/yarr/YarrInterpreter.cpp Sun May 12 17:41:08 2013 +0200
-@@ -156,6 +156,7 @@
- ParenthesesDisjunctionContext* allocParenthesesDisjunctionContext(ByteDisjunction* disjunction, unsigned* output, ByteTerm& term)
- {
- size_t size = sizeof(ParenthesesDisjunctionContext) - sizeof(unsigned) + (term.atom.parenthesesDisjunction->m_numSubpatterns << 1) * sizeof(unsigned) + sizeof(DisjunctionContext) - sizeof(uintptr_t) + disjunction->m_frameSize * sizeof(uintptr_t);
-+ size = JS_ROUNDUP(size, JS_ALIGNMENT_OF(ParenthesesDisjunctionContext));
- allocatorPool = allocatorPool->ensureCapacity(size);
- if (!allocatorPool)
- CRASH();
diff --git a/www/firefox/patches/patch-js_src_Makefile.in b/www/firefox/patches/patch-js_src_Makefile.in
index 83b1e5b5008..836e276ed77 100644
--- a/www/firefox/patches/patch-js_src_Makefile.in
+++ b/www/firefox/patches/patch-js_src_Makefile.in
@@ -1,8 +1,52 @@
-$NetBSD: patch-js_src_Makefile.in,v 1.1 2013/05/23 13:12:13 ryoon Exp $
+$NetBSD: patch-js_src_Makefile.in,v 1.2 2013/09/19 12:37:50 ryoon Exp $
---- js/src/Makefile.in.orig 2013-05-11 19:19:32.000000000 +0000
+--- js/src/Makefile.in.orig 2013-09-10 03:43:34.000000000 +0000
+++ js/src/Makefile.in
-@@ -791,6 +791,13 @@ EXTRA_LIBS += -lposix4 -ldl -lnsl -lsock
+@@ -237,10 +237,14 @@ endif
+ # ICU headers need to be available whether we build with the complete
+ # Internationalization API or not - ICU stubs rely on them.
+
++ifdef MOZ_NATIVE_ICU
++LOCAL_INCLUDES += $(MOZ_ICU_CFLAGS)
++else
+ LOCAL_INCLUDES += \
+ -I$(topsrcdir)/../../intl/icu/source/common \
+ -I$(topsrcdir)/../../intl/icu/source/i18n \
+ $(NULL)
++endif
+
+ ifdef ENABLE_INTL_API
+
+@@ -256,6 +260,7 @@ ifeq ($(OS_ARCH),WINNT)
+ cp -p intl/icu/lib/s$(libname)$(ICU_LIB_SUFFIX).lib intl/icu/lib/$(libname).lib;)
+ endif
+
++ifndef MOZ_NATIVE_ICU
+ # - Build ICU as part of the "export" target, so things get built
+ # in the right order.
+ # - ICU requires GNU make according to its readme.html. pymake can't be used
+@@ -269,6 +274,7 @@ export::
+
+ distclean clean::
+ $(call SUBMAKE,$@,intl/icu)
++endif
+
+ endif
+
+@@ -408,7 +414,11 @@ ifneq (,$(MOZ_ZLIB_LIBS)$(MOZ_GLUE_LDFLA
+ DEFINES += -DUSE_ZLIB
+ endif
+
+-SHARED_LIBRARY_LIBS += $(ICU_LIBS)
++ifdef MOZ_NATIVE_ICU
++EXTRA_DSO_LDOPTS += $(MOZ_ICU_LIBS)
++else
++SHARED_LIBRARY_LIBS += $(MOZ_ICU_LIBS)
++endif
+
+ # Prevent floating point errors caused by VC++ optimizations
+ ifdef _MSC_VER
+@@ -467,6 +477,13 @@ EXTRA_LIBS += -lposix4 -ldl -lnsl -lsock
endif
endif
diff --git a/www/firefox/patches/patch-js_src_config_Makefile.in b/www/firefox/patches/patch-js_src_config_Makefile.in
new file mode 100644
index 00000000000..66326718401
--- /dev/null
+++ b/www/firefox/patches/patch-js_src_config_Makefile.in
@@ -0,0 +1,12 @@
+$NetBSD: patch-js_src_config_Makefile.in,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- js/src/config/Makefile.in.orig 2013-09-10 03:43:34.000000000 +0000
++++ js/src/config/Makefile.in
+@@ -59,6 +59,7 @@ export:: \
+ $(call mkdir_deps,system_wrappers_js) \
+ $(NULL)
+ $(PYTHON) $(srcdir)/Preprocessor.py $(DEFINES) $(ACDEFINES) \
++ -DMOZ_NATIVE_ICU=$(MOZ_NATIVE_ICU) \
+ $(srcdir)/system-headers | $(PERL) $(srcdir)/make-system-wrappers.pl system_wrappers_js
+ $(INSTALL) system_wrappers_js $(DIST)
+
diff --git a/www/firefox/patches/patch-js_src_config_system-headers b/www/firefox/patches/patch-js_src_config_system-headers
index ba6adbc619c..56c1a217c96 100644
--- a/www/firefox/patches/patch-js_src_config_system-headers
+++ b/www/firefox/patches/patch-js_src_config_system-headers
@@ -1,10 +1,19 @@
-$NetBSD: patch-js_src_config_system-headers,v 1.1 2013/05/23 13:12:13 ryoon Exp $
+$NetBSD: patch-js_src_config_system-headers,v 1.2 2013/09/19 12:37:50 ryoon Exp $
---- js/src/config/system-headers.orig 2013-05-11 19:19:32.000000000 +0000
+--- js/src/config/system-headers.orig 2013-09-10 03:43:34.000000000 +0000
+++ js/src/config/system-headers
-@@ -1126,3 +1126,5 @@ sys/thr.h
- sys/user.h
- kvm.h
+@@ -1132,3 +1132,14 @@ kvm.h
spawn.h
-+err.h
-+xlocale.h
+ err.h
+ xlocale.h
++#if MOZ_NATIVE_ICU==1
++unicode/locid.h
++unicode/numsys.h
++unicode/ucal.h
++unicode/ucol.h
++unicode/udat.h
++unicode/udatpg.h
++unicode/uenum.h
++unicode/unum.h
++unicode/ustring.h
++#endif
diff --git a/www/firefox/patches/patch-bd b/www/firefox/patches/patch-js_src_ctypes_CTypes.h
index 42b00ac8f52..07d82afc429 100644
--- a/www/firefox/patches/patch-bd
+++ b/www/firefox/patches/patch-js_src_ctypes_CTypes.h
@@ -1,10 +1,10 @@
-$NetBSD: patch-bd,v 1.1 2013/05/23 13:12:13 ryoon Exp $
+$NetBSD: patch-js_src_ctypes_CTypes.h,v 1.1 2013/09/19 12:37:50 ryoon Exp $
---- js/src/ctypes/CTypes.cpp.orig 2013-01-04 23:44:34.000000000 +0000
-+++ js/src/ctypes/CTypes.cpp
-@@ -5,6 +5,23 @@
+--- js/src/ctypes/CTypes.h.orig 2013-09-10 03:43:34.000000000 +0000
++++ js/src/ctypes/CTypes.h
+@@ -13,6 +13,23 @@
- #include "mozilla/FloatingPoint.h"
+ #include "js/HashTable.h"
+#if defined(__NetBSD__)
+#include <stdint.h>
@@ -23,6 +23,6 @@ $NetBSD: patch-bd,v 1.1 2013/05/23 13:12:13 ryoon Exp $
+#define off_t off_t
+#endif
+
- #include "CTypes.h"
- #include "Library.h"
- #include "jsnum.h"
+ namespace js {
+ namespace ctypes {
+
diff --git a/www/firefox/patches/patch-js_src_frontend_ParseMaps.cpp b/www/firefox/patches/patch-js_src_frontend_ParseMaps.cpp
new file mode 100644
index 00000000000..206bd1f2464
--- /dev/null
+++ b/www/firefox/patches/patch-js_src_frontend_ParseMaps.cpp
@@ -0,0 +1,12 @@
+$NetBSD: patch-js_src_frontend_ParseMaps.cpp,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- js/src/frontend/ParseMaps.cpp.orig 2013-09-10 03:43:34.000000000 +0000
++++ js/src/frontend/ParseMaps.cpp
+@@ -132,5 +132,5 @@ frontend::InitAtomMap(JSContext *cx, fro
+ }
+ }
+
+-template class js::frontend::AtomDecls<FullParseHandler>;
+-template class js::frontend::AtomDecls<SyntaxParseHandler>;
++template class frontend::AtomDecls<FullParseHandler>;
++template class frontend::AtomDecls<SyntaxParseHandler>;
diff --git a/www/firefox/patches/patch-js_src_gdb_Makefile.in b/www/firefox/patches/patch-js_src_gdb_Makefile.in
new file mode 100644
index 00000000000..f8764982c74
--- /dev/null
+++ b/www/firefox/patches/patch-js_src_gdb_Makefile.in
@@ -0,0 +1,15 @@
+$NetBSD: patch-js_src_gdb_Makefile.in,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- js/src/gdb/Makefile.in.orig 2013-09-10 03:43:34.000000000 +0000
++++ js/src/gdb/Makefile.in
+@@ -19,6 +19,10 @@ LIBS = $(DEPTH)/$(LIB_PREFIX)js_static.$
+
+ LOCAL_INCLUDES += -I$(topsrcdir) -I..
+
++ifdef MOZ_NATIVE_ICU
++EXTRA_LIBS += $(MOZ_ICU_LIBS)
++endif
++
+ EXTRA_LIBS += $(MOZ_FFI_LIBS)
+
+ # Place a GDB Python auto-load file next to the gdb-tests executable, both
diff --git a/www/firefox/patches/patch-js_src_ion_AsmJS.cpp b/www/firefox/patches/patch-js_src_ion_AsmJS.cpp
deleted file mode 100644
index c9b504c9a6a..00000000000
--- a/www/firefox/patches/patch-js_src_ion_AsmJS.cpp
+++ /dev/null
@@ -1,31 +0,0 @@
-$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
deleted file mode 100644
index 8dbcf77e8b9..00000000000
--- a/www/firefox/patches/patch-js_src_ion_AsmJS.h
+++ /dev/null
@@ -1,14 +0,0 @@
-$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_AsmJSModule.h b/www/firefox/patches/patch-js_src_ion_AsmJSModule.h
deleted file mode 100644
index 6e1145ce023..00000000000
--- a/www/firefox/patches/patch-js_src_ion_AsmJSModule.h
+++ /dev/null
@@ -1,37 +0,0 @@
-$NetBSD: patch-js_src_ion_AsmJSModule.h,v 1.1 2013/08/07 12:17:54 ryoon Exp $
-
---- js/src/ion/AsmJSModule.h.orig 2013-07-30 00:58:18.000000000 +0000
-+++ js/src/ion/AsmJSModule.h
-@@ -582,12 +582,12 @@ class AsmJSModule
- }
-
- void setFunctionBytes(size_t functionBytes) {
-- JS_ASSERT(functionBytes % gc::PageSize == 0);
-+ JS_ASSERT(functionBytes % AsmJSPageSize == 0);
- functionBytes_ = functionBytes;
- }
- size_t functionBytes() const {
- JS_ASSERT(functionBytes_);
-- JS_ASSERT(functionBytes_ % gc::PageSize == 0);
-+ JS_ASSERT(functionBytes_ % AsmJSPageSize == 0);
- return functionBytes_;
- }
- bool containsPC(void *pc) const {
-@@ -648,7 +648,7 @@ class AsmJSModule
-
-
- void takeOwnership(JSC::ExecutablePool *pool, uint8_t *code, size_t codeBytes, size_t totalBytes) {
-- JS_ASSERT(uintptr_t(code) % gc::PageSize == 0);
-+ JS_ASSERT(uintptr_t(code) % AsmJSPageSize == 0);
- codePool_ = pool;
- code_ = code;
- codeBytes_ = codeBytes;
-@@ -656,7 +656,7 @@ class AsmJSModule
- }
- uint8_t *functionCode() const {
- JS_ASSERT(code_);
-- JS_ASSERT(uintptr_t(code_) % gc::PageSize == 0);
-+ JS_ASSERT(uintptr_t(code_) % AsmJSPageSize == 0);
- return code_;
- }
-
diff --git a/www/firefox/patches/patch-js_src_ion_AsmJSSignalHandlers.cpp b/www/firefox/patches/patch-js_src_ion_AsmJSSignalHandlers.cpp
deleted file mode 100644
index d594060bdb5..00000000000
--- a/www/firefox/patches/patch-js_src_ion_AsmJSSignalHandlers.cpp
+++ /dev/null
@@ -1,13 +0,0 @@
-$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_jit_AsmJSSignalHandlers.cpp b/www/firefox/patches/patch-js_src_jit_AsmJSSignalHandlers.cpp
new file mode 100644
index 00000000000..5455e754c25
--- /dev/null
+++ b/www/firefox/patches/patch-js_src_jit_AsmJSSignalHandlers.cpp
@@ -0,0 +1,13 @@
+$NetBSD: patch-js_src_jit_AsmJSSignalHandlers.cpp,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- js/src/jit/AsmJSSignalHandlers.cpp.orig 2013-09-10 03:43:36.000000000 +0000
++++ js/src/jit/AsmJSSignalHandlers.cpp
+@@ -269,7 +269,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__) || defined(__FreeBSD_kernel__)
++# elif defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__)
+ # include <machine/fpu.h> // for struct savefpu/fxsave64
+ # endif
+ # endif
diff --git a/www/firefox/patches/patch-js_src_jsapi-tests_Makefile.in b/www/firefox/patches/patch-js_src_jsapi-tests_Makefile.in
new file mode 100644
index 00000000000..8641f21303e
--- /dev/null
+++ b/www/firefox/patches/patch-js_src_jsapi-tests_Makefile.in
@@ -0,0 +1,15 @@
+$NetBSD: patch-js_src_jsapi-tests_Makefile.in,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- js/src/jsapi-tests/Makefile.in.orig 2013-09-10 03:43:36.000000000 +0000
++++ js/src/jsapi-tests/Makefile.in
+@@ -20,6 +20,10 @@ LIBS = $(DEPTH)/$(LIB_PREFIX)js_sta
+
+ LOCAL_INCLUDES += -I$(topsrcdir) -I..
+
++ifdef MOZ_NATIVE_ICU
++EXTRA_LIBS += $(MOZ_ICU_LIBS)
++endif
++
+ EXTRA_LIBS += $(MOZ_FFI_LIBS)
+
+ ifdef QEMU_EXE
diff --git a/www/firefox/patches/patch-js_src_jsmath.cpp b/www/firefox/patches/patch-js_src_jsmath.cpp
index 86961e3b6b6..c0e5a214454 100644
--- a/www/firefox/patches/patch-js_src_jsmath.cpp
+++ b/www/firefox/patches/patch-js_src_jsmath.cpp
@@ -1,13 +1,13 @@
-$NetBSD: patch-js_src_jsmath.cpp,v 1.1 2013/07/17 11:00:13 jperkin Exp $
+$NetBSD: patch-js_src_jsmath.cpp,v 1.2 2013/09/19 12:37:50 ryoon Exp $
---- js/src/jsmath.cpp.orig 2013-05-11 19:19:34.000000000 +0000
+--- js/src/jsmath.cpp.orig 2013-09-10 03:43:36.000000000 +0000
+++ js/src/jsmath.cpp
-@@ -195,7 +195,7 @@ math_atan2_kernel(double x, double y)
+@@ -244,7 +244,7 @@ js::ecmaAtan2(double y, double x)
}
#endif
-#if defined(SOLARIS) && defined(__GNUC__)
+#if defined(notSOLARIS) && defined(__GNUC__)
- if (x == 0) {
- if (MOZ_DOUBLE_IS_NEGZERO(y))
- return js_copysign(M_PI, x);
+ if (y == 0) {
+ if (IsNegativeZero(x))
+ return js_copysign(M_PI, y);
diff --git a/www/firefox/patches/patch-js_src_jstypedarray.cpp b/www/firefox/patches/patch-js_src_jstypedarray.cpp
deleted file mode 100644
index 82baf5c0866..00000000000
--- a/www/firefox/patches/patch-js_src_jstypedarray.cpp
+++ /dev/null
@@ -1,53 +0,0 @@
-$NetBSD: patch-js_src_jstypedarray.cpp,v 1.2 2013/08/07 12:17:54 ryoon Exp $
-
-https://hg.mozilla.org/integration/mozilla-inbound/rev/49e4ff129351
-
---- js/src/jstypedarray.cpp.orig 2013-07-30 00:58:21.000000000 +0000
-+++ js/src/jstypedarray.cpp
-@@ -338,9 +338,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)
-@@ -363,19 +363,19 @@ ArrayBufferObject::prepareForAsmJS(JSCon
- // Enable access to the valid region.
- JS_ASSERT(buffer->byteLength() % AsmJSAllocationGranularity == 0);
- # ifdef XP_WIN
-- if (!VirtualAlloc(p, PageSize + buffer->byteLength(), MEM_COMMIT, PAGE_READWRITE)) {
-+ if (!VirtualAlloc(p, AsmJSPageSize + buffer->byteLength(), MEM_COMMIT, PAGE_READWRITE)) {
- VirtualFree(p, 0, MEM_RELEASE);
- return false;
- }
- # else
-- if (mprotect(p, PageSize + buffer->byteLength(), PROT_READ | PROT_WRITE)) {
-+ if (mprotect(p, AsmJSPageSize + buffer->byteLength(), PROT_READ | PROT_WRITE)) {
- munmap(p, AsmJSMappedSize);
- 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.
-@@ -397,8 +397,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_methodjit_MethodJIT.cpp b/www/firefox/patches/patch-js_src_methodjit_MethodJIT.cpp
deleted file mode 100644
index 545e2b86ff3..00000000000
--- a/www/firefox/patches/patch-js_src_methodjit_MethodJIT.cpp
+++ /dev/null
@@ -1,25 +0,0 @@
-$NetBSD: patch-js_src_methodjit_MethodJIT.cpp,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
-# This does not only apply to linux, but all ELF platforms (otherwise the
-# generated code will not be PIC)
-
---- js/src/methodjit/MethodJIT.cpp.orig 2013-05-11 19:19:34.000000000 +0000
-+++ js/src/methodjit/MethodJIT.cpp
-@@ -138,7 +138,7 @@ PopActiveVMFrame(VMFrame &f)
-
- JS_STATIC_ASSERT(offsetof(FrameRegs, sp) == 0);
-
--#if defined(__linux__) && defined(JS_CPU_X64)
-+#if defined(__ELF__) && defined(JS_CPU_X64)
- # define SYMBOL_STRING_RELOC(name) #name "@plt"
- #else
- # define SYMBOL_STRING_RELOC(name) SYMBOL_STRING(name)
-@@ -152,7 +152,7 @@ JS_STATIC_ASSERT(offsetof(FrameRegs, sp)
-
- #if defined(XP_MACOSX)
- # define HIDE_SYMBOL(name) ".private_extern _" #name
--#elif defined(__linux__)
-+#elif defined(__ELF__)
- # define HIDE_SYMBOL(name) ".hidden" #name
- #else
- # define HIDE_SYMBOL(name)
diff --git a/www/firefox/patches/patch-js_src_shell_Makefile.in b/www/firefox/patches/patch-js_src_shell_Makefile.in
new file mode 100644
index 00000000000..10b79138224
--- /dev/null
+++ b/www/firefox/patches/patch-js_src_shell_Makefile.in
@@ -0,0 +1,14 @@
+$NetBSD: patch-js_src_shell_Makefile.in,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- js/src/shell/Makefile.in.orig 2013-09-10 03:43:36.000000000 +0000
++++ js/src/shell/Makefile.in
+@@ -27,6 +27,9 @@ LIBS = $(NSPR_LIBS) $(EDITLINE_LIBS
+ ifdef MOZ_NATIVE_FFI
+ EXTRA_LIBS += $(MOZ_FFI_LIBS)
+ endif
++ifdef MOZ_NATIVE_ICU
++EXTRA_LIBS += $(MOZ_ICU_LIBS)
++endif
+
+ LOCAL_INCLUDES += -I$(topsrcdir) -I..
+
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 e56b10c86a9..a7b7d5f3bf9 100644
--- a/www/firefox/patches/patch-js_src_vm_ObjectImpl-inl.h
+++ b/www/firefox/patches/patch-js_src_vm_ObjectImpl-inl.h
@@ -1,29 +1,17 @@
-$NetBSD: patch-js_src_vm_ObjectImpl-inl.h,v 1.3 2013/08/07 12:17:54 ryoon Exp $
+$NetBSD: patch-js_src_vm_ObjectImpl-inl.h,v 1.4 2013/09/19 12:37:50 ryoon Exp $
---- js/src/vm/ObjectImpl-inl.h.orig 2013-07-30 00:58:25.000000000 +0000
+--- js/src/vm/ObjectImpl-inl.h.orig 2013-09-10 03:43:39.000000000 +0000
+++ js/src/vm/ObjectImpl-inl.h
-@@ -217,9 +217,9 @@ js::ObjectImpl::initializeSlotRange(uint
- JSRuntime *rt = runtime();
- uint32_t offset = start;
- for (HeapSlot *sp = fixedStart; sp < fixedEnd; sp++)
-- sp->init(rt, this->asObjectPtr(), HeapSlot::Slot, offset++, UndefinedValue());
-+ sp->init(rt, this->asObjectPtr(), HeapSlot::Slot, offset++, js::UndefinedValue());
- for (HeapSlot *sp = slotsStart; sp < slotsEnd; sp++)
-- sp->init(rt, this->asObjectPtr(), HeapSlot::Slot, offset++, UndefinedValue());
-+ sp->init(rt, this->asObjectPtr(), HeapSlot::Slot, offset++, js::UndefinedValue());
- }
-
- inline bool
-@@ -389,7 +389,7 @@ ZoneOfValue(const JS::Value &value)
+@@ -364,7 +364,7 @@ js::ObjectImpl::zone() const
js::ObjectImpl::readBarrier(ObjectImpl *obj)
{
#ifdef JSGC_INCREMENTAL
- Zone *zone = obj->zone();
+ JS::Zone *zone = obj->zone();
if (zone->needsBarrier()) {
- MOZ_ASSERT(!zone->rt->isHeapBusy());
+ MOZ_ASSERT(!zone->rt->isHeapMajorCollecting());
JSObject *tmp = obj->asObjectPtr();
-@@ -403,7 +403,7 @@ inline void
+@@ -378,7 +378,7 @@ inline void
js::ObjectImpl::privateWriteBarrierPre(void **old)
{
#ifdef JSGC_INCREMENTAL
@@ -32,12 +20,12 @@ $NetBSD: patch-js_src_vm_ObjectImpl-inl.h,v 1.3 2013/08/07 12:17:54 ryoon Exp $
if (zone->needsBarrier()) {
if (*old && getClass()->trace)
getClass()->trace(zone->barrierTracer(), this->asObjectPtr());
-@@ -430,7 +430,7 @@ js::ObjectImpl::writeBarrierPre(ObjectIm
+@@ -405,7 +405,7 @@ js::ObjectImpl::writeBarrierPre(ObjectIm
if (IsNullTaggedPointer(obj) || !obj->runtime()->needsBarrier())
return;
- Zone *zone = obj->zone();
+ JS::Zone *zone = obj->zone();
if (zone->needsBarrier()) {
- MOZ_ASSERT(!zone->rt->isHeapBusy());
+ MOZ_ASSERT(!zone->rt->isHeapMajorCollecting());
JSObject *tmp = obj->asObjectPtr();
diff --git a/www/firefox/patches/patch-js_src_vm_Stack.cpp b/www/firefox/patches/patch-js_src_vm_Stack.cpp
deleted file mode 100644
index 7e8bf5267c5..00000000000
--- a/www/firefox/patches/patch-js_src_vm_Stack.cpp
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-js_src_vm_Stack.cpp,v 1.1 2013/07/17 11:00:13 jperkin Exp $
-
---- js/src/vm/Stack.cpp.orig 2013-05-11 19:19:36.000000000 +0000
-+++ js/src/vm/Stack.cpp
-@@ -814,7 +814,11 @@ StackSpace::sizeOf()
- #endif
-
- MincoreArgType *vec = (MincoreArgType *) js_malloc(numPages);
-+#ifdef __sun
-+ int result = mincore((caddr_t)base_, numBytes, vec);
-+#else
- int result = mincore(base_, numBytes, vec);
-+#endif
- if (result) {
- js_free(vec);
- /*
diff --git a/www/firefox/patches/patch-mb b/www/firefox/patches/patch-mb
index b24be6fc323..c58e97f0fc9 100644
--- a/www/firefox/patches/patch-mb
+++ b/www/firefox/patches/patch-mb
@@ -1,53 +1,17 @@
-$NetBSD: patch-mb,v 1.5 2013/07/02 07:18:18 martin Exp $
+$NetBSD: patch-mb,v 1.6 2013/09/19 12:37:50 ryoon Exp $
---- xpcom/reflect/xptcall/src/md/unix/Makefile.in.orig 2013-02-15 21:15:14.000000000 +0000
+--- xpcom/reflect/xptcall/src/md/unix/Makefile.in.orig 2013-09-10 03:43:57.000000000 +0000
+++ xpcom/reflect/xptcall/src/md/unix/Makefile.in
-@@ -49,7 +49,7 @@ endif
- endif
- endif
-
--ifneq (,$(filter NetBSD OpenBSD GNU,$(OS_ARCH)))
-+ifneq (,$(filter GNU,$(OS_ARCH)))
- ifeq (86,$(findstring 86,$(OS_TEST)))
- CPPSRCS := xptcinvoke_gcc_x86_unix.cpp xptcstubs_gcc_x86_unix.cpp
- endif
-@@ -58,7 +58,7 @@ endif
- # New code for Linux, et. al., with gcc
- # Migrate other platforms here after testing
- #
--ifneq (,$(filter Linux FreeBSD GNU_%,$(OS_ARCH)))
-+ifneq (,$(filter Linux FreeBSD DragonFly NetBSD OpenBSD GNU_%,$(OS_ARCH)))
- # Linux/x86-64
- ifeq (x86_64,$(OS_TEST))
- CPPSRCS := xptcinvoke_x86_64_unix.cpp xptcstubs_x86_64_linux.cpp
-@@ -157,7 +157,7 @@ endif
- # NetBSD/ARM
- #
- ifeq ($(OS_ARCH),NetBSD)
--ifneq (,$(filter arm% sa110,$(OS_TEST)))
-+ifneq (,$(filter arm%,$(TARGET_CPU)))
- CPPSRCS := xptcinvoke_arm_netbsd.cpp xptcstubs_arm_netbsd.cpp
- endif
- endif
-@@ -214,7 +214,7 @@ endif
- # NetBSD/m68k
- #
- ifeq ($(OS_ARCH),NetBSD)
--ifneq (,$(filter amiga atari hp300 mac68k mvme68k next68k sun3 sun3x x68k,$(OS_TEST)))
-+ifneq (,$(filter m68k,$(TARGET_CPU)))
- CPPSRCS := xptcinvoke_netbsd_m68k.cpp xptcstubs_netbsd_m68k.cpp
- endif
- endif
-@@ -286,7 +286,7 @@ endif
+@@ -183,7 +183,7 @@ endif
#
# NetBSD/PPC
#
-ifneq (,$(filter NetBSDmacppc NetBSDbebox NetBSDofppc NetBSDprep NetBSDamigappc,$(OS_ARCH)$(OS_TEST)))
+ifeq ($(OS_ARCH)$(OS_TEST),NetBSDpowerpc)
- CPPSRCS := xptcinvoke_ppc_netbsd.cpp xptcstubs_ppc_netbsd.cpp
ASFILES := xptcinvoke_asm_ppc_netbsd.s xptcstubs_asm_ppc_netbsd.s
endif
-@@ -345,6 +345,13 @@ CPPSRCS := xptcinvoke_sparc64_openbsd.c
+
+@@ -235,6 +235,13 @@ ifneq (,$(filter OpenBSDsparc64 FreeBSDs
ASFILES := xptcinvoke_asm_sparc64_openbsd.s xptcstubs_asm_sparc64_openbsd.s
endif
#
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 df57454c718..70c3fc2835c 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,21 +1,36 @@
-$NetBSD: patch-media_mtransport_third__party_nICEr_src_stun_addrs.c,v 1.2 2013/06/26 11:32:12 ryoon Exp $
+$NetBSD: patch-media_mtransport_third__party_nICEr_src_stun_addrs.c,v 1.3 2013/09/19 12:37:50 ryoon Exp $
---- 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.orig 2013-09-10 03:43:46.000000000 +0000
+++ media/mtransport/third_party/nICEr/src/stun/addrs.c
-@@ -54,11 +54,15 @@ static char *RCSSTRING __UNUSED__="$Id:
- #include <linux/sysctl.h>
+@@ -55,7 +55,13 @@ static char *RCSSTRING __UNUSED__="$Id:
#endif
#include <net/if.h>
--#ifndef LINUX
-+#if defined(__FreeBSD__)
+ #ifndef LINUX
++#if !defined(__OpenBSD__) && !defined(__NetBSD__)
#include <net/if_var.h>
- #include <net/if_dl.h>
- #include <net/if_types.h>
- #include <sys/sockio.h>
-+#elif defined(__NetBSD__)
++#endif
+#include <net/if_dl.h>
+#include <net/if_types.h>
+#include <sys/sockio.h>
- #else
- #include <linux/if.h>
- #endif
++#elif defined(__NetBSD__)
+ #include <net/if_dl.h>
+ #include <net/if_types.h>
+ #include <sys/sockio.h>
+@@ -80,7 +86,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.
+@@ -695,7 +701,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);
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_build_build__config.h b/www/firefox/patches/patch-media_webrtc_trunk_build_build__config.h
new file mode 100644
index 00000000000..cd0b219886d
--- /dev/null
+++ b/www/firefox/patches/patch-media_webrtc_trunk_build_build__config.h
@@ -0,0 +1,41 @@
+$NetBSD: patch-media_webrtc_trunk_build_build__config.h,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- media/webrtc/trunk/build/build_config.h.orig 2013-09-10 03:43:46.000000000 +0000
++++ media/webrtc/trunk/build/build_config.h
+@@ -37,9 +37,15 @@
+ #elif defined(_WIN32)
+ #define OS_WIN 1
+ #define TOOLKIT_VIEWS 1
+-#elif defined(__FreeBSD__)
++#elif defined(__DragonFly__)
++#define OS_DRAGONFLY 1
++#define TOOLKIT_GTK
++#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
+ #define OS_FREEBSD 1
+ #define TOOLKIT_GTK
++#elif defined(__NetBSD__)
++#define OS_NETBSD 1
++#define TOOLKIT_GTK
+ #elif defined(__OpenBSD__)
+ #define OS_OPENBSD 1
+ #define TOOLKIT_GTK
+@@ -56,15 +62,15 @@
+
+ // For access to standard BSD features, use OS_BSD instead of a
+ // more specific macro.
+-#if defined(OS_FREEBSD) || defined(OS_OPENBSD)
++#if defined(OS_DRAGONFLY) || defined(OS_FREEBSD) \
++ || defined(OS_NETBSD) || defined(OS_OPENBSD)
+ #define OS_BSD 1
+ #endif
+
+ // For access to standard POSIXish features, use OS_POSIX instead of a
+ // more specific macro.
+-#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_FREEBSD) || \
+- defined(OS_OPENBSD) || defined(OS_SOLARIS) || defined(OS_ANDROID) || \
+- defined(OS_NACL)
++#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD) || \
++ defined(OS_SOLARIS) || defined(OS_ANDROID) || defined(OS_NACL)
+ #define OS_POSIX 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
deleted file mode 100644
index 11e99aa2a21..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_third__party_libyuv_libyuv.gyp
+++ /dev/null
@@ -1,16 +0,0 @@
-$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-06-17 22:13:19.000000000 +0000
-+++ media/webrtc/trunk/third_party/libyuv/libyuv.gyp
-@@ -58,6 +58,11 @@
- }],
- ],
- 'conditions': [
-+ ['yuv_disable_asm==1', {
-+ 'defines': [
-+ 'YUV_DISABLE_ASM',
-+ ],
-+ }],
- ['build_with_mozilla==1', {
- 'include_dirs': [
- '$(DEPTH)/dist/include',
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 93c272ea0d5..5ff449f0d21 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,6 +1,6 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_build_common.gypi,v 1.2 2013/06/26 11:32:12 ryoon Exp $
+$NetBSD: patch-media_webrtc_trunk_webrtc_build_common.gypi,v 1.3 2013/09/19 12:37:50 ryoon Exp $
---- media/webrtc/trunk/webrtc/build/common.gypi.orig 2013-06-17 22:13:20.000000000 +0000
+--- media/webrtc/trunk/webrtc/build/common.gypi.orig 2013-09-10 03:43:47.000000000 +0000
+++ media/webrtc/trunk/webrtc/build/common.gypi
@@ -71,9 +71,9 @@
'enable_data_logging%': 0,
@@ -14,34 +14,12 @@ $NetBSD: patch-media_webrtc_trunk_webrtc_build_common.gypi,v 1.2 2013/06/26 11:3
# Enable to use the Mozilla internal settings.
'build_with_mozilla%': 0,
-@@ -124,6 +124,11 @@
- # and Java Implementation
- 'enable_android_opensl%': 0,
+@@ -238,7 +238,7 @@
}],
-+ ['OS=="linux" or OS=="solaris" or os_bsd==1', {
-+ 'include_v4l2_video_capture%': 1,
-+ }, {
-+ 'include_v4l2_video_capture%': 0,
-+ }],
- ['OS=="ios"', {
- 'enable_video%': 0,
- 'enable_protobuf%': 0,
-@@ -215,6 +220,18 @@
- }],
+ ['OS=="dragonfly" or OS=="netbsd"', {
+ 'defines': [
+- # doesn't support pthread_condattr_setclock
++ # doesn't support pthread_condattr_setclock, NetBSD 6 supports it.
+ 'WEBRTC_CLOCK_TYPE_REALTIME',
],
}],
-+ ['os_bsd==1', {
-+ 'defines': [
-+ 'WEBRTC_BSD',
-+ 'WEBRTC_THREAD_RR',
-+ ],
-+ }],
-+ ['OS=="dragonfly" or OS=="netbsd"', {
-+ 'defines': [
-+ # doesn't support pthread_condattr_setclock
-+ 'WEBRTC_CLOCK_TYPE_REALTIME',
-+ ],
-+ }],
- ['OS=="ios"', {
- 'defines': [
- 'WEBRTC_MAC',
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device.gypi b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device.gypi
deleted file mode 100644
index 7bebc998c13..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device.gypi
+++ /dev/null
@@ -1,91 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device.gypi,v 1.2 2013/08/07 12:17:54 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/modules/audio_device/audio_device.gypi.orig 2013-07-30 00:58:52.000000000 +0000
-+++ media/webrtc/trunk/webrtc/modules/audio_device/audio_device.gypi
-@@ -45,11 +45,15 @@
- 'dummy/audio_device_utility_dummy.h',
- ],
- 'conditions': [
-- ['OS=="linux"', {
-+ ['include_alsa_audio==1 or include_pulse_audio==1', {
- 'include_dirs': [
- 'linux',
- ],
-- }], # OS==linux
-+ 'defines': [
-+ # avoid pointless rename
-+ 'WEBRTC_LINUX',
-+ ],
-+ }], # include_alsa_audio==1 or include_pulse_audio==1
- ['OS=="ios"', {
- 'include_dirs': [
- 'ios',
-@@ -78,14 +82,8 @@
- }],
- ['include_internal_audio_device==1', {
- 'sources': [
-- 'linux/alsasymboltable_linux.cc',
-- 'linux/alsasymboltable_linux.h',
-- 'linux/audio_device_alsa_linux.cc',
-- 'linux/audio_device_alsa_linux.h',
- 'linux/audio_device_utility_linux.cc',
- 'linux/audio_device_utility_linux.h',
-- 'linux/audio_mixer_manager_alsa_linux.cc',
-- 'linux/audio_mixer_manager_alsa_linux.h',
- 'linux/latebindingsymboltable_linux.cc',
- 'linux/latebindingsymboltable_linux.h',
- 'ios/audio_device_ios.cc',
-@@ -126,28 +124,36 @@
- },
- }],
- ['OS=="linux"', {
-- 'defines': [
-- 'LINUX_ALSA',
-- ],
- 'link_settings': {
- 'libraries': [
- '-ldl',
- ],
- },
-- 'conditions': [
-- ['include_pulse_audio==1', {
-- 'defines': [
-- 'LINUX_PULSE',
-- ],
-- 'sources': [
-- 'linux/audio_device_pulse_linux.cc',
-- 'linux/audio_device_pulse_linux.h',
-- 'linux/audio_mixer_manager_pulse_linux.cc',
-- 'linux/audio_mixer_manager_pulse_linux.h',
-- 'linux/pulseaudiosymboltable_linux.cc',
-- 'linux/pulseaudiosymboltable_linux.h',
-- ],
-- }],
-+ }],
-+ ['include_alsa_audio==1', {
-+ 'defines': [
-+ 'LINUX_ALSA',
-+ ],
-+ 'sources': [
-+ 'linux/alsasymboltable_linux.cc',
-+ 'linux/alsasymboltable_linux.h',
-+ 'linux/audio_device_alsa_linux.cc',
-+ 'linux/audio_device_alsa_linux.h',
-+ 'linux/audio_mixer_manager_alsa_linux.cc',
-+ 'linux/audio_mixer_manager_alsa_linux.h',
-+ ],
-+ }],
-+ ['include_pulse_audio==1', {
-+ 'defines': [
-+ 'LINUX_PULSE',
-+ ],
-+ 'sources': [
-+ 'linux/audio_device_pulse_linux.cc',
-+ 'linux/audio_device_pulse_linux.h',
-+ 'linux/audio_mixer_manager_pulse_linux.cc',
-+ 'linux/audio_mixer_manager_pulse_linux.h',
-+ 'linux/pulseaudiosymboltable_linux.cc',
-+ 'linux/pulseaudiosymboltable_linux.h',
- ],
- }],
- ['OS=="mac" or OS=="ios"', {
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device__impl.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device__impl.cc
new file mode 100644
index 00000000000..bae0d588ec8
--- /dev/null
+++ b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device__impl.cc
@@ -0,0 +1,71 @@
+$NetBSD: patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device__impl.cc,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- media/webrtc/trunk/webrtc/modules/audio_device/audio_device_impl.cc.orig 2013-09-10 03:43:47.000000000 +0000
++++ media/webrtc/trunk/webrtc/modules/audio_device/audio_device_impl.cc
+@@ -16,7 +16,9 @@
+ #include <assert.h>
+ #include <string.h>
+
+-#if defined(_WIN32)
++#if defined(WEBRTC_DUMMY_AUDIO_BUILD)
++// do not include platform specific headers
++#elif defined(_WIN32)
+ #include "audio_device_utility_win.h"
+ #include "audio_device_wave_win.h"
+ #if defined(WEBRTC_WINDOWS_CORE_AUDIO_BUILD)
+@@ -32,14 +34,8 @@
+ #include <stdlib.h>
+ #include "audio_device_utility_android.h"
+ #include "audio_device_jni_android.h"
+-#elif defined(WEBRTC_LINUX)
++#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
+ #include "audio_device_utility_linux.h"
+- #if defined(LINUX_ALSA)
+- #include "audio_device_alsa_linux.h"
+- #endif
+- #if defined(LINUX_PULSE)
+- #include "audio_device_pulse_linux.h"
+- #endif
+ #elif defined(WEBRTC_IOS)
+ #include "audio_device_utility_ios.h"
+ #include "audio_device_ios.h"
+@@ -47,6 +43,12 @@
+ #include "audio_device_utility_mac.h"
+ #include "audio_device_mac.h"
+ #endif
++#if defined(LINUX_ALSA)
++ #include "audio_device_alsa_linux.h"
++#endif
++#if defined(LINUX_PULSE)
++ #include "audio_device_pulse_linux.h"
++#endif
+ #include "audio_device_dummy.h"
+ #include "audio_device_utility_dummy.h"
+ #include "critical_section_wrapper.h"
+@@ -161,7 +163,7 @@ WebRtc_Word32 AudioDeviceModuleImpl::Che
+ #elif defined(WEBRTC_ANDROID)
+ platform = kPlatformAndroid;
+ WEBRTC_TRACE(kTraceInfo, kTraceAudioDevice, _id, "current platform is ANDROID");
+-#elif defined(WEBRTC_LINUX)
++#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
+ platform = kPlatformLinux;
+ WEBRTC_TRACE(kTraceInfo, kTraceAudioDevice, _id, "current platform is LINUX");
+ #elif defined(WEBRTC_IOS)
+@@ -301,7 +303,7 @@ WebRtc_Word32 AudioDeviceModuleImpl::Cre
+
+ // Create the *Linux* implementation of the Audio Device
+ //
+-#elif defined(WEBRTC_LINUX)
++#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
+ if ((audioLayer == kLinuxPulseAudio) || (audioLayer == kPlatformDefaultAudio))
+ {
+ #if defined(LINUX_PULSE)
+@@ -347,7 +349,7 @@ WebRtc_Word32 AudioDeviceModuleImpl::Cre
+ //
+ ptrAudioDeviceUtility = new AudioDeviceUtilityLinux(Id());
+ }
+-#endif // #if defined(WEBRTC_LINUX)
++#endif // #if defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
+
+ // Create the *iPhone* implementation of the Audio Device
+ //
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device__utility.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device__utility.cc
deleted file mode 100644
index 7b9d60cf745..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device__utility.cc
+++ /dev/null
@@ -1,21 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_modules_audio__device_audio__device__utility.cc,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/modules/audio_device/audio_device_utility.cc.orig 2013-05-11 19:19:45.000000000 +0000
-+++ media/webrtc/trunk/webrtc/modules/audio_device/audio_device_utility.cc
-@@ -46,7 +46,7 @@ bool AudioDeviceUtility::StringCompare(
-
- } // namespace webrtc
-
--#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
-
- // ============================================================================
- // Linux & Mac
-@@ -109,6 +109,6 @@ bool AudioDeviceUtility::StringCompare(
-
- } // namespace webrtc
-
--#endif // defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#endif // defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
-
-
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_audio__device_test_audio__device__test__api.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_audio__device_test_audio__device__test__api.cc
new file mode 100644
index 00000000000..e5c511ca1a9
--- /dev/null
+++ b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_audio__device_test_audio__device__test__api.cc
@@ -0,0 +1,31 @@
+$NetBSD: patch-media_webrtc_trunk_webrtc_modules_audio__device_test_audio__device__test__api.cc,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- media/webrtc/trunk/webrtc/modules/audio_device/test/audio_device_test_api.cc.orig 2013-09-10 03:43:47.000000000 +0000
++++ media/webrtc/trunk/webrtc/modules/audio_device/test/audio_device_test_api.cc
+@@ -196,7 +196,7 @@ class AudioDeviceAPITest: public testing
+ // Create default implementation instance
+ EXPECT_TRUE((audio_device_ = AudioDeviceModuleImpl::Create(
+ kId, AudioDeviceModule::kPlatformDefaultAudio)) != NULL);
+-#elif defined(WEBRTC_LINUX)
++#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
+ EXPECT_TRUE((audio_device_ = AudioDeviceModuleImpl::Create(
+ kId, AudioDeviceModule::kWindowsWaveAudio)) == NULL);
+ EXPECT_TRUE((audio_device_ = AudioDeviceModuleImpl::Create(
+@@ -1689,7 +1689,7 @@ TEST_F(AudioDeviceAPITest, CPULoad) {
+
+ // TODO(kjellander): Fix flakiness causing failures on Windows.
+ // TODO(phoglund): Fix flakiness causing failures on Linux.
+-#if !defined(_WIN32) && !defined(WEBRTC_LINUX)
++#if !defined(_WIN32) && !defined(WEBRTC_LINUX) && !defined(WEBRTC_BSD)
+ TEST_F(AudioDeviceAPITest, StartAndStopRawOutputFileRecording) {
+ // NOTE: this API is better tested in a functional test
+ CheckInitialPlayoutStates();
+@@ -1758,7 +1758,7 @@ TEST_F(AudioDeviceAPITest, StartAndStopR
+ // - size of raw_input_not_recording.pcm shall be 0
+ // - size of raw_input_not_recording.pcm shall be > 0
+ }
+-#endif // !WIN32 && !WEBRTC_LINUX
++#endif // !WIN32 && !WEBRTC_LINUX && !defined(WEBRTC_BSD)
+
+ TEST_F(AudioDeviceAPITest, RecordingSampleRate) {
+ WebRtc_UWord32 sampleRate(0);
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_rtp__rtcp_source_forward__error__correction.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_rtp__rtcp_source_forward__error__correction.cc
deleted file mode 100644
index f0a1909bb2d..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_rtp__rtcp_source_forward__error__correction.cc
+++ /dev/null
@@ -1,12 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_modules_rtp__rtcp_source_forward__error__correction.cc,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/modules/rtp_rtcp/source/forward_error_correction.cc.orig 2013-05-11 19:19:45.000000000 +0000
-+++ media/webrtc/trunk/webrtc/modules/rtp_rtcp/source/forward_error_correction.cc
-@@ -12,6 +12,7 @@
-
- #include <algorithm>
- #include <cassert>
-+#include <cstdlib> // for abs()
- #include <cstring>
- #include <iterator>
-
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_rtp__rtcp_source_rtp__utility.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_rtp__rtcp_source_rtp__utility.cc
deleted file mode 100644
index d81103babb2..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_rtp__rtcp_source_rtp__utility.cc
+++ /dev/null
@@ -1,49 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_modules_rtp__rtcp_source_rtp__utility.cc,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/modules/rtp_rtcp/source/rtp_utility.cc.orig 2013-05-11 19:19:45.000000000 +0000
-+++ media/webrtc/trunk/webrtc/modules/rtp_rtcp/source/rtp_utility.cc
-@@ -18,7 +18,7 @@
- #include <Windows.h> // FILETIME
- #include <WinSock.h> // timeval
- #include <MMSystem.h> // timeGetTime
--#elif ((defined WEBRTC_LINUX) || (defined WEBRTC_MAC))
-+#elif ((defined WEBRTC_LINUX) || (defined WEBRTC_BSD) || (defined WEBRTC_MAC))
- #include <sys/time.h> // gettimeofday
- #include <time.h>
- #endif
-@@ -156,7 +156,7 @@ void get_time(WindowsHelpTimer* help_tim
- WindowsHelpTimer* _helpTimer;
- };
-
--#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
-
- // A clock reading times from the POSIX API.
- class UnixSystemClock : public RtpRtcpClock {
-@@ -214,7 +214,7 @@ void WindowsSystemClock::CurrentNTP(WebR
- frac = (WebRtc_UWord32)dtemp;
- }
-
--#elif ((defined WEBRTC_LINUX) || (defined WEBRTC_MAC))
-+#elif ((defined WEBRTC_LINUX) || (defined WEBRTC_BSD) || (defined WEBRTC_MAC))
-
- WebRtc_Word64 UnixSystemClock::GetTimeInMS() {
- return TickTime::MillisecondTimestamp();
-@@ -253,7 +253,7 @@ static WindowsHelpTimer global_help_time
- RtpRtcpClock* GetSystemClock() {
- #if defined(_WIN32)
- return new WindowsSystemClock(&global_help_timer);
--#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- return new UnixSystemClock();
- #else
- return NULL;
-@@ -330,7 +330,7 @@ bool StringCompare(const char* str1, con
- const WebRtc_UWord32 length) {
- return (_strnicmp(str1, str2, length) == 0) ? true : false;
- }
--#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- bool StringCompare(const char* str1, const char* str2,
- const WebRtc_UWord32 length) {
- return (strncasecmp(str1, str2, length) == 0) ? true : false;
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_udp__transport_source_udp__transport__impl.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_udp__transport_source_udp__transport__impl.cc
deleted file mode 100644
index a697624c2d3..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_udp__transport_source_udp__transport__impl.cc
+++ /dev/null
@@ -1,90 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_modules_udp__transport_source_udp__transport__impl.cc,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/modules/udp_transport/source/udp_transport_impl.cc.orig 2013-05-11 19:19:45.000000000 +0000
-+++ media/webrtc/trunk/webrtc/modules/udp_transport/source/udp_transport_impl.cc
-@@ -18,16 +18,16 @@
- #if defined(_WIN32)
- #include <winsock2.h>
- #include <ws2tcpip.h>
--#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- #include <arpa/inet.h>
- #include <ctype.h>
- #include <fcntl.h>
- #include <netdb.h>
-+#include <sys/socket.h>
- #include <net/if.h>
- #include <netinet/in.h>
- #include <stdlib.h>
- #include <sys/ioctl.h>
--#include <sys/socket.h>
- #include <sys/time.h>
- #include <unistd.h>
- #ifndef WEBRTC_IOS
-@@ -36,9 +36,11 @@
- #endif // defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-
- #if defined(WEBRTC_MAC)
--#include <ifaddrs.h>
- #include <machine/types.h>
- #endif
-+#if defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
-+#include <ifaddrs.h>
-+#endif
- #if defined(WEBRTC_LINUX)
- #include <linux/netlink.h>
- #include <linux/rtnetlink.h>
-@@ -51,7 +53,7 @@
- #include "typedefs.h"
- #include "udp_socket_manager_wrapper.h"
-
--#if defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#if defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- #define GetLastError() errno
-
- #define IFRSIZE ((int)(size * sizeof (struct ifreq)))
-@@ -61,7 +63,7 @@
- (int)(nlh)->nlmsg_len >= (int)sizeof(struct nlmsghdr) && \
- (int)(nlh)->nlmsg_len <= (len))
-
--#endif // defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#endif // defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
-
- namespace webrtc {
-
-@@ -2371,7 +2373,7 @@ WebRtc_Word32 UdpTransport::InetPresenta
- const char* src,
- void* dst)
- {
--#if defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#if defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- const WebRtc_Word32 result = inet_pton(af, src, dst);
- return result > 0 ? 0 : -1;
-
-@@ -2493,7 +2495,7 @@ WebRtc_Word32 UdpTransport::LocalHostAdd
- "getaddrinfo failed to find address");
- return -1;
-
--#elif defined(WEBRTC_MAC)
-+#elif defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- struct ifaddrs* ptrIfAddrs = NULL;
- struct ifaddrs* ptrIfAddrsStart = NULL;
-
-@@ -2685,7 +2687,7 @@ WebRtc_Word32 UdpTransport::LocalHostAdd
- "gethostbyname failed, error:%d", error);
- return -1;
- }
--#elif (defined(WEBRTC_MAC))
-+#elif (defined(WEBRTC_BSD) || defined(WEBRTC_MAC))
- char localname[255];
- if (gethostname(localname, 255) != -1)
- {
-@@ -2824,7 +2826,7 @@ WebRtc_Word32 UdpTransport::IPAddress(co
- sourcePort = htons(source_port);
- return 0;
-
-- #elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+ #elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- WebRtc_Word32 ipFamily = address._sockaddr_storage.sin_family;
- const void* ptrNumericIP = NULL;
-
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_utility_source_rtp__dump__impl.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_utility_source_rtp__dump__impl.cc
deleted file mode 100644
index 1e7aba3452b..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_utility_source_rtp__dump__impl.cc
+++ /dev/null
@@ -1,22 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_modules_utility_source_rtp__dump__impl.cc,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/modules/utility/source/rtp_dump_impl.cc.orig 2013-05-11 19:19:45.000000000 +0000
-+++ media/webrtc/trunk/webrtc/modules/utility/source/rtp_dump_impl.cc
-@@ -19,7 +19,7 @@
- #if defined(_WIN32)
- #include <Windows.h>
- #include <mmsystem.h>
--#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- #include <string.h>
- #include <sys/time.h>
- #include <time.h>
-@@ -238,7 +238,7 @@ inline WebRtc_UWord32 RtpDumpImpl::GetTi
- {
- #if defined(_WIN32)
- return timeGetTime();
--#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- struct timeval tv;
- struct timezone tz;
- unsigned long val;
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_device__info__impl.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_device__info__impl.cc
deleted file mode 100644
index 09efe9d5f26..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_device__info__impl.cc
+++ /dev/null
@@ -1,31 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_modules_video__capture_device__info__impl.cc,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/modules/video_capture/device_info_impl.cc.orig 2013-05-11 19:19:45.000000000 +0000
-+++ media/webrtc/trunk/webrtc/modules/video_capture/device_info_impl.cc
-@@ -54,7 +54,7 @@ WebRtc_Word32 DeviceInfoImpl::NumberOfCa
- if (_lastUsedDeviceNameLength == strlen((char*) deviceUniqueIdUTF8))
- {
- // Is it the same device that is asked for again.
--#if defined(WEBRTC_MAC) || defined(WEBRTC_LINUX)
-+#if defined(WEBRTC_MAC) || defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
- if(strncasecmp((char*)_lastUsedDeviceName,
- (char*) deviceUniqueIdUTF8,
- _lastUsedDeviceNameLength)==0)
-@@ -91,7 +91,7 @@ WebRtc_Word32 DeviceInfoImpl::GetCapabil
- ReadLockScoped cs(_apiLock);
-
- if ((_lastUsedDeviceNameLength != strlen((char*) deviceUniqueIdUTF8))
--#if defined(WEBRTC_MAC) || defined(WEBRTC_LINUX)
-+#if defined(WEBRTC_MAC) || defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
- || (strncasecmp((char*)_lastUsedDeviceName,
- (char*) deviceUniqueIdUTF8,
- _lastUsedDeviceNameLength)!=0))
-@@ -155,7 +155,7 @@ WebRtc_Word32 DeviceInfoImpl::GetBestMat
-
- ReadLockScoped cs(_apiLock);
- if ((_lastUsedDeviceNameLength != strlen((char*) deviceUniqueIdUTF8))
--#if defined(WEBRTC_MAC) || defined(WEBRTC_LINUX)
-+#if defined(WEBRTC_MAC) || defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
- || (strncasecmp((char*)_lastUsedDeviceName,
- (char*) deviceUniqueIdUTF8,
- _lastUsedDeviceNameLength)!=0))
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc
index c49a6bb89d0..f480b84543e 100644
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc
+++ b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc
@@ -1,18 +1,11 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc,v 1.1 2013/05/23 13:12:13 ryoon Exp $
+$NetBSD: patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__info__linux.cc,v 1.2 2013/09/19 12:37:50 ryoon Exp $
---- media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc.orig 2013-05-11 19:19:45.000000000 +0000
+--- media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc.orig 2013-09-10 03:43:47.000000000 +0000
+++ media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc
-@@ -19,12 +19,30 @@
- #include <stdlib.h>
-
- //v4l includes
-+#if defined(__DragonFly__) || defined(__NetBSD__) || defined(__OpenBSD__)
-+#include <sys/videoio.h>
-+#elif defined(__sun)
-+#include <sys/videodev2.h>
-+#else
+@@ -26,10 +26,30 @@
+ #else
#include <linux/videodev2.h>
-+#endif
+ #endif
+#ifdef HAVE_LIBV4L2
+#include <libv4l2.h>
+#endif
@@ -20,7 +13,15 @@ $NetBSD: patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__in
#include "ref_count.h"
#include "trace.h"
-
++#ifdef HAVE_LIBV4L2
++#define open v4l2_open
++#define close v4l2_close
++#define dup v4l2_dup
++#define ioctl v4l2_ioctl
++#define mmap v4l2_mmap
++#define munmap v4l2_munmap
++#endif
++
+#ifdef HAVE_LIBV4L2
+#define open v4l2_open
+#define close v4l2_close
@@ -29,11 +30,10 @@ $NetBSD: patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_device__in
+#define mmap v4l2_mmap
+#define munmap v4l2_munmap
+#endif
-+
+
namespace webrtc
{
- namespace videocapturemodule
-@@ -130,6 +148,11 @@ WebRtc_Word32 DeviceInfoLinux::GetDevice
+@@ -137,6 +157,11 @@ WebRtc_Word32 DeviceInfoLinux::GetDevice
memset(deviceNameUTF8, 0, deviceNameLength);
memcpy(cameraName, cap.card, sizeof(cap.card));
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc
index 46bd089c564..3061ec57cd2 100644
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc
+++ b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc
@@ -1,33 +1,18 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc,v 1.1 2013/05/23 13:12:13 ryoon Exp $
+$NetBSD: patch-media_webrtc_trunk_webrtc_modules_video__capture_linux_video__capture__linux.cc,v 1.2 2013/09/19 12:37:50 ryoon Exp $
---- media/webrtc/trunk/webrtc/modules/video_capture/linux/video_capture_linux.cc.orig 2013-05-11 19:19:45.000000000 +0000
+--- media/webrtc/trunk/webrtc/modules/video_capture/linux/video_capture_linux.cc.orig 2013-09-10 03:43:47.000000000 +0000
+++ media/webrtc/trunk/webrtc/modules/video_capture/linux/video_capture_linux.cc
-@@ -12,12 +12,23 @@
- #include <unistd.h>
- #include <sys/stat.h>
- #include <fcntl.h>
--#include <linux/videodev2.h>
- #include <errno.h>
- #include <stdio.h>
- #include <sys/mman.h>
- #include <string.h>
-
-+//v4l includes
-+#if defined(__DragonFly__) || defined(__NetBSD__) || defined(__OpenBSD__)
-+#include <sys/videoio.h>
-+#elif defined(__sun)
-+#include <sys/videodev2.h>
-+#else
-+#include <linux/videodev2.h>
-+#endif
+@@ -25,6 +25,9 @@
+ #else
+ #include <linux/videodev2.h>
+ #endif
+#ifdef HAVE_LIBV4L2
+#include <libv4l2.h>
+#endif
-+
+
#include <new>
- #include "ref_count.h"
-@@ -26,6 +37,15 @@
+@@ -34,6 +37,15 @@
#include "critical_section_wrapper.h"
#include "video_capture_linux.h"
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi
index 4efa9f66844..443bae61535 100644
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi
+++ b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi
@@ -1,6 +1,6 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi,v 1.1 2013/05/23 13:12:13 ryoon Exp $
+$NetBSD: patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.gypi,v 1.2 2013/09/19 12:37:50 ryoon Exp $
---- media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi.orig 2013-05-11 19:19:45.000000000 +0000
+--- media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi.orig 2013-09-10 03:43:47.000000000 +0000
+++ media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi
@@ -7,6 +7,9 @@
# be found in the AUTHORS file in the root of the source tree.
@@ -12,12 +12,10 @@ $NetBSD: patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.g
'targets': [
{
'target_name': 'video_capture_module',
-@@ -48,7 +51,17 @@
- ],
+@@ -49,6 +52,16 @@
}, { # include_internal_video_capture == 1
'conditions': [
-- ['OS=="linux"', {
-+ ['include_v4l2_video_capture==1', {
+ ['include_v4l2_video_capture==1', {
+ 'conditions': [
+ ['use_libv4l2==1', {
+ 'defines': [
@@ -31,32 +29,3 @@ $NetBSD: patch-media_webrtc_trunk_webrtc_modules_video__capture_video__capture.g
'include_dirs': [
'linux',
],
-@@ -157,7 +170,7 @@
- 'test/video_capture_main_mac.mm',
- ],
- 'conditions': [
-- ['OS=="mac" or OS=="linux"', {
-+ ['OS!="win" and OS!="android"', {
- 'cflags': [
- '-Wno-write-strings',
- ],
-@@ -165,13 +178,17 @@
- '-lpthread -lm',
- ],
- }],
-- ['OS=="linux"', {
-+ ['include_v4l2_video_capture==1', {
- 'libraries': [
-- '-lrt',
- '-lXext',
- '-lX11',
- ],
- }],
-+ ['OS=="linux"', {
-+ 'libraries': [
-+ '-lrt',
-+ ],
-+ }],
- ['OS=="mac"', {
- 'dependencies': [
- # Link with a special main for mac so we can use the webcam.
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_interface_asm__defines.h b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_interface_asm__defines.h
deleted file mode 100644
index 04cf5fe9213..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_interface_asm__defines.h
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_interface_asm__defines.h,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/system_wrappers/interface/asm_defines.h.orig 2013-05-11 19:19:46.000000000 +0000
-+++ media/webrtc/trunk/webrtc/system_wrappers/interface/asm_defines.h
-@@ -11,7 +11,7 @@
- #ifndef WEBRTC_SYSTEM_WRAPPERS_INTERFACE_ASM_DEFINES_H_
- #define WEBRTC_SYSTEM_WRAPPERS_INTERFACE_ASM_DEFINES_H_
-
--#if defined(__linux__) && defined(__ELF__)
-+#if (defined(__linux__) || defined(__FreeBSD__)) && defined(__ELF__)
- .section .note.GNU-stack,"",%progbits
- #endif
-
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_interface_tick__util.h b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_interface_tick__util.h
deleted file mode 100644
index 83322b8c75b..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_interface_tick__util.h
+++ /dev/null
@@ -1,67 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_interface_tick__util.h,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/system_wrappers/interface/tick_util.h.orig 2013-05-11 19:19:46.000000000 +0000
-+++ media/webrtc/trunk/webrtc/system_wrappers/interface/tick_util.h
-@@ -194,7 +194,7 @@ inline WebRtc_Word64 TickTime::QueryOsFo
- }
- result.ticks_ = now + (num_wrap_time_get_time << 32);
- #endif
--#elif defined(WEBRTC_LINUX)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
- struct timespec ts;
- // TODO(wu): Remove CLOCK_REALTIME implementation.
- #ifdef WEBRTC_CLOCK_TYPE_REALTIME
-@@ -241,7 +241,7 @@ inline WebRtc_Word64 TickTime::Milliseco
- #else
- return ticks;
- #endif
--#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- return ticks / 1000000LL;
- #else
- return ticks / 1000LL;
-@@ -258,7 +258,7 @@ inline WebRtc_Word64 TickTime::Microseco
- #else
- return ticks * 1000LL;
- #endif
--#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- return ticks / 1000LL;
- #else
- return ticks;
-@@ -278,7 +278,7 @@ inline WebRtc_Word64 TickTime::Milliseco
- #else
- return ms;
- #endif
--#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- return ms * 1000000LL;
- #else
- return ms * 1000LL;
-@@ -294,7 +294,7 @@ inline WebRtc_Word64 TickTime::TicksToMi
- #else
- return ticks;
- #endif
--#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- return ticks / 1000000LL;
- #else
- return ticks / 1000LL;
-@@ -323,7 +323,7 @@ inline WebRtc_Word64 TickInterval::Milli
- // interval_ is in ms
- return interval_;
- #endif
--#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- // interval_ is in ns
- return interval_ / 1000000;
- #else
-@@ -342,7 +342,7 @@ inline WebRtc_Word64 TickInterval::Micro
- // interval_ is in ms
- return interval_ * 1000LL;
- #endif
--#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- // interval_ is in ns
- return interval_ / 1000;
- #else
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_atomic32__posix.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_atomic32__posix.cc
deleted file mode 100644
index 6d669160392..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_atomic32__posix.cc
+++ /dev/null
@@ -1,12 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_source_atomic32__posix.cc,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/system_wrappers/source/atomic32_posix.cc.orig 2013-05-11 19:19:46.000000000 +0000
-+++ media/webrtc/trunk/webrtc/system_wrappers/source/atomic32_posix.cc
-@@ -12,7 +12,6 @@
-
- #include <assert.h>
- #include <inttypes.h>
--#include <malloc.h>
-
- #include "common_types.h"
-
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_condition__variable.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_condition__variable.cc
index 7787e060f2d..1a2f4b79486 100644
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_condition__variable.cc
+++ b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_condition__variable.cc
@@ -1,33 +1,13 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_source_condition__variable.cc,v 1.1 2013/05/23 13:12:13 ryoon Exp $
+$NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_source_condition__variable.cc,v 1.2 2013/09/19 12:37:50 ryoon Exp $
---- media/webrtc/trunk/webrtc/system_wrappers/source/condition_variable.cc.orig 2013-05-11 19:19:46.000000000 +0000
+--- media/webrtc/trunk/webrtc/system_wrappers/source/condition_variable.cc.orig 2013-09-10 03:43:47.000000000 +0000
+++ media/webrtc/trunk/webrtc/system_wrappers/source/condition_variable.cc
-@@ -8,14 +8,16 @@
- * be found in the AUTHORS file in the root of the source tree.
- */
-
-+#include "condition_variable_wrapper.h"
-+
- #if defined(_WIN32)
- #include <windows.h>
- #include "condition_variable_win.h"
--#include "condition_variable_wrapper.h"
--#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
+@@ -16,6 +16,8 @@
+ #elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
#include <pthread.h>
#include "condition_variable_posix.h"
--#include "condition_variable_wrapper.h"
+#else
+#include <stddef.h> // for NULL
#endif
namespace webrtc {
-@@ -23,7 +25,7 @@ namespace webrtc {
- ConditionVariableWrapper* ConditionVariableWrapper::CreateConditionVariable() {
- #if defined(_WIN32)
- return new ConditionVariableWindows;
--#elif defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#elif defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- return ConditionVariablePosix::Create();
- #else
- return NULL;
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_condition__variable__posix.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_condition__variable__posix.cc
deleted file mode 100644
index 0c4edac72a7..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_condition__variable__posix.cc
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_source_condition__variable__posix.cc,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/system_wrappers/source/condition_variable_posix.cc.orig 2013-05-11 19:19:46.000000000 +0000
-+++ media/webrtc/trunk/webrtc/system_wrappers/source/condition_variable_posix.cc
-@@ -79,7 +79,7 @@ bool ConditionVariablePosix::SleepCS(Cri
- unsigned long max_time_inMS) {
- const unsigned long INFINITE = 0xFFFFFFFF;
- const int MILLISECONDS_PER_SECOND = 1000;
--#ifndef WEBRTC_LINUX
-+#if !defined(WEBRTC_LINUX) && !defined(WEBRTC_BSD)
- const int MICROSECONDS_PER_MILLISECOND = 1000;
- #endif
- const int NANOSECONDS_PER_SECOND = 1000000000;
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_cpu.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_cpu.cc
deleted file mode 100644
index 39e0ccb1eb9..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_cpu.cc
+++ /dev/null
@@ -1,22 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_source_cpu.cc,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/system_wrappers/source/cpu.cc.orig 2013-05-11 19:19:46.000000000 +0000
-+++ media/webrtc/trunk/webrtc/system_wrappers/source/cpu.cc
-@@ -14,7 +14,7 @@
- #include "cpu_win.h"
- #elif defined(WEBRTC_MAC)
- #include "cpu_mac.h"
--#elif defined(WEBRTC_ANDROID)
-+#elif defined(WEBRTC_ANDROID) || defined(WEBRTC_BSD)
- // Not implemented yet, might be possible to use Linux implementation
- #else // defined(WEBRTC_LINUX)
- #include "cpu_linux.h"
-@@ -26,7 +26,7 @@ CpuWrapper* CpuWrapper::CreateCpu() {
- return new CpuWindows();
- #elif defined(WEBRTC_MAC)
- return new CpuWrapperMac();
--#elif defined(WEBRTC_ANDROID)
-+#elif defined(WEBRTC_ANDROID) || defined(WEBRTC_BSD)
- return 0;
- #else
- return new CpuLinux();
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_cpu__info.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_cpu__info.cc
deleted file mode 100644
index a32bb735dc1..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_cpu__info.cc
+++ /dev/null
@@ -1,50 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_source_cpu__info.cc,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/system_wrappers/source/cpu_info.cc.orig 2013-05-11 19:19:46.000000000 +0000
-+++ media/webrtc/trunk/webrtc/system_wrappers/source/cpu_info.cc
-@@ -12,13 +12,15 @@
-
- #if defined(_WIN32)
- #include <Windows.h>
--#elif defined(WEBRTC_MAC)
--#include <sys/sysctl.h>
-+#elif defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- #include <sys/types.h>
-+#include <sys/sysctl.h>
- #elif defined(WEBRTC_ANDROID)
- // Not implemented yet, might be possible to use Linux implementation
--#else // defined(WEBRTC_LINUX)
-+#elif defined(WEBRTC_LINUX)
- #include <sys/sysinfo.h>
-+#else // defined(_SC_NPROCESSORS_ONLN)
-+#include <unistd.h>
- #endif
-
- #include "trace.h"
-@@ -41,8 +43,15 @@ WebRtc_UWord32 CpuInfo::DetectNumberOfCo
- WEBRTC_TRACE(kTraceStateInfo, kTraceUtility, -1,
- "Available number of cores:%d", number_of_cores_);
-
--#elif defined(WEBRTC_MAC)
-- int name[] = {CTL_HW, HW_AVAILCPU};
-+#elif defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
-+ int name[] = {
-+ CTL_HW,
-+#ifdef HW_AVAILCPU
-+ HW_AVAILCPU,
-+#else
-+ HW_NCPU,
-+#endif
-+ };
- int ncpu;
- size_t size = sizeof(ncpu);
- if (0 == sysctl(name, 2, &ncpu, &size, NULL, 0)) {
-@@ -54,6 +63,8 @@ WebRtc_UWord32 CpuInfo::DetectNumberOfCo
- "Failed to get number of cores");
- number_of_cores_ = 1;
- }
-+#elif defined(_SC_NPROCESSORS_ONLN)
-+ _numberOfCores = sysconf(_SC_NPROCESSORS_ONLN);
- #else
- WEBRTC_TRACE(kTraceWarning, kTraceUtility, -1,
- "No function to get number of cores");
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 1cb66ddae48..e31d5383489 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,75 +1,25 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.cc,v 1.2 2013/06/26 11:32:12 ryoon Exp $
+$NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.cc,v 1.3 2013/09/19 12:37:50 ryoon Exp $
---- 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.orig 2013-09-10 03:43:47.000000000 +0000
+++ media/webrtc/trunk/webrtc/system_wrappers/source/thread_posix.cc
-@@ -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>
-+#endif
-+
-+#if defined(WEBRTC_BSD) && !defined(__NetBSD__)
-+#include <pthread_np.h>
-+#endif
-+
- #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 +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());
-+#elif defined(__NetBSD__)
-+ return _lwp_self();
-+#elif defined(__DragonFly__)
-+ return lwp_gettid();
-+#elif defined(__OpenBSD__)
-+ return reinterpret_cast<uintptr_t> (pthread_self());
-+#elif defined(__FreeBSD__)
-+# if __FreeBSD_version > 900030
-+ return pthread_getthreadid_np();
-+# else
-+ long lwpid;
-+ thr_self(&lwpid);
-+ return lwpid;
-+# endif
- #else
- return reinterpret_cast<uint32_t>(pthread_self());
- #endif
-@@ -172,7 +199,7 @@ ThreadPosix::~ThreadPosix() {
- delete crit_state_;
- }
-
--#define HAS_THREAD_ID !defined(WEBRTC_IOS) && !defined(WEBRTC_MAC)
-+#define HAS_THREAD_ID !defined(WEBRTC_IOS) && !defined(WEBRTC_MAC) && !defined(WEBRTC_BSD)
-
- bool ThreadPosix::Start(unsigned int& thread_id)
- {
-@@ -237,21 +264,43 @@ bool ThreadPosix::Start(unsigned int& th
+@@ -272,7 +272,7 @@ 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)) && (!defined(WEBRTC_GONK)))
+-#if defined(__FreeBSD__) || (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)) {
- return false;
+@@ -280,20 +280,34 @@ bool ThreadPosix::SetAffinity(const int*
}
-+#if defined(__FreeBSD__)
-+ cpuset_t mask;
+ #if defined(__FreeBSD__)
+ cpuset_t mask;
+#elif defined(__NetBSD__)
+ cpuset_t *mask;
-+#else
+ #else
cpu_set_t mask;
-+#endif
+ #endif
+#if defined(__NetBSD__)
+ cpuset_zero(mask);
+#else
@@ -85,27 +35,14 @@ $NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_source_thread__posix.c
CPU_SET(processor_numbers[processor], &mask);
+#endif
}
--#if defined(WEBRTC_ANDROID) || defined(WEBRTC_GONK)
-+#if defined(__FreeBSD__)
-+ const int result = pthread_setaffinity_np(thread_,
-+ sizeof(mask),
-+ &mask);
+ #if defined(__FreeBSD__)
+ const int result = pthread_setaffinity_np(thread_,
+ sizeof(mask),
+ &mask);
+#elif defined(__NetBSD__)
+ const int result = pthread_setaffinity_np(thread_,
+ sizeof(mask),
+ mask);
-+#elif defined(WEBRTC_ANDROID) || defined(WEBRTC_GONK)
+ #elif defined(WEBRTC_ANDROID) || defined(WEBRTC_GONK)
// Android.
const int result = syscall(__NR_sched_setaffinity,
- pid_,
-@@ -325,6 +374,10 @@ void ThreadPosix::Run() {
- if (set_thread_name_) {
- #ifdef WEBRTC_LINUX
- prctl(PR_SET_NAME, (unsigned long)name_, 0, 0, 0);
-+#elif defined(__NetBSD__)
-+ pthread_setname_np(pthread_self(), "%s", (void *)name_);
-+#elif defined(WEBRTC_BSD)
-+ pthread_set_name_np(pthread_self(), name_);
- #endif
- WEBRTC_TRACE(kTraceStateInfo, kTraceUtility, -1,
- "Thread with name:%s started ", name_);
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_trace__posix.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_trace__posix.cc
deleted file mode 100644
index 0330f2319f8..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_system__wrappers_source_trace__posix.cc
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_system__wrappers_source_trace__posix.cc,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/system_wrappers/source/trace_posix.cc.orig 2013-05-11 19:19:46.000000000 +0000
-+++ media/webrtc/trunk/webrtc/system_wrappers/source/trace_posix.cc
-@@ -54,7 +54,7 @@ WebRtc_Word32 TracePosix::AddTime(char*
- }
- struct tm buffer;
- const struct tm* system_time =
-- localtime_r(&system_time_high_res.tv_sec, &buffer);
-+ localtime_r((const time_t *)(&system_time_high_res.tv_sec), &buffer);
-
- const WebRtc_UWord32 ms_time = system_time_high_res.tv_usec / 1000;
- WebRtc_UWord32 prev_tickCount = 0;
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_typedefs.h b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_typedefs.h
deleted file mode 100644
index 65813c26e86..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_typedefs.h
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_typedefs.h,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/typedefs.h.orig 2013-05-11 19:19:46.000000000 +0000
-+++ media/webrtc/trunk/webrtc/typedefs.h
-@@ -21,7 +21,7 @@
- // For access to standard POSIXish features, use WEBRTC_POSIX instead of a
- // more specific macro.
- #if defined(WEBRTC_MAC) || defined(WEBRTC_LINUX) || \
-- defined(WEBRTC_ANDROID)
-+ defined(WEBRTC_ANDROID) || defined(WEBRTC_BSD)
- #define WEBRTC_POSIX
- #endif
-
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_video__engine_vie__defines.h b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_video__engine_vie__defines.h
deleted file mode 100644
index c5ab01ee68a..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_video__engine_vie__defines.h
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_video__engine_vie__defines.h,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/video_engine/vie_defines.h.orig 2013-05-11 19:19:46.000000000 +0000
-+++ media/webrtc/trunk/webrtc/video_engine/vie_defines.h
-@@ -173,7 +173,7 @@ inline int ChannelId(const int moduleId)
-
- // Linux specific.
- #ifndef WEBRTC_ANDROID
--#ifdef WEBRTC_LINUX
-+#if defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
- // Build information macros.
- #if defined(_DEBUG)
- #define BUILDMODE "d"
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_voice__engine_voe__network__impl.cc b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_voice__engine_voe__network__impl.cc
deleted file mode 100644
index 88e91a5694d..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_voice__engine_voe__network__impl.cc
+++ /dev/null
@@ -1,31 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_voice__engine_voe__network__impl.cc,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/voice_engine/voe_network_impl.cc.orig 2013-05-11 19:19:46.000000000 +0000
-+++ media/webrtc/trunk/webrtc/voice_engine/voe_network_impl.cc
-@@ -472,7 +472,7 @@ int VoENetworkImpl::SetSendTOS(int chann
- "SetSendTOS(channel=%d, DSCP=%d, useSetSockopt=%d)",
- channel, DSCP, useSetSockopt);
-
--#if !defined(_WIN32) && !defined(WEBRTC_LINUX) && !defined(WEBRTC_MAC)
-+#if !defined(_WIN32) && !defined(WEBRTC_LINUX) && !defined(WEBRTC_BSD) && !defined(WEBRTC_MAC)
- _shared->SetLastError(VE_FUNC_NOT_SUPPORTED, kTraceWarning,
- "SetSendTOS() is not supported on this platform");
- return -1;
-@@ -528,7 +528,7 @@ int VoENetworkImpl::SetSendTOS(int chann
- "SetSendTOS() external transport is enabled");
- return -1;
- }
--#if defined(WEBRTC_LINUX) || defined(WEBRTC_MAC)
-+#if defined(WEBRTC_LINUX) || defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
- useSetSockopt = true;
- WEBRTC_TRACE(kTraceInfo, kTraceVoice, VoEId(_shared->instance_id(), -1),
- " force useSetSockopt=true since there is no alternative"
-@@ -551,7 +551,7 @@ int VoENetworkImpl::GetSendTOS(int chann
- WEBRTC_TRACE(kTraceApiCall, kTraceVoice, VoEId(_shared->instance_id(), -1),
- "GetSendTOS(channel=%d)", channel);
-
--#if !defined(_WIN32) && !defined(WEBRTC_LINUX) && !defined(WEBRTC_MAC)
-+#if !defined(_WIN32) && !defined(WEBRTC_LINUX) && !defined(WEBRTC_BSD) && !defined(WEBRTC_MAC)
- _shared->SetLastError(VE_FUNC_NOT_SUPPORTED, kTraceWarning,
- "GetSendTOS() is not supported on this platform");
- return -1;
diff --git a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_voice__engine_voice__engine__defines.h b/www/firefox/patches/patch-media_webrtc_trunk_webrtc_voice__engine_voice__engine__defines.h
deleted file mode 100644
index c49d461a40f..00000000000
--- a/www/firefox/patches/patch-media_webrtc_trunk_webrtc_voice__engine_voice__engine__defines.h
+++ /dev/null
@@ -1,38 +0,0 @@
-$NetBSD: patch-media_webrtc_trunk_webrtc_voice__engine_voice__engine__defines.h,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- media/webrtc/trunk/webrtc/voice_engine/voice_engine_defines.h.orig 2013-05-11 19:19:46.000000000 +0000
-+++ media/webrtc/trunk/webrtc/voice_engine/voice_engine_defines.h
-@@ -414,7 +414,7 @@ namespace webrtc
- // *** WEBRTC_MAC ***
- // including iPhone
-
--#ifdef WEBRTC_MAC
-+#if defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
-
- #include <pthread.h>
- #include <sys/types.h>
-@@ -431,6 +431,7 @@ namespace webrtc
- #include <sched.h>
- #include <sys/time.h>
- #include <time.h>
-+#if !defined(WEBRTC_BSD)
- #include <AudioUnit/AudioUnit.h>
- #if !defined(WEBRTC_IOS)
- #include <CoreServices/CoreServices.h>
-@@ -439,6 +440,7 @@ namespace webrtc
- #include <AudioToolbox/AudioConverter.h>
- #include <CoreAudio/HostTime.h>
- #endif
-+#endif
-
- #define DWORD unsigned long int
- #define WINAPI
-@@ -531,7 +533,7 @@ namespace webrtc
-
- #else
- #define IPHONE_NOT_SUPPORTED(stat)
--#endif // #ifdef WEBRTC_MAC
-+#endif // #if defined(WEBRTC_BSD) || defined(WEBRTC_MAC)
-
-
-
diff --git a/www/firefox/patches/patch-media_webrtc_webrtc__config.gypi b/www/firefox/patches/patch-media_webrtc_webrtc__config.gypi
deleted file mode 100644
index f16543444ac..00000000000
--- a/www/firefox/patches/patch-media_webrtc_webrtc__config.gypi
+++ /dev/null
@@ -1,12 +0,0 @@
-$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-06-17 22:13:21.000000000 +0000
-+++ media/webrtc/webrtc_config.gypi
-@@ -14,7 +14,6 @@
- 'include_internal_video_render': 0,
- 'clang_use_chrome_plugins': 0,
- '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
diff --git a/www/firefox/patches/patch-mfbt_Atomics.h b/www/firefox/patches/patch-mfbt_Atomics.h
new file mode 100644
index 00000000000..2180a116324
--- /dev/null
+++ b/www/firefox/patches/patch-mfbt_Atomics.h
@@ -0,0 +1,13 @@
+$NetBSD: patch-mfbt_Atomics.h,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- mfbt/Atomics.h.orig 2013-09-10 03:43:48.000000000 +0000
++++ mfbt/Atomics.h
+@@ -37,7 +37,7 @@
+ */
+ # if !defined(__linux__) && !defined(__OpenBSD__) && \
+ (__cplusplus >= 201103L || defined(__GXX_EXPERIMENTAL_CXX0X__)) && \
+- __has_include(<atomic>)
++ __has_include_next(<atomic>)
+ # define MOZ_HAVE_CXX11_ATOMICS
+ # endif
+ /*
diff --git a/www/firefox/patches/patch-modules_libpref_src_init_all.js b/www/firefox/patches/patch-modules_libpref_src_init_all.js
new file mode 100644
index 00000000000..57a3c709c1f
--- /dev/null
+++ b/www/firefox/patches/patch-modules_libpref_src_init_all.js
@@ -0,0 +1,13 @@
+$NetBSD: patch-modules_libpref_src_init_all.js,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- modules/libpref/src/init/all.js.orig 2013-09-10 03:43:49.000000000 +0000
++++ modules/libpref/src/init/all.js
+@@ -188,7 +188,7 @@ pref("media.webm.enabled", true);
+ pref("media.dash.enabled", false);
+ #endif
+ #ifdef MOZ_GSTREAMER
+-pref("media.gstreamer.enabled", false);
++pref("media.gstreamer.enabled", true);
+ #endif
+ #ifdef MOZ_WEBRTC
+ pref("media.navigator.enabled", true);
diff --git a/www/firefox/patches/patch-netwerk__protocol__websocket__WebSocketChannel.cpp b/www/firefox/patches/patch-netwerk__protocol__websocket__WebSocketChannel.cpp
deleted file mode 100644
index e3aeb089c84..00000000000
--- a/www/firefox/patches/patch-netwerk__protocol__websocket__WebSocketChannel.cpp
+++ /dev/null
@@ -1,42 +0,0 @@
-$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>
-# Date 1370038996 -7200
-# Node ID 4539a7706881edaedc2189cc0d2d9c7b7abedf1d
-# Parent d16914942a9c502dde37dce2a1deb09050218ba8
-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.orig 2013-06-17 22:13:23.000000000 +0000
-+++ netwerk/protocol/websocket/WebSocketChannel.cpp
-@@ -1632,7 +1632,8 @@ WebSocketChannel::PrimeNewOutgoingMessag
- // and there isn't an internal error, use that.
- if (NS_SUCCEEDED(mStopOnClose)) {
- if (mScriptCloseCode) {
-- *((uint16_t *)payload) = PR_htons(mScriptCloseCode);
-+ uint16_t temp = PR_htons(mScriptCloseCode);
-+ memcpy(payload, &temp, 2);
- mOutHeader[1] += 2;
- mHdrOutToSend = 8;
- if (!mScriptCloseReason.IsEmpty()) {
-@@ -1651,7 +1652,8 @@ WebSocketChannel::PrimeNewOutgoingMessag
- mHdrOutToSend = 6;
- }
- } else {
-- *((uint16_t *)payload) = PR_htons(ResultToCloseCode(mStopOnClose));
-+ uint16_t temp = PR_htons(ResultToCloseCode(mStopOnClose));
-+ memcpy(payload, &temp, 2);
- mOutHeader[1] += 2;
- mHdrOutToSend = 8;
- }
-@@ -1739,7 +1741,8 @@ WebSocketChannel::PrimeNewOutgoingMessag
- mask = * reinterpret_cast<uint32_t *>(buffer);
- NS_Free(buffer);
- } while (!mask);
-- *(((uint32_t *)payload) - 1) = PR_htonl(mask);
-+ uint32_t temp = PR_htonl(mask);
-+ memcpy(payload - 4, &temp, 4);
-
- LOG(("WebSocketChannel::PrimeNewOutgoingMessage() using mask %08x\n", mask));
-
diff --git a/www/firefox/patches/patch-netwerk_sctp_src_Makefile.in b/www/firefox/patches/patch-netwerk_sctp_src_Makefile.in
deleted file mode 100644
index ac190313978..00000000000
--- a/www/firefox/patches/patch-netwerk_sctp_src_Makefile.in
+++ /dev/null
@@ -1,23 +0,0 @@
-$NetBSD: patch-netwerk_sctp_src_Makefile.in,v 1.1 2013/05/23 13:12:13 ryoon Exp $
-
---- netwerk/sctp/src/Makefile.in.orig 2013-05-11 19:19:49.000000000 +0000
-+++ netwerk/sctp/src/Makefile.in
-@@ -114,11 +114,18 @@ DEFINES += \
- -U__FreeBSD__ \
- $(NULL)
- else
-+ifeq ($(OS_TARGET),NetBSD)
-+DEFINES += \
-+ -D__Userspace_os_NetBSD=1 \
-+ -U__NetBSD__ \
-+ $(NULL)
-+else
- #error Unsupported platform!
- endif
- endif
- endif
- endif
-+endif
-
- include $(topsrcdir)/config/config.mk
- include $(topsrcdir)/ipc/chromium/chromium-config.mk
diff --git a/www/firefox/patches/patch-netwerk_wifi_Makefile.in b/www/firefox/patches/patch-netwerk_wifi_Makefile.in
new file mode 100644
index 00000000000..21f6d19d662
--- /dev/null
+++ b/www/firefox/patches/patch-netwerk_wifi_Makefile.in
@@ -0,0 +1,13 @@
+$NetBSD: patch-netwerk_wifi_Makefile.in,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- netwerk/wifi/Makefile.in.orig 2013-09-10 03:43:50.000000000 +0000
++++ netwerk/wifi/Makefile.in
+@@ -26,7 +26,7 @@ ifeq ($(OS_ARCH),SunOS)
+ OS_INCLUDES += $(GLIB_CFLAGS)
+ endif
+
+-ifdef MOZ_ENABLE_DBUS
++ifdef NECKO_WIFI_DBUS
+ OS_INCLUDES += $(MOZ_DBUS_GLIB_CFLAGS)
+ endif
+
diff --git a/www/firefox/patches/patch-netwerk_wifi_moz.build b/www/firefox/patches/patch-netwerk_wifi_moz.build
new file mode 100644
index 00000000000..3ad0651418c
--- /dev/null
+++ b/www/firefox/patches/patch-netwerk_wifi_moz.build
@@ -0,0 +1,24 @@
+$NetBSD: patch-netwerk_wifi_moz.build,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- netwerk/wifi/moz.build.orig 2013-09-10 03:43:50.000000000 +0000
++++ netwerk/wifi/moz.build
+@@ -31,6 +31,10 @@ if CONFIG['OS_ARCH'] == 'Darwin':
+ CPP_SOURCES += [
+ 'nsWifiScannerMac.cpp',
+ ]
++elif CONFIG['OS_ARCH'] == 'FreeBSD':
++ CPP_SOURCES += [
++ 'nsWifiScannerFreeBSD.cpp',
++ ]
+ elif CONFIG['OS_ARCH'] == 'WINNT':
+ CPP_SOURCES += [
+ 'nsWifiScannerWin.cpp',
+@@ -40,7 +44,7 @@ elif CONFIG['OS_ARCH'] == 'SunOS':
+ 'nsWifiScannerSolaris.cpp',
+ ]
+
+-if CONFIG['MOZ_ENABLE_DBUS']:
++if CONFIG['NECKO_WIFI_DBUS']:
+ CPP_SOURCES += [
+ 'nsWifiScannerDBus.cpp',
+ ]
diff --git a/www/firefox/patches/patch-netwerk_wifi_nsWifiScannerFreeBSD.cpp b/www/firefox/patches/patch-netwerk_wifi_nsWifiScannerFreeBSD.cpp
new file mode 100644
index 00000000000..2268fedd8d8
--- /dev/null
+++ b/www/firefox/patches/patch-netwerk_wifi_nsWifiScannerFreeBSD.cpp
@@ -0,0 +1,177 @@
+$NetBSD: patch-netwerk_wifi_nsWifiScannerFreeBSD.cpp,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- netwerk/wifi/nsWifiScannerFreeBSD.cpp.orig 2013-09-14 15:17:47.000000000 +0000
++++ netwerk/wifi/nsWifiScannerFreeBSD.cpp
+@@ -0,0 +1,172 @@
++/* This Source Code Form is subject to the terms of the Mozilla Public
++ * License, v. 2.0. If a copy of the MPL was not distributed with this
++ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
++
++// Developed by J.R. Oldroyd <fbsd@opal.com>, December 2012.
++
++// For FreeBSD we use the getifaddrs(3) to obtain the list of interfaces
++// and then check for those with an 802.11 media type and able to return
++// a list of stations. This is similar to ifconfig(8).
++
++#include <sys/types.h>
++#include <sys/ioctl.h>
++#include <sys/socket.h>
++#include <net/if.h>
++#include <net/if_media.h>
++#include <net80211/ieee80211_ioctl.h>
++
++#include <ifaddrs.h>
++#include <string.h>
++#include <unistd.h>
++
++#include "nsWifiAccessPoint.h"
++
++using namespace mozilla;
++
++static nsresult
++FreeBSDGetAccessPointData(nsCOMArray<nsWifiAccessPoint> &accessPoints)
++{
++ bool res = false;
++ char *dupn = NULL;
++ struct ifaddrs *ifal, *ifa;
++ unsigned len;
++
++ // get list of interfaces
++ if (getifaddrs(&ifal) < 0)
++ return NS_ERROR_FAILURE;
++
++ accessPoints.Clear();
++
++ // loop through the interfaces
++ for (ifa = ifal; ifa; ifa = ifa->ifa_next) {
++ int s;
++ struct ifreq ifr;
++ struct ifmediareq ifmr;
++ struct ieee80211req i802r;
++ char iscanbuf[32*1024], *vsr;
++
++ memset(&ifr, 0, sizeof(ifr));
++
++ // list can contain duplicates, so ignore those
++ if (dupn != NULL && strcmp(dupn, ifa->ifa_name) == 0)
++ continue;
++ dupn = ifa->ifa_name;
++
++ // store interface name in socket structure
++ strncpy(ifr.ifr_name, ifa->ifa_name, sizeof(ifr.ifr_name));
++ ifr.ifr_addr.sa_family = AF_LOCAL;
++
++ // open socket to interface
++ if ((s = socket(ifr.ifr_addr.sa_family, SOCK_DGRAM, 0)) < 0)
++ continue;
++
++ // clear interface media structure
++ (void) memset(&ifmr, 0, sizeof(ifmr));
++ (void) strncpy(ifmr.ifm_name, ifa->ifa_name, sizeof(ifmr.ifm_name));
++
++ // get interface media information
++ if (ioctl(s, SIOCGIFMEDIA, (caddr_t)&ifmr) < 0) {
++ close(s);
++ continue;
++ }
++
++ // check interface is a WiFi interface
++ if (IFM_TYPE(ifmr.ifm_active) != IFM_IEEE80211) {
++ close(s);
++ continue;
++ }
++
++ // perform WiFi scan
++ (void) memset(&i802r, 0, sizeof(i802r));
++ (void) strncpy(i802r.i_name, ifa->ifa_name, sizeof(i802r.i_name));
++ i802r.i_type = IEEE80211_IOC_SCAN_RESULTS;
++ i802r.i_data = iscanbuf;
++ i802r.i_len = sizeof(iscanbuf);
++ if (ioctl(s, SIOCG80211, &i802r) < 0) {
++ close(s);
++ continue;
++ }
++
++ // close socket
++ close(s);
++
++ // loop through WiFi networks and build geoloc-lookup structure
++ vsr = (char *) i802r.i_data;
++ len = i802r.i_len;
++ while (len >= sizeof(struct ieee80211req_scan_result)) {
++ struct ieee80211req_scan_result *isr;
++ char *id;
++ int idlen;
++ char ssid[IEEE80211_NWID_LEN+1];
++ nsWifiAccessPoint *ap;
++
++ isr = (struct ieee80211req_scan_result *) vsr;
++
++ // determine size of this entry
++ if (isr->isr_meshid_len) {
++ id = vsr + isr->isr_ie_off + isr->isr_ssid_len;
++ idlen = isr->isr_meshid_len;
++ }
++ else {
++ id = vsr + isr->isr_ie_off;
++ idlen = isr->isr_ssid_len;
++ }
++
++ // copy network data
++ strncpy(ssid, id, idlen);
++ ssid[idlen] = '\0';
++ ap = new nsWifiAccessPoint();
++ ap->setSSID(ssid, strlen(ssid));
++ ap->setMac(isr->isr_bssid);
++ ap->setSignal(isr->isr_rssi);
++ accessPoints.AppendObject(ap);
++ res = true;
++
++ // log the data
++ LOG(( "FreeBSD access point: "
++ "SSID: %s, MAC: %02x-%02x-%02x-%02x-%02x-%02x, "
++ "Strength: %d, Channel: %dMHz\n",
++ ssid, isr->isr_bssid[0], isr->isr_bssid[1], isr->isr_bssid[2],
++ isr->isr_bssid[3], isr->isr_bssid[4], isr->isr_bssid[5],
++ isr->isr_rssi, isr->isr_freq));
++
++ // increment pointers
++ len -= isr->isr_len;
++ vsr += isr->isr_len;
++ }
++ }
++
++ freeifaddrs(ifal);
++
++ return res ? NS_OK : NS_ERROR_FAILURE;
++}
++
++nsresult
++nsWifiMonitor::DoScan()
++{
++ // Regularly get the access point data.
++
++ nsCOMArray<nsWifiAccessPoint> lastAccessPoints;
++ nsCOMArray<nsWifiAccessPoint> accessPoints;
++
++ do {
++ nsresult rv = FreeBSDGetAccessPointData(accessPoints);
++ if (NS_FAILED(rv))
++ return rv;
++
++ bool accessPointsChanged = !AccessPointsEqual(accessPoints, lastAccessPoints);
++ ReplaceArray(lastAccessPoints, accessPoints);
++
++ rv = CallWifiListeners(lastAccessPoints, accessPointsChanged);
++ NS_ENSURE_SUCCESS(rv, rv);
++
++ // wait for some reasonable amount of time. pref?
++ LOG(("waiting on monitor\n"));
++
++ ReentrantMonitorAutoEnter mon(mReentrantMonitor);
++ mon.Wait(PR_SecondsToInterval(60));
++ }
++ while (mKeepGoing);
++
++ return NS_OK;
++}
diff --git a/www/firefox/patches/patch-pa b/www/firefox/patches/patch-pa
deleted file mode 100644
index 56e0f8892dd..00000000000
--- a/www/firefox/patches/patch-pa
+++ /dev/null
@@ -1,11 +0,0 @@
-$NetBSD: patch-pa,v 1.2 2013/08/07 12:17:54 ryoon Exp $
-
---- xulrunner/installer/mozilla-js.pc.in.orig 2013-07-30 00:59:18.000000000 +0000
-+++ xulrunner/installer/mozilla-js.pc.in
-@@ -6,5 +6,5 @@ Name: JavaScript
- Description: The Mozilla JavaScript Library
- Version: %MOZILLA_VERSION%
- Requires: %NSPR_NAME% >= %NSPR_VERSION%
--Libs: -L${sdkdir}/lib %MOZ_JS_LINK%
-+Libs: -Wl,-R${prefix}/lib/xulrunner -Wl,-R${prefix}/lib/xulrunner -Wl,-R${prefix}/lib/xulrunner -Wl,-R${prefix}/lib/xulrunner -L${prefix}/lib/xulrunner %MOZ_JS_LINK%
- Cflags: -I${includedir} -DXP_UNIX -DJS_THREADSAFE
diff --git a/www/firefox/patches/patch-pd b/www/firefox/patches/patch-pd
deleted file mode 100644
index faf14d8aab5..00000000000
--- a/www/firefox/patches/patch-pd
+++ /dev/null
@@ -1,11 +0,0 @@
-$NetBSD: patch-pd,v 1.2 2013/08/07 12:17:54 ryoon Exp $
-
---- xulrunner/installer/mozilla-nss.pc.in.orig 2013-07-30 00:59:18.000000000 +0000
-+++ xulrunner/installer/mozilla-nss.pc.in
-@@ -6,5 +6,5 @@ Name: NSS
- Description: Mozilla Network Security Services
- Version: %MOZILLA_VERSION%
- Requires: %NSPR_NAME% >= %NSPR_VERSION%
--Libs: -L${sdkdir}/lib -lsmime3 -lssl3 -lnss3 -lnssutil3
-+Libs: -Wl,-R${prefix}/lib/xulrunner -Wl,-R${prefix}/lib/xulrunner -Wl,-R${prefix}/lib/xulrunner -Wl,-R${prefix}/lib/xulrunner -L${prefix}/lib/xulrunner -lsmime3 -lssl3 -lnss3 -lnssutil3
- Cflags: -I${includedir}
diff --git a/www/firefox/patches/patch-pg b/www/firefox/patches/patch-pg
deleted file mode 100644
index c6745c0a5fa..00000000000
--- a/www/firefox/patches/patch-pg
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD: patch-pg,v 1.2 2013/08/07 12:17:54 ryoon Exp $
-
---- xulrunner/installer/mozilla-nspr.pc.in.orig 2013-07-30 00:59:18.000000000 +0000
-+++ xulrunner/installer/mozilla-nspr.pc.in
-@@ -5,7 +5,5 @@ includedir=%includedir%
- Name: NSPR
- Description: The Netscape Portable Runtime
- Version: %NSPR_VERSION%
--Libs: %FULL_NSPR_LIBS%
--Cflags: %FULL_NSPR_CFLAGS%
--
--
-+Libs: -Wl,-R${prefix}/lib/xulrunner -Wl,-R${prefix}/lib/xulrunner -Wl,-R${prefix}/lib/xulrunner -Wl,-R${prefix}/lib/xulrunner -L${prefix}/lib/xulrunner -lplds4 -lplc4 -lnspr4 -pthread
-+Cflags: -I${includedir}
diff --git a/www/firefox/patches/patch-security_manager_ssl_src_JARSignatureVerification.cpp b/www/firefox/patches/patch-security_manager_ssl_src_JARSignatureVerification.cpp
new file mode 100644
index 00000000000..1ef179f4d4f
--- /dev/null
+++ b/www/firefox/patches/patch-security_manager_ssl_src_JARSignatureVerification.cpp
@@ -0,0 +1,17 @@
+$NetBSD: patch-security_manager_ssl_src_JARSignatureVerification.cpp,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- security/manager/ssl/src/JARSignatureVerification.cpp.orig 2013-09-10 03:43:51.000000000 +0000
++++ security/manager/ssl/src/JARSignatureVerification.cpp
+@@ -596,9 +596,9 @@ OpenSignedJARFile(nsIFile * aJarFile,
+ }
+
+ // Verify that the signature file is a valid signature of the SF file
+- if (!SEC_PKCS7VerifyDetachedSignatureAtTime(p7_info, certUsageObjectSigner,
+- &sfCalculatedDigest.get(),
+- HASH_AlgSHA1, false, PR_Now())) {
++ if (!SEC_PKCS7VerifyDetachedSignature(p7_info, certUsageObjectSigner,
++ &sfCalculatedDigest.get(), HASH_AlgSHA1,
++ false)) {
+ PRErrorCode error = PR_GetError();
+ const char * errorName = PR_ErrorToName(error);
+ PR_LOG(gPIPNSSLog, PR_LOG_DEBUG, ("Failed to verify detached signature: %s",
diff --git a/www/firefox/patches/patch-security_manager_ssl_src_nsNSSComponent.cpp b/www/firefox/patches/patch-security_manager_ssl_src_nsNSSComponent.cpp
index 29f25a3572a..7fcd53325a8 100644
--- a/www/firefox/patches/patch-security_manager_ssl_src_nsNSSComponent.cpp
+++ b/www/firefox/patches/patch-security_manager_ssl_src_nsNSSComponent.cpp
@@ -1,12 +1,12 @@
-$NetBSD: patch-security_manager_ssl_src_nsNSSComponent.cpp,v 1.1 2013/05/23 13:12:13 ryoon Exp $
+$NetBSD: patch-security_manager_ssl_src_nsNSSComponent.cpp,v 1.2 2013/09/19 12:37:50 ryoon Exp $
---- security/manager/ssl/src/nsNSSComponent.cpp.orig 2013-05-11 19:19:50.000000000 +0000
+--- security/manager/ssl/src/nsNSSComponent.cpp.orig 2013-09-10 03:43:51.000000000 +0000
+++ security/manager/ssl/src/nsNSSComponent.cpp
-@@ -72,6 +72,7 @@
+@@ -49,6 +49,7 @@
+
#include "nss.h"
- #include "pk11func.h"
#include "ssl.h"
+#define NSS_ENABLE_ECC 1
#include "sslproto.h"
#include "secmod.h"
- #include "sechash.h"
+ #include "secmime.h"
diff --git a/www/firefox/patches/patch-toolkit_components_osfile_osfile__unix__allthreads.jsm b/www/firefox/patches/patch-toolkit_components_osfile_osfile__unix__allthreads.jsm
new file mode 100644
index 00000000000..08fdde21a75
--- /dev/null
+++ b/www/firefox/patches/patch-toolkit_components_osfile_osfile__unix__allthreads.jsm
@@ -0,0 +1,13 @@
+$NetBSD: patch-toolkit_components_osfile_osfile__unix__allthreads.jsm,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- toolkit/components/osfile/osfile_unix_allthreads.jsm.orig 2013-09-10 03:43:54.000000000 +0000
++++ toolkit/components/osfile/osfile_unix_allthreads.jsm
+@@ -40,7 +40,7 @@ if (typeof Components != "undefined") {
+ // Open libc
+ let libc;
+ let libc_candidates = [ "libSystem.B.dylib",
+- "libc.so.6",
++ "libc.so.7",
+ "libc.so" ];
+ for (let i = 0; i < libc_candidates.length; ++i) {
+ try {
diff --git a/www/firefox/patches/patch-toolkit_xre_Makefile.in b/www/firefox/patches/patch-toolkit_xre_Makefile.in
new file mode 100644
index 00000000000..780d784010e
--- /dev/null
+++ b/www/firefox/patches/patch-toolkit_xre_Makefile.in
@@ -0,0 +1,10 @@
+$NetBSD: patch-toolkit_xre_Makefile.in,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+--- toolkit/xre/Makefile.in.orig 2013-09-10 03:43:56.000000000 +0000
++++ toolkit/xre/Makefile.in
+@@ -216,5 +216,3 @@ GARBAGE += platform.ini
+ libs:: platform.ini
+ $(INSTALL) $^ $(DIST)/bin
+
+-install::
+- $(INSTALL) $(IFLAGS1) $^ $(DESTDIR)$(mozappdir)
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
deleted file mode 100644
index f51cf95eac6..00000000000
--- a/www/firefox/patches/patch-xpcom__reflect__xptcall__src__md__unix__xptcstubs_sparc64_openbsd.cpp
+++ /dev/null
@@ -1,23 +0,0 @@
-$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>
-# Date 1370038989 -7200
-# Node ID d296fcc8f3dd6254c862cdfd47a5580ee05a94f4
-# Parent 52b02042b27f75acbcb2bd4822bedb00ab680e67
-Bug 867914: Declare SharedStub as returning nsresult in xptcstubs_sparc64_openbsd.cpp. r=landry
-
-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.orig 2013-06-17 22:13:29.000000000 +0000
-+++ xpcom/reflect/xptcall/src/md/unix/xptcstubs_sparc64_openbsd.cpp
-@@ -83,7 +83,7 @@ PrepareAndDispatch(nsXPTCStubBase* self,
- return result;
- }
-
--extern "C" int SharedStub(int, int*);
-+extern "C" nsresult SharedStub(int, int*);
-
- #define STUB_ENTRY(n) \
- nsresult nsXPTCStubBase::Stub##n() \
diff --git a/www/firefox/patches/patch-xpcom_ds_moz.build b/www/firefox/patches/patch-xpcom_ds_moz.build
new file mode 100644
index 00000000000..c469e1168b8
--- /dev/null
+++ b/www/firefox/patches/patch-xpcom_ds_moz.build
@@ -0,0 +1,24 @@
+$NetBSD: patch-xpcom_ds_moz.build,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+* Honor sFirstTimeStamp and sProcessCreation, fix segfault.
+
+--- xpcom/ds/moz.build.orig 2013-09-10 03:43:57.000000000 +0000
++++ xpcom/ds/moz.build
+@@ -95,7 +95,6 @@ CPP_SOURCES += [
+ 'nsSupportsPrimitives.cpp',
+ 'nsUnicharBuffer.cpp',
+ 'nsVariant.cpp',
+- 'TimeStamp.cpp',
+ ]
+
+ if CONFIG['HAVE_CLOCK_MONOTONIC']:
+@@ -113,5 +112,9 @@ elif CONFIG['OS_ARCH'] == 'WINNT':
+ else:
+ error('No TimeStamp implementation on this platform. Build will not succeed')
+
++CPP_SOURCES += [
++ 'TimeStamp.cpp',
++]
++
+ LIBRARY_NAME = 'xpcomds_s'
+
diff --git a/www/firefox/patches/patch-xpcom_reflect_xptcall_src_md_unix_moz.build b/www/firefox/patches/patch-xpcom_reflect_xptcall_src_md_unix_moz.build
new file mode 100644
index 00000000000..c3b2b27ae76
--- /dev/null
+++ b/www/firefox/patches/patch-xpcom_reflect_xptcall_src_md_unix_moz.build
@@ -0,0 +1,15 @@
+$NetBSD: patch-xpcom_reflect_xptcall_src_md_unix_moz.build,v 1.1 2013/09/19 12:37:50 ryoon Exp $
+
+* Support NetBSD/amd64 and DragonFly/amd64.
+
+--- xpcom/reflect/xptcall/src/md/unix/moz.build.orig 2013-09-10 03:43:57.000000000 +0000
++++ xpcom/reflect/xptcall/src/md/unix/moz.build
+@@ -26,7 +26,7 @@ if CONFIG['OS_ARCH'] in ('NetBSD', 'Open
+ 'xptcstubs_gcc_x86_unix.cpp'
+ ]
+
+-if CONFIG['OS_ARCH'] in ('Linux', 'FreeBSD') or \
++if CONFIG['OS_ARCH'] in ('Linux', 'FreeBSD', 'NetBSD', 'DragonFly') or \
+ CONFIG['OS_ARCH'].startswith('GNU_'):
+ if CONFIG['OS_TEST'] == 'x86_64':
+ CPP_SOURCES += [