aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbeat <beat@FreeBSD.org>2014-05-07 03:13:09 +0800
committerbeat <beat@FreeBSD.org>2014-05-07 03:13:09 +0800
commit08e086a19cfc8f144963e22e4179a25b4e3b5772 (patch)
tree7d08f2576ae17172ae3498cbedcf2c97fd428b34
parenta7249eaf5097b2550016565993005b3e470e4ab6 (diff)
downloadfreebsd-ports-gnome-08e086a19cfc8f144963e22e4179a25b4e3b5772.tar.gz
freebsd-ports-gnome-08e086a19cfc8f144963e22e4179a25b4e3b5772.tar.zst
freebsd-ports-gnome-08e086a19cfc8f144963e22e4179a25b4e3b5772.zip
- Update SeaMonkey to 2.26
- Update libxul to 24.5.0 - Switch to USES=tar:bzip2 - Fix SeaMonkey version detection in Uses/gecko.mk Submitted by: Jan Beich Security: http://www.vuxml.org/freebsd/985d4d6c-cfbd-11e3-a003-b4b52fce4ce8.html Approved by: portmgr (bdrewery, security update to non-staged port)
-rw-r--r--Mk/Uses/gecko.mk8
-rw-r--r--www/libxul/Makefile5
-rw-r--r--www/libxul/distinfo4
-rw-r--r--www/libxul/files/patch-bug97003113
-rw-r--r--www/linux-seamonkey/Makefile2
-rw-r--r--www/linux-seamonkey/distinfo4
-rw-r--r--www/seamonkey-i18n/Makefile2
-rw-r--r--www/seamonkey-i18n/distinfo108
-rw-r--r--www/seamonkey/Makefile17
-rw-r--r--www/seamonkey/distinfo4
-rw-r--r--www/seamonkey/files/patch-bug80691787
-rw-r--r--www/seamonkey/files/patch-bug82698540
-rw-r--r--www/seamonkey/files/patch-bug84756865
-rw-r--r--www/seamonkey/files/patch-bug87879111
-rw-r--r--www/seamonkey/files/patch-bug9165896
-rw-r--r--www/seamonkey/files/patch-bug9612648
-rw-r--r--www/seamonkey/files/patch-bug96181648
-rw-r--r--www/seamonkey/files/patch-bug9623459
-rw-r--r--www/seamonkey/files/patch-bug985848 (renamed from www/seamonkey/files/patch-no-videoio.h)0
-rw-r--r--www/seamonkey/files/patch-bug991253 (renamed from www/seamonkey/files/patch-mozilla-extensions-spellcheck-hunspell-src-mozHunspell.cpp)0
-rw-r--r--www/seamonkey/files/patch-bug99346711
-rw-r--r--www/seamonkey/files/patch-ijg-libjpeg (renamed from www/seamonkey/files/patch-bug791305)17
-rw-r--r--www/seamonkey/files/patch-mozilla-js-src-Makefile.in11
-rw-r--r--www/seamonkey/files/patch-mozilla-media-mtransport-third_party-nICEr-src-util-mbslen.c16
-rw-r--r--www/seamonkey/files/patch-mozilla-security-manager-ssl-src-nsNSSComponent.cpp10
-rw-r--r--www/seamonkey/files/patch-z-bug517422232
26 files changed, 435 insertions, 303 deletions
diff --git a/Mk/Uses/gecko.mk b/Mk/Uses/gecko.mk
index 0bf667556a3b..33382930788b 100644
--- a/Mk/Uses/gecko.mk
+++ b/Mk/Uses/gecko.mk
@@ -53,17 +53,17 @@ _GECKO_INSTALLED_VER:= ${_GECKO_INSTALLED_VER:M[0-9][0-9]*:C/([0-9][0-9]).*/\1/g
.elif ${_GECKO_ARGS:Mseamonkey}
-_GECKO_DEFAULT_VERSION= 25
-_GECKO_VERSIONS= 25
+_GECKO_DEFAULT_VERSION= 26
+_GECKO_VERSIONS= 26
_GECKO_TYPE= seamonkey
.if exists(${LOCALBASE}/bin/seamonkey)
_GECKO_INSTALLED_VER!= ${LOCALBASE}/bin/seamonkey --version 2>/dev/null
-_GECKO_INSTALLED_VER:= ${_GECKO_INSTALLED_VER:M[0-9][0-9]*:C/([0-9][0-9]).*/\1/g}
+_GECKO_INSTALLED_VER:= ${_GECKO_INSTALLED_VER:M[0-9]*:C/[0-9].([0-9][0-9]).*/\1/g}
.endif
# Dependence lines for different Seamonkey versions
-22_DEPENDS= ${LOCALBASE}/lib/seamonkey/seamonkey:${PORTSDIR}/www/seamonkey
+26_DEPENDS= ${LOCALBASE}/lib/seamonkey/seamonkey:${PORTSDIR}/www/seamonkey
.elif ${_GECKO_ARGS:Mthunderbird}
diff --git a/www/libxul/Makefile b/www/libxul/Makefile
index e8b9681a0df9..37db7447e248 100644
--- a/www/libxul/Makefile
+++ b/www/libxul/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= libxul
-DISTVERSION= 24.3.0
+DISTVERSION= 24.5.0
CATEGORIES?= www devel
MASTER_SITES= MOZILLA/firefox/releases/${DISTVERSION}esr/source \
https://ftp.mozilla.org/pub/mozilla.org/firefox/candidates/${DISTVERSION}esr-candidates/build1/source/
@@ -37,9 +37,8 @@ QT_NONSTANDARD= yes
WANT_PERL= yes
ALL_TARGET= default
GNU_CONFIGURE= yes
-USE_BZIP2= yes
USE_GL= gl
-USES= dos2unix
+USES= dos2unix tar:bzip2
DOS2UNIX_FILES= media/webrtc/trunk/webrtc/system_wrappers/source/spreadsortlib/spreadsort.hpp
MAKE_ENV= SKIP_GRE_REGISTRATION=1 mozappdir=${PREFIX}/lib/${MOZILLA}
LDFLAGS+= -Wl,-rpath,${PREFIX}/lib/${MOZ_RPATH}
diff --git a/www/libxul/distinfo b/www/libxul/distinfo
index b8f85a402c3f..b872161f5c4c 100644
--- a/www/libxul/distinfo
+++ b/www/libxul/distinfo
@@ -1,2 +1,2 @@
-SHA256 (firefox-24.3.0esr.source.tar.bz2) = 0d38dd50beffff640cfea67fcf8f44bb95c3c927ccfa225f2b937b9a4ba262b9
-SIZE (firefox-24.3.0esr.source.tar.bz2) = 119391302
+SHA256 (firefox-24.5.0esr.source.tar.bz2) = 1670e72511cad6047eb8726fa6c2362adcb95b5d53a3c327c4c38bed4b788701
+SIZE (firefox-24.5.0esr.source.tar.bz2) = 119830718
diff --git a/www/libxul/files/patch-bug970031 b/www/libxul/files/patch-bug970031
deleted file mode 100644
index bfb5f099eb85..000000000000
--- a/www/libxul/files/patch-bug970031
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git xpcom/reflect/xptcall/src/md/unix/moz.build xpcom/reflect/xptcall/src/md/unix/moz.build
-index 5f88066..bd2a94f 100644
---- xpcom/reflect/xptcall/src/md/unix/moz.build
-+++ xpcom/reflect/xptcall/src/md/unix/moz.build
-@@ -235,7 +235,7 @@ if CONFIG['OS_ARCH'] == 'OpenBSD' and CO
- 'xptcstubs_sparc_openbsd.cpp',
- ]
-
--if CONFIG['OS_ARCH'] == 'OpenBSD' and CONFIG['OS_TEST'] == 'sparc64':
-+if CONFIG['OS_ARCH'] in ('OpenBSD', 'FreeBSD') and CONFIG['OS_TEST'] == 'sparc64':
- CPP_SOURCES += [
- 'xptcinvoke_sparc64_openbsd.cpp',
- 'xptcstubs_sparc64_openbsd.cpp',
diff --git a/www/linux-seamonkey/Makefile b/www/linux-seamonkey/Makefile
index 55bbcbf12d11..d6cbb09e04da 100644
--- a/www/linux-seamonkey/Makefile
+++ b/www/linux-seamonkey/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= seamonkey
-DISTVERSION= 2.25
+DISTVERSION= 2.26
CATEGORIES= www mail news editors irc ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/linux-i686/en-US
diff --git a/www/linux-seamonkey/distinfo b/www/linux-seamonkey/distinfo
index e6c3d46381e6..605d95fac5ea 100644
--- a/www/linux-seamonkey/distinfo
+++ b/www/linux-seamonkey/distinfo
@@ -1,5 +1,5 @@
-SHA256 (seamonkey-2.25.tar.bz2) = 67892c00243b9a4f2964ac61c9661e2d954ce33bc27fb10588f650922d5e3c62
-SIZE (seamonkey-2.25.tar.bz2) = 30377947
+SHA256 (seamonkey-2.26.tar.bz2) = 4b306933c629bfaa0f6f4a8e5db08a47055061e3db87010b4c1e058d4ee4e0b2
+SIZE (seamonkey-2.26.tar.bz2) = 30916325
SHA256 (glib2-2.22.2-2.fc12.i686.rpm) = e3b459c245ec14e7248e9de4b506963a4773407f3e58835db5070d0ed02ecc99
SIZE (glib2-2.22.2-2.fc12.i686.rpm) = 1162908
SHA256 (gtk2-2.18.3-19.fc12.i686.rpm) = aea9cf7ffe9c8dae0faa2bf3d2aa1b2117c55dce03da72dcce8c268279ec0a4b
diff --git a/www/seamonkey-i18n/Makefile b/www/seamonkey-i18n/Makefile
index 2399acb63e62..c71d8c714d07 100644
--- a/www/seamonkey-i18n/Makefile
+++ b/www/seamonkey-i18n/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= seamonkey-i18n
-PORTVERSION= 2.25
+PORTVERSION= 2.26
CATEGORIES= www mail news editors irc
MASTER_SITES= MOZILLA/${PORTNAME:S|-i18n||}/releases/${PORTVERSION}/langpack
PKGNAMEPREFIX=
diff --git a/www/seamonkey-i18n/distinfo b/www/seamonkey-i18n/distinfo
index 20230d4dee07..277d23d0af18 100644
--- a/www/seamonkey-i18n/distinfo
+++ b/www/seamonkey-i18n/distinfo
@@ -1,54 +1,54 @@
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.be.langpack.xpi) = 89685620ee38c099b3621de2ef1e79b63ea2f8c2c73d333c1afb79068e971d14
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.be.langpack.xpi) = 817911
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.ca.langpack.xpi) = ea59f8370f00ca40358ecdf489658316ffd44f58c75a3a2b0d4823b0b0a65a5e
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.ca.langpack.xpi) = 815229
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.cs.langpack.xpi) = 9e1ed7d0540634f4dfa96e71219c9b5ef13389b498185f8160ddc732402f8329
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.cs.langpack.xpi) = 813471
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.de.langpack.xpi) = 38634d0c30f1c81a2b86d85542038dcc78efe82a9423718fd5feae15749a9764
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.de.langpack.xpi) = 821039
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.en-GB.langpack.xpi) = ab5e441d1b2b474b2724fa67afc1ae77433efdeb3d8f2292b27376b08f433c61
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.en-GB.langpack.xpi) = 784862
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.en-US.langpack.xpi) = 7fd81253636a639c33665c0276f88748cb80fe084eff12a9ae7535c2fb5daed3
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.en-US.langpack.xpi) = 785842
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.es-AR.langpack.xpi) = bea734c6766993aa99b0c2bc78370e732680d00de7ca1dd65a02a2a92383794d
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.es-AR.langpack.xpi) = 836043
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.es-ES.langpack.xpi) = e1f52133ff623e90dcb9cd9988abd9c5e6e31d8679c6ee2ccd723f52028bae33
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.es-ES.langpack.xpi) = 813327
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.fi.langpack.xpi) = caaaf807a1bf85408c2a9dcbab74e6ee2e9a794114a9d72a86f218ad1b2d4a5b
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.fi.langpack.xpi) = 783351
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.fr.langpack.xpi) = 3983ba2cf14165d78724dd97e4652833c7f4197c8fa2218eb48c575c8359249f
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.fr.langpack.xpi) = 794139
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.gl.langpack.xpi) = b48fe273f37bf4a76b6d607377e390d64053019df7213c59b0aa35bce6a6e533
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.gl.langpack.xpi) = 792993
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.hu.langpack.xpi) = 3818cf807f912dcf089d992520debf7deda24346f083172ab50fad1ef3b6b197
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.hu.langpack.xpi) = 827480
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.it.langpack.xpi) = 1b1b28a69f18af2cf089860722c8a85e8a8b53087adf7bdb881b7fce14a571dd
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.it.langpack.xpi) = 727323
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.ja-JP-mac.langpack.xpi) = ce6ee62d188107055a7bfaff2a47b375ae06a4e11898d22c4af3636b653487f2
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.ja-JP-mac.langpack.xpi) = 891817
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.ja.langpack.xpi) = 66916fd154ef6e33f2c6d3a53fe0dd46d1fd03542241361a18cd589ee7683483
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.ja.langpack.xpi) = 866418
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.lt.langpack.xpi) = 043edbbe70608661eb33be1c372f5a4132d2f37e56d570bd6a953495cf99002c
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.lt.langpack.xpi) = 830877
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.nb-NO.langpack.xpi) = 0773a90b97b3b24f28dea4c637a95c1cf0b4a0aa4b7957232dec7d2de23775e6
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.nb-NO.langpack.xpi) = 806695
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.nl.langpack.xpi) = e6b91de4deb292b61ad18e593338f912a5d5749b045bc2698b7e38e394d148ee
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.nl.langpack.xpi) = 780751
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.pl.langpack.xpi) = 420d34f2475fbfe0f5c80ba3e9d526e02b9fb605e2edc8cfe0011d1e4afd93b2
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.pl.langpack.xpi) = 855085
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.pt-PT.langpack.xpi) = 54c80b0243f946249bf53f84b424ef0102cc4cbd0b4fa7861ba77b7977880ff6
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.pt-PT.langpack.xpi) = 816434
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.ru.langpack.xpi) = 1f03d4fe581603c64e619562af0aa747e9e73a5be179d99b9b6d5d568ca995dd
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.ru.langpack.xpi) = 884848
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.sk.langpack.xpi) = 841c06545a7b5f57842674d9f59849e0840dda51d4d5029c1d1dade100df66cb
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.sk.langpack.xpi) = 840780
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.sv-SE.langpack.xpi) = 1455d1aff8f321d40a1e724d8771db39eee93e74deaf8733fa5a01badc3affd8
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.sv-SE.langpack.xpi) = 809391
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.tr.langpack.xpi) = 3c3c54f359b08a508ce014b1edb99db4ed0455237f423051a25e746a775f1dd1
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.tr.langpack.xpi) = 789890
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.uk.langpack.xpi) = b64369e2191eaa97fbb11a8e3e343cef42f3156ffccb75d97ed48a71158ea29f
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.uk.langpack.xpi) = 852254
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.zh-CN.langpack.xpi) = 2e00de1f63e08914d954af80b6bd19552a268f566ca16de587ea673df4d6217c
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.zh-CN.langpack.xpi) = 817701
-SHA256 (xpi/seamonkey-i18n-2.25/seamonkey-2.25.zh-TW.langpack.xpi) = fc24d601697ee73d6cebb6bc06cc8b22e192716b343138834788d4ff7c9a1863
-SIZE (xpi/seamonkey-i18n-2.25/seamonkey-2.25.zh-TW.langpack.xpi) = 842075
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.be.langpack.xpi) = bba364903e2cd080a83b4c7b06317ce547fce0463e46cb1ff5241dcd3b0341f7
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.be.langpack.xpi) = 818751
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.ca.langpack.xpi) = 8885d0412bd420b77a831bc28aae685d0962ef840ddb16e380cd07a2f2ef176c
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.ca.langpack.xpi) = 816735
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.cs.langpack.xpi) = cc77420a27f8e0757bcbdd6f8df2be361883ae1c5840e63f63a1386e43bc498c
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.cs.langpack.xpi) = 814944
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.de.langpack.xpi) = 960ce22067f7cd19ec30c1249a588c651785a8989f374e14e8d06de8dce35237
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.de.langpack.xpi) = 822042
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.en-GB.langpack.xpi) = 42aa60112205d55fb9f835baf1a051da97942a950a17fbb37f0aac7cf6f5135e
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.en-GB.langpack.xpi) = 785904
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.en-US.langpack.xpi) = 31b47ea472f6f4293f896355d8d4092ced3094ab001afc3625c33de1dfb4a6e8
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.en-US.langpack.xpi) = 786788
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.es-AR.langpack.xpi) = 70e3502d5578c3d793645c47872c436f92845800f5a74bcea3803b2c5db73dad
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.es-AR.langpack.xpi) = 836833
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.es-ES.langpack.xpi) = 13bdb45b40c8a9b03f3c93aca5d120ce163a9dc263c68d9fa225826bf429c1a0
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.es-ES.langpack.xpi) = 814002
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.fi.langpack.xpi) = f21cd2e898e11039b2909cad62a71e8f4ee769c68c5681d82300f95c9c70c00a
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.fi.langpack.xpi) = 784387
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.fr.langpack.xpi) = 4e892a84852f9d7470c7c7ff4cc6ff8da0cb5bc8e8197d41ca3105ded6d7356d
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.fr.langpack.xpi) = 795188
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.gl.langpack.xpi) = de1db0aefa37fa6ce4ca2ab6ddbd53d4466e48cb435861270266ca0f56e338e0
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.gl.langpack.xpi) = 794258
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.hu.langpack.xpi) = a1c8b084b6b64bb0b992e9a05c6fa49c9a5a48b437e86351b8a2ed1f2997f22c
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.hu.langpack.xpi) = 828526
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.it.langpack.xpi) = 30dde81ae8bf1379caabc0a7e35bee72b8fa9fa052136de333dcbcd7f3ea550a
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.it.langpack.xpi) = 728566
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.ja-JP-mac.langpack.xpi) = 6db90470137661dc35f888d8e649906300b62fa06d7a477346da31d272b11b30
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.ja-JP-mac.langpack.xpi) = 892973
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.ja.langpack.xpi) = 002743784937853e368c31ca5f80056eb50bd91dfa3f791164e388ab66e1e160
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.ja.langpack.xpi) = 867575
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.lt.langpack.xpi) = 5beaf750798ffe4979e31e19dd88721df2819eeb4ac6cfb73388c0acecfb80f3
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.lt.langpack.xpi) = 832068
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.nb-NO.langpack.xpi) = 5559b7554f6683b7ad444af019d7ad75b13795f6669653b3be9c0934d12857a9
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.nb-NO.langpack.xpi) = 805527
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.nl.langpack.xpi) = 794019b24058071a080b6450991fa79ca71a447df7702e6384785895fce18a34
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.nl.langpack.xpi) = 781831
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.pl.langpack.xpi) = fff16b9b77830bf983c49e42516091ec987a9616168d8040598799349b135e1f
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.pl.langpack.xpi) = 855815
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.pt-PT.langpack.xpi) = 35ecbc2df9c90227ce0e46d854237272d019ad4a5c54e459cdf82a601a9d52dd
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.pt-PT.langpack.xpi) = 817865
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.ru.langpack.xpi) = 9c4c665da191538e1e836ecad5b4556f5a9ed4a4db94c4779db537dd2cef1c94
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.ru.langpack.xpi) = 885692
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.sk.langpack.xpi) = dca3c93b1b2131e58483a537961df44a044b80f5cc97fb2628b384f26e973212
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.sk.langpack.xpi) = 841872
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.sv-SE.langpack.xpi) = e55f7d962db49d461b3b2cc2cc93da46da64139164b8d83f2e67df35bbfa2979
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.sv-SE.langpack.xpi) = 809829
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.tr.langpack.xpi) = d4923efdc2d4e3a294b864c1fbb9fe0a9a9d0d3636cb4ebed2e2263fbabbe5fa
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.tr.langpack.xpi) = 791385
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.uk.langpack.xpi) = ebdc37f591c32ddfe8783257c3944b6a44be15a2b10be4298326c187caddda81
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.uk.langpack.xpi) = 853567
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.zh-CN.langpack.xpi) = 57ab3c518f60627b9cbbe57f5a25b22dace427ec9597d395953104732a5cf0fe
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.zh-CN.langpack.xpi) = 818845
+SHA256 (xpi/seamonkey-i18n-2.26/seamonkey-2.26.zh-TW.langpack.xpi) = 2512be926be2859e16e058977e9dc31d29a3c8b92eefe5a6b3a6f304325cb7fe
+SIZE (xpi/seamonkey-i18n-2.26/seamonkey-2.26.zh-TW.langpack.xpi) = 843200
diff --git a/www/seamonkey/Makefile b/www/seamonkey/Makefile
index bec1514eb40a..d1316d1ffb58 100644
--- a/www/seamonkey/Makefile
+++ b/www/seamonkey/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= seamonkey
-DISTVERSION= 2.25
+DISTVERSION= 2.26
CATEGORIES?= www mail news editors irc ipv6
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \
https://ftp.mozilla.org/pub/mozilla.org/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/source/
@@ -13,12 +13,14 @@ MAINTAINER= gecko@FreeBSD.org
COMMENT= The open source, standards compliant web browser
BUILD_DEPENDS= nspr>=4.10.3:${PORTSDIR}/devel/nspr \
- nss>=3.15.4:${PORTSDIR}/security/nss \
+ nss>=3.16:${PORTSDIR}/security/nss \
+ soundtouch>=1.7.0:${PORTSDIR}/audio/soundtouch \
harfbuzz>=0.9.25:${PORTSDIR}/print/harfbuzz \
+ graphite2>=1.2.4:${PORTSDIR}/graphics/graphite2 \
libvorbis>=1.3.4:${PORTSDIR}/audio/libvorbis \
opus>=1.1:${PORTSDIR}/audio/opus \
libvpx>=1.3.0:${PORTSDIR}/multimedia/libvpx \
- sqlite3>=3.8.1:${PORTSDIR}/databases/sqlite3 \
+ sqlite3>=3.8.2:${PORTSDIR}/databases/sqlite3 \
${PYTHON_PKGNAMEPREFIX}sqlite3>0:${PORTSDIR}/databases/py-sqlite3 \
v4l_compat>0:${PORTSDIR}/multimedia/v4l_compat \
zip:${PORTSDIR}/archivers/zip \
@@ -28,13 +30,12 @@ BUILD_DEPENDS= nspr>=4.10.3:${PORTSDIR}/devel/nspr \
LIB_DEPENDS= libv4l2.so:${PORTSDIR}/multimedia/libv4l
EM_VERSION= 1.6.1_pre20140112
-L_VERSION= 3.0b1
+L_VERSION= 3.1
SSP_UNSAFE= yes
USE_AUTOTOOLS= autoconf213:env
USE_PYTHON_BUILD=2
OBJDIR_BUILD= # in-tree build broken after bug 789837
-USE_BZIP2= yes
USE_GECKO= gecko
WANT_GNOME= yes
USE_QT4= # empty
@@ -42,7 +43,7 @@ QT_NONSTANDARD= yes
WANT_PERL= yes
ALL_TARGET= default
USE_GL= gl
-USES= dos2unix
+USES= dos2unix tar:bzip2
DOS2UNIX_FILES= mozilla/media/webrtc/trunk/webrtc/system_wrappers/source/spreadsortlib/spreadsort.hpp
MOZ_PIS_SCRIPTS= moz_pis_S50cleanhome
@@ -106,6 +107,10 @@ CXXFLAGS+= -O1
BUILD_DEPENDS+= alsa-lib>=1.0.27.2_1:${PORTSDIR}/audio/alsa-lib
.endif
+.if ${PORT_OPTIONS:MGSTREAMER}
+BUILD_DEPENDS+= gstreamer1-libav>=1.2.4:${PORTSDIR}/multimedia/gstreamer1-libav
+.endif
+
.if ! ${PORT_OPTIONS:MMAILNEWS}
MOZ_OPTIONS+= --disable-ldap --disable-mailnews
.else
diff --git a/www/seamonkey/distinfo b/www/seamonkey/distinfo
index 3caacf29929f..7fd733a7c48c 100644
--- a/www/seamonkey/distinfo
+++ b/www/seamonkey/distinfo
@@ -1,4 +1,4 @@
-SHA256 (seamonkey-2.25.source.tar.bz2) = d99c19338737d75016561340c4bfa0087e13d055971579135eb205ae975c022a
-SIZE (seamonkey-2.25.source.tar.bz2) = 155695615
+SHA256 (seamonkey-2.26.source.tar.bz2) = 985262d39f38fc20d307e810c371c9f581f7c55a66cfabd6b5561c236116b874
+SIZE (seamonkey-2.26.source.tar.bz2) = 165548355
SHA256 (enigmail-1.6.1_pre20140112.tar.xz) = 2d89a9186c3ccfc9397c933c6f63c0518224fea0096d7a292dba3765de088149
SIZE (enigmail-1.6.1_pre20140112.tar.xz) = 916028
diff --git a/www/seamonkey/files/patch-bug806917 b/www/seamonkey/files/patch-bug806917
index 76874da3314a..945e2701b0d9 100644
--- a/www/seamonkey/files/patch-bug806917
+++ b/www/seamonkey/files/patch-bug806917
@@ -5,24 +5,24 @@ Date: Fri Jan 03 08:16:54 2014 -0800
Bug 806917 - support GStreamer 1.0
---
configure.in | 66 ++-
- content/media/gstreamer/GStreamerAllocator.cpp | 198 +++++++
+ content/media/gstreamer/GStreamerAllocator.cpp | 197 +++++++
content/media/gstreamer/GStreamerAllocator.h | 25 +
content/media/gstreamer/GStreamerFormatHelper.cpp | 13 +-
content/media/gstreamer/GStreamerFunctionList.h | 93 +++-
content/media/gstreamer/GStreamerLoader.cpp | 48 +-
content/media/gstreamer/GStreamerLoader.h | 8 +
- content/media/gstreamer/GStreamerReader-0.10.cpp | 203 +++++++
+ content/media/gstreamer/GStreamerReader-0.10.cpp | 200 +++++++
content/media/gstreamer/GStreamerReader.cpp | 632 ++++++++++++++--------
content/media/gstreamer/GStreamerReader.h | 42 +-
content/media/gstreamer/moz.build | 11 +-
content/media/test/manifest.js | 6 +-
- 12 files changed, 1061 insertions(+), 284 deletions(-)
+ 12 files changed, 1057 insertions(+), 284 deletions(-)
diff --git configure.in configure.in
index 9776b8d..0b1698d 100644
--- mozilla/configure.in
+++ mozilla/configure.in
-@@ -3955,6 +3955,7 @@ MOZ_SAMPLE_TYPE_FLOAT32=
+@@ -3988,6 +3988,7 @@ MOZ_SAMPLE_TYPE_FLOAT32=
MOZ_SAMPLE_TYPE_S16=
MOZ_OPUS=1
MOZ_WEBM=1
@@ -30,12 +30,13 @@ index 9776b8d..0b1698d 100644
MOZ_DIRECTSHOW=
MOZ_WMF=
MOZ_FMP4=
-@@ -5606,43 +5607,60 @@ dnl = Enable GStreamer
- dnl ========================================================
- if test "$OS_TARGET" = "Linux"; then
- MOZ_GSTREAMER=1
-+ GST_API_VERSION=0.10
- fi
+@@ -5634,44 +5635,61 @@ WINNT|Darwin|Android)
+ ;;
+ *)
+ MOZ_GSTREAMER=1
++ GST_API_VERSION=0.10
+ ;;
+ esac
-MOZ_ARG_ENABLE_BOOL(gstreamer,
-[ --enable-gstreamer Enable GStreamer support],
@@ -120,7 +121,7 @@ new file mode 100644
index 0000000..69d0385
--- /dev/null
+++ mozilla/content/media/gstreamer/GStreamerAllocator.cpp
-@@ -0,0 +1,198 @@
+@@ -0,0 +1,197 @@
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
@@ -179,8 +180,7 @@ index 0000000..69d0385
+ mem->image->Release();
+
+ ImageContainer* container = ((MozGfxMemoryAllocator*) mem->memory.allocator)->reader->GetImageContainer();
-+ ImageFormat format = PLANAR_YCBCR;
-+ mem->image = reinterpret_cast<PlanarYCbCrImage*>(container->CreateImage(&format, 1).get());
++ mem->image = reinterpret_cast<PlanarYCbCrImage*>(container->CreateImage(ImageFormat::PLANAR_YCBCR).get());
+ mem->data = mem->image->AllocateAndGetNewBuffer(mem->memory.size);
+}
+
@@ -673,7 +673,7 @@ new file mode 100644
index 0000000..fb98bde
--- /dev/null
+++ mozilla/content/media/gstreamer/GStreamerReader-0.10.cpp
-@@ -0,0 +1,203 @@
+@@ -0,0 +1,200 @@
+#include "nsError.h"
+#include "MediaDecoderStateMachine.h"
+#include "AbstractMediaDecoder.h"
@@ -718,13 +718,10 @@ index 0000000..fb98bde
+{
+ /* allocate an image using the container */
+ ImageContainer* container = mDecoder->GetImageContainer();
-+ if (!container) {
-+ // We don't have an ImageContainer. We probably belong to an <audio>
-+ // element.
-+ return GST_FLOW_NOT_SUPPORTED;
++ if (container == nullptr) {
++ return GST_FLOW_ERROR;
+ }
-+ ImageFormat format = PLANAR_YCBCR;
-+ PlanarYCbCrImage* img = reinterpret_cast<PlanarYCbCrImage*>(container->CreateImage(&format, 1).get());
++ PlanarYCbCrImage* img = reinterpret_cast<PlanarYCbCrImage*>(container->CreateImage(ImageFormat::PLANAR_YCBCR).get());
+ nsRefPtr<PlanarYCbCrImage> image = dont_AddRef(img);
+
+ /* prepare a GstBuffer pointing to the underlying PlanarYCbCrImage buffer */
@@ -802,16 +799,16 @@ index 0000000..fb98bde
+
+ PlanarYCbCrImage::Data data;
+ data.mPicX = data.mPicY = 0;
-+ data.mPicSize = nsIntSize(mPicture.width, mPicture.height);
-+ data.mStereoMode = STEREO_MODE_MONO;
++ data.mPicSize = gfx::IntSize(mPicture.width, mPicture.height);
++ data.mStereoMode = StereoMode::MONO;
+
+ data.mYChannel = GST_BUFFER_DATA(aBuffer);
+ data.mYStride = gst_video_format_get_row_stride(mFormat, 0, mPicture.width);
-+ data.mYSize = nsIntSize(data.mYStride,
++ data.mYSize = gfx::IntSize(data.mYStride,
+ gst_video_format_get_component_height(mFormat, 0, mPicture.height));
+ data.mYSkip = 0;
+ data.mCbCrStride = gst_video_format_get_row_stride(mFormat, 1, mPicture.width);
-+ data.mCbCrSize = nsIntSize(data.mCbCrStride,
++ data.mCbCrSize = gfx::IntSize(data.mCbCrStride,
+ gst_video_format_get_component_height(mFormat, 1, mPicture.height));
+ data.mCbChannel = data.mYChannel + gst_video_format_get_component_offset(mFormat, 1,
+ mPicture.width, mPicture.height);
@@ -1047,7 +1044,7 @@ index 2be45dc..54509e3 100644
g_object_set(mPlayBin, "uri", "appsrc://",
"video-sink", mVideoSink,
-@@ -331,7 +340,7 @@ nsresult GStreamerReader::ReadMetadata(MediaInfo* aInfo,
+@@ -331,13 +340,12 @@ nsresult GStreamerReader::ReadMetadata(MediaInfo* aInfo,
/* Little trick: set the target caps to "skip" so that playbin2 fails to
* find a decoder for the stream we want to skip.
*/
@@ -1056,7 +1053,13 @@ index 2be45dc..54509e3 100644
g_object_set(filter, "caps", filterCaps, nullptr);
gst_caps_unref(filterCaps);
gst_object_unref(filter);
-@@ -358,6 +367,7 @@ nsresult GStreamerReader::ReadMetadata(MediaInfo* aInfo,
+ }
+
+- /* start the pipeline */
+ LOG(PR_LOG_DEBUG, "starting metadata pipeline");
+ gst_element_set_state(mPlayBin, GST_STATE_PAUSED);
+
+@@ -358,6 +366,7 @@ nsresult GStreamerReader::ReadMetadata(MediaInfo* aInfo,
gst_message_unref(message);
ret = NS_ERROR_FAILURE;
} else {
@@ -1227,7 +1230,7 @@ index 2be45dc..54509e3 100644
* something else has happened (Eos, etc...). Return to the state machine
* to process it.
*/
-@@ -524,24 +573,43 @@ bool GStreamerReader::DecodeAudioData()
+@@ -533,24 +584,44 @@ bool GStreamerReader::DecodeAudioData()
}
}
@@ -1245,8 +1248,9 @@ index 2be45dc..54509e3 100644
int64_t timestamp = GST_BUFFER_TIMESTAMP(buffer);
timestamp = gst_segment_to_stream_time(&mAudioSegment,
GST_FORMAT_TIME, timestamp);
-+
++
timestamp = GST_TIME_AS_USECONDS(timestamp);
++
int64_t duration = 0;
if (GST_CLOCK_TIME_IS_VALID(GST_BUFFER_DURATION(buffer)))
duration = GST_TIME_AS_USECONDS(GST_BUFFER_DURATION(buffer));
@@ -1313,7 +1317,7 @@ index 2be45dc..54509e3 100644
if ((aKeyFrameSkip && !isKeyframe)) {
gst_buffer_unref(buffer);
return true;
-@@ -618,73 +695,55 @@ bool GStreamerReader::DecodeVideoFrame(bool &aKeyFrameSkip,
+@@ -611,10 +687,18 @@ bool GStreamerReader::DecodeVideoFrame(bool &aKeyFrameSkip,
"frame has invalid timestamp");
timestamp = GST_TIME_AS_USECONDS(timestamp);
@@ -1326,16 +1330,14 @@ index 2be45dc..54509e3 100644
+
if (timestamp < aTimeThreshold) {
LOG(PR_LOG_DEBUG, "skipping frame %" GST_TIME_FORMAT
-- " threshold %" GST_TIME_FORMAT,
+ " threshold %" GST_TIME_FORMAT,
- GST_TIME_ARGS(timestamp), GST_TIME_ARGS(aTimeThreshold));
-+ " threshold %" GST_TIME_FORMAT,
-+ GST_TIME_ARGS(timestamp * 1000),
-+ GST_TIME_ARGS(aTimeThreshold * 1000));
++ GST_TIME_ARGS(timestamp * 1000),
++ GST_TIME_ARGS(aTimeThreshold * 1000));
gst_buffer_unref(buffer);
return true;
}
--
- if (!buffer)
+@@ -623,61 +707,36 @@ bool GStreamerReader::DecodeVideoFrame(bool &aKeyFrameSkip,
/* no more frames */
return false;
@@ -1499,7 +1501,7 @@ index 2be45dc..54509e3 100644
if (format == GST_FORMAT_TIME) {
LOG(PR_LOG_DEBUG, "pipeline duration %" GST_TIME_FORMAT,
GST_TIME_ARGS (duration));
-@@ -866,108 +954,6 @@ gboolean GStreamerReader::SeekData(GstAppSrc* aSrc, guint64 aOffset)
+@@ -893,109 +984,6 @@ gboolean GStreamerReader::SeekData(GstAppSrc* aSrc, guint64 aOffset)
return NS_SUCCEEDED(rv);
}
@@ -1563,8 +1565,9 @@ index 2be45dc..54509e3 100644
- // element.
- return GST_FLOW_NOT_SUPPORTED;
- }
-- ImageFormat format = PLANAR_YCBCR;
-- PlanarYCbCrImage* img = reinterpret_cast<PlanarYCbCrImage*>(container->CreateImage(&format, 1).get());
+- PlanarYCbCrImage* img =
+- reinterpret_cast<PlanarYCbCrImage*>(
+- container->CreateImage(ImageFormat::PLANAR_YCBCR).get());
- nsRefPtr<PlanarYCbCrImage> image = dont_AddRef(img);
-
- /* prepare a GstBuffer pointing to the underlying PlanarYCbCrImage buffer */
@@ -1791,16 +1794,16 @@ index 2be45dc..54509e3 100644
+ "Unsupported number of components in video frame");
+
+ aData->mPicX = aData->mPicY = 0;
-+ aData->mPicSize = nsIntSize(mPicture.width, mPicture.height);
-+ aData->mStereoMode = STEREO_MODE_MONO;
++ aData->mPicSize = gfx::IntSize(mPicture.width, mPicture.height);
++ aData->mStereoMode = StereoMode::MONO;
+
+ aData->mYChannel = GST_VIDEO_FRAME_COMP_DATA(aFrame, 0);
+ aData->mYStride = GST_VIDEO_FRAME_COMP_STRIDE(aFrame, 0);
-+ aData->mYSize = nsIntSize(GST_VIDEO_FRAME_COMP_WIDTH(aFrame, 0),
++ aData->mYSize = gfx::IntSize(GST_VIDEO_FRAME_COMP_WIDTH(aFrame, 0),
+ GST_VIDEO_FRAME_COMP_HEIGHT(aFrame, 0));
+ aData->mYSkip = GST_VIDEO_FRAME_COMP_PSTRIDE(aFrame, 0) - 1;
+ aData->mCbCrStride = GST_VIDEO_FRAME_COMP_STRIDE(aFrame, 1);
-+ aData->mCbCrSize = nsIntSize(GST_VIDEO_FRAME_COMP_WIDTH(aFrame, 1),
++ aData->mCbCrSize = gfx::IntSize(GST_VIDEO_FRAME_COMP_WIDTH(aFrame, 1),
+ GST_VIDEO_FRAME_COMP_HEIGHT(aFrame, 1));
+ aData->mCbChannel = GST_VIDEO_FRAME_COMP_DATA(aFrame, 1);
+ aData->mCrChannel = GST_VIDEO_FRAME_COMP_DATA(aFrame, 2);
diff --git a/www/seamonkey/files/patch-bug826985 b/www/seamonkey/files/patch-bug826985
index abc31e2e9cfd..ad74e0ef63a4 100644
--- a/www/seamonkey/files/patch-bug826985
+++ b/www/seamonkey/files/patch-bug826985
@@ -26,25 +26,26 @@ index 55e4cd1..76567b3 100644
dnl enable once Signaling lands
MOZ_WEBRTC_SIGNALING=1
AC_DEFINE(MOZ_WEBRTC_SIGNALING)
-@@ -8981,6 +8984,10 @@ elif test "${OS_TARGET}" = "Android"; then
- fi
- fi
-
-+if test -n "$MOZ_LIBV4L2_LIBS"; then
-+ EXTRA_GYP_DEFINES="$EXTRA_GYP_DEFINES -D use_libv4l2=1"
-+fi
-+
- if test -n "$MOZ_WEBRTC"; then
- AC_MSG_RESULT("generating WebRTC Makefiles...")
-
+diff --git build/gyp.mozbuild build/gyp.mozbuild
+index b483cd1..f1dd1f0 100644
+--- mozilla/build/gyp.mozbuild
++++ mozilla/build/gyp.mozbuild
+@@ -11,6 +11,7 @@ gyp_vars = {
+ 'have_ethtool_cmd_speed_hi': 1 if CONFIG['MOZ_WEBRTC_HAVE_ETHTOOL_SPEED_HI'] else 0,
+ 'include_alsa_audio': 1 if CONFIG['MOZ_ALSA'] else 0,
+ 'include_pulse_audio': 1 if CONFIG['MOZ_PULSEAUDIO'] else 0,
++ 'use_libv4l2': 1 if CONFIG['MOZ_LIBV4L2_LIBS'] else 0,
+ # basic stuff for everything
+ 'include_internal_video_render': 0,
+ 'clang_use_chrome_plugins': 0,
diff --git media/webrtc/signaling/test/Makefile.in media/webrtc/signaling/test/Makefile.in
index b483cd1..f1dd1f0 100644
--- mozilla/media/webrtc/signaling/test/Makefile.in
+++ mozilla/media/webrtc/signaling/test/Makefile.in
-@@ -17,6 +17,7 @@ LIBS = \
+@@ -7,6 +7,7 @@ LIBS = \
+ $(NSPR_LIBS) \
$(NSS_LIBS) \
$(REALTIME_LIBS) \
- $(MOZ_JS_LIBS) \
+ $(MOZ_LIBV4L2_LIBS) \
$(DEPTH)/xpcom/glue/$(LIB_PREFIX)xpcomglue_s.$(LIB_SUFFIX) \
$(DEPTH)/media/mtransport/standalone/$(LIB_PREFIX)mtransport_s.$(LIB_SUFFIX) \
@@ -152,11 +153,14 @@ diff --git toolkit/library/Makefile.in toolkit/library/Makefile.in
index 9c16ffa..1db3794 100644
--- mozilla/toolkit/library/Makefile.in
+++ mozilla/toolkit/library/Makefile.in
-@@ -121,6 +121,7 @@ endif
+@@ -182,6 +182,10 @@ endif
+
EXTRA_DSO_LDOPTS += $(call EXPAND_LIBNAME_PATH,gkmedias,$(DIST)/lib)
- ifdef MOZ_WEBRTC
++ifdef MOZ_LIBV4L2_LIBS
+EXTRA_DSO_LDOPTS += $(MOZ_LIBV4L2_LIBS)
- ifdef MOZ_WEBRTC_SIGNALING
- SHARED_LIBRARY_LIBS += \
- $(DEPTH)/media/webrtc/signaling/signaling_ecc/$(LIB_PREFIX)ecc.$(LIB_SUFFIX) \
++endif
++
+ ifdef MOZ_WEBRTC
+ ifeq (WINNT,$(OS_TARGET))
+ EXTRA_DSO_LDOPTS += \
diff --git a/www/seamonkey/files/patch-bug847568 b/www/seamonkey/files/patch-bug847568
index e3c35c9606b3..279d854dabb9 100644
--- a/www/seamonkey/files/patch-bug847568
+++ b/www/seamonkey/files/patch-bug847568
@@ -14,10 +14,10 @@ index 14bfc0d..5383399 100644
$(INSTALL) system_wrappers $(DIST)
diff --git config/system-headers config/system-headers
-index 126391e..b711fc3 100644
+index 18e8703..bdc5f82 100644
--- mozilla/config/system-headers
+++ mozilla/config/system-headers
-@@ -1144,3 +1144,11 @@ unicode/utypes.h
+@@ -1145,3 +1145,11 @@ unicode/utypes.h
#endif
libutil.h
unwind.h
@@ -30,36 +30,54 @@ index 126391e..b711fc3 100644
+harfbuzz/hb.h
+#endif
diff --git configure.in configure.in
-index bbc7b40..1747206 100644
+index ac38f40..87536b7 100644
--- mozilla/configure.in
+++ mozilla/configure.in
-@@ -7848,6 +7848,34 @@ if test "$USE_FC_FREETYPE"; then
+@@ -8032,6 +8032,52 @@ if test "$USE_FC_FREETYPE"; then
fi
dnl ========================================================
-+dnl Check for graphite2 and harfbuzz
++dnl Check for harfbuzz
+dnl ========================================================
+
+MOZ_ARG_WITH_BOOL(system-harfbuzz,
+[ --with-system-harfbuzz Use system harfbuzz (located with pkgconfig)],
+MOZ_NATIVE_HARFBUZZ=1,
-+MOZ_NATIVE_HARFBUZZ= )
++MOZ_NATIVE_HARFBUZZ=)
+
+if test -n "$MOZ_NATIVE_HARFBUZZ"; then
+ PKG_CHECK_MODULES(MOZ_HARFBUZZ, harfbuzz >= 0.9.25)
+fi
++
+AC_SUBST(MOZ_NATIVE_HARFBUZZ)
+AC_SUBST(MOZ_HARFBUZZ_CFLAGS)
+AC_SUBST(MOZ_HARFBUZZ_LIBS)
+
++dnl ========================================================
++dnl Check for graphite2
++dnl ========================================================
+MOZ_ARG_WITH_BOOL(system-graphite2,
+[ --with-system-graphite2 Use system graphite2 (located with pkgconfig)],
+MOZ_NATIVE_GRAPHITE2=1,
-+MOZ_NATIVE_GRAPHITE2= )
++MOZ_NATIVE_GRAPHITE2=)
+
+if test -n "$MOZ_NATIVE_GRAPHITE2"; then
-+ PKG_CHECK_MODULES(MOZ_GRAPHITE2, graphite2 >= 1.2.4)
++ PKG_CHECK_MODULES(MOZ_GRAPHITE2, graphite2)
++
++ dnl graphite2.pc has bogus version, check manually
++ AC_TRY_COMPILE([ #include <graphite2/Font.h>
++ #define GR2_VERSION_REQUIRE(major,minor,bugfix) \
++ ( GR2_VERSION_MAJOR * 10000 + GR2_VERSION_MINOR \
++ * 100 + GR2_VERSION_BUGFIX >= \
++ (major) * 10000 + (minor) * 100 + (bugfix) )
++ ], [
++ #if !GR2_VERSION_REQUIRE(1,2,4)
++ #error "Insufficient graphite2 version."
++ #endif
++ ], [],
++ [AC_MSG_ERROR([--with-system-graphite2 requested but no working libgraphite2 found])])
+fi
++
+AC_SUBST(MOZ_NATIVE_GRAPHITE2)
+AC_SUBST(MOZ_GRAPHITE2_CFLAGS)
+AC_SUBST(MOZ_GRAPHITE2_LIBS)
@@ -110,7 +128,7 @@ index 519aa46..6929751 100644
'thebes',
'ipc',
diff --git gfx/skia/Makefile.in gfx/skia/Makefile.in
-index 07a77a3..067f7bd 100644
+index ee0efb2..98e169d6f 100644
--- mozilla/gfx/skia/Makefile.in
+++ mozilla/gfx/skia/Makefile.in
@@ -15,6 +15,10 @@ ifeq (qt,$(MOZ_WIDGET_TOOLKIT))
@@ -123,9 +141,9 @@ index 07a77a3..067f7bd 100644
+
include $(topsrcdir)/config/rules.mk
- ifneq (,$(INTEL_ARCHITECTURE))
+ ifeq ($(CPU_ARCH)_$(GNU_CC),arm_1)
diff --git gfx/thebes/Makefile.in gfx/thebes/Makefile.in
-index e9f6b6c..0df2d8d 100644
+index 45c36ae..79d32cf 100644
--- mozilla/gfx/thebes/Makefile.in
+++ mozilla/gfx/thebes/Makefile.in
@@ -13,6 +13,14 @@ DEFINES := $(filter-out -DUNICODE,$(DEFINES))
@@ -144,7 +162,7 @@ index e9f6b6c..0df2d8d 100644
CXXFLAGS += $(CAIRO_FT_CFLAGS)
endif
diff --git intl/unicharutil/util/Makefile.in intl/unicharutil/util/Makefile.in
-index f6b9f7c..11c44f4 100644
+index f6b9f7c..60863f4 100644
--- mozilla/intl/unicharutil/util/Makefile.in
+++ mozilla/intl/unicharutil/util/Makefile.in
@@ -21,3 +21,7 @@ ifdef _MSC_VER
@@ -153,25 +171,28 @@ index f6b9f7c..11c44f4 100644
endif
+
+ifdef MOZ_NATIVE_HARFBUZZ
-+nsUnicodePropertyData.$(OBJ_SUFFIX): CXXFLAGS+=$(MOZ_HARFBUZZ_CFLAGS)
++CXXFLAGS += $(MOZ_HARFBUZZ_CFLAGS)
+endif
diff --git netwerk/dns/Makefile.in netwerk/dns/Makefile.in
-index 1cacbd7..a8cd156 100644
+index 1cacbd7..f5d72bb 100644
--- mozilla/netwerk/dns/Makefile.in
+++ mozilla/netwerk/dns/Makefile.in
-@@ -9,3 +9,7 @@ include $(topsrcdir)/config/rules.mk
- # for effective TLD data.
- etld_data.inc: $(srcdir)/prepare_tlds.py $(srcdir)/effective_tld_names.dat
- $(PYTHON) $(srcdir)/prepare_tlds.py $(srcdir)/effective_tld_names.dat > etld_data.inc
-+
+@@ -5,6 +5,10 @@
+
+ include $(topsrcdir)/config/rules.mk
+
+ifdef MOZ_NATIVE_HARFBUZZ
-+nsIDNService.$(OBJ_SUFFIX): CXXFLAGS+=$(MOZ_HARFBUZZ_CFLAGS)
++CXXFLAGS += $(MOZ_HARFBUZZ_CFLAGS)
+endif
++
+ # Generate the include file containing compact, static definitions
+ # for effective TLD data.
+ etld_data.inc: $(srcdir)/prepare_tlds.py $(srcdir)/effective_tld_names.dat
diff --git toolkit/library/Makefile.in toolkit/library/Makefile.in
-index 007f272..27f488e 100644
+index 67f0db9..d42137a 100644
--- mozilla/toolkit/library/Makefile.in
+++ mozilla/toolkit/library/Makefile.in
-@@ -103,6 +103,14 @@ ifndef MOZ_TREE_PIXMAN
+@@ -89,6 +89,14 @@ ifndef MOZ_TREE_PIXMAN
EXTRA_DSO_LDOPTS += $(MOZ_PIXMAN_LIBS)
endif
diff --git a/www/seamonkey/files/patch-bug878791 b/www/seamonkey/files/patch-bug878791
deleted file mode 100644
index bcdd5e9bfea4..000000000000
--- a/www/seamonkey/files/patch-bug878791
+++ /dev/null
@@ -1,11 +0,0 @@
---- mozilla/toolkit/components/osfile/modules/osfile_unix_allthreads.jsm.orig 2013-05-11 21:19:53.000000000 +0200
-+++ mozilla/toolkit/components/osfile/modules/osfile_unix_allthreads.jsm 2013-06-02 17:15:05.000000000 +0200
-@@ -41,7 +41,7 @@ let Const = SharedAll.Constants.libc;
- // 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/seamonkey/files/patch-bug916589 b/www/seamonkey/files/patch-bug916589
index be2c2bc97fd4..c6aef052c4ce 100644
--- a/www/seamonkey/files/patch-bug916589
+++ b/www/seamonkey/files/patch-bug916589
@@ -2,12 +2,16 @@ diff --git media/mtransport/third_party/nrappkit/src/port/generic/include/sys/qu
index 5b50785..7cf47d5 100644
--- mozilla/media/mtransport/third_party/nrappkit/src/port/generic/include/sys/queue.h
+++ mozilla/media/mtransport/third_party/nrappkit/src/port/generic/include/sys/queue.h
-@@ -31,11 +31,14 @@
+@@ -31,11 +31,18 @@
*/
-#ifndef _SYS_QUEUE_H_
+#if (defined(BSD) && !defined(__OpenBSD__)) || defined(DARWIN)
+#include_next <sys/queue.h>
++# if defined(__DragonFly__)
++#define STAILQ_FOREACH_SAFE STAILQ_FOREACH_MUTABLE
++#define TAILQ_FOREACH_SAFE TAILQ_FOREACH_MUTABLE
++# endif
+#elif !defined(_SYS_QUEUE_H_)
#define _SYS_QUEUE_H_
diff --git a/www/seamonkey/files/patch-bug961264 b/www/seamonkey/files/patch-bug961264
index 00d077b235db..1a4cd035ab7f 100644
--- a/www/seamonkey/files/patch-bug961264
+++ b/www/seamonkey/files/patch-bug961264
@@ -142,9 +142,9 @@ diff --git js/src/configure.in js/src/configure.in
index bddd46d..d4b522e 100644
--- mozilla/js/src/configure.in
+++ mozilla/js/src/configure.in
-@@ -2348,116 +2348,13 @@ fi
+@@ -2077,116 +2077,13 @@ AC_LANG_CPLUSPLUS
- AC_LANG_C
+ MOZ_CXX11
-dnl Check for .hidden assembler directive and visibility attribute.
-dnl Borrowed from glibc configure.in
@@ -249,7 +249,7 @@ index bddd46d..d4b522e 100644
- ])
- if test "$ac_cv_have_visibility_builtin_bug" = "no" -a \
- "$ac_cv_have_visibility_class_bug" = "no"; then
-- VISIBILITY_FLAGS='-I$(DIST)/system_wrappers_js -include $(topsrcdir)/config/gcc_hidden.h'
+- VISIBILITY_FLAGS='-I$(DIST)/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h'
- WRAP_SYSTEM_INCLUDES=1
- else
- VISIBILITY_FLAGS='-fvisibility=hidden'
@@ -259,7 +259,7 @@ index bddd46d..d4b522e 100644
- fi # have visibility(hidden) attribute
+ AC_DEFINE(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE)
+ AC_DEFINE(HAVE_VISIBILITY_ATTRIBUTE)
-+ VISIBILITY_FLAGS='-I$(DIST)/system_wrappers_js -include $(topsrcdir)/config/gcc_hidden.h'
++ VISIBILITY_FLAGS='-I$(DIST)/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h'
+ WRAP_SYSTEM_INCLUDES=1
fi # GNU_CC
diff --git a/www/seamonkey/files/patch-bug961816 b/www/seamonkey/files/patch-bug961816
deleted file mode 100644
index f4316f625838..000000000000
--- a/www/seamonkey/files/patch-bug961816
+++ /dev/null
@@ -1,48 +0,0 @@
-diff --git config/system-headers config/system-headers
-index 8803150..ae38d68 100644
---- mozilla/config/system-headers
-+++ mozilla/config/system-headers
-@@ -1145,3 +1145,4 @@ unicode/ustring.h
- unicode/utypes.h
- #endif
- libutil.h
-+unwind.h
-diff --git configure.in configure.in
-index f452a5e..a1ebbcc 100644
---- mozilla/configure.in
-+++ mozilla/configure.in
-@@ -7455,7 +7455,10 @@ dnl ========================================================
- dnl = Support for gcc stack unwinding (from gcc 3.3)
- dnl ========================================================
- if test -z "$SKIP_LIBRARY_CHECKS"; then
-+ AC_LANG_SAVE
-+ AC_LANG_CPLUSPLUS
- MOZ_CHECK_HEADER(unwind.h, AC_CHECK_FUNCS(_Unwind_Backtrace))
-+ AC_LANG_RESTORE
- fi
-
- dnl ========================================================
-diff --git config/system-headers config/system-headers
-index 8803150..ae38d68 100644
---- mozilla/js/src/config/system-headers
-+++ mozilla/js/src/config/system-headers
-@@ -1145,3 +1145,4 @@ unicode/ustring.h
- unicode/utypes.h
- #endif
- libutil.h
-+unwind.h
-diff --git configure.in configure.in
-index f452a5e..a1ebbcc 100644
---- mozilla/js/src/configure.in
-+++ mozilla/js/src/configure.in
-@@ -7455,7 +7455,10 @@ dnl ========================================================
- dnl = Support for gcc stack unwinding (from gcc 3.3)
- dnl ========================================================
- if test -z "$SKIP_LIBRARY_CHECKS"; then
-+ AC_LANG_SAVE
-+ AC_LANG_CPLUSPLUS
- MOZ_CHECK_HEADER(unwind.h, AC_CHECK_FUNCS(_Unwind_Backtrace))
-+ AC_LANG_RESTORE
- fi
-
- dnl ========================================================
diff --git a/www/seamonkey/files/patch-bug962345 b/www/seamonkey/files/patch-bug962345
index 07292e6fbfa9..d59fb9528285 100644
--- a/www/seamonkey/files/patch-bug962345
+++ b/www/seamonkey/files/patch-bug962345
@@ -7,12 +7,3 @@ index 8803150..ae38d68 100644
libutil.h
unwind.h
+cairo-qt.h
-diff --git config/system-headers config/system-headers
-index 8803150..ae38d68 100644
---- mozilla/js/src/config/system-headers
-+++ mozilla/js/src/config/system-headers
-@@ -1144,3 +1144,4 @@ unicode/utypes.h
- #endif
- libutil.h
- unwind.h
-+cairo-qt.h
diff --git a/www/seamonkey/files/patch-no-videoio.h b/www/seamonkey/files/patch-bug985848
index f23d04ad6157..f23d04ad6157 100644
--- a/www/seamonkey/files/patch-no-videoio.h
+++ b/www/seamonkey/files/patch-bug985848
diff --git a/www/seamonkey/files/patch-mozilla-extensions-spellcheck-hunspell-src-mozHunspell.cpp b/www/seamonkey/files/patch-bug991253
index 32241fdfe270..32241fdfe270 100644
--- a/www/seamonkey/files/patch-mozilla-extensions-spellcheck-hunspell-src-mozHunspell.cpp
+++ b/www/seamonkey/files/patch-bug991253
diff --git a/www/seamonkey/files/patch-bug993467 b/www/seamonkey/files/patch-bug993467
new file mode 100644
index 000000000000..dd9e08a77034
--- /dev/null
+++ b/www/seamonkey/files/patch-bug993467
@@ -0,0 +1,11 @@
+--- config/config.mk~
++++ config/config.mk
+@@ -411,7 +411,7 @@ MY_RULES := $(DEPTH)/config/myrules.mk
+ #
+ CCC = $(CXX)
+
+-OS_INCLUDES += $(NSPR_CFLAGS) $(NSS_CFLAGS) $(MOZ_JPEG_CFLAGS) $(MOZ_PNG_CFLAGS) $(MOZ_ZLIB_CFLAGS)
++OS_INCLUDES += $(NSPR_CFLAGS) $(NSS_CFLAGS) $(MOZ_JPEG_CFLAGS) $(MOZ_PNG_CFLAGS) $(MOZ_ZLIB_CFLAGS) $(MOZ_PIXMAN_CFLAGS)
+
+ INCLUDES = \
+ $(LOCAL_INCLUDES) \
diff --git a/www/seamonkey/files/patch-bug791305 b/www/seamonkey/files/patch-ijg-libjpeg
index 633415128199..06e9099ba36c 100644
--- a/www/seamonkey/files/patch-bug791305
+++ b/www/seamonkey/files/patch-ijg-libjpeg
@@ -1,19 +1,4 @@
-commit c269a16
-Author: Jeff Muizelaar <jmuizelaar@mozilla.com>
-Date: Fri Sep 14 15:54:55 2012 -0400
-
- Bug 791305. Use libjpeg's color conversion code instead of our own. r=joe,r=khuey
-
- libjpeg-turbo supports converting directly to a format compatible with cairo's
- FORMAT_RGB24. Use that instead of our own handcoded function. This also gives
- us SSE2 and NEON version of this function.
-
- --HG--
- extra : rebase_source : 18f48925f023a33ec2a097d4f4e5cc2ab40be1e9
----
- configure.in | 6 +-
- image/decoders/nsJPEGDecoder.cpp | 311 ++-------------------------------------
- 2 files changed, 20 insertions(+), 297 deletions(-)
+# Partially revert bug 791305 to allow building with system IJG jpeg library
diff --git configure.in configure.in
index f0aeb5d..1c01010 100644
diff --git a/www/seamonkey/files/patch-mozilla-js-src-Makefile.in b/www/seamonkey/files/patch-mozilla-js-src-Makefile.in
deleted file mode 100644
index 885d6602fa5b..000000000000
--- a/www/seamonkey/files/patch-mozilla-js-src-Makefile.in
+++ /dev/null
@@ -1,11 +0,0 @@
---- mozilla/js/src/Makefile.in~
-+++ mozilla/js/src/Makefile.in
-@@ -373,7 +373,7 @@ endif
- ifdef MOZ_SHARED_ICU
- EXTRA_DSO_LDOPTS += $(MOZ_ICU_LIBS)
- else
--SHARED_LIBRARY_LIBS += $(MOZ_ICU_LIBS)
-+SHARED_LIBRARY_LIBS += $(filter-out -L% -l%,$(MOZ_ICU_LIBS))
- endif
-
- # Prevent floating point errors caused by VC++ optimizations
diff --git a/www/seamonkey/files/patch-mozilla-media-mtransport-third_party-nICEr-src-util-mbslen.c b/www/seamonkey/files/patch-mozilla-media-mtransport-third_party-nICEr-src-util-mbslen.c
new file mode 100644
index 000000000000..149bf0b40182
--- /dev/null
+++ b/www/seamonkey/files/patch-mozilla-media-mtransport-third_party-nICEr-src-util-mbslen.c
@@ -0,0 +1,16 @@
+--- mozilla/media/mtransport/third_party/nICEr/src/util/mbslen.c~
++++ mozilla/media/mtransport/third_party/nICEr/src/util/mbslen.c
+@@ -54,6 +54,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ # endif
+ #endif
+
++#ifdef __DragonFly__
++#include <osreldate.h>
++# if __DragonFly_version > 300502
++# define HAVE_XLOCALE
++# endif
++#endif
++
+ #ifdef HAVE_XLOCALE
+ #include <xlocale.h>
+ #endif /* HAVE_XLOCALE */
diff --git a/www/seamonkey/files/patch-mozilla-security-manager-ssl-src-nsNSSComponent.cpp b/www/seamonkey/files/patch-mozilla-security-manager-ssl-src-nsNSSComponent.cpp
deleted file mode 100644
index 272a02bdb9e0..000000000000
--- a/www/seamonkey/files/patch-mozilla-security-manager-ssl-src-nsNSSComponent.cpp
+++ /dev/null
@@ -1,10 +0,0 @@
---- mozilla/security/manager/ssl/src/nsNSSComponent.cpp.orig Mon May 29 23:10:54 2006
-+++ mozilla/security/manager/ssl/src/nsNSSComponent.cpp Mon May 29 23:12:22 2006
-@@ -110,6 +110,7 @@
- #include "nss.h"
- #include "pk11func.h"
- #include "ssl.h"
-+#define NSS_ENABLE_ECC 1
- #include "sslproto.h"
- #include "secmod.h"
- #include "sechash.h"
diff --git a/www/seamonkey/files/patch-z-bug517422 b/www/seamonkey/files/patch-z-bug517422
index 490da806c8f5..82e453baca96 100644
--- a/www/seamonkey/files/patch-z-bug517422
+++ b/www/seamonkey/files/patch-z-bug517422
@@ -1,21 +1,25 @@
-# Allow building against system-wide ogg/vorbis/opus.
+# Allow more config/external/ libs built against system-wide version.
diff --git config/Makefile.in config/Makefile.in
-index 5383399..4393ae8 100644
+index 5383399..0410004 100644
--- mozilla/config/Makefile.in
+++ mozilla/config/Makefile.in
-@@ -79,6 +79,9 @@ export:: $(export-preqs)
+@@ -79,6 +79,13 @@ export:: $(export-preqs)
-DMOZ_NATIVE_ICU=$(MOZ_NATIVE_ICU) \
-DMOZ_NATIVE_GRAPHITE2=$(MOZ_NATIVE_GRAPHITE2) \
-DMOZ_NATIVE_HARFBUZZ=$(MOZ_NATIVE_HARFBUZZ) \
+ -DMOZ_NATIVE_OGG=$(MOZ_NATIVE_OGG) \
++ -DMOZ_NATIVE_THEORA=$(MOZ_NATIVE_THEORA) \
+ -DMOZ_NATIVE_VORBIS=$(MOZ_NATIVE_VORBIS) \
++ -DMOZ_NATIVE_TREMOR=$(MOZ_NATIVE_TREMOR) \
+ -DMOZ_NATIVE_OPUS=$(MOZ_NATIVE_OPUS) \
++ -DMOZ_NATIVE_SPEEX=$(MOZ_NATIVE_SPEEX) \
++ -DMOZ_NATIVE_SOUNDTOUCH=$(MOZ_NATIVE_SOUNDTOUCH) \
$(srcdir)/system-headers | $(PERL) $(topsrcdir)/nsprpub/config/make-system-wrappers.pl system_wrappers
$(INSTALL) system_wrappers $(DIST)
diff --git config/external/moz.build config/external/moz.build
-index c22a36c..740402e 100644
+index f67c5c7..eb909ce 100644
--- mozilla/config/external/moz.build
+++ mozilla/config/external/moz.build
@@ -15,13 +15,13 @@ if CONFIG['MOZ_UPDATER']:
@@ -26,7 +30,8 @@ index c22a36c..740402e 100644
+if CONFIG['MOZ_VORBIS'] and not CONFIG['MOZ_NATIVE_VORBIS']:
external_dirs += ['media/libvorbis']
- if CONFIG['MOZ_TREMOR']:
+-if CONFIG['MOZ_TREMOR']:
++if CONFIG['MOZ_TREMOR'] and not CONFIG['MOZ_NATIVE_TREMOR']:
external_dirs += ['media/libtremor']
-if CONFIG['MOZ_OPUS']:
@@ -34,22 +39,56 @@ index c22a36c..740402e 100644
external_dirs += ['media/libopus']
if CONFIG['MOZ_WEBM']:
-@@ -34,7 +34,9 @@ if CONFIG['MOZ_VPX'] and not CONFIG['MOZ_NATIVE_LIBVPX']:
+@@ -34,16 +34,23 @@ if CONFIG['MOZ_VPX'] and not CONFIG['MOZ
external_dirs += ['media/libvpx']
if CONFIG['MOZ_OGG']:
- external_dirs += ['media/libogg', 'media/libtheora']
+ if not CONFIG['MOZ_NATIVE_OGG']:
+ external_dirs += ['media/libogg']
-+ external_dirs += ['media/libtheora']
++ if not CONFIG['MOZ_NATIVE_THEORA']:
++ external_dirs += ['media/libtheora']
if not CONFIG['MOZ_NATIVE_PNG']:
external_dirs += ['media/libpng']
+
++if not CONFIG['MOZ_NATIVE_SPEEX']:
++ external_dirs += ['media/libspeex_resampler']
++
++if not CONFIG['MOZ_NATIVE_SOUNDTOUCH']:
++ external_dirs += ['media/libsoundtouch']
++
+ external_dirs += [
+ 'media/kiss_fft',
+ 'media/libcubeb',
+- 'media/libspeex_resampler',
+- 'media/libsoundtouch',
+ ]
+
+ PARALLEL_DIRS += ['../../' + i for i in external_dirs]
diff --git config/system-headers config/system-headers
-index b711fc3..fd3c14f 100644
+index bef567c..9807c29 100644
--- mozilla/config/system-headers
+++ mozilla/config/system-headers
-@@ -1153,3 +1153,17 @@ graphite2/Segment.h
+@@ -1050,8 +1050,6 @@ X11/Xutil.h
+ xpt_struct.h
+ xpt_xdr.h
+ zmouse.h
+-speex/speex_resampler.h
+-soundtouch/SoundTouch.h
+ #if MOZ_NATIVE_PNG==1
+ png.h
+ #endif
+@@ -1119,6 +1117,8 @@ ogg/ogg.h
+ ogg/os_types.h
+ nestegg/nestegg.h
+ cubeb/cubeb.h
++speex/speex_resampler.h
++soundtouch/SoundTouch.h
+ #endif
+ gst/gst.h
+ gst/app/gstappsink.h
+@@ -1155,3 +1155,29 @@ graphite2/Segment.h
harfbuzz/hb-ot.h
harfbuzz/hb.h
#endif
@@ -57,21 +96,33 @@ index b711fc3..fd3c14f 100644
+ogg/ogg.h
+ogg/os_types.h
+#endif
++#if MOZ_NATIVE_THEORA==1
++theora/theoradec.h
++#endif
+#if MOZ_NATIVE_VORBIS==1
+vorbis/codec.h
+vorbis/vorbisenc.h
+#endif
++#if MOZ_NATIVE_TREMOR==1
++tremor/ivorbiscodec.h
++#endif
+#if MOZ_NATIVE_OPUS==1
+opus.h
+opus_multistream.h
+opus/opus.h
+opus/opus_multistream.h
+#endif
++#if MOZ_NATIVE_SPEEX==1
++speex/speex_resampler.h
++#endif
++#if MOZ_NATIVE_SOUNDTOUCH==1
++soundtouch/SoundTouch.h
++#endif
diff --git configure.in configure.in
-index df49287..05e97ff 100644
+index 87db361..7947626 100644
--- mozilla/configure.in
+++ mozilla/configure.in
-@@ -5130,6 +5130,40 @@ if test "${ac_cv_c_attribute_aligned}" != "0"; then
+@@ -5211,6 +5211,57 @@ if test "${ac_cv_c_attribute_aligned}" != "0"; then
fi
dnl ========================================================
@@ -81,7 +132,7 @@ index df49287..05e97ff 100644
+MOZ_ARG_WITH_BOOL(system-ogg,
+[ --with-system-ogg Use system libogg (located with pkgconfig)],
+MOZ_NATIVE_OGG=1,
-+MOZ_NATIVE_OGG= )
++MOZ_NATIVE_OGG=)
+
+if test -n "$MOZ_NATIVE_OGG"; then
+ PKG_CHECK_MODULES(MOZ_OGG, ogg >= 1.2.1)
@@ -98,7 +149,7 @@ index df49287..05e97ff 100644
+MOZ_ARG_WITH_BOOL(system-vorbis,
+[ --with-system-vorbis Use system libvorbis (located with pkgconfig)],
+MOZ_NATIVE_VORBIS=1,
-+MOZ_NATIVE_VORBIS= )
++MOZ_NATIVE_VORBIS=)
+
+if test -n "$MOZ_NATIVE_VORBIS"; then
+ PKG_CHECK_MODULES(MOZ_VORBIS, vorbis vorbisenc >= 1.3.4)
@@ -109,10 +160,27 @@ index df49287..05e97ff 100644
+AC_SUBST(MOZ_VORBIS_LIBS)
+
+dnl ========================================================
++dnl Check for integer-only libvorbis aka tremor
++dnl ========================================================
++
++MOZ_ARG_WITH_BOOL(system-tremor,
++[ --with-system-tremor Use system libtremor (located with pkgconfig)],
++MOZ_NATIVE_TREMOR=1,
++MOZ_NATIVE_TREMOR=)
++
++if test -n "$MOZ_NATIVE_TREMOR"; then
++ PKG_CHECK_MODULES(MOZ_TREMOR, vorbisidec >= 1.2.1)
++fi
++
++AC_SUBST(MOZ_NATIVE_TREMOR)
++AC_SUBST(MOZ_TREMOR_CFLAGS)
++AC_SUBST(MOZ_TREMOR_LIBS)
++
++dnl ========================================================
dnl = Disable Opus audio codec support
dnl ========================================================
MOZ_ARG_DISABLE_BOOL(opus,
-@@ -5138,6 +5172,25 @@ MOZ_ARG_DISABLE_BOOL(opus,
+@@ -5219,6 +5274,76 @@ MOZ_ARG_DISABLE_BOOL(opus,
MOZ_OPUS=1)
dnl ========================================================
@@ -122,7 +190,7 @@ index df49287..05e97ff 100644
+MOZ_ARG_WITH_BOOL(system-opus,
+[ --with-system-opus Use system libopus (located with pkgconfig)],
+MOZ_NATIVE_OPUS=1,
-+MOZ_NATIVE_OPUS= )
++MOZ_NATIVE_OPUS=)
+
+if test -n "$MOZ_NATIVE_OPUS"; then
+ PKG_CHECK_MODULES(MOZ_OPUS, opus >= 1.1)
@@ -135,30 +203,132 @@ index df49287..05e97ff 100644
+AC_SUBST(MOZ_OPUS_LIBS)
+
+dnl ========================================================
++dnl Check for libtheora
++dnl ========================================================
++
++MOZ_ARG_WITH_BOOL(system-theora,
++[ --with-system-theora Use system libtheora (located with pkgconfig)],
++MOZ_NATIVE_THEORA=1,
++MOZ_NATIVE_THEORA=)
++
++if test -n "$MOZ_NATIVE_THEORA"; then
++ PKG_CHECK_MODULES(MOZ_THEORA, theora >= 1.2)
++fi
++
++AC_SUBST(MOZ_NATIVE_THEORA)
++AC_SUBST(MOZ_THEORA_CFLAGS)
++AC_SUBST(MOZ_THEORA_LIBS)
++
++dnl ========================================================
++dnl Check for libspeex resampler
++dnl ========================================================
++
++MOZ_ARG_WITH_BOOL(system-speex,
++[ --with-system-speex Use system libspeex (located with pkgconfig)],
++MOZ_NATIVE_SPEEX=1,
++MOZ_NATIVE_SPEEX=)
++
++if test -n "$MOZ_NATIVE_SPEEX"; then
++ PKG_CHECK_MODULES(MOZ_SPEEX, speexdsp >= 1.2)
++fi
++
++AC_SUBST(MOZ_NATIVE_SPEEX)
++AC_SUBST(MOZ_SPEEX_CFLAGS)
++AC_SUBST(MOZ_SPEEX_LIBS)
++
++dnl ========================================================
++dnl Check for libsoundtouch
++dnl ========================================================
++
++MOZ_ARG_WITH_BOOL(system-soundtouch,
++[ --with-system-soundtouch Use system libsoundtouch (located with pkgconfig)],
++MOZ_NATIVE_SOUNDTOUCH=1,
++MOZ_NATIVE_SOUNDTOUCH=)
++
++if test -n "$MOZ_NATIVE_SOUNDTOUCH"; then
++ PKG_CHECK_MODULES(MOZ_SOUNDTOUCH, soundtouch >= 1.7.0)
++fi
++
++AC_SUBST(MOZ_NATIVE_SOUNDTOUCH)
++AC_SUBST(MOZ_SOUNDTOUCH_CFLAGS)
++AC_SUBST(MOZ_SOUNDTOUCH_LIBS)
++
++dnl ========================================================
dnl = Disable VP8 decoder support
dnl ========================================================
MOZ_ARG_DISABLE_BOOL(webm,
+diff --git content/media/AudioStream.cpp content/media/AudioStream.cpp
+index 88c8aa6..6b03288 100644
+--- mozilla/content/media/AudioStream.cpp
++++ mozilla/content/media/AudioStream.cpp
+@@ -13,7 +13,6 @@
+ #include "mozilla/Mutex.h"
+ #include <algorithm>
+ #include "mozilla/Preferences.h"
+-#include "soundtouch/SoundTouch.h"
+ #include "Latency.h"
+
+ namespace mozilla {
+diff --git content/media/AudioStream.h content/media/AudioStream.h
+index 085676d..00c54fb 100644
+--- mozilla/content/media/AudioStream.h
++++ mozilla/content/media/AudioStream.h
+@@ -15,6 +15,7 @@
+ #include "mozilla/StaticMutex.h"
+
+ #include "cubeb/cubeb.h"
++#include "soundtouch/SoundTouch.h"
+
+ template <>
+ class nsAutoRefTraits<cubeb_stream> : public nsPointerRefTraits<cubeb_stream>
diff --git content/media/Makefile.in content/media/Makefile.in
-index 68f360e..76f2d57 100644
+index fd34449..c6c42c8 100644
--- mozilla/content/media/Makefile.in
+++ mozilla/content/media/Makefile.in
-@@ -7,4 +7,16 @@ include $(topsrcdir)/config/rules.mk
+@@ -6,3 +6,31 @@ include $(topsrcdir)/config/rules.mk
+
CFLAGS += $(GSTREAMER_CFLAGS)
CXXFLAGS += $(GSTREAMER_CFLAGS)
-
++
+ifdef MOZ_NATIVE_OGG
+CXXFLAGS += $(MOZ_OGG_CFLAGS)
+endif
+
++ifdef MOZ_NATIVE_THEORA
++CXXFLAGS += $(MOZ_THEORA_CFLAGS)
++endif
++
+ifdef MOZ_NATIVE_VORBIS
+CXXFLAGS += $(MOZ_VORBIS_CFLAGS)
+endif
+
++ifdef MOZ_NATIVE_TREMOR
++CXXFLAGS += $(MOZ_TREMOR_CFLAGS)
++endif
++
+ifdef MOZ_NATIVE_OPUS
+CXXFLAGS += $(MOZ_OPUS_CFLAGS)
+endif
+
- AudioNodeEngineNEON.$(OBJ_SUFFIX): CXXFLAGS += -mfpu=neon
++ifdef MOZ_NATIVE_SPEEX
++CXXFLAGS += $(MOZ_SPEEX_CFLAGS)
++endif
++
++ifdef MOZ_NATIVE_SOUNDTOUCH
++CXXFLAGS += $(MOZ_SOUNDTOUCH_CFLAGS)
++endif
+diff --git media/libcubeb/src/Makefile.in media/libcubeb/src/Makefile.in
+index 4c14494..1cb98e2 100644
+--- mozilla/media/libcubeb/src/Makefile.in
++++ mozilla/media/libcubeb/src/Makefile.in
+@@ -9,3 +9,7 @@ CFLAGS += \
+ $(MOZ_ALSA_CFLAGS) \
+ $(MOZ_PULSEAUDIO_CFLAGS) \
+ $(NULL)
++
++ifdef MOZ_NATIVE_SPEEX
++CFLAGS += $(MOZ_SPEEX_CFLAGS)
++endif
diff --git media/libtheora/Makefile.in media/libtheora/Makefile.in
new file mode 100644
index 0000000..1f02dc0
@@ -205,7 +375,7 @@ index 0000000..1f02dc0
+CFLAGS += $(MOZ_OGG_CFLAGS)
+endif
diff --git media/webrtc/signaling/test/Makefile.in media/webrtc/signaling/test/Makefile.in
-index c5e82c4..91ef86a 100644
+index bbc971c..6ed7e41 100644
--- mozilla/media/webrtc/signaling/test/Makefile.in
+++ mozilla/media/webrtc/signaling/test/Makefile.in
@@ -48,6 +48,12 @@ LIBS += \
@@ -230,7 +400,7 @@ index 00e77e7..55f48ab 100644
['build_with_mozilla==1', {
# Mozilla provides its own build of the opus library.
- 'include_dirs': [
-- '$(DIST)/include/opus',
+- '/media/libopus/include',
- ]
+ 'cflags_mozilla': [
+ '$(MOZ_OPUS_CFLAGS)',
@@ -239,10 +409,10 @@ index 00e77e7..55f48ab 100644
'dependencies': [
'<(DEPTH)/third_party/opus/opus.gyp:opus'
diff --git toolkit/library/Makefile.in toolkit/library/Makefile.in
-index 27f488e..cd27084 100644
+index d42137a..695e75a8 100644
--- mozilla/toolkit/library/Makefile.in
+++ mozilla/toolkit/library/Makefile.in
-@@ -91,6 +91,18 @@ ifdef MOZ_NATIVE_HUNSPELL
+@@ -77,6 +77,34 @@ ifdef MOZ_NATIVE_HUNSPELL
EXTRA_DSO_LDOPTS += $(MOZ_HUNSPELL_LIBS)
endif
@@ -250,14 +420,30 @@ index 27f488e..cd27084 100644
+EXTRA_DSO_LDOPTS += $(MOZ_OGG_LIBS)
+endif
+
++ifdef MOZ_NATIVE_THEORA
++EXTRA_DSO_LDOPTS += $(MOZ_THEORA_LIBS)
++endif
++
+ifdef MOZ_NATIVE_VORBIS
+EXTRA_DSO_LDOPTS += $(MOZ_VORBIS_LIBS)
+endif
+
++ifdef MOZ_NATIVE_TREMOR
++EXTRA_DSO_LDOPTS += $(MOZ_TREMOR_LIBS)
++endif
++
+ifdef MOZ_NATIVE_OPUS
+EXTRA_DSO_LDOPTS += $(MOZ_OPUS_LIBS)
+endif
+
++ifdef MOZ_NATIVE_SPEEX
++EXTRA_DSO_LDOPTS += $(MOZ_SPEEX_LIBS)
++endif
++
++ifdef MOZ_NATIVE_SOUNDTOUCH
++EXTRA_DSO_LDOPTS += $(MOZ_SOUNDTOUCH_LIBS)
++endif
++
ifdef MOZ_NATIVE_LIBEVENT
EXTRA_DSO_LDOPTS += $(MOZ_LIBEVENT_LIBS)
endif