Index: branches/2015Q4/Mk/Uses/gecko.mk =================================================================== --- branches/2015Q4/Mk/Uses/gecko.mk (revision 402339) +++ branches/2015Q4/Mk/Uses/gecko.mk (revision 402340) @@ -1,127 +1,127 @@ # $FreeBSD$ # # Handle dependency of different gecko based applications # # MAINTAINER: gecko@FreeBSD.org # # Feature: gecko # Usage: USES=gecko or USES=gecko:ARGS # Valid ARGS: libxul, firefox, seamonkey, thunderbird # in case the first argument is not libxul # The following arguments are available # - build: also add the dependency as a build # dependency # - [0-9][0-9][+]?: a version optionnally # followed by a + # .if !defined(_INCLUDE_USES_GECKO_MK) _INCLUDE_USES_GECKO_MK= yes .if empty(gecko_ARGS) gecko_ARGS= libxul .endif _GECKO_VERSION= ${gecko_ARGS:M[0-9][0-9]*} .if ${gecko_ARGS:Mlibxul} # Compat with older versions GECKO= libxul GECKO_CONFING?= ${LOCALBASE}/bin/${GECKO}-config XPIDL?= ${LOCALBASE}/lib/${GECKO}/xpidl XPIDL_INCL?= `${GECKO_CONFIG} --idlflags` BUILD_DEPENDS+= libxul>=38:${PORTSDIR}/www/libxul RUN_DEPENDS+= libxul>=38:${PORTSDIR}/www/libxul .elif ${gecko_ARGS:Mfirefox} _GECKO_DEFAULT_VERSION= 38 -_GECKO_VERSIONS= 38 41 +_GECKO_VERSIONS= 38 42 _GECKO_TYPE= firefox # Dependence lines for different Firefox versions 38_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:${PORTSDIR}/www/firefox-esr -41_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:${PORTSDIR}/www/firefox +42_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:${PORTSDIR}/www/firefox .if exists(${LOCALBASE}/bin/firefox) _GECKO_INSTALLED_VER!= ${LOCALBASE}/bin/firefox --version 2>/dev/null _GECKO_INSTALLED_VER:= ${_GECKO_INSTALLED_VER:M[0-9][0-9]*:C/([0-9][0-9]).*/\1/g} .endif .elif ${gecko_ARGS:Mseamonkey} -_GECKO_DEFAULT_VERSION= 33 -_GECKO_VERSIONS= 33 +_GECKO_DEFAULT_VERSION= 39 +_GECKO_VERSIONS= 39 _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]*:C/[0-9].([0-9][0-9]).*/\1/g} .endif # Dependence lines for different Seamonkey versions -33_DEPENDS= ${LOCALBASE}/lib/seamonkey/seamonkey:${PORTSDIR}/www/seamonkey +39_DEPENDS= ${LOCALBASE}/lib/seamonkey/seamonkey:${PORTSDIR}/www/seamonkey .elif ${gecko_ARGS:Mthunderbird} _GECKO_DEFAULT_VERSION= 38 _GECKO_VERSIONS= 38 _GECKO_TYPE= thunderbird .if exists(${LOCALBASE}/bin/thunderbird) _GECKO_INSTALLED_VER!= ${LOCALBASE}/bin/thunderbird --version 2>/dev/null _GECKO_INSTALLED_VER:= ${_GECKO_INSTALLED_VER:M[0-9][0-9]*:C/([0-9][0-9]).*/\1/g} .endif # Dependence lines for different Thunderbird versions 38_DEPENDS= ${LOCALBASE}/lib/thunderbird/thunderbird:${PORTSDIR}/mail/thunderbird .else IGNORE= Unknown type of gecko dependency you may specify either libxul, firefox, seamonkey or thunderbird .endif .if defined(_GECKO_TYPE) .if ${_GECKO_VERSION:M*+} _GECKO_MIN_VERSION:= ${_GECKO_VERSION:S/+//} _GECKO_WANTED_VERSIONS:= ${_GECKO_DEFAULT_VERSION} .endif .if ${_GECKO_VERSION:M[0-9][0-9]} _GECKO_WANTED_VERSIONS:= ${_GECKO_VERSION:M[0-9][0-9]} .endif _GECKO_WANTED_VERSIONS?= ${_GECKO_DEFAULT_VERSION} .if defined(_GECKO_MIN_VERSION) . for _v in ${_GECKO_VERSIONS} . if ${_GECKO_MIN_VERSION} <= ${_v} _GECKO_WANTED_VERSIONS+= ${_v} . endif . endfor .endif .for _v in ${_GECKO_WANTED_VERSIONS:O:u} _GECKO_HIGHEST_VERSION:= ${_v} .if defined(_GECKO_INSTALLED_VER) && ${_GECKO_INSTALLED_VER} == ${_v} _GECKO_WANTED_VERSION:= ${_v} .endif .endfor .if !defined(_GECKO_WANTED_VERSION) .if defined(_GECKO_INSTALLED_VER) IGNORE= cannot install: ${_GECKO_TYPE} versions mismatch: ${_GECKO_TYPE}-${_GECKO_INSTALLED_VER} is installed and wanted version is ${_GECKO_TYPE}-${_GECKO_VERSION:M[0-9][0-9]} .else _GECKO_WANTED_VERSION:= ${_GECKO_HIGHEST_VERSION} .endif .endif .if ${gecko_ARGS:Mbuild} BUILD_DEPENDS+= ${${_GECKO_WANTED_VERSION}_DEPENDS} .endif RUN_DEPENDS+= ${${_GECKO_WANTED_VERSION}_DEPENDS} .endif .endif Index: branches/2015Q4/devel/nspr/Makefile =================================================================== --- branches/2015Q4/devel/nspr/Makefile (revision 402339) +++ branches/2015Q4/devel/nspr/Makefile (revision 402340) @@ -1,80 +1,80 @@ # Created by: Maxim Sobolev # $FreeBSD$ PORTNAME= nspr -DISTVERSION= 4.10.9 +DISTVERSION= 4.10.10 CATEGORIES= devel MASTER_SITES= MOZILLA/${PORTNAME}/releases/v${PORTVERSION}/src MAINTAINER= gecko@FreeBSD.org COMMENT= Platform-neutral API for system level and libc like functions WRKSRC= ${WRKDIR}/${DISTNAME}/nspr/build USES= cpe gmake CPE_VENDOR= mozilla CPE_PRODUCT= netscape_portable_runtime USE_LDCONFIG= yes GNU_CONFIGURE= yes CONFIGURE_SCRIPT=../configure CONFIGURE_ARGS= --srcdir=${WRKSRC:H} MAKE_ENV= DIST=${WRKSRC}/dist LIBRARIES= libnspr4.so.1 libplc4.so.1 libplds4.so.1 OPTIONS_DEFINE= DEBUG DEBUG_CONFIGURE_ENABLE=debug do-install: ${MKDIR} ${STAGEDIR}${PREFIX}/include/nspr ${TAR} -C ${WRKSRC}/dist/include --dereference -cf - . | \ ${TAR} -C ${STAGEDIR}${PREFIX}/include -xof - ${FIND} ${STAGEDIR}${PREFIX}/include/nspr -type d | \ ${XARGS} ${CHMOD} 0755 ${FIND} ${STAGEDIR}${PREFIX}/include/nspr -type f | \ ${XARGS} ${CHMOD} ${SHAREMODE} ${TAR} -C ${WRKSRC}/dist/lib --dereference -cf - . | \ ${TAR} -C ${STAGEDIR}${PREFIX}/lib -xof - ${INSTALL_SCRIPT} ${WRKSRC}/config/nspr-config ${STAGEDIR}${PREFIX}/bin ${MKDIR} ${STAGEDIR}${PREFIX}/libdata/pkgconfig ${INSTALL_DATA} ${WRKSRC}/config/nspr.pc ${STAGEDIR}${PREFIX}/libdata/pkgconfig .for lib in ${LIBRARIES} .if defined(STRIP) && ${STRIP} != "" ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/${lib} .endif ${CHMOD} ${LIBMODE} ${STAGEDIR}${PREFIX}/lib/${lib} ${LN} -sf ${lib} ${STAGEDIR}${PREFIX}/lib/${lib:R} .endfor prtests: ${DO_MAKE_BUILD} -C ${WRKSRC}/pr/tests ${LN} -sf libmy.so.1 ${WRKSRC}/pr/tests/dll/libmy.so cd ${WRKSRC}/pr/tests && ../../../pr/tests/runtests.sh libtests: ${DO_MAKE_BUILD} -C ${WRKSRC}/lib/tests ${WRKSRC}/lib/tests/string ${WRKSRC}/lib/tests/base64t # The test below is commented out, because arena requires # command-line arguments. If you can provide reasonable values # for it, please contact ${MAINTAINER}. Thank you. # ${WRKSRC}/lib/tests/arena # test: libtests prtests #regression-test: test #.if defined(PACKAGE_BUILDING) #post-build: test #.else post-build: # # Please, consider running ``make test'' to find any # possible build problems. # #.endif .include Index: branches/2015Q4/devel/nspr/distinfo =================================================================== --- branches/2015Q4/devel/nspr/distinfo (revision 402339) +++ branches/2015Q4/devel/nspr/distinfo (revision 402340) @@ -1,2 +1,2 @@ -SHA256 (nspr-4.10.9.tar.gz) = 4112ff6ad91d32696ca0c6c3d4abef6367b5dc0127fa172fcb3c3ab81bb2d881 -SIZE (nspr-4.10.9.tar.gz) = 1134015 +SHA256 (nspr-4.10.10.tar.gz) = 343614971c30520d0fa55f4af0a72578e2d8674bb71caf7187490c3379523107 +SIZE (nspr-4.10.10.tar.gz) = 1134164 Index: branches/2015Q4/security/ca_root_nss/Makefile =================================================================== --- branches/2015Q4/security/ca_root_nss/Makefile (revision 402339) +++ branches/2015Q4/security/ca_root_nss/Makefile (revision 402340) @@ -1,71 +1,71 @@ # $FreeBSD$ PORTNAME= ca_root_nss PORTVERSION= ${VERSION_NSS} CATEGORIES= security MASTER_SITES= MOZILLA/security/nss/releases/${DISTNAME:tu:C/[-.]/_/g}_RTM/src DISTNAME= nss-${VERSION_NSS}${NSS_SUFFIX} MAINTAINER= gecko@FreeBSD.org COMMENT= Root certificate bundle from the Mozilla Project LICENSE= MPL OPTIONS_DEFINE= ETCSYMLINK OPTIONS_DEFAULT= ETCSYMLINK OPTIONS_SUB= yes ETCSYMLINK_DESC= Add symlink to /etc/ssl/cert.pem ETCSYMLINK_CONFLICTS_INSTALL= ca-roots-[0-9]* USES= perl5 USE_PERL5= build NO_ARCH= yes NO_WRKSUBDIR= yes CERTDIR?= share/certs PLIST_SUB+= CERTDIR=${CERTDIR} # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! # !!! These versions are intended to track security/nss. !!! # !!! Please DO NOT submit patches for new version until it has !!! # !!! been committed there first. !!! # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -VERSION_NSS= 3.20 +VERSION_NSS= 3.20.1 #NSS_SUFFIX= -with-ckbi-1.98 CERTDATA_TXT_PATH= nss-${VERSION_NSS}/nss/lib/ckfw/builtins/certdata.txt BUNDLE_PROCESSOR= MAca-bundle.pl SUB_FILES= MAca-bundle.pl pkg-message SUB_LIST= VERSION_NSS=${VERSION_NSS} .include do-extract: @${MKDIR} ${WRKDIR} @${TAR} -C ${WRKDIR} -xf ${DISTDIR}/nss-${VERSION_NSS}${NSS_SUFFIX}${EXTRACT_SUFX} \ ${CERTDATA_TXT_PATH} @${CP} ${WRKDIR}/${CERTDATA_TXT_PATH} ${WRKDIR} @${RM} -rf ${WRKDIR}/nss-${VERSION_NSS} do-build: apply-slist @${PERL} ${WRKDIR}/${BUNDLE_PROCESSOR} \ < ${WRKDIR}/certdata.txt > \ ${WRKDIR}/ca-root-nss.crt do-install: ${MKDIR} ${STAGEDIR}${PREFIX}/${CERTDIR} ${INSTALL_DATA} ${WRKDIR}/ca-root-nss.crt ${STAGEDIR}${PREFIX}/${CERTDIR} post-install: .if ${PORT_OPTIONS:METCSYMLINK} ${MKDIR} ${STAGEDIR}/etc/ssl ${LN} -sf ${PREFIX}/${CERTDIR}/ca-root-nss.crt ${STAGEDIR}/etc/ssl/cert.pem .endif ${MKDIR} ${STAGEDIR}${PREFIX}/etc/ssl ${LN} -sf ${PREFIX}/${CERTDIR}/ca-root-nss.crt ${STAGEDIR}${PREFIX}/etc/ssl/cert.pem.sample ${MKDIR} ${STAGEDIR}${PREFIX}/openssl ${LN} -sf ${PREFIX}/${CERTDIR}/ca-root-nss.crt ${STAGEDIR}${PREFIX}/openssl/cert.pem.sample .include Index: branches/2015Q4/security/ca_root_nss/distinfo =================================================================== --- branches/2015Q4/security/ca_root_nss/distinfo (revision 402339) +++ branches/2015Q4/security/ca_root_nss/distinfo (revision 402340) @@ -1,2 +1,2 @@ -SHA256 (nss-3.20.tar.gz) = 5e38d4b9837ca338af966b97fc91c07f67ad647fb38dc4af3cfd0d84e477d15c -SIZE (nss-3.20.tar.gz) = 6955552 +SHA256 (nss-3.20.1.tar.gz) = ad3c8f11dfd9570c2d04a6140d5ef7c2bdd0fe30d6c9e5548721a4251a5e8c97 +SIZE (nss-3.20.1.tar.gz) = 6958956 Index: branches/2015Q4/security/nss/Makefile =================================================================== --- branches/2015Q4/security/nss/Makefile (revision 402339) +++ branches/2015Q4/security/nss/Makefile (revision 402340) @@ -1,100 +1,100 @@ # Created by: Maxim Sobolev # $FreeBSD$ PORTNAME= nss -PORTVERSION= 3.20 +PORTVERSION= 3.20.1 #DISTVERSIONSUFFIX= -with-ckbi-1.98 CATEGORIES= security MASTER_SITES= MOZILLA/security/${PORTNAME}/releases/${DISTNAME:tu:C/[-.]/_/g}_RTM/src MAINTAINER= gecko@FreeBSD.org COMMENT= Libraries to support development of security-enabled applications BUILD_DEPENDS= zip:${PORTSDIR}/archivers/zip \ - nspr>=4.10.8:${PORTSDIR}/devel/nspr \ + nspr>=4.10.10:${PORTSDIR}/devel/nspr \ sqlite3>=3.7.15:${PORTSDIR}/databases/sqlite3 LIB_DEPENDS= libnspr4.so:${PORTSDIR}/devel/nspr \ libsqlite3.so:${PORTSDIR}/databases/sqlite3 WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}/nss MAKE_JOBS_UNSAFE= yes USE_LDCONFIG= ${PREFIX}/lib/nss USES= cpe gmake perl5 CPE_VENDOR= mozilla CPE_PRODUCT= network_security_services USE_PERL5= build MAKE_ENV= LIBRARY_PATH="${LOCALBASE}/lib" \ SQLITE_INCLUDE_DIR="${LOCALBASE}/include" \ NSS_USE_SYSTEM_SQLITE=1 CFLAGS+= -I${LOCALBASE}/include/nspr SUB_FILES= nss-config nss.pc SUB_LIST= PORTVERSION=${PORTVERSION} DIST= ${WRKSRC:H}/dist EXTRACT_AFTER_ARGS=--exclude */lib/zlib --exclude */lib/dbm --exclude */lib/sqlite INSTALL_BINS= certcgi certutil checkcert cmsutil crlutil derdump makepqg \ mangle modutil ocspclnt oidcalc p7content p7env p7sign \ p7verify pk12util rsaperf shlibsign signtool signver \ ssltap strsclnt symkeyutil vfychain vfyserv OPTIONS_DEFINE= DEBUG .include .if ! ${PORT_OPTIONS:MDEBUG} MAKE_ENV+= BUILD_OPT=1 BINS= ${DIST}/${OPSYS}${OSREL}_OPT.OBJ .else BINS= ${DIST}/${OPSYS}${OSREL}_DBG.OBJ .endif .if ${ARCH} == amd64 USE_BINUTILS= # intel-gcm.s CFLAGS+= -B${LOCALBASE}/bin .endif check regression-test test: cd ${WRKSRC}/tests; \ ${SETENV} PATH="${BINS}/bin:${PATH}" \ LD_LIBRARY_PATH="${BINS}/lib" \ ${MAKE_ENV} \ ./all.sh @if ${GREP} -Fh '>Failed<' \ ${WRKSRC:H}/tests_results/security/*/results.html; then \ echo "Some tests have failed. Let ${MAINTAINER} know."; \ exit 1; \ else \ echo "All tests succeeded. Good news."; \ fi post-patch: @${REINPLACE_CMD} '/NSS_DEFAULT_SYSTEM/s,/etc,${PREFIX}&,' \ ${WRKSRC}/lib/sysinit/nsssysinit.c @cd ${WRKSRC} && \ ${FIND} . -name "*.c" -o -name "*.h" | \ ${XARGS} ${REINPLACE_CMD} -e 's|"nspr.h"||' ${FIND} ${WRKSRC}/tests -name '*.sh' | ${XARGS} ${GREP} -l -F '/bin/bash' | \ ${XARGS} ${REINPLACE_CMD} -e 's|#! */bin/bash|#!${SH}|' do-install: ${MKDIR} ${STAGEDIR}${PREFIX}/include/nss/nss ${STAGEDIR}${PREFIX}/lib/nss ${FIND} ${DIST}/public/nss -type l \ -exec ${INSTALL_DATA} {} ${STAGEDIR}${PREFIX}/include/nss/nss \; ${INSTALL_LIB} ${BINS}/lib/*.so.1 \ ${STAGEDIR}${PREFIX}/lib/nss ${INSTALL_DATA} ${BINS}/lib/libcrmf.a \ ${STAGEDIR}${PREFIX}/lib/nss .for bin in ${INSTALL_BINS} ${INSTALL_PROGRAM} ${BINS}/bin/${bin} \ ${STAGEDIR}${PREFIX}/bin .endfor cd ${BINS}/lib && \ ${TAR} -cf - *.so | ${TAR} --unlink -C ${STAGEDIR}${PREFIX}/lib/nss -xf - ${INSTALL_SCRIPT} ${WRKDIR}/nss-config ${STAGEDIR}${PREFIX}/bin ${INSTALL_DATA} ${WRKDIR}/nss.pc ${STAGEDIR}${PREFIX}/libdata/pkgconfig .include Index: branches/2015Q4/security/nss/distinfo =================================================================== --- branches/2015Q4/security/nss/distinfo (revision 402339) +++ branches/2015Q4/security/nss/distinfo (revision 402340) @@ -1,2 +1,2 @@ -SHA256 (nss-3.20.tar.gz) = 5e38d4b9837ca338af966b97fc91c07f67ad647fb38dc4af3cfd0d84e477d15c -SIZE (nss-3.20.tar.gz) = 6955552 +SHA256 (nss-3.20.1.tar.gz) = ad3c8f11dfd9570c2d04a6140d5ef7c2bdd0fe30d6c9e5548721a4251a5e8c97 +SIZE (nss-3.20.1.tar.gz) = 6958956 Index: branches/2015Q4/www/firefox/Makefile =================================================================== --- branches/2015Q4/www/firefox/Makefile (revision 402339) +++ branches/2015Q4/www/firefox/Makefile (revision 402340) @@ -1,98 +1,99 @@ # Created by: Alan Eldridge # $FreeBSD$ PORTNAME= firefox -DISTVERSION= 41.0.2 +DISTVERSION= 42.0 DISTVERSIONSUFFIX=.source PORTEPOCH= 1 CATEGORIES= www ipv6 MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ - MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/source + MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build2/source MAINTAINER= gecko@FreeBSD.org COMMENT= Web browser based on the browser portion of Mozilla -BUILD_DEPENDS= nspr>=4.10.8:${PORTSDIR}/devel/nspr \ - nss>=3.19.2:${PORTSDIR}/security/nss \ +BUILD_DEPENDS= nspr>=4.10.10:${PORTSDIR}/devel/nspr \ + nss>=3.19.4:${PORTSDIR}/security/nss \ libevent2>=2.0.21_2:${PORTSDIR}/devel/libevent2 \ soundtouch>=1.8.0:${PORTSDIR}/audio/soundtouch \ harfbuzz>=0.9.34:${PORTSDIR}/print/harfbuzz \ graphite2>=1.2.4:${PORTSDIR}/graphics/graphite2 \ libvorbis>=1.3.5:${PORTSDIR}/audio/libvorbis \ libvpx>=1.3.0:${PORTSDIR}/multimedia/libvpx \ sqlite3>=3.8.9:${PORTSDIR}/databases/sqlite3 \ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:${PORTSDIR}/databases/py-sqlite3 \ v4l_compat>0:${PORTSDIR}/multimedia/v4l_compat \ autoconf-2.13:${PORTSDIR}/devel/autoconf213 \ + yasm:${PORTSDIR}/devel/yasm \ zip:${PORTSDIR}/archivers/zip \ unzip:${PORTSDIR}/archivers/unzip # opus>=1.1:${PORTSDIR}/audio/opus \ LIB_DEPENDS= libv4l2.so:${PORTSDIR}/multimedia/libv4l USE_GECKO= gecko -CONFLICTS_INSTALL= firefox-esr-31.* firefox-esr-24.* firefox-esr-17.* +CONFLICTS_INSTALL= firefox-esr-45.* firefox-esr-3[18].* firefox-esr-24.* MOZ_PKGCONFIG_FILES= # empty USE_MOZILLA= -opus MOZILLA_NAME= Firefox USE_QT5= # empty QT_NONSTANDARD= yes USE_GL= gl USES= dos2unix tar:xz DOS2UNIX_FILES= media/webrtc/trunk/webrtc/system_wrappers/source/spreadsortlib/spreadsort.hpp FIREFOX_ICON= ${MOZILLA}.png FIREFOX_ICON_SRC= ${PREFIX}/lib/${MOZILLA}/browser/chrome/icons/default/default48.png MOZ_OPTIONS= --program-transform-name='s/firefox/${MOZILLA}/' \ --enable-application=browser \ --enable-official-branding OPTIONS_EXCLUDE= LOGGING OPTIONS_DEFAULT= GTK2 OPTIONS_SINGLE+= TOOLKIT OPTIONS_SINGLE_TOOLKIT= GTK2 GTK3 .include "${.CURDIR}/../../www/firefox/Makefile.options" .include -WRKSRC:= ${WRKDIR}/mozilla-release +WRKSRC:= ${WRKDIR}/${PORTNAME}-${DISTVERSION} .if ${PORT_OPTIONS:MALSA} RUN_DEPENDS+= alsa-lib>=1.0.27.2_1:${PORTSDIR}/audio/alsa-lib .endif .if ! ${PORT_OPTIONS:MBUNDLED_CAIRO} BUILD_DEPENDS+= cairo>=1.12.16_1,2:${PORTSDIR}/graphics/cairo .endif .if ${PORT_OPTIONS:MGSTREAMER} RUN_DEPENDS+= gstreamer1-libav>=1.2.4_1:${PORTSDIR}/multimedia/gstreamer1-libav .endif .if ${PORT_OPTIONS:MGTK3} BUILD_DEPENDS+= gtk3>=3.14.6:${PORTSDIR}/x11-toolkits/gtk30 .endif post-extract: @${SED} -e 's|@FIREFOX_ICON@|${FIREFOX_ICON}|' -e 's|@MOZILLA@|${MOZILLA}|' \ -e 's|@MOZILLA_NAME@|${MOZILLA_NAME}|' \ <${FILESDIR}/firefox.desktop.in >${WRKDIR}/${MOZILLA}.desktop post-patch: @${REINPLACE_CMD} -e '/MOZPNG/s/=[0-9]*/=10511/' \ ${WRKSRC}/configure.in @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \ ${WRKSRC}/browser/app/nsBrowserApp.cpp pre-configure: (cd ${WRKSRC} && ${LOCALBASE}/bin/autoconf-2.13) (cd ${WRKSRC}/js/src/ && ${LOCALBASE}/bin/autoconf-2.13) post-install: ${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps ${INSTALL_DATA} ${WRKDIR}/${MOZILLA}.desktop ${STAGEDIR}${PREFIX}/share/applications/ ${LN} -sf ${FIREFOX_ICON_SRC} ${STAGEDIR}${PREFIX}/share/pixmaps/${FIREFOX_ICON} .include Index: branches/2015Q4/www/firefox/distinfo =================================================================== --- branches/2015Q4/www/firefox/distinfo (revision 402339) +++ branches/2015Q4/www/firefox/distinfo (revision 402340) @@ -1,2 +1,2 @@ -SHA256 (firefox-41.0.2.source.tar.xz) = ff00689f4d2ff54c5eb7b3aa367560a3645800eb0c96e73a795e461461b1970e -SIZE (firefox-41.0.2.source.tar.xz) = 159761468 +SHA256 (firefox-42.0.source.tar.xz) = 994a346699298277b64ec0cab72660b8d3e5b879a2ac79207576f7e6c33da3ae +SIZE (firefox-42.0.source.tar.xz) = 165766832 Index: branches/2015Q4/www/firefox/files/patch-bug1181382 =================================================================== --- branches/2015Q4/www/firefox/files/patch-bug1181382 (revision 402339) +++ branches/2015Q4/www/firefox/files/patch-bug1181382 (nonexistent) @@ -1,15 +0,0 @@ ---- dom/mobilemessage/MobileMessageManager.h.orig 2015-09-17 22:13:25 UTC -+++ dom/mobilemessage/MobileMessageManager.h -@@ -14,11 +14,11 @@ - class nsISmsService; - class nsIDOMMozSmsMessage; - class nsIDOMMozMmsMessage; --class Promise; - - namespace mozilla { - namespace dom { - -+class Promise; - class DOMRequest; - class DOMCursor; - struct MmsParameters; Property changes on: branches/2015Q4/www/firefox/files/patch-bug1181382 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/firefox/files/patch-memory-jemalloc-Makefile.in =================================================================== --- branches/2015Q4/www/firefox/files/patch-memory-jemalloc-Makefile.in (revision 402339) +++ branches/2015Q4/www/firefox/files/patch-memory-jemalloc-Makefile.in (nonexistent) @@ -1,10 +0,0 @@ ---- memory/jemalloc/Makefile.in~ -+++ memory/jemalloc/Makefile.in -@@ -7,3 +7,7 @@ include $(topsrcdir)/config/rules.mk - ifdef GNU_CC - CFLAGS += -std=gnu99 - endif -+ -+# XXX startup crash workaround for gcc47 on amd64 -+jemalloc.$(OBJ_SUFFIX): OS_CFLAGS := $(filter-out -O3 -Ofast,$(OS_CFLAGS)) -+jemalloc.$(OBJ_SUFFIX): MOZ_OPTIMIZE_FLAGS= Property changes on: branches/2015Q4/www/firefox/files/patch-memory-jemalloc-Makefile.in ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/firefox/files/patch-bug702179 =================================================================== --- branches/2015Q4/www/firefox/files/patch-bug702179 (revision 402339) +++ branches/2015Q4/www/firefox/files/patch-bug702179 (revision 402340) @@ -1,10 +1,10 @@ ---- js/src/moz.build.orig 2015-10-03 18:05:51.136389000 +0200 -+++ js/src/moz.build 2015-10-03 18:06:12.457351000 +0200 -@@ -603,6 +603,6 @@ +--- js/src/moz.build.orig 2015-10-29 22:17:54 UTC ++++ js/src/moz.build +@@ -613,7 +613,3 @@ CXXFLAGS += CONFIG['MOZ_ICU_CFLAGS'] + if CONFIG['GNU_CXX']: FAIL_ON_WARNINGS = True - +- -NO_EXPAND_LIBS = True -+NO_EXPAND_LIBS = False - - DIST_INSTALL = True +- +-DIST_INSTALL = True Index: branches/2015Q4/www/firefox/files/patch-bug779713 =================================================================== --- branches/2015Q4/www/firefox/files/patch-bug779713 (revision 402339) +++ branches/2015Q4/www/firefox/files/patch-bug779713 (revision 402340) @@ -1,75 +1,68 @@ diff --git mfbt/Alignment.h mfbt/Alignment.h index e0843ca..353ec36 100644 --- mfbt/Alignment.h +++ mfbt/Alignment.h -@@ -9,11 +9,20 @@ - #ifndef mozilla_Alignment_h - #define mozilla_Alignment_h - -+#include "mozilla/Attributes.h" -+ - #include - #include +@@ -15,6 +15,13 @@ namespace mozilla { +#if defined(MOZ_HAVE_CXX11_ALIGNAS) +#define MOZ_ALIGNOF(T) alignof(T) +#elif defined(__GNUC__) +#define MOZ_ALIGNOF(T) __alignof__(T) +#elif defined(_MSC_VER) +#define MOZ_ALIGNOF(T) __alignof(T) +#else /* * This class, and the corresponding macro MOZ_ALIGNOF, figures out how many * bytes of alignment a given type needs. @@ -32,6 +41,7 @@ public: }; #define MOZ_ALIGNOF(T) mozilla::AlignmentFinder::alignment +#endif /* * Declare the MOZ_ALIGNED_DECL macro for declaring aligned types. @@ -43,7 +53,10 @@ public: * will declare a two-character array |arr| aligned to 8 bytes. */ -#if defined(__GNUC__) +#if defined(MOZ_HAVE_CXX11_ALIGNAS) +# define MOZ_ALIGNED_DECL(_type, _align) \ + alignas(_align) _type +#elif defined(__GNUC__) # define MOZ_ALIGNED_DECL(_type, _align) \ _type __attribute__((aligned(_align))) #elif defined(_MSC_VER) diff --git mfbt/Attributes.h mfbt/Attributes.h index d317766..ddb13da 100644 --- mfbt/Attributes.h +++ mfbt/Attributes.h @@ -50,6 +50,7 @@ * don't indicate support for them here, due to * http://stackoverflow.com/questions/20498142/visual-studio-2013-explicit-keyword-bug */ +# define MOZ_HAVE_CXX11_ALIGNAS # define MOZ_HAVE_NEVER_INLINE __declspec(noinline) # define MOZ_HAVE_NORETURN __declspec(noreturn) # ifdef __clang__ @@ -70,6 +71,9 @@ # ifndef __has_extension # define __has_extension __has_feature /* compatibility, for older versions of clang */ # endif +# if __has_extension(cxx_alignas) +# define MOZ_HAVE_CXX11_ALIGNAS +# endif # if __has_extension(cxx_constexpr) # define MOZ_HAVE_CXX11_CONSTEXPR # endif @@ -86,6 +90,7 @@ # if defined(__GXX_EXPERIMENTAL_CXX0X__) || __cplusplus >= 201103L # define MOZ_HAVE_CXX11_CONSTEXPR # if MOZ_GCC_VERSION_AT_LEAST(4, 8, 0) +# define MOZ_HAVE_CXX11_ALIGNAS # define MOZ_HAVE_CXX11_CONSTEXPR_IN_TEMPLATES # endif # define MOZ_HAVE_EXPLICIT_CONVERSION Index: branches/2015Q4/www/firefox/files/patch-bug981348 =================================================================== --- branches/2015Q4/www/firefox/files/patch-bug981348 (revision 402339) +++ branches/2015Q4/www/firefox/files/patch-bug981348 (revision 402340) @@ -1,41 +1,41 @@ diff --git dom/system/OSFileConstants.cpp dom/system/OSFileConstants.cpp index 4b21361..cb3be32 100644 --- dom/system/OSFileConstants.cpp +++ dom/system/OSFileConstants.cpp -@@ -596,7 +596,7 @@ static const dom::ConstantSpec gLibcProperties[] = +@@ -662,7 +662,7 @@ - { "OSFILE_SIZEOF_STATVFS", INT_TO_JSVAL(sizeof (struct statvfs)) }, + { "OSFILE_SIZEOF_STATVFS", JS::Int32Value(sizeof (struct statvfs)) }, -- { "OSFILE_OFFSETOF_STATVFS_F_BSIZE", INT_TO_JSVAL(offsetof (struct statvfs, f_bsize)) }, -+ { "OSFILE_OFFSETOF_STATVFS_F_FRSIZE", INT_TO_JSVAL(offsetof (struct statvfs, f_frsize)) }, - { "OSFILE_OFFSETOF_STATVFS_F_BAVAIL", INT_TO_JSVAL(offsetof (struct statvfs, f_bavail)) }, +- { "OSFILE_OFFSETOF_STATVFS_F_BSIZE", JS::Int32Value(offsetof (struct statvfs, f_bsize)) }, ++ { "OSFILE_OFFSETOF_STATVFS_F_FRSIZE", JS::Int32Value(offsetof (struct statvfs, f_frsize)) }, + { "OSFILE_OFFSETOF_STATVFS_F_BAVAIL", JS::Int32Value(offsetof (struct statvfs, f_bavail)) }, #endif // defined(XP_UNIX) diff --git toolkit/components/osfile/modules/osfile_unix_back.jsm toolkit/components/osfile/modules/osfile_unix_back.jsm index b59fca4..0cf220b 100644 --- toolkit/components/osfile/modules/osfile_unix_back.jsm +++ toolkit/components/osfile/modules/osfile_unix_back.jsm @@ -228,8 +228,8 @@ let statvfs = new SharedAll.HollowStructure("statvfs", Const.OSFILE_SIZEOF_STATVFS); - statvfs.add_field_at(Const.OSFILE_OFFSETOF_STATVFS_F_BSIZE, - "f_bsize", Type.unsigned_long.implementation); + statvfs.add_field_at(Const.OSFILE_OFFSETOF_STATVFS_F_FRSIZE, + "f_frsize", Type.unsigned_long.implementation); statvfs.add_field_at(Const.OSFILE_OFFSETOF_STATVFS_F_BAVAIL, "f_bavail", Type.fsblkcnt_t.implementation); diff --git toolkit/components/osfile/modules/osfile_unix_front.jsm toolkit/components/osfile/modules/osfile_unix_front.jsm index 99e5e9b..de642c5 100644 --- toolkit/components/osfile/modules/osfile_unix_front.jsm +++ toolkit/components/osfile/modules/osfile_unix_front.jsm @@ -373,7 +373,7 @@ throw_on_negative("statvfs", UnixFile.statvfs(sourcePath, fileSystemInfoPtr)); let bytes = new Type.uint64_t.implementation( - fileSystemInfo.f_bsize * fileSystemInfo.f_bavail); + fileSystemInfo.f_frsize * fileSystemInfo.f_bavail); return bytes.value; }; Index: branches/2015Q4/www/firefox/files/patch-media_libav_config__unix.h =================================================================== --- branches/2015Q4/www/firefox/files/patch-media_libav_config__unix.h (nonexistent) +++ branches/2015Q4/www/firefox/files/patch-media_libav_config__unix.h (revision 402340) @@ -0,0 +1,11 @@ +--- media/libav/config_unix.h.orig 2015-10-29 22:17:49 UTC ++++ media/libav/config_unix.h +@@ -144,7 +144,7 @@ + #define HAVE_MACH_MACH_TIME_H 0 + #define HAVE_MACHINE_IOCTL_BT848_H 0 + #define HAVE_MACHINE_IOCTL_METEOR_H 0 +-#define HAVE_MALLOC_H 1 ++#define HAVE_MALLOC_H 0 + #define HAVE_POLL_H 1 + #define HAVE_SNDIO_H 0 + #define HAVE_SOUNDCARD_H 0 Property changes on: branches/2015Q4/www/firefox/files/patch-media_libav_config__unix.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2015Q4/www/firefox/files/patch-soundtouch-no-factory =================================================================== --- branches/2015Q4/www/firefox/files/patch-soundtouch-no-factory (nonexistent) +++ branches/2015Q4/www/firefox/files/patch-soundtouch-no-factory (revision 402340) @@ -0,0 +1,84 @@ +# Partially revert bug 1176300 to unbreak build with system libsoundtouch + +diff --git dom/media/AudioStream.cpp dom/media/AudioStream.cpp +--- dom/media/AudioStream.cpp ++++ dom/media/AudioStream.cpp +@@ -129,7 +129,6 @@ + , mOutChannels(0) + , mWritten(0) + , mAudioClock(this) +- , mTimeStretcher(nullptr) + , mLatencyRequest(HighLatency) + , mReadPoint(0) + , mDumpFile(nullptr) +@@ -152,9 +151,6 @@ + if (mDumpFile) { + fclose(mDumpFile); + } +- if (mTimeStretcher) { +- soundtouch::destroySoundTouchObj(mTimeStretcher); +- } + } + + size_t +@@ -177,7 +173,7 @@ + { + mMonitor.AssertCurrentThreadOwns(); + if (!mTimeStretcher) { +- mTimeStretcher = soundtouch::createSoundTouchObj(); ++ mTimeStretcher = new soundtouch::SoundTouch(); + mTimeStretcher->setSampleRate(mInRate); + mTimeStretcher->setChannels(mOutChannels); + mTimeStretcher->setPitch(1.0); +diff --git dom/media/AudioStream.h dom/media/AudioStream.h +--- dom/media/AudioStream.h ++++ dom/media/AudioStream.h +@@ -15,7 +15,7 @@ + #include "mozilla/RefPtr.h" + #include "mozilla/UniquePtr.h" + #include "CubebUtils.h" +-#include "soundtouch/SoundTouchFactory.h" ++#include "soundtouch/SoundTouch.h" + + namespace mozilla { + +@@ -329,7 +329,7 @@ + // Number of frames written to the buffers. + int64_t mWritten; + AudioClock mAudioClock; +- soundtouch::SoundTouch* mTimeStretcher; ++ nsAutoPtr mTimeStretcher; + nsRefPtr mLatencyLog; + + // copy of Latency logger's starting time for offset calculations +diff --git media/libsoundtouch/src/moz.build media/libsoundtouch/src/moz.build +--- media/libsoundtouch/src/moz.build ++++ media/libsoundtouch/src/moz.build +@@ -8,7 +8,6 @@ + 'FIFOSamplePipe.h', + 'SoundTouch.h', + 'soundtouch_config.h', +- 'SoundTouchFactory.h', + 'STTypes.h', + ] + +@@ -22,7 +21,6 @@ + 'InterpolateShannon.cpp', + 'RateTransposer.cpp', + 'SoundTouch.cpp', +- 'SoundTouchFactory.cpp', + 'TDStretch.cpp', + ] + +diff --git media/libsoundtouch/src/soundtouch_perms.h media/libsoundtouch/src/soundtouch_perms.h +--- media/libsoundtouch/src/soundtouch_perms.h ++++ media/libsoundtouch/src/soundtouch_perms.h +@@ -12,7 +12,6 @@ + + #pragma GCC visibility push(default) + #include "SoundTouch.h" +-#include "SoundTouchFactory.h" + #pragma GCC visibility pop + + #endif // MOZILLA_SOUNDTOUCH_PERMS_H + Property changes on: branches/2015Q4/www/firefox/files/patch-soundtouch-no-factory ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2015Q4/www/firefox/files/patch-toolkit_system_unixproxy_nsLibProxySettings.cpp =================================================================== --- branches/2015Q4/www/firefox/files/patch-toolkit_system_unixproxy_nsLibProxySettings.cpp (nonexistent) +++ branches/2015Q4/www/firefox/files/patch-toolkit_system_unixproxy_nsLibProxySettings.cpp (revision 402340) @@ -0,0 +1,10 @@ +--- toolkit/system/unixproxy/nsLibProxySettings.cpp.orig 2015-10-29 22:18:00 UTC ++++ toolkit/system/unixproxy/nsLibProxySettings.cpp +@@ -9,6 +9,7 @@ + #include "nsIURI.h" + #include "nsString.h" + #include "nsCOMPtr.h" ++#include "nsNetCID.h" + #include "nspr.h" + + extern "C" { Property changes on: branches/2015Q4/www/firefox/files/patch-toolkit_system_unixproxy_nsLibProxySettings.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2015Q4/www/firefox/files/patch-z-bug517422 =================================================================== --- branches/2015Q4/www/firefox/files/patch-z-bug517422 (revision 402339) +++ branches/2015Q4/www/firefox/files/patch-z-bug517422 (revision 402340) @@ -1,586 +1,574 @@ # Allow more config/external/ libs built against system-wide version. diff --git config/Makefile.in config/Makefile.in index 5383399..0410004 100644 --- config/Makefile.in +++ config/Makefile.in @@ -77,6 +77,14 @@ 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_CELT=$(MOZ_NATIVE_CELT) \ + -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 f67c5c7..eb909ce 100644 --- config/external/moz.build +++ config/external/moz.build @@ -19,10 +19,19 @@ if CONFIG['MOZ_UPDATER']: # There's no "native brotli" yet, but probably in the future... external_dirs += ['modules/brotli'] -if CONFIG['MOZ_VORBIS']: +if not CONFIG['MOZ_NATIVE_OGG']: + external_dirs += ['media/libogg'] + +if not CONFIG['MOZ_NATIVE_CELT'] or not CONFIG['MOZ_NATIVE_OPUS']: + external_dirs += ['media/libopus'] + +if not CONFIG['MOZ_NATIVE_THEORA']: + external_dirs += ['media/libtheora'] + +if CONFIG['MOZ_VORBIS'] and not CONFIG['MOZ_NATIVE_VORBIS']: external_dirs += ['media/libvorbis'] -if CONFIG['MOZ_TREMOR']: +if CONFIG['MOZ_TREMOR'] and not CONFIG['MOZ_NATIVE_TREMOR']: external_dirs += ['media/libtremor'] if CONFIG['MOZ_WEBM']: @@ -37,15 +46,16 @@ if CONFIG['MOZ_VPX'] and not CONFIG['MOZ 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/libogg', - 'media/libopus', - 'media/libtheora', - 'media/libspeex_resampler', 'media/libstagefright', - 'media/libsoundtouch', ] DIRS += ['../../' + i for i in external_dirs] diff --git config/system-headers config/system-headers index bef567c..9807c29 100644 --- config/system-headers +++ config/system-headers -@@ -1263,7 +1263,6 @@ X11/Xlocale.h +@@ -1257,8 +1257,10 @@ X11/Xlocale.h X11/Xos.h X11/Xutil.h zmouse.h --soundtouch/SoundTouch.h - #if MOZ_NATIVE_PNG==1 - png.h ++#if MOZ_NATIVE_SOUNDTOUCH==1 + soundtouch/SoundTouch.h + soundtouch/SoundTouchFactory.h ++#endif + #if MOZ_LIBAV_FFT==1 + libavcodec/avfft.h #endif -@@ -1325,6 +1324,7 @@ vorbis/codec.h - theora/theoradec.h - tremor/ivorbiscodec.h - speex/speex_resampler.h +@@ -1313,6 +1315,8 @@ vpx/vp8dx.h + vpx_mem/vpx_mem.h + #endif + #ifdef GKMEDIAS_SHARED_LIBRARY +soundtouch/SoundTouch.h - ogg/ogg.h - ogg/os_types.h - nestegg/nestegg.h -@@ -1365,3 +1365,35 @@ graphite2/Segment.h ++soundtouch/SoundTouchFactory.h + vpx/vpx_codec.h + vpx/vpx_decoder.h + vpx/vpx_encoder.h +@@ -1364,3 +1363,32 @@ graphite2/Segment.h harfbuzz/hb-ot.h harfbuzz/hb.h #endif +#if MOZ_NATIVE_OGG==1 +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_CELT==1 +celt.h +celt_header.h +celt/celt.h +celt/celt_header.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 87db361..7947626 100644 --- configure.in +++ configure.in @@ -5223,6 +5223,157 @@ if test "${ac_cv_c_attribute_aligned}" ! fi dnl ======================================================== +dnl Check for libogg +dnl ======================================================== + +MOZ_ARG_WITH_BOOL(system-ogg, +[ --with-system-ogg Use system libogg (located with pkgconfig)], +MOZ_NATIVE_OGG=1, +MOZ_NATIVE_OGG=) + +if test -n "$MOZ_NATIVE_OGG"; then + PKG_CHECK_MODULES(MOZ_OGG, ogg >= 1.2.1) + + _SAVE_LIBS=$LIBS + LIBS="$LIBS $MOZ_OGG_LIBS" + AC_CHECK_FUNC(ogg_set_mem_functions, [], + [AC_DEFINE(MOZ_OGG_NO_MEM_REPORTING)]) + LIBS=$_SAVE_LIBS +fi + +AC_SUBST(MOZ_NATIVE_OGG) + +dnl ======================================================== +dnl Check for libvorbis +dnl ======================================================== + +MOZ_ARG_WITH_BOOL(system-vorbis, +[ --with-system-vorbis Use system libvorbis (located with pkgconfig)], +MOZ_NATIVE_VORBIS=1, +MOZ_NATIVE_VORBIS=) + +if test -n "$MOZ_NATIVE_VORBIS"; then + PKG_CHECK_MODULES(MOZ_VORBIS, vorbis vorbisenc >= 1.3.5) +fi + +AC_SUBST(MOZ_NATIVE_VORBIS) + +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) + +dnl ======================================================== +dnl Check for libcelt +dnl ======================================================== + +MOZ_ARG_WITH_BOOL(system-celt, +[ --with-system-celt Use system libcelt (located with pkgconfig)], +MOZ_NATIVE_CELT=1, +MOZ_NATIVE_CELT=) + +if test -n "$MOZ_NATIVE_CELT"; then + PKG_CHECK_MODULES(MOZ_CELT, celt) +else + MOZ_CELT_CFLAGS='-I$(topsrcdir)/media/libopus' +fi + +AC_SUBST(MOZ_NATIVE_CELT) + +dnl ======================================================== +dnl Check for libopus +dnl ======================================================== + +MOZ_ARG_WITH_BOOL(system-opus, +[ --with-system-opus Use system libopus (located with pkgconfig)], +MOZ_NATIVE_OPUS=1, +MOZ_NATIVE_OPUS=) + +if test -n "$MOZ_NATIVE_OPUS"; then + PKG_CHECK_MODULES(MOZ_OPUS, opus >= 1.1) +else + MOZ_OPUS_CFLAGS='-I$(topsrcdir)/media/libopus/include' +fi + +AC_SUBST(MOZ_NATIVE_OPUS) + +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) + +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) + +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.8.0) + + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + _SAVE_CXXFLAGS=$CXXFLAGS + CXXFLAGS="$CXXFLAGS $MOZ_SOUNDTOUCH_CFLAGS" + AC_CACHE_CHECK(for soundtouch sample type, + ac_cv_soundtouch_sample_type, + [AC_TRY_COMPILE([#include + #ifndef SOUNDTOUCH_INTEGER_SAMPLES + #error soundtouch expects float samples + #endif], + [], + [ac_cv_soundtouch_sample_type=short], + [ac_cv_soundtouch_sample_type=float])]) + CXXFLAGS=$_SAVE_CXXFLAGS + AC_LANG_RESTORE + + if test \( -n "$MOZ_SAMPLE_TYPE_S16" -a "$ac_cv_soundtouch_sample_type" != short \) \ + -o \( -n "$MOZ_SAMPLE_TYPE_FLOAT32" -a "$ac_cv_soundtouch_sample_type" != float \) ; then + AC_MSG_ERROR([SoundTouch library is built with incompatible sample type. Either rebuild the library with/without --enable-integer-samples, chase default Mozilla sample type or remove --with-system-soundtouch.]) + fi +fi + +AC_SUBST(MOZ_NATIVE_SOUNDTOUCH) + +dnl ======================================================== dnl = Disable VP8 decoder support dnl ======================================================== MOZ_ARG_DISABLE_BOOL(webm, -diff --git dom/media/AudioStream.h dom/media/AudioStream.h -index 085676d..00c54fb 100644 ---- dom/media/AudioStream.h -+++ dom/media/AudioStream.h -@@ -17,7 +17,7 @@ - #include "CubebUtils.h" - - namespace soundtouch { --class SoundTouch; -+class MOZ_IMPORT_API SoundTouch; - } - - namespace mozilla { diff --git dom/media/moz.build dom/media/moz.build index 7526cff..e0a0ca0 100644 --- dom/media/moz.build +++ dom/media/moz.build @@ -212,3 +212,24 @@ if CONFIG['ANDROID_VERSION'] > '15': CFLAGS += CONFIG['GSTREAMER_CFLAGS'] CXXFLAGS += CONFIG['GSTREAMER_CFLAGS'] + +if CONFIG['MOZ_NATIVE_OGG']: + CXXFLAGS += CONFIG['MOZ_OGG_CFLAGS'] + +if CONFIG['MOZ_NATIVE_THEORA']: + CXXFLAGS += CONFIG['MOZ_THEORA_CFLAGS'] + +if CONFIG['MOZ_NATIVE_VORBIS']: + CXXFLAGS += CONFIG['MOZ_VORBIS_CFLAGS'] + +if CONFIG['MOZ_NATIVE_TREMOR']: + CXXFLAGS += CONFIG['MOZ_TREMOR_CFLAGS'] + +if CONFIG['MOZ_NATIVE_OPUS']: + CXXFLAGS += CONFIG['MOZ_OPUS_CFLAGS'] + +if CONFIG['MOZ_NATIVE_SPEEX']: + CXXFLAGS += CONFIG['MOZ_SPEEX_CFLAGS'] + +if CONFIG['MOZ_NATIVE_SOUNDTOUCH']: + CXXFLAGS += CONFIG['MOZ_SOUNDTOUCH_CFLAGS'] diff --git media/libcubeb/src/moz.build media/libcubeb/src/moz.build index 944744d..9a7c8c0 100644 --- media/libcubeb/src/moz.build +++ media/libcubeb/src/moz.build @@ -65,6 +65,9 @@ if CONFIG['GKMEDIAS_SHARED_LIBRARY']: FINAL_LIBRARY = 'gkmedias' +if CONFIG['MOZ_NATIVE_SPEEX']: + SOURCES['cubeb_resampler.cpp'].flags += CONFIG['MOZ_SPEEX_CFLAGS'] + if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk': CFLAGS += [ '-I%s/%s' % (CONFIG['ANDROID_SOURCE'], d) for d in [ diff --git media/libogg/README_MOZILLA media/libogg/README_MOZILLA index 0833e4d..7ece97b 100644 --- media/libogg/README_MOZILLA +++ media/libogg/README_MOZILLA @@ -6,3 +6,6 @@ The svn revision number used was r17287. The int-types.patch address a bug that config_types.h generated from Linux platform can't be used on OpenSolaris directly see Mozilla bug 449754 + +The in-tree copy may be omitted during build by --with-system-ogg. +Keep version in configure.in in sync on updates. diff --git media/libopus/README_MOZILLA media/libopus/README_MOZILLA index 2d85c9f..d3fb9f8 100644 --- media/libopus/README_MOZILLA +++ media/libopus/README_MOZILLA @@ -9,3 +9,6 @@ files after the copy step. The upstream repository is https://git.xiph.org/opus.git The git tag/revision used was v1.1. + +The in-tree copy may be omitted during build by --with-system-opus. +So, keep its pkg-config version check within configure.in in sync on updates. diff --git media/libsoundtouch/README_MOZILLA media/libsoundtouch/README_MOZILLA index bfd4b1a..15b158d 100644 --- media/libsoundtouch/README_MOZILLA +++ media/libsoundtouch/README_MOZILLA @@ -6,3 +6,5 @@ The whole library is not used, only the relevant files are imported in the tree, using the script `update.sh`. Some changes have been made to the files, using the patch `moz-libsoundtouch.patch`. We also use a custom soundtouch_config.h. +The in-tree copy may be omitted during build by --with-system-soundtouch. +Keep version in configure.in in sync on updates. diff --git media/libspeex_resampler/README_MOZILLA media/libspeex_resampler/README_MOZILLA index 7f6b1bb..e830300 100644 --- media/libspeex_resampler/README_MOZILLA +++ media/libspeex_resampler/README_MOZILLA @@ -3,3 +3,6 @@ This source is from the Speex DSP library It consists in the audio resampling code (resampler.c) and its header files dependancies, imported into the tree using the update.sh script. + +The in-tree copy may be omitted during build by --with-system-speex. +Keep version in configure.in in sync on updates. diff --git media/libtheora/README_MOZILLA media/libtheora/README_MOZILLA index d48dbfa..f08a2ed 100644 --- media/libtheora/README_MOZILLA +++ media/libtheora/README_MOZILLA @@ -3,3 +3,6 @@ using the update.sh script. The changes made were those applied by update.sh, the addition/update of Makefile.in files for the Mozilla build system. The subversion revision used was r17578. + +The in-tree copy may be omitted during build by --with-system-theora. +Keep version in configure.in in sync on updates. diff --git media/libtheora/moz.build media/libtheora/moz.build index 14265b1..3069e99 100644 --- media/libtheora/moz.build +++ media/libtheora/moz.build @@ -21,6 +21,9 @@ if CONFIG['GKMEDIAS_SHARED_LIBRARY']: # The encoder is currently not included. DEFINES['THEORA_DISABLE_ENCODE'] = True +if CONFIG['MOZ_NATIVE_OGG']: + CFLAGS += CONFIG['MOZ_OGG_CFLAGS'] + # Suppress warnings in third-party code. if CONFIG['GNU_CC']: CFLAGS += ['-Wno-type-limits'] diff --git media/libtremor/README_MOZILLA media/libtremor/README_MOZILLA index ee67b53..3f34a09 100644 --- media/libtremor/README_MOZILLA +++ media/libtremor/README_MOZILLA @@ -5,3 +5,6 @@ Makefile.in files for the Mozilla build system. The upstream release used was http://svn.xiph.org/trunk/Tremor/ The subversion revision used was r17547. + +The in-tree copy may be omitted during build by --with-system-tremor. +Keep version in configure.in in sync on updates. diff --git media/libtremor/moz.build media/libtremor/moz.build index 31831ba..a03d576 100644 --- media/libtremor/moz.build +++ media/libtremor/moz.build @@ -6,3 +6,5 @@ DIRS += ['include/tremor', 'lib'] +if CONFIG['MOZ_NATIVE_OGG']: + CFLAGS += CONFIG['MOZ_OGG_CFLAGS'] diff --git media/libvorbis/README_MOZILLA media/libvorbis/README_MOZILLA index 7c7454c..55baedd 100644 --- media/libvorbis/README_MOZILLA +++ media/libvorbis/README_MOZILLA @@ -8,3 +8,6 @@ https://svn.xiph.org/tags/vorbis/libvorbis-1.3.4@19059 Some files are renamed during the copy to prevent clashes with object file names with other Mozilla libraries. + +The in-tree copy may be omitted during build by --with-system-vorbis. +Keep version in configure.in in sync on updates. diff --git media/libvorbis/moz.build media/libvorbis/moz.build index 919b99e..cc776f7 100644 --- media/libvorbis/moz.build +++ media/libvorbis/moz.build @@ -55,3 +55,6 @@ FINAL_LIBRARY = 'gkmedias' # Suppress warnings in third-party code. if CONFIG['GNU_CC']: CFLAGS += ['-Wno-uninitialized'] + +if CONFIG['MOZ_NATIVE_OGG']: + CFLAGS += CONFIG['MOZ_OGG_CFLAGS'] diff --git media/webrtc/signaling/test/common.build media/webrtc/signaling/test/common.build index bbc971c..6ed7e41 100644 --- media/webrtc/signaling/test/common.build +++ media/webrtc/signaling/test/common.build @@ -108,6 +109,9 @@ if CONFIG['MOZ_OSS']: if CONFIG['MOZ_NATIVE_JPEG']: OS_LIBS += CONFIG['MOZ_JPEG_LIBS'] +if CONFIG['MOZ_NATIVE_OPUS']: + OS_LIBS += CONFIG['MOZ_OPUS_LIBS'] + if CONFIG['MOZ_NATIVE_LIBVPX']: OS_LIBS += CONFIG['MOZ_LIBVPX_LIBS'] diff --git media/webrtc/trunk/webrtc/modules/audio_coding/codecs/opus/opus.gypi media/webrtc/trunk/webrtc/modules/audio_coding/codecs/opus/opus.gypi index 00e77e7..55f48ab 100644 --- media/webrtc/trunk/webrtc/modules/audio_coding/codecs/opus/opus.gypi +++ media/webrtc/trunk/webrtc/modules/audio_coding/codecs/opus/opus.gypi @@ -17,18 +17,11 @@ 'conditions': [ ['build_with_mozilla==1', { # Mozilla provides its own build of the opus library. - 'include_dirs': [ - '/media/libopus/include', - '/media/libopus/src', - '/media/libopus/celt', + 'cflags_mozilla': [ + '$(filter -I%, $(MOZ_CELT_CFLAGS))/celt', + '$(MOZ_OPUS_CFLAGS)', + '$(filter -I%, $(MOZ_OPUS_CFLAGS))/../src', ], - 'direct_dependent_settings': { - 'include_dirs': [ - '/media/libopus/include', - '/media/libopus/src', - '/media/libopus/celt', - ], - }, }, { 'dependencies': [ '<(DEPTH)/third_party/opus/opus.gyp:opus' diff --git media/webrtc/trunk/webrtc/modules/audio_coding/neteq/neteq.gypi media/webrtc/trunk/webrtc/modules/audio_coding/neteq/neteq.gypi index 00e77e7..55f48ab 100644 --- media/webrtc/trunk/webrtc/modules/audio_coding/neteq/neteq.gypi +++ media/webrtc/trunk/webrtc/modules/audio_coding/neteq/neteq.gypi @@ -84,19 +84,11 @@ ], }], ['build_with_mozilla==1', { - 'include_dirs': [ - # Need Opus header files for the audio classifier. - '<(DEPTH)/../../../media/opus/celt', -# '<(DEPTH)/third_party/opus/src/src', + 'cflags_mozilla': [ + '$(filter -I%, $(MOZ_CELT_CFLAGS))/celt', + '$(MOZ_OPUS_CFLAGS)', + '$(filter -I%, $(MOZ_OPUS_CFLAGS))/../src', ], - 'direct_dependent_settings': { - 'include_dirs': [ - '../../../../../../media/opus/celt', - # Need Opus header files for the audio classifier. - '<(DEPTH)/../../../media/opus/celt', -# '<(DEPTH)/third_party/opus/src/src', - ], - }, }], ], 'sources': [ diff --git toolkit/library/moz.build toolkit/library/moz.build index d42137a..695e75a8 100644 --- toolkit/library/moz.build +++ toolkit/library/moz.build @@ -178,6 +178,30 @@ if CONFIG['MOZ_NATIVE_PNG']: if CONFIG['MOZ_NATIVE_HUNSPELL']: OS_LIBS += CONFIG['MOZ_HUNSPELL_LIBS'] +if CONFIG['MOZ_NATIVE_OGG']: + OS_LIBS += CONFIG['MOZ_OGG_LIBS'] + +if CONFIG['MOZ_NATIVE_THEORA']: + OS_LIBS += CONFIG['MOZ_THEORA_LIBS'] + +if CONFIG['MOZ_NATIVE_VORBIS']: + OS_LIBS += CONFIG['MOZ_VORBIS_LIBS'] + +if CONFIG['MOZ_NATIVE_TREMOR']: + OS_LIBS += CONFIG['MOZ_TREMOR_LIBS'] + +if CONFIG['MOZ_NATIVE_CELT']: + OS_LIBS += CONFIG['MOZ_CELT_LIBS'] + +if CONFIG['MOZ_NATIVE_OPUS']: + OS_LIBS += CONFIG['MOZ_OPUS_LIBS'] + +if CONFIG['MOZ_NATIVE_SPEEX']: + OS_LIBS += CONFIG['MOZ_SPEEX_LIBS'] + +if CONFIG['MOZ_NATIVE_SOUNDTOUCH']: + OS_LIBS += CONFIG['MOZ_SOUNDTOUCH_LIBS'] + if CONFIG['MOZ_NATIVE_LIBEVENT']: OS_LIBS += CONFIG['MOZ_LIBEVENT_LIBS'] diff --git xpcom/build/XPCOMInit.cpp xpcom/build/XPCOMInit.cpp index 2cf281e..6d7af0e 100644 --- xpcom/build/XPCOMInit.cpp +++ xpcom/build/XPCOMInit.cpp @@ -138,7 +138,9 @@ extern nsresult nsStringInputStreamConstructor(nsISupports*, REFNSIID, void**); #include "mozilla/VisualEventTracer.h" #endif +#ifndef MOZ_OGG_NO_MEM_REPORTING #include "ogg/ogg.h" +#endif #if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING) #include "vpx_mem/vpx_mem.h" #endif @@ -651,11 +653,13 @@ NS_InitXPCOM2(nsIServiceManager** aResult, // this oddness. mozilla::SetICUMemoryFunctions(); +#ifndef MOZ_OGG_NO_MEM_REPORTING // Do the same for libogg. ogg_set_mem_functions(OggReporter::CountingMalloc, OggReporter::CountingCalloc, OggReporter::CountingRealloc, OggReporter::CountingFree); +#endif #if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING) // And for VPX. Index: branches/2015Q4/www/firefox-esr/Makefile =================================================================== --- branches/2015Q4/www/firefox-esr/Makefile (revision 402339) +++ branches/2015Q4/www/firefox-esr/Makefile (revision 402340) @@ -1,99 +1,99 @@ # Created by: Alan Eldridge # $FreeBSD$ PORTNAME= firefox -DISTVERSION= 38.3.0 +DISTVERSION= 38.4.0 DISTVERSIONSUFFIX=esr.source PORTEPOCH= 1 CATEGORIES= www ipv6 MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}esr/source \ MOZILLA/${PORTNAME}/candidates/${DISTVERSION}esr-candidates/build2/source PKGNAMESUFFIX= -esr MAINTAINER= gecko@FreeBSD.org COMMENT= Web browser based on the browser portion of Mozilla -BUILD_DEPENDS= nspr>=4.10.8:${PORTSDIR}/devel/nspr \ - nss>=3.19.2:${PORTSDIR}/security/nss \ +BUILD_DEPENDS= nspr>=4.10.10:${PORTSDIR}/devel/nspr \ + nss>=3.19.2.1:${PORTSDIR}/security/nss \ libevent2>=2.0.21_2:${PORTSDIR}/devel/libevent2 \ soundtouch>=1.8.0:${PORTSDIR}/audio/soundtouch \ harfbuzz>=0.9.34:${PORTSDIR}/print/harfbuzz \ graphite2>=1.2.4:${PORTSDIR}/graphics/graphite2 \ libvorbis>=1.3.5:${PORTSDIR}/audio/libvorbis \ libvpx>=1.3.0:${PORTSDIR}/multimedia/libvpx \ sqlite3>=3.8.9:${PORTSDIR}/databases/sqlite3 \ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:${PORTSDIR}/databases/py-sqlite3 \ v4l_compat>0:${PORTSDIR}/multimedia/v4l_compat \ autoconf-2.13:${PORTSDIR}/devel/autoconf213 \ zip:${PORTSDIR}/archivers/zip \ unzip:${PORTSDIR}/archivers/unzip # opus>=1.1:${PORTSDIR}/audio/opus \ LIB_DEPENDS= libv4l2.so:${PORTSDIR}/multimedia/libv4l USE_GECKO= gecko CPE_PRODUCT= ${PORTNAME}_esr -CONFLICTS_INSTALL= firefox-4[0-4].* firefox-3[02-9].* firefox-2[0-35-9].* +CONFLICTS_INSTALL= firefox-4[0-46-9].* firefox-3[02-9].* firefox-2[0-35-9].* MOZ_PKGCONFIG_FILES= # empty USE_MOZILLA= -opus MOZILLA_NAME= Firefox USE_QT5= # empty QT_NONSTANDARD= yes USE_GL= gl USES= dos2unix tar:bzip2 DOS2UNIX_FILES= media/webrtc/trunk/webrtc/system_wrappers/source/spreadsortlib/spreadsort.hpp FIREFOX_ICON= ${MOZILLA}.png FIREFOX_ICON_SRC= ${PREFIX}/lib/${MOZILLA}/browser/chrome/icons/default/default48.png MOZ_OPTIONS= --program-transform-name='s/firefox/${MOZILLA}/' \ --enable-application=browser \ --enable-official-branding OPTIONS_DEFAULT= GTK2 OPTIONS_SINGLE+= TOOLKIT OPTIONS_SINGLE_TOOLKIT= GTK2 GTK3 .include "${.CURDIR}/../../www/firefox/Makefile.options" .include WRKSRC:= ${WRKDIR}/mozilla-esr38 .if ${PORT_OPTIONS:MALSA} RUN_DEPENDS+= alsa-lib>=1.0.27.2_1:${PORTSDIR}/audio/alsa-lib .endif .if ! ${PORT_OPTIONS:MBUNDLED_CAIRO} BUILD_DEPENDS+= cairo>=1.12.16_1,2:${PORTSDIR}/graphics/cairo .endif .if ${PORT_OPTIONS:MGSTREAMER} RUN_DEPENDS+= gstreamer1-libav>=1.2.4_1:${PORTSDIR}/multimedia/gstreamer1-libav .endif .if ${PORT_OPTIONS:MGTK3} BUILD_DEPENDS+= gtk3>=3.14.6:${PORTSDIR}/x11-toolkits/gtk30 .endif post-extract: @${SED} -e 's|@FIREFOX_ICON@|${FIREFOX_ICON}|' -e 's|@MOZILLA@|${MOZILLA}|' \ -e 's|@MOZILLA_NAME@|${MOZILLA_NAME}|' \ <${FILESDIR}/firefox.desktop.in >${WRKDIR}/${MOZILLA}.desktop post-patch: @${REINPLACE_CMD} -e '/MOZPNG/s/=[0-9]*/=10511/' \ ${WRKSRC}/configure.in @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \ ${WRKSRC}/browser/app/nsBrowserApp.cpp pre-configure: (cd ${WRKSRC} && ${LOCALBASE}/bin/autoconf-2.13) (cd ${WRKSRC}/js/src/ && ${LOCALBASE}/bin/autoconf-2.13) post-install: ${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps ${INSTALL_DATA} ${WRKDIR}/${MOZILLA}.desktop ${STAGEDIR}${PREFIX}/share/applications/ ${LN} -sf ${FIREFOX_ICON_SRC} ${STAGEDIR}${PREFIX}/share/pixmaps/${FIREFOX_ICON} .include Index: branches/2015Q4/www/firefox-esr/distinfo =================================================================== --- branches/2015Q4/www/firefox-esr/distinfo (revision 402339) +++ branches/2015Q4/www/firefox-esr/distinfo (revision 402340) @@ -1,2 +1,2 @@ -SHA256 (firefox-38.3.0esr.source.tar.bz2) = 809f65502d256568220c52bfe09646588f21653c8c487e8018b10ff87ca67f1c -SIZE (firefox-38.3.0esr.source.tar.bz2) = 181401628 +SHA256 (firefox-38.4.0esr.source.tar.bz2) = 028a1f7ce16b3016b0d98e5a5ef73bcb3f732b80d406e54f49e3c246e207f2c7 +SIZE (firefox-38.4.0esr.source.tar.bz2) = 181383793 Index: branches/2015Q4/www/firefox-esr-i18n/Makefile =================================================================== --- branches/2015Q4/www/firefox-esr-i18n/Makefile (revision 402339) +++ branches/2015Q4/www/firefox-esr-i18n/Makefile (revision 402340) @@ -1,90 +1,90 @@ # Created by: Andrew Pantyukhin # $FreeBSD$ PORTNAME= firefox -PORTVERSION= 38.3.0 +PORTVERSION= 38.4.0 CATEGORIES= www MASTER_SITES= MOZILLA/${PORTNAME:S|-i18n||}/releases/${DISTVERSION}esr/linux-i686/xpi \ MOZILLA/${PORTNAME:S|-i18n||}/candidates/${DISTVERSION}esr-candidates/build2/linux-i686/xpi PKGNAMEPREFIX= PKGNAMESUFFIX= -esr-i18n DISTFILES= ${FIREFOX_I18N_:S/$/.xpi/} DIST_SUBDIR= xpi/${DISTNAME} MAINTAINER= gecko@FreeBSD.org COMMENT= Localized interface for Firefox EXTRACT_DEPENDS= zip:${PORTSDIR}/archivers/zip USES= zip:infozip gecko:firefox,build USE_XPI= firefox NO_ARCH= yes USE_SUBMAKE= yes WDIR= langpack-*@firefox.mozilla.org XPI_DISTNAMES= ${FIREFOX_I18N_} PLIST?= ${WRKDIR}/plist PLISTF?= ${WRKDIR}/plist_files .include "${.CURDIR}/Makefile.option" .include .ifndef WITHOUT_SWITCHER RUN_DEPENDS+= xpi-quick-locale-switcher>=0:${PORTSDIR}/www/xpi-quick-locale-switcher .endif .include "${.CURDIR}/Makefile.lang" FIREFOX_I18N_?= ${FIREFOX_I18N} .for dist in ${XPI_DISTNAMES} XPI_ID_${dist}= langpack-${dist}@firefox.mozilla.org .endfor pre-everything:: @${ECHO_CMD} @${ECHO_CMD} "Please define FIREFOX_I18N_ALL to install all languages." @${ECHO_CMD} do-extract: @${MKDIR} ${WRKSRC} @for lang in ${FIREFOX_I18N_}; do \ if ! (${UNZIP_CMD} -qo ${_DISTDIR}/$$lang.xpi -d ${WRKSRC}/langpack-$$lang@firefox.mozilla.org);\ then \ exit 1; \ fi; \ cd ${WRKSRC}/langpack-$$lang@firefox.mozilla.org/; \ ${FIND} -H -s * ! -type d | \ ${SED} -e "s|^|lib/xpi/langpack-$$lang@firefox.mozilla.org/|" >> ${PLISTF}; \ done ${CAT} ${PLISTF} | ${SORT} >> ${PLIST} do-install: @${MKDIR} ${STAGEDIR}${XPI_LIBDIR} ${STAGEDIR}${XPI_SLDIRS_ALL} cd ${WRKSRC}; ${PAX} -rw . ${STAGEDIR}${XPI_LIBDIR} ${CHMOD} -R a+rX,go-w ${STAGEDIR}${XPI_LIBDIR}/${WDIR}/ @for e in ${STAGEDIR}${XPI_LIBDIR}/${WDIR}; do \ for _dir in ${XPI_LINKFARMS} ; do \ ${LN} -sf $${_e##*/} ${STAGEDIR}$$_dir/ ${_Q} ; \ done \ done @${ECHO_CMD} '@exec ${INSTALL} -d ${XPI_SLDIRS_ALL:S,^${PREFIX},%D,}' ${_A} @${ECHO_CMD} '@exec for _dir in ${XPI_LINKFARMS} ; { \ ${LN} -sf ${XPI_LIBDIR}/${WDIR} $$_dir/ ${_Q}; }' ${_A} @${ECHO_CMD} '@unexec for _dir in ${XPI_LINKFARMS} ${XPI_LIBDIR}; { ${RM} -f $$_dir/${WDIR} ; }' ${_A} post-patch: ${FIND} ${WRKSRC} -name install.rdf -print0 | \ ${XARGS} -0L1 ${REINPLACE_CMD} -i '' -e '/ Index: branches/2015Q4/www/firefox-esr-i18n/distinfo =================================================================== --- branches/2015Q4/www/firefox-esr-i18n/distinfo (revision 402339) +++ branches/2015Q4/www/firefox-esr-i18n/distinfo (revision 402340) @@ -1,176 +1,176 @@ -SHA256 (xpi/firefox-38.3.0/ach.xpi) = 2f72ae6bad2fe67c93a5384cb32ab2991166b4507ee4d2678fd3c192719b4197 -SIZE (xpi/firefox-38.3.0/ach.xpi) = 477970 -SHA256 (xpi/firefox-38.3.0/af.xpi) = ffa2d6e68d8c3ca3fe4d36372ac565fd34ad925fdc1f3f46382afa044d8d55fd -SIZE (xpi/firefox-38.3.0/af.xpi) = 483326 -SHA256 (xpi/firefox-38.3.0/an.xpi) = d8d90a799d5e7d47a44f4afd5fba10f8815ff09eae34276f4e8e817befb9c6b8 -SIZE (xpi/firefox-38.3.0/an.xpi) = 461423 -SHA256 (xpi/firefox-38.3.0/ar.xpi) = 60fd61bc5ad7db8857232deb0dae2f49882d9803d86d852daabe5debaddac467 -SIZE (xpi/firefox-38.3.0/ar.xpi) = 516496 -SHA256 (xpi/firefox-38.3.0/as.xpi) = 14864a2372815dfd2c9bc726571b4d0d68169d55f9d0d150e91dfaa73e4cf8b6 -SIZE (xpi/firefox-38.3.0/as.xpi) = 509574 -SHA256 (xpi/firefox-38.3.0/ast.xpi) = b0f9e9f5cbcd4e5b5dd6bbf3aae4d6edbf7f204e2d99f37db313a1dc8001f5d5 -SIZE (xpi/firefox-38.3.0/ast.xpi) = 397203 -SHA256 (xpi/firefox-38.3.0/az.xpi) = 70c7ed401c48843c96486799c54498405e137196ea49e643513c43e3ea154bef -SIZE (xpi/firefox-38.3.0/az.xpi) = 489154 -SHA256 (xpi/firefox-38.3.0/be.xpi) = 5b2ef1a4f93de18c8b27e703ec5da6bc760a09d67e863c0116593b7bacba38ff -SIZE (xpi/firefox-38.3.0/be.xpi) = 441058 -SHA256 (xpi/firefox-38.3.0/bg.xpi) = fa3ada11deeb52b3125b49428570c3fb8fc9956b3aa2124f6b5c1017512f715e -SIZE (xpi/firefox-38.3.0/bg.xpi) = 487819 -SHA256 (xpi/firefox-38.3.0/bn-BD.xpi) = 865456f6c52520446b829ca001268b6a8a9c4ca8ee597c00e7313193adf52b9f -SIZE (xpi/firefox-38.3.0/bn-BD.xpi) = 528690 -SHA256 (xpi/firefox-38.3.0/bn-IN.xpi) = 093e4d5fe1fab9ce3eac28a1616857a9b8a106bd91d07047a80ec0f7ae87a1a4 -SIZE (xpi/firefox-38.3.0/bn-IN.xpi) = 527927 -SHA256 (xpi/firefox-38.3.0/br.xpi) = cca671ee4ee031d3acf90cf732b0b03a98a6eb14a3e10d0fdd4105d6fb2ca7cd -SIZE (xpi/firefox-38.3.0/br.xpi) = 441961 -SHA256 (xpi/firefox-38.3.0/bs.xpi) = 1ae378259f25e2a4b8b08e5f3c907476c7b9828b8c2bbdab5f733adec486d487 -SIZE (xpi/firefox-38.3.0/bs.xpi) = 485305 -SHA256 (xpi/firefox-38.3.0/ca.xpi) = a34d02f928a6bef8ee204c331073b933ee4c7e85e0840ec7471c4018eea555ba -SIZE (xpi/firefox-38.3.0/ca.xpi) = 458091 -SHA256 (xpi/firefox-38.3.0/cs.xpi) = 9fa350f1aea6fd57c10908aa84a401e6d5b4111d34e7ed0c769807c62223ec0e -SIZE (xpi/firefox-38.3.0/cs.xpi) = 446725 -SHA256 (xpi/firefox-38.3.0/cy.xpi) = 78f9cacf491b6ff5888782455a3b4d7c1ed0ae5298dd825a8de15bf42c0dbab8 -SIZE (xpi/firefox-38.3.0/cy.xpi) = 444385 -SHA256 (xpi/firefox-38.3.0/da.xpi) = 6b24f9c8f926d28106c17e1adec975607f869d5f1dc2202ad1b0047da03acd0c -SIZE (xpi/firefox-38.3.0/da.xpi) = 450762 -SHA256 (xpi/firefox-38.3.0/de.xpi) = 64bbc4dce5f8bd357dcadec32fe18f9d12d235dcf1016b7490d9802dba9d2e9d -SIZE (xpi/firefox-38.3.0/de.xpi) = 451628 -SHA256 (xpi/firefox-38.3.0/dsb.xpi) = 80453680d665de33f10ed1e8f675d546fbc622fbab78a96119470ec553ff5e81 -SIZE (xpi/firefox-38.3.0/dsb.xpi) = 470924 -SHA256 (xpi/firefox-38.3.0/el.xpi) = 736da042d960010da3298191613c5df4e3813f80519359725c0cce4b9071c9b1 -SIZE (xpi/firefox-38.3.0/el.xpi) = 498370 -SHA256 (xpi/firefox-38.3.0/en-GB.xpi) = fb822610d286841e79799aabe37b28b3a49dd602b2115b0b44e25656d78e340f -SIZE (xpi/firefox-38.3.0/en-GB.xpi) = 437846 -SHA256 (xpi/firefox-38.3.0/en-US.xpi) = d78090784e0aaadc9deb3e74751dd5a524abf450295c873d78ace40bdd829960 -SIZE (xpi/firefox-38.3.0/en-US.xpi) = 469718 -SHA256 (xpi/firefox-38.3.0/en-ZA.xpi) = c323f421203600958b966bab2e7067948be7a5ce136b54bfe36b15eec74a0552 -SIZE (xpi/firefox-38.3.0/en-ZA.xpi) = 439926 -SHA256 (xpi/firefox-38.3.0/eo.xpi) = 524bc6a5bd979ebdc7f82f63d4c721fb48920907d356455943654759dad09e03 -SIZE (xpi/firefox-38.3.0/eo.xpi) = 488370 -SHA256 (xpi/firefox-38.3.0/es-AR.xpi) = 97cde7ab000ed7167f45d86e0ca7452006f90961f71fc74137bed72e100b17c1 -SIZE (xpi/firefox-38.3.0/es-AR.xpi) = 453983 -SHA256 (xpi/firefox-38.3.0/es-CL.xpi) = 599ad5f49f6578e1a625e8b594fb9d51414b3ac09010f133a15859acef8baaa8 -SIZE (xpi/firefox-38.3.0/es-CL.xpi) = 384680 -SHA256 (xpi/firefox-38.3.0/es-ES.xpi) = 1471acb38112acd82a7404b8ff5c7fb57bb5f90faf5b99d6a37c6ab6472ec669 -SIZE (xpi/firefox-38.3.0/es-ES.xpi) = 374073 -SHA256 (xpi/firefox-38.3.0/es-MX.xpi) = 31c80e68ddd95628cb8484677f830f952be96ff64897e11d128077e0fcbce7ae -SIZE (xpi/firefox-38.3.0/es-MX.xpi) = 457050 -SHA256 (xpi/firefox-38.3.0/et.xpi) = 1ea45310456c3b3649ead3b172777d80263c7e18b2f6ba73d214b8bea3fee864 -SIZE (xpi/firefox-38.3.0/et.xpi) = 443228 -SHA256 (xpi/firefox-38.3.0/eu.xpi) = f7df003ce694defcb73b6bce207c0b3a0a81226651780636b196f9badd590958 -SIZE (xpi/firefox-38.3.0/eu.xpi) = 466555 -SHA256 (xpi/firefox-38.3.0/fa.xpi) = 11eae8c5c93095e5dd9161ec579775a7e84fa38b5a715ce5771e69dd80ee2004 -SIZE (xpi/firefox-38.3.0/fa.xpi) = 518281 -SHA256 (xpi/firefox-38.3.0/ff.xpi) = d512a79681dc961f3c4b1d59846dc2d79a75b04aa591ae38fe9f810c946d0b95 -SIZE (xpi/firefox-38.3.0/ff.xpi) = 454587 -SHA256 (xpi/firefox-38.3.0/fi.xpi) = b64d53d522244f5bff25e03b19c0e59e7c0e1af796296bba249b9aab82803fb9 -SIZE (xpi/firefox-38.3.0/fi.xpi) = 444852 -SHA256 (xpi/firefox-38.3.0/fr.xpi) = 3c602755066a100f54726f813d1c7d0e02e634ad7911be1107c0b9f726a1948d -SIZE (xpi/firefox-38.3.0/fr.xpi) = 461402 -SHA256 (xpi/firefox-38.3.0/fy-NL.xpi) = e9f2a84766edf7dd97791d0b84723a48f6441d9ddee4797d0771f805fcac7c43 -SIZE (xpi/firefox-38.3.0/fy-NL.xpi) = 455537 -SHA256 (xpi/firefox-38.3.0/ga-IE.xpi) = ac7c95ccb1061c812fb88b736e0008fccc1faceea33cd8516a8db430ab297b64 -SIZE (xpi/firefox-38.3.0/ga-IE.xpi) = 469624 -SHA256 (xpi/firefox-38.3.0/gd.xpi) = dd67970c734223e4152f987cbc3db474c54a331f0e11436b948bdd6b361b9bcc -SIZE (xpi/firefox-38.3.0/gd.xpi) = 454616 -SHA256 (xpi/firefox-38.3.0/gl.xpi) = f2df908b7153976bb3b5c463b2e413e0d0b616aa47d13321289c23e546dfa9fe -SIZE (xpi/firefox-38.3.0/gl.xpi) = 448924 -SHA256 (xpi/firefox-38.3.0/gu-IN.xpi) = a6ba0d884228ea0cd32c6b7813943f74d371cf1094602773dd4c2aa09e6148a1 -SIZE (xpi/firefox-38.3.0/gu-IN.xpi) = 477980 -SHA256 (xpi/firefox-38.3.0/he.xpi) = 8f1189a915932254dd71a2cb1bc1c8af2650abed6400ed58c5899872ecc500aa -SIZE (xpi/firefox-38.3.0/he.xpi) = 486785 -SHA256 (xpi/firefox-38.3.0/hi-IN.xpi) = 7eb0158c7cf4dc9b429964f404d9e5fa6e70a57c4b4b28ce70b998b62f847092 -SIZE (xpi/firefox-38.3.0/hi-IN.xpi) = 508167 -SHA256 (xpi/firefox-38.3.0/hr.xpi) = da6a302f08ebce5f02d5fd09fe77148dd6607149362c44bf17aad943ea178939 -SIZE (xpi/firefox-38.3.0/hr.xpi) = 478271 -SHA256 (xpi/firefox-38.3.0/hsb.xpi) = 712603889391534f5bc4125621a00deca7d8ceb008ebabbfefb71d75393ea817 -SIZE (xpi/firefox-38.3.0/hsb.xpi) = 468720 -SHA256 (xpi/firefox-38.3.0/hu.xpi) = de14abb876cb407f723025787ee7a1ca7820cc0737d10ff6bf3b9516959449be -SIZE (xpi/firefox-38.3.0/hu.xpi) = 453554 -SHA256 (xpi/firefox-38.3.0/hy-AM.xpi) = 0d32d2ed9229fa268dde02e627088bab563671633b447bde7f477a567fd001a8 -SIZE (xpi/firefox-38.3.0/hy-AM.xpi) = 534264 -SHA256 (xpi/firefox-38.3.0/id.xpi) = 9d95ec48a5ccff91c0281db567ffda7aeef684c1aa6058bd3a27b76d9d45665a -SIZE (xpi/firefox-38.3.0/id.xpi) = 431488 -SHA256 (xpi/firefox-38.3.0/is.xpi) = f6e3da8b25067d8978043c5dceba199858650372cff1f57da61e65649b9a02a5 -SIZE (xpi/firefox-38.3.0/is.xpi) = 485129 -SHA256 (xpi/firefox-38.3.0/it.xpi) = 961f916fcffbbc3f2852f3cb1a337e54e1f5b62389c3ae8888441c991c5289f7 -SIZE (xpi/firefox-38.3.0/it.xpi) = 368409 -SHA256 (xpi/firefox-38.3.0/ja.xpi) = 53cdacca5fdf51204a47dd20a395d6c3f77278196e4283d11e3e47abcc071f58 -SIZE (xpi/firefox-38.3.0/ja.xpi) = 479113 -SHA256 (xpi/firefox-38.3.0/kk.xpi) = 41088142a35e2904779b24e9d54ada4e59f3bb398e92796a93712839f3ffc7c4 -SIZE (xpi/firefox-38.3.0/kk.xpi) = 503568 -SHA256 (xpi/firefox-38.3.0/km.xpi) = ecc6566e22d7b522f8a5ce39e8264a71bf04f22d05c1f83f9c57704b1bac0259 -SIZE (xpi/firefox-38.3.0/km.xpi) = 565673 -SHA256 (xpi/firefox-38.3.0/kn.xpi) = 636b368787d841d747f1d714b40eb2ae5e6500f2d933d39003e9de6d52c7d54e -SIZE (xpi/firefox-38.3.0/kn.xpi) = 533463 -SHA256 (xpi/firefox-38.3.0/ko.xpi) = 489bdb57e8aa63fd54999319fdb0985a4bff5144aa558fddcf4e977226a780c4 -SIZE (xpi/firefox-38.3.0/ko.xpi) = 460853 -SHA256 (xpi/firefox-38.3.0/lij.xpi) = 79084ffafbde4a7758118ad3b2cc526052833cb4e0319c9f8ea5b4d393a20bff -SIZE (xpi/firefox-38.3.0/lij.xpi) = 444239 -SHA256 (xpi/firefox-38.3.0/lt.xpi) = a791d826ffb215f396e2c674efb29e2a4ea3b675b538978c46162adbb3c97b00 -SIZE (xpi/firefox-38.3.0/lt.xpi) = 486452 -SHA256 (xpi/firefox-38.3.0/lv.xpi) = b10fa69f49de1197b3ae30cb247b11bb34094c895694feaa770ed09d2a346251 -SIZE (xpi/firefox-38.3.0/lv.xpi) = 467198 -SHA256 (xpi/firefox-38.3.0/mai.xpi) = 50eb11e00cdf99da0d4e1d06d83be903a060a53416baffb666dbf166600aeac1 -SIZE (xpi/firefox-38.3.0/mai.xpi) = 514666 -SHA256 (xpi/firefox-38.3.0/mk.xpi) = 3ac79a90e37cb6f6cfb7b342a26957f38524d6a09be6644534917d2e3405dde0 -SIZE (xpi/firefox-38.3.0/mk.xpi) = 529205 -SHA256 (xpi/firefox-38.3.0/ml.xpi) = 19615835b449dabf86177e251e5622945ce248497c015ea56d66b0aa6ccb8e73 -SIZE (xpi/firefox-38.3.0/ml.xpi) = 528919 -SHA256 (xpi/firefox-38.3.0/mr.xpi) = 7d4093a8136b46c9b8122d5c8e6917a633ddb0fda208ab01a49bc4bc6e98ecf3 -SIZE (xpi/firefox-38.3.0/mr.xpi) = 505961 -SHA256 (xpi/firefox-38.3.0/ms.xpi) = bb2eef3b76d0218fedb51f5eaaa8e1232f8d0e4f9a4ad1df75b6f93f59f5db62 -SIZE (xpi/firefox-38.3.0/ms.xpi) = 489872 -SHA256 (xpi/firefox-38.3.0/nb-NO.xpi) = c474c99d1d240ea93e891c9e2a01e39ec630024a75a3d809c08d56a75f7a70c8 -SIZE (xpi/firefox-38.3.0/nb-NO.xpi) = 444176 -SHA256 (xpi/firefox-38.3.0/nl.xpi) = f07caf8da3bfdef6d35a9e0e2a33dad23347afb6176d6acba1f3123abfa68572 -SIZE (xpi/firefox-38.3.0/nl.xpi) = 443995 -SHA256 (xpi/firefox-38.3.0/nn-NO.xpi) = 62e4d03e108833164c0f00126782d38804548e4e958d2640937f85b50133201c -SIZE (xpi/firefox-38.3.0/nn-NO.xpi) = 438452 -SHA256 (xpi/firefox-38.3.0/or.xpi) = 05b3bfeab432b1119bd605822bbaf632d7d6e6704b8f34db8c407c83bff3daef -SIZE (xpi/firefox-38.3.0/or.xpi) = 527050 -SHA256 (xpi/firefox-38.3.0/pa-IN.xpi) = bd393db4f3d07a0b362cc652c5b875d36b2e06b1fca85c27028d5a6fce708c3d -SIZE (xpi/firefox-38.3.0/pa-IN.xpi) = 493723 -SHA256 (xpi/firefox-38.3.0/pl.xpi) = b943b81c9a350804deab5037b14c9eb21ff0381b26fb9fb150c4a3bf0ea62f6c -SIZE (xpi/firefox-38.3.0/pl.xpi) = 406567 -SHA256 (xpi/firefox-38.3.0/pt-BR.xpi) = c461053c9c33023b6acc2eaebd231f7122b892e01dfefcbb2657c422bfe7319c -SIZE (xpi/firefox-38.3.0/pt-BR.xpi) = 459814 -SHA256 (xpi/firefox-38.3.0/pt-PT.xpi) = 30b4ee033665b5c364cf8d4a4f21f4b1575eaffc04afa5f6949d94257aeadb14 -SIZE (xpi/firefox-38.3.0/pt-PT.xpi) = 439976 -SHA256 (xpi/firefox-38.3.0/rm.xpi) = e952371a3fc8ecc3302f0d357f76e2f1a68ead841404ac000e9bfff2db3f2c3a -SIZE (xpi/firefox-38.3.0/rm.xpi) = 446287 -SHA256 (xpi/firefox-38.3.0/ro.xpi) = a0eef60a81db20e4414dbcffa603d62a0b14e5d0f2d5a84e800d67f7e0af3837 -SIZE (xpi/firefox-38.3.0/ro.xpi) = 494080 -SHA256 (xpi/firefox-38.3.0/ru.xpi) = 761576f89459725d0c4d9f594a594d226c539544f5bcd6cc430349bbef012480 -SIZE (xpi/firefox-38.3.0/ru.xpi) = 414418 -SHA256 (xpi/firefox-38.3.0/si.xpi) = 9ff6fe74ca153036cd3d8b10fd6f517430df24b28808af549b70f01cbc4291f7 -SIZE (xpi/firefox-38.3.0/si.xpi) = 537394 -SHA256 (xpi/firefox-38.3.0/sk.xpi) = ab2e346ac3b9f4d8b7b7ed7e72f668c44e6050a39905c93643c7ee2c37e160ef -SIZE (xpi/firefox-38.3.0/sk.xpi) = 469436 -SHA256 (xpi/firefox-38.3.0/sl.xpi) = 3d63cd25df083ae816a0b5cc5cf9ca9f4e9bea519a48f6385400e8b7764531d6 -SIZE (xpi/firefox-38.3.0/sl.xpi) = 441594 -SHA256 (xpi/firefox-38.3.0/son.xpi) = 5fc68ae38ad84c8f475eee261930c0625402e6e6302607c9ff540014c70e0e44 -SIZE (xpi/firefox-38.3.0/son.xpi) = 449268 -SHA256 (xpi/firefox-38.3.0/sq.xpi) = 578e4919e2b66ba26fb7a8f2922d8e2a13a28459702c251986a77a0cafb19ad3 -SIZE (xpi/firefox-38.3.0/sq.xpi) = 486075 -SHA256 (xpi/firefox-38.3.0/sr.xpi) = 5e7de79f7a75219c0a5f7ad4c385c8497c1c126282202aee5a2a44d3b030d912 -SIZE (xpi/firefox-38.3.0/sr.xpi) = 479420 -SHA256 (xpi/firefox-38.3.0/sv-SE.xpi) = 01cd4582aaf949149c322c1a47a8019dca971d0c9629137d688c2b22f3ab3d9b -SIZE (xpi/firefox-38.3.0/sv-SE.xpi) = 452632 -SHA256 (xpi/firefox-38.3.0/ta.xpi) = 38e36c769037bcd8b56b728de2349fe69766a63142a06798d9c9a617779900d3 -SIZE (xpi/firefox-38.3.0/ta.xpi) = 506606 -SHA256 (xpi/firefox-38.3.0/te.xpi) = e8ee36728838656bb0d0f743e1ea28727f631bbec17d370b6b4c09c641c15952 -SIZE (xpi/firefox-38.3.0/te.xpi) = 526253 -SHA256 (xpi/firefox-38.3.0/th.xpi) = 62528397a9b092a0a8eaaa23b29e8e0092d78dc7920e1062974cb0579898409f -SIZE (xpi/firefox-38.3.0/th.xpi) = 534270 -SHA256 (xpi/firefox-38.3.0/tr.xpi) = bbaeb1722a9e1e6b52a7569f4b00f54f1fdf87acda88d52eda2892ab103426a7 -SIZE (xpi/firefox-38.3.0/tr.xpi) = 481076 -SHA256 (xpi/firefox-38.3.0/uk.xpi) = 60c8b03bbf4805c3ba69234fa9cb04832d05b69b0df96257421331fa676d128c -SIZE (xpi/firefox-38.3.0/uk.xpi) = 493314 -SHA256 (xpi/firefox-38.3.0/vi.xpi) = c24aa36964a321b9cab209a0ba851ccc268db3114f9209ff742c4ec0f4e4c8c8 -SIZE (xpi/firefox-38.3.0/vi.xpi) = 467505 -SHA256 (xpi/firefox-38.3.0/xh.xpi) = 93f9e1dfe71a596ebce79affb5764ea7057a8082bac65c902511bf3b5b48b656 -SIZE (xpi/firefox-38.3.0/xh.xpi) = 450242 -SHA256 (xpi/firefox-38.3.0/zh-CN.xpi) = 1c1def4062ce15660670d7d31ee7672359fc50e9fe4b1f8d80e96f0d8adda199 -SIZE (xpi/firefox-38.3.0/zh-CN.xpi) = 488277 -SHA256 (xpi/firefox-38.3.0/zh-TW.xpi) = 1dbaae6ea46991f5298bb5c03f0926b48d77c058ff07c44601377ecbe9837be3 -SIZE (xpi/firefox-38.3.0/zh-TW.xpi) = 467844 +SHA256 (xpi/firefox-38.4.0/ach.xpi) = 367e6432d3760e7403eea1ba3f59babd7846721812d51cc952fcfed9f62773c5 +SIZE (xpi/firefox-38.4.0/ach.xpi) = 477970 +SHA256 (xpi/firefox-38.4.0/af.xpi) = d88130018dfd2909551e1fdf93ef17fde5423218a1bc75cc051eadc828861d45 +SIZE (xpi/firefox-38.4.0/af.xpi) = 483326 +SHA256 (xpi/firefox-38.4.0/an.xpi) = 46a554e2edb3d825a8831551f2c6b939f45c545fba05e3ef0be2ac3c36dbd883 +SIZE (xpi/firefox-38.4.0/an.xpi) = 461422 +SHA256 (xpi/firefox-38.4.0/ar.xpi) = aee825dee23f8aeaafe1775918d9a17384073836ef3a934c50580d9cab1116b4 +SIZE (xpi/firefox-38.4.0/ar.xpi) = 516496 +SHA256 (xpi/firefox-38.4.0/as.xpi) = e0c77be1178038fc122951f6522d9c28377c862bed0844ac7e41b6c1b57aaaec +SIZE (xpi/firefox-38.4.0/as.xpi) = 509574 +SHA256 (xpi/firefox-38.4.0/ast.xpi) = 895e06fdf8b0bd232fe89fb5254b9c2b114ff7bd8257a3a93062ce0549a2416c +SIZE (xpi/firefox-38.4.0/ast.xpi) = 397202 +SHA256 (xpi/firefox-38.4.0/az.xpi) = 903c9468cf859252d9201ab63b5ee430e46979eddb0b20b5e9bb7f7ef764b729 +SIZE (xpi/firefox-38.4.0/az.xpi) = 489153 +SHA256 (xpi/firefox-38.4.0/be.xpi) = 698a0ac8f2d802d55d55dfc55d6a870d9269a81e73506ba2ccbe9875e4bad00a +SIZE (xpi/firefox-38.4.0/be.xpi) = 441057 +SHA256 (xpi/firefox-38.4.0/bg.xpi) = ed0f3767bca984504cd14925eac0a85555b794669fbab204f6b66565fe5572d4 +SIZE (xpi/firefox-38.4.0/bg.xpi) = 487819 +SHA256 (xpi/firefox-38.4.0/bn-BD.xpi) = 3b9130b35ba2dbee86e6b7cc7e1db9bf5e58ad58629c2c73ac383890602b1cf0 +SIZE (xpi/firefox-38.4.0/bn-BD.xpi) = 528690 +SHA256 (xpi/firefox-38.4.0/bn-IN.xpi) = 23e256860312a7fd7287fb9734bb4cd23a054c7658ba50d0eb0a0aa59008ed0c +SIZE (xpi/firefox-38.4.0/bn-IN.xpi) = 527928 +SHA256 (xpi/firefox-38.4.0/br.xpi) = 4db2bb1cb2e6ed5e97c30a387e3b1ee971ea5b8f9f62314806d9256439bffafd +SIZE (xpi/firefox-38.4.0/br.xpi) = 441962 +SHA256 (xpi/firefox-38.4.0/bs.xpi) = aac006ad04fd94454de660eb22615386659c9d7cb76a76661c87c7fe9a0ba2e6 +SIZE (xpi/firefox-38.4.0/bs.xpi) = 485305 +SHA256 (xpi/firefox-38.4.0/ca.xpi) = 9abe8bdfc09c11bddcd92f052760edad97fba5396c535b3382f2add3b0ff6834 +SIZE (xpi/firefox-38.4.0/ca.xpi) = 458092 +SHA256 (xpi/firefox-38.4.0/cs.xpi) = 7e5c23a4e3926d2dc1d21ac59d616597312e2cd92a3e13322f0a8b767ebbf1de +SIZE (xpi/firefox-38.4.0/cs.xpi) = 446726 +SHA256 (xpi/firefox-38.4.0/cy.xpi) = cd6d186edfbfb28e9fd1a5629dbecd6f6cff3a664ef4402ba1aa6e78b0bcee94 +SIZE (xpi/firefox-38.4.0/cy.xpi) = 444385 +SHA256 (xpi/firefox-38.4.0/da.xpi) = 0c01576ce10bafc4eb825cc469487df34ec305537bf8ff0a28023b3488d6a3d6 +SIZE (xpi/firefox-38.4.0/da.xpi) = 450762 +SHA256 (xpi/firefox-38.4.0/de.xpi) = 7f69136d81c323374b0148c5d568d069824c21a550fd11df7516251982312a11 +SIZE (xpi/firefox-38.4.0/de.xpi) = 451629 +SHA256 (xpi/firefox-38.4.0/dsb.xpi) = cb3a5f1149b08ab063504d642181db5b23a31bd068d59a98a3e15e9f94934335 +SIZE (xpi/firefox-38.4.0/dsb.xpi) = 470923 +SHA256 (xpi/firefox-38.4.0/el.xpi) = 5ac04011963f07691b6406094efe3f16455c7cb952d08891e6a3d072789130e9 +SIZE (xpi/firefox-38.4.0/el.xpi) = 498370 +SHA256 (xpi/firefox-38.4.0/en-GB.xpi) = 21f4db34f3277636b6cc41be7508025e201fc9770bf962906eefeb04543a26ff +SIZE (xpi/firefox-38.4.0/en-GB.xpi) = 437845 +SHA256 (xpi/firefox-38.4.0/en-US.xpi) = fa4b38cab1689369da78e317a2dd8aeb2c5c9575a3a3bb971118e2c9e1984f40 +SIZE (xpi/firefox-38.4.0/en-US.xpi) = 469718 +SHA256 (xpi/firefox-38.4.0/en-ZA.xpi) = 1de92cc4b659074953146880f26090d060030734b050ca4e9e99ca082930ee3f +SIZE (xpi/firefox-38.4.0/en-ZA.xpi) = 439926 +SHA256 (xpi/firefox-38.4.0/eo.xpi) = bda681afa425465404fd3b3ee3e5ddc78da046884ad1288478f3567ad23f6cc4 +SIZE (xpi/firefox-38.4.0/eo.xpi) = 488369 +SHA256 (xpi/firefox-38.4.0/es-AR.xpi) = 39e09539cbdb65176f5f7505ed717bb6621492eaf24782a96beec3059a06c8e7 +SIZE (xpi/firefox-38.4.0/es-AR.xpi) = 453983 +SHA256 (xpi/firefox-38.4.0/es-CL.xpi) = 519db83d328d45e0617e191a03d6eeb852f6fb78266aebb7b5fb20c788d1043b +SIZE (xpi/firefox-38.4.0/es-CL.xpi) = 384678 +SHA256 (xpi/firefox-38.4.0/es-ES.xpi) = b39ef0e44adba821e4f9ded5d5bc3fad5f6970e090453fa509b104bd84876b00 +SIZE (xpi/firefox-38.4.0/es-ES.xpi) = 374073 +SHA256 (xpi/firefox-38.4.0/es-MX.xpi) = c7db8de566c0b4d0ae916877145e0766919379c583405c5ab3f395ddae4dcab6 +SIZE (xpi/firefox-38.4.0/es-MX.xpi) = 457050 +SHA256 (xpi/firefox-38.4.0/et.xpi) = c0ac4b4ef61e1ca128b63fb88410788c9aaf54e0c6a8012be379d093f465fe07 +SIZE (xpi/firefox-38.4.0/et.xpi) = 443228 +SHA256 (xpi/firefox-38.4.0/eu.xpi) = fa7ed638416b030a54104bfaa399aee0670cbcb9066a7accd3ecb543dcfc6774 +SIZE (xpi/firefox-38.4.0/eu.xpi) = 466555 +SHA256 (xpi/firefox-38.4.0/fa.xpi) = 6229f7ff2312dba7678b51d7b63b66c76bf0f044065149393627513bb0939fb0 +SIZE (xpi/firefox-38.4.0/fa.xpi) = 518282 +SHA256 (xpi/firefox-38.4.0/ff.xpi) = acdc6ac3318a9fefa6fe86ea4449cc58b2e5fa251ee9054b65a77ba6fa6203d9 +SIZE (xpi/firefox-38.4.0/ff.xpi) = 454587 +SHA256 (xpi/firefox-38.4.0/fi.xpi) = bf1fd7170359bf1dde30bbb6e67df575ee7ac26bd26d2d3627c12688cf689dad +SIZE (xpi/firefox-38.4.0/fi.xpi) = 444852 +SHA256 (xpi/firefox-38.4.0/fr.xpi) = 1609e9fff4c9f221553628be4d64c3d70e7b55fe0120a049d27f7aaaa129590e +SIZE (xpi/firefox-38.4.0/fr.xpi) = 461402 +SHA256 (xpi/firefox-38.4.0/fy-NL.xpi) = e8cac9a32aea385bc389abf2e15722295de61776a4cc098e65c6b5b512d1ad89 +SIZE (xpi/firefox-38.4.0/fy-NL.xpi) = 455538 +SHA256 (xpi/firefox-38.4.0/ga-IE.xpi) = b5ac39f748c770e2208cd61a83819b42d1dff136e6dd5af230f7eea51d542ce2 +SIZE (xpi/firefox-38.4.0/ga-IE.xpi) = 469624 +SHA256 (xpi/firefox-38.4.0/gd.xpi) = 964f0c93adde0188ff3664c73ab04bb2e50201a7e4156200e4d471ef9a10772d +SIZE (xpi/firefox-38.4.0/gd.xpi) = 454616 +SHA256 (xpi/firefox-38.4.0/gl.xpi) = 2150be83227315de82333e41e5496da5d3b823645a98404ef31d2cd98f6bd1e2 +SIZE (xpi/firefox-38.4.0/gl.xpi) = 448925 +SHA256 (xpi/firefox-38.4.0/gu-IN.xpi) = 4a6b29fc389af54c294f5cbba27780aa6a5e63329af5d1407f42ab240462099d +SIZE (xpi/firefox-38.4.0/gu-IN.xpi) = 477980 +SHA256 (xpi/firefox-38.4.0/he.xpi) = 2fafcb398ae4ad3aab1498fd22f8ab713f966f96753301fc2385f0c5d0ab1568 +SIZE (xpi/firefox-38.4.0/he.xpi) = 486785 +SHA256 (xpi/firefox-38.4.0/hi-IN.xpi) = c2b5eed1fd8ad921f79feaca0ad43ac969e3171e8d1d579ae99c2c1c17202379 +SIZE (xpi/firefox-38.4.0/hi-IN.xpi) = 508167 +SHA256 (xpi/firefox-38.4.0/hr.xpi) = 1f2d14ece4cd0cad5cc7265a12498f669397b220b335244b70c62e826eda720d +SIZE (xpi/firefox-38.4.0/hr.xpi) = 478272 +SHA256 (xpi/firefox-38.4.0/hsb.xpi) = ec5fa60642854beacf8a031b17f6657c55666cd2fcc025829fc94c0ceaf671a9 +SIZE (xpi/firefox-38.4.0/hsb.xpi) = 468720 +SHA256 (xpi/firefox-38.4.0/hu.xpi) = 1ae11147ddd2fcd7c4235713a19ca4a31ff6b77d313b1e139f66627b5b839cfc +SIZE (xpi/firefox-38.4.0/hu.xpi) = 453555 +SHA256 (xpi/firefox-38.4.0/hy-AM.xpi) = e109740e0837c75732fa40c124b51355ed7cc3cd0dc4ec6a9f078298674c215b +SIZE (xpi/firefox-38.4.0/hy-AM.xpi) = 534265 +SHA256 (xpi/firefox-38.4.0/id.xpi) = 60220cae6623614bc6b11667849ddb5f2251c4b8f4c0bacf99bfa81c4a407d4e +SIZE (xpi/firefox-38.4.0/id.xpi) = 431489 +SHA256 (xpi/firefox-38.4.0/is.xpi) = 20e4a96ac76793eadfc43c5094f92aae81fc439fb0df94204b48bbd022df5247 +SIZE (xpi/firefox-38.4.0/is.xpi) = 485128 +SHA256 (xpi/firefox-38.4.0/it.xpi) = c3038ebd54153273d4d510dda53f144b2820944231659ad3e01dccabd53d0a6f +SIZE (xpi/firefox-38.4.0/it.xpi) = 368409 +SHA256 (xpi/firefox-38.4.0/ja.xpi) = eed8773e7f2b2706884ef844805a3ff4d8efb20a800ed9b1359e392dc6f365e7 +SIZE (xpi/firefox-38.4.0/ja.xpi) = 479114 +SHA256 (xpi/firefox-38.4.0/kk.xpi) = 1ee8d139df0b85421f9319976200f7e982106d7dbdd13e0763e4f44748828da4 +SIZE (xpi/firefox-38.4.0/kk.xpi) = 503568 +SHA256 (xpi/firefox-38.4.0/km.xpi) = c6adbc64a942764b10f4cb44ea524d6ee3ac9fa82b23ab856abe8ebdef6c3abd +SIZE (xpi/firefox-38.4.0/km.xpi) = 565674 +SHA256 (xpi/firefox-38.4.0/kn.xpi) = 029c65dc35f6b7e4b1f9f4ce968fd239b8a5ec79dedabff81d167fc91fffd4a3 +SIZE (xpi/firefox-38.4.0/kn.xpi) = 533464 +SHA256 (xpi/firefox-38.4.0/ko.xpi) = 89299b59c51db6b5d0d55c03df290f1b3cc2cce728e2ff21af352c2b568ea44c +SIZE (xpi/firefox-38.4.0/ko.xpi) = 460854 +SHA256 (xpi/firefox-38.4.0/lij.xpi) = 68f9d1abd49b20a3b3bd79d4b7ace1099ab8b6d9cb094a84bcabd90cd3a4142a +SIZE (xpi/firefox-38.4.0/lij.xpi) = 444241 +SHA256 (xpi/firefox-38.4.0/lt.xpi) = 769c238f3d90b896e6e6bc0b04ed29e348e4a60a08df49f28f943358ad036063 +SIZE (xpi/firefox-38.4.0/lt.xpi) = 486451 +SHA256 (xpi/firefox-38.4.0/lv.xpi) = 0b90f73e86ca10f69d0f06819f7fe226a84886d42f10e653133bdba67112f61a +SIZE (xpi/firefox-38.4.0/lv.xpi) = 467198 +SHA256 (xpi/firefox-38.4.0/mai.xpi) = d62055e9c602e3d5807cd6ebca9626d2f31bea3155c59a0eb1a8c2fde746d24d +SIZE (xpi/firefox-38.4.0/mai.xpi) = 514666 +SHA256 (xpi/firefox-38.4.0/mk.xpi) = 968070d4aee6819afbbc303e215b21afe2884a3004dc7d7696113b01423166da +SIZE (xpi/firefox-38.4.0/mk.xpi) = 529205 +SHA256 (xpi/firefox-38.4.0/ml.xpi) = 01fa6077c6c05be1ce76db8e44b2c8462fe0a7a7818b1ddf9f6b2fa0d44c41cb +SIZE (xpi/firefox-38.4.0/ml.xpi) = 528918 +SHA256 (xpi/firefox-38.4.0/mr.xpi) = 59ffe1bbd930b12681e2576b77e01ff4dc2aa79250e2f3f460264f8b68b6f1de +SIZE (xpi/firefox-38.4.0/mr.xpi) = 505961 +SHA256 (xpi/firefox-38.4.0/ms.xpi) = 70dff1a3bdcdeba70d01e9e7d86191d0ad81bd1cf064e98b227f1734222e0729 +SIZE (xpi/firefox-38.4.0/ms.xpi) = 489872 +SHA256 (xpi/firefox-38.4.0/nb-NO.xpi) = 61c1be8e542963a86a799a1842557e334d62d0121ee259ce52eb701d938db2d7 +SIZE (xpi/firefox-38.4.0/nb-NO.xpi) = 444176 +SHA256 (xpi/firefox-38.4.0/nl.xpi) = 6f09424512979109b8e2292de57fedb9753d293d550f35114402630b7fc93340 +SIZE (xpi/firefox-38.4.0/nl.xpi) = 443994 +SHA256 (xpi/firefox-38.4.0/nn-NO.xpi) = 6e90022dbfdba748891f6e28582cab5a4b0287dd0c46774f9020250097eff4d1 +SIZE (xpi/firefox-38.4.0/nn-NO.xpi) = 438451 +SHA256 (xpi/firefox-38.4.0/or.xpi) = 3866337ad94d5ece643389ed7654d266d14b689674b92fbe4f87db1a11608419 +SIZE (xpi/firefox-38.4.0/or.xpi) = 527049 +SHA256 (xpi/firefox-38.4.0/pa-IN.xpi) = c39aeb6943b6e9a83d5f2d499683e8125cbe4a585b3c14bf357664def646cb81 +SIZE (xpi/firefox-38.4.0/pa-IN.xpi) = 493722 +SHA256 (xpi/firefox-38.4.0/pl.xpi) = cd5d694904802f1aa51d84390423f37500bbe6d2864e47bc0e09d2bc19a2c54d +SIZE (xpi/firefox-38.4.0/pl.xpi) = 406566 +SHA256 (xpi/firefox-38.4.0/pt-BR.xpi) = 4ccd547e9ac19788c99ae876bd829e349e22be55aa9c2e194547d6986aa20209 +SIZE (xpi/firefox-38.4.0/pt-BR.xpi) = 459813 +SHA256 (xpi/firefox-38.4.0/pt-PT.xpi) = eed43d8ae9b455983b05e288f7368114b6caf92ff801b1fd22e4bbc49bbb7288 +SIZE (xpi/firefox-38.4.0/pt-PT.xpi) = 439975 +SHA256 (xpi/firefox-38.4.0/rm.xpi) = 5d91ca7d0f27ecee359d0a49be2d26219d15b985cee981fcb64c0bc0c4ba0022 +SIZE (xpi/firefox-38.4.0/rm.xpi) = 446287 +SHA256 (xpi/firefox-38.4.0/ro.xpi) = fe39cc3c54be8647bce103e6c0f04e8ebbe842a65e3c916aa82660f1b4a1cfe6 +SIZE (xpi/firefox-38.4.0/ro.xpi) = 494079 +SHA256 (xpi/firefox-38.4.0/ru.xpi) = b31e7ffac7efc34e4d1672095f716f0cba43860fac1e596b7023be78a8306b74 +SIZE (xpi/firefox-38.4.0/ru.xpi) = 414419 +SHA256 (xpi/firefox-38.4.0/si.xpi) = 50692d44a2f2952a3dacd36f34c6b34e85cd16d9d13f795719e86e8afd59d62c +SIZE (xpi/firefox-38.4.0/si.xpi) = 537393 +SHA256 (xpi/firefox-38.4.0/sk.xpi) = 245d5150c762c0c7206dd2f8869b2a8a8b734d0b48ece4985d332815ba71691d +SIZE (xpi/firefox-38.4.0/sk.xpi) = 469436 +SHA256 (xpi/firefox-38.4.0/sl.xpi) = 84f23d6d865f70f1e6701ac34bdf4f894f20d31fb098cbadb4bc0a3d7182e60c +SIZE (xpi/firefox-38.4.0/sl.xpi) = 441594 +SHA256 (xpi/firefox-38.4.0/son.xpi) = 75ef6f5fba0b8174ce1d6415579b57153bf60551e89c05632dea43e5a6044a96 +SIZE (xpi/firefox-38.4.0/son.xpi) = 449268 +SHA256 (xpi/firefox-38.4.0/sq.xpi) = 4e9da99e5dd7b2fbb5e5627c91415ef39d1fca7e7ae1a423bb5830b37bc423e9 +SIZE (xpi/firefox-38.4.0/sq.xpi) = 486075 +SHA256 (xpi/firefox-38.4.0/sr.xpi) = 2447105f3d0850f8d7aa402196ed34df8e5dcb52291900dc03f1d79f04ffd1cd +SIZE (xpi/firefox-38.4.0/sr.xpi) = 479419 +SHA256 (xpi/firefox-38.4.0/sv-SE.xpi) = cb330410d3894b7b786be927d94eda5f9cb606682ee5cd3ca44eaed5a5a36dae +SIZE (xpi/firefox-38.4.0/sv-SE.xpi) = 452632 +SHA256 (xpi/firefox-38.4.0/ta.xpi) = 5ed639206c9b42064972edd8296163ebb517843aafab2cd6d5e1dbc2ae72af89 +SIZE (xpi/firefox-38.4.0/ta.xpi) = 506606 +SHA256 (xpi/firefox-38.4.0/te.xpi) = e8d4352c5aae8a0134eaef285d1a29264ecde26362725fecdfa156033353e834 +SIZE (xpi/firefox-38.4.0/te.xpi) = 526253 +SHA256 (xpi/firefox-38.4.0/th.xpi) = 2404ecfd24b2dbbcad006316599a6f2cceb687cdfca97186f2756c4a2dcfb257 +SIZE (xpi/firefox-38.4.0/th.xpi) = 534270 +SHA256 (xpi/firefox-38.4.0/tr.xpi) = f57103f13eabc494778c281d8d0eaf81a9a9c63f09ae5bdb8a3eacbdcb00a05e +SIZE (xpi/firefox-38.4.0/tr.xpi) = 481076 +SHA256 (xpi/firefox-38.4.0/uk.xpi) = f518976f47472b555834208eb190cb13cc3e625a0f2784d35e1c70d58ce5d991 +SIZE (xpi/firefox-38.4.0/uk.xpi) = 493313 +SHA256 (xpi/firefox-38.4.0/vi.xpi) = 44b50cdaa3d51520fa546b3afd7fae9d872567e25344666938773b1f3e2623bb +SIZE (xpi/firefox-38.4.0/vi.xpi) = 467504 +SHA256 (xpi/firefox-38.4.0/xh.xpi) = 46d94a693d96f4a920aa8401a58eb6a96cff21aa9aba54fecf2c8c0987b4caa0 +SIZE (xpi/firefox-38.4.0/xh.xpi) = 450242 +SHA256 (xpi/firefox-38.4.0/zh-CN.xpi) = e981e5a29a7fcd9752ebddb587ea57ca64d67363ab2b77d9ca477f58f8789a3c +SIZE (xpi/firefox-38.4.0/zh-CN.xpi) = 488276 +SHA256 (xpi/firefox-38.4.0/zh-TW.xpi) = 5f2e8226cbe93c1f7082b21725bd87ca66ebd20f2429e7c65ae43490eeb5f447 +SIZE (xpi/firefox-38.4.0/zh-TW.xpi) = 467843 Index: branches/2015Q4/www/firefox-i18n/Makefile =================================================================== --- branches/2015Q4/www/firefox-i18n/Makefile (revision 402339) +++ branches/2015Q4/www/firefox-i18n/Makefile (revision 402340) @@ -1,89 +1,89 @@ # Created by: Andrew Pantyukhin # $FreeBSD$ PORTNAME= firefox-i18n -PORTVERSION= 41.0.2 +PORTVERSION= 42.0 CATEGORIES= www MASTER_SITES= MOZILLA/${PORTNAME:S|-i18n||}/releases/${DISTVERSION}/linux-i686/xpi \ - MOZILLA/${PORTNAME:S|-i18n||}/candidates/${DISTVERSION}-candidates/build1/linux-i686/xpi + MOZILLA/${PORTNAME:S|-i18n||}/candidates/${DISTVERSION}-candidates/build2/linux-i686/xpi PKGNAMEPREFIX= DISTFILES= ${FIREFOX_I18N_:S/$/.xpi/} DIST_SUBDIR= xpi/${DISTNAME} MAINTAINER= gecko@FreeBSD.org COMMENT= Localized interface for Firefox EXTRACT_DEPENDS= zip:${PORTSDIR}/archivers/zip -USES= zip:infozip gecko:firefox,41,build +USES= zip:infozip gecko:firefox,42,build USE_XPI= firefox linux-firefox NO_ARCH= yes USE_SUBMAKE= yes WDIR= langpack-*@firefox.mozilla.org XPI_DISTNAMES= ${FIREFOX_I18N_} PLIST?= ${WRKDIR}/plist PLISTF?= ${WRKDIR}/plist_files .include "${.CURDIR}/Makefile.option" .include .ifndef WITHOUT_SWITCHER RUN_DEPENDS+= xpi-quick-locale-switcher>=0:${PORTSDIR}/www/xpi-quick-locale-switcher .endif .include "${.CURDIR}/Makefile.lang" FIREFOX_I18N_?= ${FIREFOX_I18N} .for dist in ${XPI_DISTNAMES} XPI_ID_${dist}= langpack-${dist}@firefox.mozilla.org .endfor pre-everything:: @${ECHO_CMD} @${ECHO_CMD} "Please define FIREFOX_I18N_ALL to install all languages." @${ECHO_CMD} do-extract: @${MKDIR} ${WRKSRC} @for lang in ${FIREFOX_I18N_}; do \ if ! (${UNZIP_CMD} -qo ${_DISTDIR}/$$lang.xpi -d ${WRKSRC}/langpack-$$lang@firefox.mozilla.org);\ then \ exit 1; \ fi; \ cd ${WRKSRC}/langpack-$$lang@firefox.mozilla.org/; \ ${FIND} -H -s * ! -type d | \ ${SED} -e "s|^|lib/xpi/langpack-$$lang@firefox.mozilla.org/|" >> ${PLISTF}; \ done ${CAT} ${PLISTF} | ${SORT} >> ${PLIST} do-install: @${MKDIR} ${STAGEDIR}${XPI_LIBDIR} ${STAGEDIR}${XPI_SLDIRS_ALL} cd ${WRKSRC}; ${PAX} -rw . ${STAGEDIR}${XPI_LIBDIR} ${CHMOD} -R a+rX,go-w ${STAGEDIR}${XPI_LIBDIR}/${WDIR}/ @for e in ${STAGEDIR}${XPI_LIBDIR}/${WDIR}; do \ for _dir in ${XPI_LINKFARMS} ; do \ ${LN} -sf $${_e##*/} ${STAGEDIR}$$_dir/ ${_Q} ; \ done \ done @${ECHO_CMD} '@exec ${INSTALL} -d ${XPI_SLDIRS_ALL:S,^${PREFIX},%D,}' ${_A} @${ECHO_CMD} '@exec for _dir in ${XPI_LINKFARMS} ; { \ ${LN} -sf ${XPI_LIBDIR}/${WDIR} $$_dir/ ${_Q}; }' ${_A} @${ECHO_CMD} '@unexec for _dir in ${XPI_LINKFARMS} ${XPI_LIBDIR}; { ${RM} -f $$_dir/${WDIR} ; }' ${_A} post-patch: ${FIND} ${WRKSRC} -name install.rdf -print0 | \ ${XARGS} -0L1 ${REINPLACE_CMD} -i '' -e '/ Index: branches/2015Q4/www/firefox-i18n/distinfo =================================================================== --- branches/2015Q4/www/firefox-i18n/distinfo (revision 402339) +++ branches/2015Q4/www/firefox-i18n/distinfo (revision 402340) @@ -1,178 +1,178 @@ -SHA256 (xpi/firefox-i18n-41.0.2/ach.xpi) = 3b332869d2deaf179015e59edc3f6c7ee0338018ae0c542d173f0805bfc22064 -SIZE (xpi/firefox-i18n-41.0.2/ach.xpi) = 483441 -SHA256 (xpi/firefox-i18n-41.0.2/af.xpi) = 483ebf4ad220bc63b00fc5ed14cc0daa5093e8618a1f766e27ef7ea702d88404 -SIZE (xpi/firefox-i18n-41.0.2/af.xpi) = 486122 -SHA256 (xpi/firefox-i18n-41.0.2/an.xpi) = 141e88b1570061128d7538b86f8a506c9ade736532127615470ab52d2305b43b -SIZE (xpi/firefox-i18n-41.0.2/an.xpi) = 464518 -SHA256 (xpi/firefox-i18n-41.0.2/ar.xpi) = fbe22a9b348c6a822c7578392d65f229be88da6d03908160ff1c84dc0712884f -SIZE (xpi/firefox-i18n-41.0.2/ar.xpi) = 521161 -SHA256 (xpi/firefox-i18n-41.0.2/as.xpi) = 95b7be1a421bd70d66f6564df38692230a6cbbcac8f9f49be8ec0a8fd1c11beb -SIZE (xpi/firefox-i18n-41.0.2/as.xpi) = 511220 -SHA256 (xpi/firefox-i18n-41.0.2/ast.xpi) = ab8e967adfefe0e91290f72617a073790ef279485c06745f9541b329db8051b7 -SIZE (xpi/firefox-i18n-41.0.2/ast.xpi) = 399124 -SHA256 (xpi/firefox-i18n-41.0.2/az.xpi) = b4427e377344c51f76b3707bfbf81d1f7a2bdd507dd06794cfd39a24de9e9017 -SIZE (xpi/firefox-i18n-41.0.2/az.xpi) = 492918 -SHA256 (xpi/firefox-i18n-41.0.2/be.xpi) = c225c0927f0855462c4157c3cdcb89660202c1dc16689a66ad8be7cef837fefd -SIZE (xpi/firefox-i18n-41.0.2/be.xpi) = 453405 -SHA256 (xpi/firefox-i18n-41.0.2/bg.xpi) = 7a8f79c1d0b2ec0a5838d2b94c0c920e7143d1be8186122663853ac9748a088d -SIZE (xpi/firefox-i18n-41.0.2/bg.xpi) = 492967 -SHA256 (xpi/firefox-i18n-41.0.2/bn-BD.xpi) = dafbf53ff047ccd787c6996989126feb4749b4569967d47bd6fba56f51055e43 -SIZE (xpi/firefox-i18n-41.0.2/bn-BD.xpi) = 527572 -SHA256 (xpi/firefox-i18n-41.0.2/bn-IN.xpi) = e12b7af83786242d78b28b6e398db791fe336bfda9cecde66b0275feabca0dca -SIZE (xpi/firefox-i18n-41.0.2/bn-IN.xpi) = 530270 -SHA256 (xpi/firefox-i18n-41.0.2/br.xpi) = f1b321fa81746f334c795555d6cc5e6196462a22bcd4e2f8092a413209ab1bb8 -SIZE (xpi/firefox-i18n-41.0.2/br.xpi) = 444532 -SHA256 (xpi/firefox-i18n-41.0.2/bs.xpi) = f0998f8e15698245757ce27b5b91bc228b3dc7e182029594f500cc7b6bb0ae03 -SIZE (xpi/firefox-i18n-41.0.2/bs.xpi) = 486282 -SHA256 (xpi/firefox-i18n-41.0.2/ca.xpi) = a81e043f4cae9e5aba31e904899d57aaf55001a4f7f1967e6262aa2632b7f3e8 -SIZE (xpi/firefox-i18n-41.0.2/ca.xpi) = 461322 -SHA256 (xpi/firefox-i18n-41.0.2/cs.xpi) = 3dd5156b50781e20caac4c96c42631f60c0c8d06a28f7e495f17bb43dff60bc0 -SIZE (xpi/firefox-i18n-41.0.2/cs.xpi) = 450334 -SHA256 (xpi/firefox-i18n-41.0.2/cy.xpi) = 93a3c98479aa4be8531e4665eef9b0051605cf1d4c897147b223e1a350a3221a -SIZE (xpi/firefox-i18n-41.0.2/cy.xpi) = 448184 -SHA256 (xpi/firefox-i18n-41.0.2/da.xpi) = 5cac7e3161cc1fc01cc22ba9b9f10a58dd111c241c5305589249987643877ad0 -SIZE (xpi/firefox-i18n-41.0.2/da.xpi) = 453404 -SHA256 (xpi/firefox-i18n-41.0.2/de.xpi) = d7d0130fe5dfadaffd2585665e53390dae2572209176070d810345145f9a86cf -SIZE (xpi/firefox-i18n-41.0.2/de.xpi) = 455711 -SHA256 (xpi/firefox-i18n-41.0.2/dsb.xpi) = f59b75f1a340a80ac4ddb781d77a3e3bf102496677828446aa2a79064195f41c -SIZE (xpi/firefox-i18n-41.0.2/dsb.xpi) = 474538 -SHA256 (xpi/firefox-i18n-41.0.2/el.xpi) = 36719f38269d0819ea05fe2a46c89cb4bd2859d26a740c46901e94e4bbd40175 -SIZE (xpi/firefox-i18n-41.0.2/el.xpi) = 501621 -SHA256 (xpi/firefox-i18n-41.0.2/en-GB.xpi) = 0c0029261b1f446e33aca64a3b6d42d5da1d3399770c3ace221d37fd44a9ca83 -SIZE (xpi/firefox-i18n-41.0.2/en-GB.xpi) = 441099 -SHA256 (xpi/firefox-i18n-41.0.2/en-US.xpi) = cb7eab8536840a63409b5480170046227540d89f1973d121f713e1d59240f150 -SIZE (xpi/firefox-i18n-41.0.2/en-US.xpi) = 471247 -SHA256 (xpi/firefox-i18n-41.0.2/en-ZA.xpi) = 830d11b44164e2a92a9bd68fb7b85b095de7e4fc2ea92bae1fa316688868b695 -SIZE (xpi/firefox-i18n-41.0.2/en-ZA.xpi) = 444146 -SHA256 (xpi/firefox-i18n-41.0.2/eo.xpi) = 2aa44595d2745809a989a533584de0ad4f3c63de2e1b5b8536645b5e05d88b28 -SIZE (xpi/firefox-i18n-41.0.2/eo.xpi) = 487996 -SHA256 (xpi/firefox-i18n-41.0.2/es-AR.xpi) = 2c70f52a537657073bc02530015a950c08d8248033426af2678e99c6680ec25c -SIZE (xpi/firefox-i18n-41.0.2/es-AR.xpi) = 456519 -SHA256 (xpi/firefox-i18n-41.0.2/es-CL.xpi) = d1cf2f9c65022cdc241ddaa168054467a53f32542744f79e85a8ee986bc4df4c -SIZE (xpi/firefox-i18n-41.0.2/es-CL.xpi) = 381634 -SHA256 (xpi/firefox-i18n-41.0.2/es-ES.xpi) = 719cbe56de47866677d1102dd3f962be403339f8979eaac619c5c8c2eceaecb3 -SIZE (xpi/firefox-i18n-41.0.2/es-ES.xpi) = 370112 -SHA256 (xpi/firefox-i18n-41.0.2/es-MX.xpi) = e55cd314abaa79123fec2bf8bae49afaf8771065c0698ac0ba996844bd608457 -SIZE (xpi/firefox-i18n-41.0.2/es-MX.xpi) = 460285 -SHA256 (xpi/firefox-i18n-41.0.2/et.xpi) = aa542ee5e33cbe402819741ded10402fa8e9f962cdb877cfbabf1d84290d982c -SIZE (xpi/firefox-i18n-41.0.2/et.xpi) = 445440 -SHA256 (xpi/firefox-i18n-41.0.2/eu.xpi) = e489687bff01f23761a2419d406885d0d0f21c9c5837994698ac037720a85145 -SIZE (xpi/firefox-i18n-41.0.2/eu.xpi) = 469718 -SHA256 (xpi/firefox-i18n-41.0.2/fa.xpi) = 229d1e5c884b8efdccb591d2b7a10cb58926bfab8c1bd4a71c3eb1aa155a1050 -SIZE (xpi/firefox-i18n-41.0.2/fa.xpi) = 516159 -SHA256 (xpi/firefox-i18n-41.0.2/ff.xpi) = d09fa597de20f69d7332a63abafd97edfada4b42a9f4e3cd55b2720adb644120 -SIZE (xpi/firefox-i18n-41.0.2/ff.xpi) = 454689 -SHA256 (xpi/firefox-i18n-41.0.2/fi.xpi) = 9e8a4e9446f614cafa6a7d712e6111f8443c255c5ed37fb2b67fc4936fa71c8c -SIZE (xpi/firefox-i18n-41.0.2/fi.xpi) = 447176 -SHA256 (xpi/firefox-i18n-41.0.2/fr.xpi) = fae768e7985278c934aefcdb00276e8c78b68ec84ef6247a83071be23f29a508 -SIZE (xpi/firefox-i18n-41.0.2/fr.xpi) = 465093 -SHA256 (xpi/firefox-i18n-41.0.2/fy-NL.xpi) = 2b44c34009035ce1b2745d2ad7a8e33075816064c5211ec2d7e1a952ae4ca448 -SIZE (xpi/firefox-i18n-41.0.2/fy-NL.xpi) = 458776 -SHA256 (xpi/firefox-i18n-41.0.2/ga-IE.xpi) = 9fcc57c31db1d99c10fc97836ab1c194f24ed9766e07f164f6696b63b0fe2c76 -SIZE (xpi/firefox-i18n-41.0.2/ga-IE.xpi) = 473257 -SHA256 (xpi/firefox-i18n-41.0.2/gd.xpi) = dca6278f751731680bc8c59d021e26f19a208e9c161721d9964ef12b400cc57a -SIZE (xpi/firefox-i18n-41.0.2/gd.xpi) = 457499 -SHA256 (xpi/firefox-i18n-41.0.2/gl.xpi) = 535273fc56ea8f96808e89946e4a9fe35b5aaffc8e519586a28bae82757048ad -SIZE (xpi/firefox-i18n-41.0.2/gl.xpi) = 452612 -SHA256 (xpi/firefox-i18n-41.0.2/gu-IN.xpi) = f35c50d2ed63af609b30e6f156b41313fe94597e387ddb1383e7805eedc603a8 -SIZE (xpi/firefox-i18n-41.0.2/gu-IN.xpi) = 487515 -SHA256 (xpi/firefox-i18n-41.0.2/he.xpi) = 999eab777e50e805afe8c6e56316debe7f975f2f4767a84abeec91ba93177551 -SIZE (xpi/firefox-i18n-41.0.2/he.xpi) = 486490 -SHA256 (xpi/firefox-i18n-41.0.2/hi-IN.xpi) = f71970e0324daed4cd7138bffe6eb1dc6188abfb3318c2ce05b64f8e49bb1c7d -SIZE (xpi/firefox-i18n-41.0.2/hi-IN.xpi) = 509163 -SHA256 (xpi/firefox-i18n-41.0.2/hr.xpi) = ab287bef0714c86b94b470c780fd67de6be945b3bc6b7621c2ed2592892978be -SIZE (xpi/firefox-i18n-41.0.2/hr.xpi) = 481336 -SHA256 (xpi/firefox-i18n-41.0.2/hsb.xpi) = 2ea56c387173b14dd9a869126681306acd71c2113c8e175c80d1b98bced01b5d -SIZE (xpi/firefox-i18n-41.0.2/hsb.xpi) = 472167 -SHA256 (xpi/firefox-i18n-41.0.2/hu.xpi) = decd311d7ac7627bf08826f7f4aa6950027737248aa3ce27b90e71c4e36e475b -SIZE (xpi/firefox-i18n-41.0.2/hu.xpi) = 457035 -SHA256 (xpi/firefox-i18n-41.0.2/hy-AM.xpi) = 40f60779decf80bc7700c90a82ec2a5fbc0aa1abfd42a5f0c682b32abb01773f -SIZE (xpi/firefox-i18n-41.0.2/hy-AM.xpi) = 538341 -SHA256 (xpi/firefox-i18n-41.0.2/id.xpi) = 753cc258df6a78e53a0d8ce45b512b13a71e1abdf2e9982dd60090271ac33ad9 -SIZE (xpi/firefox-i18n-41.0.2/id.xpi) = 433972 -SHA256 (xpi/firefox-i18n-41.0.2/is.xpi) = 6e1b57592d0d7e3f8436413d74563deed7d84b61e3c70f4ec39b9fb0eccbf83f -SIZE (xpi/firefox-i18n-41.0.2/is.xpi) = 488113 -SHA256 (xpi/firefox-i18n-41.0.2/it.xpi) = 1baa5e11d2eb38e55a71ad38a1418bdf5328cd1c264cb4dd2b9a491f796a69af -SIZE (xpi/firefox-i18n-41.0.2/it.xpi) = 363986 -SHA256 (xpi/firefox-i18n-41.0.2/ja.xpi) = 344b5893cee511bf143954a9280778888c8f8357a13ddd8985e682b62c3deae6 -SIZE (xpi/firefox-i18n-41.0.2/ja.xpi) = 483304 -SHA256 (xpi/firefox-i18n-41.0.2/kk.xpi) = 32ad8ce5f3d8e2fc06d2fbedf92dbbc125ffb7b70db92d75906587d5897d570e -SIZE (xpi/firefox-i18n-41.0.2/kk.xpi) = 508365 -SHA256 (xpi/firefox-i18n-41.0.2/km.xpi) = d7d37587be6f9fc03b6a40073fcb256cbc50c4b99beda32c2478763fea786e4c -SIZE (xpi/firefox-i18n-41.0.2/km.xpi) = 571709 -SHA256 (xpi/firefox-i18n-41.0.2/kn.xpi) = c6351d7aaebcb32763589185be4bd11a7e397feb19de97ad15033605a6e3b95d -SIZE (xpi/firefox-i18n-41.0.2/kn.xpi) = 539238 -SHA256 (xpi/firefox-i18n-41.0.2/ko.xpi) = acd6cd30ca2a6fd958090cd2479dfbb43e21d0e3985a39206d939f5c4e2a3697 -SIZE (xpi/firefox-i18n-41.0.2/ko.xpi) = 464905 -SHA256 (xpi/firefox-i18n-41.0.2/lij.xpi) = f436be27b037e20e43656e12ac130f6852be20ed7023c7a538f809bf6a571579 -SIZE (xpi/firefox-i18n-41.0.2/lij.xpi) = 451194 -SHA256 (xpi/firefox-i18n-41.0.2/lt.xpi) = 5563a4698e9638f68a9ebf488784dc51c6fd0c3daef4720fb85be852ecf454b3 -SIZE (xpi/firefox-i18n-41.0.2/lt.xpi) = 490119 -SHA256 (xpi/firefox-i18n-41.0.2/lv.xpi) = bdc3c617ee7a09f8aed475095c49e92eec9994ca2a78417596bf8ecc80ecd8eb -SIZE (xpi/firefox-i18n-41.0.2/lv.xpi) = 470365 -SHA256 (xpi/firefox-i18n-41.0.2/mai.xpi) = fdbb724710d2f1ed3e7dae9be8ef27b4cf89af14b1b9ca022798d1e148fd44aa -SIZE (xpi/firefox-i18n-41.0.2/mai.xpi) = 517161 -SHA256 (xpi/firefox-i18n-41.0.2/mk.xpi) = 28630b55e19e64b1a352a0f8520c74c47c109669dd0c8808b7f821e7db23c6c2 -SIZE (xpi/firefox-i18n-41.0.2/mk.xpi) = 530866 -SHA256 (xpi/firefox-i18n-41.0.2/ml.xpi) = ca41ab32a883c8ea15423b5ddfe70f84e699c110510ea5bb6aa686a7e4d849f1 -SIZE (xpi/firefox-i18n-41.0.2/ml.xpi) = 529032 -SHA256 (xpi/firefox-i18n-41.0.2/mr.xpi) = 8b0c214f69b0616a20e43dd2008b8a98a17cd81337ff463d3f3989d8c53720f9 -SIZE (xpi/firefox-i18n-41.0.2/mr.xpi) = 511325 -SHA256 (xpi/firefox-i18n-41.0.2/ms.xpi) = e78f4cb5c455803e2d8ee288f1332dd9cfd71995e07d5abdb192c1a14554ed4f -SIZE (xpi/firefox-i18n-41.0.2/ms.xpi) = 493484 -SHA256 (xpi/firefox-i18n-41.0.2/nb-NO.xpi) = a03636d86a7c1c889ad13b55c7f3b51acc611bc8eaf239a24096600772f5b0fb -SIZE (xpi/firefox-i18n-41.0.2/nb-NO.xpi) = 446372 -SHA256 (xpi/firefox-i18n-41.0.2/nl.xpi) = 84f8b2409d757f958ad2e8f4fd0a22a1d970972f532f18e13662b3216ce00a3d -SIZE (xpi/firefox-i18n-41.0.2/nl.xpi) = 446547 -SHA256 (xpi/firefox-i18n-41.0.2/nn-NO.xpi) = 55fb43569f6732f83381c1c98c7aaa9d910a2ca736f968d5e5be1307a6adae02 -SIZE (xpi/firefox-i18n-41.0.2/nn-NO.xpi) = 442562 -SHA256 (xpi/firefox-i18n-41.0.2/or.xpi) = 2894a6ab898304623de57ea34650e7a3aa2e5cf712f1f72c7c80156c173660a0 -SIZE (xpi/firefox-i18n-41.0.2/or.xpi) = 528106 -SHA256 (xpi/firefox-i18n-41.0.2/pa-IN.xpi) = 7703f4bc3520ed927742a1395c7d5a8783cb859406f37be521f593cc0927c588 -SIZE (xpi/firefox-i18n-41.0.2/pa-IN.xpi) = 498583 -SHA256 (xpi/firefox-i18n-41.0.2/pl.xpi) = 234067974ece5ee3cdec275236d0300425b255d172983e96f8ad28d5ebf490d3 -SIZE (xpi/firefox-i18n-41.0.2/pl.xpi) = 400466 -SHA256 (xpi/firefox-i18n-41.0.2/pt-BR.xpi) = 9f3cbce24801b9c123d31b5f9d5ecaffa17deca8fc48660a0361279882450a24 -SIZE (xpi/firefox-i18n-41.0.2/pt-BR.xpi) = 463059 -SHA256 (xpi/firefox-i18n-41.0.2/pt-PT.xpi) = 56f32e241341cb2ec49f8f5126172d9a300f14790303dc4bee516eb41204176c -SIZE (xpi/firefox-i18n-41.0.2/pt-PT.xpi) = 443383 -SHA256 (xpi/firefox-i18n-41.0.2/rm.xpi) = 3df17252f03697206305cd7e9b62f26eeffcba84b5e195263d4d47e0c0c0d0cb -SIZE (xpi/firefox-i18n-41.0.2/rm.xpi) = 450640 -SHA256 (xpi/firefox-i18n-41.0.2/ro.xpi) = 9bc4c4e037de7073614fbf28ac9ea0168bec75c1b270289a1455674de85b60a2 -SIZE (xpi/firefox-i18n-41.0.2/ro.xpi) = 497507 -SHA256 (xpi/firefox-i18n-41.0.2/ru.xpi) = 1ff21845c49dea827abec9cc4641a3aee002f640539af985f88eb40be077aeb5 -SIZE (xpi/firefox-i18n-41.0.2/ru.xpi) = 412447 -SHA256 (xpi/firefox-i18n-41.0.2/si.xpi) = ac952730b5591f503cfb30efbc25dfce92f54529413e39ae88ff30010da098e2 -SIZE (xpi/firefox-i18n-41.0.2/si.xpi) = 537934 -SHA256 (xpi/firefox-i18n-41.0.2/sk.xpi) = f4ad85d1fe87aa2ef449a1f5a5de2b59b4867c1e8f854464154edf4f2f39c138 -SIZE (xpi/firefox-i18n-41.0.2/sk.xpi) = 472935 -SHA256 (xpi/firefox-i18n-41.0.2/sl.xpi) = 43eb2da1524e905740782567ae9dfa5a4adbeec2ec04ef93a8cb3f7d570982c5 -SIZE (xpi/firefox-i18n-41.0.2/sl.xpi) = 445746 -SHA256 (xpi/firefox-i18n-41.0.2/son.xpi) = 88b3a01be297e83a99ca9bcc4643184d9bbccd19d1ac116995acacfc13a58486 -SIZE (xpi/firefox-i18n-41.0.2/son.xpi) = 453253 -SHA256 (xpi/firefox-i18n-41.0.2/sq.xpi) = fae5953665c35ffc5171830ccabeb21bd1692abb67d42633f8de4e909b12dcf2 -SIZE (xpi/firefox-i18n-41.0.2/sq.xpi) = 491168 -SHA256 (xpi/firefox-i18n-41.0.2/sr.xpi) = ce99e8e6b04601855de447bbfcc7b00fe626e1e3e06c60a132e87c7cabf5d017 -SIZE (xpi/firefox-i18n-41.0.2/sr.xpi) = 482971 -SHA256 (xpi/firefox-i18n-41.0.2/sv-SE.xpi) = fb86b719756909ee167bb2ddfa399d5afaf9393100245065ec84b81fadcbf5da -SIZE (xpi/firefox-i18n-41.0.2/sv-SE.xpi) = 455382 -SHA256 (xpi/firefox-i18n-41.0.2/ta.xpi) = 7c077f044283b145ce62680981bb1f2631f918813d5e389489f0a209a0d72df0 -SIZE (xpi/firefox-i18n-41.0.2/ta.xpi) = 509544 -SHA256 (xpi/firefox-i18n-41.0.2/te.xpi) = 93ed5ffa7e4533bc406bc8a86c000bdd9fc098e9a65c729ce9fca5cce8f177ba -SIZE (xpi/firefox-i18n-41.0.2/te.xpi) = 530204 -SHA256 (xpi/firefox-i18n-41.0.2/th.xpi) = e9144da3dcc69956e0c6b4223afcf483941858e3d9dd8dc94ead6c062a9d098b -SIZE (xpi/firefox-i18n-41.0.2/th.xpi) = 539600 -SHA256 (xpi/firefox-i18n-41.0.2/tr.xpi) = 45225ade5b3311689b6372c7e45b765a6e58d2047750c5f4a1b906bccd903d70 -SIZE (xpi/firefox-i18n-41.0.2/tr.xpi) = 484232 -SHA256 (xpi/firefox-i18n-41.0.2/uk.xpi) = d94b1aafe66728445d1a886bbf2cf05bc3d56c3ab9dd892ad5f37b3f32d3763f -SIZE (xpi/firefox-i18n-41.0.2/uk.xpi) = 500110 -SHA256 (xpi/firefox-i18n-41.0.2/uz.xpi) = 555465a0162d8b2b3fbc1f69d944d0fc94cd642cbac584ed30664cffebaa964b -SIZE (xpi/firefox-i18n-41.0.2/uz.xpi) = 501948 -SHA256 (xpi/firefox-i18n-41.0.2/vi.xpi) = c296449a51d669439369f63aa943f55bf6cfaab901ac033322e137afe7bdeae6 -SIZE (xpi/firefox-i18n-41.0.2/vi.xpi) = 470336 -SHA256 (xpi/firefox-i18n-41.0.2/xh.xpi) = 8e145e9ccfde00cf0ab3da91ea4686893e274f3fb5e4da460b44ce201c714f70 -SIZE (xpi/firefox-i18n-41.0.2/xh.xpi) = 450079 -SHA256 (xpi/firefox-i18n-41.0.2/zh-CN.xpi) = 8c49c52b80937a00da8953ecb1bdd1c6505efb62ac89beb879c400846b7f8c85 -SIZE (xpi/firefox-i18n-41.0.2/zh-CN.xpi) = 486222 -SHA256 (xpi/firefox-i18n-41.0.2/zh-TW.xpi) = a1b3661c004ead49b5b1adac7515de402319ae82b06121313deb51b1ec7fcb20 -SIZE (xpi/firefox-i18n-41.0.2/zh-TW.xpi) = 479033 +SHA256 (xpi/firefox-i18n-42.0/ach.xpi) = 80b7f285d462ea72b49e482519c8d6265ad4767e89b1bfdc2e2d82eabff45be8 +SIZE (xpi/firefox-i18n-42.0/ach.xpi) = 484101 +SHA256 (xpi/firefox-i18n-42.0/af.xpi) = 087fc72613b98336eefc5db701b361188d7e3950365650651c2b53ced362eea6 +SIZE (xpi/firefox-i18n-42.0/af.xpi) = 491004 +SHA256 (xpi/firefox-i18n-42.0/an.xpi) = 7b99498a270e20066f9791e92841ee61a1da88b883c36e611cfe79a4abeb7285 +SIZE (xpi/firefox-i18n-42.0/an.xpi) = 469526 +SHA256 (xpi/firefox-i18n-42.0/ar.xpi) = c4bd2e007fffa25743e8f20f70baf3abcef6aee59b82fc1360a9a2ebf120da69 +SIZE (xpi/firefox-i18n-42.0/ar.xpi) = 527045 +SHA256 (xpi/firefox-i18n-42.0/as.xpi) = 397f51b49a9a5c754079561e5245e2e61508e61b1f1386e80fb9aaa91b4424c8 +SIZE (xpi/firefox-i18n-42.0/as.xpi) = 516804 +SHA256 (xpi/firefox-i18n-42.0/ast.xpi) = a6dd8e3b2439f047c8aa929050df202b1128f54a01c7d55e86a0d582c4372096 +SIZE (xpi/firefox-i18n-42.0/ast.xpi) = 409860 +SHA256 (xpi/firefox-i18n-42.0/az.xpi) = fe56a7bd0694dd42946cfc1723c4c7d2075f2588baff2ca742afd2761df434d0 +SIZE (xpi/firefox-i18n-42.0/az.xpi) = 498264 +SHA256 (xpi/firefox-i18n-42.0/be.xpi) = 0fb8d84bbe69b6402847fe9be3392e50f867a8949b3597947287d1cb5723e40d +SIZE (xpi/firefox-i18n-42.0/be.xpi) = 458684 +SHA256 (xpi/firefox-i18n-42.0/bg.xpi) = 68f2334cbd91976b12de4d489d46f0a1a02720a02b848d0f1ead2d1475f94b35 +SIZE (xpi/firefox-i18n-42.0/bg.xpi) = 497770 +SHA256 (xpi/firefox-i18n-42.0/bn-BD.xpi) = c49c4df26fa1396efec68ddecde3947204baf7f5040c4380e4ab0742592db27e +SIZE (xpi/firefox-i18n-42.0/bn-BD.xpi) = 545583 +SHA256 (xpi/firefox-i18n-42.0/bn-IN.xpi) = 5b91351ccdcf064eb22f8d3077573d94ed2005e434885535a6018532ca67dfba +SIZE (xpi/firefox-i18n-42.0/bn-IN.xpi) = 537276 +SHA256 (xpi/firefox-i18n-42.0/br.xpi) = 5372bf36dbad0f368c6e1926c8c9d6ca40136f25c7dd818d933ca5568f3a1e9f +SIZE (xpi/firefox-i18n-42.0/br.xpi) = 449190 +SHA256 (xpi/firefox-i18n-42.0/bs.xpi) = 78784ccf40c531ebecf58bedf96db046a9eed42062ca05c80c5ecc5d5dbb6f48 +SIZE (xpi/firefox-i18n-42.0/bs.xpi) = 488131 +SHA256 (xpi/firefox-i18n-42.0/ca.xpi) = f60be77d1edc340303d0580d6da07812e5b536223859226cb26adc4b837fa5e9 +SIZE (xpi/firefox-i18n-42.0/ca.xpi) = 465823 +SHA256 (xpi/firefox-i18n-42.0/cs.xpi) = ff4f81fbc34e17b6c742a20927a8dee0dc7cdf8743d6c5219f898ffd0d750ba6 +SIZE (xpi/firefox-i18n-42.0/cs.xpi) = 455106 +SHA256 (xpi/firefox-i18n-42.0/cy.xpi) = 3d01d9210c7bd2708f99add6299c089654030a8b47e87e9a6debb9d58ab2eeeb +SIZE (xpi/firefox-i18n-42.0/cy.xpi) = 451680 +SHA256 (xpi/firefox-i18n-42.0/da.xpi) = af056943a836fb36b8433e64e9b3003452280787ae155518559b1525d3566368 +SIZE (xpi/firefox-i18n-42.0/da.xpi) = 458413 +SHA256 (xpi/firefox-i18n-42.0/de.xpi) = 0301696932c69da60274dc19de58d50cc6a8beabb0387ad4d4526bdba1557790 +SIZE (xpi/firefox-i18n-42.0/de.xpi) = 460744 +SHA256 (xpi/firefox-i18n-42.0/dsb.xpi) = b6a5a998fad95e082b4c94b69c36680de7c5908efb85e222c4f9448f233458ee +SIZE (xpi/firefox-i18n-42.0/dsb.xpi) = 479637 +SHA256 (xpi/firefox-i18n-42.0/el.xpi) = 93479275cc21ce09597de19b841642120100ab00916f23ed9bfd71bb67cfd9b6 +SIZE (xpi/firefox-i18n-42.0/el.xpi) = 505735 +SHA256 (xpi/firefox-i18n-42.0/en-GB.xpi) = e282b2425bbbb60a3eebfa3e16cb6d747a72da505ee2a48378ee2d08dba6ab57 +SIZE (xpi/firefox-i18n-42.0/en-GB.xpi) = 443856 +SHA256 (xpi/firefox-i18n-42.0/en-US.xpi) = 9bf74eaccbe740c513be7e406f582907c578838b6d0f14e4c346689490517167 +SIZE (xpi/firefox-i18n-42.0/en-US.xpi) = 475844 +SHA256 (xpi/firefox-i18n-42.0/en-ZA.xpi) = 0ea29117a55aca8acab2df176790c1024510ac5db23b61ccccb14223fbd12b3d +SIZE (xpi/firefox-i18n-42.0/en-ZA.xpi) = 449903 +SHA256 (xpi/firefox-i18n-42.0/eo.xpi) = f4c24c83b2dd4ece852d4bba0ce902233408eaf45aed5185b9f462d737d6d527 +SIZE (xpi/firefox-i18n-42.0/eo.xpi) = 491605 +SHA256 (xpi/firefox-i18n-42.0/es-AR.xpi) = 92fc906a1957ca00d8bdfde61fcc59feb367338857b3f2740ac15ae6931c2127 +SIZE (xpi/firefox-i18n-42.0/es-AR.xpi) = 459408 +SHA256 (xpi/firefox-i18n-42.0/es-CL.xpi) = 776b59c03dbabda037e65902b1a87c6634beca0449cd9c35f300db64d88d5fc9 +SIZE (xpi/firefox-i18n-42.0/es-CL.xpi) = 386944 +SHA256 (xpi/firefox-i18n-42.0/es-ES.xpi) = 1abbe63ebcd37cf44ad6d60759916d81f272910b9edcda0e36ab16090ba2e629 +SIZE (xpi/firefox-i18n-42.0/es-ES.xpi) = 373753 +SHA256 (xpi/firefox-i18n-42.0/es-MX.xpi) = 041dcad0d1840f79ae1f4769796aa080c9834261ede4e55f55300411808b940b +SIZE (xpi/firefox-i18n-42.0/es-MX.xpi) = 465414 +SHA256 (xpi/firefox-i18n-42.0/et.xpi) = af4b17647e9e88652b352aa40b3aae87c254d025e8fd488c08b0f96d82176e07 +SIZE (xpi/firefox-i18n-42.0/et.xpi) = 450258 +SHA256 (xpi/firefox-i18n-42.0/eu.xpi) = cfe32d285ffe379aa7307d4de3fb639ffb961b1ebba857406f12cc15e7f61b64 +SIZE (xpi/firefox-i18n-42.0/eu.xpi) = 474713 +SHA256 (xpi/firefox-i18n-42.0/fa.xpi) = 5c0dbc5f709145ca93e89e0ad67c688821a3080476f5202c987d9d2b035800ce +SIZE (xpi/firefox-i18n-42.0/fa.xpi) = 526702 +SHA256 (xpi/firefox-i18n-42.0/ff.xpi) = d43f31eae539b6616f88e7dc0023eef4e4e64940ca4f625ab983fc52e7135321 +SIZE (xpi/firefox-i18n-42.0/ff.xpi) = 461016 +SHA256 (xpi/firefox-i18n-42.0/fi.xpi) = 6db03ffb84a02132ad852a9e6a223834ba00182ce34fab5e19b7c16dad6d2269 +SIZE (xpi/firefox-i18n-42.0/fi.xpi) = 452032 +SHA256 (xpi/firefox-i18n-42.0/fr.xpi) = 8eeec5d50b169f4102921941dfd43c8bb02f82e82c8f6a38a291c322914f17ce +SIZE (xpi/firefox-i18n-42.0/fr.xpi) = 470271 +SHA256 (xpi/firefox-i18n-42.0/fy-NL.xpi) = 2471d52f5bfeb516e7569b8fd0167109d46ec4c2fc774f8c93bca2809f3dc47f +SIZE (xpi/firefox-i18n-42.0/fy-NL.xpi) = 463484 +SHA256 (xpi/firefox-i18n-42.0/ga-IE.xpi) = fa5cda49e9284d9dae817132cdbfee504078e2140b4bfe18ead9089dce790f37 +SIZE (xpi/firefox-i18n-42.0/ga-IE.xpi) = 476090 +SHA256 (xpi/firefox-i18n-42.0/gd.xpi) = a41b6b5a51cd8dfab903a74086c26c8b6c2c05705d256b801f40530575e5d5a0 +SIZE (xpi/firefox-i18n-42.0/gd.xpi) = 462140 +SHA256 (xpi/firefox-i18n-42.0/gl.xpi) = fc16ccf790b551df573b9de347eeb36719fdb98af44f9afa4ebd2c67853e1587 +SIZE (xpi/firefox-i18n-42.0/gl.xpi) = 451687 +SHA256 (xpi/firefox-i18n-42.0/gu-IN.xpi) = 28e86b4cdbb7c1af4a00b7968a1c79005f594af9f44c4ff940686cecea8ea9cb +SIZE (xpi/firefox-i18n-42.0/gu-IN.xpi) = 492282 +SHA256 (xpi/firefox-i18n-42.0/he.xpi) = c86ff630372f014409b8ff97ba10eed5b267cb90f74fca5958c3d988c00f96ff +SIZE (xpi/firefox-i18n-42.0/he.xpi) = 481468 +SHA256 (xpi/firefox-i18n-42.0/hi-IN.xpi) = 4bf1ebfd071d5393b9cc8503732bbf5e6afd7534f7bf5b1e67a105cf8882a602 +SIZE (xpi/firefox-i18n-42.0/hi-IN.xpi) = 515516 +SHA256 (xpi/firefox-i18n-42.0/hr.xpi) = f60a9effb51f85d798528ef947c37dd40e9e11f4c7081371ef1a2c184d51fbd7 +SIZE (xpi/firefox-i18n-42.0/hr.xpi) = 486308 +SHA256 (xpi/firefox-i18n-42.0/hsb.xpi) = ba43533196c1de882708e3f2c5f33508bdbedbf3987a060e51891b3cbdfdb5df +SIZE (xpi/firefox-i18n-42.0/hsb.xpi) = 477291 +SHA256 (xpi/firefox-i18n-42.0/hu.xpi) = d6e158f3b5c4fe9745feed9be76276898c4d06a34c6af41e9d6f7d9574c1cb02 +SIZE (xpi/firefox-i18n-42.0/hu.xpi) = 461934 +SHA256 (xpi/firefox-i18n-42.0/hy-AM.xpi) = 20d38d82634a0f7fac0aba10cd33def9bd07860343f50b51b977e9ba9d4298e0 +SIZE (xpi/firefox-i18n-42.0/hy-AM.xpi) = 544379 +SHA256 (xpi/firefox-i18n-42.0/id.xpi) = a9b186a33c58dc26eacfd23b77eb3fb07a4169a65043ae6454f53a3076c8f361 +SIZE (xpi/firefox-i18n-42.0/id.xpi) = 438845 +SHA256 (xpi/firefox-i18n-42.0/is.xpi) = 36d483f995a23672548076cf493bb5d74067194e45357fcdaa8ccf89f081e54e +SIZE (xpi/firefox-i18n-42.0/is.xpi) = 493033 +SHA256 (xpi/firefox-i18n-42.0/it.xpi) = 12f52bcd404059126fd5291e185e152b65a22cc80562c736cf441088ea7e8659 +SIZE (xpi/firefox-i18n-42.0/it.xpi) = 367659 +SHA256 (xpi/firefox-i18n-42.0/ja.xpi) = 836403f5c69d4ce9304d123de794acfb297870b5dea084c8c5dc1f2d2fa88ba8 +SIZE (xpi/firefox-i18n-42.0/ja.xpi) = 488656 +SHA256 (xpi/firefox-i18n-42.0/kk.xpi) = c956039afb31cdbc87177e9da7604dea5f396971cc005ba2b2f39bcccd07f0c9 +SIZE (xpi/firefox-i18n-42.0/kk.xpi) = 513387 +SHA256 (xpi/firefox-i18n-42.0/km.xpi) = 831517e7a4526a8fe66bed319f07f3043a2b59d8f335e087468be241ee73d055 +SIZE (xpi/firefox-i18n-42.0/km.xpi) = 578547 +SHA256 (xpi/firefox-i18n-42.0/kn.xpi) = 85f1b02e7dad0eff2df2d42f0f48ac7c87ee4ae3074304a07dbf72826de3fff5 +SIZE (xpi/firefox-i18n-42.0/kn.xpi) = 544136 +SHA256 (xpi/firefox-i18n-42.0/ko.xpi) = 5ba6764e73adbd14eea69b6fdef7bed1302ae79a3fbefc84a99846f6c8424277 +SIZE (xpi/firefox-i18n-42.0/ko.xpi) = 474547 +SHA256 (xpi/firefox-i18n-42.0/lij.xpi) = 7b926543d7ba6e3ba3bcd62846715f88ba2b08ccb069174e1c93817c4ed30270 +SIZE (xpi/firefox-i18n-42.0/lij.xpi) = 456396 +SHA256 (xpi/firefox-i18n-42.0/lt.xpi) = 9cea89aec036c26dbb25ac560045ea31014bfdc799735894439ef081c84e724d +SIZE (xpi/firefox-i18n-42.0/lt.xpi) = 495227 +SHA256 (xpi/firefox-i18n-42.0/lv.xpi) = dead267a4f72a36ce73119f9d37cd62ee8c9aca800886c744ce3a7b871d232b5 +SIZE (xpi/firefox-i18n-42.0/lv.xpi) = 475294 +SHA256 (xpi/firefox-i18n-42.0/mai.xpi) = 8fc086207679c75f6d4165d4a12333871078e60aa0476249409fcf3ac05ed284 +SIZE (xpi/firefox-i18n-42.0/mai.xpi) = 523801 +SHA256 (xpi/firefox-i18n-42.0/mk.xpi) = 5dabd571b25070ba83b7bc539a150714001339e7a986df8b364424b1312109d1 +SIZE (xpi/firefox-i18n-42.0/mk.xpi) = 535199 +SHA256 (xpi/firefox-i18n-42.0/ml.xpi) = 7345b33597ecad8e9306f5f483b872d4d62c86561b3bfd7eb514853f67f9a86a +SIZE (xpi/firefox-i18n-42.0/ml.xpi) = 533776 +SHA256 (xpi/firefox-i18n-42.0/mr.xpi) = 734a252d6a87a468568ac8ebdf9cf2e2ddb692997b67890ba846001cbacfe1f8 +SIZE (xpi/firefox-i18n-42.0/mr.xpi) = 522304 +SHA256 (xpi/firefox-i18n-42.0/ms.xpi) = cf16f7c807915297a132ad8d71fe20012c54eb82f8153f66b954b71a143cccc7 +SIZE (xpi/firefox-i18n-42.0/ms.xpi) = 497644 +SHA256 (xpi/firefox-i18n-42.0/nb-NO.xpi) = f18376647b559b56b94dd54a92c4589dd4313e18870f7c5ccde520ab5baaaac2 +SIZE (xpi/firefox-i18n-42.0/nb-NO.xpi) = 453245 +SHA256 (xpi/firefox-i18n-42.0/nl.xpi) = a2470132d8b8a80b71471527a4c2468e7cd9e2440e1666950c591e09f78138bd +SIZE (xpi/firefox-i18n-42.0/nl.xpi) = 451272 +SHA256 (xpi/firefox-i18n-42.0/nn-NO.xpi) = 4bff7cf5b4178a6d85da579ad1356af88d332d9b48cfbfaa067d51c8f190dd27 +SIZE (xpi/firefox-i18n-42.0/nn-NO.xpi) = 447406 +SHA256 (xpi/firefox-i18n-42.0/or.xpi) = c3f211d325a7bac64c71b239ccc95918153f5d5ae987b29031245bf7475eb329 +SIZE (xpi/firefox-i18n-42.0/or.xpi) = 533314 +SHA256 (xpi/firefox-i18n-42.0/pa-IN.xpi) = af2e3dec61be29064b9a72846fd1148f0ff02e7e2290a3ed60077e932cdb614a +SIZE (xpi/firefox-i18n-42.0/pa-IN.xpi) = 507205 +SHA256 (xpi/firefox-i18n-42.0/pl.xpi) = 34498568481fc7d720742e2add62e0ea55c6150bf90abc3040186ca5d26881f2 +SIZE (xpi/firefox-i18n-42.0/pl.xpi) = 403227 +SHA256 (xpi/firefox-i18n-42.0/pt-BR.xpi) = b0c9a80cd76142fd9886fd70a141dc0d8e4203e8fbdb72b649c84ee3b0d373bf +SIZE (xpi/firefox-i18n-42.0/pt-BR.xpi) = 468096 +SHA256 (xpi/firefox-i18n-42.0/pt-PT.xpi) = 63b5e59bd240b67fe683618b9be9d824ae8f77133d8345889b32ba0930d77687 +SIZE (xpi/firefox-i18n-42.0/pt-PT.xpi) = 448920 +SHA256 (xpi/firefox-i18n-42.0/rm.xpi) = d5ab15132c13db755ec05efbf255a53ae4411d2724ecc5ecc5bda08c4eef5681 +SIZE (xpi/firefox-i18n-42.0/rm.xpi) = 454529 +SHA256 (xpi/firefox-i18n-42.0/ro.xpi) = d62cff13bc6ae437f1a224ad2e11e8d4de338f8b6b3e405baa1d8c0764b7edef +SIZE (xpi/firefox-i18n-42.0/ro.xpi) = 502634 +SHA256 (xpi/firefox-i18n-42.0/ru.xpi) = ac454a85ea58c5a3297550fe7a10eef8487f37bb0310df4a5a9fb533d7c1c712 +SIZE (xpi/firefox-i18n-42.0/ru.xpi) = 416137 +SHA256 (xpi/firefox-i18n-42.0/si.xpi) = 763543a1f7433309be01d89e30436b7bff4fcd2b50e8f496f54be26f0c730688 +SIZE (xpi/firefox-i18n-42.0/si.xpi) = 543889 +SHA256 (xpi/firefox-i18n-42.0/sk.xpi) = beb7004124240fd83f64841ff415cb692aab327b5ac925e6db27e4b9ba7f01ca +SIZE (xpi/firefox-i18n-42.0/sk.xpi) = 477255 +SHA256 (xpi/firefox-i18n-42.0/sl.xpi) = 0079e2ca640efe4d2c7dd29a570634cc5072f632bf064149bf9b9d8f3aa518d8 +SIZE (xpi/firefox-i18n-42.0/sl.xpi) = 450532 +SHA256 (xpi/firefox-i18n-42.0/son.xpi) = 811356dfb2552f5c2d2832b7a208233e27eeab1e064d694cf36532ddcbfc458d +SIZE (xpi/firefox-i18n-42.0/son.xpi) = 457298 +SHA256 (xpi/firefox-i18n-42.0/sq.xpi) = fabeef51543439772b6ef5643d0ac57ec196d64c6ef83e75ddcd275dc6624a81 +SIZE (xpi/firefox-i18n-42.0/sq.xpi) = 494612 +SHA256 (xpi/firefox-i18n-42.0/sr.xpi) = 692019f3542e0da8ff64589b488eab0d7e6d16906655d5a86ebcc53c00731edc +SIZE (xpi/firefox-i18n-42.0/sr.xpi) = 486210 +SHA256 (xpi/firefox-i18n-42.0/sv-SE.xpi) = 6e7e0eff3c480a302fa0ed1a4ed720ac432f0819c55549afc6bda028ea1b23a5 +SIZE (xpi/firefox-i18n-42.0/sv-SE.xpi) = 460188 +SHA256 (xpi/firefox-i18n-42.0/ta.xpi) = 542761640fbe8dd6cf3e60be45a12735bbfe6c38c96b0073833544c85c5cf10a +SIZE (xpi/firefox-i18n-42.0/ta.xpi) = 515601 +SHA256 (xpi/firefox-i18n-42.0/te.xpi) = 7287fc6577b0892df46ea1fc2f185fc73ad94c4d8050cdd3a4be47150f1f7a2e +SIZE (xpi/firefox-i18n-42.0/te.xpi) = 532920 +SHA256 (xpi/firefox-i18n-42.0/th.xpi) = f254f7c40a194ae3c082d9b77f155fc290b0e6abe969d7c06788ea7abe4039ad +SIZE (xpi/firefox-i18n-42.0/th.xpi) = 542239 +SHA256 (xpi/firefox-i18n-42.0/tr.xpi) = f343c4f3b2cb5541fc9f98d5953101f5e5d1ee1d5c30968d6564828c5701119b +SIZE (xpi/firefox-i18n-42.0/tr.xpi) = 489512 +SHA256 (xpi/firefox-i18n-42.0/uk.xpi) = 88c881749bae293d9614a77ed9458345399573a6ab5583626ef98041ae78da32 +SIZE (xpi/firefox-i18n-42.0/uk.xpi) = 505718 +SHA256 (xpi/firefox-i18n-42.0/uz.xpi) = faeacd2ec9af20cde5032415f0bbeba487ed4d276f778672ae6a340615099725 +SIZE (xpi/firefox-i18n-42.0/uz.xpi) = 505180 +SHA256 (xpi/firefox-i18n-42.0/vi.xpi) = 1481521a62561266ea14389cdb579b1757e791a5473c981e399aa9bff14ddcdd +SIZE (xpi/firefox-i18n-42.0/vi.xpi) = 472290 +SHA256 (xpi/firefox-i18n-42.0/xh.xpi) = 1a1776e5770dd361d0adc85ed80bb1e81dd5436a0727009b91cb89e92e4d381e +SIZE (xpi/firefox-i18n-42.0/xh.xpi) = 455527 +SHA256 (xpi/firefox-i18n-42.0/zh-CN.xpi) = 46bb4b1b67494004441135dbf3051501e0580fb8da29548de73f2e0fe12f7834 +SIZE (xpi/firefox-i18n-42.0/zh-CN.xpi) = 491278 +SHA256 (xpi/firefox-i18n-42.0/zh-TW.xpi) = ef4e9b5e01b85564b935a5f9bc663ffac61ce0f3ca166c316b1aee648832d458 +SIZE (xpi/firefox-i18n-42.0/zh-TW.xpi) = 482387 Index: branches/2015Q4/www/libxul/Makefile =================================================================== --- branches/2015Q4/www/libxul/Makefile (revision 402339) +++ branches/2015Q4/www/libxul/Makefile (revision 402340) @@ -1,101 +1,101 @@ # Created by: Michael Johnson # $FreeBSD$ PORTNAME= libxul -DISTVERSION= 38.3.0 +DISTVERSION= 38.4.0 CATEGORIES?= www devel MASTER_SITES= MOZILLA/firefox/releases/${DISTVERSION}esr/source \ MOZILLA/firefox/candidates/${DISTVERSION}esr-candidates/build2/source DISTNAME= firefox-${DISTVERSION}esr.source MAINTAINER?= gecko@FreeBSD.org COMMENT?= Mozilla runtime package that can be used to bootstrap XUL+XPCOM apps -BUILD_DEPENDS= nspr>=4.10.8:${PORTSDIR}/devel/nspr \ - nss>=3.19.2:${PORTSDIR}/security/nss \ +BUILD_DEPENDS= nspr>=4.10.10:${PORTSDIR}/devel/nspr \ + nss>=3.19.2.1:${PORTSDIR}/security/nss \ libevent2>=2.0.21_2:${PORTSDIR}/devel/libevent2 \ soundtouch>=1.8.0:${PORTSDIR}/audio/soundtouch \ harfbuzz>=0.9.34:${PORTSDIR}/print/harfbuzz \ graphite2>=1.2.4:${PORTSDIR}/graphics/graphite2 \ libvorbis>=1.3.5:${PORTSDIR}/audio/libvorbis \ libvpx>=1.3.0:${PORTSDIR}/multimedia/libvpx \ sqlite3>=3.8.9:${PORTSDIR}/databases/sqlite3 \ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:${PORTSDIR}/databases/py-sqlite3 \ v4l_compat>0:${PORTSDIR}/multimedia/v4l_compat \ autoconf-2.13:${PORTSDIR}/devel/autoconf213 \ zip:${PORTSDIR}/archivers/zip \ unzip:${PORTSDIR}/archivers/unzip # opus>=1.1:${PORTSDIR}/audio/opus \ LIB_DEPENDS= libv4l2.so:${PORTSDIR}/multimedia/libv4l WRKSRC= ${WRKDIR}/mozilla-esr38 CONFLICTS_INSTALL= libxul-1.9.* USE_QT5= # empty QT_NONSTANDARD= yes USE_GL= gl USES= dos2unix pathfix 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} USE_LDCONFIG= ${PREFIX}/lib/${MOZILLA} MOZ_OPTIONS?= --enable-application=xulrunner USE_GECKO= gecko CPE_PRODUCT= firefox_esr MOZILLA_EXEC_NAME=xulrunner USE_MOZILLA= -opus MOZILLA_PLIST_DIRS= bin include lib share/idl libdata MOZ_PKGCONFIG_FILES= libxul-embedding libxul mozilla-js \ mozilla-plugin OPTIONS_DEFAULT= GTK2 OPTIONS_SINGLE+= TOOLKIT OPTIONS_SINGLE_TOOLKIT= GTK2 GTK3 .include "${.CURDIR}/../../www/firefox/Makefile.options" .include .if ${USE_MOZILLA:M-nss} MOZ_PKGCONFIG_FILES+= mozilla-nss .endif .if ${PORT_OPTIONS:MALSA} RUN_DEPENDS+= alsa-lib>=1.0.27.2_1:${PORTSDIR}/audio/alsa-lib .endif .if ! ${PORT_OPTIONS:MBUNDLED_CAIRO} BUILD_DEPENDS+= cairo>=1.12.16_1,2:${PORTSDIR}/graphics/cairo .endif .if ${PORT_OPTIONS:MGSTREAMER} RUN_DEPENDS+= gstreamer1-libav>=1.2.4_1:${PORTSDIR}/multimedia/gstreamer1-libav .endif .if ${PORT_OPTIONS:MGTK3} BUILD_DEPENDS+= gtk3>=3.14.6:${PORTSDIR}/x11-toolkits/gtk30 .endif .if ${PORT_OPTIONS:MTEST} BROKEN= stage-package fails with ValueError: no path specified .endif post-patch: @${REINPLACE_CMD} -e '/MOZPNG/s/=[0-9]*/=10511/' \ ${WRKSRC}/configure.in @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \ ${WRKSRC}/xulrunner/stub/nsXULStub.cpp pre-configure: (cd ${WRKSRC} && ${LOCALBASE}/bin/autoconf-2.13) (cd ${WRKSRC}/js/src/ && ${LOCALBASE}/bin/autoconf-2.13) post-build: @${REINPLACE_CMD} -e "s|\(Libs:.*\)\($$\)|\1 -Wl,-rpath,${PREFIX}/lib/${MOZ_RPATH}\2| ; \ s|%sdkdir%|%sdkdir%/sdk|g ; \ s|%%MOZ_LIBDIR%%|${PREFIX}/lib/${MOZILLA}|g" \ ${WRKSRC}/xulrunner/installer/*.pc.in || ${TRUE} .include Index: branches/2015Q4/www/libxul/distinfo =================================================================== --- branches/2015Q4/www/libxul/distinfo (revision 402339) +++ branches/2015Q4/www/libxul/distinfo (revision 402340) @@ -1,2 +1,2 @@ -SHA256 (firefox-38.3.0esr.source.tar.bz2) = 809f65502d256568220c52bfe09646588f21653c8c487e8018b10ff87ca67f1c -SIZE (firefox-38.3.0esr.source.tar.bz2) = 181401628 +SHA256 (firefox-38.4.0esr.source.tar.bz2) = 028a1f7ce16b3016b0d98e5a5ef73bcb3f732b80d406e54f49e3c246e207f2c7 +SIZE (firefox-38.4.0esr.source.tar.bz2) = 181383793 Index: branches/2015Q4/www/linux-firefox/Makefile =================================================================== --- branches/2015Q4/www/linux-firefox/Makefile (revision 402339) +++ branches/2015Q4/www/linux-firefox/Makefile (revision 402340) @@ -1,22 +1,22 @@ # Created by: voisine # $FreeBSD$ PORTNAME= firefox -DISTVERSION= 40.0.3 +DISTVERSION= 42.0 PORTEPOCH= 1 CATEGORIES= www ipv6 MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/linux-i686/en-US \ - MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/linux-i686/en-US + MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build2/linux-i686/en-US MAINTAINER= gecko@FreeBSD.org COMMENT= Web browser based on the browser portion of Mozilla USES= tar:bzip2 WANT_GTK218= yes PREFS_FILE= ${WRKSRC}/${APP_SUBDIR}defaults/preferences/browser-prefs.js APP_SUBDIR= browser/ # plugins, extensions .include "${.CURDIR}/../linux-seamonkey/Makefile.common" .include Index: branches/2015Q4/www/linux-firefox/distinfo =================================================================== --- branches/2015Q4/www/linux-firefox/distinfo (revision 402339) +++ branches/2015Q4/www/linux-firefox/distinfo (revision 402340) @@ -1,6 +1,6 @@ -SHA256 (firefox-40.0.3.tar.bz2) = af3eaa3b56c8223d51079c62f00f36da0d200f28d59f6457c6794e2142b7925e -SIZE (firefox-40.0.3.tar.bz2) = 49233137 +SHA256 (firefox-42.0.tar.bz2) = 2c44f8ef07896f3e4c4ee555e35ebe5658f2721fdbdee4c70b153387472b781e +SIZE (firefox-42.0.tar.bz2) = 50938529 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 SIZE (gtk2-2.18.3-19.fc12.i686.rpm) = 3198708 Index: branches/2015Q4/www/linux-firefox/pkg-plist =================================================================== --- branches/2015Q4/www/linux-firefox/pkg-plist (revision 402339) +++ branches/2015Q4/www/linux-firefox/pkg-plist (revision 402340) @@ -1,68 +1,69 @@ bin/%%APP_NAME%% share/applications/%%APP_NAME%%.desktop lib/%%APP_NAME%%/Throbber-small.gif lib/%%APP_NAME%%/application.ini lib/%%APP_NAME%%/browser/blocklist.xml lib/%%APP_NAME%%/browser/chrome.manifest lib/%%APP_NAME%%/browser/chrome/icons/default/default16.png lib/%%APP_NAME%%/browser/chrome/icons/default/default32.png lib/%%APP_NAME%%/browser/chrome/icons/default/default48.png lib/%%APP_NAME%%/browser/components/components.manifest lib/%%APP_NAME%%/browser/components/libbrowsercomps.so lib/%%APP_NAME%%/browser/crashreporter-override.ini lib/%%APP_NAME%%/browser/defaults/preferences/browser-prefs.js lib/%%APP_NAME%%/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/chrome.manifest lib/%%APP_NAME%%/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/icon.png lib/%%APP_NAME%%/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/install.rdf lib/%%APP_NAME%%/browser/icons/mozicon128.png lib/%%APP_NAME%%/browser/omni.ja lib/%%APP_NAME%%/browser/plugins lib/%%APP_NAME%%/chrome.manifest lib/%%APP_NAME%%/components/components.manifest lib/%%APP_NAME%%/components/libdbusservice.so lib/%%APP_NAME%%/components/libmozgnome.so lib/%%APP_NAME%%/crashreporter lib/%%APP_NAME%%/crashreporter.ini lib/%%APP_NAME%%/defaults/pref/channel-prefs.js lib/%%APP_NAME%%/dependentlibs.list lib/%%APP_NAME%%/dictionaries/en-US.aff lib/%%APP_NAME%%/dictionaries/en-US.dic lib/%%APP_NAME%%/firefox lib/%%APP_NAME%%/firefox-bin lib/%%APP_NAME%%/gmp-clearkey/0.1/clearkey.info lib/%%APP_NAME%%/gmp-clearkey/0.1/libclearkey.so lib/%%APP_NAME%%/icons/updater.png lib/%%APP_NAME%%/libfreebl3.chk lib/%%APP_NAME%%/libfreebl3.so %%GTK218%%lib/%%APP_NAME%%/libgdk-x11-2.0.so.0 %%GTK218%%lib/%%APP_NAME%%/libgio-2.0.so.0 %%GTK218%%lib/%%APP_NAME%%/libglib-2.0.so.0 %%GTK218%%lib/%%APP_NAME%%/libgtk-x11-2.0.so.0 +lib/%%APP_NAME%%/liblgpllibs.so lib/%%APP_NAME%%/libmozsqlite3.so lib/%%APP_NAME%%/libnspr4.so lib/%%APP_NAME%%/libnss3.so lib/%%APP_NAME%%/libnssckbi.so lib/%%APP_NAME%%/libnssdbm3.chk lib/%%APP_NAME%%/libnssdbm3.so lib/%%APP_NAME%%/libnssutil3.so lib/%%APP_NAME%%/libplc4.so lib/%%APP_NAME%%/libplds4.so lib/%%APP_NAME%%/libsmime3.so lib/%%APP_NAME%%/libsoftokn3.chk lib/%%APP_NAME%%/libsoftokn3.so lib/%%APP_NAME%%/libssl3.so lib/%%APP_NAME%%/libxul.so lib/%%APP_NAME%%/omni.ja lib/%%APP_NAME%%/platform.ini lib/%%APP_NAME%%/plugin-container lib/%%APP_NAME%%/precomplete lib/%%APP_NAME%%/removed-files lib/%%APP_NAME%%/run-mozilla.sh lib/%%APP_NAME%%/update-settings.ini lib/%%APP_NAME%%/updater lib/%%APP_NAME%%/updater.ini lib/%%APP_NAME%%/webapprt-stub lib/%%APP_NAME%%/webapprt/omni.ja lib/%%APP_NAME%%/webapprt/webapprt.ini @exec /bin/cp -R %%LOCALBASE%%/lib/xpi/symlinks/%%APP_NAME%%/ %D/lib/%%APP_NAME%%/browser/extensions/ 2>/dev/null || true @unexec /usr/bin/find %D/lib/%%APP_NAME%%/browser/extensions/ -depth 1 -type l -delete 2>/dev/null || true Index: branches/2015Q4/www/linux-seamonkey/Makefile =================================================================== --- branches/2015Q4/www/linux-seamonkey/Makefile (revision 402339) +++ branches/2015Q4/www/linux-seamonkey/Makefile (revision 402340) @@ -1,18 +1,18 @@ # Created by: Andrew Pantyukhin # $FreeBSD$ PORTNAME= seamonkey -DISTVERSION= 2.33.1 +DISTVERSION= 2.39 CATEGORIES= www mail news editors irc ipv6 MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/linux-i686/en-US \ MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/linux-i686/en-US MAINTAINER= gecko@FreeBSD.org COMMENT= The open source, standards compliant web browser USES= tar:bzip2 WANT_GTK218= yes .include "${.CURDIR}/Makefile.common" .include Index: branches/2015Q4/www/linux-seamonkey/distinfo =================================================================== --- branches/2015Q4/www/linux-seamonkey/distinfo (revision 402339) +++ branches/2015Q4/www/linux-seamonkey/distinfo (revision 402340) @@ -1,6 +1,6 @@ -SHA256 (seamonkey-2.33.1.tar.bz2) = f52b597a938f2980fc438a96ac38b9d23cb403a7319bb5d60d862f96efc54926 -SIZE (seamonkey-2.33.1.tar.bz2) = 41382431 +SHA256 (seamonkey-2.39.tar.bz2) = 035cef6a3839fc5e86b554070fbf111b2e33bf2ea74b565fb10c527761fc52b1 +SIZE (seamonkey-2.39.tar.bz2) = 50222506 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 SIZE (gtk2-2.18.3-19.fc12.i686.rpm) = 3198708 Index: branches/2015Q4/www/linux-seamonkey/pkg-plist =================================================================== --- branches/2015Q4/www/linux-seamonkey/pkg-plist (revision 402339) +++ branches/2015Q4/www/linux-seamonkey/pkg-plist (revision 402340) @@ -1,124 +1,124 @@ bin/%%APP_NAME%% share/applications/%%APP_NAME%%.desktop lib/%%APP_NAME%%/Throbber-small.gif lib/%%APP_NAME%%/application.ini lib/%%APP_NAME%%/blocklist.xml lib/%%APP_NAME%%/chrome.manifest lib/%%APP_NAME%%/chrome/icons/default/JSConsoleWindow.png lib/%%APP_NAME%%/chrome/icons/default/JSConsoleWindow16.png lib/%%APP_NAME%%/chrome/icons/default/JSConsoleWindow48.png lib/%%APP_NAME%%/chrome/icons/default/abcardWindow.png lib/%%APP_NAME%%/chrome/icons/default/abcardWindow16.png lib/%%APP_NAME%%/chrome/icons/default/abcardWindow48.png lib/%%APP_NAME%%/chrome/icons/default/ablistWindow.png lib/%%APP_NAME%%/chrome/icons/default/ablistWindow16.png lib/%%APP_NAME%%/chrome/icons/default/ablistWindow48.png lib/%%APP_NAME%%/chrome/icons/default/addressbookWindow.png lib/%%APP_NAME%%/chrome/icons/default/addressbookWindow16.png lib/%%APP_NAME%%/chrome/icons/default/addressbookWindow48.png lib/%%APP_NAME%%/chrome/icons/default/bookmarkproperties.png lib/%%APP_NAME%%/chrome/icons/default/bookmarkproperties16.png lib/%%APP_NAME%%/chrome/icons/default/bookmarkproperties48.png lib/%%APP_NAME%%/chrome/icons/default/default.png lib/%%APP_NAME%%/chrome/icons/default/default16.png lib/%%APP_NAME%%/chrome/icons/default/default48.png lib/%%APP_NAME%%/chrome/icons/default/downloadManager.png lib/%%APP_NAME%%/chrome/icons/default/downloadManager16.png lib/%%APP_NAME%%/chrome/icons/default/downloadManager48.png lib/%%APP_NAME%%/chrome/icons/default/editorWindow.png lib/%%APP_NAME%%/chrome/icons/default/editorWindow16.png lib/%%APP_NAME%%/chrome/icons/default/editorWindow48.png lib/%%APP_NAME%%/chrome/icons/default/findBookmarkWindow.png lib/%%APP_NAME%%/chrome/icons/default/findBookmarkWindow16.png lib/%%APP_NAME%%/chrome/icons/default/findBookmarkWindow48.png lib/%%APP_NAME%%/chrome/icons/default/findHistoryWindow.png lib/%%APP_NAME%%/chrome/icons/default/findHistoryWindow16.png lib/%%APP_NAME%%/chrome/icons/default/findHistoryWindow48.png lib/%%APP_NAME%%/chrome/icons/default/history-window.png lib/%%APP_NAME%%/chrome/icons/default/history-window16.png lib/%%APP_NAME%%/chrome/icons/default/history-window48.png lib/%%APP_NAME%%/chrome/icons/default/main-window.png lib/%%APP_NAME%%/chrome/icons/default/main-window16.png lib/%%APP_NAME%%/chrome/icons/default/main-window48.png lib/%%APP_NAME%%/chrome/icons/default/messengerWindow.png lib/%%APP_NAME%%/chrome/icons/default/messengerWindow16.png lib/%%APP_NAME%%/chrome/icons/default/messengerWindow48.png lib/%%APP_NAME%%/chrome/icons/default/msgcomposeWindow.png lib/%%APP_NAME%%/chrome/icons/default/msgcomposeWindow16.png lib/%%APP_NAME%%/chrome/icons/default/msgcomposeWindow48.png lib/%%APP_NAME%%/chrome/icons/default/places.png lib/%%APP_NAME%%/chrome/icons/default/places16.png lib/%%APP_NAME%%/chrome/icons/default/places48.png lib/%%APP_NAME%%/chrome/icons/default/seamonkey.png lib/%%APP_NAME%%/components/components.manifest lib/%%APP_NAME%%/components/libdbusservice.so lib/%%APP_NAME%%/components/libmozgnome.so lib/%%APP_NAME%%/components/libsuite.so lib/%%APP_NAME%%/crashreporter lib/%%APP_NAME%%/crashreporter-override.ini lib/%%APP_NAME%%/crashreporter.ini lib/%%APP_NAME%%/defaults/messenger/mailViews.dat lib/%%APP_NAME%%/defaults/pref/browser-prefs.js lib/%%APP_NAME%%/defaults/pref/channel-prefs.js lib/%%APP_NAME%%/defaults/profile/chrome/userChrome-example.css lib/%%APP_NAME%%/defaults/profile/chrome/userContent-example.css lib/%%APP_NAME%%/defaults/profile/mimeTypes.rdf lib/%%APP_NAME%%/defaults/profile/panels.rdf lib/%%APP_NAME%%/dependentlibs.list lib/%%APP_NAME%%/dictionaries/en-US.aff lib/%%APP_NAME%%/dictionaries/en-US.dic lib/%%APP_NAME%%/distribution/extensions/inspector@mozilla.org.xpi lib/%%APP_NAME%%/distribution/extensions/{59c81df5-4b7a-477b-912d-4e0fdf64e5f2}.xpi lib/%%APP_NAME%%/extensions/modern@themes.mozilla.org.xpi lib/%%APP_NAME%%/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}.xpi lib/%%APP_NAME%%/icons/updater.png lib/%%APP_NAME%%/isp/Bogofilter.sfd lib/%%APP_NAME%%/isp/DSPAM.sfd lib/%%APP_NAME%%/isp/POPFile.sfd lib/%%APP_NAME%%/isp/SpamAssassin.sfd lib/%%APP_NAME%%/isp/SpamPal.sfd lib/%%APP_NAME%%/isp/movemail.rdf lib/%%APP_NAME%%/isp/rss.rdf lib/%%APP_NAME%%/libfreebl3.chk lib/%%APP_NAME%%/libfreebl3.so %%GTK218%%lib/%%APP_NAME%%/libgdk-x11-2.0.so.0 %%GTK218%%lib/%%APP_NAME%%/libgio-2.0.so.0 %%GTK218%%lib/%%APP_NAME%%/libglib-2.0.so.0 %%GTK218%%lib/%%APP_NAME%%/libgtk-x11-2.0.so.0 lib/%%APP_NAME%%/libldap60.so lib/%%APP_NAME%%/libldif60.so -lib/%%APP_NAME%%/libmozalloc.so +lib/%%APP_NAME%%/liblgpllibs.so lib/%%APP_NAME%%/libmozsqlite3.so lib/%%APP_NAME%%/libnspr4.so lib/%%APP_NAME%%/libnss3.so lib/%%APP_NAME%%/libnssckbi.so lib/%%APP_NAME%%/libnssdbm3.chk lib/%%APP_NAME%%/libnssdbm3.so lib/%%APP_NAME%%/libnssutil3.so lib/%%APP_NAME%%/libplc4.so lib/%%APP_NAME%%/libplds4.so lib/%%APP_NAME%%/libprldap60.so lib/%%APP_NAME%%/libsmime3.so lib/%%APP_NAME%%/libsoftokn3.chk lib/%%APP_NAME%%/libsoftokn3.so lib/%%APP_NAME%%/libssl3.so lib/%%APP_NAME%%/libxul.so lib/%%APP_NAME%%/license.txt lib/%%APP_NAME%%/omni.ja lib/%%APP_NAME%%/platform.ini lib/%%APP_NAME%%/plugin-container lib/%%APP_NAME%%/plugins lib/%%APP_NAME%%/precomplete lib/%%APP_NAME%%/removed-files lib/%%APP_NAME%%/run-mozilla.sh lib/%%APP_NAME%%/seamonkey lib/%%APP_NAME%%/seamonkey-bin lib/%%APP_NAME%%/searchplugins/duckduckgo.xml lib/%%APP_NAME%%/searchplugins/google.xml lib/%%APP_NAME%%/searchplugins/wikipedia.xml lib/%%APP_NAME%%/searchplugins/yahoo.xml lib/%%APP_NAME%%/update-settings.ini lib/%%APP_NAME%%/updater lib/%%APP_NAME%%/updater.ini @exec /bin/cp -R %%LOCALBASE%%/lib/xpi/symlinks/%%APP_NAME%%/ %D/lib/%%APP_NAME%%/extensions/ 2>/dev/null || true @unexec /usr/bin/find %D/lib/%%APP_NAME%%/extensions/ -depth 1 -type l -delete 2>/dev/null || true Index: branches/2015Q4/www/seamonkey/Makefile =================================================================== --- branches/2015Q4/www/seamonkey/Makefile (revision 402339) +++ branches/2015Q4/www/seamonkey/Makefile (revision 402340) @@ -1,197 +1,199 @@ # Created by: eivind/dima/jseger # $FreeBSD$ PORTNAME= seamonkey -DISTVERSION= 2.33.1 -PORTREVISION= 8 +DISTVERSION= 2.39 +MOZILLA_VER= 42 # above + 3 CATEGORIES?= www mail news editors irc ipv6 MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/source DISTFILES= ${PORTNAME}-${DISTVERSION}.source${EXTRACT_SUFX} EXTRACT_ONLY= ${PORTNAME}-${DISTVERSION}.source${EXTRACT_SUFX} MAINTAINER= gecko@FreeBSD.org COMMENT= The open source, standards compliant web browser -BUILD_DEPENDS= nspr>=4.10.6:${PORTSDIR}/devel/nspr \ - nss>=3.17.4:${PORTSDIR}/security/nss \ +BUILD_DEPENDS= nspr>=4.10.10:${PORTSDIR}/devel/nspr \ + nss>=3.19.4:${PORTSDIR}/security/nss \ libevent2>=2.0.21_2:${PORTSDIR}/devel/libevent2 \ soundtouch>=1.8.0:${PORTSDIR}/audio/soundtouch \ harfbuzz>=0.9.34:${PORTSDIR}/print/harfbuzz \ graphite2>=1.2.4:${PORTSDIR}/graphics/graphite2 \ libvorbis>=1.3.5:${PORTSDIR}/audio/libvorbis \ - opus>=1.1:${PORTSDIR}/audio/opus \ libvpx>=1.3.0:${PORTSDIR}/multimedia/libvpx \ - sqlite3>=3.8.7.4:${PORTSDIR}/databases/sqlite3 \ + sqlite3>=3.8.9:${PORTSDIR}/databases/sqlite3 \ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:${PORTSDIR}/databases/py-sqlite3 \ v4l_compat>0:${PORTSDIR}/multimedia/v4l_compat \ autoconf-2.13:${PORTSDIR}/devel/autoconf213 \ + yasm:${PORTSDIR}/devel/yasm \ zip:${PORTSDIR}/archivers/zip \ unzip:${PORTSDIR}/archivers/unzip +# opus>=1.1:${PORTSDIR}/audio/opus \ LIB_DEPENDS= libv4l2.so:${PORTSDIR}/multimedia/libv4l EM_VERSION= 1.8.2 -L_VERSION= 3.8 +L_VERSION= 4.4 SSP_UNSAFE= yes USE_GECKO= gecko USE_QT5= # empty QT_NONSTANDARD= yes USE_GL= gl -USES= dos2unix tar:bzip2 +USES= dos2unix tar:xz DOS2UNIX_FILES= mozilla/media/webrtc/trunk/webrtc/system_wrappers/source/spreadsortlib/spreadsort.hpp MOZ_PIS_SCRIPTS= moz_pis_S50cleanhome MOZ_EXTENSIONS= default MOZ_OPTIONS+= --program-transform-name='s/seamonkey/${MOZILLA}/' \ --enable-application=suite -USE_MOZILLA= # empty +USE_MOZILLA= -opus MOZ_PKGCONFIG_FILES= NOT_FOR_ARCHS= ia64 +OPTIONS_EXCLUDE=LOGGING OPTIONS_DEFINE= CHATZILLA COMPOSER ENIGMAIL LDAP LIGHTNING MAILNEWS OPTIONS_DEFAULT=CANBERRA CHATZILLA COMPOSER ENIGMAIL LDAP LIGHTNING MAILNEWS CHATZILLA_DESC?=Chatzilla IRC module COMPOSER_DESC?= HTML Composer module LDAP_DESC?= LDAP support for Mailnews MAILNEWS_DESC?= Mail and News modules .include "${.CURDIR}/../../www/firefox/Makefile.options" .include .if ${PORT_OPTIONS:MCHATZILLA} MOZ_EXTENSIONS:= ${MOZ_EXTENSIONS},irc .endif .include -WRKSRC= ${WRKDIR}/comm-release +WRKSRC:= ${WRKDIR}/${PORTNAME}-${DISTVERSION} MOZSRC:= ${WRKSRC}/mozilla XPI_LIBDIR= ${PREFIX}/lib/xpi .if ${PORT_OPTIONS:MALSA} RUN_DEPENDS+= alsa-lib>=1.0.27.2_1:${PORTSDIR}/audio/alsa-lib .endif .if ! ${PORT_OPTIONS:MBUNDLED_CAIRO} BUILD_DEPENDS+= cairo>=1.12.16_1,2:${PORTSDIR}/graphics/cairo .endif .if ${PORT_OPTIONS:MGSTREAMER} RUN_DEPENDS+= gstreamer1-libav>=1.2.4_1:${PORTSDIR}/multimedia/gstreamer1-libav .endif .if ! ${PORT_OPTIONS:MMAILNEWS} MOZ_OPTIONS+= --disable-ldap --disable-mailnews .else # mail and news desired, but not LDAP .if ! ${PORT_OPTIONS:MLDAP} MOZ_OPTIONS+= --disable-ldap --enable-mailnews .else MOZ_OPTIONS+= --enable-ldap --enable-mailnews .endif .if ${PORT_OPTIONS:MENIGMAIL} MASTER_SITES+= https://www.enigmail.net/download/source/:enigmail DISTFILES+= ${EM_DISTFILE}:enigmail RUN_DEPENDS+= gpg:${PORTSDIR}/security/gnupg EM_DISTNAME= enigmail-${EM_VERSION} EM_DISTFILE= ${EM_DISTNAME}.tar.gz EM_XPI_FILE= ${WRKSRC}/mailnews/extensions/enigmail/build/${EM_DISTNAME}-${OPSYS:tl}-${ARCH:S/amd64/x86_64/:S/i386/x86/:S/powerpc/ppc/}-gcc3.xpi EM_ORIG_ID= {847b3a00-7ab1-11d4-8f02-006008948af5} EM_ID= ${PORTNAME}@mozilla-enigmail.org EM_ID_RFILES= ${XPI_LIBDIR}/${EM_ID}/install.rdf \ ${XPI_LIBDIR}/${EM_ID}/components/enigmail.js \ ${XPI_LIBDIR}/${EM_ID}/modules/enigmailCommon.jsm .endif .endif .if ! ${PORT_OPTIONS:MCOMPOSER} MOZ_OPTIONS+= --disable-composer .endif .if ${PORT_OPTIONS:MLIGHTNING} MOZ_OPTIONS+= --enable-calendar MOZ_MK_OPTIONS+= MOZ_CO_PROJECT=calendar LIGHTNING_DIR= share/lightning XPI_FILE= ${MOZ_OBJDIR}/dist/xpi-stage/lightning-${L_VERSION}.en-US.${OPSYS:tl}${OSREL}-${ARCH:S/amd64/x86_64/}.xpi XPI_ORIG_ID= {e2fda1a4-762b-4020-b5ad-a41df1933103} XPI_ID= lightning@seamonkey.mozilla.org .else MOZ_OPTIONS+= --disable-calendar .endif .if ${PORT_OPTIONS:MMAILNEWS} && ${PORT_OPTIONS:MENIGMAIL} post-extract: @${TAR} -xf ${_DISTDIR}/${EM_DISTFILE} \ -C ${WRKSRC}/mailnews/extensions .endif post-patch: @${REINPLACE_CMD} -e '/MOZPNG/s/=[0-9]*/=10511/' \ ${MOZSRC}/configure.in ${WRKSRC}/configure.in @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \ ${WRKSRC}/suite/app/nsSuiteApp.cpp @${REINPLACE_CMD} -e '/accessibility.typeaheadfind.enablesound/s/true/false/' \ ${WRKSRC}/mozilla/modules/libpref/init/all.js @${SED} -e 's|%%MOZILLA%%|${MOZILLA}|g' \ < ${FILESDIR}/seamonkey.desktop.in > \ ${WRKDIR}/${MOZILLA}.desktop .if ${PORT_OPTIONS:MMAILNEWS} && ${PORT_OPTIONS:MENIGMAIL} @${REINPLACE_CMD} -e 's,/usr/bin/perl,${PERL},' \ ${WRKSRC}/mailnews/extensions/enigmail/util/fixlang.pl \ ${WRKSRC}/mailnews/extensions/enigmail/util/make-lang-xpi.pl @${REINPLACE_CMD} -e '/^xpi/s/$$/ all/' \ -e '/^all/s/ xpi//' \ -e '/^XPI_MODULE_VERS/s/= .*/= ${EM_VERSION}/' \ ${WRKSRC}/mailnews/extensions/enigmail/Makefile @${REINPLACE_CMD} -e '/em:version/s,>[^<]*<,>${EM_VERSION}<,' \ -e '/em:maxVersion/s/pre//' \ ${WRKSRC}/mailnews/extensions/enigmail/package/install.rdf .endif pre-configure: (cd ${WRKSRC} && ${LOCALBASE}/bin/autoconf-2.13) (cd ${MOZSRC} && ${LOCALBASE}/bin/autoconf-2.13) (cd ${MOZSRC}/js/src/ && ${LOCALBASE}/bin/autoconf-2.13) .if ${PORT_OPTIONS:MMAILNEWS} && ${PORT_OPTIONS:MENIGMAIL} post-configure: cd ${WRKSRC}/mailnews/extensions/enigmail/ && \ ${SETENV} ${CONFIGURE_ENV} ${MAKE_ENV} ./configure .endif .if ${PORT_OPTIONS:MMAILNEWS} && ${PORT_OPTIONS:MENIGMAIL} post-build: ${DO_MAKE_BUILD:S/${MAKEFILE}/Makefile/} all xpi \ -C ${WRKSRC}/mailnews/extensions/enigmail .endif post-install: ${INSTALL_DATA} ${WRKDIR}/${MOZILLA}.desktop ${STAGEDIR}${PREFIX}/share/applications/ ${LN} -sf ${PREFIX}/lib/${MOZILLA}/chrome/icons/default/default48.png \ ${STAGEDIR}${PREFIX}/share/pixmaps/${MOZILLA}.png .if ${PORT_OPTIONS:MLIGHTNING} @${MKDIR} ${STAGEDIR}${XPI_LIBDIR}/${XPI_ID} ${STAGEDIR}${XPI_LIBDIR}/symlinks/seamonkey @(cd ${STAGEDIR}${XPI_LIBDIR}/${XPI_ID}; ${TAR} -xf ${XPI_FILE}) @${REINPLACE_CMD} -i "" "s/${XPI_ORIG_ID}/${XPI_ID}/" ${STAGEDIR}${XPI_LIBDIR}/${XPI_ID}/install.rdf @${CHMOD} -R a+rX,go-w ${STAGEDIR}${XPI_LIBDIR}/${XPI_ID} @${LN} -sf ${XPI_LIBDIR}/${XPI_ID} ${STAGEDIR}${XPI_LIBDIR}/symlinks/seamonkey 2>/dev/null || true @${ECHO_CMD} '@exec ${LN} -sf %D/lib/xpi/${XPI_ID} ${LOCALBASE}/lib/seamonkey/extensions 2>/dev/null || true' >> ${TMPPLIST} @${ECHO_CMD} '@unexec ${RM} -f ${LOCALBASE}/lib/seamonkey/extensions/${XPI_ID}' >> ${TMPPLIST} .endif .if ${PORT_OPTIONS:MMAILNEWS} && ${PORT_OPTIONS:MENIGMAIL} @${MKDIR} ${STAGEDIR}${XPI_LIBDIR}/${EM_ID} ${STAGEDIR}${XPI_LIBDIR}/symlinks/${PORTNAME} @(cd ${STAGEDIR}${XPI_LIBDIR}/${EM_ID}; ${TAR} -xf ${EM_XPI_FILE}) @${REINPLACE_CMD} -i "" "s/${EM_ORIG_ID}/${EM_ID}/" ${EM_ID_RFILES:S/^/${STAGEDIR}/g} @${CHMOD} -R a+rX,go-w ${STAGEDIR}${XPI_LIBDIR}/${EM_ID} @${LN} -sf ${XPI_LIBDIR}/${EM_ID} ${STAGEDIR}${XPI_LIBDIR}/symlinks/${PORTNAME} 2>/dev/null || true @${ECHO_CMD} '@exec ${LN} -sf %D/lib/xpi/${EM_ID} ${LOCALBASE}/lib/${PORTNAME}/extensions 2>/dev/null || true' >> ${TMPPLIST} @${ECHO_CMD} '@unexec ${RM} -f ${LOCALBASE}/lib/${PORTNAME}/extensions/${EM_ID}' >> ${TMPPLIST} .endif .include Index: branches/2015Q4/www/seamonkey/distinfo =================================================================== --- branches/2015Q4/www/seamonkey/distinfo (revision 402339) +++ branches/2015Q4/www/seamonkey/distinfo (revision 402340) @@ -1,4 +1,4 @@ -SHA256 (seamonkey-2.33.1.source.tar.bz2) = b29779cfd4b334ed21a8265ec13327aa7f35ef2895c38a971e41f3e63c85af08 -SIZE (seamonkey-2.33.1.source.tar.bz2) = 203015246 +SHA256 (seamonkey-2.39.source.tar.xz) = c871de0a64cb60acf785df0ea3859b729353e5d1e3274947840386766859930e +SIZE (seamonkey-2.39.source.tar.xz) = 182627632 SHA256 (enigmail-1.8.2.tar.gz) = 1d2700799bc52aaa8e8c9f7a0f5111281ff9fbdffc093cdff070657d574eb2a6 SIZE (enigmail-1.8.2.tar.gz) = 1604159 Index: branches/2015Q4/www/seamonkey/files/patch-mozilla-media-mtransport-third_party-nICEr-src-util-mbslen.c =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-mozilla-media-mtransport-third_party-nICEr-src-util-mbslen.c (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-mozilla-media-mtransport-third_party-nICEr-src-util-mbslen.c (nonexistent) @@ -1,16 +0,0 @@ ---- 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 -+# if __DragonFly_version > 300502 -+# define HAVE_XLOCALE -+# endif -+#endif -+ - #ifdef HAVE_XLOCALE - #include - #endif /* HAVE_XLOCALE */ Property changes on: branches/2015Q4/www/seamonkey/files/patch-mozilla-media-mtransport-third_party-nICEr-src-util-mbslen.c ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-mozilla-media-webrtc-trunk-src-system_wrappers-source-spreadsortlib-spreadsort.hpp =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-mozilla-media-webrtc-trunk-src-system_wrappers-source-spreadsortlib-spreadsort.hpp (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-mozilla-media-webrtc-trunk-src-system_wrappers-source-spreadsortlib-spreadsort.hpp (nonexistent) @@ -1,16 +0,0 @@ ---- mozilla/media/webrtc/trunk/webrtc/system_wrappers/source/spreadsortlib/spreadsort.hpp~ -+++ mozilla/media/webrtc/trunk/webrtc/system_wrappers/source/spreadsortlib/spreadsort.hpp -@@ -21,6 +21,13 @@ Scott McMurray - #include "constants.hpp" - #include - -+#ifdef __FreeBSD__ -+# include -+# if __FreeBSD_version < 900506 -+# define getchar boost_getchar -+# endif -+#endif -+ - namespace boost { - namespace detail { - //This only works on unsigned data types Property changes on: branches/2015Q4/www/seamonkey/files/patch-mozilla-media-webrtc-trunk-src-system_wrappers-source-spreadsortlib-spreadsort.hpp ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-bug1112904 =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-bug1112904 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-bug1112904 (nonexistent) @@ -1,161 +0,0 @@ -diff --git a/c-sdk/config/FreeBSD.mk b/c-sdk/config/FreeBSD.mk ---- ldap/sdks/c-sdk/config/FreeBSD.mk -+++ ldap/sdks/c-sdk/config/FreeBSD.mk -@@ -79,8 +79,8 @@ DLL_SUFFIX = so.1.0 - endif - - DSO_CFLAGS = -fPIC --DSO_LDOPTS = -Bshareable -+DSO_LDOPTS = -shared -Wl,-soname,$(notdir $@) - --MKSHLIB = $(LD) $(DSO_LDOPTS) -+MKSHLIB = $(CC) $(DSO_LDOPTS) - - G++INCLUDES = -I/usr/include/g++ -diff --git a/c-sdk/configure b/c-sdk/configure ---- ldap/sdks/c-sdk/configure -+++ ldap/sdks/c-sdk/configure -@@ -4241,8 +4241,10 @@ EOF - #define DRAGONFLY 1 - EOF - -+ LD='$(CC)' -+ MKSHLIB='$(CC) $(DSO_LDOPTS) -o $@' - DSO_CFLAGS=-fPIC -- DSO_LDOPTS='-shared' -+ DSO_LDOPTS='-shared -Wl,-soname,$(notdir $@)' - ;; - - *-freebsd*) -@@ -4261,6 +4263,7 @@ EOF - #define HAVE_BSD_FLOCK 1 - EOF - -+ LD='$(CC)' - CFLAGS="$CFLAGS $(DSO_CFLAGS) -ansi -Wall" - MOZ_OBJFORMAT=`test -x /usr/bin/objformat && /usr/bin/objformat || echo elf` - if test "$MOZ_OBJFORMAT" = "elf"; then -@@ -4268,8 +4271,9 @@ EOF - else - DLL_SUFFIX=so.1.0 - fi -+ MKSHLIB='$(CC) $(DSO_LDOPTS) -o $@' - DSO_CFLAGS=-fPIC -- DSO_LDOPTS=-Bshareable -+ DSO_LDOPTS='-shared -Wl,-soname,$(notdir $@)' - ;; - - *-hpux*) -@@ -6512,8 +6516,15 @@ echo "configure:6510: checking whether $ - if test $? -eq 0; then - if test -z "`egrep -i '(unrecognize|unknown)' conftest.out | grep pthread`" && test -z "`egrep -i '(error|incorrect)' conftest.out`" ; then - ac_cv_have_dash_pthread=yes -- CFLAGS="$CFLAGS -pthread" -- CXXFLAGS="$CXXFLAGS -pthread" -+ case "$target_os" in -+ dragonfly*|freebsd*) -+# Freebsd doesn't use -pthread for compiles, it uses them for linking -+ ;; -+ *) -+ CFLAGS="$CFLAGS -pthread" -+ CXXFLAGS="$CXXFLAGS -pthread" -+ ;; -+ esac - fi - fi - rm -f conftest* -@@ -6542,7 +6553,22 @@ echo "configure:6526: checking whether $ - _PTHREAD_LDFLAGS= - fi - ;; -- *-freebsd*|*-openbsd*|*-bsdi*|*-netbsd*) -+ *-dragonfly*|*-freebsd*) -+ cat >> confdefs.h <<\EOF -+#define _REENTRANT 1 -+EOF -+ -+ cat >> confdefs.h <<\EOF -+#define _THREAD_SAFE 1 -+EOF -+ -+ if test "$ac_cv_have_dash_pthread" = "yes"; then -+ _PTHREAD_LDFLAGS="-pthread" -+ else -+ _PTHREAD_LDFLAGS="-lc_r" -+ fi -+ ;; -+ *-openbsd*|*-bsdi*|*-netbsd*) - cat >> confdefs.h <<\EOF - #define _THREAD_SAFE 1 - EOF -diff --git a/c-sdk/configure.in b/c-sdk/configure.in ---- ldap/sdks/c-sdk/configure.in -+++ ldap/sdks/c-sdk/configure.in -@@ -1225,8 +1225,10 @@ tools are selected during the Xcode/Deve - fi - AC_DEFINE(XP_UNIX) - AC_DEFINE(DRAGONFLY) -+ LD='$(CC)' -+ MKSHLIB='$(CC) $(DSO_LDOPTS) -o $@' - DSO_CFLAGS=-fPIC -- DSO_LDOPTS='-shared' -+ DSO_LDOPTS='-shared -Wl,-soname,$(notdir $@)' - ;; - - *-freebsd*) -@@ -1236,6 +1238,7 @@ tools are selected during the Xcode/Deve - AC_DEFINE(XP_UNIX) - AC_DEFINE(FREEBSD) - AC_DEFINE(HAVE_BSD_FLOCK) -+ LD='$(CC)' - CFLAGS="$CFLAGS $(DSO_CFLAGS) -ansi -Wall" - MOZ_OBJFORMAT=`test -x /usr/bin/objformat && /usr/bin/objformat || echo elf` - if test "$MOZ_OBJFORMAT" = "elf"; then -@@ -1243,8 +1246,9 @@ tools are selected during the Xcode/Deve - else - DLL_SUFFIX=so.1.0 - fi -+ MKSHLIB='$(CC) $(DSO_LDOPTS) -o $@' - DSO_CFLAGS=-fPIC -- DSO_LDOPTS=-Bshareable -+ DSO_LDOPTS='-shared -Wl,-soname,$(notdir $@)' - ;; - - *-hpux*) -@@ -2329,8 +2333,15 @@ if test -n "$USE_PTHREADS"; then - if test $? -eq 0; then - if test -z "`egrep -i '(unrecognize|unknown)' conftest.out | grep pthread`" && test -z "`egrep -i '(error|incorrect)' conftest.out`" ; then - ac_cv_have_dash_pthread=yes -- CFLAGS="$CFLAGS -pthread" -- CXXFLAGS="$CXXFLAGS -pthread" -+ case "$target_os" in -+ dragonfly*|freebsd*) -+# Freebsd doesn't use -pthread for compiles, it uses them for linking -+ ;; -+ *) -+ CFLAGS="$CFLAGS -pthread" -+ CXXFLAGS="$CXXFLAGS -pthread" -+ ;; -+ esac - fi - fi - rm -f conftest* -@@ -2361,7 +2372,17 @@ if test -n "$USE_PTHREADS"; then - _PTHREAD_LDFLAGS= - fi - ;; -- *-freebsd*|*-openbsd*|*-bsdi*|*-netbsd*) -+ *-dragonfly*|*-freebsd*) -+ AC_DEFINE(_REENTRANT) -+ AC_DEFINE(_THREAD_SAFE) -+ dnl -pthread links in -lc_r, so don't specify it explicitly. -+ if test "$ac_cv_have_dash_pthread" = "yes"; then -+ _PTHREAD_LDFLAGS="-pthread" -+ else -+ _PTHREAD_LDFLAGS="-lc_r" -+ fi -+ ;; -+ *-openbsd*|*-bsdi*|*-netbsd*) - AC_DEFINE(_THREAD_SAFE) - dnl -pthread links in -lc_r, so don't specify it explicitly. - if test "$ac_cv_have_dash_pthread" = "yes"; then Property changes on: branches/2015Q4/www/seamonkey/files/patch-bug1112904 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-mozilla_toolkit_mozapps_installer_packager_mk =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-mozilla_toolkit_mozapps_installer_packager_mk (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-mozilla_toolkit_mozapps_installer_packager_mk (nonexistent) @@ -1,13 +0,0 @@ -$OpenBSD: patch-toolkit_mozapps_installer_packager_mk,v 1.11 2012/06/11 15:29:56 landry Exp $ -install headers/idl/sdk libs only if xulrunner ---- mozilla/toolkit/mozapps/installer/packager.mk.orig Fri Jun 1 14:04:20 2012 -+++ mozilla/toolkit/mozapps/installer/packager.mk Tue Jun 5 07:55:51 2012 -@@ -886,7 +886,7 @@ endif - $(NSINSTALL) -D $(DESTDIR)$(bindir) - $(RM) -f $(DESTDIR)$(bindir)/$(MOZ_APP_NAME) - ln -s $(installdir)/$(MOZ_APP_NAME) $(DESTDIR)$(bindir) --ifdef INSTALL_SDK # Here comes the hard part -+ifeq ($(MOZ_APP_NAME),xulrunner) - $(NSINSTALL) -D $(DESTDIR)$(includedir) - (cd $(DIST)/include && tar $(TAR_CREATE_FLAGS) - .) | \ - (cd $(DESTDIR)$(includedir) && tar -xf -) Property changes on: branches/2015Q4/www/seamonkey/files/patch-mozilla_toolkit_mozapps_installer_packager_mk ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-bug1143411 =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-bug1143411 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-bug1143411 (nonexistent) @@ -1,27 +0,0 @@ -https://bugzilla.mozilla.org/show_bug.cgi?id=1143411 - -diff --git a/config/system-headers b/config/system-headers ---- mozilla/config/system-headers -+++ mozilla/config/system-headers -@@ -465,16 +465,17 @@ freetype/tttables.h - freetype/t1tables.h - freetype/ftlcdfil.h - freetype/ftsizes.h - freetype/ftadvanc.h - freetype/ftbitmap.h - freetype/ftxf86.h - freetype.h - ftcache.h -+ftfntfmt.h - ftglyph.h - ftsynth.h - ftoutln.h - ttnameid.h - tttables.h - t1tables.h - ftlcdfil.h - ftsizes.h - - - - Property changes on: branches/2015Q4/www/seamonkey/files/patch-bug1143411 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-bug1122547 =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-bug1122547 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-bug1122547 (nonexistent) @@ -1,20 +0,0 @@ -diff --git media/webrtc/trunk/webrtc/modules/video_coding/main/source/receiver.cc media/webrtc/trunk/webrtc/modules/video_coding/main/source/receiver.cc -index e68a104..a090241 100644 ---- mozilla/media/webrtc/trunk/webrtc/modules/video_coding/main/source/receiver.cc -+++ mozilla/media/webrtc/trunk/webrtc/modules/video_coding/main/source/receiver.cc -@@ -159,12 +159,13 @@ VCMEncodedFrame* VCMReceiver::FrameForDecoding( - // Assume that render timing errors are due to changes in the video stream. - if (next_render_time_ms < 0) { - timing_error = true; -- } else if (std::abs(next_render_time_ms - now_ms) > max_video_delay_ms_) { -+ } else if (std::abs(static_cast(next_render_time_ms - now_ms)) > -+ max_video_delay_ms_) { - WEBRTC_TRACE(webrtc::kTraceWarning, webrtc::kTraceVideoCoding, - VCMId(vcm_id_, receiver_id_), - "This frame is out of our delay bounds, resetting jitter " - "buffer: %d > %d", -- static_cast(std::abs(next_render_time_ms - now_ms)), -+ std::abs(static_cast(next_render_time_ms - now_ms)), - max_video_delay_ms_); - timing_error = true; - } else if (static_cast(timing_->TargetVideoDelay()) > Property changes on: branches/2015Q4/www/seamonkey/files/patch-bug1122547 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-bug1103858 =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-bug1103858 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-bug1103858 (nonexistent) @@ -1,42 +0,0 @@ -diff --git configure.in configure.in -index b2b45e7..dcfdfb7 100644 ---- mozilla/configure.in -+++ mozilla/configure.in -@@ -8346,7 +8346,7 @@ case "$OS_TARGET" in - NECKO_WIFI=1 - fi - ;; -- Darwin|FreeBSD|SunOS|WINNT) -+ Darwin|DragonFly|FreeBSD|SunOS|WINNT) - NECKO_WIFI=1 - ;; - Linux) -diff --git netwerk/wifi/moz.build netwerk/wifi/moz.build -index d4de063..3949380 100644 ---- mozilla/netwerk/wifi/moz.build -+++ mozilla/netwerk/wifi/moz.build -@@ -35,7 +35,7 @@ if CONFIG['OS_ARCH'] == 'Darwin': - UNIFIED_SOURCES += [ - 'osx_corewlan.mm', - ] --elif CONFIG['OS_ARCH'] == 'FreeBSD': -+elif CONFIG['OS_ARCH'] in ('DragonFly', 'FreeBSD'): - UNIFIED_SOURCES += [ - 'nsWifiScannerFreeBSD.cpp', - ] -diff --git netwerk/wifi/nsWifiScannerFreeBSD.cpp netwerk/wifi/nsWifiScannerFreeBSD.cpp -index bdf171e..4185d69 100644 ---- mozilla/netwerk/wifi/nsWifiScannerFreeBSD.cpp -+++ mozilla/netwerk/wifi/nsWifiScannerFreeBSD.cpp -@@ -13,7 +13,11 @@ - #include - #include - #include -+#ifdef __DragonFly__ -+#include -+#else - #include -+#endif - - #include - #include Property changes on: branches/2015Q4/www/seamonkey/files/patch-bug1103858 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-bug1125579 =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-bug1125579 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-bug1125579 (nonexistent) @@ -1,16 +0,0 @@ -diff --git js/src/jit/ExecutableAllocator.h js/src/jit/ExecutableAllocator.h -index d55c8ed..ab6188f 100644 ---- mozilla/js/src/jit/ExecutableAllocator.h -+++ mozilla/js/src/jit/ExecutableAllocator.h -@@ -405,6 +405,11 @@ public: - _flush_cache(reinterpret_cast(code), size, BCACHE); - #endif - } -+#elif defined(JS_CODEGEN_ARM) && (defined(__FreeBSD__) || defined(__NetBSD__)) -+ static void cacheFlush(void* code, size_t size) -+ { -+ __clear_cache(code, reinterpret_cast(code) + size); -+ } - #elif defined(JS_CODEGEN_ARM) && (defined(__linux__) || defined(ANDROID)) && defined(__GNUC__) - static void cacheFlush(void* code, size_t size) - { Property changes on: branches/2015Q4/www/seamonkey/files/patch-bug1125579 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-bug1125580 =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-bug1125580 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-bug1125580 (nonexistent) @@ -1,13 +0,0 @@ -diff --git js/src/jit/arm/Architecture-arm.cpp js/src/jit/arm/Architecture-arm.cpp -index fe1373b..76641aa 100644 ---- mozilla/js/src/jit/arm/Architecture-arm.cpp -+++ mozilla/js/src/jit/arm/Architecture-arm.cpp -@@ -16,7 +16,7 @@ - #include "jit/arm/Assembler-arm.h" - #include "jit/RegisterSets.h" - --#if defined(ANDROID) || defined(JS_ARM_SIMULATOR) -+#if !defined(__linux__) || defined(ANDROID) || defined(JS_ARM_SIMULATOR) - // The Android NDK and B2G do not include the hwcap.h kernel header, and it is not - // defined when building the simulator, so inline the header defines we need. - # define HWCAP_VFP (1 << 6) Property changes on: branches/2015Q4/www/seamonkey/files/patch-bug1125580 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-bug1128161 =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-bug1128161 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-bug1128161 (nonexistent) @@ -1,28 +0,0 @@ -commit 6af7f0e6 -Author: Chris Double -Date: Tue Feb 3 11:20:17 2015 +1300 - - Bug 1128161 - Fix build error when logging is disabled - r=ajones ---- - dom/media/mediasource/MediaSourceUtils.cpp | 2 -- - 1 file changed, 2 deletions(-) - -diff --git dom/media/mediasource/MediaSourceUtils.cpp dom/media/mediasource/MediaSourceUtils.cpp -index 44a40f5..83bba60 100644 ---- mozilla/dom/media/mediasource/MediaSourceUtils.cpp -+++ mozilla/dom/media/mediasource/MediaSourceUtils.cpp -@@ -11,7 +11,6 @@ - - namespace mozilla { - --#if defined(PR_LOGGING) - nsCString - DumpTimeRanges(dom::TimeRanges* aRanges) - { -@@ -31,6 +30,5 @@ DumpTimeRanges(dom::TimeRanges* aRanges) - - return dump; - } --#endif - - } // namespace mozilla Property changes on: branches/2015Q4/www/seamonkey/files/patch-bug1128161 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-bug899126 =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-bug899126 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-bug899126 (nonexistent) @@ -1,95 +0,0 @@ -commit 0f63381 -Author: Guilherme Goncalves -Date: Tue Nov 18 14:03:00 2014 -0800 - - Bug 899126 - Part 1 - Implement bin_unused for jemalloc3. r=glandium ---- - memory/build/mozjemalloc_compat.c | 57 ++++++++++++++++++++++++++++++++++++++- - 1 file changed, 56 insertions(+), 1 deletion(-) - -diff --git memory/build/mozjemalloc_compat.c memory/build/mozjemalloc_compat.c -index 70265a7..0a9b21a 100644 ---- mozilla/memory/build/mozjemalloc_compat.c -+++ mozilla/memory/build/mozjemalloc_compat.c -@@ -12,6 +12,8 @@ - #include "jemalloc_types.h" - #include "mozilla/Types.h" - -+#include -+ - #if defined(MOZ_NATIVE_JEMALLOC) - - MOZ_IMPORT_API int -@@ -47,6 +49,16 @@ je_(nallocm)(size_t *rsize, size_t size, int flags); - je_(mallctlbymib)(mib, miblen, &v, &sz, NULL, 0); \ - } while (0) - -+#define CTL_IJ_GET(n, v, i, j) do { \ -+ size_t mib[6]; \ -+ size_t miblen = sizeof(mib) / sizeof(mib[0]); \ -+ size_t sz = sizeof(v); \ -+ je_(mallctlnametomib)(n, mib, &miblen); \ -+ mib[2] = i; \ -+ mib[4] = j; \ -+ je_(mallctlbymib)(mib, miblen, &v, &sz, NULL, 0); \ -+} while (0) -+ - MOZ_MEMORY_API size_t - malloc_good_size_impl(size_t size) - { -@@ -61,6 +73,48 @@ malloc_good_size_impl(size_t size) - return size; - } - -+static size_t -+compute_bin_unused(unsigned int narenas) -+{ -+ size_t bin_unused = 0; -+ -+ uint32_t nregs; // number of regions per run in the j-th bin -+ size_t reg_size; // size of regions served by the j-th bin -+ size_t curruns; // number of runs belonging to a bin -+ size_t curregs; // number of allocated regions in a bin -+ -+ unsigned int nbins; // number of bins per arena -+ unsigned int i, j; -+ -+ // curruns and curregs are not defined for uninitialized arenas, -+ // so we skip them when computing bin_unused. However, initialized -+ // arenas are not guaranteed to be sequential, so we must test each -+ // one when iterating below. -+ bool initialized[100]; // should be narenas, but MSVC doesn't have VLAs -+ size_t isz = sizeof(initialized) / sizeof(initialized[0]); -+ -+ je_(mallctl)("arenas.initialized", initialized, &isz, NULL, 0); -+ CTL_GET("arenas.nbins", nbins); -+ -+ for (j = 0; j < nbins; j++) { -+ CTL_I_GET("arenas.bin.0.nregs", nregs, j); -+ CTL_I_GET("arenas.bin.0.size", reg_size, j); -+ -+ for (i = 0; i < narenas; i++) { -+ if (!initialized[i]) { -+ continue; -+ } -+ -+ CTL_IJ_GET("stats.arenas.0.bins.0.curruns", curruns, i, j); -+ CTL_IJ_GET("stats.arenas.0.bins.0.curregs", curregs, i, j); -+ -+ bin_unused += (nregs * curruns - curregs) * reg_size; -+ } -+ } -+ -+ return bin_unused; -+} -+ - MOZ_JEMALLOC_API void - jemalloc_stats_impl(jemalloc_stats_t *stats) - { -@@ -96,4 +150,5 @@ jemalloc_stats_impl(jemalloc_stats_t *stats) -- stats->bin_unused = 0; -+ -+ stats->bin_unused = compute_bin_unused(narenas); - } - - MOZ_JEMALLOC_API void Property changes on: branches/2015Q4/www/seamonkey/files/patch-bug899126 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-mozilla-memory-jemalloc-Makefile.in =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-mozilla-memory-jemalloc-Makefile.in (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-mozilla-memory-jemalloc-Makefile.in (nonexistent) @@ -1,10 +0,0 @@ ---- mozilla/memory/jemalloc/Makefile.in~ -+++ mozilla/memory/jemalloc/Makefile.in -@@ -12,3 +12,7 @@ include $(topsrcdir)/config/rules.mk - ifdef GNU_CC - CFLAGS += -std=gnu99 - endif -+ -+# XXX startup crash workaround for gcc47 on amd64 -+jemalloc.$(OBJ_SUFFIX): OS_CFLAGS := $(filter-out -O3 -Ofast,$(OS_CFLAGS)) -+jemalloc.$(OBJ_SUFFIX): MOZ_OPTIMIZE_FLAGS= Property changes on: branches/2015Q4/www/seamonkey/files/patch-mozilla-memory-jemalloc-Makefile.in ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-mozilla-memory-jemalloc-configure.ac =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-mozilla-memory-jemalloc-configure.ac (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-mozilla-memory-jemalloc-configure.ac (nonexistent) @@ -1,28 +0,0 @@ -commit 1aa25a3 -Author: Michael Neumann -Date: Tue Aug 5 03:06:02 2014 +0200 - - Support DragonFlyBSD - - Note that in contrast to FreeBSD, DragonFly does not work - with force_lazy_lock enabled. ---- - configure.ac | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git mozilla/memory/jemalloc/src/configure.ac mozilla/memory/jemalloc/src/configure.ac -index 645bd46..83c60ec 100644 ---- mozilla/memory/jemalloc/src/configure.ac -+++ mozilla/memory/jemalloc/src/configure.ac -@@ -283,6 +283,11 @@ case "${host}" in - AC_DEFINE([JEMALLOC_PURGE_MADVISE_FREE], [ ]) - force_lazy_lock="1" - ;; -+ *-*-dragonfly*) -+ CFLAGS="$CFLAGS" -+ abi="elf" -+ AC_DEFINE([JEMALLOC_PURGE_MADVISE_FREE], [ ]) -+ ;; - *-*-linux*) - CFLAGS="$CFLAGS" - CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" Property changes on: branches/2015Q4/www/seamonkey/files/patch-mozilla-memory-jemalloc-configure.ac ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-mozilla-config-baseconfig.mk =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-mozilla-config-baseconfig.mk (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-mozilla-config-baseconfig.mk (nonexistent) @@ -1,14 +0,0 @@ ---- mozilla/config/baseconfig.mk~ -+++ mozilla/config/baseconfig.mk -@@ -1,7 +1,7 @@ --includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) --idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) --installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) --sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION) -+includedir := $(includedir)/%%MOZILLA%% -+idldir = $(datadir)/idl/%%MOZILLA%% -+installdir = $(libdir)/%%MOZILLA%% -+sdkdir = $(libdir)/%%MOZILLA%% - ifndef TOP_DIST - TOP_DIST = dist - endif Property changes on: branches/2015Q4/www/seamonkey/files/patch-mozilla-config-baseconfig.mk ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-mozilla-media-libstagefright-foundation-AString.cpp =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-mozilla-media-libstagefright-foundation-AString.cpp (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-mozilla-media-libstagefright-foundation-AString.cpp (nonexistent) @@ -1,16 +0,0 @@ ---- mozilla/media/libstagefright/frameworks/av/media/libstagefright/foundation/AString.cpp~ -+++ mozilla/media/libstagefright/frameworks/av/media/libstagefright/foundation/AString.cpp -@@ -23,6 +23,13 @@ - #include "ADebug.h" - #include "AString.h" - -+#ifdef __FreeBSD__ -+# include -+# if __FreeBSD_version < 900506 -+# undef tolower -+# endif -+#endif -+ - namespace stagefright { - - // static Property changes on: branches/2015Q4/www/seamonkey/files/patch-mozilla-media-libstagefright-foundation-AString.cpp ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/extra-patch-bug1125514 =================================================================== --- branches/2015Q4/www/seamonkey/files/extra-patch-bug1125514 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/extra-patch-bug1125514 (revision 402340) @@ -1,39 +1,36 @@ changeset: 258513:ffbd5f5f46f1 user: Guilherme Goncalves date: Thu Aug 20 10:05:29 2015 +0900 summary: Bug 1125514 - Use jemalloc's metadata statistics to compute bookkeeping. r=glandium --- mozilla/memory/build/mozjemalloc_compat.c~ +++ mozilla/memory/build/mozjemalloc_compat.c -@@ -66,6 +66,7 @@ jemalloc_stats_impl(jemalloc_stats_t *st +@@ -136,6 +136,7 @@ jemalloc_stats_impl(jemalloc_stats_t *st { unsigned narenas; size_t active, allocated, mapped, page, pdirty; + size_t meta, ameta; size_t lg_chunk; // Refresh jemalloc's stats by updating its epoch, see ctl_refresh in -@@ -79,20 +80,19 @@ jemalloc_stats_impl(jemalloc_stats_t *st +@@ -149,17 +150,19 @@ jemalloc_stats_impl(jemalloc_stats_t *st CTL_GET("stats.active", active); CTL_GET("stats.allocated", allocated); CTL_GET("stats.mapped", mapped); + CTL_GET("stats.metadata", meta); CTL_GET("opt.lg_chunk", lg_chunk); +- CTL_GET("stats.bookkeeping", stats->bookkeeping); /* get the summation for all arenas, i == narenas */ CTL_I_GET("stats.arenas.0.pdirty", pdirty, narenas); + CTL_I_GET("stats.arenas.0.metadata.allocated", ameta, narenas); - stats->chunksize = 1 << lg_chunk; + stats->chunksize = (size_t) 1 << lg_chunk; stats->mapped = mapped; stats->allocated = allocated; stats->waste = active - allocated; stats->page_cache = pdirty * page; -- -- // We could get this value out of base.c::base_pages, but that really should -- // be an upstream change, so don't worry about it for now. -- stats->bookkeeping = 0; + stats->bookkeeping = meta - ameta; - stats->bin_unused = 0; + stats->bin_unused = compute_bin_unused(narenas); + stats->waste -= stats->bin_unused; } - Index: branches/2015Q4/www/seamonkey/files/patch-bug1021761 =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-bug1021761 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-bug1021761 (revision 402340) @@ -1,1102 +1,1102 @@ diff --git configure.in configure.in index 48e60c0..ec08417 100644 --- mozilla/configure.in +++ mozilla/configure.in @@ -5591,6 +5591,67 @@ fi AC_SUBST(MOZ_WEBM_ENCODER) dnl ================================== +dnl = Check OSS availability +dnl ================================== + +dnl If using Linux, Solaris or BSDs, ensure that OSS is available +case "$OS_TARGET" in +Linux|SunOS|DragonFly|FreeBSD|NetBSD|GNU/kFreeBSD) + MOZ_OSS=1 + ;; +esac + +MOZ_ARG_WITH_STRING(oss, +[ --with-oss[=PFX] Enable OpenSoundSystem support [installed at prefix PFX]], + OSSPREFIX=$withval) + +if test -n "$OSSPREFIX"; then + if test "$OSSPREFIX" != "no"; then + MOZ_OSS=1 + else + MOZ_OSS= + fi +fi + +_SAVE_CFLAGS=$CFLAGS +_SAVE_LIBS=$LIBS +if test -n "$MOZ_OSS"; then + dnl Prefer 4Front implementation + AC_MSG_CHECKING([MOZ_OSS_CFLAGS]) + if test "$OSSPREFIX" != "yes"; then + oss_conf=${OSSPREFIX%/usr}/etc/oss.conf + if test -f "$oss_conf"; then + . "$oss_conf" + else + OSSLIBDIR=$OSSPREFIX/lib/oss + fi + if test -d "$OSSLIBDIR"; then + MOZ_OSS_CFLAGS="$MOZ_OSS_CFLAGS -I$OSSLIBDIR/include" + fi + fi + AC_MSG_RESULT([$MOZ_OSS_CFLAGS]) + + CFLAGS="$CFLAGS $MOZ_OSS_CFLAGS" + MOZ_CHECK_HEADERS(sys/soundcard.h soundcard.h) + + if test "$ac_cv_header_sys_soundcard_h" != "yes" -a \ + "$ac_cv_header_soundcard_h" != "yes"; then + AC_MSG_ERROR([Need OSS for Ogg, Wave or WebM decoding on $OS_TARGET. Disable with --disable-ogg --disable-wave --disable-webm.]) + fi + + dnl Assume NetBSD implementation over SunAudio + AC_CHECK_LIB(ossaudio, _oss_ioctl, + [AC_DEFINE_UNQUOTED(CUBEB_OSS_DEFAULT_OUTPUT, "/dev/sound") + MOZ_OSS_LIBS="$MOZ_OSS_LIBS -lossaudio"]) +fi +CFLAGS=$_SAVE_CFLAGS +LIBS=$_SAVE_LIBS + +AC_SUBST(MOZ_OSS) +AC_SUBST_LIST(MOZ_OSS_CFLAGS) +AC_SUBST_LIST(MOZ_OSS_LIBS) + +dnl ================================== dnl = Check alsa availability on Linux dnl ================================== diff --git media/libcubeb/AUTHORS media/libcubeb/AUTHORS index b441e8a..950d9e5 100644 --- mozilla/media/libcubeb/AUTHORS +++ mozilla/media/libcubeb/AUTHORS @@ -4,3 +4,4 @@ Michael Wu Paul Adenot David Richards Sebastien Alaiwan +Evgeniy Vodolazskiy diff --git media/libcubeb/src/cubeb.c media/libcubeb/src/cubeb.c index 9c3adcc..45d765b 100644 --- mozilla/media/libcubeb/src/cubeb.c +++ mozilla/media/libcubeb/src/cubeb.c @@ -54,6 +54,9 @@ int opensl_init(cubeb ** context, char const * context_name); #if defined(USE_AUDIOTRACK) int audiotrack_init(cubeb ** context, char const * context_name); #endif +#if defined(USE_OSS) +int oss_init(cubeb ** context, char const * context_name); +#endif int validate_stream_params(cubeb_stream_params stream_params) @@ -120,6 +123,9 @@ cubeb_init(cubeb ** context, char const * context_name) #if defined(USE_AUDIOTRACK) audiotrack_init, #endif +#if defined(USE_OSS) + oss_init, +#endif }; int i; diff --git media/libcubeb/src/cubeb_alsa.c media/libcubeb/src/cubeb_alsa.c index a962553..1f780f4 100644 --- mozilla/media/libcubeb/src/cubeb_alsa.c +++ mozilla/media/libcubeb/src/cubeb_alsa.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include @@ -24,6 +25,50 @@ #define ALSA_PA_PLUGIN "ALSA <-> PulseAudio PCM I/O Plugin" +#ifdef DISABLE_LIBASOUND_DLOPEN +#define WRAP(x) x +#else +#define WRAP(x) cubeb_##x +#define MAKE_TYPEDEF(x) static typeof(x) * cubeb_##x +MAKE_TYPEDEF(snd_config); +MAKE_TYPEDEF(snd_config_add); +MAKE_TYPEDEF(snd_config_copy); +MAKE_TYPEDEF(snd_config_delete); +MAKE_TYPEDEF(snd_config_get_id); +MAKE_TYPEDEF(snd_config_get_string); +MAKE_TYPEDEF(snd_config_imake_integer); +MAKE_TYPEDEF(snd_config_search); +MAKE_TYPEDEF(snd_config_search_definition); +MAKE_TYPEDEF(snd_lib_error_set_handler); +MAKE_TYPEDEF(snd_pcm_avail_update); +MAKE_TYPEDEF(snd_pcm_close); +MAKE_TYPEDEF(snd_pcm_delay); +MAKE_TYPEDEF(snd_pcm_drain); +MAKE_TYPEDEF(snd_pcm_frames_to_bytes); +MAKE_TYPEDEF(snd_pcm_get_params); +/* snd_pcm_hw_params_alloca is actually a macro */ +/* MAKE_TYPEDEF(snd_pcm_hw_params_alloca); */ +MAKE_TYPEDEF(snd_pcm_hw_params_sizeof); +#define snd_pcm_hw_params_sizeof cubeb_snd_pcm_hw_params_sizeof +MAKE_TYPEDEF(snd_pcm_hw_params_any); +MAKE_TYPEDEF(snd_pcm_hw_params_get_channels_max); +MAKE_TYPEDEF(snd_pcm_hw_params_get_rate); +MAKE_TYPEDEF(snd_pcm_hw_params_set_rate_near); +MAKE_TYPEDEF(snd_pcm_nonblock); +MAKE_TYPEDEF(snd_pcm_open); +MAKE_TYPEDEF(snd_pcm_open_lconf); +MAKE_TYPEDEF(snd_pcm_pause); +MAKE_TYPEDEF(snd_pcm_poll_descriptors); +MAKE_TYPEDEF(snd_pcm_poll_descriptors_count); +MAKE_TYPEDEF(snd_pcm_poll_descriptors_revents); +MAKE_TYPEDEF(snd_pcm_recover); +MAKE_TYPEDEF(snd_pcm_set_params); +MAKE_TYPEDEF(snd_pcm_state); +MAKE_TYPEDEF(snd_pcm_writei); + +#undef MAKE_TYPEDEF +#endif + /* ALSA is not thread-safe. snd_pcm_t instances are individually protected by the owning cubeb_stream's mutex. snd_pcm_t creation and destruction is not thread-safe until ALSA 1.0.24 (see alsa-lib.git commit 91c9c8f1), @@ -64,6 +109,8 @@ struct cubeb { workaround is not required. */ snd_config_t * local_config; int is_pa; + + void * libasound; }; enum stream_state { @@ -262,7 +309,7 @@ alsa_refill_stream(cubeb_stream * stm) pthread_mutex_lock(&stm->mutex); - r = snd_pcm_poll_descriptors_revents(stm->pcm, stm->fds, stm->nfds, &revents); + r = WRAP(snd_pcm_poll_descriptors_revents)(stm->pcm, stm->fds, stm->nfds, &revents); if (r < 0 || revents != POLLOUT) { /* This should be a stream error; it makes no sense for poll(2) to wake for this stream and then have the stream report that it's not ready. @@ -271,10 +318,10 @@ alsa_refill_stream(cubeb_stream * stm) return RUNNING; } - avail = snd_pcm_avail_update(stm->pcm); + avail = WRAP(snd_pcm_avail_update)(stm->pcm); if (avail == -EPIPE) { - snd_pcm_recover(stm->pcm, avail, 1); - avail = snd_pcm_avail_update(stm->pcm); + WRAP(snd_pcm_recover)(stm->pcm, avail, 1); + avail = WRAP(snd_pcm_avail_update)(stm->pcm); } /* Failed to recover from an xrun, this stream must be broken. */ @@ -293,8 +340,8 @@ alsa_refill_stream(cubeb_stream * stm) available to write. If avail is still zero here, the stream must be in a funky state, so recover and try again. */ if (avail == 0) { - snd_pcm_recover(stm->pcm, -EPIPE, 1); - avail = snd_pcm_avail_update(stm->pcm); + WRAP(snd_pcm_recover)(stm->pcm, -EPIPE, 1); + avail = WRAP(snd_pcm_avail_update)(stm->pcm); if (avail <= 0) { pthread_mutex_unlock(&stm->mutex); stm->state_callback(stm, stm->user_ptr, CUBEB_STATE_ERROR); @@ -302,7 +349,7 @@ alsa_refill_stream(cubeb_stream * stm) } } - p = calloc(1, snd_pcm_frames_to_bytes(stm->pcm, avail)); + p = calloc(1, WRAP(snd_pcm_frames_to_bytes)(stm->pcm, avail)); assert(p); pthread_mutex_unlock(&stm->mutex); @@ -327,10 +374,10 @@ alsa_refill_stream(cubeb_stream * stm) b[i] *= stm->volume; } } - wrote = snd_pcm_writei(stm->pcm, p, got); + wrote = WRAP(snd_pcm_writei)(stm->pcm, p, got); if (wrote == -EPIPE) { - snd_pcm_recover(stm->pcm, wrote, 1); - wrote = snd_pcm_writei(stm->pcm, p, got); + WRAP(snd_pcm_recover)(stm->pcm, wrote, 1); + wrote = WRAP(snd_pcm_writei)(stm->pcm, p, got); } assert(wrote >= 0 && wrote == got); stm->write_position += wrote; @@ -342,7 +389,7 @@ alsa_refill_stream(cubeb_stream * stm) /* Fill the remaining buffer with silence to guarantee one full period has been written. */ - snd_pcm_writei(stm->pcm, (char *) p + got, avail - got); + WRAP(snd_pcm_writei)(stm->pcm, (char *) p + got, avail - got); set_timeout(&stm->drain_timeout, buffer_time * 1000); @@ -453,26 +500,26 @@ get_slave_pcm_node(snd_config_t * lconf, snd_config_t * root_pcm) slave_def = NULL; - r = snd_config_search(root_pcm, "slave", &slave_pcm); + r = WRAP(snd_config_search)(root_pcm, "slave", &slave_pcm); if (r < 0) { return NULL; } - r = snd_config_get_string(slave_pcm, &string); + r = WRAP(snd_config_get_string)(slave_pcm, &string); if (r >= 0) { - r = snd_config_search_definition(lconf, "pcm_slave", string, &slave_def); + r = WRAP(snd_config_search_definition)(lconf, "pcm_slave", string, &slave_def); if (r < 0) { return NULL; } } do { - r = snd_config_search(slave_def ? slave_def : slave_pcm, "pcm", &pcm); + r = WRAP(snd_config_search)(slave_def ? slave_def : slave_pcm, "pcm", &pcm); if (r < 0) { break; } - r = snd_config_get_string(slave_def ? slave_def : slave_pcm, &string); + r = WRAP(snd_config_get_string)(slave_def ? slave_def : slave_pcm, &string); if (r < 0) { break; } @@ -481,7 +528,7 @@ get_slave_pcm_node(snd_config_t * lconf, snd_config_t * root_pcm) if (r < 0 || r > (int) sizeof(node_name)) { break; } - r = snd_config_search(lconf, node_name, &pcm); + r = WRAP(snd_config_search)(lconf, node_name, &pcm); if (r < 0) { break; } @@ -490,7 +537,7 @@ get_slave_pcm_node(snd_config_t * lconf, snd_config_t * root_pcm) } while (0); if (slave_def) { - snd_config_delete(slave_def); + WRAP(snd_config_delete)(slave_def); } return NULL; @@ -513,22 +560,22 @@ init_local_config_with_workaround(char const * pcm_name) lconf = NULL; - if (snd_config == NULL) { + if (*WRAP(snd_config) == NULL) { return NULL; } - r = snd_config_copy(&lconf, snd_config); + r = WRAP(snd_config_copy)(&lconf, *WRAP(snd_config)); if (r < 0) { return NULL; } do { - r = snd_config_search_definition(lconf, "pcm", pcm_name, &pcm_node); + r = WRAP(snd_config_search_definition)(lconf, "pcm", pcm_name, &pcm_node); if (r < 0) { break; } - r = snd_config_get_id(pcm_node, &string); + r = WRAP(snd_config_get_id)(pcm_node, &string); if (r < 0) { break; } @@ -537,7 +584,7 @@ init_local_config_with_workaround(char const * pcm_name) if (r < 0 || r > (int) sizeof(node_name)) { break; } - r = snd_config_search(lconf, node_name, &pcm_node); + r = WRAP(snd_config_search)(lconf, node_name, &pcm_node); if (r < 0) { break; } @@ -548,12 +595,12 @@ init_local_config_with_workaround(char const * pcm_name) } /* Fetch the PCM node's type, and bail out if it's not the PulseAudio plugin. */ - r = snd_config_search(pcm_node, "type", &node); + r = WRAP(snd_config_search)(pcm_node, "type", &node); if (r < 0) { break; } - r = snd_config_get_string(node, &string); + r = WRAP(snd_config_get_string)(node, &string); if (r < 0) { break; } @@ -564,18 +611,18 @@ init_local_config_with_workaround(char const * pcm_name) /* Don't clobber an explicit existing handle_underrun value, set it only if it doesn't already exist. */ - r = snd_config_search(pcm_node, "handle_underrun", &node); + r = WRAP(snd_config_search)(pcm_node, "handle_underrun", &node); if (r != -ENOENT) { break; } /* Disable pcm_pulse's asynchronous underrun handling. */ - r = snd_config_imake_integer(&node, "handle_underrun", 0); + r = WRAP(snd_config_imake_integer)(&node, "handle_underrun", 0); if (r < 0) { break; } - r = snd_config_add(pcm_node, node); + r = WRAP(snd_config_add)(pcm_node, node); if (r < 0) { break; } @@ -583,7 +630,7 @@ init_local_config_with_workaround(char const * pcm_name) return lconf; } while (0); - snd_config_delete(lconf); + WRAP(snd_config_delete)(lconf); return NULL; } @@ -595,9 +642,9 @@ alsa_locked_pcm_open(snd_pcm_t ** pcm, snd_pcm_stream_t stream, snd_config_t * l pthread_mutex_lock(&cubeb_alsa_mutex); if (local_config) { - r = snd_pcm_open_lconf(pcm, CUBEB_ALSA_PCM_NAME, stream, SND_PCM_NONBLOCK, local_config); + r = WRAP(snd_pcm_open_lconf)(pcm, CUBEB_ALSA_PCM_NAME, stream, SND_PCM_NONBLOCK, local_config); } else { - r = snd_pcm_open(pcm, CUBEB_ALSA_PCM_NAME, stream, SND_PCM_NONBLOCK); + r = WRAP(snd_pcm_open)(pcm, CUBEB_ALSA_PCM_NAME, stream, SND_PCM_NONBLOCK); } pthread_mutex_unlock(&cubeb_alsa_mutex); @@ -610,7 +657,7 @@ alsa_locked_pcm_close(snd_pcm_t * pcm) int r; pthread_mutex_lock(&cubeb_alsa_mutex); - r = snd_pcm_close(pcm); + r = WRAP(snd_pcm_close)(pcm); pthread_mutex_unlock(&cubeb_alsa_mutex); return r; @@ -667,12 +714,65 @@ alsa_init(cubeb ** context, char const * context_name) pthread_attr_t attr; snd_pcm_t * dummy; + void * libasound = NULL; + +#ifndef DISABLE_LIBASOUND_DLOPEN + libasound = dlopen("libasound.so", RTLD_LAZY); + if (!libasound) { + return CUBEB_ERROR; + } + +#define LOAD(x) do { \ + cubeb_##x = dlsym(libasound, #x); \ + if (!cubeb_##x) { \ + dlclose(libasound); \ + return CUBEB_ERROR; \ + } \ + } while(0) + + LOAD(snd_config); + LOAD(snd_config_add); + LOAD(snd_config_copy); + LOAD(snd_config_delete); + LOAD(snd_config_get_id); + LOAD(snd_config_get_string); + LOAD(snd_config_imake_integer); + LOAD(snd_config_search); + LOAD(snd_config_search_definition); + LOAD(snd_lib_error_set_handler); + LOAD(snd_pcm_avail_update); + LOAD(snd_pcm_close); + LOAD(snd_pcm_delay); + LOAD(snd_pcm_drain); + LOAD(snd_pcm_frames_to_bytes); + LOAD(snd_pcm_get_params); + /* snd_pcm_hw_params_alloca is actually a macro */ + /* LOAD(snd_pcm_hw_params_alloca); */ + LOAD(snd_pcm_hw_params_sizeof); + LOAD(snd_pcm_hw_params_any); + LOAD(snd_pcm_hw_params_get_channels_max); + LOAD(snd_pcm_hw_params_get_rate); + LOAD(snd_pcm_hw_params_set_rate_near); + LOAD(snd_pcm_nonblock); + LOAD(snd_pcm_open); + LOAD(snd_pcm_open_lconf); + LOAD(snd_pcm_pause); + LOAD(snd_pcm_poll_descriptors); + LOAD(snd_pcm_poll_descriptors_count); + LOAD(snd_pcm_poll_descriptors_revents); + LOAD(snd_pcm_recover); + LOAD(snd_pcm_set_params); + LOAD(snd_pcm_state); + LOAD(snd_pcm_writei); + +#undef LOAD +#endif assert(context); *context = NULL; pthread_mutex_lock(&cubeb_alsa_mutex); if (!cubeb_alsa_error_handler_set) { - snd_lib_error_set_handler(silent_error_handler); + WRAP(snd_lib_error_set_handler)(silent_error_handler); cubeb_alsa_error_handler_set = 1; } pthread_mutex_unlock(&cubeb_alsa_mutex); @@ -680,6 +780,8 @@ alsa_init(cubeb ** context, char const * context_name) ctx = calloc(1, sizeof(*ctx)); assert(ctx); + ctx->libasound = libasound; + ctx->ops = &alsa_ops; r = pthread_mutex_init(&ctx->mutex, NULL); @@ -729,7 +831,7 @@ alsa_init(cubeb ** context, char const * context_name) config fails with EINVAL, the PA PCM is too old for this workaround. */ if (r == -EINVAL) { pthread_mutex_lock(&cubeb_alsa_mutex); - snd_config_delete(ctx->local_config); + WRAP(snd_config_delete)(ctx->local_config); pthread_mutex_unlock(&cubeb_alsa_mutex); ctx->local_config = NULL; } else if (r >= 0) { @@ -768,9 +870,13 @@ alsa_destroy(cubeb * ctx) pthread_mutex_destroy(&ctx->mutex); free(ctx->fds); + if (ctx->libasound) { + dlclose(ctx->libasound); + } + if (ctx->local_config) { pthread_mutex_lock(&cubeb_alsa_mutex); - snd_config_delete(ctx->local_config); + WRAP(snd_config_delete)(ctx->local_config); pthread_mutex_unlock(&cubeb_alsa_mutex); } @@ -838,7 +944,7 @@ alsa_stream_init(cubeb * ctx, cubeb_stream ** stream, char const * stream_name, return CUBEB_ERROR; } - r = snd_pcm_nonblock(stm->pcm, 1); + r = WRAP(snd_pcm_nonblock)(stm->pcm, 1); assert(r == 0); /* Ugly hack: the PA ALSA plugin allows buffer configurations that can't @@ -848,23 +954,23 @@ alsa_stream_init(cubeb * ctx, cubeb_stream ** stream, char const * stream_name, latency = latency < 500 ? 500 : latency; } - r = snd_pcm_set_params(stm->pcm, format, SND_PCM_ACCESS_RW_INTERLEAVED, - stm->params.channels, stm->params.rate, 1, - latency * 1000); + r = WRAP(snd_pcm_set_params)(stm->pcm, format, SND_PCM_ACCESS_RW_INTERLEAVED, + stm->params.channels, stm->params.rate, 1, + latency * 1000); if (r < 0) { alsa_stream_destroy(stm); return CUBEB_ERROR_INVALID_FORMAT; } - r = snd_pcm_get_params(stm->pcm, &stm->buffer_size, &stm->period_size); + r = WRAP(snd_pcm_get_params)(stm->pcm, &stm->buffer_size, &stm->period_size); assert(r == 0); - stm->nfds = snd_pcm_poll_descriptors_count(stm->pcm); + stm->nfds = WRAP(snd_pcm_poll_descriptors_count)(stm->pcm); assert(stm->nfds > 0); stm->saved_fds = calloc(stm->nfds, sizeof(struct pollfd)); assert(stm->saved_fds); - r = snd_pcm_poll_descriptors(stm->pcm, stm->saved_fds, stm->nfds); + r = WRAP(snd_pcm_poll_descriptors)(stm->pcm, stm->saved_fds, stm->nfds); assert((nfds_t) r == stm->nfds); r = pthread_cond_init(&stm->cond, NULL); @@ -895,7 +1001,7 @@ alsa_stream_destroy(cubeb_stream * stm) pthread_mutex_lock(&stm->mutex); if (stm->pcm) { if (stm->state == DRAINING) { - snd_pcm_drain(stm->pcm); + WRAP(snd_pcm_drain)(stm->pcm); } alsa_locked_pcm_close(stm->pcm); stm->pcm = NULL; -@@ -937,12 +1043,12 @@ alsa_get_max_channel_count(cubeb * ctx, uint32_t * max_channels) +@@ -938,12 +1044,12 @@ alsa_get_max_channel_count(cubeb * ctx, uint32_t * max_channels) return CUBEB_ERROR; } -- rv = snd_pcm_hw_params_any(stm->pcm, hw_params); -+ rv = WRAP(snd_pcm_hw_params_any)(stm->pcm, hw_params); - if (rv < 0) { +- r = snd_pcm_hw_params_any(stm->pcm, hw_params); ++ r = WRAP(snd_pcm_hw_params_any)(stm->pcm, hw_params); + if (r < 0) { return CUBEB_ERROR; } -- rv = snd_pcm_hw_params_get_channels_max(hw_params, max_channels); -+ rv = WRAP(snd_pcm_hw_params_get_channels_max)(hw_params, max_channels); - if (rv < 0) { +- r = snd_pcm_hw_params_get_channels_max(hw_params, max_channels); ++ r = WRAP(snd_pcm_hw_params_get_channels_max)(hw_params, max_channels); + if (r < 0) { return CUBEB_ERROR; } -@@ -962,34 +1068,34 @@ alsa_get_preferred_sample_rate(cubeb * ctx, uint32_t * rate) { +@@ -963,34 +1069,34 @@ alsa_get_preferred_sample_rate(cubeb * ctx, uint32_t * rate) { /* get a pcm, disabling resampling, so we get a rate the * hardware/dmix/pulse/etc. supports. */ -- rv = snd_pcm_open(&pcm, "", SND_PCM_STREAM_PLAYBACK | SND_PCM_NO_AUTO_RESAMPLE, 0); -+ rv = WRAP(snd_pcm_open)(&pcm, "", SND_PCM_STREAM_PLAYBACK | SND_PCM_NO_AUTO_RESAMPLE, 0); - if (rv < 0) { +- r = snd_pcm_open(&pcm, "default", SND_PCM_STREAM_PLAYBACK | SND_PCM_NO_AUTO_RESAMPLE, 0); ++ r = WRAP(snd_pcm_open)(&pcm, "default", SND_PCM_STREAM_PLAYBACK | SND_PCM_NO_AUTO_RESAMPLE, 0); + if (r < 0) { return CUBEB_ERROR; } -- rv = snd_pcm_hw_params_any(pcm, hw_params); -+ rv = WRAP(snd_pcm_hw_params_any)(pcm, hw_params); - if (rv < 0) { +- r = snd_pcm_hw_params_any(pcm, hw_params); ++ r = WRAP(snd_pcm_hw_params_any)(pcm, hw_params); + if (r < 0) { - snd_pcm_close(pcm); + WRAP(snd_pcm_close)(pcm); return CUBEB_ERROR; } -- rv = snd_pcm_hw_params_get_rate(hw_params, rate, &dir); -+ rv = WRAP(snd_pcm_hw_params_get_rate)(hw_params, rate, &dir); - if (rv >= 0) { +- r = snd_pcm_hw_params_get_rate(hw_params, rate, &dir); ++ r = WRAP(snd_pcm_hw_params_get_rate)(hw_params, rate, &dir); + if (r >= 0) { /* There is a default rate: use it. */ - snd_pcm_close(pcm); + WRAP(snd_pcm_close)(pcm); return CUBEB_OK; } /* Use a common rate, alsa may adjust it based on hw/etc. capabilities. */ *rate = 44100; -- rv = snd_pcm_hw_params_set_rate_near(pcm, hw_params, rate, NULL); -+ rv = WRAP(snd_pcm_hw_params_set_rate_near)(pcm, hw_params, rate, NULL); - if (rv < 0) { +- r = snd_pcm_hw_params_set_rate_near(pcm, hw_params, rate, NULL); ++ r = WRAP(snd_pcm_hw_params_set_rate_near)(pcm, hw_params, rate, NULL); + if (r < 0) { - snd_pcm_close(pcm); + WRAP(snd_pcm_close)(pcm); return CUBEB_ERROR; } - snd_pcm_close(pcm); + WRAP(snd_pcm_close)(pcm); return CUBEB_OK; } @@ -1013,7 +1119,7 @@ alsa_stream_start(cubeb_stream * stm) ctx = stm->context; pthread_mutex_lock(&stm->mutex); - snd_pcm_pause(stm->pcm, 0); + WRAP(snd_pcm_pause)(stm->pcm, 0); gettimeofday(&stm->last_activity, NULL); pthread_mutex_unlock(&stm->mutex); @@ -1047,7 +1153,7 @@ alsa_stream_stop(cubeb_stream * stm) pthread_mutex_unlock(&ctx->mutex); pthread_mutex_lock(&stm->mutex); - snd_pcm_pause(stm->pcm, 1); + WRAP(snd_pcm_pause)(stm->pcm, 1); pthread_mutex_unlock(&stm->mutex); return CUBEB_OK; @@ -1063,8 +1169,8 @@ alsa_stream_get_position(cubeb_stream * stm, uint64_t * position) pthread_mutex_lock(&stm->mutex); delay = -1; - if (snd_pcm_state(stm->pcm) != SND_PCM_STATE_RUNNING || - snd_pcm_delay(stm->pcm, &delay) != 0) { + if (WRAP(snd_pcm_state)(stm->pcm) != SND_PCM_STATE_RUNNING || + WRAP(snd_pcm_delay)(stm->pcm, &delay) != 0) { *position = stm->last_position; pthread_mutex_unlock(&stm->mutex); return CUBEB_OK; @@ -1089,7 +1195,7 @@ alsa_stream_get_latency(cubeb_stream * stm, uint32_t * latency) snd_pcm_sframes_t delay; /* This function returns the delay in frames until a frame written using snd_pcm_writei is sent to the DAC. The DAC delay should be < 1ms anyways. */ - if (snd_pcm_delay(stm->pcm, &delay)) { + if (WRAP(snd_pcm_delay)(stm->pcm, &delay)) { return CUBEB_ERROR; } diff --git media/libcubeb/src/cubeb_oss.c media/libcubeb/src/cubeb_oss.c new file mode 100644 index 0000000..5e38e27 --- /dev/null +++ mozilla/media/libcubeb/src/cubeb_oss.c @@ -0,0 +1,402 @@ +/* + * Copyright © 2014 Mozilla Foundation + * + * This program is made available under an ISC-style license. See the + * accompanying file LICENSE for details. + */ +#if defined(HAVE_SYS_SOUNDCARD_H) +#include +#else +#include +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "cubeb/cubeb.h" +#include "cubeb-internal.h" + +#ifndef CUBEB_OSS_DEFAULT_OUTPUT +#define CUBEB_OSS_DEFAULT_OUTPUT "/dev/dsp" +#endif + +#define OSS_BUFFER_SIZE 1024 + +struct cubeb { + struct cubeb_ops const * ops; +}; + +struct cubeb_stream { + cubeb * context; + + cubeb_data_callback data_callback; + cubeb_state_callback state_callback; + void * user_ptr; + float volume; + float panning; + + pthread_mutex_t state_mutex; + pthread_cond_t state_cond; + + int running; + int stopped; + int floating; + + /* These two vars are needed to support old versions of OSS */ + unsigned int position_bytes; + unsigned int last_position_bytes; + + uint64_t written_frags; /* The number of fragments written to /dev/dsp */ + uint64_t missed_frags; /* fragments output with stopped stream */ + + cubeb_stream_params params; + int fd; + pthread_t th; +}; + +static struct cubeb_ops const oss_ops; + +int oss_init(cubeb ** context, char const * context_name) +{ + cubeb* ctx = (cubeb*)malloc(sizeof(cubeb)); + ctx->ops = &oss_ops; + *context = ctx; + return CUBEB_OK; +} + +static void oss_destroy(cubeb *ctx) +{ + free(ctx); +} + +static char const * oss_get_backend_id(cubeb * context) +{ + static char oss_name[] = "oss"; + return oss_name; +} + +static int oss_get_max_channel_count(cubeb * ctx, uint32_t * max_channels) +{ + *max_channels = 2; /* Let's support only stereo for now */ + return CUBEB_OK; +} + +static int oss_get_min_latency(cubeb * context, cubeb_stream_params params, + uint32_t * latency_ms) +{ + /* 40ms is a big enough number to work ok */ + *latency_ms = 40; + return CUBEB_OK; +} + +static int oss_get_preferred_sample_rate(cubeb *context, uint32_t * rate) +{ + /* 48000 seems a prefered choice for most audio devices + * and a good choice for OSS */ + *rate = 48000; + return CUBEB_OK; +} + +static void run_state_callback(cubeb_stream *stream, cubeb_state state) +{ + if (stream->state_callback) { + stream->state_callback(stream, stream->user_ptr, state); + } +} + +static long run_data_callback(cubeb_stream *stream, void *buffer, long nframes) +{ + long got = 0; + pthread_mutex_lock(&stream->state_mutex); + if (stream->data_callback && stream->running && !stream->stopped) { + pthread_mutex_unlock(&stream->state_mutex); + got = stream->data_callback(stream, stream->user_ptr, buffer, nframes); + } else { + pthread_mutex_unlock(&stream->state_mutex); + } + return got; +} + +static void apply_volume(int16_t* buffer, unsigned int n, + float volume, float panning) +{ + float left = volume; + float right = volume; + unsigned int i; + int pan[2]; + if (panning<0) { + right *= (1+panning); + } else { + left *= (1-panning); + } + pan[0] = 128.0*left; + pan[1] = 128.0*right; + for(i=0; irunning) { + pthread_mutex_lock(&stream->state_mutex); + if (stream->stopped) { + pthread_mutex_unlock(&stream->state_mutex); + run_state_callback(stream, CUBEB_STATE_STOPPED); + pthread_mutex_lock(&stream->state_mutex); + while (stream->stopped) { + pthread_cond_wait(&stream->state_cond, &stream->state_mutex); + } + pthread_mutex_unlock(&stream->state_mutex); + run_state_callback(stream, CUBEB_STATE_STARTED); + continue; + } + pthread_mutex_unlock(&stream->state_mutex); + if (stream->floating) { + got = run_data_callback(stream, f_buffer, + OSS_BUFFER_SIZE/stream->params.channels); + for (i=0; i<((unsigned long)got)*stream->params.channels; i++) { + buffer[i] = f_buffer[i]*32767.0; + } + } else { + got = run_data_callback(stream, buffer, + OSS_BUFFER_SIZE/stream->params.channels); + } + apply_volume(buffer, got*stream->params.channels, + stream->volume, stream->panning); + if (got<0) { + run_state_callback(stream, CUBEB_STATE_ERROR); + break; + } + if (!got) { + run_state_callback(stream, CUBEB_STATE_DRAINED); + } + if (got) { + size_t i = 0; + size_t s = got*stream->params.channels*sizeof(int16_t); + while (i < s) { + ssize_t n = write(stream->fd, ((char*)buffer) + i, s - i); + if (n<=0) { + run_state_callback(stream, CUBEB_STATE_ERROR); + break; + } + i+=n; + } + stream->written_frags+=got; + } + } + return NULL; +} + +static void oss_try_set_latency(cubeb_stream* stream, unsigned int latency) +{ + unsigned int latency_bytes, n_frag; + int frag; + /* fragment size of 1024 is a good choice with good chances to be accepted */ + unsigned int frag_size=1024; + unsigned int frag_log=10; /* 2^frag_log = frag_size */ + latency_bytes = + latency*stream->params.rate*stream->params.channels*sizeof(uint16_t)/1000; + n_frag = latency_bytes>>frag_log; + frag = (n_frag<<16) | frag_log; + /* Even if this fails we wish to continue, not checking for errors */ + ioctl(stream->fd, SNDCTL_DSP_SETFRAGMENT, &frag); +} + +static int oss_stream_init(cubeb * context, cubeb_stream ** stm, + char const * stream_name, + cubeb_stream_params stream_params, + unsigned int latency, + cubeb_data_callback data_callback, + cubeb_state_callback state_callback, void * user_ptr) +{ + cubeb_stream* stream = (cubeb_stream*)malloc(sizeof(cubeb_stream)); + stream->context = context; + stream->data_callback = data_callback; + stream->state_callback = state_callback; + stream->user_ptr = user_ptr; + + if ((stream->fd = open(CUBEB_OSS_DEFAULT_OUTPUT, O_WRONLY)) == -1) { + free(stream); + return CUBEB_ERROR; + } +#define SET(what, to) do { unsigned int i = to; \ + int j = ioctl(stream->fd, what, &i); \ + if (j == -1 || i != to) { \ + close(stream->fd); \ + free(stream); \ + return CUBEB_ERROR_INVALID_FORMAT; } } while (0) + + stream->params = stream_params; + stream->volume = 1.0; + stream->panning = 0.0; + + oss_try_set_latency(stream, latency); + + stream->floating = 0; + SET(SNDCTL_DSP_CHANNELS, stream_params.channels); + SET(SNDCTL_DSP_SPEED, stream_params.rate); + switch (stream_params.format) { + case CUBEB_SAMPLE_S16LE: + SET(SNDCTL_DSP_SETFMT, AFMT_S16_LE); + break; + case CUBEB_SAMPLE_S16BE: + SET(SNDCTL_DSP_SETFMT, AFMT_S16_BE); + break; + case CUBEB_SAMPLE_FLOAT32LE: + SET(SNDCTL_DSP_SETFMT, AFMT_S16_NE); + stream->floating = 1; + break; + default: + close(stream->fd); + free(stream); + return CUBEB_ERROR; + } + + + pthread_mutex_init(&stream->state_mutex, NULL); + pthread_cond_init(&stream->state_cond, NULL); + + stream->running = 1; + stream->stopped = 1; + stream->position_bytes = 0; + stream->last_position_bytes = 0; + stream->written_frags = 0; + stream->missed_frags = 0; + + pthread_create(&stream->th, NULL, writer, (void*)stream); + + *stm = stream; + + return CUBEB_OK; +} + +static void oss_stream_destroy(cubeb_stream * stream) +{ + pthread_mutex_lock(&stream->state_mutex); + + stream->running = 0; + stream->stopped = 0; + pthread_cond_signal(&stream->state_cond); + + pthread_mutex_unlock(&stream->state_mutex); + + pthread_join(stream->th, NULL); + + pthread_mutex_destroy(&stream->state_mutex); + pthread_cond_destroy(&stream->state_cond); + close(stream->fd); + free(stream); +} + +static int oss_stream_get_latency(cubeb_stream * stream, uint32_t * latency) +{ + if (ioctl(stream->fd, SNDCTL_DSP_GETODELAY, latency)==-1) { + return CUBEB_ERROR; + } + /* Convert latency from bytes to frames */ + *latency /= stream->params.channels*sizeof(int16_t); + return CUBEB_OK; +} + + +static int oss_stream_current_optr(cubeb_stream * stream, uint64_t * position) +{ + count_info ci; + /* Unfortunately, this ioctl is only available in OSS 4.x */ +#ifdef SNDCTL_DSP_CURRENT_OPTR + oss_count_t count; + if (ioctl(stream->fd, SNDCTL_DSP_CURRENT_OPTR, &count) != -1) { + *position = count.samples;// + count.fifo_samples; + return CUBEB_OK; + } +#endif + /* Fall back to this ioctl in case the previous one fails */ + if (ioctl(stream->fd, SNDCTL_DSP_GETOPTR, &ci) == -1) { + return CUBEB_ERROR; + } + /* ci.bytes is only 32 bit and will start to wrap after arithmetic overflow */ + stream->position_bytes += ci.bytes - stream->last_position_bytes; + stream->last_position_bytes = ci.bytes; + *position = stream->position_bytes/stream->params.channels/sizeof(int16_t); + return CUBEB_OK; +} + +static int oss_stream_get_position(cubeb_stream * stream, uint64_t * position) +{ + if ( oss_stream_current_optr(stream, position) == CUBEB_OK ){ + *position -= stream->missed_frags; + return CUBEB_OK; + } + /* If no correct method to get position works we resort to this */ + *position = stream->written_frags; + return CUBEB_OK; +} + + +static int oss_stream_start(cubeb_stream * stream) +{ + pthread_mutex_lock(&stream->state_mutex); + if (stream->stopped) { + uint64_t ptr; + oss_stream_current_optr(stream, &ptr); + stream->missed_frags = ptr - stream->written_frags; + stream->stopped = 0; + pthread_cond_signal(&stream->state_cond); + } + pthread_mutex_unlock(&stream->state_mutex); + return CUBEB_OK; +} + +static int oss_stream_stop(cubeb_stream * stream) +{ + pthread_mutex_lock(&stream->state_mutex); + stream->stopped = 1; + pthread_mutex_unlock(&stream->state_mutex); + return CUBEB_OK; +} + +int oss_stream_set_panning(cubeb_stream * stream, float panning) +{ + if (stream->params.channels == 2) { + stream->panning=panning; + } + return CUBEB_OK; +} + +int oss_stream_set_volume(cubeb_stream * stream, float volume) +{ + stream->volume=volume; + return CUBEB_OK; +} + +static struct cubeb_ops const oss_ops = { + .init = oss_init, + .get_backend_id = oss_get_backend_id, + .get_max_channel_count = oss_get_max_channel_count, + .get_min_latency = oss_get_min_latency, + .get_preferred_sample_rate = oss_get_preferred_sample_rate, + .destroy = oss_destroy, + .stream_init = oss_stream_init, + .stream_destroy = oss_stream_destroy, + .stream_start = oss_stream_start, + .stream_stop = oss_stream_stop, + .stream_get_position = oss_stream_get_position, + .stream_get_latency = oss_stream_get_latency, + .stream_set_volume = oss_stream_set_volume, + .stream_set_panning = oss_stream_set_panning, + .stream_get_current_device = NULL, + .stream_device_destroy = NULL, + .stream_register_device_changed_callback = NULL +}; diff --git media/libcubeb/src/moz.build media/libcubeb/src/moz.build index 8b7a0dd..31212ce 100644 --- mozilla/media/libcubeb/src/moz.build +++ mozilla/media/libcubeb/src/moz.build @@ -17,6 +17,12 @@ if CONFIG['MOZ_ALSA']: ] DEFINES['USE_ALSA'] = True +if CONFIG['MOZ_OSS']: + SOURCES += [ + 'cubeb_oss.c', + ] + DEFINES['USE_OSS'] = True + if CONFIG['MOZ_PULSEAUDIO']: SOURCES += [ 'cubeb_pulse.c', @@ -75,5 +81,6 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk': FAIL_ON_WARNINGS = True +CFLAGS += CONFIG['MOZ_OSS_CFLAGS'] CFLAGS += CONFIG['MOZ_ALSA_CFLAGS'] CFLAGS += CONFIG['MOZ_PULSEAUDIO_CFLAGS'] -diff --git media/webrtc/signaling/test/moz.build media/webrtc/signaling/test/moz.build +diff --git media/webrtc/signaling/test/common.build media/webrtc/signaling/test/common.build index 991f03f..3d99eb5 100644 ---- mozilla/media/webrtc/signaling/test/moz.build -+++ mozilla/media/webrtc/signaling/test/moz.build -@@ -112,8 +112,8 @@ if CONFIG['JS_SHARED_LIBRARY']: +--- mozilla/media/webrtc/signaling/test/common.build ++++ mozilla/media/webrtc/signaling/test/common.build +@@ -102,8 +102,8 @@ USE_LIBS += ['mozglue'] OS_LIBS += CONFIG['MOZ_WEBRTC_X11_LIBS'] OS_LIBS += CONFIG['REALTIME_LIBS'] -if CONFIG['MOZ_ALSA']: - OS_LIBS += CONFIG['MOZ_ALSA_LIBS'] +if CONFIG['MOZ_OSS']: + OS_LIBS += CONFIG['MOZ_OSS_LIBS'] if CONFIG['MOZ_NATIVE_JPEG']: OS_LIBS += CONFIG['MOZ_JPEG_LIBS'] diff --git toolkit/library/moz.build toolkit/library/moz.build index e191f13..4fb268a 100644 --- mozilla/toolkit/library/moz.build +++ mozilla/toolkit/library/moz.build @@ -234,8 +234,8 @@ if CONFIG['MOZ_NATIVE_LIBVPX']: if not CONFIG['MOZ_TREE_PIXMAN']: OS_LIBS += CONFIG['MOZ_PIXMAN_LIBS'] -if CONFIG['MOZ_ALSA']: - OS_LIBS += CONFIG['MOZ_ALSA_LIBS'] +if CONFIG['MOZ_OSS']: + OS_LIBS += CONFIG['MOZ_OSS_LIBS'] if CONFIG['HAVE_CLOCK_MONOTONIC']: OS_LIBS += CONFIG['REALTIME_LIBS'] Index: branches/2015Q4/www/seamonkey/files/patch-bug292127 =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-bug292127 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-bug292127 (revision 402340) @@ -1,232 +1,232 @@ ---- ldap/sdks/c-sdk/ldap/include/ldap.h~ -+++ ldap/sdks/c-sdk/ldap/include/ldap.h +--- ldap/c-sdk/include/ldap.h~ ++++ ldap/c-sdk/include/ldap.h @@ -40,6 +40,229 @@ #ifndef _LDAP_H #define _LDAP_H +/* rename symbols to not clash with openldap (bug 292127) */ +#define ldap_abandon moz_ldap_abandon +#define ldap_abandon_ext moz_ldap_abandon_ext +#define ldap_abandoned moz_ldap_abandoned +#define ldap_add moz_ldap_add +#define ldap_add_ext moz_ldap_add_ext +#define ldap_add_ext_s moz_ldap_add_ext_s +#define ldap_add_result_entry moz_ldap_add_result_entry +#define ldap_add_s moz_ldap_add_s +#define ldap_ber_free moz_ldap_ber_free +#define ldap_bind moz_ldap_bind +#define ldap_bind_s moz_ldap_bind_s +#define ldap_build_filter moz_ldap_build_filter +#define ldap_cache_flush moz_ldap_cache_flush +#define ldap_charray_add moz_ldap_charray_add +#define ldap_charray_dup moz_ldap_charray_dup +#define ldap_charray_free moz_ldap_charray_free +#define ldap_charray_inlist moz_ldap_charray_inlist +#define ldap_charray_merge moz_ldap_charray_merge +#define ldap_charray_position moz_ldap_charray_position +#define ldap_compare moz_ldap_compare +#define ldap_compare_ext moz_ldap_compare_ext +#define ldap_compare_ext_s moz_ldap_compare_ext_s +#define ldap_compare_s moz_ldap_compare_s +#define ldap_control_free moz_ldap_control_free +#define ldap_controls_free moz_ldap_controls_free +#define ldap_count_entries moz_ldap_count_entries +#define ldap_count_messages moz_ldap_count_messages +#define ldap_count_references moz_ldap_count_references +#define ldap_count_values moz_ldap_count_values +#define ldap_count_values_len moz_ldap_count_values_len +#define ldap_create_authzid_control moz_ldap_create_authzid_control +#define ldap_create_filter moz_ldap_create_filter +#define ldap_create_geteffectiveRights_control moz_ldap_create_geteffectiveRights_control +#define ldap_create_passwordpolicy_control moz_ldap_create_passwordpolicy_control +#define ldap_create_passwordpolicy_control_ext moz_ldap_create_passwordpolicy_control_ext +#define ldap_create_persistentsearch_control moz_ldap_create_persistentsearch_control +#define ldap_create_proxiedauth_control moz_ldap_create_proxiedauth_control +#define ldap_create_proxyauth_control moz_ldap_create_proxyauth_control +#define ldap_create_sort_control moz_ldap_create_sort_control +#define ldap_create_sort_keylist moz_ldap_create_sort_keylist +#define ldap_create_userstatus_control moz_ldap_create_userstatus_control +#define ldap_create_virtuallist_control moz_ldap_create_virtuallist_control +#define ldap_delete moz_ldap_delete +#define ldap_delete_ext moz_ldap_delete_ext +#define ldap_delete_ext_s moz_ldap_delete_ext_s +#define ldap_delete_result_entry moz_ldap_delete_result_entry +#define ldap_delete_s moz_ldap_delete_s +#define ldap_dn2ufn moz_ldap_dn2ufn +#define ldap_entry2html moz_ldap_entry2html +#define ldap_entry2html_search moz_ldap_entry2html_search +#define ldap_entry2text moz_ldap_entry2text +#define ldap_entry2text_search moz_ldap_entry2text_search +#define ldap_err2string moz_ldap_err2string +#define ldap_errlist moz_ldap_errlist +#define ldap_explode moz_ldap_explode +#define ldap_explode_dn moz_ldap_explode_dn +#define ldap_explode_dns moz_ldap_explode_dns +#define ldap_explode_rdn moz_ldap_explode_rdn +#define ldap_extended_operation moz_ldap_extended_operation +#define ldap_extended_operation_s moz_ldap_extended_operation_s +#define ldap_find_control moz_ldap_find_control +#define ldap_first_attribute moz_ldap_first_attribute +#define ldap_first_disptmpl moz_ldap_first_disptmpl +#define ldap_first_entry moz_ldap_first_entry +#define ldap_first_message moz_ldap_first_message +#define ldap_first_reference moz_ldap_first_reference +#define ldap_first_searchobj moz_ldap_first_searchobj +#define ldap_first_tmplcol moz_ldap_first_tmplcol +#define ldap_first_tmplrow moz_ldap_first_tmplrow +#define ldap_free_friendlymap moz_ldap_free_friendlymap +#define ldap_free_searchprefs moz_ldap_free_searchprefs +#define ldap_free_sort_keylist moz_ldap_free_sort_keylist +#define ldap_free_templates moz_ldap_free_templates +#define ldap_free_urldesc moz_ldap_free_urldesc +#define ldap_friendly_name moz_ldap_friendly_name +#define ldap_get_dn moz_ldap_get_dn +#define ldap_get_entry_controls moz_ldap_get_entry_controls +#define ldap_get_lang_values moz_ldap_get_lang_values +#define ldap_get_lang_values_len moz_ldap_get_lang_values_len +#define ldap_get_lderrno moz_ldap_get_lderrno +#define ldap_get_option moz_ldap_get_option +#define ldap_get_values moz_ldap_get_values +#define ldap_get_values_len moz_ldap_get_values_len +#define ldap_getfilter_free moz_ldap_getfilter_free +#define ldap_getfirstfilter moz_ldap_getfirstfilter +#define ldap_getnextfilter moz_ldap_getnextfilter +#define ldap_init moz_ldap_init +#define ldap_init_getfilter moz_ldap_init_getfilter +#define ldap_init_getfilter_buf moz_ldap_init_getfilter_buf +#define ldap_init_searchprefs moz_ldap_init_searchprefs +#define ldap_init_searchprefs_buf moz_ldap_init_searchprefs_buf +#define ldap_init_templates moz_ldap_init_templates +#define ldap_init_templates_buf moz_ldap_init_templates_buf +#define ldap_is_dns_dn moz_ldap_is_dns_dn +#define ldap_is_ldap_url moz_ldap_is_ldap_url +#define ldap_keysort_entries moz_ldap_keysort_entries +#define ldap_ld_free moz_ldap_ld_free +#define ldap_memcache_abandon moz_ldap_memcache_abandon +#define ldap_memcache_append moz_ldap_memcache_append +#define ldap_memcache_createkey moz_ldap_memcache_createkey +#define ldap_memcache_destroy moz_ldap_memcache_destroy +#define ldap_memcache_flush moz_ldap_memcache_flush +#define ldap_memcache_flush_results moz_ldap_memcache_flush_results +#define ldap_memcache_get moz_ldap_memcache_get +#define ldap_memcache_init moz_ldap_memcache_init +#define ldap_memcache_new moz_ldap_memcache_new +#define ldap_memcache_result moz_ldap_memcache_result +#define ldap_memcache_set moz_ldap_memcache_set +#define ldap_memcache_update moz_ldap_memcache_update +#define ldap_memfree moz_ldap_memfree +#define ldap_modify moz_ldap_modify +#define ldap_modify_ext moz_ldap_modify_ext +#define ldap_modify_ext_s moz_ldap_modify_ext_s +#define ldap_modify_s moz_ldap_modify_s +#define ldap_modrdn moz_ldap_modrdn +#define ldap_modrdn2 moz_ldap_modrdn2 +#define ldap_modrdn2_s moz_ldap_modrdn2_s +#define ldap_modrdn_s moz_ldap_modrdn_s +#define ldap_mods_free moz_ldap_mods_free +#define ldap_msgdelete moz_ldap_msgdelete +#define ldap_msgfree moz_ldap_msgfree +#define ldap_msgid moz_ldap_msgid +#define ldap_msgtype moz_ldap_msgtype +#define ldap_multisort_entries moz_ldap_multisort_entries +#define ldap_name2template moz_ldap_name2template +#define ldap_next_attribute moz_ldap_next_attribute +#define ldap_next_disptmpl moz_ldap_next_disptmpl +#define ldap_next_entry moz_ldap_next_entry +#define ldap_next_message moz_ldap_next_message +#define ldap_next_reference moz_ldap_next_reference +#define ldap_next_searchobj moz_ldap_next_searchobj +#define ldap_next_tmplcol moz_ldap_next_tmplcol +#define ldap_next_tmplrow moz_ldap_next_tmplrow +#define ldap_oc2template moz_ldap_oc2template +#define ldap_open moz_ldap_open +#define ldap_parse_authzid_control moz_ldap_parse_authzid_control +#define ldap_parse_entrychange_control moz_ldap_parse_entrychange_control +#define ldap_parse_extended_result moz_ldap_parse_extended_result +#define ldap_parse_passwd moz_ldap_parse_passwd +#define ldap_parse_passwordpolicy_control moz_ldap_parse_passwordpolicy_control +#define ldap_parse_passwordpolicy_control_ext moz_ldap_parse_passwordpolicy_control_ext +#define ldap_parse_reference moz_ldap_parse_reference +#define ldap_parse_result moz_ldap_parse_result +#define ldap_parse_sasl_bind_result moz_ldap_parse_sasl_bind_result +#define ldap_parse_sort_control moz_ldap_parse_sort_control +#define ldap_parse_userstatus_control moz_ldap_parse_userstatus_control +#define ldap_parse_virtuallist_control moz_ldap_parse_virtuallist_control +#define ldap_parse_whoami moz_ldap_parse_whoami +#define ldap_passwd moz_ldap_passwd +#define ldap_passwd_s moz_ldap_passwd_s +#define ldap_passwordpolicy_err2txt moz_ldap_passwordpolicy_err2txt +#define ldap_perror moz_ldap_perror +#define ldap_rename moz_ldap_rename +#define ldap_rename_s moz_ldap_rename_s +#define ldap_result moz_ldap_result +#define ldap_result2error moz_ldap_result2error +#define ldap_sasl_bind moz_ldap_sasl_bind +#define ldap_sasl_bind_s moz_ldap_sasl_bind_s +#define ldap_sasl_interactive_bind_ext_s moz_ldap_sasl_interactive_bind_ext_s +#define ldap_sasl_interactive_bind_s moz_ldap_sasl_interactive_bind_s +#define ldap_search moz_ldap_search +#define ldap_search_ext moz_ldap_search_ext +#define ldap_search_ext_s moz_ldap_search_ext_s +#define ldap_search_s moz_ldap_search_s +#define ldap_search_st moz_ldap_search_st +#define ldap_set_filter_additions moz_ldap_set_filter_additions +#define ldap_set_lderrno moz_ldap_set_lderrno +#define ldap_set_option moz_ldap_set_option +#define ldap_set_rebind_proc moz_ldap_set_rebind_proc +#define ldap_setfilteraffixes moz_ldap_setfilteraffixes +#define ldap_simple_bind moz_ldap_simple_bind +#define ldap_simple_bind_s moz_ldap_simple_bind_s +#define ldap_sort_entries moz_ldap_sort_entries +#define ldap_sort_strcasecmp moz_ldap_sort_strcasecmp +#define ldap_sort_values moz_ldap_sort_values +#define ldap_start_tls_s moz_ldap_start_tls_s +#define ldap_str2charray moz_ldap_str2charray +#define ldap_tmplattrs moz_ldap_tmplattrs +#define ldap_tmplerr2string moz_ldap_tmplerr2string +#define ldap_tmplerrlist moz_ldap_tmplerrlist +#define ldap_ufn_search_c moz_ldap_ufn_search_c +#define ldap_ufn_search_ct moz_ldap_ufn_search_ct +#define ldap_ufn_search_ctx moz_ldap_ufn_search_ctx +#define ldap_ufn_search_s moz_ldap_ufn_search_s +#define ldap_ufn_setfilter moz_ldap_ufn_setfilter +#define ldap_ufn_setprefix moz_ldap_ufn_setprefix +#define ldap_ufn_timeout moz_ldap_ufn_timeout +#define ldap_unbind moz_ldap_unbind +#define ldap_unbind_ext moz_ldap_unbind_ext +#define ldap_unbind_s moz_ldap_unbind_s +#define ldap_url_parse moz_ldap_url_parse +#define ldap_url_parse_no_defaults moz_ldap_url_parse_no_defaults +#define ldap_url_search moz_ldap_url_search +#define ldap_url_search_s moz_ldap_url_search_s +#define ldap_url_search_st moz_ldap_url_search_st +#define ldap_utf8characters moz_ldap_utf8characters +#define ldap_utf8copy moz_ldap_utf8copy +#define ldap_utf8getcc moz_ldap_utf8getcc +#define ldap_utf8isalnum moz_ldap_utf8isalnum +#define ldap_utf8isalpha moz_ldap_utf8isalpha +#define ldap_utf8isdigit moz_ldap_utf8isdigit +#define ldap_utf8isspace moz_ldap_utf8isspace +#define ldap_utf8isxdigit moz_ldap_utf8isxdigit +#define ldap_utf8len moz_ldap_utf8len +#define ldap_utf8next moz_ldap_utf8next +#define ldap_utf8prev moz_ldap_utf8prev +#define ldap_utf8strtok_r moz_ldap_utf8strtok_r +#define ldap_vals2html moz_ldap_vals2html +#define ldap_vals2text moz_ldap_vals2text +#define ldap_value_free moz_ldap_value_free +#define ldap_value_free_len moz_ldap_value_free_len +#define ldap_version moz_ldap_version +#define ldap_whoami moz_ldap_whoami +#define ldap_whoami_s moz_ldap_whoami_s +#define ldap_x_calloc moz_ldap_x_calloc +#define ldap_x_free moz_ldap_x_free +#define ldap_x_hostlist_first moz_ldap_x_hostlist_first +#define ldap_x_hostlist_next moz_ldap_x_hostlist_next +#define ldap_x_hostlist_statusfree moz_ldap_x_hostlist_statusfree +#define ldap_x_malloc moz_ldap_x_malloc +#define ldap_x_realloc moz_ldap_x_realloc + /* Standard LDAP API functions and declarations */ #include "ldap-standard.h" Index: branches/2015Q4/www/seamonkey/files/patch-bug702179 =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-bug702179 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-bug702179 (revision 402340) @@ -1,24 +1,10 @@ -commit 6ddaacd -Author: Ginn Chen -Date: Wed Nov 30 07:23:46 2011 +0800 - - Bug 702179 dtrace probes are not installed on Solaris with static js lib r=glandium ---- - js/src/Makefile.in | 3 --- - toolkit/library/moz.build | 5 ----- - 2 files changed, 8 deletions(-) - -diff --git js/src/Makefile.in js/src/Makefile.in -index 62bbfa0..90400cb 100644 ---- mozilla/js/src/Makefile.in -+++ mozilla/js/src/Makefile.in -@@ -17,9 +17,6 @@ TOPLEVEL_BUILD := 1 - run_for_side_effects := $(shell echo 'MAKE: $(MAKE)') - EXTRA_LIBS += $(NSPR_LIBS) +--- mozilla/js/src/moz.build.orig 2015-10-29 22:17:54 UTC ++++ mozilla/js/src/moz.build +@@ -613,7 +613,3 @@ CXXFLAGS += CONFIG['MOZ_ICU_CFLAGS'] --DIST_INSTALL = 1 --NO_EXPAND_LIBS = 1 + if CONFIG['GNU_CXX']: + FAIL_ON_WARNINGS = True - - ifdef JS_HAS_CTYPES - ifdef MOZ_NATIVE_FFI - LOCAL_INCLUDES = $(MOZ_FFI_CFLAGS) +-NO_EXPAND_LIBS = True +- +-DIST_INSTALL = True Index: branches/2015Q4/www/seamonkey/files/patch-bug779713 =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-bug779713 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-bug779713 (revision 402340) @@ -1,77 +1,68 @@ diff --git mfbt/Alignment.h mfbt/Alignment.h index e0843ca..353ec36 100644 --- mozilla/mfbt/Alignment.h +++ mozilla/mfbt/Alignment.h -@@ -9,11 +9,20 @@ - #ifndef mozilla_Alignment_h - #define mozilla_Alignment_h +@@ -15,6 +15,13 @@ -+#include "mozilla/Attributes.h" -+ - #include - #include - namespace mozilla { +#if defined(MOZ_HAVE_CXX11_ALIGNAS) +#define MOZ_ALIGNOF(T) alignof(T) +#elif defined(__GNUC__) +#define MOZ_ALIGNOF(T) __alignof__(T) +#elif defined(_MSC_VER) +#define MOZ_ALIGNOF(T) __alignof(T) +#else /* * This class, and the corresponding macro MOZ_ALIGNOF, figures out how many * bytes of alignment a given type needs. @@ -32,6 +41,7 @@ public: }; #define MOZ_ALIGNOF(T) mozilla::AlignmentFinder::alignment +#endif /* * Declare the MOZ_ALIGNED_DECL macro for declaring aligned types. @@ -43,7 +53,10 @@ public: * will declare a two-character array |arr| aligned to 8 bytes. */ -#if defined(__GNUC__) +#if defined(MOZ_HAVE_CXX11_ALIGNAS) +# define MOZ_ALIGNED_DECL(_type, _align) \ + alignas(_align) _type +#elif defined(__GNUC__) # define MOZ_ALIGNED_DECL(_type, _align) \ _type __attribute__((aligned(_align))) #elif defined(_MSC_VER) diff --git mfbt/Attributes.h mfbt/Attributes.h index d317766..ddb13da 100644 --- mozilla/mfbt/Attributes.h +++ mozilla/mfbt/Attributes.h -@@ -51,6 +51,7 @@ +@@ -50,6 +50,7 @@ + * don't indicate support for them here, due to * http://stackoverflow.com/questions/20498142/visual-studio-2013-explicit-keyword-bug */ - # if _MSC_VER >= 1800 -+# define MOZ_HAVE_CXX11_ALIGNAS - # define MOZ_HAVE_CXX11_DELETE - # endif - # if _MSC_VER >= 1700 -@@ -74,6 +75,9 @@ ++# define MOZ_HAVE_CXX11_ALIGNAS + # define MOZ_HAVE_NEVER_INLINE __declspec(noinline) + # define MOZ_HAVE_NORETURN __declspec(noreturn) + # ifdef __clang__ +@@ -70,6 +71,9 @@ # ifndef __has_extension # define __has_extension __has_feature /* compatibility, for older versions of clang */ # endif +# if __has_extension(cxx_alignas) +# define MOZ_HAVE_CXX11_ALIGNAS +# endif # if __has_extension(cxx_constexpr) # define MOZ_HAVE_CXX11_CONSTEXPR # endif -@@ -95,6 +99,9 @@ - # endif - #elif defined(__GNUC__) +@@ -86,6 +90,7 @@ # if defined(__GXX_EXPERIMENTAL_CXX0X__) || __cplusplus >= 201103L -+# if MOZ_GCC_VERSION_AT_LEAST(4, 8, 0) + # define MOZ_HAVE_CXX11_CONSTEXPR + # if MOZ_GCC_VERSION_AT_LEAST(4, 8, 0) +# define MOZ_HAVE_CXX11_ALIGNAS -+# endif - # if MOZ_GCC_VERSION_AT_LEAST(4, 7, 0) - # define MOZ_HAVE_CXX11_OVERRIDE - # define MOZ_HAVE_CXX11_FINAL final + # define MOZ_HAVE_CXX11_CONSTEXPR_IN_TEMPLATES + # endif + # define MOZ_HAVE_EXPLICIT_CONVERSION Index: branches/2015Q4/www/seamonkey/files/patch-bug826985 =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-bug826985 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-bug826985 (revision 402340) @@ -1,179 +1,179 @@ commit 8024d93 Author: Henrik Gulbrandsen Date: Fri Jan 4 13:49:22 2013 +0100 Bug 826985 - Support more video formats for WebRTC via libv4l2 on Linux. --- config/system-headers | 1 + configure.in | 7 +++++++ media/webrtc/signaling/test/Makefile.in | 1 + .../modules/video_capture/linux/device_info_linux.cc | 17 +++++++++++++++++ .../modules/video_capture/linux/video_capture_linux.cc | 16 +++++++++++++++- .../webrtc/modules/video_capture/video_capture.gypi | 11 +++++++++++ toolkit/library/Makefile.in | 1 + 6 files changed, 52 insertions(+), 1 deletion(-) diff --git config/system-headers config/system-headers index 55e4cd1..76567b3 100644 --- mozilla/config/system-headers +++ mozilla/config/system-headers -@@ -635,6 +635,7 @@ libgnomevfs/gnome-vfs-mime-handlers.h - libgnomevfs/gnome-vfs-mime-utils.h - libgnomevfs/gnome-vfs-ops.h - libgnomevfs/gnome-vfs-standard-callbacks.h +@@ -627,6 +627,7 @@ libgnome/libgnome.h + libgnomeui/gnome-icon-lookup.h + libgnomeui/gnome-icon-theme.h + libgnomeui/gnome-ui-init.h +libv4l2.h lib$routines.h limits limits.h diff --git configure.in configure.in index 55e4cd1..76567b3 100644 --- mozilla/configure.in +++ mozilla/configure.in @@ -5309,6 +5309,9 @@ if test -n "$MOZ_WEBRTC"; then MOZ_VP8_ENCODER=1 MOZ_VP8_ERROR_CONCEALMENT=1 + dnl with libv4l2 we can support more cameras + PKG_CHECK_MODULES(MOZ_LIBV4L2, libv4l2) + dnl enable once Signaling lands MOZ_WEBRTC_SIGNALING=1 AC_DEFINE(MOZ_WEBRTC_SIGNALING) 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/moz.build media/webrtc/signaling/test/moz.build +diff --git media/webrtc/signaling/test/common.build media/webrtc/signaling/test/common.build index b483cd1..f1dd1f0 100644 ---- mozilla/media/webrtc/signaling/test/moz.build -+++ mozilla/media/webrtc/signaling/test/moz.build -@@ -122,6 +122,7 @@ if CONFIG['JS_SHARED_LIBRARY']: - 'js', - ] +--- mozilla/media/webrtc/signaling/test/common.build ++++ mozilla/media/webrtc/signaling/test/common.build +@@ -99,6 +99,7 @@ if CONFIG['JS_SHARED_LIBRARY']: + USE_LIBS += ['mozglue'] + +OS_LIBS += CONFIG['MOZ_LIBV4L2_LIBS'] OS_LIBS += CONFIG['MOZ_WEBRTC_X11_LIBS'] OS_LIBS += CONFIG['REALTIME_LIBS'] diff --git media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc index 239a292..bab496c 100644 --- mozilla/media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc +++ mozilla/media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc @@ -25,10 +25,21 @@ #else #include #endif +#ifdef HAVE_LIBV4L2 +#include +#endif #include "webrtc/system_wrappers/interface/ref_count.h" #include "webrtc/system_wrappers/interface/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 namespace webrtc { @@ -130,6 +142,11 @@ WebRtc_Word32 DeviceInfoLinux::GetDeviceName( memset(deviceNameUTF8, 0, deviceNameLength); memcpy(cameraName, cap.card, sizeof(cap.card)); + if (cameraName[0] == '\0') + { + sprintf(cameraName, "Camera at /dev/video%d", deviceNumber); + } + if (deviceNameLength >= strlen(cameraName)) { memcpy(deviceNameUTF8, cameraName, strlen(cameraName)); diff --git media/webrtc/trunk/webrtc/modules/video_capture/linux/video_capture_linux.cc media/webrtc/trunk/webrtc/modules/video_capture/linux/video_capture_linux.cc index 12df1b3..e9863ba 100644 --- mozilla/media/webrtc/trunk/webrtc/modules/video_capture/linux/video_capture_linux.cc +++ mozilla/media/webrtc/trunk/webrtc/modules/video_capture/linux/video_capture_linux.cc @@ -25,6 +25,9 @@ #else #include #endif +#ifdef HAVE_LIBV4L2 +#include +#endif #include @@ -26,6 +31,15 @@ #include "critical_section_wrapper.h" #include "video_capture_linux.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 + namespace webrtc { namespace videocapturemodule diff --git media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi index d46b5aa..e452223 100644 --- mozilla/media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi +++ mozilla/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. { + 'variables': { + 'use_libv4l2%': 0, + }, 'targets': [ { 'target_name': 'video_capture_module', -@@ -46,6 +49,19 @@ - 'linux/video_capture_linux.cc', - 'linux/video_capture_linux.h', - ], -+ 'conditions': [ -+ ['use_libv4l2==1', { -+ 'defines': [ -+ 'HAVE_LIBV4L2', -+ ], -+ 'cflags_mozilla': [ -+ '$(MOZ_LIBV4L2_CFLAGS)', -+ ], -+ 'libraries': [ -+ '-lv4l2', -+ ], -+ }], +@@ -69,6 +72,19 @@ + 'linux/video_capture_linux.cc', + 'linux/video_capture_linux.h', + ], ++ 'conditions': [ ++ ['use_libv4l2==1', { ++ 'defines': [ ++ 'HAVE_LIBV4L2', + ], - }], # linux - ['OS=="mac"', { - 'sources': [ ++ 'cflags_mozilla': [ ++ '$(MOZ_LIBV4L2_CFLAGS)', ++ ], ++ 'libraries': [ ++ '-lv4l2', ++ ], ++ }], ++ ], + }], # linux + ['OS=="mac"', { + 'sources': [ diff --git toolkit/library/moz.build toolkit/library/moz.build index 9c16ffa..1db3794 100644 --- mozilla/toolkit/library/moz.build +++ mozilla/toolkit/library/moz.build @@ -163,6 +163,7 @@ if CONFIG['OS_ARCH'] == 'Linux' and CONF ] OS_LIBS += CONFIG['MOZ_CAIRO_OSLIBS'] +OS_LIBS += CONFIG['MOZ_LIBV4L2_LIBS'] OS_LIBS += CONFIG['MOZ_WEBRTC_X11_LIBS'] OS_LIBS += CONFIG['MOZ_APP_EXTRA_LIBS'] Index: branches/2015Q4/www/seamonkey/files/patch-bug847568 =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-bug847568 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-bug847568 (revision 402340) @@ -1,244 +1,249 @@ # Allow building against system-wide graphite2/harfbuzz. diff --git config/Makefile.in config/Makefile.in index 14bfc0d..5383399 100644 --- mozilla/config/Makefile.in +++ mozilla/config/Makefile.in @@ -75,6 +75,8 @@ export:: $(export-preqs) -DMOZ_NATIVE_LIBEVENT=$(MOZ_NATIVE_LIBEVENT) \ -DMOZ_NATIVE_LIBVPX=$(MOZ_NATIVE_LIBVPX) \ -DMOZ_NATIVE_ICU=$(MOZ_NATIVE_ICU) \ + -DMOZ_NATIVE_GRAPHITE2=$(MOZ_NATIVE_GRAPHITE2) \ + -DMOZ_NATIVE_HARFBUZZ=$(MOZ_NATIVE_HARFBUZZ) \ $(srcdir)/system-headers | $(PERL) $(topsrcdir)/nsprpub/config/make-system-wrappers.pl system_wrappers $(INSTALL) system_wrappers $(DIST) diff --git config/system-headers config/system-headers index 18e8703..bdc5f82 100644 --- mozilla/config/system-headers +++ mozilla/config/system-headers -@@ -1357,3 +1357,11 @@ unicode/utypes.h +@@ -1350,3 +1350,11 @@ unicode/utypes.h #endif libutil.h unwind.h +#if MOZ_NATIVE_GRAPHITE2==1 +graphite2/Font.h +graphite2/Segment.h +#endif +#if MOZ_NATIVE_HARFBUZZ==1 +harfbuzz/hb-ot.h +harfbuzz/hb.h +#endif diff --git configure.in configure.in index ac38f40..87536b7 100644 --- mozilla/configure.in +++ mozilla/configure.in @@ -7986,6 +7986,49 @@ if test "$USE_FC_FREETYPE"; then fi dnl ======================================================== +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=) + +if test -n "$MOZ_NATIVE_HARFBUZZ"; then + PKG_CHECK_MODULES(MOZ_HARFBUZZ, harfbuzz >= 0.9.34) +fi + +AC_SUBST(MOZ_NATIVE_HARFBUZZ) + +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=) + +if test -n "$MOZ_NATIVE_GRAPHITE2"; then + PKG_CHECK_MODULES(MOZ_GRAPHITE2, graphite2) + + dnl graphite2.pc has bogus version, check manually + AC_TRY_COMPILE([ #include + #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) + +dnl ======================================================== dnl Check for pixman and cairo dnl ======================================================== diff --git dom/base/moz.build dom/base/moz.build index a660ba4..6b2f602 100644 --- mozilla/dom/base/moz.build +++ mozilla/dom/base/moz.build -@@ -196,6 +196,9 @@ SOURCES += [ - 'nsObjectLoadingContent.cpp', - ] +@@ -375,6 +375,9 @@ if CONFIG['INTEL_ARCHITECTURE']: + SOURCES += ['nsTextFragmentSSE2.cpp'] + SOURCES['nsTextFragmentSSE2.cpp'].flags += CONFIG['SSE2_FLAGS'] +if CONFIG['MOZ_NATIVE_HARFBUZZ']: + SOURCES['nsContentUtils.cpp'].flags += CONFIG['MOZ_HARFBUZZ_CFLAGS'] + EXTRA_COMPONENTS += [ - 'contentAreaDropListener.js', - 'contentAreaDropListener.manifest', + 'ConsoleAPI.manifest', + 'ConsoleAPIStorage.js', diff --git gfx/graphite2/moz-gr-update.sh gfx/graphite2/moz-gr-update.sh index f3d76ea..a9e7fb6 100644 --- mozilla/gfx/graphite2/moz-gr-update.sh +++ mozilla/gfx/graphite2/moz-gr-update.sh @@ -23,8 +23,14 @@ echo "\nSee" $0 "for update procedure.\n" >> gfx/graphite2/README.mozilla find gfx/graphite2/ -name "*.cpp" -exec perl -p -i -e "s///;s/Windows.h/windows.h/;" {} \; find gfx/graphite2/ -name "*.h" -exec perl -p -i -e "s///;s/Windows.h/windows.h/;" {} \; +# closest tag/release to require for system version +TAG=$(cd ../graphitedev/ && hg parents --template {latesttag}) + +perl -p -i -e "s/[0-9]+\,[0-9]+\,[0-9]+/$TAG/ and tr/./,/ \ + if /GR2_VERSION_REQUIRE/" configure.in + # summarize what's been touched -echo Updated to $CHANGESET. +echo Updated to $CHANGESET \($TAG for --with-system-graphite2\) echo Here is what changed in the gfx/graphite2 directory: echo diff --git gfx/harfbuzz/README-mozilla gfx/harfbuzz/README-mozilla index ca57d16..1ce21fe 100644 --- mozilla/gfx/harfbuzz/README-mozilla +++ mozilla/gfx/harfbuzz/README-mozilla -@@ -21,3 +21,8 @@ In addition, the src/Makefile.in file here is NOT from upstream, nor is it +@@ -18,3 +18,8 @@ the mozilla tree. + In addition, the src/Makefile.in file here is NOT from upstream, nor is it generated from src/Makefile.am (the original harfbuzz version); it is a mozilla- - specific makefile that is maintained by hand. It should only need updating when - new source files or exported headers are added in harfbuzz. + specific makefile that is maintained by hand. + +The in-tree copy may be omitted during build by --with-system-harfbuzz. +Make sure to keep pkg-config version check within configure.in in sync +with checkout version or increment latest tag by one if it's not based +on upstream release. diff --git gfx/moz.build gfx/moz.build index 519aa46..6929751 100644 --- mozilla/gfx/moz.build +++ mozilla/gfx/moz.build @@ -7,6 +7,12 @@ if CONFIG['MOZ_TREE_CAIRO']: DIRS += ['cairo'] +if not CONFIG['MOZ_NATIVE_GRAPHITE2']: + DIRS += ['graphite2/src' ] + +if not CONFIG['MOZ_NATIVE_HARFBUZZ']: + DIRS += ['harfbuzz/src'] + DIRS += [ '2d', 'ycbcr', @@ -15,8 +21,6 @@ DIRS += [ 'qcms', 'gl', 'layers', - 'graphite2/src', - 'harfbuzz/src', 'ots/src', 'thebes', 'ipc', diff --git gfx/skia/generate_mozbuild.py gfx/skia/generate_mozbuild.py index 28fa6b5..240dced 100755 --- mozilla/gfx/skia/generate_mozbuild.py +++ mozilla/gfx/skia/generate_mozbuild.py -@@ -140,6 +140,9 @@ if CONFIG['GNU_CXX']: - if not CONFIG['CLANG_CXX']: - CXXFLAGS += ['-Wno-logical-op'] +@@ -142,6 +142,9 @@ if CONFIG['GNU_CXX']: + if CONFIG['CPU_ARCH'] == 'arm': + SOURCES['trunk/src/opts/SkBlitRow_opts_arm.cpp'].flags += ['-fomit-frame-pointer'] +if CONFIG['MOZ_NATIVE_HARFBUZZ']: + CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS'] + if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3', 'android', 'gonk', 'qt'): CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS'] CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS'] diff --git gfx/skia/moz.build gfx/skia/moz.build index 1d0c2f9..adb8941 100644 --- mozilla/gfx/skia/moz.build +++ mozilla/gfx/skia/moz.build -@@ -968,6 +968,9 @@ if CONFIG['GNU_CXX']: - if not CONFIG['CLANG_CXX']: - CXXFLAGS += ['-Wno-logical-op'] +@@ -970,6 +970,9 @@ if CONFIG['GNU_CXX']: + if CONFIG['CPU_ARCH'] == 'arm': + SOURCES['trunk/src/opts/SkBlitRow_opts_arm.cpp'].flags += ['-fomit-frame-pointer'] +if CONFIG['MOZ_NATIVE_HARFBUZZ']: + CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS'] + if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3', 'android', 'gonk', 'qt'): CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS'] CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS'] diff --git gfx/thebes/moz.build gfx/thebes/moz.build index d5852fa..aeeab25 100644 --- mozilla/gfx/thebes/moz.build +++ mozilla/gfx/thebes/moz.build @@ -294,7 +294,13 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'andr if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3', 'qt'): CXXFLAGS += CONFIG['MOZ_PANGO_CFLAGS'] -DEFINES['GRAPHITE2_STATIC'] = True +if CONFIG['MOZ_NATIVE_HARFBUZZ']: + CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS'] + +if CONFIG['MOZ_NATIVE_GRAPHITE2']: + CXXFLAGS += CONFIG['MOZ_GRAPHITE2_CFLAGS'] +else: + DEFINES['GRAPHITE2_STATIC'] = True if CONFIG['GKMEDIAS_SHARED_LIBRARY']: DEFINES['OTS_DLL'] = True diff --git intl/unicharutil/util/moz.build intl/unicharutil/util/moz.build index d736943..41a931f 100644 --- mozilla/intl/unicharutil/util/moz.build +++ mozilla/intl/unicharutil/util/moz.build -@@ -37,3 +37,6 @@ if CONFIG['_MSC_VER']: - +@@ -42,6 +42,9 @@ if CONFIG['_MSC_VER']: if CONFIG['ENABLE_INTL_API']: CXXFLAGS += CONFIG['MOZ_ICU_CFLAGS'] -+ + +if CONFIG['MOZ_NATIVE_HARFBUZZ']: + CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS'] ++ + if CONFIG['GNU_CXX']: + FAIL_ON_WARNINGS = True + diff --git netwerk/dns/moz.build netwerk/dns/moz.build index 0b0717a..2e665c9 100644 --- mozilla/netwerk/dns/moz.build +++ mozilla/netwerk/dns/moz.build -@@ -63,3 +63,6 @@ GENERATED_FILES = [ - LOCAL_INCLUDES += [ - '../base/src', +@@ -66,5 +66,8 @@ LOCAL_INCLUDES += [ + '/netwerk/base', ] -+ + +if CONFIG['MOZ_NATIVE_HARFBUZZ']: + CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS'] ++ + if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk' and CONFIG['ANDROID_VERSION'] > '19': + CXXFLAGS += ['-I%s/bionic/libc/dns/include' % CONFIG['ANDROID_SOURCE']] diff --git toolkit/library/moz.build toolkit/library/moz.build index 67f0db9..d42137a 100644 --- mozilla/toolkit/library/moz.build +++ mozilla/toolkit/library/moz.build @@ -187,6 +187,12 @@ if CONFIG['MOZ_NATIVE_LIBVPX']: if not CONFIG['MOZ_TREE_PIXMAN']: OS_LIBS += CONFIG['MOZ_PIXMAN_LIBS'] +if CONFIG['MOZ_NATIVE_GRAPHITE2']: + OS_LIBS += CONFIG['MOZ_GRAPHITE2_LIBS'] + +if CONFIG['MOZ_NATIVE_HARFBUZZ']: + OS_LIBS += CONFIG['MOZ_HARFBUZZ_LIBS'] + if CONFIG['MOZ_OSS']: OS_LIBS += CONFIG['MOZ_OSS_LIBS'] Index: branches/2015Q4/www/seamonkey/files/patch-bug981348 =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-bug981348 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-bug981348 (revision 402340) @@ -1,41 +1,41 @@ diff --git dom/system/OSFileConstants.cpp dom/system/OSFileConstants.cpp index 4b21361..cb3be32 100644 --- mozilla/dom/system/OSFileConstants.cpp +++ mozilla/dom/system/OSFileConstants.cpp -@@ -596,7 +596,7 @@ static const dom::ConstantSpec gLibcProperties[] = +@@ -662,7 +662,7 @@ - { "OSFILE_SIZEOF_STATVFS", INT_TO_JSVAL(sizeof (struct statvfs)) }, + { "OSFILE_SIZEOF_STATVFS", JS::Int32Value(sizeof (struct statvfs)) }, -- { "OSFILE_OFFSETOF_STATVFS_F_BSIZE", INT_TO_JSVAL(offsetof (struct statvfs, f_bsize)) }, -+ { "OSFILE_OFFSETOF_STATVFS_F_FRSIZE", INT_TO_JSVAL(offsetof (struct statvfs, f_frsize)) }, - { "OSFILE_OFFSETOF_STATVFS_F_BAVAIL", INT_TO_JSVAL(offsetof (struct statvfs, f_bavail)) }, +- { "OSFILE_OFFSETOF_STATVFS_F_BSIZE", JS::Int32Value(offsetof (struct statvfs, f_bsize)) }, ++ { "OSFILE_OFFSETOF_STATVFS_F_FRSIZE", JS::Int32Value(offsetof (struct statvfs, f_frsize)) }, + { "OSFILE_OFFSETOF_STATVFS_F_BAVAIL", JS::Int32Value(offsetof (struct statvfs, f_bavail)) }, #endif // defined(XP_UNIX) diff --git toolkit/components/osfile/modules/osfile_unix_back.jsm toolkit/components/osfile/modules/osfile_unix_back.jsm index b59fca4..0cf220b 100644 --- mozilla/toolkit/components/osfile/modules/osfile_unix_back.jsm +++ mozilla/toolkit/components/osfile/modules/osfile_unix_back.jsm @@ -228,8 +228,8 @@ let statvfs = new SharedAll.HollowStructure("statvfs", Const.OSFILE_SIZEOF_STATVFS); - statvfs.add_field_at(Const.OSFILE_OFFSETOF_STATVFS_F_BSIZE, - "f_bsize", Type.unsigned_long.implementation); + statvfs.add_field_at(Const.OSFILE_OFFSETOF_STATVFS_F_FRSIZE, + "f_frsize", Type.unsigned_long.implementation); statvfs.add_field_at(Const.OSFILE_OFFSETOF_STATVFS_F_BAVAIL, "f_bavail", Type.fsblkcnt_t.implementation); diff --git toolkit/components/osfile/modules/osfile_unix_front.jsm toolkit/components/osfile/modules/osfile_unix_front.jsm index 99e5e9b..de642c5 100644 --- mozilla/toolkit/components/osfile/modules/osfile_unix_front.jsm +++ mozilla/toolkit/components/osfile/modules/osfile_unix_front.jsm @@ -373,7 +373,7 @@ throw_on_negative("statvfs", UnixFile.statvfs(sourcePath, fileSystemInfoPtr)); let bytes = new Type.uint64_t.implementation( - fileSystemInfo.f_bsize * fileSystemInfo.f_bavail); + fileSystemInfo.f_frsize * fileSystemInfo.f_bavail); return bytes.value; }; Index: branches/2015Q4/www/seamonkey/files/patch-build-pgo-profileserver.py =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-build-pgo-profileserver.py (nonexistent) +++ branches/2015Q4/www/seamonkey/files/patch-build-pgo-profileserver.py (revision 402340) @@ -0,0 +1,11 @@ +--- mozilla/build/pgo/profileserver.py.orig 2011-02-24 21:49:47.000000000 +0100 ++++ mozilla/build/pgo/profileserver.py 2011-02-24 21:50:30.000000000 +0100 +@@ -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, Property changes on: branches/2015Q4/www/seamonkey/files/patch-build-pgo-profileserver.py ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-config-baseconfig.mk =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-config-baseconfig.mk (nonexistent) +++ branches/2015Q4/www/seamonkey/files/patch-config-baseconfig.mk (revision 402340) @@ -0,0 +1,14 @@ +--- mozilla/config/baseconfig.mk~ ++++ mozilla/config/baseconfig.mk +@@ -1,7 +1,7 @@ +-includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) +-idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) +-installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) +-sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION) ++includedir := $(includedir)/%%MOZILLA%% ++idldir = $(datadir)/idl/%%MOZILLA%% ++installdir = $(libdir)/%%MOZILLA%% ++sdkdir = $(libdir)/%%MOZILLA%% + ifndef TOP_DIST + TOP_DIST = dist + endif Property changes on: branches/2015Q4/www/seamonkey/files/patch-config-baseconfig.mk ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-ijg-libjpeg =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-ijg-libjpeg (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-ijg-libjpeg (revision 402340) @@ -1,382 +1,383 @@ # Partially revert bug 791305 to allow building with system IJG jpeg library diff --git configure.in configure.in index f0aeb5d..1c01010 100644 --- mozilla/configure.in +++ mozilla/configure.in @@ -4027,11 +4027,7 @@ if test "$MOZ_NATIVE_JPEG" = 1; then #include ], [ #if JPEG_LIB_VERSION < $MOZJPEG #error "Insufficient JPEG library version ($MOZJPEG required)." - #endif - #ifndef JCS_EXTENSIONS - #error "libjpeg-turbo JCS_EXTENSIONS required" - #endif - ], + #endif ], MOZ_NATIVE_JPEG=1, AC_MSG_ERROR([Insufficient JPEG library version for --with-system-jpeg])) fi -diff --git mozilla/image/decoders/nsJPEGDecoder.cpp mozilla/image/decoders/nsJPEGDecoder.cpp +diff --git image/decoders/nsJPEGDecoder.cpp image/decoders/nsJPEGDecoder.cpp index 8fa8200..1d2a259 100644 --- mozilla/image/decoders/nsJPEGDecoder.cpp +++ mozilla/image/decoders/nsJPEGDecoder.cpp @@ -21,13 +21,28 @@ extern "C" { #include "iccjpeg.h" -} +#ifdef JCS_EXTENSIONS - #if defined(IS_BIG_ENDIAN) + #if MOZ_BIG_ENDIAN #define MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB JCS_EXT_XRGB #else #define MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB JCS_EXT_BGRX #endif +#else +/* Colorspace conversion (copied from jpegint.h) */ +struct jpeg_color_deconverter { + JMETHOD(void, start_pass, (j_decompress_ptr cinfo)); + JMETHOD(void, color_convert, (j_decompress_ptr cinfo, + JSAMPIMAGE input_buf, JDIMENSION input_row, + JSAMPARRAY output_buf, int num_rows)); +}; + +METHODDEF(void) +ycc_rgb_convert_argb (j_decompress_ptr cinfo, + JSAMPIMAGE input_buf, JDIMENSION input_row, + JSAMPARRAY output_buf, int num_rows); +#endif +} static void cmyk_convert_rgb(JSAMPROW row, JDIMENSION width); @@ -367,6 +382,7 @@ nsJPEGDecoder::WriteInternal(const char* case JCS_GRAYSCALE: case JCS_RGB: case JCS_YCbCr: +#ifdef JCS_EXTENSIONS // if we're not color managing we can decode directly to // MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB if (mCMSMode != eCMSMode_All) { @@ -375,6 +391,9 @@ nsJPEGDecoder::WriteInternal(const char* } else { mInfo.out_color_space = JCS_RGB; } +#else + mInfo.out_color_space = JCS_RGB; +#endif break; case JCS_CMYK: case JCS_YCCK: -@@ -433,6 +452,15 @@ nsJPEGDecoder::WriteInternal(const char* +@@ -448,6 +467,16 @@ nsJPEGDecoder::WriteInternal(const char* return; // I/O suspension } +#ifndef JCS_EXTENSIONS + /* Force to use our YCbCr to Packed RGB converter when possible */ + if (!mTransform && (mCMSMode != eCMSMode_All) && + mInfo.jpeg_color_space == JCS_YCbCr && mInfo.out_color_space == JCS_RGB) { + /* Special case for the most common case: transform from YCbCr direct into packed ARGB */ + mInfo.out_color_components = 4; /* Packed ARGB pixels are always 4 bytes...*/ + mInfo.cconvert->color_convert = ycc_rgb_convert_argb; + } +#endif - ++ // If this is a progressive JPEG ... mState = mInfo.buffered_image ? + JPEG_DECOMPRESS_PROGRESSIVE : JPEG_DECOMPRESS_SEQUENTIAL; @@ -605,7 +633,11 @@ nsJPEGDecoder::OutputScanlines(bool* sus uint32_t* imageRow = ((uint32_t*)mImageData) + (mInfo.output_scanline * mInfo.output_width); +#ifdef JCS_EXTENSIONS if (mInfo.out_color_space == MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB) { +#else + if (mInfo.cconvert->color_convert == ycc_rgb_convert_argb) { +#endif // Special case: scanline will be directly converted into packed ARGB if (jpeg_read_scanlines(&mInfo, (JSAMPARRAY)&imageRow, 1) != 1) { *suspend = true; // suspend @@ -920,6 +952,282 @@ term_source (j_decompress_ptr jd) } // namespace mozilla +#ifndef JCS_EXTENSIONS +/**************** YCbCr -> Cairo's RGB24/ARGB32 conversion: most common case **************/ + +/* + * YCbCr is defined per CCIR 601-1, except that Cb and Cr are + * normalized to the range 0..MAXJSAMPLE rather than -0.5 .. 0.5. + * The conversion equations to be implemented are therefore + * R = Y + 1.40200 * Cr + * G = Y - 0.34414 * Cb - 0.71414 * Cr + * B = Y + 1.77200 * Cb + * where Cb and Cr represent the incoming values less CENTERJSAMPLE. + * (These numbers are derived from TIFF 6.0 section 21, dated 3-June-92.) + * + * To avoid floating-point arithmetic, we represent the fractional constants + * as integers scaled up by 2^16 (about 4 digits precision); we have to divide + * the products by 2^16, with appropriate rounding, to get the correct answer. + * Notice that Y, being an integral input, does not contribute any fraction + * so it need not participate in the rounding. + * + * For even more speed, we avoid doing any multiplications in the inner loop + * by precalculating the constants times Cb and Cr for all possible values. + * For 8-bit JSAMPLEs this is very reasonable (only 256 entries per table); + * for 12-bit samples it is still acceptable. It's not very reasonable for + * 16-bit samples, but if you want lossless storage you shouldn't be changing + * colorspace anyway. + * The Cr=>R and Cb=>B values can be rounded to integers in advance; the + * values for the G calculation are left scaled up, since we must add them + * together before rounding. + */ + +#define SCALEBITS 16 /* speediest right-shift on some machines */ + +/* Use static tables for color processing. */ +/* Four tables, each 256 entries of 4 bytes totals 4K which is not bad... */ + +const int Cr_r_tab[(MAXJSAMPLE+1) * sizeof(int)] ={ + -0xb3, -0xb2, -0xb1, -0xaf, -0xae, -0xac, + -0xab, -0xaa, -0xa8, -0xa7, -0xa5, -0xa4, + -0xa3, -0xa1, -0xa0, -0x9e, -0x9d, -0x9c, + -0x9a, -0x99, -0x97, -0x96, -0x95, -0x93, + -0x92, -0x90, -0x8f, -0x8e, -0x8c, -0x8b, + -0x89, -0x88, -0x87, -0x85, -0x84, -0x82, + -0x81, -0x80, -0x7e, -0x7d, -0x7b, -0x7a, + -0x79, -0x77, -0x76, -0x74, -0x73, -0x72, + -0x70, -0x6f, -0x6d, -0x6c, -0x6b, -0x69, + -0x68, -0x66, -0x65, -0x64, -0x62, -0x61, + -0x5f, -0x5e, -0x5d, -0x5b, -0x5a, -0x58, + -0x57, -0x56, -0x54, -0x53, -0x51, -0x50, + -0x4f, -0x4d, -0x4c, -0x4a, -0x49, -0x48, + -0x46, -0x45, -0x43, -0x42, -0x40, -0x3f, + -0x3e, -0x3c, -0x3b, -0x39, -0x38, -0x37, + -0x35, -0x34, -0x32, -0x31, -0x30, -0x2e, + -0x2d, -0x2b, -0x2a, -0x29, -0x27, -0x26, + -0x24, -0x23, -0x22, -0x20, -0x1f, -0x1d, + -0x1c, -0x1b, -0x19, -0x18, -0x16, -0x15, + -0x14, -0x12, -0x11, -0x0f, -0x0e, -0x0d, + -0x0b, -0x0a, -0x08, -0x07, -0x06, -0x04, + -0x03, -0x01, 0x00, 0x01, 0x03, 0x04, + 0x06, 0x07, 0x08, 0x0a, 0x0b, 0x0d, + 0x0e, 0x0f, 0x11, 0x12, 0x14, 0x15, + 0x16, 0x18, 0x19, 0x1b, 0x1c, 0x1d, + 0x1f, 0x20, 0x22, 0x23, 0x24, 0x26, + 0x27, 0x29, 0x2a, 0x2b, 0x2d, 0x2e, + 0x30, 0x31, 0x32, 0x34, 0x35, 0x37, + 0x38, 0x39, 0x3b, 0x3c, 0x3e, 0x3f, + 0x40, 0x42, 0x43, 0x45, 0x46, 0x48, + 0x49, 0x4a, 0x4c, 0x4d, 0x4f, 0x50, + 0x51, 0x53, 0x54, 0x56, 0x57, 0x58, + 0x5a, 0x5b, 0x5d, 0x5e, 0x5f, 0x61, + 0x62, 0x64, 0x65, 0x66, 0x68, 0x69, + 0x6b, 0x6c, 0x6d, 0x6f, 0x70, 0x72, + 0x73, 0x74, 0x76, 0x77, 0x79, 0x7a, + 0x7b, 0x7d, 0x7e, 0x80, 0x81, 0x82, + 0x84, 0x85, 0x87, 0x88, 0x89, 0x8b, + 0x8c, 0x8e, 0x8f, 0x90, 0x92, 0x93, + 0x95, 0x96, 0x97, 0x99, 0x9a, 0x9c, + 0x9d, 0x9e, 0xa0, 0xa1, 0xa3, 0xa4, + 0xa5, 0xa7, 0xa8, 0xaa, 0xab, 0xac, + 0xae, 0xaf, 0xb1, 0xb2, + }; + +const int Cb_b_tab[(MAXJSAMPLE+1) * sizeof(int)] ={ + -0xe3, -0xe1, -0xdf, -0xde, -0xdc, -0xda, + -0xd8, -0xd6, -0xd5, -0xd3, -0xd1, -0xcf, + -0xce, -0xcc, -0xca, -0xc8, -0xc6, -0xc5, + -0xc3, -0xc1, -0xbf, -0xbe, -0xbc, -0xba, + -0xb8, -0xb7, -0xb5, -0xb3, -0xb1, -0xaf, + -0xae, -0xac, -0xaa, -0xa8, -0xa7, -0xa5, + -0xa3, -0xa1, -0x9f, -0x9e, -0x9c, -0x9a, + -0x98, -0x97, -0x95, -0x93, -0x91, -0x90, + -0x8e, -0x8c, -0x8a, -0x88, -0x87, -0x85, + -0x83, -0x81, -0x80, -0x7e, -0x7c, -0x7a, + -0x78, -0x77, -0x75, -0x73, -0x71, -0x70, + -0x6e, -0x6c, -0x6a, -0x69, -0x67, -0x65, + -0x63, -0x61, -0x60, -0x5e, -0x5c, -0x5a, + -0x59, -0x57, -0x55, -0x53, -0x52, -0x50, + -0x4e, -0x4c, -0x4a, -0x49, -0x47, -0x45, + -0x43, -0x42, -0x40, -0x3e, -0x3c, -0x3a, + -0x39, -0x37, -0x35, -0x33, -0x32, -0x30, + -0x2e, -0x2c, -0x2b, -0x29, -0x27, -0x25, + -0x23, -0x22, -0x20, -0x1e, -0x1c, -0x1b, + -0x19, -0x17, -0x15, -0x13, -0x12, -0x10, + -0x0e, -0x0c, -0x0b, -0x09, -0x07, -0x05, + -0x04, -0x02, 0x00, 0x02, 0x04, 0x05, + 0x07, 0x09, 0x0b, 0x0c, 0x0e, 0x10, + 0x12, 0x13, 0x15, 0x17, 0x19, 0x1b, + 0x1c, 0x1e, 0x20, 0x22, 0x23, 0x25, + 0x27, 0x29, 0x2b, 0x2c, 0x2e, 0x30, + 0x32, 0x33, 0x35, 0x37, 0x39, 0x3a, + 0x3c, 0x3e, 0x40, 0x42, 0x43, 0x45, + 0x47, 0x49, 0x4a, 0x4c, 0x4e, 0x50, + 0x52, 0x53, 0x55, 0x57, 0x59, 0x5a, + 0x5c, 0x5e, 0x60, 0x61, 0x63, 0x65, + 0x67, 0x69, 0x6a, 0x6c, 0x6e, 0x70, + 0x71, 0x73, 0x75, 0x77, 0x78, 0x7a, + 0x7c, 0x7e, 0x80, 0x81, 0x83, 0x85, + 0x87, 0x88, 0x8a, 0x8c, 0x8e, 0x90, + 0x91, 0x93, 0x95, 0x97, 0x98, 0x9a, + 0x9c, 0x9e, 0x9f, 0xa1, 0xa3, 0xa5, + 0xa7, 0xa8, 0xaa, 0xac, 0xae, 0xaf, + 0xb1, 0xb3, 0xb5, 0xb7, 0xb8, 0xba, + 0xbc, 0xbe, 0xbf, 0xc1, 0xc3, 0xc5, + 0xc6, 0xc8, 0xca, 0xcc, 0xce, 0xcf, + 0xd1, 0xd3, 0xd5, 0xd6, 0xd8, 0xda, + 0xdc, 0xde, 0xdf, 0xe1, + }; + +const int Cr_g_tab[(MAXJSAMPLE+1) * sizeof(int)] ={ + 0x5b6900, 0x5ab22e, 0x59fb5c, 0x59448a, 0x588db8, 0x57d6e6, + 0x572014, 0x566942, 0x55b270, 0x54fb9e, 0x5444cc, 0x538dfa, + 0x52d728, 0x522056, 0x516984, 0x50b2b2, 0x4ffbe0, 0x4f450e, + 0x4e8e3c, 0x4dd76a, 0x4d2098, 0x4c69c6, 0x4bb2f4, 0x4afc22, + 0x4a4550, 0x498e7e, 0x48d7ac, 0x4820da, 0x476a08, 0x46b336, + 0x45fc64, 0x454592, 0x448ec0, 0x43d7ee, 0x43211c, 0x426a4a, + 0x41b378, 0x40fca6, 0x4045d4, 0x3f8f02, 0x3ed830, 0x3e215e, + 0x3d6a8c, 0x3cb3ba, 0x3bfce8, 0x3b4616, 0x3a8f44, 0x39d872, + 0x3921a0, 0x386ace, 0x37b3fc, 0x36fd2a, 0x364658, 0x358f86, + 0x34d8b4, 0x3421e2, 0x336b10, 0x32b43e, 0x31fd6c, 0x31469a, + 0x308fc8, 0x2fd8f6, 0x2f2224, 0x2e6b52, 0x2db480, 0x2cfdae, + 0x2c46dc, 0x2b900a, 0x2ad938, 0x2a2266, 0x296b94, 0x28b4c2, + 0x27fdf0, 0x27471e, 0x26904c, 0x25d97a, 0x2522a8, 0x246bd6, + 0x23b504, 0x22fe32, 0x224760, 0x21908e, 0x20d9bc, 0x2022ea, + 0x1f6c18, 0x1eb546, 0x1dfe74, 0x1d47a2, 0x1c90d0, 0x1bd9fe, + 0x1b232c, 0x1a6c5a, 0x19b588, 0x18feb6, 0x1847e4, 0x179112, + 0x16da40, 0x16236e, 0x156c9c, 0x14b5ca, 0x13fef8, 0x134826, + 0x129154, 0x11da82, 0x1123b0, 0x106cde, 0x0fb60c, 0x0eff3a, + 0x0e4868, 0x0d9196, 0x0cdac4, 0x0c23f2, 0x0b6d20, 0x0ab64e, + 0x09ff7c, 0x0948aa, 0x0891d8, 0x07db06, 0x072434, 0x066d62, + 0x05b690, 0x04ffbe, 0x0448ec, 0x03921a, 0x02db48, 0x022476, + 0x016da4, 0x00b6d2, 0x000000, -0x00b6d2, -0x016da4, -0x022476, + -0x02db48, -0x03921a, -0x0448ec, -0x04ffbe, -0x05b690, -0x066d62, + -0x072434, -0x07db06, -0x0891d8, -0x0948aa, -0x09ff7c, -0x0ab64e, + -0x0b6d20, -0x0c23f2, -0x0cdac4, -0x0d9196, -0x0e4868, -0x0eff3a, + -0x0fb60c, -0x106cde, -0x1123b0, -0x11da82, -0x129154, -0x134826, + -0x13fef8, -0x14b5ca, -0x156c9c, -0x16236e, -0x16da40, -0x179112, + -0x1847e4, -0x18feb6, -0x19b588, -0x1a6c5a, -0x1b232c, -0x1bd9fe, + -0x1c90d0, -0x1d47a2, -0x1dfe74, -0x1eb546, -0x1f6c18, -0x2022ea, + -0x20d9bc, -0x21908e, -0x224760, -0x22fe32, -0x23b504, -0x246bd6, + -0x2522a8, -0x25d97a, -0x26904c, -0x27471e, -0x27fdf0, -0x28b4c2, + -0x296b94, -0x2a2266, -0x2ad938, -0x2b900a, -0x2c46dc, -0x2cfdae, + -0x2db480, -0x2e6b52, -0x2f2224, -0x2fd8f6, -0x308fc8, -0x31469a, + -0x31fd6c, -0x32b43e, -0x336b10, -0x3421e2, -0x34d8b4, -0x358f86, + -0x364658, -0x36fd2a, -0x37b3fc, -0x386ace, -0x3921a0, -0x39d872, + -0x3a8f44, -0x3b4616, -0x3bfce8, -0x3cb3ba, -0x3d6a8c, -0x3e215e, + -0x3ed830, -0x3f8f02, -0x4045d4, -0x40fca6, -0x41b378, -0x426a4a, + -0x43211c, -0x43d7ee, -0x448ec0, -0x454592, -0x45fc64, -0x46b336, + -0x476a08, -0x4820da, -0x48d7ac, -0x498e7e, -0x4a4550, -0x4afc22, + -0x4bb2f4, -0x4c69c6, -0x4d2098, -0x4dd76a, -0x4e8e3c, -0x4f450e, + -0x4ffbe0, -0x50b2b2, -0x516984, -0x522056, -0x52d728, -0x538dfa, + -0x5444cc, -0x54fb9e, -0x55b270, -0x566942, -0x572014, -0x57d6e6, + -0x588db8, -0x59448a, -0x59fb5c, -0x5ab22e, + }; + +const int Cb_g_tab[(MAXJSAMPLE+1) * sizeof(int)] ={ + 0x2c8d00, 0x2c34e6, 0x2bdccc, 0x2b84b2, 0x2b2c98, 0x2ad47e, + 0x2a7c64, 0x2a244a, 0x29cc30, 0x297416, 0x291bfc, 0x28c3e2, + 0x286bc8, 0x2813ae, 0x27bb94, 0x27637a, 0x270b60, 0x26b346, + 0x265b2c, 0x260312, 0x25aaf8, 0x2552de, 0x24fac4, 0x24a2aa, + 0x244a90, 0x23f276, 0x239a5c, 0x234242, 0x22ea28, 0x22920e, + 0x2239f4, 0x21e1da, 0x2189c0, 0x2131a6, 0x20d98c, 0x208172, + 0x202958, 0x1fd13e, 0x1f7924, 0x1f210a, 0x1ec8f0, 0x1e70d6, + 0x1e18bc, 0x1dc0a2, 0x1d6888, 0x1d106e, 0x1cb854, 0x1c603a, + 0x1c0820, 0x1bb006, 0x1b57ec, 0x1affd2, 0x1aa7b8, 0x1a4f9e, + 0x19f784, 0x199f6a, 0x194750, 0x18ef36, 0x18971c, 0x183f02, + 0x17e6e8, 0x178ece, 0x1736b4, 0x16de9a, 0x168680, 0x162e66, + 0x15d64c, 0x157e32, 0x152618, 0x14cdfe, 0x1475e4, 0x141dca, + 0x13c5b0, 0x136d96, 0x13157c, 0x12bd62, 0x126548, 0x120d2e, + 0x11b514, 0x115cfa, 0x1104e0, 0x10acc6, 0x1054ac, 0x0ffc92, + 0x0fa478, 0x0f4c5e, 0x0ef444, 0x0e9c2a, 0x0e4410, 0x0debf6, + 0x0d93dc, 0x0d3bc2, 0x0ce3a8, 0x0c8b8e, 0x0c3374, 0x0bdb5a, + 0x0b8340, 0x0b2b26, 0x0ad30c, 0x0a7af2, 0x0a22d8, 0x09cabe, + 0x0972a4, 0x091a8a, 0x08c270, 0x086a56, 0x08123c, 0x07ba22, + 0x076208, 0x0709ee, 0x06b1d4, 0x0659ba, 0x0601a0, 0x05a986, + 0x05516c, 0x04f952, 0x04a138, 0x04491e, 0x03f104, 0x0398ea, + 0x0340d0, 0x02e8b6, 0x02909c, 0x023882, 0x01e068, 0x01884e, + 0x013034, 0x00d81a, 0x008000, 0x0027e6, -0x003034, -0x00884e, + -0x00e068, -0x013882, -0x01909c, -0x01e8b6, -0x0240d0, -0x0298ea, + -0x02f104, -0x03491e, -0x03a138, -0x03f952, -0x04516c, -0x04a986, + -0x0501a0, -0x0559ba, -0x05b1d4, -0x0609ee, -0x066208, -0x06ba22, + -0x07123c, -0x076a56, -0x07c270, -0x081a8a, -0x0872a4, -0x08cabe, + -0x0922d8, -0x097af2, -0x09d30c, -0x0a2b26, -0x0a8340, -0x0adb5a, + -0x0b3374, -0x0b8b8e, -0x0be3a8, -0x0c3bc2, -0x0c93dc, -0x0cebf6, + -0x0d4410, -0x0d9c2a, -0x0df444, -0x0e4c5e, -0x0ea478, -0x0efc92, + -0x0f54ac, -0x0facc6, -0x1004e0, -0x105cfa, -0x10b514, -0x110d2e, + -0x116548, -0x11bd62, -0x12157c, -0x126d96, -0x12c5b0, -0x131dca, + -0x1375e4, -0x13cdfe, -0x142618, -0x147e32, -0x14d64c, -0x152e66, + -0x158680, -0x15de9a, -0x1636b4, -0x168ece, -0x16e6e8, -0x173f02, + -0x17971c, -0x17ef36, -0x184750, -0x189f6a, -0x18f784, -0x194f9e, + -0x19a7b8, -0x19ffd2, -0x1a57ec, -0x1ab006, -0x1b0820, -0x1b603a, + -0x1bb854, -0x1c106e, -0x1c6888, -0x1cc0a2, -0x1d18bc, -0x1d70d6, + -0x1dc8f0, -0x1e210a, -0x1e7924, -0x1ed13e, -0x1f2958, -0x1f8172, + -0x1fd98c, -0x2031a6, -0x2089c0, -0x20e1da, -0x2139f4, -0x21920e, + -0x21ea28, -0x224242, -0x229a5c, -0x22f276, -0x234a90, -0x23a2aa, + -0x23fac4, -0x2452de, -0x24aaf8, -0x250312, -0x255b2c, -0x25b346, + -0x260b60, -0x26637a, -0x26bb94, -0x2713ae, -0x276bc8, -0x27c3e2, + -0x281bfc, -0x287416, -0x28cc30, -0x29244a, -0x297c64, -0x29d47e, + -0x2a2c98, -0x2a84b2, -0x2adccc, -0x2b34e6, + }; + + +/* We assume that right shift corresponds to signed division by 2 with + * rounding towards minus infinity. This is correct for typical "arithmetic + * shift" instructions that shift in copies of the sign bit. But some + * C compilers implement >> with an unsigned shift. For these machines you + * must define RIGHT_SHIFT_IS_UNSIGNED. + * RIGHT_SHIFT provides a proper signed right shift of an INT32 quantity. + * It is only applied with constant shift counts. SHIFT_TEMPS must be + * included in the variables of any routine using RIGHT_SHIFT. + */ + +#ifdef RIGHT_SHIFT_IS_UNSIGNED +#define SHIFT_TEMPS INT32 shift_temp; +#define RIGHT_SHIFT(x,shft) \ + ((shift_temp = (x)) < 0 ? \ + (shift_temp >> (shft)) | ((~((INT32) 0)) << (32-(shft))) : \ + (shift_temp >> (shft))) +#else +#define SHIFT_TEMPS +#define RIGHT_SHIFT(x,shft) ((x) >> (shft)) +#endif + + +METHODDEF(void) +ycc_rgb_convert_argb (j_decompress_ptr cinfo, + JSAMPIMAGE input_buf, JDIMENSION input_row, + JSAMPARRAY output_buf, int num_rows) +{ + JDIMENSION num_cols = cinfo->output_width; + JSAMPLE * range_limit = cinfo->sample_range_limit; + + SHIFT_TEMPS + + /* This is used if we don't have SSE2 */ + + while (--num_rows >= 0) { + JSAMPROW inptr0 = input_buf[0][input_row]; + JSAMPROW inptr1 = input_buf[1][input_row]; + JSAMPROW inptr2 = input_buf[2][input_row]; + input_row++; + uint32_t *outptr = (uint32_t *) *output_buf++; + for (JDIMENSION col = 0; col < num_cols; col++) { + int y = GETJSAMPLE(inptr0[col]); + int cb = GETJSAMPLE(inptr1[col]); + int cr = GETJSAMPLE(inptr2[col]); + JSAMPLE * range_limit_y = range_limit + y; + /* Range-limiting is essential due to noise introduced by DCT losses. */ + outptr[col] = 0xFF000000 | + ( range_limit_y[Cr_r_tab[cr]] << 16 ) | + ( range_limit_y[((int) RIGHT_SHIFT(Cb_g_tab[cb] + Cr_g_tab[cr], SCALEBITS))] << 8 ) | + ( range_limit_y[Cb_b_tab[cb]] ); + } + } +} +#endif + + ///*************** Inverted CMYK -> RGB conversion ************************* /// Input is (Inverted) CMYK stored as 4 bytes per pixel. /// Output is RGB stored as 3 bytes per pixel. Index: branches/2015Q4/www/seamonkey/files/patch-ldap_ldap-sdk.mozbuild =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-ldap_ldap-sdk.mozbuild (nonexistent) +++ branches/2015Q4/www/seamonkey/files/patch-ldap_ldap-sdk.mozbuild (revision 402340) @@ -0,0 +1,22 @@ +--- ldap/ldap-sdk.mozbuild.orig 2015-11-04 01:43:24 UTC ++++ ldap/ldap-sdk.mozbuild +@@ -7,15 +7,13 @@ NO_VISIBILITY_FLAGS = True + DISABLE_STL_WRAPPING = True + + if CONFIG['OS_TARGET'] == 'Linux': +- DEFINES['LINUX'] = 1 + DEFINES['LINUX2_0'] = True + DEFINES['linux'] = 1 +-elif CONFIG['OS_TARGET'] == 'Darwin': +- DEFINES["DARWIN"] = 1 +-elif CONFIG['OS_TARGET'] in ('OpenBSD', 'FreeBSD', 'NetBSD'): +- DEFINES[CONFIG['OS_TARGET'].upper()] = True +-elif CONFIG['OS_ARCH'] == 'WINNT': ++ ++if CONFIG['OS_ARCH'] == 'WINNT': + DEFINES['_WINDOWS'] = True ++else: ++ DEFINES[CONFIG['OS_TARGET'].upper()] = True + + DEFINES['_PR_PTHREADS'] = True + DEFINES['NET_SSL'] = True Property changes on: branches/2015Q4/www/seamonkey/files/patch-ldap_ldap-sdk.mozbuild ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-media-libstagefright-foundation-AString.cpp =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-media-libstagefright-foundation-AString.cpp (nonexistent) +++ branches/2015Q4/www/seamonkey/files/patch-media-libstagefright-foundation-AString.cpp (revision 402340) @@ -0,0 +1,16 @@ +--- mozilla/media/libstagefright/frameworks/av/media/libstagefright/foundation/AString.cpp~ ++++ mozilla/media/libstagefright/frameworks/av/media/libstagefright/foundation/AString.cpp +@@ -23,6 +23,13 @@ + #include "ADebug.h" + #include "AString.h" + ++#ifdef __FreeBSD__ ++# include ++# if __FreeBSD_version < 900506 ++# undef tolower ++# endif ++#endif ++ + namespace stagefright { + + // static Property changes on: branches/2015Q4/www/seamonkey/files/patch-media-libstagefright-foundation-AString.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-media-mtransport-third_party-nICEr-src-util-mbslen.c =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-media-mtransport-third_party-nICEr-src-util-mbslen.c (nonexistent) +++ branches/2015Q4/www/seamonkey/files/patch-media-mtransport-third_party-nICEr-src-util-mbslen.c (revision 402340) @@ -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 ++# if __DragonFly_version > 300502 ++# define HAVE_XLOCALE ++# endif ++#endif ++ + #ifdef HAVE_XLOCALE + #include + #endif /* HAVE_XLOCALE */ Property changes on: branches/2015Q4/www/seamonkey/files/patch-media-mtransport-third_party-nICEr-src-util-mbslen.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-media-webrtc-trunk-src-system_wrappers-source-spreadsortlib-spreadsort.hpp =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-media-webrtc-trunk-src-system_wrappers-source-spreadsortlib-spreadsort.hpp (nonexistent) +++ branches/2015Q4/www/seamonkey/files/patch-media-webrtc-trunk-src-system_wrappers-source-spreadsortlib-spreadsort.hpp (revision 402340) @@ -0,0 +1,16 @@ +--- mozilla/media/webrtc/trunk/webrtc/system_wrappers/source/spreadsortlib/spreadsort.hpp~ ++++ mozilla/media/webrtc/trunk/webrtc/system_wrappers/source/spreadsortlib/spreadsort.hpp +@@ -21,6 +21,13 @@ Scott McMurray + #include "constants.hpp" + #include + ++#ifdef __FreeBSD__ ++# include ++# if __FreeBSD_version < 900506 ++# define getchar boost_getchar ++# endif ++#endif ++ + namespace boost { + namespace detail { + //This only works on unsigned data types Property changes on: branches/2015Q4/www/seamonkey/files/patch-media-webrtc-trunk-src-system_wrappers-source-spreadsortlib-spreadsort.hpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-media_libav_config__unix.h =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-media_libav_config__unix.h (nonexistent) +++ branches/2015Q4/www/seamonkey/files/patch-media_libav_config__unix.h (revision 402340) @@ -0,0 +1,11 @@ +--- mozilla/media/libav/config_unix.h.orig 2015-10-29 22:17:49 UTC ++++ mozilla/media/libav/config_unix.h +@@ -144,7 +144,7 @@ + #define HAVE_MACH_MACH_TIME_H 0 + #define HAVE_MACHINE_IOCTL_BT848_H 0 + #define HAVE_MACHINE_IOCTL_METEOR_H 0 +-#define HAVE_MALLOC_H 1 ++#define HAVE_MALLOC_H 0 + #define HAVE_POLL_H 1 + #define HAVE_SNDIO_H 0 + #define HAVE_SOUNDCARD_H 0 Property changes on: branches/2015Q4/www/seamonkey/files/patch-media_libav_config__unix.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-modules-libpref-init-all.js =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-modules-libpref-init-all.js (nonexistent) +++ branches/2015Q4/www/seamonkey/files/patch-modules-libpref-init-all.js (revision 402340) @@ -0,0 +1,15 @@ +--- mozilla/modules/libpref/init/all.js.orig 2015-08-06 22:39:34 UTC ++++ mozilla/modules/libpref/init/all.js +@@ -4052,7 +4052,12 @@ pref("layers.max-active", -1); + pref("layers.tiles.adjust", true); + + // Set the default values, and then override per-platform as needed ++#ifdef MOZ_TREE_CAIRO + pref("layers.offmainthreadcomposition.enabled", true); ++#else ++// Disable for system cairo on suspicion of causing random crashes ++pref("layers.offmainthreadcomposition.enabled", false); ++#endif + // Compositor target frame rate. NOTE: If vsync is enabled the compositor + // frame rate will still be capped. + // -1 -> default (match layout.frame_rate or 60 FPS) Property changes on: branches/2015Q4/www/seamonkey/files/patch-modules-libpref-init-all.js ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-soundtouch-no-factory =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-soundtouch-no-factory (nonexistent) +++ branches/2015Q4/www/seamonkey/files/patch-soundtouch-no-factory (revision 402340) @@ -0,0 +1,84 @@ +# Partially revert bug 1176300 to unbreak build with system libsoundtouch + +diff --git dom/media/AudioStream.cpp dom/media/AudioStream.cpp +--- mozilla/dom/media/AudioStream.cpp ++++ mozilla/dom/media/AudioStream.cpp +@@ -129,7 +129,6 @@ + , mOutChannels(0) + , mWritten(0) + , mAudioClock(this) +- , mTimeStretcher(nullptr) + , mLatencyRequest(HighLatency) + , mReadPoint(0) + , mDumpFile(nullptr) +@@ -152,9 +151,6 @@ + if (mDumpFile) { + fclose(mDumpFile); + } +- if (mTimeStretcher) { +- soundtouch::destroySoundTouchObj(mTimeStretcher); +- } + } + + size_t +@@ -177,7 +173,7 @@ + { + mMonitor.AssertCurrentThreadOwns(); + if (!mTimeStretcher) { +- mTimeStretcher = soundtouch::createSoundTouchObj(); ++ mTimeStretcher = new soundtouch::SoundTouch(); + mTimeStretcher->setSampleRate(mInRate); + mTimeStretcher->setChannels(mOutChannels); + mTimeStretcher->setPitch(1.0); +diff --git dom/media/AudioStream.h dom/media/AudioStream.h +--- mozilla/dom/media/AudioStream.h ++++ mozilla/dom/media/AudioStream.h +@@ -15,7 +15,7 @@ + #include "mozilla/RefPtr.h" + #include "mozilla/UniquePtr.h" + #include "CubebUtils.h" +-#include "soundtouch/SoundTouchFactory.h" ++#include "soundtouch/SoundTouch.h" + + namespace mozilla { + +@@ -329,7 +329,7 @@ + // Number of frames written to the buffers. + int64_t mWritten; + AudioClock mAudioClock; +- soundtouch::SoundTouch* mTimeStretcher; ++ nsAutoPtr mTimeStretcher; + nsRefPtr mLatencyLog; + + // copy of Latency logger's starting time for offset calculations +diff --git media/libsoundtouch/src/moz.build media/libsoundtouch/src/moz.build +--- mozilla/media/libsoundtouch/src/moz.build ++++ mozilla/media/libsoundtouch/src/moz.build +@@ -8,7 +8,6 @@ + 'FIFOSamplePipe.h', + 'SoundTouch.h', + 'soundtouch_config.h', +- 'SoundTouchFactory.h', + 'STTypes.h', + ] + +@@ -22,7 +21,6 @@ + 'InterpolateShannon.cpp', + 'RateTransposer.cpp', + 'SoundTouch.cpp', +- 'SoundTouchFactory.cpp', + 'TDStretch.cpp', + ] + +diff --git media/libsoundtouch/src/soundtouch_perms.h media/libsoundtouch/src/soundtouch_perms.h +--- mozilla/media/libsoundtouch/src/soundtouch_perms.h ++++ mozilla/media/libsoundtouch/src/soundtouch_perms.h +@@ -12,7 +12,6 @@ + + #pragma GCC visibility push(default) + #include "SoundTouch.h" +-#include "SoundTouchFactory.h" + #pragma GCC visibility pop + + #endif // MOZILLA_SOUNDTOUCH_PERMS_H + Property changes on: branches/2015Q4/www/seamonkey/files/patch-soundtouch-no-factory ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-suite-app-nsSuiteApp.cpp =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-suite-app-nsSuiteApp.cpp (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-suite-app-nsSuiteApp.cpp (revision 402340) @@ -1,21 +1,12 @@ --- suite/app/nsSuiteApp.cpp~ +++ suite/app/nsSuiteApp.cpp @@ -331,6 +331,9 @@ int main(int argc, char* argv[]) TriggerQuirks(); #endif ++ setenv("MOZ_GMP_PATH", "%%LOCALBASE%%/lib/browser_plugins/symlinks/gecko", 0); + setenv("MOZ_PLUGIN_PATH", "%%LOCALBASE%%/lib/browser_plugins/symlinks/gecko", 0); -+ setenv("MOZ_PLUGIN_PATH", "%%LOCALBASE%%/lib/browser_plugins/symlinks/gecko", 0); + int gotCounters; #if defined(XP_UNIX) struct rusage initialRUsage; -@@ -339,7 +342,7 @@ int main(int argc, char* argv[]) - IO_COUNTERS ioCounters; - gotCounters = GetProcessIoCounters(GetCurrentProcess(), &ioCounters); - #endif -- -+ - nsIFile *xreDirectory; - - #ifdef HAS_DLL_BLOCKLIST Index: branches/2015Q4/www/seamonkey/files/patch-toolkit_mozapps_installer_packager_mk =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-toolkit_mozapps_installer_packager_mk (nonexistent) +++ branches/2015Q4/www/seamonkey/files/patch-toolkit_mozapps_installer_packager_mk (revision 402340) @@ -0,0 +1,13 @@ +$OpenBSD: patch-toolkit_mozapps_installer_packager_mk,v 1.11 2012/06/11 15:29:56 landry Exp $ +install headers/idl/sdk libs only if xulrunner +--- mozilla/toolkit/mozapps/installer/packager.mk.orig Fri Jun 1 14:04:20 2012 ++++ mozilla/toolkit/mozapps/installer/packager.mk Tue Jun 5 07:55:51 2012 +@@ -127,7 +127,7 @@ endif + $(NSINSTALL) -D $(DESTDIR)$(bindir) + $(RM) -f $(DESTDIR)$(bindir)/$(MOZ_APP_NAME) + ln -s $(installdir)/$(MOZ_APP_NAME) $(DESTDIR)$(bindir) +-ifdef INSTALL_SDK # Here comes the hard part ++ifeq ($(MOZ_APP_NAME),xulrunner) + $(NSINSTALL) -D $(DESTDIR)$(includedir) + (cd $(DIST)/include && tar $(TAR_CREATE_FLAGS) - .) | \ + (cd $(DESTDIR)$(includedir) && tar -xf -) Property changes on: branches/2015Q4/www/seamonkey/files/patch-toolkit_mozapps_installer_packager_mk ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-toolkit_system_unixproxy_nsLibProxySettings.cpp =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-toolkit_system_unixproxy_nsLibProxySettings.cpp (nonexistent) +++ branches/2015Q4/www/seamonkey/files/patch-toolkit_system_unixproxy_nsLibProxySettings.cpp (revision 402340) @@ -0,0 +1,10 @@ +--- mozilla/toolkit/system/unixproxy/nsLibProxySettings.cpp.orig 2015-10-29 22:18:00 UTC ++++ mozilla/toolkit/system/unixproxy/nsLibProxySettings.cpp +@@ -9,6 +9,7 @@ + #include "nsIURI.h" + #include "nsString.h" + #include "nsCOMPtr.h" ++#include "nsNetCID.h" + #include "nspr.h" + + extern "C" { Property changes on: branches/2015Q4/www/seamonkey/files/patch-toolkit_system_unixproxy_nsLibProxySettings.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: branches/2015Q4/www/seamonkey/files/patch-z-bug517422 =================================================================== --- branches/2015Q4/www/seamonkey/files/patch-z-bug517422 (revision 402339) +++ branches/2015Q4/www/seamonkey/files/patch-z-bug517422 (revision 402340) @@ -1,524 +1,574 @@ # Allow more config/external/ libs built against system-wide version. diff --git config/Makefile.in config/Makefile.in index 5383399..0410004 100644 --- mozilla/config/Makefile.in +++ mozilla/config/Makefile.in -@@ -77,6 +77,13 @@ export:: $(export-preqs) +@@ -77,6 +77,14 @@ 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_CELT=$(MOZ_NATIVE_CELT) \ + -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 f67c5c7..eb909ce 100644 --- mozilla/config/external/moz.build +++ mozilla/config/external/moz.build -@@ -16,13 +16,19 @@ if CONFIG['MOZ_UPDATER']: - if not CONFIG['MOZ_NATIVE_BZ2']: - external_dirs += ['modules/libbz2'] +@@ -19,10 +19,19 @@ if CONFIG['MOZ_UPDATER']: + # There's no "native brotli" yet, but probably in the future... + external_dirs += ['modules/brotli'] -if CONFIG['MOZ_VORBIS']: +if not CONFIG['MOZ_NATIVE_OGG']: + external_dirs += ['media/libogg'] + ++if not CONFIG['MOZ_NATIVE_CELT'] or not CONFIG['MOZ_NATIVE_OPUS']: ++ external_dirs += ['media/libopus'] ++ +if not CONFIG['MOZ_NATIVE_THEORA']: + external_dirs += ['media/libtheora'] + +if CONFIG['MOZ_VORBIS'] and not CONFIG['MOZ_NATIVE_VORBIS']: external_dirs += ['media/libvorbis'] -if CONFIG['MOZ_TREMOR']: +if CONFIG['MOZ_TREMOR'] and not CONFIG['MOZ_NATIVE_TREMOR']: external_dirs += ['media/libtremor'] --if CONFIG['MOZ_OPUS']: -+if CONFIG['MOZ_OPUS'] and not CONFIG['MOZ_NATIVE_OPUS']: - external_dirs += ['media/libopus'] - if CONFIG['MOZ_WEBM']: -@@ -37,14 +43,16 @@ if CONFIG['MOZ_VPX'] and not CONFIG['MOZ_NATIVE_LIBVPX']: +@@ -37,15 +46,16 @@ if CONFIG['MOZ_VPX'] and not CONFIG['MOZ 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/libogg', +- 'media/libopus', - 'media/libtheora', - 'media/libspeex_resampler', 'media/libstagefright', - 'media/libsoundtouch', ] DIRS += ['../../' + i for i in external_dirs] diff --git config/system-headers config/system-headers index bef567c..9807c29 100644 --- mozilla/config/system-headers +++ mozilla/config/system-headers -@@ -1263,7 +1263,6 @@ X11/Xlocale.h +@@ -1257,8 +1257,10 @@ X11/Xlocale.h X11/Xos.h X11/Xutil.h zmouse.h --soundtouch/SoundTouch.h - #if MOZ_NATIVE_PNG==1 - png.h ++#if MOZ_NATIVE_SOUNDTOUCH==1 + soundtouch/SoundTouch.h + soundtouch/SoundTouchFactory.h ++#endif + #if MOZ_LIBAV_FFT==1 + libavcodec/avfft.h #endif -@@ -1325,6 +1324,7 @@ vorbis/codec.h - theora/theoradec.h - tremor/ivorbiscodec.h - speex/speex_resampler.h +@@ -1313,6 +1315,8 @@ vpx/vp8dx.h + vpx_mem/vpx_mem.h + #endif + #ifdef GKMEDIAS_SHARED_LIBRARY +soundtouch/SoundTouch.h - ogg/ogg.h - ogg/os_types.h - nestegg/nestegg.h -@@ -1365,3 +1365,29 @@ graphite2/Segment.h ++soundtouch/SoundTouchFactory.h + vpx/vpx_codec.h + vpx/vpx_decoder.h + vpx/vpx_encoder.h +@@ -1364,3 +1363,32 @@ graphite2/Segment.h harfbuzz/hb-ot.h harfbuzz/hb.h #endif +#if MOZ_NATIVE_OGG==1 +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_CELT==1 ++celt.h ++celt_header.h ++celt/celt.h ++celt/celt_header.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 87db361..7947626 100644 --- mozilla/configure.in +++ mozilla/configure.in -@@ -5056,6 +5056,57 @@ if test "${ac_cv_c_attribute_aligned}" != "0"; then +@@ -5223,6 +5223,157 @@ if test "${ac_cv_c_attribute_aligned}" ! fi dnl ======================================================== +dnl Check for libogg +dnl ======================================================== + +MOZ_ARG_WITH_BOOL(system-ogg, +[ --with-system-ogg Use system libogg (located with pkgconfig)], +MOZ_NATIVE_OGG=1, +MOZ_NATIVE_OGG=) + +if test -n "$MOZ_NATIVE_OGG"; then + PKG_CHECK_MODULES(MOZ_OGG, ogg >= 1.2.1) + + _SAVE_LIBS=$LIBS + LIBS="$LIBS $MOZ_OGG_LIBS" + AC_CHECK_FUNC(ogg_set_mem_functions, [], + [AC_DEFINE(MOZ_OGG_NO_MEM_REPORTING)]) + LIBS=$_SAVE_LIBS +fi + +AC_SUBST(MOZ_NATIVE_OGG) + +dnl ======================================================== +dnl Check for libvorbis +dnl ======================================================== + +MOZ_ARG_WITH_BOOL(system-vorbis, +[ --with-system-vorbis Use system libvorbis (located with pkgconfig)], +MOZ_NATIVE_VORBIS=1, +MOZ_NATIVE_VORBIS=) + +if test -n "$MOZ_NATIVE_VORBIS"; then + PKG_CHECK_MODULES(MOZ_VORBIS, vorbis vorbisenc >= 1.3.5) +fi + +AC_SUBST(MOZ_NATIVE_VORBIS) + +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) + +dnl ======================================================== - dnl = Disable Opus audio codec support - dnl ======================================================== - MOZ_ARG_DISABLE_BOOL(opus, -@@ -5064,6 +5115,89 @@ MOZ_ARG_DISABLE_BOOL(opus, - MOZ_OPUS=1) - - dnl ======================================================== ++dnl Check for libcelt ++dnl ======================================================== ++ ++MOZ_ARG_WITH_BOOL(system-celt, ++[ --with-system-celt Use system libcelt (located with pkgconfig)], ++MOZ_NATIVE_CELT=1, ++MOZ_NATIVE_CELT=) ++ ++if test -n "$MOZ_NATIVE_CELT"; then ++ PKG_CHECK_MODULES(MOZ_CELT, celt) ++else ++ MOZ_CELT_CFLAGS='-I$(topsrcdir)/media/libopus' ++fi ++ ++AC_SUBST(MOZ_NATIVE_CELT) ++ ++dnl ======================================================== +dnl Check for libopus +dnl ======================================================== + +MOZ_ARG_WITH_BOOL(system-opus, +[ --with-system-opus Use system libopus (located with pkgconfig)], +MOZ_NATIVE_OPUS=1, +MOZ_NATIVE_OPUS=) + +if test -n "$MOZ_NATIVE_OPUS"; then + PKG_CHECK_MODULES(MOZ_OPUS, opus >= 1.1) +else + MOZ_OPUS_CFLAGS='-I$(topsrcdir)/media/libopus/include' +fi + +AC_SUBST(MOZ_NATIVE_OPUS) + +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) + +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) + +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.8.0) + + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + _SAVE_CXXFLAGS=$CXXFLAGS + CXXFLAGS="$CXXFLAGS $MOZ_SOUNDTOUCH_CFLAGS" + AC_CACHE_CHECK(for soundtouch sample type, + ac_cv_soundtouch_sample_type, + [AC_TRY_COMPILE([#include + #ifndef SOUNDTOUCH_INTEGER_SAMPLES + #error soundtouch expects float samples + #endif], + [], + [ac_cv_soundtouch_sample_type=short], + [ac_cv_soundtouch_sample_type=float])]) + CXXFLAGS=$_SAVE_CXXFLAGS + AC_LANG_RESTORE + + if test \( -n "$MOZ_SAMPLE_TYPE_S16" -a "$ac_cv_soundtouch_sample_type" != short \) \ + -o \( -n "$MOZ_SAMPLE_TYPE_FLOAT32" -a "$ac_cv_soundtouch_sample_type" != float \) ; then + AC_MSG_ERROR([SoundTouch library is built with incompatible sample type. Either rebuild the library with/without --enable-integer-samples, chase default Mozilla sample type or remove --with-system-soundtouch.]) + fi +fi + +AC_SUBST(MOZ_NATIVE_SOUNDTOUCH) + +dnl ======================================================== dnl = Disable VP8 decoder support dnl ======================================================== MOZ_ARG_DISABLE_BOOL(webm, -diff --git dom/media/AudioStream.h dom/media/AudioStream.h -index 085676d..00c54fb 100644 ---- mozilla/dom/media/AudioStream.h -+++ mozilla/dom/media/AudioStream.h -@@ -17,7 +17,7 @@ - #include "CubebUtils.h" - - namespace soundtouch { --class SoundTouch; -+class MOZ_IMPORT_API SoundTouch; - } - - namespace mozilla { diff --git dom/media/moz.build dom/media/moz.build index 7526cff..e0a0ca0 100644 --- mozilla/dom/media/moz.build +++ mozilla/dom/media/moz.build @@ -212,3 +212,24 @@ if CONFIG['ANDROID_VERSION'] > '15': CFLAGS += CONFIG['GSTREAMER_CFLAGS'] CXXFLAGS += CONFIG['GSTREAMER_CFLAGS'] + +if CONFIG['MOZ_NATIVE_OGG']: + CXXFLAGS += CONFIG['MOZ_OGG_CFLAGS'] + +if CONFIG['MOZ_NATIVE_THEORA']: + CXXFLAGS += CONFIG['MOZ_THEORA_CFLAGS'] + +if CONFIG['MOZ_NATIVE_VORBIS']: + CXXFLAGS += CONFIG['MOZ_VORBIS_CFLAGS'] + +if CONFIG['MOZ_NATIVE_TREMOR']: + CXXFLAGS += CONFIG['MOZ_TREMOR_CFLAGS'] + +if CONFIG['MOZ_NATIVE_OPUS']: + CXXFLAGS += CONFIG['MOZ_OPUS_CFLAGS'] + +if CONFIG['MOZ_NATIVE_SPEEX']: + CXXFLAGS += CONFIG['MOZ_SPEEX_CFLAGS'] + +if CONFIG['MOZ_NATIVE_SOUNDTOUCH']: + CXXFLAGS += CONFIG['MOZ_SOUNDTOUCH_CFLAGS'] diff --git media/libcubeb/src/moz.build media/libcubeb/src/moz.build index 944744d..9a7c8c0 100644 --- mozilla/media/libcubeb/src/moz.build +++ mozilla/media/libcubeb/src/moz.build @@ -65,6 +65,9 @@ if CONFIG['GKMEDIAS_SHARED_LIBRARY']: FINAL_LIBRARY = 'gkmedias' +if CONFIG['MOZ_NATIVE_SPEEX']: + SOURCES['cubeb_resampler.cpp'].flags += CONFIG['MOZ_SPEEX_CFLAGS'] + if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk': CFLAGS += [ '-I%s/%s' % (CONFIG['ANDROID_SOURCE'], d) for d in [ diff --git media/libogg/README_MOZILLA media/libogg/README_MOZILLA index 0833e4d..7ece97b 100644 --- mozilla/media/libogg/README_MOZILLA +++ mozilla/media/libogg/README_MOZILLA @@ -6,3 +6,6 @@ The svn revision number used was r17287. The int-types.patch address a bug that config_types.h generated from Linux platform can't be used on OpenSolaris directly see Mozilla bug 449754 + +The in-tree copy may be omitted during build by --with-system-ogg. +Keep version in configure.in in sync on updates. diff --git media/libopus/README_MOZILLA media/libopus/README_MOZILLA index 2d85c9f..d3fb9f8 100644 --- mozilla/media/libopus/README_MOZILLA +++ mozilla/media/libopus/README_MOZILLA @@ -9,3 +9,6 @@ files after the copy step. The upstream repository is https://git.xiph.org/opus.git The git tag/revision used was v1.1. + +The in-tree copy may be omitted during build by --with-system-opus. +So, keep its pkg-config version check within configure.in in sync on updates. diff --git media/libsoundtouch/README_MOZILLA media/libsoundtouch/README_MOZILLA index bfd4b1a..15b158d 100644 --- mozilla/media/libsoundtouch/README_MOZILLA +++ mozilla/media/libsoundtouch/README_MOZILLA @@ -6,3 +6,5 @@ The whole library is not used, only the relevant files are imported in the tree, using the script `update.sh`. Some changes have been made to the files, using the patch `moz-libsoundtouch.patch`. We also use a custom soundtouch_config.h. +The in-tree copy may be omitted during build by --with-system-soundtouch. +Keep version in configure.in in sync on updates. diff --git media/libspeex_resampler/README_MOZILLA media/libspeex_resampler/README_MOZILLA index 7f6b1bb..e830300 100644 --- mozilla/media/libspeex_resampler/README_MOZILLA +++ mozilla/media/libspeex_resampler/README_MOZILLA @@ -3,3 +3,6 @@ This source is from the Speex DSP library It consists in the audio resampling code (resampler.c) and its header files dependancies, imported into the tree using the update.sh script. + +The in-tree copy may be omitted during build by --with-system-speex. +Keep version in configure.in in sync on updates. diff --git media/libtheora/README_MOZILLA media/libtheora/README_MOZILLA index d48dbfa..f08a2ed 100644 --- mozilla/media/libtheora/README_MOZILLA +++ mozilla/media/libtheora/README_MOZILLA @@ -3,3 +3,6 @@ using the update.sh script. The changes made were those applied by update.sh, the addition/update of Makefile.in files for the Mozilla build system. The subversion revision used was r17578. + +The in-tree copy may be omitted during build by --with-system-theora. +Keep version in configure.in in sync on updates. diff --git media/libtheora/moz.build media/libtheora/moz.build index 14265b1..3069e99 100644 --- mozilla/media/libtheora/moz.build +++ mozilla/media/libtheora/moz.build -@@ -93,3 +93,5 @@ if CONFIG['GNU_AS']: - if CONFIG['OS_TARGET'] == 'Android': - DEFINES['__linux__'] = True +@@ -21,6 +21,9 @@ if CONFIG['GKMEDIAS_SHARED_LIBRARY']: + # The encoder is currently not included. + DEFINES['THEORA_DISABLE_ENCODE'] = True +if CONFIG['MOZ_NATIVE_OGG']: + CFLAGS += CONFIG['MOZ_OGG_CFLAGS'] ++ + # Suppress warnings in third-party code. + if CONFIG['GNU_CC']: + CFLAGS += ['-Wno-type-limits'] diff --git media/libtremor/README_MOZILLA media/libtremor/README_MOZILLA index ee67b53..3f34a09 100644 --- mozilla/media/libtremor/README_MOZILLA +++ mozilla/media/libtremor/README_MOZILLA @@ -5,3 +5,6 @@ Makefile.in files for the Mozilla build system. The upstream release used was http://svn.xiph.org/trunk/Tremor/ The subversion revision used was r17547. + +The in-tree copy may be omitted during build by --with-system-tremor. +Keep version in configure.in in sync on updates. diff --git media/libtremor/moz.build media/libtremor/moz.build index 31831ba..a03d576 100644 --- mozilla/media/libtremor/moz.build +++ mozilla/media/libtremor/moz.build @@ -6,3 +6,5 @@ DIRS += ['include/tremor', 'lib'] +if CONFIG['MOZ_NATIVE_OGG']: + CFLAGS += CONFIG['MOZ_OGG_CFLAGS'] diff --git media/libvorbis/README_MOZILLA media/libvorbis/README_MOZILLA index 7c7454c..55baedd 100644 --- mozilla/media/libvorbis/README_MOZILLA +++ mozilla/media/libvorbis/README_MOZILLA @@ -8,3 +8,6 @@ https://svn.xiph.org/tags/vorbis/libvorbis-1.3.4@19059 Some files are renamed during the copy to prevent clashes with object file names with other Mozilla libraries. + +The in-tree copy may be omitted during build by --with-system-vorbis. +Keep version in configure.in in sync on updates. diff --git media/libvorbis/moz.build media/libvorbis/moz.build index 919b99e..cc776f7 100644 --- mozilla/media/libvorbis/moz.build +++ mozilla/media/libvorbis/moz.build @@ -55,3 +55,6 @@ FINAL_LIBRARY = 'gkmedias' # Suppress warnings in third-party code. if CONFIG['GNU_CC']: CFLAGS += ['-Wno-uninitialized'] + +if CONFIG['MOZ_NATIVE_OGG']: + CFLAGS += CONFIG['MOZ_OGG_CFLAGS'] -diff --git media/webrtc/signaling/test/moz.build media/webrtc/signaling/test/moz.build +diff --git media/webrtc/signaling/test/common.build media/webrtc/signaling/test/common.build index bbc971c..6ed7e41 100644 ---- mozilla/media/webrtc/signaling/test/moz.build -+++ mozilla/media/webrtc/signaling/test/moz.build -@@ -127,6 +127,9 @@ if CONFIG['MOZ_ALSA']: +--- mozilla/media/webrtc/signaling/test/common.build ++++ mozilla/media/webrtc/signaling/test/common.build +@@ -108,6 +109,9 @@ if CONFIG['MOZ_OSS']: if CONFIG['MOZ_NATIVE_JPEG']: OS_LIBS += CONFIG['MOZ_JPEG_LIBS'] +if CONFIG['MOZ_NATIVE_OPUS']: + OS_LIBS += CONFIG['MOZ_OPUS_LIBS'] + if CONFIG['MOZ_NATIVE_LIBVPX']: OS_LIBS += CONFIG['MOZ_LIBVPX_LIBS'] diff --git media/webrtc/trunk/webrtc/modules/audio_coding/codecs/opus/opus.gypi media/webrtc/trunk/webrtc/modules/audio_coding/codecs/opus/opus.gypi index 00e77e7..55f48ab 100644 --- mozilla/media/webrtc/trunk/webrtc/modules/audio_coding/codecs/opus/opus.gypi +++ mozilla/media/webrtc/trunk/webrtc/modules/audio_coding/codecs/opus/opus.gypi -@@ -17,9 +17,9 @@ +@@ -17,18 +17,11 @@ 'conditions': [ ['build_with_mozilla==1', { # Mozilla provides its own build of the opus library. - 'include_dirs': [ - '/media/libopus/include', -- ] +- '/media/libopus/src', +- '/media/libopus/celt', + 'cflags_mozilla': [ ++ '$(filter -I%, $(MOZ_CELT_CFLAGS))/celt', + '$(MOZ_OPUS_CFLAGS)', -+ ], ++ '$(filter -I%, $(MOZ_OPUS_CFLAGS))/../src', + ], +- 'direct_dependent_settings': { +- 'include_dirs': [ +- '/media/libopus/include', +- '/media/libopus/src', +- '/media/libopus/celt', +- ], +- }, }, { 'dependencies': [ '<(DEPTH)/third_party/opus/opus.gyp:opus' +diff --git media/webrtc/trunk/webrtc/modules/audio_coding/neteq/neteq.gypi media/webrtc/trunk/webrtc/modules/audio_coding/neteq/neteq.gypi +index 00e77e7..55f48ab 100644 +--- mozilla/media/webrtc/trunk/webrtc/modules/audio_coding/neteq/neteq.gypi ++++ mozilla/media/webrtc/trunk/webrtc/modules/audio_coding/neteq/neteq.gypi +@@ -84,19 +84,11 @@ + ], + }], + ['build_with_mozilla==1', { +- 'include_dirs': [ +- # Need Opus header files for the audio classifier. +- '<(DEPTH)/../../../media/opus/celt', +-# '<(DEPTH)/third_party/opus/src/src', ++ 'cflags_mozilla': [ ++ '$(filter -I%, $(MOZ_CELT_CFLAGS))/celt', ++ '$(MOZ_OPUS_CFLAGS)', ++ '$(filter -I%, $(MOZ_OPUS_CFLAGS))/../src', + ], +- 'direct_dependent_settings': { +- 'include_dirs': [ +- '../../../../../../media/opus/celt', +- # Need Opus header files for the audio classifier. +- '<(DEPTH)/../../../media/opus/celt', +-# '<(DEPTH)/third_party/opus/src/src', +- ], +- }, + }], + ], + 'sources': [ diff --git toolkit/library/moz.build toolkit/library/moz.build index d42137a..695e75a8 100644 --- mozilla/toolkit/library/moz.build +++ mozilla/toolkit/library/moz.build -@@ -178,6 +178,27 @@ if CONFIG['MOZ_NATIVE_PNG']: +@@ -178,6 +178,30 @@ if CONFIG['MOZ_NATIVE_PNG']: if CONFIG['MOZ_NATIVE_HUNSPELL']: OS_LIBS += CONFIG['MOZ_HUNSPELL_LIBS'] +if CONFIG['MOZ_NATIVE_OGG']: + OS_LIBS += CONFIG['MOZ_OGG_LIBS'] + +if CONFIG['MOZ_NATIVE_THEORA']: + OS_LIBS += CONFIG['MOZ_THEORA_LIBS'] + +if CONFIG['MOZ_NATIVE_VORBIS']: + OS_LIBS += CONFIG['MOZ_VORBIS_LIBS'] + +if CONFIG['MOZ_NATIVE_TREMOR']: + OS_LIBS += CONFIG['MOZ_TREMOR_LIBS'] ++ ++if CONFIG['MOZ_NATIVE_CELT']: ++ OS_LIBS += CONFIG['MOZ_CELT_LIBS'] + +if CONFIG['MOZ_NATIVE_OPUS']: + OS_LIBS += CONFIG['MOZ_OPUS_LIBS'] + +if CONFIG['MOZ_NATIVE_SPEEX']: + OS_LIBS += CONFIG['MOZ_SPEEX_LIBS'] + +if CONFIG['MOZ_NATIVE_SOUNDTOUCH']: + OS_LIBS += CONFIG['MOZ_SOUNDTOUCH_LIBS'] + if CONFIG['MOZ_NATIVE_LIBEVENT']: OS_LIBS += CONFIG['MOZ_LIBEVENT_LIBS'] diff --git xpcom/build/XPCOMInit.cpp xpcom/build/XPCOMInit.cpp index 2cf281e..6d7af0e 100644 --- mozilla/xpcom/build/XPCOMInit.cpp +++ mozilla/xpcom/build/XPCOMInit.cpp @@ -138,7 +138,9 @@ extern nsresult nsStringInputStreamConstructor(nsISupports*, REFNSIID, void**); #include "mozilla/VisualEventTracer.h" #endif +#ifndef MOZ_OGG_NO_MEM_REPORTING #include "ogg/ogg.h" +#endif #if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING) #include "vpx_mem/vpx_mem.h" #endif @@ -651,11 +653,13 @@ NS_InitXPCOM2(nsIServiceManager** aResult, // this oddness. mozilla::SetICUMemoryFunctions(); +#ifndef MOZ_OGG_NO_MEM_REPORTING // Do the same for libogg. ogg_set_mem_functions(OggReporter::CountingMalloc, OggReporter::CountingCalloc, OggReporter::CountingRealloc, OggReporter::CountingFree); +#endif #if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING) // And for VPX. Index: branches/2015Q4/www/seamonkey-i18n/Makefile =================================================================== --- branches/2015Q4/www/seamonkey-i18n/Makefile (revision 402339) +++ branches/2015Q4/www/seamonkey-i18n/Makefile (revision 402340) @@ -1,90 +1,90 @@ # Created by: Andrew Pantyukhin # $FreeBSD$ PORTNAME= seamonkey-i18n -PORTVERSION= 2.33.1 +PORTVERSION= 2.39 CATEGORIES= www mail news editors irc MASTER_SITES= MOZILLA/${PORTNAME:S|-i18n||}/releases/${DISTVERSION}/langpack \ MOZILLA/${PORTNAME:S|-i18n||}/candidates/${DISTVERSION}-candidates/build1/langpack PKGNAMEPREFIX= DISTFILES= ${SEAMONKEY_I18N_:S/$/.langpack.xpi/:S/^/seamonkey-${PORTVERSION}./} DIST_SUBDIR= xpi/${DISTNAME} MAINTAINER= gecko@FreeBSD.org COMMENT= Localized interface for SeaMonkey EXTRACT_DEPENDS= zip:${PORTSDIR}/archivers/zip USES= zip:infozip gecko:seamonkey,build USE_XPI= seamonkey linux-seamonkey NO_ARCH= yes USE_SUBMAKE= yes WDIR= langpack-*@seamonkey.mozilla.org XPI_DISTNAMES= ${SEAMONKEY_I18N_} PLIST?= ${WRKDIR}/plist PLISTF?= ${WRKDIR}/plist_files .include "${.CURDIR}/Makefile.option" .include .ifndef WITHOUT_SWITCHER RUN_DEPENDS+= xpi-quick-locale-switcher>=0:${PORTSDIR}/www/xpi-quick-locale-switcher .endif .include "${.CURDIR}/Makefile.lang" SEAMONKEY_I18N_?= ${SEAMONKEY_I18N} .for dist in ${XPI_DISTNAMES} XPI_ID_${dist}= langpack-${dist}@seamonkey.mozilla.org .endfor pre-everything:: @${ECHO_CMD} @${ECHO_CMD} "Please define SEAMONKEY_I18N_ALL to install all languages." @${ECHO_CMD} do-extract: @${MKDIR} ${WRKSRC} @for lang in ${SEAMONKEY_I18N_}; do \ if ! (${UNZIP_CMD} -qo ${_DISTDIR}/seamonkey-${PORTVERSION}.$$lang.langpack.xpi -d ${WRKSRC}/langpack-$$lang@seamonkey.mozilla.org);\ then \ exit 1; \ fi; \ cd ${WRKSRC}/langpack-$$lang@seamonkey.mozilla.org/; \ ${FIND} -H -s * ! -type d | \ ${SED} -e "s|^|lib/xpi/langpack-$$lang@seamonkey.mozilla.org/|" >> ${PLISTF}; \ done ${ECHO} "@dir %%XPI_LIBDIR%%/symlinks/firefox" >> ${PLISTF} ${CAT} ${PLISTF} | ${SORT} >> ${PLIST} do-install: @${MKDIR} ${STAGEDIR}${XPI_LIBDIR} ${STAGEDIR}${XPI_SLDIRS_ALL} cd ${WRKSRC}; ${PAX} -rw . ${STAGEDIR}${XPI_LIBDIR} ${CHMOD} -R a+rX,go-w ${STAGEDIR}${XPI_LIBDIR}/${WDIR}/ @for e in ${STAGEDIR}${XPI_LIBDIR}/${WDIR}; do \ for _dir in ${XPI_LINKFARMS} ; do \ ${LN} -sf $${_e##*/} ${STAGEDIR}$$_dir/ ${_Q} ; \ done \ done @${ECHO_CMD} '@exec ${INSTALL} -d ${XPI_SLDIRS_ALL:S,^${PREFIX},%D,}' ${_A} @${ECHO_CMD} '@exec for _dir in ${XPI_LINKFARMS} ; { \ ${LN} -sf ${XPI_LIBDIR}/${WDIR} $$_dir/ ${_Q}; }' ${_A} @${ECHO_CMD} '@unexec for _dir in ${XPI_LINKFARMS} ${XPI_LIBDIR}; { ${RM} -f $$_dir/${WDIR} ; }' ${_A} post-patch: ${FIND} ${WRKSRC} -name install.rdf -print0 | \ ${XARGS} -0L1 ${REINPLACE_CMD} -i '' -e '/ Index: branches/2015Q4/www/seamonkey-i18n/distinfo =================================================================== --- branches/2015Q4/www/seamonkey-i18n/distinfo (revision 402339) +++ branches/2015Q4/www/seamonkey-i18n/distinfo (revision 402340) @@ -1,54 +1,54 @@ -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.be.langpack.xpi) = bd6ccc1b70c8fe41d43b5f0f05137454f425e572a631ac9641bd7549375ede34 -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.be.langpack.xpi) = 842837 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.ca.langpack.xpi) = f46880e8582a63d6af332c76d988fabb5077fba92affc1881ab8e3d24bf6b331 -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.ca.langpack.xpi) = 834200 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.cs.langpack.xpi) = 38c09955551adc43dc2e6dec6aafd199b4a6fe7886a761eaafaa70938e8c3cff -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.cs.langpack.xpi) = 831811 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.de.langpack.xpi) = 36b12d7681556ed9501ba74e0b8e0564c41d87695f8b7b8960dde0b099f83500 -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.de.langpack.xpi) = 838262 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.en-GB.langpack.xpi) = 5521941e84ba5979abf4864e5eefbdd331580e6e76f5ae46d4c43cf0a67170da -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.en-GB.langpack.xpi) = 804289 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.en-US.langpack.xpi) = f75c5e469d6680c45bb5b863aa11bc5ed87aa32f7ea25c6129109e8c07eef3f7 -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.en-US.langpack.xpi) = 803780 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.es-AR.langpack.xpi) = 40270d0af40557516049df8922f83dc4050dee0ad22599896fee226236115906 -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.es-AR.langpack.xpi) = 852874 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.es-ES.langpack.xpi) = 75b754919326c4ee9c114abadb02a387f91b7b65821b081eb820aaf50050621e -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.es-ES.langpack.xpi) = 830037 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.fi.langpack.xpi) = 42f3a3001dcbd9f6ff8f77ef5094363231282b1e05959ed07469adce9e841efc -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.fi.langpack.xpi) = 801209 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.fr.langpack.xpi) = 864455ed8186096d90daaf35368d22825e4c3f2bcc3829efe60c4345b532718b -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.fr.langpack.xpi) = 812075 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.gl.langpack.xpi) = 74eac6af6cce412bd9a320696e78fd22e6e4a285b0873e21bc861df837a27d6a -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.gl.langpack.xpi) = 815203 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.hu.langpack.xpi) = 3451b3b0604842a23dab9aadb91ed51bbf60431bc5b456d337dbb5c22aba1c93 -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.hu.langpack.xpi) = 844136 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.it.langpack.xpi) = e6975df4e7680199d133df63875e5eb8aa5b7ff4dcfa0ddadf4867e8b4f3b68d -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.it.langpack.xpi) = 742287 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.ja-JP-mac.langpack.xpi) = 7b66f5eadc13b1f3758d82b0382b2e6693f6dbd5926c3916df62760dfd2c2f34 -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.ja-JP-mac.langpack.xpi) = 901811 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.ja.langpack.xpi) = e14120fbdece134b8716b47c28d7e7c823b3424cc238bd65980d91cc00ee9695 -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.ja.langpack.xpi) = 886326 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.lt.langpack.xpi) = 19f699e40637e9f4dd06561bcc99cc8adc54c2e5b4c9d19cdce05eefbfcb2e55 -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.lt.langpack.xpi) = 853980 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.nb-NO.langpack.xpi) = adafdef75d19013e0ae6aaf60986680a56cbb0f69b5c4332bd7202becb343699 -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.nb-NO.langpack.xpi) = 824264 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.nl.langpack.xpi) = 44cb967d184ac079ce8ece66a8875f7f338f464f7c10189c7241512dc766492e -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.nl.langpack.xpi) = 796770 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.pl.langpack.xpi) = 48a0ee96e322f8c5da269744dc8a0fdde4395cc801a01d6aa2279696e81011a5 -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.pl.langpack.xpi) = 867982 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.pt-PT.langpack.xpi) = 6b109aaa7fb7402fbb383a0479a7010430d227df18c57010f78b3c80cd437f99 -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.pt-PT.langpack.xpi) = 834974 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.ru.langpack.xpi) = 3f7fa18e6da04e75b4e9a161e65aa45c16495bf78234eb1168573f3e0715ff9c -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.ru.langpack.xpi) = 899955 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.sk.langpack.xpi) = c80460e380b74047149fe8885a4befc4efb762eb28c98a2df6d61d06fbd709f4 -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.sk.langpack.xpi) = 857564 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.sv-SE.langpack.xpi) = f42d0dc239e124488b57b0b96b1f9cc3cae2118525d5d2bf5e2ac699211c00fb -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.sv-SE.langpack.xpi) = 826424 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.tr.langpack.xpi) = db1d8392f2d8c298d8b8a9a0da835cfcf14679a52dd96a8fad2c8dc7b29ea5dd -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.tr.langpack.xpi) = 812398 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.uk.langpack.xpi) = 5f40259490b909023b318fa633fb8f549071c0bb23f2a1f3037c21c6792570da -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.uk.langpack.xpi) = 874106 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.zh-CN.langpack.xpi) = 1e07dbcfc5739a5e76b13b07327ce81a753e7bfe503a3abd9d5f656d12f918aa -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.zh-CN.langpack.xpi) = 834422 -SHA256 (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.zh-TW.langpack.xpi) = b0c382d9fc410b7a2c4219511c461ca0cd9df14f5a8ac799cfa46d236af5d636 -SIZE (xpi/seamonkey-i18n-2.33.1/seamonkey-2.33.1.zh-TW.langpack.xpi) = 860687 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.be.langpack.xpi) = 289803bc8d1669aa8dc116e55ffbef60a611002c39dbe9e461ad3546d82043d5 +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.be.langpack.xpi) = 845960 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.ca.langpack.xpi) = 7cd996abf7027189f6c3fd09501331b1bcf06a61f596cd7042d2a2a66b58e0e2 +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.ca.langpack.xpi) = 837800 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.cs.langpack.xpi) = 6204072196d5ef65cfd5a380d7a985f225f17b8bf5c945e7828ca33cdb09b2da +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.cs.langpack.xpi) = 830007 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.de.langpack.xpi) = a12a02029fef8caa33a99c7bd254bcacf3825b1edbbbc7a2775a8f5a1756425f +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.de.langpack.xpi) = 838258 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.en-GB.langpack.xpi) = 6b7d78e35df5609cdbc944cc4a36fade59d9d29ba761d31969b20be13eebff0e +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.en-GB.langpack.xpi) = 800622 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.en-US.langpack.xpi) = 96c81e0e331f9691d151fb32748e48dea57c0a2c5e7d2bfb69e619c931e7446b +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.en-US.langpack.xpi) = 800201 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.es-AR.langpack.xpi) = f9c92da4f70391413c4be4255332add2fa60a54d8e42c3205badffc4579717da +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.es-AR.langpack.xpi) = 849345 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.es-ES.langpack.xpi) = fe0d89ba946aff3ff90e6751491a64acf381d2fb176ed10270d113bc572e22f2 +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.es-ES.langpack.xpi) = 817622 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.fi.langpack.xpi) = c1732389c3d532ca50152fda28495387e66c6ab9cfcda0b607936e9601549310 +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.fi.langpack.xpi) = 804879 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.fr.langpack.xpi) = fa90086e2d3cc968010c222e58d5e4b465c2c374e07223191483b574db772999 +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.fr.langpack.xpi) = 810559 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.gl.langpack.xpi) = 20b888b8f9c2c2115e8a3a2157d6f8da353c484d573da0d347ffffd41f99bc76 +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.gl.langpack.xpi) = 816387 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.hu.langpack.xpi) = a13b872cf8ecc3cfaf1d8fc5e9a136ba4abd8ae07f4fff15e6dbe9fdd9e5ad7c +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.hu.langpack.xpi) = 848211 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.it.langpack.xpi) = 65fd240cdad3bc4808f0eb35ccf7cfeb9c5c69ba28d446fce91f225b0161ce97 +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.it.langpack.xpi) = 728624 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.ja-JP-mac.langpack.xpi) = 843e6de0158c52fb3eda6e2dd02b92b45e2dbf7a7b10f7b43aff5672a0ffd295 +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.ja-JP-mac.langpack.xpi) = 902319 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.ja.langpack.xpi) = 859ee3e4733f944af91d06051cd99fb78f1bb7d60f012e8cf433cf65fb0d17a3 +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.ja.langpack.xpi) = 886715 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.lt.langpack.xpi) = bcd3b61379bbd1c28974f4609aefa25ece6b5f64715c4cb52b6eafffb60f23e6 +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.lt.langpack.xpi) = 857561 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.nb-NO.langpack.xpi) = 9a7280be0ae9bdf0f21ad89749cbd050dcac588989c33b016bf79496ad3660df +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.nb-NO.langpack.xpi) = 827941 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.nl.langpack.xpi) = 6e880ed775dbf46eb62e3ac9b8a55091790a451f86776aa5ba0de1945d8a23aa +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.nl.langpack.xpi) = 795152 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.pl.langpack.xpi) = 00cc6c894fc6dab4a22e9d38fb6037850f8e57a13f8150d64e8faf3878f204c8 +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.pl.langpack.xpi) = 860260 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.pt-PT.langpack.xpi) = 7be70081c211aed53e98228ed9f9d20741f227bbafb696acf44a5eae20a286f1 +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.pt-PT.langpack.xpi) = 830427 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.ru.langpack.xpi) = 9ad1066cb6cc07a49bbd0b2e8295db65e490a07af7c36485ae607d788817ec5e +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.ru.langpack.xpi) = 889891 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.sk.langpack.xpi) = f70af092108244bc70d3daa53fd41bd3a47c1af518afeca2b6f431952643c6e7 +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.sk.langpack.xpi) = 856745 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.sv-SE.langpack.xpi) = 4ee82e2d89fd9846b4fc9465797c2f04facea76b10bf00d82ade5a581b6c5c59 +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.sv-SE.langpack.xpi) = 823333 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.tr.langpack.xpi) = 9d5e12b135b8157ab0febe7d2253466cc90ee410322234ebe23a3b4de83461b3 +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.tr.langpack.xpi) = 813628 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.uk.langpack.xpi) = 6b4bed5fd385b1666579cf69cf094f7f81e4533be62915b02a9154ed9bbed6fe +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.uk.langpack.xpi) = 875396 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.zh-CN.langpack.xpi) = 7cdb2dc31da908a506fca78c93008cf1b6ce9ef3dddb0fcb38b383bf9e5be556 +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.zh-CN.langpack.xpi) = 838756 +SHA256 (xpi/seamonkey-i18n-2.39/seamonkey-2.39.zh-TW.langpack.xpi) = a3ae379666ff757e0424918491ae1aa710d08aa586d0fd4526bf4dd838c1461c +SIZE (xpi/seamonkey-i18n-2.39/seamonkey-2.39.zh-TW.langpack.xpi) = 860307 Index: branches/2015Q4 =================================================================== --- branches/2015Q4 (revision 402339) +++ branches/2015Q4 (revision 402340) Property changes on: branches/2015Q4 ___________________________________________________________________ Modified: svn:mergeinfo ## -0,0 +0,1 ## Merged /head:r401981,402196