mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-12 03:00:28 +00:00
www/firefox-esr: update to 60.1.0
Changes: https://www.mozilla.org/firefox/60.1.0/releasenotes/
This commit is contained in:
parent
1ffba2ac4c
commit
d623046854
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=472833
@ -36,12 +36,12 @@ RUN_DEPENDS+= libxul>=45:www/libxul
|
||||
|
||||
.elif ${gecko_ARGS:Mfirefox}
|
||||
|
||||
_GECKO_DEFAULT_VERSION= 52
|
||||
_GECKO_VERSIONS= 52 61
|
||||
_GECKO_DEFAULT_VERSION= 60
|
||||
_GECKO_VERSIONS= 60 61
|
||||
_GECKO_TYPE= firefox
|
||||
|
||||
# Dependence lines for different Firefox versions
|
||||
52_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox-esr
|
||||
60_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox-esr
|
||||
61_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox
|
||||
|
||||
.if exists(${LOCALBASE}/bin/firefox)
|
||||
|
90
www/firefox-esr-i18n/Makefile
Normal file
90
www/firefox-esr-i18n/Makefile
Normal file
@ -0,0 +1,90 @@
|
||||
# Created by: Andrew Pantyukhin <infofarmer@FreeBSD.org>
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= firefox-i18n
|
||||
PORTVERSION= 60.1.0
|
||||
CATEGORIES= www
|
||||
MASTER_SITES= MOZILLA/${PORTNAME:S|-i18n||}/releases/${DISTVERSION}esr/linux-i686/xpi \
|
||||
MOZILLA/${PORTNAME:S|-i18n||}/candidates/${DISTVERSION}esr-candidates/build1/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: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 <bsd.port.pre.mk>
|
||||
|
||||
.ifndef WITHOUT_SWITCHER
|
||||
RUN_DEPENDS+= xpi-quick-locale-switcher>=0: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}
|
||||
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} ; { ${RM} $$_dir/${WDIR} ; }' ${_A}
|
||||
|
||||
post-patch:
|
||||
${FIND} ${WRKSRC} -name install.rdf -print0 | \
|
||||
${XARGS} -0L1 ${REINPLACE_CMD} -i '' -e '/<?xml/,$$!d'
|
||||
|
||||
list-langs:
|
||||
@fetch -qo- "https://ftp.mozilla.org/pub/mozilla.org/${PORTNAME:S|-i18n||}/releases/${PORTVERSION}esr/linux-i686/xpi"|\
|
||||
${PERL} -ne 'if(/.*href="([a-zA-Z-]+).xpi.*/){print "$$1\n"}' |\
|
||||
${AWK} 'BEGIN{ORS=" "}{print $$1}END{printf "\nNumber of languages: %d\n",NR}'
|
||||
|
||||
.include "${.CURDIR}/../xpi-adblock/Makefile.xpi"
|
||||
|
||||
.include <bsd.port.post.mk>
|
309
www/firefox-esr-i18n/Makefile.lang
Normal file
309
www/firefox-esr-i18n/Makefile.lang
Normal file
@ -0,0 +1,309 @@
|
||||
# Created by: Koji Yokota <yokota@res.otaru-uc.ac.jp>
|
||||
# $FreeBSD$
|
||||
|
||||
FIREFOX_I18N_ALL_= ach af an ar as ast az be bg bn-BD bn-IN br bs ca cak \
|
||||
cs cy da de dsb el en-GB en-US en-ZA eo es-AR es-CL \
|
||||
es-ES es-MX et eu fa ff fi fr fy-NL ga-IE gd gl gn \
|
||||
gu-IN he hi-IN hr hsb hu hy-AM ia id is it ja ka kab \
|
||||
kk km kn ko lij lt lv mai mk ml mr ms my nb-NO ne-NP nl \
|
||||
nn-NO oc or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son \
|
||||
sq sr sv-SE ta te th tr uk ur uz vi xh zh-CN zh-TW
|
||||
|
||||
.if defined(FIREFOX_I18N_ALL) || defined(PACKAGE_BUILDING) || target(package)
|
||||
FIREFOX_I18N= ${FIREFOX_I18N_ALL_}
|
||||
.else
|
||||
.if ${PORT_OPTIONS:MLANG_ACH}
|
||||
FIREFOX_I18N+= ach
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_AF}
|
||||
FIREFOX_I18N+= af
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_AN}
|
||||
FIREFOX_I18N+= an
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_AR}
|
||||
FIREFOX_I18N+= ar
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_AS}
|
||||
FIREFOX_I18N+= as
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_AST}
|
||||
FIREFOX_I18N+= ast
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_AZ}
|
||||
FIREFOX_I18N+= az
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_BE}
|
||||
FIREFOX_I18N+= be
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_BG}
|
||||
FIREFOX_I18N+= bg
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_BB}
|
||||
FIREFOX_I18N+= bn-BD
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_BN}
|
||||
FIREFOX_I18N+= bn-IN
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_BR}
|
||||
FIREFOX_I18N+= br
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_BS}
|
||||
FIREFOX_I18N+= bs
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_CA}
|
||||
FIREFOX_I18N+= ca
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_CAK}
|
||||
FIREFOX_I18N+= cak
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_CS}
|
||||
FIREFOX_I18N+= cs
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_CY}
|
||||
FIREFOX_I18N+= cy
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_DA}
|
||||
FIREFOX_I18N+= da
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_DE}
|
||||
FIREFOX_I18N+= de
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_DSB}
|
||||
FIREFOX_I18N+= dsb
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_EL}
|
||||
FIREFOX_I18N+= el
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_GB}
|
||||
FIREFOX_I18N+= en-GB
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_US}
|
||||
FIREFOX_I18N+= en-US
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_ZA}
|
||||
FIREFOX_I18N+= en-ZA
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_EO}
|
||||
FIREFOX_I18N+= eo
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_SA}
|
||||
FIREFOX_I18N+= es-AR
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_SC}
|
||||
FIREFOX_I18N+= es-CL
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_ES}
|
||||
FIREFOX_I18N+= es-ES
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_SM}
|
||||
FIREFOX_I18N+= es-MX
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_ET}
|
||||
FIREFOX_I18N+= et
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_EU}
|
||||
FIREFOX_I18N+= eu
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_FA}
|
||||
FIREFOX_I18N+= fa
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_FF}
|
||||
FIREFOX_I18N+= ff
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_FI}
|
||||
FIREFOX_I18N+= fi
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_FR}
|
||||
FIREFOX_I18N+= fr
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_FY}
|
||||
FIREFOX_I18N+= fy-NL
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_GA}
|
||||
FIREFOX_I18N+= ga-IE
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_GD}
|
||||
FIREFOX_I18N+= gd
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_GL}
|
||||
FIREFOX_I18N+= gl
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_GN}
|
||||
FIREFOX_I18N+= gn
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_GU}
|
||||
FIREFOX_I18N+= gu-IN
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_HE}
|
||||
FIREFOX_I18N+= he
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_HI}
|
||||
FIREFOX_I18N+= hi-IN
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_HR}
|
||||
FIREFOX_I18N+= hr
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_HSB}
|
||||
FIREFOX_I18N+= hsb
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_HU}
|
||||
FIREFOX_I18N+= hu
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_AM}
|
||||
FIREFOX_I18N+= hy-AM
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_IA}
|
||||
FIREFOX_I18N+= ia
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_ID}
|
||||
FIREFOX_I18N+= id
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_IS}
|
||||
FIREFOX_I18N+= is
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_IT}
|
||||
FIREFOX_I18N+= it
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_JA}
|
||||
FIREFOX_I18N+= ja
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_KA}
|
||||
FIREFOX_I18N+= ka
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_KAB}
|
||||
FIREFOX_I18N+= kab
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_KK}
|
||||
FIREFOX_I18N+= kk
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_KM}
|
||||
FIREFOX_I18N+= km
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_KN}
|
||||
FIREFOX_I18N+= kn
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_KO}
|
||||
FIREFOX_I18N+= ko
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_LIJ}
|
||||
FIREFOX_I18N+= lij
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_LT}
|
||||
FIREFOX_I18N+= lt
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_LV}
|
||||
FIREFOX_I18N+= lv
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_MAI}
|
||||
FIREFOX_I18N+= mai
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_MK}
|
||||
FIREFOX_I18N+= mk
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_ML}
|
||||
FIREFOX_I18N+= ml
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_MR}
|
||||
FIREFOX_I18N+= mr
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_MS}
|
||||
FIREFOX_I18N+= ms
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_MY}
|
||||
FIREFOX_I18N+= my
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_NB}
|
||||
FIREFOX_I18N+= nb-NO
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_NE}
|
||||
FIREFOX_I18N+= ne-NP
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_NL}
|
||||
FIREFOX_I18N+= nl
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_NN}
|
||||
FIREFOX_I18N+= nn-NO
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_OC}
|
||||
FIREFOX_I18N+= oc
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_OR}
|
||||
FIREFOX_I18N+= or
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_PA}
|
||||
FIREFOX_I18N+= pa-IN
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_PL}
|
||||
FIREFOX_I18N+= pl
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_PBR}
|
||||
FIREFOX_I18N+= pt-BR
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_PT}
|
||||
FIREFOX_I18N+= pt-PT
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_RM}
|
||||
FIREFOX_I18N+= rm
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_RO}
|
||||
FIREFOX_I18N+= ro
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_RU}
|
||||
FIREFOX_I18N+= ru
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_SI}
|
||||
FIREFOX_I18N+= si
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_SK}
|
||||
FIREFOX_I18N+= sk
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_SL}
|
||||
FIREFOX_I18N+= sl
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_SON}
|
||||
FIREFOX_I18N+= son
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_SQ}
|
||||
FIREFOX_I18N+= sq
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_SR}
|
||||
FIREFOX_I18N+= sr
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_SV}
|
||||
FIREFOX_I18N+= sv-SE
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_TA}
|
||||
FIREFOX_I18N+= ta
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_TE}
|
||||
FIREFOX_I18N+= te
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_TH}
|
||||
FIREFOX_I18N+= th
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_TR}
|
||||
FIREFOX_I18N+= tr
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_UK}
|
||||
FIREFOX_I18N+= uk
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_UR}
|
||||
FIREFOX_I18N+= ur
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_UZ}
|
||||
FIREFOX_I18N+= uz
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_VI}
|
||||
FIREFOX_I18N+= vi
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_XH}
|
||||
FIREFOX_I18N+= xh
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_CN}
|
||||
FIREFOX_I18N+= zh-CN
|
||||
.endif
|
||||
.if ${PORT_OPTIONS:MLANG_TW}
|
||||
FIREFOX_I18N+= zh-TW
|
||||
.endif
|
||||
.endif
|
130
www/firefox-esr-i18n/Makefile.option
Normal file
130
www/firefox-esr-i18n/Makefile.option
Normal file
@ -0,0 +1,130 @@
|
||||
# Created by: Koji Yokota <yokota@res.otaru-uc.ac.jp>
|
||||
# $FreeBSD$
|
||||
|
||||
# this is sorted on the name of the xpi files, not the option name
|
||||
OPTIONS_DEFINE= LANG_ACH \
|
||||
LANG_AF \
|
||||
LANG_AN \
|
||||
LANG_AR \
|
||||
LANG_AS \
|
||||
LANG_AST \
|
||||
LANG_AZ \
|
||||
LANG_BE \
|
||||
LANG_BG \
|
||||
LANG_BB \
|
||||
LANG_BN \
|
||||
LANG_BR \
|
||||
LANG_BS \
|
||||
LANG_CA \
|
||||
LANG_CAK \
|
||||
LANG_CS \
|
||||
LANG_CY \
|
||||
LANG_DA \
|
||||
LANG_DE \
|
||||
LANG_DSB \
|
||||
LANG_EL \
|
||||
LANG_GB \
|
||||
LANG_US \
|
||||
LANG_ZA \
|
||||
LANG_EO \
|
||||
LANG_SA \
|
||||
LANG_SC \
|
||||
LANG_ES \
|
||||
LANG_SM \
|
||||
LANG_ET \
|
||||
LANG_EU \
|
||||
LANG_FA \
|
||||
LANG_FF \
|
||||
LANG_FI \
|
||||
LANG_FR \
|
||||
LANG_FY \
|
||||
LANG_GA \
|
||||
LANG_GD \
|
||||
LANG_GL \
|
||||
LANG_GN \
|
||||
LANG_GU \
|
||||
LANG_HE \
|
||||
LANG_HI \
|
||||
LANG_HR \
|
||||
LANG_HSB \
|
||||
LANG_HU \
|
||||
LANG_AM \
|
||||
LANG_IA \
|
||||
LANG_ID \
|
||||
LANG_IS \
|
||||
LANG_IT \
|
||||
LANG_JA \
|
||||
LANG_KA \
|
||||
LANG_KAB \
|
||||
LANG_KK \
|
||||
LANG_KM \
|
||||
LANG_KN \
|
||||
LANG_KO \
|
||||
LANG_LIJ \
|
||||
LANG_LT \
|
||||
LANG_LV \
|
||||
LANG_MAI \
|
||||
LANG_MK \
|
||||
LANG_ML \
|
||||
LANG_MR \
|
||||
LANG_MS \
|
||||
LANG_MY \
|
||||
LANG_NB \
|
||||
LANG_NE \
|
||||
LANG_NL \
|
||||
LANG_NN \
|
||||
LANG_OC \
|
||||
LANG_OR \
|
||||
LANG_PA \
|
||||
LANG_PL \
|
||||
LANG_PBR\
|
||||
LANG_PT \
|
||||
LANG_RM \
|
||||
LANG_RO \
|
||||
LANG_RU \
|
||||
LANG_SI \
|
||||
LANG_SK \
|
||||
LANG_SL \
|
||||
LANG_SON \
|
||||
LANG_SQ \
|
||||
LANG_SR \
|
||||
LANG_SV \
|
||||
LANG_TA \
|
||||
LANG_TE \
|
||||
LANG_TH \
|
||||
LANG_TR \
|
||||
LANG_UK \
|
||||
LANG_UR \
|
||||
LANG_UZ \
|
||||
LANG_VI \
|
||||
LANG_XH \
|
||||
LANG_CN \
|
||||
LANG_TW
|
||||
|
||||
OPTIONS_DEFAULT=LANG_AR LANG_BN LANG_BR LANG_CN LANG_ET LANG_DE LANG_FR \
|
||||
LANG_HI LANG_ID LANG_IT LANG_JA LANG_KO LANG_MK LANG_MR \
|
||||
LANG_PBR LANG_PA LANG_RU LANG_ES LANG_SON LANG_TE
|
||||
|
||||
LANG_ACH_DESC?= Acholi language support
|
||||
LANG_AN_DESC?= Aragonese language support
|
||||
LANG_AS_DESC?= Assamese language support
|
||||
LANG_AZ_DESC?= Azerbaijani language support
|
||||
LANG_CAK_DESC?= Kaqchikel (Guatemala) language support
|
||||
LANG_CSB_DESC?= Kashubian language support
|
||||
LANG_DSB_DESC?= Lower Sorbian language support
|
||||
LANG_FF_DESC?= Fulah language support
|
||||
LANG_GN_DESC?= Guarani (Paraguay) language support
|
||||
LANG_HSB_DESC?= Upper Sorbian language support
|
||||
LANG_IA_DESC?= Interlingua language support
|
||||
LANG_KA_DESC?= Georgian language support
|
||||
LANG_KAB_DESC?= Taqbaylit language support
|
||||
LANG_KM_DESC?= Khmer language support
|
||||
LANG_LIJ_DESC?= Ligurian (Genoa) language support
|
||||
LANG_MS_DESC?= Malay language support
|
||||
LANG_MY_DESC?= Burmese language support
|
||||
LANG_NE_DESC?= Nepali language support
|
||||
LANG_OC_DESC?= Occitan (lengadocian) language support
|
||||
LANG_SW_DESC?= Swahili language support
|
||||
LANG_UR_DESC?= Urdu (Pakistan) language support
|
||||
LANG_UZ_DESC?= Uzbek language support
|
||||
LANG_XH_DESC?= Xhosa language support
|
197
www/firefox-esr-i18n/distinfo
Normal file
197
www/firefox-esr-i18n/distinfo
Normal file
@ -0,0 +1,197 @@
|
||||
TIMESTAMP = 1528228087
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ach.xpi) = 5e26041e4a6bf3d602b00c5990238676d5747f3265dac5552b71859c61bc272c
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ach.xpi) = 496061
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/af.xpi) = c9f675656e0934c4459c86556debf08b1c9306f8466593713875e5c30e67428f
|
||||
SIZE (xpi/firefox-i18n-60.1.0/af.xpi) = 486533
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/an.xpi) = d645b169c68c3cd34d1cd33dd84912c8f0bb46ed3650434b092a250a8e97f547
|
||||
SIZE (xpi/firefox-i18n-60.1.0/an.xpi) = 519726
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ar.xpi) = 15e4f2833734bcab82a9b7421bfc87b424f7b40e8f05caf98f0122988e13d97a
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ar.xpi) = 546953
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/as.xpi) = 34a5908ce9bedb219cf89bbca86585f11a8c6260ee74253be8d7cbc8c9646ece
|
||||
SIZE (xpi/firefox-i18n-60.1.0/as.xpi) = 529944
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ast.xpi) = 93b838cf4dfeebaffdea93a66f86932d94c1550cee00770dcaaefb567618e880
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ast.xpi) = 507869
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/az.xpi) = 7056cbeb3d7eda3aa42fc0217257ad897daf729f5e04708b695cebb53f7fbee0
|
||||
SIZE (xpi/firefox-i18n-60.1.0/az.xpi) = 523969
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/be.xpi) = ad5ab678b7b6ac74a93b6dc4aef25fb2f7583966808569fb2cda7833cef1e603
|
||||
SIZE (xpi/firefox-i18n-60.1.0/be.xpi) = 579949
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/bg.xpi) = c8f43529614faf19faf331d154bd1ffe25fb2b896b82d99cd4597bfdfa33b1b4
|
||||
SIZE (xpi/firefox-i18n-60.1.0/bg.xpi) = 573074
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/bn-BD.xpi) = 1626e73b4dab81a13b5b11c1820396077bca065f45a7bb0cc6d4f8593f6410e3
|
||||
SIZE (xpi/firefox-i18n-60.1.0/bn-BD.xpi) = 589631
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/bn-IN.xpi) = dfc6431a6a2ea504abe26dbf73bd889507ba351afcf51d7384119514b4ad5bd3
|
||||
SIZE (xpi/firefox-i18n-60.1.0/bn-IN.xpi) = 570077
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/br.xpi) = cf7635d6456286ee278c60818a9ffe195f104010e36d1ce83e0b47a6df4fc718
|
||||
SIZE (xpi/firefox-i18n-60.1.0/br.xpi) = 511254
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/bs.xpi) = 2916fd5b52f39ca7efcecdaed7f9769abbb1a196d982837351d0f9522860b1b6
|
||||
SIZE (xpi/firefox-i18n-60.1.0/bs.xpi) = 513932
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ca.xpi) = 2986fd0d15201d6ac3e1d84d0b8e80e600d6039e0b4c3495138083011ad038e3
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ca.xpi) = 524475
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/cak.xpi) = f02921d89d2b77d03ed20ca9573ab7a203fd6f2eb098313d84b65475b5e27278
|
||||
SIZE (xpi/firefox-i18n-60.1.0/cak.xpi) = 535514
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/cs.xpi) = e7a6a9a75599fd90fa3c556c820cad7bda7472b21c7bbbff3474abe196dd3fd6
|
||||
SIZE (xpi/firefox-i18n-60.1.0/cs.xpi) = 531022
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/cy.xpi) = 93d722576846a2bf49250fc3ef7fef2111dbf34d3b7d946b3946da9add85706c
|
||||
SIZE (xpi/firefox-i18n-60.1.0/cy.xpi) = 515862
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/da.xpi) = d74f2f8727e0b899c769778bf9364e9afe3c314d17c3a71d35c6eb48519f1ac6
|
||||
SIZE (xpi/firefox-i18n-60.1.0/da.xpi) = 509980
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/de.xpi) = 771d8320cae87d125b924dccb6d77a2a44e02a380b52553fca9b989b46419e2c
|
||||
SIZE (xpi/firefox-i18n-60.1.0/de.xpi) = 525695
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/dsb.xpi) = cb1c6d535f741a73b0325e4581b4ef1b9d390b38dacd0a202499ff80a8d58b47
|
||||
SIZE (xpi/firefox-i18n-60.1.0/dsb.xpi) = 538750
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/el.xpi) = a67d8ecefb33ed4dcb7a455e05a46bc2675fda1c9068001ec1e8184d528198d0
|
||||
SIZE (xpi/firefox-i18n-60.1.0/el.xpi) = 592912
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/en-GB.xpi) = 7254855553747f27a7521249980a740ad528f305fdb5a2951d5b5cc95d5c55d3
|
||||
SIZE (xpi/firefox-i18n-60.1.0/en-GB.xpi) = 490906
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/en-US.xpi) = 2b5ef8252b9a773eddc891a58b9ddd192f641380924615a0b6fd5077dc48e6f6
|
||||
SIZE (xpi/firefox-i18n-60.1.0/en-US.xpi) = 472388
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/en-ZA.xpi) = 8bad395bccc349070da0817dabe381b30a1be380f5a19d76312ef62e3a8e68e6
|
||||
SIZE (xpi/firefox-i18n-60.1.0/en-ZA.xpi) = 473899
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/eo.xpi) = b332eb5f1f7cb4a24ad0cc034672b5ad0d723c6a0e5b1e416af22311dc92a9e4
|
||||
SIZE (xpi/firefox-i18n-60.1.0/eo.xpi) = 510489
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/es-AR.xpi) = 0d00f6d5ef54660eb5670e08dd2a87ae43e6d98ce7e0b2f60f5b3b2661cca6f4
|
||||
SIZE (xpi/firefox-i18n-60.1.0/es-AR.xpi) = 523825
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/es-CL.xpi) = c7f5d24bb145cbe79bb1edcb7691f0d60d2bf127b683da11d05b48dc1fb2d0bd
|
||||
SIZE (xpi/firefox-i18n-60.1.0/es-CL.xpi) = 526509
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/es-ES.xpi) = d94773baa6ad16cd833a568502ca2b0130caed03ae4c6e653597d29e1a7da82c
|
||||
SIZE (xpi/firefox-i18n-60.1.0/es-ES.xpi) = 459139
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/es-MX.xpi) = 5587089caa97dbbbcf7e30831df73c17db157f5172fb82ba82722f4d92db27aa
|
||||
SIZE (xpi/firefox-i18n-60.1.0/es-MX.xpi) = 527842
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/et.xpi) = 99cbab52e159b5b5ff7ec3569968a89d369727095a247f0a5fd089c0dcf1b401
|
||||
SIZE (xpi/firefox-i18n-60.1.0/et.xpi) = 504172
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/eu.xpi) = 718212dfd3c6d4efd63afc7bca0eadb6b72f23e026a86b7f4fe6f6f27dded0d1
|
||||
SIZE (xpi/firefox-i18n-60.1.0/eu.xpi) = 510938
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/fa.xpi) = a106e50ac0139d7d5aea786a98f55ea4f8fb2aeadd06106447b97470a51b9c19
|
||||
SIZE (xpi/firefox-i18n-60.1.0/fa.xpi) = 565490
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ff.xpi) = 748fe1a9c451097656cd85a190e9d355afb3243333e31fbc4bb8d607d506dba9
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ff.xpi) = 511435
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/fi.xpi) = f8f17d3c181efdeb363b2d055bd8c0d9ca41fdc4cd0ea773e5841b0cb23e4f71
|
||||
SIZE (xpi/firefox-i18n-60.1.0/fi.xpi) = 505409
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/fr.xpi) = 2e436b9daa98a28705a4b4d8ce760da70ca13e53bc39fedc0ab125d99075d90f
|
||||
SIZE (xpi/firefox-i18n-60.1.0/fr.xpi) = 535234
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/fy-NL.xpi) = 886c528e010fc6b0f800d13de7e55adebb3ced580e4f94d911f0340d26011039
|
||||
SIZE (xpi/firefox-i18n-60.1.0/fy-NL.xpi) = 523740
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ga-IE.xpi) = b18291cca9f22bec9acc063a827226d6f08d5adc94bfc0b49d3153decb87d53b
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ga-IE.xpi) = 526204
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/gd.xpi) = db77b0608fc6e0f0b749ff92ef0907d42753e3932c90cce94fca51a4679cbfec
|
||||
SIZE (xpi/firefox-i18n-60.1.0/gd.xpi) = 520093
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/gl.xpi) = 6dd68657f6f37e8ed369cd0ec5f7b3436ca97b15ed31c00d203274b5a111ceeb
|
||||
SIZE (xpi/firefox-i18n-60.1.0/gl.xpi) = 496589
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/gn.xpi) = 25c8af49d1142db5b1aee183d82781f087c8abcc0e0cc94d58491d79b8ee3e9a
|
||||
SIZE (xpi/firefox-i18n-60.1.0/gn.xpi) = 532446
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/gu-IN.xpi) = 635d57fb3e1735953f77e79b8444f453eb12b36ddc07f18350ebd36e3e793c4e
|
||||
SIZE (xpi/firefox-i18n-60.1.0/gu-IN.xpi) = 589482
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/he.xpi) = 7c9c15653d4a30099c7039e6a66c126934a8b7fc30e70aee93b4e3f090e01d69
|
||||
SIZE (xpi/firefox-i18n-60.1.0/he.xpi) = 535210
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/hi-IN.xpi) = 173eab4fed5d24f0c2f997dc7ad6ef8eb4f1b08ecfb60559c91d621336ef848c
|
||||
SIZE (xpi/firefox-i18n-60.1.0/hi-IN.xpi) = 590079
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/hr.xpi) = 3ec839fae3bb316f54cdc59d7ccf81f6ed74a2722c6b00ca92c6e0a307065f7d
|
||||
SIZE (xpi/firefox-i18n-60.1.0/hr.xpi) = 515188
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/hsb.xpi) = 7436c701e004a6b720bd997a096f19072f98a9320ea91511cf45c540caa2c902
|
||||
SIZE (xpi/firefox-i18n-60.1.0/hsb.xpi) = 536281
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/hu.xpi) = 60b0363b5c9070b8225077badae42db0097c9bd02015ee073e740be0d1845ee8
|
||||
SIZE (xpi/firefox-i18n-60.1.0/hu.xpi) = 537576
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/hy-AM.xpi) = 6a447a0fd2f6e15ba87596cbb1a9469932e3e6a2a2f9f8625dc3b566a9dda8bd
|
||||
SIZE (xpi/firefox-i18n-60.1.0/hy-AM.xpi) = 568635
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ia.xpi) = ebc8bc6af5aa3c0ac5203c8b3539ac814d7187b5b14b2d1ac238dc4e4c55f3e9
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ia.xpi) = 509960
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/id.xpi) = b2ce847635a01a3f3270fc3803146e1846e74377d0b769f82b0637339236968f
|
||||
SIZE (xpi/firefox-i18n-60.1.0/id.xpi) = 501445
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/is.xpi) = 377a3b6e10c95a94764c0ee61616a5a2508c67aacde6c6e320b4a1006cb03c78
|
||||
SIZE (xpi/firefox-i18n-60.1.0/is.xpi) = 512502
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/it.xpi) = 3e7b55c2b4a99ba900730c072c668f4de3b95e05cf4bb78414648e7239a13f68
|
||||
SIZE (xpi/firefox-i18n-60.1.0/it.xpi) = 398261
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ja.xpi) = 103d545d2f279ffdedf074027511ed0ad36fcce396224f90851333b522d7fdde
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ja.xpi) = 571240
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ka.xpi) = f3cb7cccee49a2d444226b6ecb1962c4c67ce075bb573dfb31fa0378a3713221
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ka.xpi) = 556073
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/kab.xpi) = 721c28ce53f174e084ebc9fe2bb0c01d6118dc4a6f0c01f8c373e2979ad89c3d
|
||||
SIZE (xpi/firefox-i18n-60.1.0/kab.xpi) = 519626
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/kk.xpi) = 13486d47e84d6da4e21edf699c9eefa0a918f7f3c9cedb17e4a29502e92014eb
|
||||
SIZE (xpi/firefox-i18n-60.1.0/kk.xpi) = 582205
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/km.xpi) = 2f2ff12d12cfdf6cbe916fcfe2961f17c5e03f7215f8e3e6c3da120078f5a252
|
||||
SIZE (xpi/firefox-i18n-60.1.0/km.xpi) = 582334
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/kn.xpi) = 06b1d0665ca39ba00a9623142b749713cc8706dc2174e6457d56d212b5cc1cb7
|
||||
SIZE (xpi/firefox-i18n-60.1.0/kn.xpi) = 585096
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ko.xpi) = 6b4e294f09726deb59ba00a0b3fdcda7257ae10159d1bf1cace532042840b543
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ko.xpi) = 547046
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/lij.xpi) = db4ad9772cf45751f26d9366a530a861998f294a225ee978b7fd95d86df81b57
|
||||
SIZE (xpi/firefox-i18n-60.1.0/lij.xpi) = 512399
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/lt.xpi) = 302b586fcf05cd5cf927eb7083d10b9a81b9ca8f0bf96dfef5a6099f344e40cb
|
||||
SIZE (xpi/firefox-i18n-60.1.0/lt.xpi) = 535630
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/lv.xpi) = eb6714574cea1c2cab5de1c0a39edc8d66ccbb4e8c1d984c63adfd4e4ba5c04a
|
||||
SIZE (xpi/firefox-i18n-60.1.0/lv.xpi) = 525645
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/mai.xpi) = 0dc6b4f64f6f70c68bc02f64849092570e85cc98e2e34db5fea37283030caeaa
|
||||
SIZE (xpi/firefox-i18n-60.1.0/mai.xpi) = 548474
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/mk.xpi) = ad906c47ec3d50cd443a776dbaf8c3b365a8c1c01d9e9b64f4960398229f9ea0
|
||||
SIZE (xpi/firefox-i18n-60.1.0/mk.xpi) = 513026
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ml.xpi) = 1eaf9ec1b5a47b57f716d27ebd358117e5f71a324e8b731c68d1510d9f6a0a92
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ml.xpi) = 598192
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/mr.xpi) = 91539ad08fad6c5d8201bbee618f251a7f224d145539c36c16003d1ab9129e7a
|
||||
SIZE (xpi/firefox-i18n-60.1.0/mr.xpi) = 578342
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ms.xpi) = 84993cd8a3343c9c0acca15b53efda6bda19d25cf69b6c6eedcbd4d19d6464f4
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ms.xpi) = 508780
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/my.xpi) = d0210c2480d51cfb6af0f169aa9fd6a8c241e23cb8f3c28bb5405ff2f217236b
|
||||
SIZE (xpi/firefox-i18n-60.1.0/my.xpi) = 569574
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/nb-NO.xpi) = f171fd05cd390091122cb4f36e80e933deb9f7d8580963878740bddda1be4071
|
||||
SIZE (xpi/firefox-i18n-60.1.0/nb-NO.xpi) = 509103
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ne-NP.xpi) = 5c285fbfff385942b2b5d220fe86840cf25511c9d9cd9e9d2b583a02b965704d
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ne-NP.xpi) = 554585
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/nl.xpi) = accbcb416a44cf7294b2ad3549f5519dfa813ba1eb957eefb93b129c5f06c3f8
|
||||
SIZE (xpi/firefox-i18n-60.1.0/nl.xpi) = 516658
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/nn-NO.xpi) = e12b6c982fdc46ac80a00e323e1cf4cbd9a4b9439d66461a75a7f9bb8a18dafd
|
||||
SIZE (xpi/firefox-i18n-60.1.0/nn-NO.xpi) = 510615
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/oc.xpi) = 19e77dbaba2134edcfe715651e78cd161c4aee08d5b3099387e3a561dd4c5bb5
|
||||
SIZE (xpi/firefox-i18n-60.1.0/oc.xpi) = 526210
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/or.xpi) = 93767d4e45b297adec5419c4a105764c32154b56c0c7a2a6ef1212a3d74ffd4f
|
||||
SIZE (xpi/firefox-i18n-60.1.0/or.xpi) = 540091
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/pa-IN.xpi) = 0b560eb40d9f8321a9423b97418b3d459287db012238fdbf656e7aadfcfc0875
|
||||
SIZE (xpi/firefox-i18n-60.1.0/pa-IN.xpi) = 557084
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/pl.xpi) = 7b037320a9fd035a2a82018cddfb91d5101eb8af507089e47b2b1f85b9ae1387
|
||||
SIZE (xpi/firefox-i18n-60.1.0/pl.xpi) = 418199
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/pt-BR.xpi) = df1cb8f6dccae58889b36e09b9bd203c772bd4c6aa9d9c21d2aa2acd355af9a1
|
||||
SIZE (xpi/firefox-i18n-60.1.0/pt-BR.xpi) = 513939
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/pt-PT.xpi) = 417b825da5d7228f9d0d6555f5194f8fe43b9cf066430a62e25304220a43c0a1
|
||||
SIZE (xpi/firefox-i18n-60.1.0/pt-PT.xpi) = 518536
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/rm.xpi) = d577804b30fe636159d14ec3d4072ee2a383691b3684b37dccacc4d74432ceae
|
||||
SIZE (xpi/firefox-i18n-60.1.0/rm.xpi) = 505264
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ro.xpi) = 7fa2d7db5bbdb7a39e855628cb8303d8633a67fae136c43ebf07d3264375d70b
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ro.xpi) = 513284
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ru.xpi) = a045fa459b42020cb681175517405d9426e609b73959f9ec9b0ddd98578e6e15
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ru.xpi) = 590513
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/si.xpi) = 155a453ea78cbdf6c7be75a5bbc78a84a4208d5bc010b65f9621546056d8ecf6
|
||||
SIZE (xpi/firefox-i18n-60.1.0/si.xpi) = 544796
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/sk.xpi) = 8e782b3bb378c11c36758d8645ea365ca92091a1b1b055bc2c086606b109219f
|
||||
SIZE (xpi/firefox-i18n-60.1.0/sk.xpi) = 540926
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/sl.xpi) = f94d25e47191b76cbe73a0a97143e1dfb07ed77aff45ce007216dd95e6b270cf
|
||||
SIZE (xpi/firefox-i18n-60.1.0/sl.xpi) = 518579
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/son.xpi) = a34bbaad893cd4f829c712d8cdb564a38f76a3c8f0ee0231e928dd2827ea5015
|
||||
SIZE (xpi/firefox-i18n-60.1.0/son.xpi) = 496920
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/sq.xpi) = 16a852e9119d8d0fa97ee6c35ca94b669b049347e732eea12ddb474155dbd697
|
||||
SIZE (xpi/firefox-i18n-60.1.0/sq.xpi) = 520486
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/sr.xpi) = f90e67c38f43d12aa7702a03ee36fc51f54c3493095d6e47907e1639ae3b7a6c
|
||||
SIZE (xpi/firefox-i18n-60.1.0/sr.xpi) = 547997
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/sv-SE.xpi) = a622eaba072867ccf67f63ab1e18f1ff9fc9846e5bbe30fb6746789c3ece5e7d
|
||||
SIZE (xpi/firefox-i18n-60.1.0/sv-SE.xpi) = 517849
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ta.xpi) = 75edb2dcf5a9f9b0db4312460b4e877b675f47e165df67b3452ac307fec8c8d1
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ta.xpi) = 577139
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/te.xpi) = f3e390f930fdfade07cc51b3f3748b249377248a812a61b1e7426f545e4527c6
|
||||
SIZE (xpi/firefox-i18n-60.1.0/te.xpi) = 590183
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/th.xpi) = 22085314a0cbc7af8a0da02c09dceec1e9d1ed390ea8d6ef994f0f95d603bc92
|
||||
SIZE (xpi/firefox-i18n-60.1.0/th.xpi) = 562043
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/tr.xpi) = 29a9b015b9ad77105839e99209d4ce9762e6a8fad46bf557bb0b8cee01a5ab4c
|
||||
SIZE (xpi/firefox-i18n-60.1.0/tr.xpi) = 525041
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/uk.xpi) = 9b6e64d61d540f267ea786a5cf7e87d19c702aff9e8e538870a19d72996ff93e
|
||||
SIZE (xpi/firefox-i18n-60.1.0/uk.xpi) = 580142
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/ur.xpi) = 6feaabb90c30e04001981e68a3b218f2da325200555e78bdc2c9d8850e2fc69f
|
||||
SIZE (xpi/firefox-i18n-60.1.0/ur.xpi) = 562606
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/uz.xpi) = e1356213b3d2af00e873b4e9d2e625f037d98687f04eaff3bd53f8b7cc15fda2
|
||||
SIZE (xpi/firefox-i18n-60.1.0/uz.xpi) = 512905
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/vi.xpi) = 9226d9d530fa40a4ed6217e335508d7f67ff7cbbe8cfcba31c4a0f8d21614a8b
|
||||
SIZE (xpi/firefox-i18n-60.1.0/vi.xpi) = 527416
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/xh.xpi) = bb867d93d090f6ae7ff8ce860fb3ff49cc70766dfd6116ed05048eb9cf493072
|
||||
SIZE (xpi/firefox-i18n-60.1.0/xh.xpi) = 511083
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/zh-CN.xpi) = b22b63acf29357ed765523715ba4f0c2371767c075e922638f80eae52799715f
|
||||
SIZE (xpi/firefox-i18n-60.1.0/zh-CN.xpi) = 542803
|
||||
SHA256 (xpi/firefox-i18n-60.1.0/zh-TW.xpi) = c39e4d114603e95b815755aee4713081d4262a7fee96ba55f0321d15584ff30a
|
||||
SIZE (xpi/firefox-i18n-60.1.0/zh-TW.xpi) = 541120
|
3
www/firefox-esr-i18n/pkg-descr
Normal file
3
www/firefox-esr-i18n/pkg-descr
Normal file
@ -0,0 +1,3 @@
|
||||
Language packs for Firefox
|
||||
|
||||
WWW: http://www.mozilla.org/projects/l10n/
|
68
www/firefox-esr/Makefile
Normal file
68
www/firefox-esr/Makefile
Normal file
@ -0,0 +1,68 @@
|
||||
# Created by: Alan Eldridge <alane@FreeBSD.org>
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= firefox
|
||||
DISTVERSION= 60.1.0
|
||||
PORTEPOCH= 1
|
||||
CATEGORIES= www ipv6
|
||||
MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}esr/source \
|
||||
MOZILLA/${PORTNAME}/candidates/${DISTVERSION}esr-candidates/build1/source
|
||||
PKGNAMESUFFIX= -esr
|
||||
DISTFILES= ${DISTNAME}esr.source${EXTRACT_SUFX}
|
||||
|
||||
MAINTAINER= gecko@FreeBSD.org
|
||||
COMMENT= Web browser based on the browser portion of Mozilla
|
||||
|
||||
BUILD_DEPENDS= nspr>=4.19:devel/nspr \
|
||||
nss>=3.36.1:security/nss \
|
||||
icu>=59.1,1:devel/icu \
|
||||
libevent>=2.1.8:devel/libevent \
|
||||
harfbuzz>=1.7.6:print/harfbuzz \
|
||||
graphite2>=1.3.11:graphics/graphite2 \
|
||||
png>=1.6.34:graphics/png \
|
||||
libvorbis>=1.3.6,3:audio/libvorbis \
|
||||
libvpx>=1.5.0:multimedia/libvpx \
|
||||
sqlite3>=3.22.0:databases/sqlite3 \
|
||||
${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \
|
||||
v4l_compat>0:multimedia/v4l_compat \
|
||||
autoconf-2.13:devel/autoconf213 \
|
||||
yasm:devel/yasm \
|
||||
zip:archivers/zip
|
||||
# soundtouch>=1.9.0:audio/soundtouch \
|
||||
|
||||
USE_GECKO= gecko
|
||||
CPE_PRODUCT= ${PORTNAME}_esr
|
||||
CONFLICTS_INSTALL= firefox
|
||||
MOZ_PKGCONFIG_FILES= # empty
|
||||
USE_MOZILLA= -cairo -soundtouch
|
||||
|
||||
USE_GL= gl
|
||||
USES= tar:xz
|
||||
|
||||
FIREFOX_ICON= ${MOZILLA}.png
|
||||
FIREFOX_ICON_SRC= ${PREFIX}/lib/${MOZILLA}/browser/chrome/icons/default/default48.png
|
||||
FIREFOX_DESKTOP= ${MOZSRC}/taskcluster/docker/${MOZILLA}-snap/${MOZILLA}.desktop
|
||||
MOZ_OPTIONS= --enable-application=browser \
|
||||
--enable-official-branding
|
||||
|
||||
OPTIONS_EXCLUDE= BUNDLED_CAIRO
|
||||
|
||||
.include "${.CURDIR}/../../www/firefox/Makefile.options"
|
||||
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} -e 's/%u/%U/' -e '/X-MultipleArgs/d' \
|
||||
-e '/^Icon/s/=.*/=${FIREFOX_ICON:R}/' \
|
||||
${FIREFOX_DESKTOP}
|
||||
@${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:
|
||||
${INSTALL_DATA} ${FIREFOX_DESKTOP} ${STAGEDIR}${PREFIX}/share/applications/
|
||||
${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps
|
||||
${LN} -sf ${FIREFOX_ICON_SRC} ${STAGEDIR}${PREFIX}/share/pixmaps/${FIREFOX_ICON}
|
||||
|
||||
.include <bsd.port.mk>
|
3
www/firefox-esr/distinfo
Normal file
3
www/firefox-esr/distinfo
Normal file
@ -0,0 +1,3 @@
|
||||
TIMESTAMP = 1528228087
|
||||
SHA256 (firefox-60.1.0esr.source.tar.xz) = 6c6247b6fd63b4b08b85d3a7a536ce9238c3ce84de6c62ca0a5fdd2643d0cd1b
|
||||
SIZE (firefox-60.1.0esr.source.tar.xz) = 267439036
|
55
www/firefox-esr/files/patch-addon-search
Normal file
55
www/firefox-esr/files/patch-addon-search
Normal file
@ -0,0 +1,55 @@
|
||||
https://github.com/mozilla/addons/issues/708
|
||||
https://github.com/mozilla/addons-frontend/issues/4610
|
||||
|
||||
diff --git browser/app/profile/firefox.js browser/app/profile/firefox.js
|
||||
index 75c2c5e435e35..4d8c09c02759b 100644
|
||||
--- browser/app/profile/firefox.js
|
||||
+++ browser/app/profile/firefox.js
|
||||
@@ -45,8 +45,8 @@ pref("extensions.webextOptionalPermissionPrompts", tru
|
||||
pref("extensions.getAddons.cache.enabled", true);
|
||||
pref("extensions.getAddons.get.url", "https://services.addons.mozilla.org/api/v3/addons/search/?guid=%IDS%&lang=%LOCALE%");
|
||||
pref("extensions.getAddons.compatOverides.url", "https://services.addons.mozilla.org/api/v3/addons/compat-override/?guid=%IDS%&lang=%LOCALE%");
|
||||
-pref("extensions.getAddons.search.browseURL", "https://addons.mozilla.org/%LOCALE%/firefox/search?q=%TERMS%&platform=%OS%&appver=%VERSION%");
|
||||
-pref("extensions.webservice.discoverURL", "https://discovery.addons.mozilla.org/%LOCALE%/firefox/discovery/pane/%VERSION%/%OS%/%COMPATIBILITY_MODE%");
|
||||
+pref("extensions.getAddons.search.browseURL", "https://addons.mozilla.org/%LOCALE%/firefox/search?q=%TERMS%&platform=Linux&appver=%VERSION%");
|
||||
+pref("extensions.webservice.discoverURL", "https://discovery.addons.mozilla.org/%LOCALE%/firefox/discovery/pane/%VERSION%/Linux/%COMPATIBILITY_MODE%");
|
||||
pref("extensions.getAddons.link.url", "https://addons.mozilla.org/%LOCALE%/firefox/");
|
||||
pref("extensions.getAddons.themes.browseURL", "https://addons.mozilla.org/%LOCALE%/firefox/themes/?src=firefox");
|
||||
|
||||
@@ -186,8 +186,8 @@ pref("app.update.service.enabled", true);
|
||||
// .. etc ..
|
||||
//
|
||||
pref("extensions.update.enabled", true);
|
||||
-pref("extensions.update.url", "https://versioncheck.addons.mozilla.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&id=%ITEM_ID%&version=%ITEM_VERSION%&maxAppVersion=%ITEM_MAXAPPVERSION%&status=%ITEM_STATUS%&appID=%APP_ID%&appVersion=%APP_VERSION%&appOS=%APP_OS%&appABI=%APP_ABI%&locale=%APP_LOCALE%¤tAppVersion=%CURRENT_APP_VERSION%&updateType=%UPDATE_TYPE%&compatMode=%COMPATIBILITY_MODE%");
|
||||
-pref("extensions.update.background.url", "https://versioncheck-bg.addons.mozilla.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&id=%ITEM_ID%&version=%ITEM_VERSION%&maxAppVersion=%ITEM_MAXAPPVERSION%&status=%ITEM_STATUS%&appID=%APP_ID%&appVersion=%APP_VERSION%&appOS=%APP_OS%&appABI=%APP_ABI%&locale=%APP_LOCALE%¤tAppVersion=%CURRENT_APP_VERSION%&updateType=%UPDATE_TYPE%&compatMode=%COMPATIBILITY_MODE%");
|
||||
+pref("extensions.update.url", "https://versioncheck.addons.mozilla.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&id=%ITEM_ID%&version=%ITEM_VERSION%&maxAppVersion=%ITEM_MAXAPPVERSION%&status=%ITEM_STATUS%&appID=%APP_ID%&appVersion=%APP_VERSION%&appOS=Linux&appABI=%APP_ABI%&locale=%APP_LOCALE%¤tAppVersion=%CURRENT_APP_VERSION%&updateType=%UPDATE_TYPE%&compatMode=%COMPATIBILITY_MODE%");
|
||||
+pref("extensions.update.background.url", "https://versioncheck-bg.addons.mozilla.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&id=%ITEM_ID%&version=%ITEM_VERSION%&maxAppVersion=%ITEM_MAXAPPVERSION%&status=%ITEM_STATUS%&appID=%APP_ID%&appVersion=%APP_VERSION%&appOS=Linux&appABI=%APP_ABI%&locale=%APP_LOCALE%¤tAppVersion=%CURRENT_APP_VERSION%&updateType=%UPDATE_TYPE%&compatMode=%COMPATIBILITY_MODE%");
|
||||
pref("extensions.update.interval", 86400); // Check for updates to Extensions and
|
||||
// Themes every day
|
||||
// Non-symmetric (not shared by extensions) extension-specific [update] preferences
|
||||
diff --git toolkit/mozapps/extensions/internal/AddonRepository.jsm toolkit/mozapps/extensions/internal/AddonRepository.jsm
|
||||
index f70fd8d7e3bd8..81e8cd7764fdf 100644
|
||||
--- toolkit/mozapps/extensions/internal/AddonRepository.jsm
|
||||
+++ toolkit/mozapps/extensions/internal/AddonRepository.jsm
|
||||
@@ -588,7 +588,7 @@ var AddonRepository = {
|
||||
addon.version = String(aEntry.current_version.version);
|
||||
if (Array.isArray(aEntry.current_version.files)) {
|
||||
for (let file of aEntry.current_version.files) {
|
||||
- if (file.platform == "all" || file.platform == Services.appinfo.OS.toLowerCase()) {
|
||||
+ if (file.platform == "all" || file.platform == "linux" || file.platform == Services.appinfo.OS.toLowerCase()) {
|
||||
if (file.url) {
|
||||
addon.sourceURI = NetUtil.newURI(file.url);
|
||||
}
|
||||
diff --git toolkit/mozapps/extensions/internal/XPIProvider.jsm toolkit/mozapps/extensions/internal/XPIProvider.jsm
|
||||
index f70fd8d7e3bd8..81e8cd7764fdf 100644
|
||||
--- toolkit/mozapps/extensions/internal/XPIProvider.jsm
|
||||
+++ toolkit/mozapps/extensions/internal/XPIProvider.jsm
|
||||
@@ -4974,7 +4974,7 @@ AddonInternal.prototype = {
|
||||
// Something is causing errors in here
|
||||
try {
|
||||
for (let platform of this.targetPlatforms) {
|
||||
- if (platform.os == Services.appinfo.OS) {
|
||||
+ if (platform.os == "Linux" || platform.os == Services.appinfo.OS) {
|
||||
if (platform.abi) {
|
||||
needsABI = true;
|
||||
if (platform.abi === abi)
|
12
www/firefox-esr/files/patch-browser-app-nsBrowserApp.cpp
Normal file
12
www/firefox-esr/files/patch-browser-app-nsBrowserApp.cpp
Normal file
@ -0,0 +1,12 @@
|
||||
--- browser/app/nsBrowserApp.cpp.orig 2016-09-19 16:19:28 UTC
|
||||
+++ browser/app/nsBrowserApp.cpp
|
||||
@@ -324,6 +324,9 @@ int main(int argc, char* argv[], char* e
|
||||
{
|
||||
mozilla::TimeStamp start = mozilla::TimeStamp::Now();
|
||||
|
||||
+ setenv("MOZ_GMP_PATH", "%%LOCALBASE%%/lib/browser_plugins/symlinks/gecko", 0);
|
||||
+ setenv("MOZ_PLUGIN_PATH", "%%LOCALBASE%%/lib/browser_plugins/symlinks/gecko", 0);
|
||||
+
|
||||
#ifdef HAS_DLL_BLOCKLIST
|
||||
DllBlocklist_Initialize();
|
||||
|
1269
www/firefox-esr/files/patch-bug1021761
Normal file
1269
www/firefox-esr/files/patch-bug1021761
Normal file
File diff suppressed because it is too large
Load Diff
100
www/firefox-esr/files/patch-bug1144632
Normal file
100
www/firefox-esr/files/patch-bug1144632
Normal file
@ -0,0 +1,100 @@
|
||||
commit 7e0038706036
|
||||
Author: Lee Salzman <lsalzman@mozilla.com>
|
||||
Date: Thu May 24 14:50:31 2018 -0400
|
||||
|
||||
Bug 1144632 - fix big-endian Skia builds. r=rhunt
|
||||
|
||||
MozReview-Commit-ID: JQivGBE45qy
|
||||
---
|
||||
gfx/skia/skia/include/core/SkColorPriv.h | 15 ++++-----------
|
||||
gfx/skia/skia/include/core/SkImageInfo.h | 2 +-
|
||||
gfx/skia/skia/include/gpu/GrTypes.h | 5 +----
|
||||
gfx/skia/skia/src/core/SkColorData.h | 15 ++++-----------
|
||||
4 files changed, 10 insertions(+), 27 deletions(-)
|
||||
|
||||
diff --git gfx/skia/skia/include/core/SkColorPriv.h gfx/skia/skia/include/core/SkColorPriv.h
|
||||
index 0cd02e8034062..8a7f1501ba434 100644
|
||||
--- gfx/skia/skia/include/core/SkColorPriv.h
|
||||
+++ gfx/skia/skia/include/core/SkColorPriv.h
|
||||
@@ -55,17 +55,10 @@ static inline U8CPU SkUnitScalarClampToByte(SkScalar x) {
|
||||
* Here we enforce this constraint.
|
||||
*/
|
||||
|
||||
-#ifdef SK_CPU_BENDIAN
|
||||
- #define SK_RGBA_R32_SHIFT 24
|
||||
- #define SK_RGBA_G32_SHIFT 16
|
||||
- #define SK_RGBA_B32_SHIFT 8
|
||||
- #define SK_RGBA_A32_SHIFT 0
|
||||
-#else
|
||||
- #define SK_RGBA_R32_SHIFT 0
|
||||
- #define SK_RGBA_G32_SHIFT 8
|
||||
- #define SK_RGBA_B32_SHIFT 16
|
||||
- #define SK_RGBA_A32_SHIFT 24
|
||||
-#endif
|
||||
+#define SK_RGBA_R32_SHIFT 0
|
||||
+#define SK_RGBA_G32_SHIFT 8
|
||||
+#define SK_RGBA_B32_SHIFT 16
|
||||
+#define SK_RGBA_A32_SHIFT 24
|
||||
|
||||
#define SkGetPackedA32(packed) ((uint32_t)((packed) << (24 - SK_A32_SHIFT)) >> 24)
|
||||
#define SkGetPackedR32(packed) ((uint32_t)((packed) << (24 - SK_R32_SHIFT)) >> 24)
|
||||
diff --git gfx/skia/skia/include/core/SkImageInfo.h gfx/skia/skia/include/core/SkImageInfo.h
|
||||
index ece47f5c418a8..5b36ba1e4518a 100644
|
||||
--- gfx/skia/skia/include/core/SkImageInfo.h
|
||||
+++ gfx/skia/skia/include/core/SkImageInfo.h
|
||||
@@ -84,7 +84,7 @@ enum SkColorType {
|
||||
#elif SK_PMCOLOR_BYTE_ORDER(R,G,B,A)
|
||||
kN32_SkColorType = kRGBA_8888_SkColorType,
|
||||
#else
|
||||
- #error "SK_*32_SHIFT values must correspond to BGRA or RGBA byte order"
|
||||
+ kN32_SkColorType = kBGRA_8888_SkColorType,
|
||||
#endif
|
||||
};
|
||||
|
||||
diff --git gfx/skia/skia/include/gpu/GrTypes.h gfx/skia/skia/include/gpu/GrTypes.h
|
||||
index c88d9ee63b38f..fdca5f29e527b 100644
|
||||
--- gfx/skia/skia/include/gpu/GrTypes.h
|
||||
+++ gfx/skia/skia/include/gpu/GrTypes.h
|
||||
@@ -344,15 +344,12 @@ enum GrPixelConfig {
|
||||
static const int kGrPixelConfigCnt = kLast_GrPixelConfig + 1;
|
||||
|
||||
// Aliases for pixel configs that match skia's byte order.
|
||||
-#ifndef SK_CPU_LENDIAN
|
||||
- #error "Skia gpu currently assumes little endian"
|
||||
-#endif
|
||||
#if SK_PMCOLOR_BYTE_ORDER(B,G,R,A)
|
||||
static const GrPixelConfig kSkia8888_GrPixelConfig = kBGRA_8888_GrPixelConfig;
|
||||
#elif SK_PMCOLOR_BYTE_ORDER(R,G,B,A)
|
||||
static const GrPixelConfig kSkia8888_GrPixelConfig = kRGBA_8888_GrPixelConfig;
|
||||
#else
|
||||
- #error "SK_*32_SHIFT values must correspond to GL_BGRA or GL_RGBA format."
|
||||
+ static const GrPixelConfig kSkia8888_GrPixelConfig = kBGRA_8888_GrPixelConfig;
|
||||
#endif
|
||||
|
||||
/**
|
||||
diff --git gfx/skia/skia/src/core/SkColorData.h gfx/skia/skia/src/core/SkColorData.h
|
||||
index 3fc0113105a5b..43ae01eeaee3e 100644
|
||||
--- gfx/skia/skia/src/core/SkColorData.h
|
||||
+++ gfx/skia/skia/src/core/SkColorData.h
|
||||
@@ -32,17 +32,10 @@
|
||||
* Here we enforce this constraint.
|
||||
*/
|
||||
|
||||
-#ifdef SK_CPU_BENDIAN
|
||||
- #define SK_BGRA_B32_SHIFT 24
|
||||
- #define SK_BGRA_G32_SHIFT 16
|
||||
- #define SK_BGRA_R32_SHIFT 8
|
||||
- #define SK_BGRA_A32_SHIFT 0
|
||||
-#else
|
||||
- #define SK_BGRA_B32_SHIFT 0
|
||||
- #define SK_BGRA_G32_SHIFT 8
|
||||
- #define SK_BGRA_R32_SHIFT 16
|
||||
- #define SK_BGRA_A32_SHIFT 24
|
||||
-#endif
|
||||
+#define SK_BGRA_B32_SHIFT 0
|
||||
+#define SK_BGRA_G32_SHIFT 8
|
||||
+#define SK_BGRA_R32_SHIFT 16
|
||||
+#define SK_BGRA_A32_SHIFT 24
|
||||
|
||||
#if defined(SK_PMCOLOR_IS_RGBA) && defined(SK_PMCOLOR_IS_BGRA)
|
||||
#error "can't define PMCOLOR to be RGBA and BGRA"
|
67
www/firefox-esr/files/patch-bug1288587
Normal file
67
www/firefox-esr/files/patch-bug1288587
Normal file
@ -0,0 +1,67 @@
|
||||
diff --git a/build/moz.configure/init.configure b/build/moz.configure/init.configure
|
||||
index 855214a..1e91d51 100644
|
||||
--- build/moz.configure/init.configure
|
||||
+++ build/moz.configure/init.configure
|
||||
@@ -165,16 +165,17 @@ option(env='PYTHON', nargs=1, help='Python interpreter')
|
||||
# ==============================================================
|
||||
@depends('PYTHON', check_build_environment, mozconfig, '--help')
|
||||
@imports('os')
|
||||
@imports('sys')
|
||||
@imports('subprocess')
|
||||
@imports(_from='mozbuild.configure.util', _import='LineIO')
|
||||
@imports(_from='mozbuild.virtualenv', _import='VirtualenvManager')
|
||||
@imports(_from='mozbuild.virtualenv', _import='verify_python_version')
|
||||
+@imports(_from='__builtin__', _import='KeyError')
|
||||
@imports('distutils.sysconfig')
|
||||
def virtualenv_python(env_python, build_env, mozconfig, help):
|
||||
if help:
|
||||
return
|
||||
|
||||
python = env_python[0] if env_python else None
|
||||
|
||||
# Ideally we'd rely on the mozconfig injection from mozconfig_options,
|
||||
@@ -184,16 +185,22 @@ def virtualenv_python(env_python, build_env, mozconfig, help):
|
||||
if 'PYTHON' in mozconfig['env']['added']:
|
||||
python = mozconfig['env']['added']['PYTHON']
|
||||
elif 'PYTHON' in mozconfig['env']['modified']:
|
||||
python = mozconfig['env']['modified']['PYTHON'][1]
|
||||
elif 'PYTHON' in mozconfig['vars']['added']:
|
||||
python = mozconfig['vars']['added']['PYTHON']
|
||||
elif 'PYTHON' in mozconfig['vars']['modified']:
|
||||
python = mozconfig['vars']['modified']['PYTHON'][1]
|
||||
+ for i in ('env', 'vars'):
|
||||
+ for j in ('added', 'modified'):
|
||||
+ try:
|
||||
+ del mozconfig[i][j]['PYTHON']
|
||||
+ except KeyError:
|
||||
+ pass
|
||||
|
||||
with LineIO(lambda l: log.error(l)) as out:
|
||||
verify_python_version(out)
|
||||
topsrcdir, topobjdir = build_env.topsrcdir, build_env.topobjdir
|
||||
if topobjdir.endswith('/js/src'):
|
||||
topobjdir = topobjdir[:-7]
|
||||
|
||||
with LineIO(lambda l: log.info(l)) as out:
|
||||
@@ -219,17 +226,20 @@ def virtualenv_python(env_python, build_env, mozconfig, help):
|
||||
log.info('Creating Python environment')
|
||||
manager.build(python)
|
||||
|
||||
python = normsep(manager.python_path)
|
||||
|
||||
if python != normsep(sys.executable):
|
||||
log.info('Reexecuting in the virtualenv')
|
||||
if env_python:
|
||||
- del os.environ['PYTHON']
|
||||
+ try:
|
||||
+ del os.environ['PYTHON']
|
||||
+ except KeyError:
|
||||
+ pass
|
||||
# One would prefer to use os.execl, but that's completely borked on
|
||||
# Windows.
|
||||
sys.exit(subprocess.call([python] + sys.argv))
|
||||
|
||||
# We are now in the virtualenv
|
||||
if not distutils.sysconfig.get_python_lib():
|
||||
die('Could not determine python site packages directory')
|
||||
|
82
www/firefox-esr/files/patch-bug1375074
Normal file
82
www/firefox-esr/files/patch-bug1375074
Normal file
@ -0,0 +1,82 @@
|
||||
commit fc25eb4380d0
|
||||
Author: Lars T Hansen <lhansen@mozilla.com>
|
||||
Date: Wed Feb 28 13:57:52 2018 +0100
|
||||
|
||||
Bug 1375074 - Save and restore non-volatile x28 on ARM64 for generated unboxed object constructor. r=sstangl
|
||||
|
||||
--HG--
|
||||
extra : rebase_source : 4a2824b23cf7453d07c962123f780c0ff2fd5292
|
||||
extra : source : dec6ab6522a4eb4b3c2defc5078b38ed904f3383
|
||||
---
|
||||
js/src/jit-test/tests/bug1375074.js | 18 ++++++++++++++++++
|
||||
js/src/vm/UnboxedObject.cpp | 25 ++++++++++++++++++++++++-
|
||||
2 files changed, 42 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git js/src/jit-test/tests/bug1375074.js js/src/jit-test/tests/bug1375074.js
|
||||
new file mode 100644
|
||||
index 0000000000000..8bf01d96903fc
|
||||
--- /dev/null
|
||||
+++ js/src/jit-test/tests/bug1375074.js
|
||||
@@ -0,0 +1,18 @@
|
||||
+// This forces the VM to start creating unboxed objects and thus stresses a
|
||||
+// particular path into generated code for a specialized unboxed object
|
||||
+// constructor.
|
||||
+
|
||||
+var K = 2000; // 2000 should be plenty
|
||||
+var s = "[";
|
||||
+var i;
|
||||
+for ( i=0; i < K-1; i++ )
|
||||
+ s = s + `{"i":${i}},`;
|
||||
+s += `{"i":${i}}]`;
|
||||
+var v = JSON.parse(s);
|
||||
+
|
||||
+assertEq(v.length == K, true);
|
||||
+
|
||||
+for ( i=0; i < K; i++) {
|
||||
+ assertEq(v[i] instanceof Object, true);
|
||||
+ assertEq(v[i].i, i);
|
||||
+}
|
||||
diff --git js/src/vm/UnboxedObject.cpp js/src/vm/UnboxedObject.cpp
|
||||
index c8c178965c488..5badf328ede4f 100644
|
||||
--- js/src/vm/UnboxedObject.cpp
|
||||
+++ js/src/vm/UnboxedObject.cpp
|
||||
@@ -95,7 +95,15 @@ UnboxedLayout::makeConstructorCode(JSContext* cx, HandleObjectGroup group)
|
||||
#endif
|
||||
|
||||
#ifdef JS_CODEGEN_ARM64
|
||||
- // ARM64 communicates stack address via sp, but uses a pseudo-sp for addressing.
|
||||
+ // ARM64 communicates stack address via sp, but uses a pseudo-sp (PSP) for
|
||||
+ // addressing. The register we use for PSP may however also be used by
|
||||
+ // calling code, and it is nonvolatile, so save it. Do this as a special
|
||||
+ // case first because the generic save/restore code needs the PSP to be
|
||||
+ // initialized already.
|
||||
+ MOZ_ASSERT(PseudoStackPointer64.Is(masm.GetStackPointer64()));
|
||||
+ masm.Str(PseudoStackPointer64, vixl::MemOperand(sp, -16, vixl::PreIndex));
|
||||
+
|
||||
+ // Initialize the PSP from the SP.
|
||||
masm.initStackPtr();
|
||||
#endif
|
||||
|
||||
@@ -233,7 +241,22 @@ UnboxedLayout::makeConstructorCode(JSContext* cx, HandleObjectGroup group)
|
||||
masm.pop(ScratchDoubleReg);
|
||||
masm.PopRegsInMask(savedNonVolatileRegisters);
|
||||
|
||||
+#ifdef JS_CODEGEN_ARM64
|
||||
+ // Now restore the value that was in the PSP register on entry, and return.
|
||||
+
|
||||
+ // Obtain the correct SP from the PSP.
|
||||
+ masm.Mov(sp, PseudoStackPointer64);
|
||||
+
|
||||
+ // Restore the saved value of the PSP register, this value is whatever the
|
||||
+ // caller had saved in it, not any actual SP value, and it must not be
|
||||
+ // overwritten subsequently.
|
||||
+ masm.Ldr(PseudoStackPointer64, vixl::MemOperand(sp, 16, vixl::PostIndex));
|
||||
+
|
||||
+ // Perform a plain Ret(), as abiret() will move SP <- PSP and that is wrong.
|
||||
+ masm.Ret(vixl::lr);
|
||||
+#else
|
||||
masm.abiret();
|
||||
+#endif
|
||||
|
||||
masm.bind(&failureStoreOther);
|
||||
|
85
www/firefox-esr/files/patch-bug1411481
Normal file
85
www/firefox-esr/files/patch-bug1411481
Normal file
@ -0,0 +1,85 @@
|
||||
commit 57a55d1c2d33
|
||||
Author: sotaro <sotaro.ikeda.g@gmail.com>
|
||||
Date: Wed Mar 21 08:59:38 2018 +0900
|
||||
|
||||
Bug 1411481- Enable SkiaGL canvas usage on Mac r=jrmuizel
|
||||
---
|
||||
dom/canvas/CanvasRenderingContext2D.cpp | 3 ++-
|
||||
gfx/thebes/gfxPlatform.cpp | 3 ++-
|
||||
gfx/thebes/gfxPlatform.h | 2 +-
|
||||
gfx/thebes/gfxWindowsPlatform.cpp | 7 +++++++
|
||||
gfx/thebes/gfxWindowsPlatform.h | 2 ++
|
||||
5 files changed, 14 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git dom/canvas/CanvasRenderingContext2D.cpp dom/canvas/CanvasRenderingContext2D.cpp
|
||||
index ef3f868bdbf7..8666564b4d0c 100644
|
||||
--- dom/canvas/CanvasRenderingContext2D.cpp
|
||||
+++ dom/canvas/CanvasRenderingContext2D.cpp
|
||||
@@ -1438,7 +1438,8 @@ CanvasRenderingContext2D::AllowOpenGLCanvas() const
|
||||
// HTMLCanvasElement::GetCompositorBackendType would return LAYERS_NONE
|
||||
// as well, so it wouldn't help much.
|
||||
|
||||
- return (mCompositorBackend == LayersBackend::LAYERS_OPENGL) &&
|
||||
+ return (mCompositorBackend == LayersBackend::LAYERS_OPENGL ||
|
||||
+ mCompositorBackend == LayersBackend::LAYERS_WR) &&
|
||||
gfxPlatform::GetPlatform()->AllowOpenGLCanvas();
|
||||
}
|
||||
|
||||
diff --git gfx/thebes/gfxPlatform.cpp gfx/thebes/gfxPlatform.cpp
|
||||
index b9beea68d8c5..82635f9ab3ce 100644
|
||||
--- gfx/thebes/gfxPlatform.cpp
|
||||
+++ gfx/thebes/gfxPlatform.cpp
|
||||
@@ -1386,7 +1386,8 @@ bool gfxPlatform::AllowOpenGLCanvas()
|
||||
// so we let content process always assume correct compositor backend.
|
||||
// The callers have to do the right thing.
|
||||
bool correctBackend = !XRE_IsParentProcess() ||
|
||||
- ((mCompositorBackend == LayersBackend::LAYERS_OPENGL) &&
|
||||
+ ((mCompositorBackend == LayersBackend::LAYERS_OPENGL ||
|
||||
+ mCompositorBackend == LayersBackend::LAYERS_WR) &&
|
||||
(GetContentBackendFor(mCompositorBackend) == BackendType::SKIA));
|
||||
|
||||
if (gfxPrefs::CanvasAzureAccelerated() && correctBackend) {
|
||||
diff --git gfx/thebes/gfxPlatform.h gfx/thebes/gfxPlatform.h
|
||||
index c988eb1168a8..3bbf2b763f26 100644
|
||||
--- gfx/thebes/gfxPlatform.h
|
||||
+++ gfx/thebes/gfxPlatform.h
|
||||
@@ -286,7 +286,7 @@ public:
|
||||
/// asking for it, we will examine the commands in the first few seconds
|
||||
/// of the canvas usage, and potentially change to accelerated or
|
||||
/// non-accelerated canvas.
|
||||
- bool AllowOpenGLCanvas();
|
||||
+ virtual bool AllowOpenGLCanvas();
|
||||
virtual void InitializeSkiaCacheLimits();
|
||||
|
||||
static bool AsyncPanZoomEnabled();
|
||||
diff --git gfx/thebes/gfxWindowsPlatform.cpp gfx/thebes/gfxWindowsPlatform.cpp
|
||||
index 9ba6f40c6cc0..4d65791d075f 100644
|
||||
--- gfx/thebes/gfxWindowsPlatform.cpp
|
||||
+++ gfx/thebes/gfxWindowsPlatform.cpp
|
||||
@@ -509,6 +509,13 @@ gfxWindowsPlatform::UpdateRenderMode()
|
||||
}
|
||||
}
|
||||
|
||||
+bool
|
||||
+gfxWindowsPlatform::AllowOpenGLCanvas()
|
||||
+{
|
||||
+ // OpenGL canvas is not supported on windows
|
||||
+ return false;
|
||||
+}
|
||||
+
|
||||
mozilla::gfx::BackendType
|
||||
gfxWindowsPlatform::GetContentBackendFor(mozilla::layers::LayersBackend aLayers)
|
||||
{
|
||||
diff --git gfx/thebes/gfxWindowsPlatform.h gfx/thebes/gfxWindowsPlatform.h
|
||||
index 47048de8f5f5..47ec0e9e5547 100644
|
||||
--- gfx/thebes/gfxWindowsPlatform.h
|
||||
+++ gfx/thebes/gfxWindowsPlatform.h
|
||||
@@ -174,6 +174,8 @@ public:
|
||||
void SchedulePaintIfDeviceReset() override;
|
||||
void CheckForContentOnlyDeviceReset();
|
||||
|
||||
+ bool AllowOpenGLCanvas() override;
|
||||
+
|
||||
mozilla::gfx::BackendType GetContentBackendFor(mozilla::layers::LayersBackend aLayers) override;
|
||||
|
||||
mozilla::gfx::BackendType GetPreferredCanvasBackend() override;
|
1000
www/firefox-esr/files/patch-bug1438678
Normal file
1000
www/firefox-esr/files/patch-bug1438678
Normal file
File diff suppressed because it is too large
Load Diff
39
www/firefox-esr/files/patch-bug1442583
Normal file
39
www/firefox-esr/files/patch-bug1442583
Normal file
@ -0,0 +1,39 @@
|
||||
commit 7371a080accd
|
||||
Author: Lars T Hansen <lhansen@mozilla.com>
|
||||
Date: Mon Mar 5 09:55:28 2018 +0100
|
||||
|
||||
Bug 1442583 - Properly initialize ARM64 icache flushing machinery. r=sstangl
|
||||
|
||||
--HG--
|
||||
extra : rebase_source : 73b5921da1fa0a19d6072e35d09bd7b528bb6bfc
|
||||
extra : intermediate-source : 19516efbbf6750ba04e11c7099586d5be2fe818f
|
||||
extra : source : 4316cc82d6302edf839a4af6fcb815f0ffa9f65c
|
||||
---
|
||||
js/src/jit/ProcessExecutableMemory.cpp | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git js/src/jit/ProcessExecutableMemory.cpp js/src/jit/ProcessExecutableMemory.cpp
|
||||
index e763a9d68dc17..8a6d50b6a7845 100644
|
||||
--- js/src/jit/ProcessExecutableMemory.cpp
|
||||
+++ js/src/jit/ProcessExecutableMemory.cpp
|
||||
@@ -20,6 +20,9 @@
|
||||
#include "jsutil.h"
|
||||
|
||||
#include "gc/Memory.h"
|
||||
+#ifdef JS_CODEGEN_ARM64
|
||||
+# include "jit/arm64/vixl/Cpu-vixl.h"
|
||||
+#endif
|
||||
#include "threading/LockGuard.h"
|
||||
#include "threading/Mutex.h"
|
||||
#include "util/Windows.h"
|
||||
@@ -621,6 +624,10 @@ js::jit::DeallocateExecutableMemory(void* addr, size_t bytes)
|
||||
bool
|
||||
js::jit::InitProcessExecutableMemory()
|
||||
{
|
||||
+#ifdef JS_CODEGEN_ARM64
|
||||
+ // Initialize instruction cache flushing.
|
||||
+ vixl::CPU::SetUp();
|
||||
+#endif
|
||||
return execMemory.init();
|
||||
}
|
||||
|
45
www/firefox-esr/files/patch-bug1444798
Normal file
45
www/firefox-esr/files/patch-bug1444798
Normal file
@ -0,0 +1,45 @@
|
||||
commit 7871e211ec43
|
||||
Author: sotaro <sotaro.ikeda.g@gmail.com>
|
||||
Date: Fri Mar 16 21:03:59 2018 +0900
|
||||
|
||||
Bug 1444798 - Fix ExternalImageCallback func types r=jrmuizel
|
||||
---
|
||||
gfx/webrender_bindings/src/bindings.rs | 11 +++++++----
|
||||
1 file changed, 7 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git gfx/webrender_bindings/src/bindings.rs gfx/webrender_bindings/src/bindings.rs
|
||||
index 8517d7dd33e5..cf885ee713f3 100644
|
||||
--- gfx/webrender_bindings/src/bindings.rs
|
||||
+++ gfx/webrender_bindings/src/bindings.rs
|
||||
@@ -312,8 +312,8 @@ struct WrExternalImage {
|
||||
size: usize,
|
||||
}
|
||||
|
||||
-type LockExternalImageCallback = fn(*mut c_void, WrExternalImageId, u8) -> WrExternalImage;
|
||||
-type UnlockExternalImageCallback = fn(*mut c_void, WrExternalImageId, u8);
|
||||
+type LockExternalImageCallback = unsafe extern "C" fn(*mut c_void, WrExternalImageId, u8) -> WrExternalImage;
|
||||
+type UnlockExternalImageCallback = unsafe extern "C" fn(*mut c_void, WrExternalImageId, u8);
|
||||
|
||||
#[repr(C)]
|
||||
pub struct WrExternalImageHandler {
|
||||
@@ -327,7 +327,8 @@ impl ExternalImageHandler for WrExternalImageHandler {
|
||||
id: ExternalImageId,
|
||||
channel_index: u8)
|
||||
-> ExternalImage {
|
||||
- let image = (self.lock_func)(self.external_image_obj, id.into(), channel_index);
|
||||
+
|
||||
+ let image = unsafe { (self.lock_func)(self.external_image_obj, id.into(), channel_index) };
|
||||
ExternalImage {
|
||||
uv: TexelRect::new(image.u0, image.v0, image.u1, image.v1),
|
||||
source: match image.image_type {
|
||||
@@ -341,7 +342,9 @@ impl ExternalImageHandler for WrExternalImageHandler {
|
||||
fn unlock(&mut self,
|
||||
id: ExternalImageId,
|
||||
channel_index: u8) {
|
||||
- (self.unlock_func)(self.external_image_obj, id.into(), channel_index);
|
||||
+ unsafe {
|
||||
+ (self.unlock_func)(self.external_image_obj, id.into(), channel_index);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
|
75
www/firefox-esr/files/patch-bug1445907
Normal file
75
www/firefox-esr/files/patch-bug1445907
Normal file
@ -0,0 +1,75 @@
|
||||
commit 0c6dd4a750db
|
||||
Author: Lars T Hansen <lhansen@mozilla.com>
|
||||
Date: Mon Mar 19 09:58:06 2018 +0100
|
||||
|
||||
Bug 1445907 - Save x28 before clobbering it in the regex compiler. r=sstangl
|
||||
---
|
||||
js/src/irregexp/NativeRegExpMacroAssembler.cpp | 25 ++++++++++++++++++++++++-
|
||||
js/src/jit-test/tests/regexp/bug1445907.js | 15 +++++++++++++++
|
||||
2 files changed, 39 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git js/src/irregexp/NativeRegExpMacroAssembler.cpp js/src/irregexp/NativeRegExpMacroAssembler.cpp
|
||||
index 28a4c35e75bfe..c08b005cf856b 100644
|
||||
--- js/src/irregexp/NativeRegExpMacroAssembler.cpp
|
||||
+++ js/src/irregexp/NativeRegExpMacroAssembler.cpp
|
||||
@@ -123,7 +123,15 @@ NativeRegExpMacroAssembler::GenerateCode(JSContext* cx, bool match_only)
|
||||
masm.bind(&entry_label_);
|
||||
|
||||
#ifdef JS_CODEGEN_ARM64
|
||||
- // ARM64 communicates stack address via sp, but uses a pseudo-sp for addressing.
|
||||
+ // ARM64 communicates stack address via SP, but uses a pseudo-sp (PSP) for
|
||||
+ // addressing. The register we use for PSP may however also be used by
|
||||
+ // calling code, and it is nonvolatile, so save it. Do this as a special
|
||||
+ // case first because the generic save/restore code needs the PSP to be
|
||||
+ // initialized already.
|
||||
+ MOZ_ASSERT(PseudoStackPointer64.Is(masm.GetStackPointer64()));
|
||||
+ masm.Str(PseudoStackPointer64, vixl::MemOperand(sp, -16, vixl::PreIndex));
|
||||
+
|
||||
+ // Initialize the PSP from the SP.
|
||||
masm.initStackPtr();
|
||||
#endif
|
||||
|
||||
@@ -421,7 +429,22 @@ NativeRegExpMacroAssembler::GenerateCode(JSContext* cx, bool match_only)
|
||||
for (GeneralRegisterBackwardIterator iter(savedNonVolatileRegisters); iter.more(); ++iter)
|
||||
masm.Pop(*iter);
|
||||
|
||||
+#ifdef JS_CODEGEN_ARM64
|
||||
+ // Now restore the value that was in the PSP register on entry, and return.
|
||||
+
|
||||
+ // Obtain the correct SP from the PSP.
|
||||
+ masm.Mov(sp, PseudoStackPointer64);
|
||||
+
|
||||
+ // Restore the saved value of the PSP register, this value is whatever the
|
||||
+ // caller had saved in it, not any actual SP value, and it must not be
|
||||
+ // overwritten subsequently.
|
||||
+ masm.Ldr(PseudoStackPointer64, vixl::MemOperand(sp, 16, vixl::PostIndex));
|
||||
+
|
||||
+ // Perform a plain Ret(), as abiret() will move SP <- PSP and that is wrong.
|
||||
+ masm.Ret(vixl::lr);
|
||||
+#else
|
||||
masm.abiret();
|
||||
+#endif
|
||||
|
||||
// Backtrack code (branch target for conditional backtracks).
|
||||
if (backtrack_label_.used()) {
|
||||
diff --git js/src/jit-test/tests/regexp/bug1445907.js js/src/jit-test/tests/regexp/bug1445907.js
|
||||
new file mode 100644
|
||||
index 0000000000000..75b23753eaf93
|
||||
--- /dev/null
|
||||
+++ js/src/jit-test/tests/regexp/bug1445907.js
|
||||
@@ -0,0 +1,15 @@
|
||||
+// On ARM64, we failed to save x28 properly when generating code for the regexp
|
||||
+// matcher.
|
||||
+//
|
||||
+// There's wasm and Debugger code here because the combination forces the use of
|
||||
+// x28 and exposes the bug when running on the simulator.
|
||||
+
|
||||
+if (!wasmIsSupported())
|
||||
+ quit();
|
||||
+
|
||||
+var g = newGlobal('');
|
||||
+var dbg = new Debugger(g);
|
||||
+g.eval(`var m = new WebAssembly.Instance(new WebAssembly.Module(wasmTextToBinary('(module (func (export "test")))')))`);
|
||||
+var re = /./;
|
||||
+dbg.onEnterFrame = function(frame) { re.exec("x") };
|
||||
+result = g.eval("m.exports.test()");
|
45
www/firefox-esr/files/patch-bug1447359
Normal file
45
www/firefox-esr/files/patch-bug1447359
Normal file
@ -0,0 +1,45 @@
|
||||
commit fef467b5a93d
|
||||
Author: Luke Wagner <luke@mozilla.com>
|
||||
Date: Thu Mar 22 10:28:13 2018 -0500
|
||||
|
||||
Bug 1447359 - Baldr: add AutoForbidPools in a few missing places (r=lth)
|
||||
|
||||
--HG--
|
||||
extra : rebase_source : 75f1909deb352391529ce5e58a89e5f9cfeb3662
|
||||
---
|
||||
js/src/jit/arm64/MacroAssembler-arm64-inl.h | 1 +
|
||||
js/src/jit/arm64/MacroAssembler-arm64.cpp | 2 ++
|
||||
2 files changed, 3 insertions(+)
|
||||
|
||||
diff --git js/src/jit/arm64/MacroAssembler-arm64-inl.h js/src/jit/arm64/MacroAssembler-arm64-inl.h
|
||||
index 7061cbfd93ebb..190442f7afa0a 100644
|
||||
--- js/src/jit/arm64/MacroAssembler-arm64-inl.h
|
||||
+++ js/src/jit/arm64/MacroAssembler-arm64-inl.h
|
||||
@@ -359,6 +359,7 @@ MacroAssembler::sub32FromStackPtrWithPatch(Register dest)
|
||||
{
|
||||
vixl::UseScratchRegisterScope temps(this);
|
||||
const ARMRegister scratch = temps.AcquireX();
|
||||
+ AutoForbidPools afp(this, /* max number of instructions in scope = */ 3);
|
||||
CodeOffset offs = CodeOffset(currentOffset());
|
||||
movz(scratch, 0, 0);
|
||||
movk(scratch, 0, 16);
|
||||
diff --git js/src/jit/arm64/MacroAssembler-arm64.cpp js/src/jit/arm64/MacroAssembler-arm64.cpp
|
||||
index 7b599b7e9d610..4e8fdb6a67019 100644
|
||||
--- js/src/jit/arm64/MacroAssembler-arm64.cpp
|
||||
+++ js/src/jit/arm64/MacroAssembler-arm64.cpp
|
||||
@@ -707,6 +707,7 @@ MacroAssembler::patchFarJump(CodeOffset farJump, uint32_t targetOffset)
|
||||
CodeOffset
|
||||
MacroAssembler::nopPatchableToCall(const wasm::CallSiteDesc& desc)
|
||||
{
|
||||
+ AutoForbidPools afp(this, /* max number of instructions in scope = */ 1);
|
||||
CodeOffset offset(currentOffset());
|
||||
Nop();
|
||||
append(desc, CodeOffset(currentOffset()));
|
||||
@@ -1077,6 +1078,7 @@ MacroAssembler::comment(const char* msg)
|
||||
CodeOffset
|
||||
MacroAssembler::wasmTrapInstruction()
|
||||
{
|
||||
+ AutoForbidPools afp(this, /* max number of instructions in scope = */ 1);
|
||||
CodeOffset offs(currentOffset());
|
||||
Unreachable();
|
||||
return offs;
|
22
www/firefox-esr/files/patch-bug1447519
Normal file
22
www/firefox-esr/files/patch-bug1447519
Normal file
@ -0,0 +1,22 @@
|
||||
Enable SkiaGL by default on OpenGL compositing platforms
|
||||
|
||||
diff --git modules/libpref/init/all.js modules/libpref/init/all.js
|
||||
index 93e56b00a961..61a2174c3384 100644
|
||||
--- modules/libpref/init/all.js
|
||||
+++ modules/libpref/init/all.js
|
||||
@@ -882,15 +882,9 @@ pref("gfx.font_rendering.opentype_svg.enabled", true);
|
||||
pref("gfx.canvas.azure.backends", "direct2d1.1,skia,cairo");
|
||||
pref("gfx.content.azure.backends", "direct2d1.1,skia,cairo");
|
||||
#else
|
||||
-#ifdef XP_MACOSX
|
||||
pref("gfx.content.azure.backends", "skia");
|
||||
pref("gfx.canvas.azure.backends", "skia");
|
||||
-// Accelerated cg canvas where available (10.7+)
|
||||
pref("gfx.canvas.azure.accelerated", true);
|
||||
-#else
|
||||
-pref("gfx.canvas.azure.backends", "skia");
|
||||
-pref("gfx.content.azure.backends", "skia");
|
||||
-#endif
|
||||
#endif
|
||||
|
||||
pref("gfx.canvas.skiagl.dynamic-cache", true);
|
27
www/firefox-esr/files/patch-bug1448770
Normal file
27
www/firefox-esr/files/patch-bug1448770
Normal file
@ -0,0 +1,27 @@
|
||||
Disable GL_EXT_debug_marker due to crashes on x86 with Mesa drivers.
|
||||
|
||||
diff --git gfx/webrender/src/query.rs gfx/webrender/src/query.rs
|
||||
index 999abc749115..68850ef025e4 100644
|
||||
--- gfx/webrender/src/query.rs
|
||||
+++ gfx/webrender/src/query.rs
|
||||
@@ -274,17 +274,20 @@ pub struct GpuMarker {
|
||||
|
||||
impl GpuMarker {
|
||||
fn new(gl: &Rc<gl::Gl>, message: &str) -> Self {
|
||||
+#[cfg(not(target_arch = "x86"))]
|
||||
gl.push_group_marker_ext(message);
|
||||
GpuMarker { gl: Rc::clone(gl) }
|
||||
}
|
||||
|
||||
fn fire(gl: &Rc<gl::Gl>, message: &str) {
|
||||
+#[cfg(not(target_arch = "x86"))]
|
||||
gl.insert_event_marker_ext(message);
|
||||
}
|
||||
}
|
||||
|
||||
impl Drop for GpuMarker {
|
||||
fn drop(&mut self) {
|
||||
+#[cfg(not(target_arch = "x86"))]
|
||||
self.gl.pop_group_marker_ext();
|
||||
}
|
||||
}
|
33
www/firefox-esr/files/patch-bug1451292
Normal file
33
www/firefox-esr/files/patch-bug1451292
Normal file
@ -0,0 +1,33 @@
|
||||
commit b3a02fddbce8
|
||||
Author: Lars T Hansen <lhansen@mozilla.com>
|
||||
Date: Wed Apr 4 15:48:48 2018 +0200
|
||||
|
||||
Bug 1451292 - Better payload for arm64 breakpoint instruction. r=sstangl
|
||||
|
||||
At least some non-zero payloads confuse GDB and make it iloop on the
|
||||
breakpoint instruction rather than break to the command line as it
|
||||
should. There seems to be no reason not to use a zero payload.
|
||||
|
||||
--HG--
|
||||
extra : rebase_source : 6d6f9aa2911b86b02572f88948d48bc2238c6353
|
||||
extra : amend_source : 9fed9235d481a9eadafc4a3e0075c9fef8b6050d
|
||||
---
|
||||
js/src/jit/arm64/MacroAssembler-arm64.cpp | 5 +++--
|
||||
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git js/src/jit/arm64/MacroAssembler-arm64.cpp js/src/jit/arm64/MacroAssembler-arm64.cpp
|
||||
index 4ea64b1225d00..a212de0ec2f45 100644
|
||||
--- js/src/jit/arm64/MacroAssembler-arm64.cpp
|
||||
+++ js/src/jit/arm64/MacroAssembler-arm64.cpp
|
||||
@@ -237,8 +237,9 @@ MacroAssemblerCompat::profilerEnterFrame(RegisterOrSP framePtr, Register scratch
|
||||
void
|
||||
MacroAssemblerCompat::breakpoint()
|
||||
{
|
||||
- static int code = 0xA77;
|
||||
- Brk((code++) & 0xffff);
|
||||
+ // Note, other payloads are possible, but GDB is known to misinterpret them
|
||||
+ // sometimes and iloop on the breakpoint instead of stopping properly.
|
||||
+ Brk(0);
|
||||
}
|
||||
|
||||
// Either `any` is valid or `sixtyfour` is valid. Return a 32-bit ARMRegister
|
22
www/firefox-esr/files/patch-bug1456556
Normal file
22
www/firefox-esr/files/patch-bug1456556
Normal file
@ -0,0 +1,22 @@
|
||||
commit f6fc0b418aa3
|
||||
Author: Andrea Marchesini <amarchesini@mozilla.com>
|
||||
Date: Tue May 1 08:47:13 2018 +0200
|
||||
|
||||
Bug 1456556 - FetchConsumer scope-exit RAII must grab 'self' by value, r=erahm
|
||||
---
|
||||
dom/fetch/FetchConsumer.cpp | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git dom/fetch/FetchConsumer.cpp dom/fetch/FetchConsumer.cpp
|
||||
index 134bf7f2e703a..3c3687fea1d5a 100644
|
||||
--- dom/fetch/FetchConsumer.cpp
|
||||
+++ dom/fetch/FetchConsumer.cpp
|
||||
@@ -582,7 +582,7 @@ FetchBodyConsumer<Derived>::ContinueConsumeBody(nsresult aStatus,
|
||||
RefPtr<Promise> localPromise = mConsumePromise.forget();
|
||||
|
||||
RefPtr<FetchBodyConsumer<Derived>> self = this;
|
||||
- auto autoReleaseObject = mozilla::MakeScopeExit([&] {
|
||||
+ auto autoReleaseObject = mozilla::MakeScopeExit([self] {
|
||||
self->ReleaseObject();
|
||||
});
|
||||
|
12
www/firefox-esr/files/patch-bug702179
Normal file
12
www/firefox-esr/files/patch-bug702179
Normal file
@ -0,0 +1,12 @@
|
||||
Don't build static JS lib to make sure DTrace probes are picked up.
|
||||
|
||||
--- js/src/build/moz.build.orig 2017-04-16 18:00:50 UTC
|
||||
+++ js/src/build/moz.build
|
||||
@@ -71,7 +71,3 @@ if CONFIG['OS_ARCH'] == 'SunOS':
|
||||
]
|
||||
|
||||
OS_LIBS += CONFIG['REALTIME_LIBS']
|
||||
-
|
||||
-NO_EXPAND_LIBS = True
|
||||
-
|
||||
-DIST_INSTALL = True
|
259
www/firefox-esr/files/patch-bug847568
Normal file
259
www/firefox-esr/files/patch-bug847568
Normal file
@ -0,0 +1,259 @@
|
||||
# Allow building against system-wide graphite2/harfbuzz.
|
||||
|
||||
diff --git config/system-headers.mozbuild config/system-headers.mozbuild
|
||||
index 7620b4d00623..09d3db5ca8c0 100644
|
||||
--- config/system-headers.mozbuild
|
||||
+++ config/system-headers.mozbuild
|
||||
@@ -1312,6 +1312,19 @@ if not CONFIG['MOZ_TREE_PIXMAN']:
|
||||
'pixman.h',
|
||||
]
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_GRAPHITE2']:
|
||||
+ system_headers += [
|
||||
+ 'graphite2/Font.h',
|
||||
+ 'graphite2/Segment.h',
|
||||
+ ]
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ system_headers += [
|
||||
+ 'harfbuzz/hb-glib.h',
|
||||
+ 'harfbuzz/hb-ot.h',
|
||||
+ 'harfbuzz/hb.h',
|
||||
+ ]
|
||||
+
|
||||
if CONFIG['MOZ_SYSTEM_LIBVPX']:
|
||||
system_headers += [
|
||||
'vpx_mem/vpx_mem.h',
|
||||
diff --git dom/base/moz.build dom/base/moz.build
|
||||
index 8e19020315ae..2fcdbb6f7b42 100644
|
||||
--- dom/base/moz.build
|
||||
+++ dom/base/moz.build
|
||||
@@ -470,6 +470,9 @@ if CONFIG['MOZ_BUILD_APP'] in ['browser', 'mobile/android', 'xulrunner']:
|
||||
if CONFIG['MOZ_X11']:
|
||||
CXXFLAGS += CONFIG['TK_CFLAGS']
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
+
|
||||
GENERATED_FILES += [
|
||||
'PropertyUseCounterMap.inc',
|
||||
'UseCounterList.h',
|
||||
diff --git gfx/graphite2/moz-gr-update.sh gfx/graphite2/moz-gr-update.sh
|
||||
index faaab1b17971..04eff5f09882 100644
|
||||
--- gfx/graphite2/moz-gr-update.sh
|
||||
+++ gfx/graphite2/moz-gr-update.sh
|
||||
@@ -1,6 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Script used to update the Graphite2 library in the mozilla source tree
|
||||
+# and bump version for --with-system-graphite2
|
||||
|
||||
# This script lives in gfx/graphite2, along with the library source,
|
||||
# but must be run from the top level of the mozilla-central tree.
|
||||
@@ -37,12 +38,16 @@ echo "See" $0 "for update procedure." >> gfx/graphite2/README.mozilla
|
||||
#find gfx/graphite2/ -name "*.cpp" -exec perl -p -i -e "s/<cstdio>/<stdio.h>/;s/Windows.h/windows.h/;" {} \;
|
||||
#find gfx/graphite2/ -name "*.h" -exec perl -p -i -e "s/<cstdio>/<stdio.h>/;s/Windows.h/windows.h/;" {} \;
|
||||
|
||||
+# chase version for --with-system-graphite2
|
||||
+perl -p -i -e "s/[0-9]+\,[0-9]+\,[0-9]+/$RELEASE/ and tr/./,/ \
|
||||
+ if /GR2_VERSION_REQUIRE/" old-configure.in
|
||||
+
|
||||
# summarize what's been touched
|
||||
echo Updated to $RELEASE.
|
||||
echo Here is what changed in the gfx/graphite2 directory:
|
||||
echo
|
||||
|
||||
-hg stat gfx/graphite2
|
||||
+hg stat old-configure.in gfx/graphite2
|
||||
|
||||
echo
|
||||
echo If gfx/graphite2/src/files.mk has changed, please make corresponding
|
||||
diff --git gfx/harfbuzz/README-mozilla gfx/harfbuzz/README-mozilla
|
||||
index 22c76a7df020..a01490bd49ee 100644
|
||||
--- gfx/harfbuzz/README-mozilla
|
||||
+++ gfx/harfbuzz/README-mozilla
|
||||
@@ -19,3 +19,8 @@ the mozilla tree.
|
||||
|
||||
If the collection of source files changes, manual updates to moz.build may be
|
||||
needed, as we don't use the upstream makefiles.
|
||||
+
|
||||
+The in-tree copy may be omitted during build by --with-system-harfbuzz.
|
||||
+Make sure to keep pkg-config version check within toolkit/moz.configure 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 771f652e837a..3b358d84e384 100644
|
||||
--- gfx/moz.build
|
||||
+++ gfx/moz.build
|
||||
@@ -10,6 +10,12 @@ with Files('**'):
|
||||
if CONFIG['MOZ_TREE_CAIRO']:
|
||||
DIRS += ['cairo']
|
||||
|
||||
+if not CONFIG['MOZ_SYSTEM_GRAPHITE2']:
|
||||
+ DIRS += ['graphite2/src' ]
|
||||
+
|
||||
+if not CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ DIRS += ['harfbuzz/src']
|
||||
+
|
||||
DIRS += [
|
||||
'2d',
|
||||
'ycbcr',
|
||||
@@ -18,8 +24,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 e06ae3457a47..93faa61594a3 100755
|
||||
--- gfx/skia/generate_mozbuild.py
|
||||
+++ gfx/skia/generate_mozbuild.py
|
||||
@@ -135,6 +135,9 @@ if CONFIG['CLANG_CXX'] or CONFIG['CLANG_CL']:
|
||||
'-Wno-unused-private-field',
|
||||
]
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
+
|
||||
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk3', 'android'):
|
||||
CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
|
||||
CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS']
|
||||
diff --git gfx/skia/moz.build gfx/skia/moz.build
|
||||
index 2118677ca3a8..e4978b413784 100644
|
||||
--- gfx/skia/moz.build
|
||||
+++ gfx/skia/moz.build
|
||||
@@ -780,6 +780,9 @@ if CONFIG['CLANG_CXX'] or CONFIG['CLANG_CL']:
|
||||
'-Wno-unused-private-field',
|
||||
]
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
+
|
||||
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk3', 'android'):
|
||||
CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
|
||||
CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS']
|
||||
diff --git gfx/thebes/moz.build gfx/thebes/moz.build
|
||||
index 56f1b9fe3f4b..0ac1100b0df3 100644
|
||||
--- gfx/thebes/moz.build
|
||||
+++ gfx/thebes/moz.build
|
||||
@@ -267,7 +267,13 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3'):
|
||||
|
||||
LOCAL_INCLUDES += CONFIG['SKIA_INCLUDES']
|
||||
|
||||
-DEFINES['GRAPHITE2_STATIC'] = True
|
||||
+if CONFIG['MOZ_SYSTEM_GRAPHITE2']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_GRAPHITE2_CFLAGS']
|
||||
+else:
|
||||
+ DEFINES['GRAPHITE2_STATIC'] = True
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
|
||||
if CONFIG['CC_TYPE'] == 'clang':
|
||||
# Suppress warnings from Skia header files.
|
||||
diff --git intl/unicharutil/util/moz.build intl/unicharutil/util/moz.build
|
||||
index cb1233c56d7e..06fb1f9f174b 100644
|
||||
--- intl/unicharutil/util/moz.build
|
||||
+++ intl/unicharutil/util/moz.build
|
||||
@@ -25,4 +25,7 @@ UNIFIED_SOURCES += [
|
||||
'nsUnicodeProperties.cpp',
|
||||
]
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
+
|
||||
FINAL_LIBRARY = 'xul'
|
||||
diff --git netwerk/dns/moz.build netwerk/dns/moz.build
|
||||
index 79c26e3e7001..c4d93bc5f7dc 100644
|
||||
--- netwerk/dns/moz.build
|
||||
+++ netwerk/dns/moz.build
|
||||
@@ -73,3 +73,6 @@ USE_LIBS += ['icu']
|
||||
|
||||
if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
|
||||
CXXFLAGS += ['-Wno-error=shadow']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
diff --git old-configure.in old-configure.in
|
||||
index 95a58b634593..b614eef85c89 100644
|
||||
--- old-configure.in
|
||||
+++ old-configure.in
|
||||
@@ -4333,6 +4333,27 @@ dnl ========================================================
|
||||
|
||||
AC_SUBST(MOZ_LINUX_32_SSE2_STARTUP_ERROR)
|
||||
|
||||
+dnl ========================================================
|
||||
+dnl Check for graphite2
|
||||
+dnl ========================================================
|
||||
+if test -n "$MOZ_SYSTEM_GRAPHITE2"; then
|
||||
+ dnl graphite2.pc has bogus version, check manually
|
||||
+ _SAVE_CFLAGS=$CFLAGS
|
||||
+ CFLAGS="$CFLAGS $MOZ_GRAPHITE2_CFLAGS"
|
||||
+ AC_TRY_COMPILE([ #include <graphite2/Font.h>
|
||||
+ #define GR2_VERSION_REQUIRE(major,minor,bugfix) \
|
||||
+ ( GR2_VERSION_MAJOR * 10000 + GR2_VERSION_MINOR \
|
||||
+ * 100 + GR2_VERSION_BUGFIX >= \
|
||||
+ (major) * 10000 + (minor) * 100 + (bugfix) )
|
||||
+ ], [
|
||||
+ #if !GR2_VERSION_REQUIRE(1,3,10)
|
||||
+ #error "Insufficient graphite2 version."
|
||||
+ #endif
|
||||
+ ], [],
|
||||
+ [AC_MSG_ERROR([--with-system-graphite2 requested but no working libgraphite2 found])])
|
||||
+ CFLAGS=$_SAVE_CFLAGS
|
||||
+fi
|
||||
+
|
||||
dnl ========================================================
|
||||
dnl Check for pixman and cairo
|
||||
dnl ========================================================
|
||||
diff --git toolkit/library/moz.build toolkit/library/moz.build
|
||||
index 24f940e1ed7e..079a575adec3 100644
|
||||
--- toolkit/library/moz.build
|
||||
+++ toolkit/library/moz.build
|
||||
@@ -231,6 +231,12 @@ if CONFIG['MOZ_SYSTEM_JPEG']:
|
||||
if CONFIG['MOZ_SYSTEM_PNG']:
|
||||
OS_LIBS += CONFIG['MOZ_PNG_LIBS']
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_GRAPHITE2']:
|
||||
+ OS_LIBS += CONFIG['MOZ_GRAPHITE2_LIBS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ OS_LIBS += CONFIG['MOZ_HARFBUZZ_LIBS']
|
||||
+
|
||||
if CONFIG['MOZ_SYSTEM_HUNSPELL']:
|
||||
OS_LIBS += CONFIG['MOZ_HUNSPELL_LIBS']
|
||||
|
||||
diff --git toolkit/moz.configure toolkit/moz.configure
|
||||
index 9297e4d6f501..d8e273887e4b 100644
|
||||
--- toolkit/moz.configure
|
||||
+++ toolkit/moz.configure
|
||||
@@ -1065,6 +1065,26 @@ add_old_configure_assignment('FT2_LIBS',
|
||||
add_old_configure_assignment('FT2_CFLAGS',
|
||||
ft2_info.cflags)
|
||||
|
||||
+# Graphite2
|
||||
+# ==============================================================
|
||||
+option('--with-system-graphite2',
|
||||
+ help="Use system graphite2 (located with pkgconfig)")
|
||||
+
|
||||
+system_graphite2 = pkg_check_modules('MOZ_GRAPHITE2', 'graphite2',
|
||||
+ when='--with-system-graphite2')
|
||||
+
|
||||
+set_config('MOZ_SYSTEM_GRAPHITE2', depends_if(system_graphite2)(lambda _: True))
|
||||
+
|
||||
+# HarfBuzz
|
||||
+# ==============================================================
|
||||
+option('--with-system-harfbuzz',
|
||||
+ help="Use system harfbuzz (located with pkgconfig)")
|
||||
+
|
||||
+system_harfbuzz = pkg_check_modules('MOZ_HARFBUZZ', 'harfbuzz >= 1.7.4',
|
||||
+ when='--with-system-harfbuzz')
|
||||
+
|
||||
+set_config('MOZ_SYSTEM_HARFBUZZ', depends_if(system_harfbuzz)(lambda _: True))
|
||||
+
|
||||
# Mortar
|
||||
# ==============================================================
|
||||
option('--enable-mortar', help='Enable mortar extension')
|
17
www/firefox-esr/files/patch-bug991253
Normal file
17
www/firefox-esr/files/patch-bug991253
Normal file
@ -0,0 +1,17 @@
|
||||
--- extensions/spellcheck/hunspell/glue/mozHunspell.cpp~
|
||||
+++ extensions/spellcheck/hunspell/glue/mozHunspell.cpp
|
||||
@@ -392,6 +392,14 @@ mozHunspell::LoadDictionaryList(bool aNo
|
||||
}
|
||||
}
|
||||
|
||||
+ // load system hunspell dictionaries
|
||||
+ nsCOMPtr<nsIFile> hunDir;
|
||||
+ NS_NewNativeLocalFile(NS_LITERAL_CSTRING("%%LOCALBASE%%/share/hunspell"),
|
||||
+ true, getter_AddRefs(hunDir));
|
||||
+ if (hunDir) {
|
||||
+ LoadDictionariesFromDir(hunDir);
|
||||
+ }
|
||||
+
|
||||
// find dictionaries from extensions requiring restart
|
||||
nsCOMPtr<nsISimpleEnumerator> dictDirs;
|
||||
rv = dirSvc->Get(DICTIONARY_SEARCH_DIRECTORY_LIST,
|
11
www/firefox-esr/files/patch-build-pgo-profileserver.py
Normal file
11
www/firefox-esr/files/patch-build-pgo-profileserver.py
Normal file
@ -0,0 +1,11 @@
|
||||
--- build/pgo/profileserver.py.orig 2017-09-15 04:15:39 UTC
|
||||
+++ build/pgo/profileserver.py
|
||||
@@ -87,7 +87,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"),
|
25
www/firefox-esr/files/patch-dom_media_flac_FlacDecoder.cpp
Normal file
25
www/firefox-esr/files/patch-dom_media_flac_FlacDecoder.cpp
Normal file
@ -0,0 +1,25 @@
|
||||
Enable FLAC on platforms without ffvpx like powerpc*
|
||||
|
||||
diff --git dom/media/flac/FlacDecoder.cpp dom/media/flac/FlacDecoder.cpp
|
||||
index 53fc3c9937f7..b23771ab80fa 100644
|
||||
--- dom/media/flac/FlacDecoder.cpp
|
||||
+++ dom/media/flac/FlacDecoder.cpp
|
||||
@@ -7,6 +7,7 @@
|
||||
#include "FlacDecoder.h"
|
||||
#include "MediaContainerType.h"
|
||||
#include "MediaPrefs.h"
|
||||
+#include "PDMFactory.h"
|
||||
|
||||
namespace mozilla {
|
||||
|
||||
@@ -15,6 +16,10 @@ FlacDecoder::IsEnabled()
|
||||
{
|
||||
#ifdef MOZ_FFVPX
|
||||
return MediaPrefs::FlacEnabled();
|
||||
+#elif defined(MOZ_FFMPEG)
|
||||
+ RefPtr<PDMFactory> platform = new PDMFactory();
|
||||
+ return MediaPrefs::FlacEnabled() && platform->SupportsMimeType(NS_LITERAL_CSTRING("audio/flac"),
|
||||
+ /* DecoderDoctorDiagnostics* */ nullptr);
|
||||
#else
|
||||
// Until bug 1295886 is fixed.
|
||||
return false;
|
21
www/firefox-esr/files/patch-env-api-keys
Normal file
21
www/firefox-esr/files/patch-env-api-keys
Normal file
@ -0,0 +1,21 @@
|
||||
# Accept API keys from environment like before bug 1294585
|
||||
|
||||
--- build/moz.configure/keyfiles.configure
|
||||
+++ build/moz.configure/keyfiles.configure
|
||||
@@ -18,6 +18,7 @@ def keyfile(desc, help=None, callback=lambda x: x):
|
||||
@checking('for the %s key' % desc, lambda x: x and x is not no_key)
|
||||
@imports(_from='__builtin__', _import='open')
|
||||
@imports(_from='__builtin__', _import='IOError')
|
||||
+ @imports(_from='os', _import='environ')
|
||||
def keyfile(value):
|
||||
if value:
|
||||
try:
|
||||
@@ -28,7 +29,7 @@ def keyfile(desc, help=None, callback=lambda x: x):
|
||||
raise FatalCheckError("'%s' is empty." % value[0])
|
||||
except IOError as e:
|
||||
raise FatalCheckError("'%s': %s." % (value[0], e.strerror))
|
||||
- return no_key
|
||||
+ return environ.get('MOZ_%s_KEY' % desc.upper().replace(' ', '_')) or no_key
|
||||
|
||||
return keyfile
|
||||
|
383
www/firefox-esr/files/patch-ijg-libjpeg
Normal file
383
www/firefox-esr/files/patch-ijg-libjpeg
Normal file
@ -0,0 +1,383 @@
|
||||
# Partially revert bug 791305 to allow building with system IJG jpeg library
|
||||
|
||||
diff --git old-configure.in configure.in
|
||||
index f0aeb5d..1c01010 100644
|
||||
--- old-configure.in
|
||||
+++ old-configure.in
|
||||
@@ -4027,11 +4027,7 @@ if test "$MOZ_SYSTEM_JPEG" = 1; then
|
||||
#include <jpeglib.h> ],
|
||||
[ #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_SYSTEM_JPEG=1,
|
||||
AC_MSG_ERROR([Insufficient JPEG library version for --with-system-jpeg]))
|
||||
fi
|
||||
diff --git image/decoders/nsJPEGDecoder.cpp image/decoders/nsJPEGDecoder.cpp
|
||||
index 8fa8200..1d2a259 100644
|
||||
--- image/decoders/nsJPEGDecoder.cpp
|
||||
+++ image/decoders/nsJPEGDecoder.cpp
|
||||
@@ -21,13 +21,28 @@
|
||||
|
||||
extern "C" {
|
||||
#include "iccjpeg.h"
|
||||
-}
|
||||
|
||||
+#ifdef JCS_EXTENSIONS
|
||||
#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:
|
||||
@@ -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.
|
16
www/firefox-esr/files/patch-ipc_glue_MessageChannel.cpp
Normal file
16
www/firefox-esr/files/patch-ipc_glue_MessageChannel.cpp
Normal file
@ -0,0 +1,16 @@
|
||||
To be removed after FreeBSD 10.* EOL
|
||||
|
||||
--- ipc/glue/MessageChannel.cpp.orig 2017-11-02 16:16:32 UTC
|
||||
+++ ipc/glue/MessageChannel.cpp
|
||||
@@ -685,6 +685,11 @@ MessageChannel::WillDestroyCurrentMessageLoop()
|
||||
mWorkerLoop = nullptr;
|
||||
}
|
||||
|
||||
+#if defined(_LIBCPP_VERSION) && _LIBCPP_VERSION < 4000
|
||||
+// Work around UB in __tree crashing mPendingPromises.clear()
|
||||
+// http://llvm.org/viewvc/llvm-project?view=revision&revision=276003
|
||||
+[[clang::optnone]]
|
||||
+#endif
|
||||
void
|
||||
MessageChannel::Clear()
|
||||
{
|
13
www/firefox-esr/files/patch-sample-type
Normal file
13
www/firefox-esr/files/patch-sample-type
Normal file
@ -0,0 +1,13 @@
|
||||
# Let ports handle default sample type
|
||||
|
||||
--- old-configure.in~
|
||||
+++ old-configure.in
|
||||
@@ -5144,7 +5144,7 @@ dnl Use integers over floats for audio o
|
||||
dnl (regarless of the CPU architecture, because audio
|
||||
dnl backends for those platforms don't support floats. We also
|
||||
dnl use integers on ARM with other OS, because it's more efficient.
|
||||
-if test "$OS_TARGET" = "Android" -o "$CPU_ARCH" = "arm"; then
|
||||
+if test -n "$MOZ_INTEGER_SAMPLES"; then
|
||||
MOZ_SAMPLE_TYPE_S16=1
|
||||
AC_DEFINE(MOZ_SAMPLE_TYPE_S16)
|
||||
AC_SUBST(MOZ_SAMPLE_TYPE_S16)
|
15
www/firefox-esr/files/patch-toolkit_moz.configure
Normal file
15
www/firefox-esr/files/patch-toolkit_moz.configure
Normal file
@ -0,0 +1,15 @@
|
||||
diff --git toolkit/moz.configure toolkit/moz.configure
|
||||
index 1befea00c485..7999b7acd5bd 100644
|
||||
--- toolkit/moz.configure
|
||||
+++ toolkit/moz.configure
|
||||
@@ -842,8 +842,8 @@ def webrender(value, milestone):
|
||||
enable_webrender = None
|
||||
|
||||
if value.origin == 'default':
|
||||
- # if nothing is specified, default to just building on Nightly
|
||||
- build_webrender = milestone.is_nightly
|
||||
+ # build by default downstream
|
||||
+ build_webrender = True
|
||||
elif len(value) and value[0] == 'build':
|
||||
# if explicitly set to 'build', then we build but don't enable
|
||||
build_webrender = True
|
31339
www/firefox-esr/files/patch-u2f-hid-rs62
Normal file
31339
www/firefox-esr/files/patch-u2f-hid-rs62
Normal file
File diff suppressed because it is too large
Load Diff
1163
www/firefox-esr/files/patch-z-bug1436911
Normal file
1163
www/firefox-esr/files/patch-z-bug1436911
Normal file
File diff suppressed because it is too large
Load Diff
496
www/firefox-esr/files/patch-z-bug517422
Normal file
496
www/firefox-esr/files/patch-z-bug517422
Normal file
@ -0,0 +1,496 @@
|
||||
# Allow more config/external/ libs built against system-wide version.
|
||||
|
||||
diff --git build/moz.configure/old.configure build/moz.configure/old.configure
|
||||
index d0fe7accffe6..c46bdd023225 100644
|
||||
--- build/moz.configure/old.configure
|
||||
+++ build/moz.configure/old.configure
|
||||
@@ -285,7 +285,12 @@ def old_configure_options(*options):
|
||||
'--with-system-libvpx',
|
||||
'--with-system-nspr',
|
||||
'--with-system-nss',
|
||||
+ '--with-system-ogg',
|
||||
'--with-system-png',
|
||||
+ '--with-system-soundtouch',
|
||||
+ '--with-system-theora',
|
||||
+ '--with-system-tremor',
|
||||
+ '--with-system-vorbis',
|
||||
'--with-system-zlib',
|
||||
'--with-thumb',
|
||||
'--with-thumb-interwork',
|
||||
diff --git config/external/moz.build config/external/moz.build
|
||||
index 029ff8504795..2c3a40caa1ba 100644
|
||||
--- config/external/moz.build
|
||||
+++ config/external/moz.build
|
||||
@@ -23,12 +23,21 @@ external_dirs += ['modules/woff2']
|
||||
|
||||
external_dirs += ['modules/xz-embedded']
|
||||
|
||||
-if CONFIG['MOZ_VORBIS']:
|
||||
+if not CONFIG['MOZ_SYSTEM_OGG']:
|
||||
+ external_dirs += ['media/libogg']
|
||||
+
|
||||
+if CONFIG['MOZ_VORBIS'] and not CONFIG['MOZ_SYSTEM_VORBIS']:
|
||||
external_dirs += ['media/libvorbis']
|
||||
|
||||
-if CONFIG['MOZ_TREMOR']:
|
||||
+if CONFIG['MOZ_TREMOR'] and not CONFIG['MOZ_SYSTEM_TREMOR']:
|
||||
external_dirs += ['media/libtremor']
|
||||
|
||||
+if not CONFIG['MOZ_SYSTEM_THEORA']:
|
||||
+ external_dirs += ['media/libtheora']
|
||||
+
|
||||
+if not CONFIG['MOZ_SYSTEM_SOUNDTOUCH']:
|
||||
+ external_dirs += ['media/libsoundtouch']
|
||||
+
|
||||
if CONFIG['MOZ_WEBM_ENCODER']:
|
||||
external_dirs += ['media/libmkv']
|
||||
|
||||
@@ -51,11 +60,8 @@ external_dirs += [
|
||||
'media/kiss_fft',
|
||||
'media/libcubeb',
|
||||
'media/libnestegg',
|
||||
- 'media/libogg',
|
||||
'media/libopus',
|
||||
- 'media/libtheora',
|
||||
'media/libspeex_resampler',
|
||||
- 'media/libsoundtouch',
|
||||
'media/mp4parse-rust',
|
||||
'media/psshparser'
|
||||
]
|
||||
diff --git config/system-headers.mozbuild config/system-headers.mozbuild
|
||||
index 09d3db5ca8c0..c6533b84c470 100644
|
||||
--- config/system-headers.mozbuild
|
||||
+++ config/system-headers.mozbuild
|
||||
@@ -1325,6 +1325,28 @@ if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
'harfbuzz/hb.h',
|
||||
]
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_OGG']:
|
||||
+ system_headers += [
|
||||
+ 'ogg/ogg.h',
|
||||
+ 'ogg/os_types.h',
|
||||
+ ]
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_THEORA']:
|
||||
+ system_headers += [
|
||||
+ 'theora/theoradec.h',
|
||||
+ ]
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_VORBIS']:
|
||||
+ system_headers += [
|
||||
+ 'vorbis/codec.h',
|
||||
+ 'vorbis/vorbisenc.h',
|
||||
+ ]
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_TREMOR']:
|
||||
+ system_headers += [
|
||||
+ 'tremor/ivorbiscodec.h',
|
||||
+ ]
|
||||
+
|
||||
if CONFIG['MOZ_SYSTEM_LIBVPX']:
|
||||
system_headers += [
|
||||
'vpx_mem/vpx_mem.h',
|
||||
diff --git dom/media/AudioStream.cpp dom/media/AudioStream.cpp
|
||||
index 93ecda4319af..ff674c64ea07 100644
|
||||
--- dom/media/AudioStream.cpp
|
||||
+++ dom/media/AudioStream.cpp
|
||||
@@ -121,7 +121,9 @@ AudioStream::AudioStream(DataSource& aSource)
|
||||
: mMonitor("AudioStream")
|
||||
, mChannels(0)
|
||||
, mOutChannels(0)
|
||||
+#ifndef MOZ_SYSTEM_SOUNDTOUCH
|
||||
, mTimeStretcher(nullptr)
|
||||
+#endif
|
||||
, mDumpFile(nullptr)
|
||||
, mState(INITIALIZED)
|
||||
, mDataSource(aSource)
|
||||
@@ -142,9 +144,11 @@ AudioStream::~AudioStream()
|
||||
if (mDumpFile) {
|
||||
fclose(mDumpFile);
|
||||
}
|
||||
+#ifndef MOZ_SYSTEM_SOUNDTOUCH
|
||||
if (mTimeStretcher) {
|
||||
soundtouch::destroySoundTouchObj(mTimeStretcher);
|
||||
}
|
||||
+#endif
|
||||
#if defined(XP_WIN)
|
||||
if (XRE_IsContentProcess()) {
|
||||
audio::AudioNotificationReceiver::Unregister(this);
|
||||
@@ -168,7 +172,11 @@ nsresult AudioStream::EnsureTimeStretcherInitializedUnlocked()
|
||||
{
|
||||
mMonitor.AssertCurrentThreadOwns();
|
||||
if (!mTimeStretcher) {
|
||||
+#ifdef MOZ_SYSTEM_SOUNDTOUCH
|
||||
+ mTimeStretcher = new soundtouch::SoundTouch();
|
||||
+#else
|
||||
mTimeStretcher = soundtouch::createSoundTouchObj();
|
||||
+#endif
|
||||
mTimeStretcher->setSampleRate(mAudioClock.GetInputRate());
|
||||
mTimeStretcher->setChannels(mOutChannels);
|
||||
mTimeStretcher->setPitch(1.0);
|
||||
diff --git dom/media/AudioStream.h dom/media/AudioStream.h
|
||||
index 7dc1f60f95cc..67d402a4117f 100644
|
||||
--- dom/media/AudioStream.h
|
||||
+++ dom/media/AudioStream.h
|
||||
@@ -15,7 +15,11 @@
|
||||
#include "mozilla/TimeStamp.h"
|
||||
#include "mozilla/UniquePtr.h"
|
||||
#include "CubebUtils.h"
|
||||
+#ifdef MOZ_SYSTEM_SOUNDTOUCH
|
||||
+#include "soundtouch/SoundTouch.h"
|
||||
+#else
|
||||
#include "soundtouch/SoundTouchFactory.h"
|
||||
+#endif
|
||||
|
||||
#if defined(XP_WIN)
|
||||
#include "mozilla/audio/AudioNotificationReceiver.h"
|
||||
@@ -297,7 +301,11 @@ private:
|
||||
uint32_t mChannels;
|
||||
uint32_t mOutChannels;
|
||||
AudioClock mAudioClock;
|
||||
+#ifdef MOZ_SYSTEM_SOUNDTOUCH
|
||||
+ nsAutoPtr<soundtouch::SoundTouch> mTimeStretcher;
|
||||
+#else
|
||||
soundtouch::SoundTouch* mTimeStretcher;
|
||||
+#endif
|
||||
|
||||
// Output file for dumping audio
|
||||
FILE* mDumpFile;
|
||||
diff --git dom/media/moz.build dom/media/moz.build
|
||||
index 86b051c58d33..fb6186dce78b 100644
|
||||
--- dom/media/moz.build
|
||||
+++ dom/media/moz.build
|
||||
@@ -326,6 +326,21 @@ if CONFIG['MOZ_WEBRTC']:
|
||||
|
||||
DEFINES['MOZILLA_INTERNAL_API'] = True
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_OGG']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_OGG_CFLAGS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_THEORA']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_THEORA_CFLAGS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_VORBIS']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_VORBIS_CFLAGS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_TREMOR']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_TREMOR_CFLAGS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_SOUNDTOUCH']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_SOUNDTOUCH_CFLAGS']
|
||||
+
|
||||
if CONFIG['MOZ_ANDROID_HLS_SUPPORT']:
|
||||
DEFINES['MOZ_ANDROID_HLS_SUPPORT'] = True
|
||||
|
||||
diff --git dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp
|
||||
index 078f6ea5ef60..c600db067539 100644
|
||||
--- dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp
|
||||
+++ dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp
|
||||
@@ -15,9 +15,13 @@
|
||||
#include <windows.h>
|
||||
#endif
|
||||
|
||||
+#ifdef MOZ_SYSTEM_SOUNDTOUCH
|
||||
+#include "nsXPCOMPrivate.h" // for XUL_DLL
|
||||
+#else
|
||||
// We use a known symbol located in lgpllibs to determine its location.
|
||||
// soundtouch happens to be always included in lgpllibs
|
||||
#include "soundtouch/SoundTouch.h"
|
||||
+#endif
|
||||
|
||||
namespace mozilla {
|
||||
|
||||
@@ -64,6 +68,12 @@ FFVPXRuntimeLinker::Init()
|
||||
|
||||
sLinkStatus = LinkStatus_FAILED;
|
||||
|
||||
+#ifdef MOZ_SYSTEM_SOUNDTOUCH
|
||||
+ // We retrieve the path of the XUL library as this is where mozavcodec and
|
||||
+ // mozavutil libs are located.
|
||||
+ char* path =
|
||||
+ PR_GetLibraryFilePathname(XUL_DLL, (PRFuncPtr)&FFVPXRuntimeLinker::Init);
|
||||
+#else
|
||||
// We retrieve the path of the lgpllibs library as this is where mozavcodec
|
||||
// and mozavutil libs are located.
|
||||
PathString lgpllibsname = GetLibraryName(nullptr, "lgpllibs");
|
||||
@@ -73,6 +83,7 @@ FFVPXRuntimeLinker::Init()
|
||||
PathString path =
|
||||
GetLibraryFilePathname(lgpllibsname.get(),
|
||||
(PRFuncPtr)&soundtouch::SoundTouch::getVersionId);
|
||||
+#endif
|
||||
if (path.IsEmpty()) {
|
||||
return false;
|
||||
}
|
||||
diff --git media/libogg/README_MOZILLA media/libogg/README_MOZILLA
|
||||
index 6213fdc7770c..ada799916a17 100644
|
||||
--- media/libogg/README_MOZILLA
|
||||
+++ media/libogg/README_MOZILLA
|
||||
@@ -6,3 +6,6 @@ package downloaded from xiph.org and copied using the update.sh script.
|
||||
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 old-configure.in in sync on updates.
|
||||
diff --git media/libsoundtouch/README_MOZILLA media/libsoundtouch/README_MOZILLA
|
||||
index dc0dbe8f6886..ea73b55e3e39 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 old-configure.in in sync on updates.
|
||||
diff --git media/libsoundtouch/src/soundtouch_perms.h media/libsoundtouch/src/soundtouch_perms.h
|
||||
index 0af2fe618311..10973564e7a4 100644
|
||||
--- media/libsoundtouch/src/soundtouch_perms.h
|
||||
+++ media/libsoundtouch/src/soundtouch_perms.h
|
||||
@@ -12,7 +12,9 @@
|
||||
|
||||
#pragma GCC visibility push(default)
|
||||
#include "SoundTouch.h"
|
||||
+#ifndef MOZ_SYSTEM_SOUNDTOUCH
|
||||
#include "SoundTouchFactory.h"
|
||||
+#endif
|
||||
#pragma GCC visibility pop
|
||||
|
||||
#endif // MOZILLA_SOUNDTOUCH_PERMS_H
|
||||
diff --git media/libtheora/README_MOZILLA media/libtheora/README_MOZILLA
|
||||
index d48dbfa6f63d..6f30f250220e 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 old-configure.in in sync on updates.
|
||||
diff --git media/libtheora/moz.build media/libtheora/moz.build
|
||||
index c7f85eebff95..aae7b814adb5 100644
|
||||
--- media/libtheora/moz.build
|
||||
+++ media/libtheora/moz.build
|
||||
@@ -21,6 +21,9 @@ FINAL_LIBRARY = 'gkmedias'
|
||||
# The encoder is currently not included.
|
||||
DEFINES['THEORA_DISABLE_ENCODE'] = True
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_OGG']:
|
||||
+ CFLAGS += CONFIG['MOZ_OGG_CFLAGS']
|
||||
+
|
||||
# Suppress warnings in third-party code.
|
||||
if CONFIG['CC_TYPE'] in ('clang', 'clang-cl', 'gcc'):
|
||||
CFLAGS += ['-Wno-type-limits']
|
||||
diff --git media/libtremor/README_MOZILLA media/libtremor/README_MOZILLA
|
||||
index ee67b53a05c5..81c971773d55 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 old-configure.in in sync on updates.
|
||||
diff --git media/libtremor/moz.build media/libtremor/moz.build
|
||||
index 83afc8e37c64..71ef159da3d7 100644
|
||||
--- media/libtremor/moz.build
|
||||
+++ media/libtremor/moz.build
|
||||
@@ -9,3 +9,5 @@ with Files('*'):
|
||||
|
||||
DIRS += ['include/tremor', 'lib']
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_OGG']:
|
||||
+ CFLAGS += CONFIG['MOZ_OGG_CFLAGS']
|
||||
diff --git media/libvorbis/README_MOZILLA media/libvorbis/README_MOZILLA
|
||||
index 1211ac074b33..eb31084aed25 100644
|
||||
--- media/libvorbis/README_MOZILLA
|
||||
+++ media/libvorbis/README_MOZILLA
|
||||
@@ -8,3 +8,6 @@ from https://git.xiph.org/vorbis.git
|
||||
|
||||
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 old-configure.in in sync on updates.
|
||||
diff --git media/libvorbis/moz.build media/libvorbis/moz.build
|
||||
index adf393782cc9..923b76231107 100644
|
||||
--- media/libvorbis/moz.build
|
||||
+++ media/libvorbis/moz.build
|
||||
@@ -56,3 +56,6 @@ FINAL_LIBRARY = 'gkmedias'
|
||||
# Suppress warnings in third-party code.
|
||||
if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
|
||||
CFLAGS += ['-Wno-uninitialized']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_OGG']:
|
||||
+ CFLAGS += CONFIG['MOZ_OGG_CFLAGS']
|
||||
diff --git old-configure.in old-configure.in
|
||||
index b614eef85c89..85f9099dba4d 100644
|
||||
--- old-configure.in
|
||||
+++ old-configure.in
|
||||
@@ -2627,6 +2627,111 @@ if test -n "$MOZ_APPLEMEDIA"; then
|
||||
fi
|
||||
fi # COMPILE_ENVIRONMENT
|
||||
|
||||
+dnl ========================================================
|
||||
+dnl Check for libogg
|
||||
+dnl ========================================================
|
||||
+
|
||||
+MOZ_ARG_WITH_BOOL(system-ogg,
|
||||
+[ --with-system-ogg Use system libogg (located with pkgconfig)],
|
||||
+MOZ_SYSTEM_OGG=1,
|
||||
+MOZ_SYSTEM_OGG=)
|
||||
+
|
||||
+if test -n "$MOZ_SYSTEM_OGG"; then
|
||||
+ PKG_CHECK_MODULES(MOZ_OGG, ogg >= 1.3.3)
|
||||
+
|
||||
+ _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_SYSTEM_OGG)
|
||||
+
|
||||
+dnl ========================================================
|
||||
+dnl Check for libvorbis
|
||||
+dnl ========================================================
|
||||
+
|
||||
+MOZ_ARG_WITH_BOOL(system-vorbis,
|
||||
+[ --with-system-vorbis Use system libvorbis (located with pkgconfig)],
|
||||
+MOZ_SYSTEM_VORBIS=1,
|
||||
+MOZ_SYSTEM_VORBIS=)
|
||||
+
|
||||
+if test -n "$MOZ_SYSTEM_VORBIS"; then
|
||||
+ PKG_CHECK_MODULES(MOZ_VORBIS, vorbis vorbisenc >= 1.3.6)
|
||||
+fi
|
||||
+
|
||||
+AC_SUBST(MOZ_SYSTEM_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_SYSTEM_TREMOR=1,
|
||||
+MOZ_SYSTEM_TREMOR=)
|
||||
+
|
||||
+if test -n "$MOZ_SYSTEM_TREMOR"; then
|
||||
+ PKG_CHECK_MODULES(MOZ_TREMOR, vorbisidec >= 1.2.1)
|
||||
+fi
|
||||
+
|
||||
+AC_SUBST(MOZ_SYSTEM_TREMOR)
|
||||
+
|
||||
+dnl ========================================================
|
||||
+dnl Check for libtheora
|
||||
+dnl ========================================================
|
||||
+
|
||||
+MOZ_ARG_WITH_BOOL(system-theora,
|
||||
+[ --with-system-theora Use system libtheora (located with pkgconfig)],
|
||||
+MOZ_SYSTEM_THEORA=1,
|
||||
+MOZ_SYSTEM_THEORA=)
|
||||
+
|
||||
+if test -n "$MOZ_SYSTEM_THEORA"; then
|
||||
+ PKG_CHECK_MODULES(MOZ_THEORA, theora >= 1.2)
|
||||
+fi
|
||||
+
|
||||
+AC_SUBST(MOZ_SYSTEM_THEORA)
|
||||
+
|
||||
+dnl ========================================================
|
||||
+dnl Check for libSoundTouch
|
||||
+dnl ========================================================
|
||||
+
|
||||
+MOZ_ARG_WITH_BOOL(system-soundtouch,
|
||||
+[ --with-system-soundtouch Use system libSoundTouch (located with pkgconfig)],
|
||||
+MOZ_SYSTEM_SOUNDTOUCH=1,
|
||||
+MOZ_SYSTEM_SOUNDTOUCH=)
|
||||
+
|
||||
+if test -n "$MOZ_SYSTEM_SOUNDTOUCH"; then
|
||||
+ PKG_CHECK_MODULES(MOZ_SOUNDTOUCH, soundtouch >= 1.9.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 <SoundTouch.h>
|
||||
+ #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
|
||||
+
|
||||
+if test -n "$MOZ_SYSTEM_SOUNDTOUCH"; then
|
||||
+ AC_DEFINE(MOZ_SYSTEM_SOUNDTOUCH)
|
||||
+fi
|
||||
+AC_SUBST(MOZ_SYSTEM_SOUNDTOUCH)
|
||||
+
|
||||
dnl system libvpx Support
|
||||
dnl ========================================================
|
||||
MOZ_ARG_WITH_BOOL(system-libvpx,
|
||||
diff --git toolkit/library/moz.build toolkit/library/moz.build
|
||||
index 079a575adec3..514d901195de 100644
|
||||
--- toolkit/library/moz.build
|
||||
+++ toolkit/library/moz.build
|
||||
@@ -240,6 +240,21 @@ if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
if CONFIG['MOZ_SYSTEM_HUNSPELL']:
|
||||
OS_LIBS += CONFIG['MOZ_HUNSPELL_LIBS']
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_OGG']:
|
||||
+ OS_LIBS += CONFIG['MOZ_OGG_LIBS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_THEORA']:
|
||||
+ OS_LIBS += CONFIG['MOZ_THEORA_LIBS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_VORBIS']:
|
||||
+ OS_LIBS += CONFIG['MOZ_VORBIS_LIBS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_TREMOR']:
|
||||
+ OS_LIBS += CONFIG['MOZ_TREMOR_LIBS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_SOUNDTOUCH']:
|
||||
+ OS_LIBS += CONFIG['MOZ_SOUNDTOUCH_LIBS']
|
||||
+
|
||||
if CONFIG['MOZ_SYSTEM_LIBEVENT']:
|
||||
OS_LIBS += CONFIG['MOZ_LIBEVENT_LIBS']
|
||||
|
||||
diff --git xpcom/build/XPCOMInit.cpp xpcom/build/XPCOMInit.cpp
|
||||
index c083ab4bc4f3..62b917043a2c 100644
|
||||
--- xpcom/build/XPCOMInit.cpp
|
||||
+++ xpcom/build/XPCOMInit.cpp
|
||||
@@ -132,7 +132,9 @@ extern nsresult nsStringInputStreamConstructor(nsISupports*, REFNSIID, void**);
|
||||
|
||||
#include "mozilla/ipc/GeckoChildProcessHost.h"
|
||||
|
||||
+#ifndef MOZ_OGG_NO_MEM_REPORTING
|
||||
#include "ogg/ogg.h"
|
||||
+#endif
|
||||
#if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING)
|
||||
#if defined(HAVE_STDINT_H)
|
||||
// mozilla-config.h defines HAVE_STDINT_H, and then it's defined *again* in
|
||||
@@ -639,11 +641,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.
|
13
www/firefox-esr/pkg-descr
Normal file
13
www/firefox-esr/pkg-descr
Normal file
@ -0,0 +1,13 @@
|
||||
Mozilla Firefox is a free and open source web browser descended from the
|
||||
Mozilla Application Suite. It is small, fast and easy to use, and offers
|
||||
many advanced features:
|
||||
|
||||
o Popup Blocking
|
||||
o Tabbed Browsing
|
||||
o Live Bookmarks (ie. RSS)
|
||||
o Extensions
|
||||
o Themes
|
||||
o FastFind
|
||||
o Improved Security
|
||||
|
||||
WWW: http://www.mozilla.com/firefox
|
34
www/firefox-esr/pkg-message
Normal file
34
www/firefox-esr/pkg-message
Normal file
@ -0,0 +1,34 @@
|
||||
======================================================================
|
||||
|
||||
Some features available on other platforms are not implemented:
|
||||
- Native audio (OSS backend is incomplete, doesn't support WebRTC)
|
||||
- Encrypted Media Extensions (requires Widevine CDM binary)
|
||||
- Process sandboxing (requires Capsicum backend)
|
||||
- Reduced memory usage (requires mozjemalloc)
|
||||
- Performance profiling (requires GeckoProfiler)
|
||||
- Gamepad API (requires libusbhid backend)
|
||||
- WebVR (requires open source runtime)
|
||||
- TCP fast open
|
||||
|
||||
======================================================================
|
||||
|
||||
To select non-default audio backend open about:config page and create
|
||||
media.cubeb.backend preference. Supported values are: alsa, jack,
|
||||
pulse, pulse-rust, oss, sndio. Currently used backend can be inspected
|
||||
on about:support page.
|
||||
|
||||
======================================================================
|
||||
|
||||
smb:// issues (Gvfs/GIO option):
|
||||
Network group, machine, and share browsing does not work correctly.
|
||||
|
||||
sftp:// (Gvfs/GIO option):
|
||||
Only sftp access using public key authentication works. To easily
|
||||
setup public key authentication to "remote_host":
|
||||
|
||||
ssh-keygen
|
||||
cat ~/.ssh/id_rsa.pub | ssh remote_host "cat >> .ssh/authorized_keys"
|
||||
|
||||
The SSH server on remote_host must allow pub key authentication.
|
||||
|
||||
======================================================================
|
Loading…
Reference in New Issue
Block a user