@@ -, +, @@ --- Mk/Uses/gecko.mk | 4 +- Mk/bsd.gecko.mk | 10 +- www/firefox-i18n/Makefile | 4 +- www/firefox-i18n/distinfo | 358 ++++++++++++++++++------------------ www/firefox/Makefile | 12 +- www/firefox/distinfo | 6 +- www/firefox/files/patch-bug1338655 | 66 ------- www/firefox/files/patch-bug1359051 | 31 ---- www/firefox/files/patch-bug1359142 | 57 ------ www/firefox/files/patch-bug847568 | 20 +- www/firefox/files/patch-rust-option | 345 ++++++++++++++++++++++++++++++++++ 11 files changed, 554 insertions(+), 359 deletions(-) delete mode 100644 www/firefox/files/patch-bug1338655 delete mode 100644 www/firefox/files/patch-bug1359051 delete mode 100644 www/firefox/files/patch-bug1359142 create mode 100644 www/firefox/files/patch-rust-option --- b/Mk/Uses/gecko.mk +++ b/Mk/Uses/gecko.mk @@ -37,12 +37,12 @@ RUN_DEPENDS+= libxul>=45:www/libxul .elif ${gecko_ARGS:Mfirefox} _GECKO_DEFAULT_VERSION= 52 -_GECKO_VERSIONS= 52 53 +_GECKO_VERSIONS= 52 54 _GECKO_TYPE= firefox # Dependence lines for different Firefox versions 52_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox-esr -53_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox +54_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox .if exists(${LOCALBASE}/bin/firefox) _GECKO_INSTALLED_VER!= ${LOCALBASE}/bin/firefox --version 2>/dev/null --- b/Mk/bsd.gecko.mk +++ b/Mk/bsd.gecko.mk @@ -139,6 +139,7 @@ MOZ_MK_OPTIONS+=MOZ_OBJDIR="${MOZ_OBJDIR}" LDFLAGS+= -Wl,--as-needed +. if ${MOZILLA_VER:R:R} < 55 .if ${OPSYS} != DragonFly # XXX xpcshell crash during install # use jemalloc 3.0.0 (4.0 for firefox 43+) API for stats/tuning MOZ_EXPORT+= MOZ_JEMALLOC3=1 MOZ_JEMALLOC4=1 @@ -150,6 +151,7 @@ MOZ_OPTIONS+= --enable-jemalloc . endif .endif .endif # !DragonFly +.endif # Mozilla < 55 # Standard depends _ALL_DEPENDS= cairo event ffi graphite harfbuzz hunspell icu jpeg nspr nss png pixman soundtouch sqlite vpx @@ -328,12 +330,14 @@ MOZ_OPTIONS+= --enable-gconf MOZ_OPTIONS+= --disable-gconf .endif -.if ${PORT_OPTIONS:MGNOMEUI} +.if ${MOZILLA_VER:R:R} < 55 +. if ${PORT_OPTIONS:MGNOMEUI} BUILD_DEPENDS+= ${libgnomeui_DETECT}:${libgnomeui_LIB_DEPENDS:C/.*://} USE_GNOME+= libgnomeui:build MOZ_OPTIONS+= --enable-gnomeui -.else +. else MOZ_OPTIONS+= --disable-gnomeui +. endif .endif .if ${PORT_OPTIONS:MLIBPROXY} @@ -389,7 +393,7 @@ post-patch-SNDIO-on: .endif .if ${PORT_OPTIONS:MRUST} -BUILD_DEPENDS+= rustc:${RUST_PORT} +BUILD_DEPENDS+= rust>=1.15.1:${RUST_PORT} . if ${MOZILLA_VER:R:R} >= 51 BUILD_DEPENDS+= cargo>=0.16.0:devel/cargo . endif --- b/www/firefox-i18n/Makefile +++ b/www/firefox-i18n/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= firefox-i18n -PORTVERSION= 53.0.3 +PORTVERSION= 54.0b9 CATEGORIES= www MASTER_SITES= MOZILLA/${PORTNAME:S|-i18n||}/releases/${DISTVERSION}/linux-i686/xpi \ MOZILLA/${PORTNAME:S|-i18n||}/candidates/${DISTVERSION}-candidates/build1/linux-i686/xpi @@ -15,7 +15,7 @@ COMMENT= Localized interface for Firefox EXTRACT_DEPENDS= zip:archivers/zip -USES= zip:infozip gecko:firefox,53,build +USES= zip:infozip gecko:firefox,54,build USE_XPI= firefox NO_ARCH= yes --- b/www/firefox-i18n/distinfo +++ b/www/firefox-i18n/distinfo @@ -1,179 +1,179 @@ -TIMESTAMP = 1495100875 -SHA256 (xpi/firefox-i18n-53.0.3/ach.xpi) = e6a116ee56fda449cdd67585161147cb77dd739667131576d95c0aee94e5ad3a -SIZE (xpi/firefox-i18n-53.0.3/ach.xpi) = 432351 -SHA256 (xpi/firefox-i18n-53.0.3/af.xpi) = 1d0084d8373617e25738a7b3462935369a039d56f82f64527ff0415c3db9e3e7 -SIZE (xpi/firefox-i18n-53.0.3/af.xpi) = 441830 -SHA256 (xpi/firefox-i18n-53.0.3/an.xpi) = b0740572e813b2ba281c190c50e8617dbce274ae16607cdb2f06f42a6c1e49af -SIZE (xpi/firefox-i18n-53.0.3/an.xpi) = 450801 -SHA256 (xpi/firefox-i18n-53.0.3/ar.xpi) = 561d8baac858b8b54d34fec81781645a1faf4b75923095380ce3eede566ee4bb -SIZE (xpi/firefox-i18n-53.0.3/ar.xpi) = 479118 -SHA256 (xpi/firefox-i18n-53.0.3/as.xpi) = fc4f5bfc64ab7bcc0776317ed1a52d5f0c6d612f945bf8ae436a797f745a286b -SIZE (xpi/firefox-i18n-53.0.3/as.xpi) = 491256 -SHA256 (xpi/firefox-i18n-53.0.3/ast.xpi) = cc31c6282534e067e6b09491bd8ce86e84b4c46d5c217a1931f029d9e746ff30 -SIZE (xpi/firefox-i18n-53.0.3/ast.xpi) = 445436 -SHA256 (xpi/firefox-i18n-53.0.3/az.xpi) = 9f55b5cb611c95672e90188ba63a1dfcdeec3c7998688821feb0ac7ef435320a -SIZE (xpi/firefox-i18n-53.0.3/az.xpi) = 459504 -SHA256 (xpi/firefox-i18n-53.0.3/bg.xpi) = 6ae5117b4636b74e6aea42271d109a1f295e3c5f2a1c13d935cccfd8e793df25 -SIZE (xpi/firefox-i18n-53.0.3/bg.xpi) = 492609 -SHA256 (xpi/firefox-i18n-53.0.3/bn-BD.xpi) = bbe8e57e339423e88aef9fab8fd186ab3ccdf5bb3ba3828aec4b53db24feace7 -SIZE (xpi/firefox-i18n-53.0.3/bn-BD.xpi) = 516502 -SHA256 (xpi/firefox-i18n-53.0.3/bn-IN.xpi) = 1bd46b57948be279d93b82f253d749e79919654374998ca814258bb8ecdf36bc -SIZE (xpi/firefox-i18n-53.0.3/bn-IN.xpi) = 513553 -SHA256 (xpi/firefox-i18n-53.0.3/br.xpi) = 231a3bc39f30ca1990deccf7da656958755d2639a97e89396eabd19ffb91d444 -SIZE (xpi/firefox-i18n-53.0.3/br.xpi) = 440068 -SHA256 (xpi/firefox-i18n-53.0.3/bs.xpi) = cf14dd3a7cbae9d247ba8ae43bd8449a758266d768315ac27ecaf790a7775a24 -SIZE (xpi/firefox-i18n-53.0.3/bs.xpi) = 446634 -SHA256 (xpi/firefox-i18n-53.0.3/ca.xpi) = 96c7f00088e2c758071d95c79ec474b9d56ef34c7d11c83b62e069e6d0e15d5e -SIZE (xpi/firefox-i18n-53.0.3/ca.xpi) = 448943 -SHA256 (xpi/firefox-i18n-53.0.3/cs.xpi) = fa3281d69c9f2dac9eda8e96157f2b191641852562fb713dd104c94412112e7f -SIZE (xpi/firefox-i18n-53.0.3/cs.xpi) = 449412 -SHA256 (xpi/firefox-i18n-53.0.3/cy.xpi) = 632866f99885ac791216307f403faffdd36782b59ec4d71e5b80239a3f78782b -SIZE (xpi/firefox-i18n-53.0.3/cy.xpi) = 441505 -SHA256 (xpi/firefox-i18n-53.0.3/da.xpi) = 85c1b80c5a0d4f0b0b991963ddff203624486fbfe51c5012ce656f201449fd1d -SIZE (xpi/firefox-i18n-53.0.3/da.xpi) = 428974 -SHA256 (xpi/firefox-i18n-53.0.3/de.xpi) = 4c8a3bfd1c4fb2975d5a8510a0bf1f15eb1d0bedb583aae05254954ae81c65cc -SIZE (xpi/firefox-i18n-53.0.3/de.xpi) = 447785 -SHA256 (xpi/firefox-i18n-53.0.3/dsb.xpi) = fa0e95bb08506b4978bf57829ab12b030ba995fd49fc6ce6800bad20c1de2b6e -SIZE (xpi/firefox-i18n-53.0.3/dsb.xpi) = 464375 -SHA256 (xpi/firefox-i18n-53.0.3/el.xpi) = a647e41baafbf943051c6632092074f6c753c303698aabfba075ef7e131c5ac7 -SIZE (xpi/firefox-i18n-53.0.3/el.xpi) = 523413 -SHA256 (xpi/firefox-i18n-53.0.3/en-GB.xpi) = f1d6a52496f690a5588f7e7ed6e494ba8dbae32fb11a51a27885d442058fd5dc -SIZE (xpi/firefox-i18n-53.0.3/en-GB.xpi) = 424830 -SHA256 (xpi/firefox-i18n-53.0.3/en-US.xpi) = 193c492ac1473bc3c776d6eb36672eaaa10846882d71222d5bb0ae93eeaec72b -SIZE (xpi/firefox-i18n-53.0.3/en-US.xpi) = 430736 -SHA256 (xpi/firefox-i18n-53.0.3/en-ZA.xpi) = 06fbcdacf39b7230c6ae7f97a6b11d61c649f0db5a48539cf7ac8da194bcfe86 -SIZE (xpi/firefox-i18n-53.0.3/en-ZA.xpi) = 417992 -SHA256 (xpi/firefox-i18n-53.0.3/eo.xpi) = 8d65c14c9946b82f3de6f06ddce3ffca2b8eccf6f8c114c77de5f37fe090c851 -SIZE (xpi/firefox-i18n-53.0.3/eo.xpi) = 442323 -SHA256 (xpi/firefox-i18n-53.0.3/es-AR.xpi) = 1cef38483eab7bad50f814e854fd78b3aae5e94a4fdf886610d0a874c8a3c5c3 -SIZE (xpi/firefox-i18n-53.0.3/es-AR.xpi) = 450768 -SHA256 (xpi/firefox-i18n-53.0.3/es-CL.xpi) = 68f738ae30690751e37d290ff4dc45d6464e659c3c24dd95077e44d5e70af42f -SIZE (xpi/firefox-i18n-53.0.3/es-CL.xpi) = 450477 -SHA256 (xpi/firefox-i18n-53.0.3/es-ES.xpi) = 4b47102f9fc36e651d7501d94e36da372e7e71fd89eed8c13b0b39c64e645a04 -SIZE (xpi/firefox-i18n-53.0.3/es-ES.xpi) = 347589 -SHA256 (xpi/firefox-i18n-53.0.3/es-MX.xpi) = 31992fc3284854d2ecd15c8c05ece2e6912ce8db48a41cab13249604fd0033d9 -SIZE (xpi/firefox-i18n-53.0.3/es-MX.xpi) = 453326 -SHA256 (xpi/firefox-i18n-53.0.3/et.xpi) = c3d9c9f96826712ef327ba273e43bb628e6f1cfb751ff12719d1be659e3c8c7f -SIZE (xpi/firefox-i18n-53.0.3/et.xpi) = 428865 -SHA256 (xpi/firefox-i18n-53.0.3/eu.xpi) = 81481d249ac98833e51b0d847f8fb4091dac80b1ca613303f0067d3b0ae9b677 -SIZE (xpi/firefox-i18n-53.0.3/eu.xpi) = 443204 -SHA256 (xpi/firefox-i18n-53.0.3/fa.xpi) = 88f5a080963cc08d56812683636e8b939c649028822a6c6ff1a2acf7d15254fd -SIZE (xpi/firefox-i18n-53.0.3/fa.xpi) = 496782 -SHA256 (xpi/firefox-i18n-53.0.3/ff.xpi) = 4d335479465769e31ab9d315d1be373da2306b78370a2ca61929f1dce746cd1b -SIZE (xpi/firefox-i18n-53.0.3/ff.xpi) = 446670 -SHA256 (xpi/firefox-i18n-53.0.3/fi.xpi) = 62970f8b0bde16afdb29067887c74ed00bc74d317621335683243a780d30d29d -SIZE (xpi/firefox-i18n-53.0.3/fi.xpi) = 434622 -SHA256 (xpi/firefox-i18n-53.0.3/fr.xpi) = f593570f85f3aed79f99038f93447e41a28f025c5233d75a0b8ca232fcdeec3a -SIZE (xpi/firefox-i18n-53.0.3/fr.xpi) = 457535 -SHA256 (xpi/firefox-i18n-53.0.3/fy-NL.xpi) = dc0e43045727efa78a152ac0398196540cc17e1bd7c450c43a71484131f82701 -SIZE (xpi/firefox-i18n-53.0.3/fy-NL.xpi) = 449823 -SHA256 (xpi/firefox-i18n-53.0.3/ga-IE.xpi) = 04e1a50f8030162244523f92d9cf0ba7a195ba742d292c64b78c88fc983b7584 -SIZE (xpi/firefox-i18n-53.0.3/ga-IE.xpi) = 463130 -SHA256 (xpi/firefox-i18n-53.0.3/gd.xpi) = 0d1890182a95cd2adcba8ed965e0553821d6a9597f577a1197bdcedd855aaad1 -SIZE (xpi/firefox-i18n-53.0.3/gd.xpi) = 452062 -SHA256 (xpi/firefox-i18n-53.0.3/gl.xpi) = acf0716f7f771d73cb21055428128d9498d633fda7763c3db9d427e8ba6e4243 -SIZE (xpi/firefox-i18n-53.0.3/gl.xpi) = 449152 -SHA256 (xpi/firefox-i18n-53.0.3/gn.xpi) = a115f95820f4d653053fec02b1c1400ab957a819722d5a29951aa1407c2024f1 -SIZE (xpi/firefox-i18n-53.0.3/gn.xpi) = 461573 -SHA256 (xpi/firefox-i18n-53.0.3/gu-IN.xpi) = a62119d72e4f8e4b3f00a429ac0028fe6ca53f1294ae2089415ef2050c7f87a6 -SIZE (xpi/firefox-i18n-53.0.3/gu-IN.xpi) = 493672 -SHA256 (xpi/firefox-i18n-53.0.3/he.xpi) = 263d142979b67853d37f60ab29f984b8e14a0609a6dd85da927383d9301e5499 -SIZE (xpi/firefox-i18n-53.0.3/he.xpi) = 460050 -SHA256 (xpi/firefox-i18n-53.0.3/hi-IN.xpi) = 2a450c9aaf941ba8f9c0ec12354529f3dfb47d9de66685066634fd2e5359cfea -SIZE (xpi/firefox-i18n-53.0.3/hi-IN.xpi) = 511788 -SHA256 (xpi/firefox-i18n-53.0.3/hr.xpi) = e931cbf3ace412f860dcc7e0b14d862459f0c54e6f8abffa83825645910f11e7 -SIZE (xpi/firefox-i18n-53.0.3/hr.xpi) = 453110 -SHA256 (xpi/firefox-i18n-53.0.3/hsb.xpi) = 9663469370dc0a6ed450bf4061f0bd491e7766740aafbbc79057534ac319967e -SIZE (xpi/firefox-i18n-53.0.3/hsb.xpi) = 462173 -SHA256 (xpi/firefox-i18n-53.0.3/hu.xpi) = fc28470f937ab701a6262425a01e725d1c12e9fd5045750019608f00434ba93b -SIZE (xpi/firefox-i18n-53.0.3/hu.xpi) = 456925 -SHA256 (xpi/firefox-i18n-53.0.3/hy-AM.xpi) = eec34716ad97a2fe2a1a8449c4f450aef326c2d13b75ec571dacfedae918ee5d -SIZE (xpi/firefox-i18n-53.0.3/hy-AM.xpi) = 500718 -SHA256 (xpi/firefox-i18n-53.0.3/id.xpi) = 25df7f7d38327e8ff8388d9588ebf29423723f76f99b890db8d41c0d6dc6655d -SIZE (xpi/firefox-i18n-53.0.3/id.xpi) = 430281 -SHA256 (xpi/firefox-i18n-53.0.3/is.xpi) = d929734bc994f3b20f7c8cbd4e25d98d9081afd63af81e6fd5318688e6b57eac -SIZE (xpi/firefox-i18n-53.0.3/is.xpi) = 447332 -SHA256 (xpi/firefox-i18n-53.0.3/it.xpi) = 4f8a8855b2680e8bc2323727d3a2d7aab0cdd9f718b1cfd3586f6b93430f88cf -SIZE (xpi/firefox-i18n-53.0.3/it.xpi) = 341969 -SHA256 (xpi/firefox-i18n-53.0.3/ja.xpi) = fd7aa5fa31bf8160ae1bba834bdf43129c14978cacc775d3625bc42555844f2e -SIZE (xpi/firefox-i18n-53.0.3/ja.xpi) = 493029 -SHA256 (xpi/firefox-i18n-53.0.3/kk.xpi) = 085d618e649720ab7a8649f4b5ad0e576aa5dbefee4ae0f23480f19b8dc48ca2 -SIZE (xpi/firefox-i18n-53.0.3/kk.xpi) = 499341 -SHA256 (xpi/firefox-i18n-53.0.3/km.xpi) = d2c3dcede1bd71d85877b8f9b4b6e300275baa9e9f266d65066ed49ffd970fe1 -SIZE (xpi/firefox-i18n-53.0.3/km.xpi) = 524729 -SHA256 (xpi/firefox-i18n-53.0.3/kn.xpi) = fad69dedf7db8d0ba39209dbb4a6e759c60e541c253101ec67b288cb2fed9ceb -SIZE (xpi/firefox-i18n-53.0.3/kn.xpi) = 524037 -SHA256 (xpi/firefox-i18n-53.0.3/ko.xpi) = 7f0b62d524629a037505f8deb1e400c3da5fccf78c0de975655f973e79231285 -SIZE (xpi/firefox-i18n-53.0.3/ko.xpi) = 468653 -SHA256 (xpi/firefox-i18n-53.0.3/lij.xpi) = 54454c19503de03176a98e7a9c1bae14bdc40886bb730b7f26e7b0d38d92a971 -SIZE (xpi/firefox-i18n-53.0.3/lij.xpi) = 435430 -SHA256 (xpi/firefox-i18n-53.0.3/lt.xpi) = 1861bc9a195ea3b0319a8c1b8b664fe1e4b5e007ebdfa4f7d1784631da2f8c0f -SIZE (xpi/firefox-i18n-53.0.3/lt.xpi) = 457034 -SHA256 (xpi/firefox-i18n-53.0.3/lv.xpi) = c00e2a8254107817c1f2d27947bc91755629fa734035099693c04a7ff9065d90 -SIZE (xpi/firefox-i18n-53.0.3/lv.xpi) = 453378 -SHA256 (xpi/firefox-i18n-53.0.3/mai.xpi) = 25665e8c4a73180dca5c6b271c4d89b8a800261b019ff2728a61954af10f5de4 -SIZE (xpi/firefox-i18n-53.0.3/mai.xpi) = 504302 -SHA256 (xpi/firefox-i18n-53.0.3/mk.xpi) = 78868c7546daa620f186c72c84f51d1ff30fb007e3b3dba4dfc194c109525682 -SIZE (xpi/firefox-i18n-53.0.3/mk.xpi) = 499956 -SHA256 (xpi/firefox-i18n-53.0.3/ml.xpi) = 857d6e655c21deef2c0b1010d911c420175e914ec2793239e27b849939f388e2 -SIZE (xpi/firefox-i18n-53.0.3/ml.xpi) = 520667 -SHA256 (xpi/firefox-i18n-53.0.3/mr.xpi) = 56367d182c2815d059c41bbac11825a0b7c72b9b30a5adb57863c42a97fb6624 -SIZE (xpi/firefox-i18n-53.0.3/mr.xpi) = 507882 -SHA256 (xpi/firefox-i18n-53.0.3/ms.xpi) = 4ceb5646daa509065fa5de098600d4b60160052240772d33cef78f8b6a34e697 -SIZE (xpi/firefox-i18n-53.0.3/ms.xpi) = 440728 -SHA256 (xpi/firefox-i18n-53.0.3/nb-NO.xpi) = b812e5b4f681d38dd6ea9a707ce5297e79f25d7216f4436ec22ec580f0880b6e -SIZE (xpi/firefox-i18n-53.0.3/nb-NO.xpi) = 439033 -SHA256 (xpi/firefox-i18n-53.0.3/nl.xpi) = abd34f2c16841f9a6159b4f6de967ea19f1920b941f89802ab8c34347a073932 -SIZE (xpi/firefox-i18n-53.0.3/nl.xpi) = 436860 -SHA256 (xpi/firefox-i18n-53.0.3/nn-NO.xpi) = e42e3197753f83bbda085fad8f7b1582ccc0af48a9b4189f8987d8314ddc7e38 -SIZE (xpi/firefox-i18n-53.0.3/nn-NO.xpi) = 433329 -SHA256 (xpi/firefox-i18n-53.0.3/or.xpi) = 7bdc757b4d74430d0821e6e3cfe6ae252655fa7c1f82478a1140b32d794f5f60 -SIZE (xpi/firefox-i18n-53.0.3/or.xpi) = 501208 -SHA256 (xpi/firefox-i18n-53.0.3/pa-IN.xpi) = a6a94c7bf40c3d50112284c704bec10db14997913d5696b700b78b7e5c7bbc01 -SIZE (xpi/firefox-i18n-53.0.3/pa-IN.xpi) = 480864 -SHA256 (xpi/firefox-i18n-53.0.3/pl.xpi) = d7091eb558474f63d12ac1e182d397c708264f0465444d5bbe06340461409621 -SIZE (xpi/firefox-i18n-53.0.3/pl.xpi) = 354949 -SHA256 (xpi/firefox-i18n-53.0.3/pt-BR.xpi) = 34297b6aff54b29803c2c534fc31405cbc5a34a0ebaa1e2bd5be01674dec0355 -SIZE (xpi/firefox-i18n-53.0.3/pt-BR.xpi) = 442708 -SHA256 (xpi/firefox-i18n-53.0.3/pt-PT.xpi) = b7fd92c3e4bb7425457d1de0a4d0944766635bb984e6d31104704160e465c3d1 -SIZE (xpi/firefox-i18n-53.0.3/pt-PT.xpi) = 441599 -SHA256 (xpi/firefox-i18n-53.0.3/rm.xpi) = 02c74fc48145cc3b40d06c94210313b7f24975b45bab9aa877b392bf932713bc -SIZE (xpi/firefox-i18n-53.0.3/rm.xpi) = 439749 -SHA256 (xpi/firefox-i18n-53.0.3/ro.xpi) = 9d0dc4348d0290b5308cfb3dc2e15583188ed457e5ea3e82e08974eac998519e -SIZE (xpi/firefox-i18n-53.0.3/ro.xpi) = 454823 -SHA256 (xpi/firefox-i18n-53.0.3/ru.xpi) = 51d9943f124ca27928bd2812873b234715b038f2b1cd89cbc1faf9daee0dd0c8 -SIZE (xpi/firefox-i18n-53.0.3/ru.xpi) = 506894 -SHA256 (xpi/firefox-i18n-53.0.3/si.xpi) = 9b20181adeaf5e8a81f0014612d280b80d2d43b9c3da28b45fa2d94c5c16d3d6 -SIZE (xpi/firefox-i18n-53.0.3/si.xpi) = 496183 -SHA256 (xpi/firefox-i18n-53.0.3/sk.xpi) = 3d394c7bcc143c59fb9bebc8309f8ddd4c13ca35fd44400957729b9146b99879 -SIZE (xpi/firefox-i18n-53.0.3/sk.xpi) = 460859 -SHA256 (xpi/firefox-i18n-53.0.3/sl.xpi) = 3f328c63bb70243cc2e74a6a4403f8755354c7b85f6ae87a74853de037a69a26 -SIZE (xpi/firefox-i18n-53.0.3/sl.xpi) = 438369 -SHA256 (xpi/firefox-i18n-53.0.3/son.xpi) = beffa4c7fc7387a04fef9d96ad1cba47c4a4545e6f25d2826c96b11d1dbd8d36 -SIZE (xpi/firefox-i18n-53.0.3/son.xpi) = 439834 -SHA256 (xpi/firefox-i18n-53.0.3/sq.xpi) = e7ba6289dd07bc11df9481bcb6dcf9159a84f163efec5ae92d25a294ef1f6cde -SIZE (xpi/firefox-i18n-53.0.3/sq.xpi) = 453422 -SHA256 (xpi/firefox-i18n-53.0.3/sr.xpi) = 5fa121ca8cf3c8eab17332c9f43bd94414190ccd2827fe51b68946ed04856e77 -SIZE (xpi/firefox-i18n-53.0.3/sr.xpi) = 467997 -SHA256 (xpi/firefox-i18n-53.0.3/sv-SE.xpi) = 71949c2ebf794037b8bf4bd2452a8aaa72f603012fec0a921aead50eae2ef27a -SIZE (xpi/firefox-i18n-53.0.3/sv-SE.xpi) = 445795 -SHA256 (xpi/firefox-i18n-53.0.3/ta.xpi) = 391a6d7622d216673e5f2cf6391724ceecb257aac6089ab290dab510bb5ff92a -SIZE (xpi/firefox-i18n-53.0.3/ta.xpi) = 500480 -SHA256 (xpi/firefox-i18n-53.0.3/te.xpi) = a80e1c178f1d27f2a551665faaab48445fab20238212ae5c0dce9b9cacc1247b -SIZE (xpi/firefox-i18n-53.0.3/te.xpi) = 520475 -SHA256 (xpi/firefox-i18n-53.0.3/th.xpi) = 6357bdc635568f52b9c03b8785b4cf86b656fae69d2393ea7b53fc87360803c5 -SIZE (xpi/firefox-i18n-53.0.3/th.xpi) = 494087 -SHA256 (xpi/firefox-i18n-53.0.3/tr.xpi) = 12e9663e2a591de9b4eba5d689f25ff98e2db45781ada5877d8d21f093800eae -SIZE (xpi/firefox-i18n-53.0.3/tr.xpi) = 445852 -SHA256 (xpi/firefox-i18n-53.0.3/uk.xpi) = 966d51bd93cf4b53721357770fca2c4bbe064a067bc044b1ba0e269213b442a5 -SIZE (xpi/firefox-i18n-53.0.3/uk.xpi) = 497432 -SHA256 (xpi/firefox-i18n-53.0.3/uz.xpi) = 90d44b439af4204fb022e99e045540268d8ac078470e7a7d756671161d79d5db -SIZE (xpi/firefox-i18n-53.0.3/uz.xpi) = 453391 -SHA256 (xpi/firefox-i18n-53.0.3/vi.xpi) = cc67e32dc6aa0f36827e4a9f156b8476950cc876bbbd9668e7f928dc7c90aa9b -SIZE (xpi/firefox-i18n-53.0.3/vi.xpi) = 455841 -SHA256 (xpi/firefox-i18n-53.0.3/xh.xpi) = fceffdd06821fc224e5a7118e54f4ac14d73b175784f654646791878899ea385 -SIZE (xpi/firefox-i18n-53.0.3/xh.xpi) = 446171 -SHA256 (xpi/firefox-i18n-53.0.3/zh-CN.xpi) = befcbbe52e769631c3792555e4e579684762c719696fb4c0e0d48a98e4a5d599 -SIZE (xpi/firefox-i18n-53.0.3/zh-CN.xpi) = 463955 -SHA256 (xpi/firefox-i18n-53.0.3/zh-TW.xpi) = 32e697c5f5188085fc1bf08216ca8d562cd2c286ece23e61d9a6359ff6e78061 -SIZE (xpi/firefox-i18n-53.0.3/zh-TW.xpi) = 474982 +TIMESTAMP = 1495148452 +SHA256 (xpi/firefox-i18n-54.0b9/ach.xpi) = 66f3bb626633e178051688836308619d3560ec1fa4553a13f16d0d9e865328fd +SIZE (xpi/firefox-i18n-54.0b9/ach.xpi) = 426783 +SHA256 (xpi/firefox-i18n-54.0b9/af.xpi) = 214430358e8cd937f3440c5e3b4bafa2ce71e40224b6d9a5c838c876f1db739c +SIZE (xpi/firefox-i18n-54.0b9/af.xpi) = 436585 +SHA256 (xpi/firefox-i18n-54.0b9/an.xpi) = bd816b960ceb4246bb5d0b6c13b267eb12b98fe39e5289bc90831b08073c8c79 +SIZE (xpi/firefox-i18n-54.0b9/an.xpi) = 445341 +SHA256 (xpi/firefox-i18n-54.0b9/ar.xpi) = c9a56252fcc2678cebcc72f80b1e1f9205415211a8ba228349b461c3d71fa792 +SIZE (xpi/firefox-i18n-54.0b9/ar.xpi) = 473123 +SHA256 (xpi/firefox-i18n-54.0b9/as.xpi) = 631c9b7ee7b75ecdf2508033e70a616ec36235b6a178c0f70fc6fb986a34369a +SIZE (xpi/firefox-i18n-54.0b9/as.xpi) = 484171 +SHA256 (xpi/firefox-i18n-54.0b9/ast.xpi) = da213fcf31ab76dea41557f5966df85a98da5c89846f621ae379d819dc5d3c78 +SIZE (xpi/firefox-i18n-54.0b9/ast.xpi) = 440269 +SHA256 (xpi/firefox-i18n-54.0b9/az.xpi) = f104a665d34c2f898d0958abc9dae78a334100d599bdc08fb34a8ea0f64e5a8f +SIZE (xpi/firefox-i18n-54.0b9/az.xpi) = 454241 +SHA256 (xpi/firefox-i18n-54.0b9/bg.xpi) = a340bcf13f2ff8b0eae3bdc87b36b15a15582328970d934cb43daa4f8728dd7a +SIZE (xpi/firefox-i18n-54.0b9/bg.xpi) = 485833 +SHA256 (xpi/firefox-i18n-54.0b9/bn-BD.xpi) = 759709c862f7b757859b60fa1c76bf485c4d8249b4a36d3c66efab980a95316a +SIZE (xpi/firefox-i18n-54.0b9/bn-BD.xpi) = 508866 +SHA256 (xpi/firefox-i18n-54.0b9/bn-IN.xpi) = 432c21ee4615fd7ff0d6fe857442ffb7eae51c510beda37ef73becf4dfa2e90f +SIZE (xpi/firefox-i18n-54.0b9/bn-IN.xpi) = 506163 +SHA256 (xpi/firefox-i18n-54.0b9/br.xpi) = 9f67abcb7eead063e04363325e31fe1b0bf24e41e7d70d86d7fca58857946c13 +SIZE (xpi/firefox-i18n-54.0b9/br.xpi) = 434371 +SHA256 (xpi/firefox-i18n-54.0b9/bs.xpi) = 468ade75a0f8aee9c9cea41ae98ed0228e2bc76ad4ed49d6e4f4218fa750c8ae +SIZE (xpi/firefox-i18n-54.0b9/bs.xpi) = 441129 +SHA256 (xpi/firefox-i18n-54.0b9/ca.xpi) = 991b91dc88a45cc2692ab93e5964c59ccb29dc46914e30d0bb15549feebb76f5 +SIZE (xpi/firefox-i18n-54.0b9/ca.xpi) = 443026 +SHA256 (xpi/firefox-i18n-54.0b9/cs.xpi) = 16559ca00e875a433cf406007c8ebe89c0e8c20a2958d386a31cef8ddf38f230 +SIZE (xpi/firefox-i18n-54.0b9/cs.xpi) = 443929 +SHA256 (xpi/firefox-i18n-54.0b9/cy.xpi) = ec3cd27c9a3412c1e22f6b7c22cb8a38726395771a19c7e96f93829c8c21d8eb +SIZE (xpi/firefox-i18n-54.0b9/cy.xpi) = 436310 +SHA256 (xpi/firefox-i18n-54.0b9/da.xpi) = da103432d7cbc66980873201d50ffe522f685c6508eaba20bd72c8b7c2497271 +SIZE (xpi/firefox-i18n-54.0b9/da.xpi) = 423765 +SHA256 (xpi/firefox-i18n-54.0b9/de.xpi) = 84e0b0b44e513d93d9ec55ebd72b218815c2cf56c41aa4cac19849a62402cae4 +SIZE (xpi/firefox-i18n-54.0b9/de.xpi) = 442813 +SHA256 (xpi/firefox-i18n-54.0b9/dsb.xpi) = a26fdd27719f129819a8bb83f6306d47176ba70e37e1d2c5d130a8a8a8fe0d83 +SIZE (xpi/firefox-i18n-54.0b9/dsb.xpi) = 458686 +SHA256 (xpi/firefox-i18n-54.0b9/el.xpi) = 03c0a57a0819a42342e968e2029d59230eefbff047cd9cac9c6a989feac98e39 +SIZE (xpi/firefox-i18n-54.0b9/el.xpi) = 511228 +SHA256 (xpi/firefox-i18n-54.0b9/en-GB.xpi) = 05dd49708022f3a03ef7fab55ee61fb222121142306c9aba480d96601a20a2a4 +SIZE (xpi/firefox-i18n-54.0b9/en-GB.xpi) = 419543 +SHA256 (xpi/firefox-i18n-54.0b9/en-US.xpi) = 0b03dac051a6a82165882106094e1bfa0ba9f6b31f17f033575dd9683cc032a9 +SIZE (xpi/firefox-i18n-54.0b9/en-US.xpi) = 425756 +SHA256 (xpi/firefox-i18n-54.0b9/en-ZA.xpi) = fb973087bcd2c5ca27d3725a57c63d552d8717374419d3e5f4da43b3136ce19f +SIZE (xpi/firefox-i18n-54.0b9/en-ZA.xpi) = 413430 +SHA256 (xpi/firefox-i18n-54.0b9/eo.xpi) = 693cdc9639da78bf58175be10fef28c8653bf508496b4fbfade6b66271664ad8 +SIZE (xpi/firefox-i18n-54.0b9/eo.xpi) = 437024 +SHA256 (xpi/firefox-i18n-54.0b9/es-AR.xpi) = 6870f7db80f95975a36447f2d11d67f01483c9c56e3e80e0ef8c37d48c243d3b +SIZE (xpi/firefox-i18n-54.0b9/es-AR.xpi) = 445556 +SHA256 (xpi/firefox-i18n-54.0b9/es-CL.xpi) = 8ac13156e82ab35d42a1cd87d386cf53720b8ba8a2856d60f23d98202f92bc4b +SIZE (xpi/firefox-i18n-54.0b9/es-CL.xpi) = 445582 +SHA256 (xpi/firefox-i18n-54.0b9/es-ES.xpi) = a83389a3d4ce60c8b1a6efb153766171a67c81436fce5fc72f00e91830eef31d +SIZE (xpi/firefox-i18n-54.0b9/es-ES.xpi) = 341278 +SHA256 (xpi/firefox-i18n-54.0b9/es-MX.xpi) = fb22018371658ce204dacc130aa84e044c1e124542af2aa44cacd3de93c3b5ef +SIZE (xpi/firefox-i18n-54.0b9/es-MX.xpi) = 447975 +SHA256 (xpi/firefox-i18n-54.0b9/et.xpi) = e8ac91fcbdeb0f593b7b203bceaae69f7eead62880c36791c827dda29f753088 +SIZE (xpi/firefox-i18n-54.0b9/et.xpi) = 423853 +SHA256 (xpi/firefox-i18n-54.0b9/eu.xpi) = f4e360155fa6f7773ac9a775cff78f2fb9d68ad65895e947bd73468b4d761ad5 +SIZE (xpi/firefox-i18n-54.0b9/eu.xpi) = 438023 +SHA256 (xpi/firefox-i18n-54.0b9/fa.xpi) = 0940eb3fc7353cca2e39e03fa577cb05236155fba974da78a8dcc3e315b32d9d +SIZE (xpi/firefox-i18n-54.0b9/fa.xpi) = 490358 +SHA256 (xpi/firefox-i18n-54.0b9/ff.xpi) = 0023fb9eafd2de25775372a48fd0c7cdaf27b5c06732a4492e13d7a98274f48d +SIZE (xpi/firefox-i18n-54.0b9/ff.xpi) = 441538 +SHA256 (xpi/firefox-i18n-54.0b9/fi.xpi) = 2a531ff4b0531b4a87900c4c501ca27d8cfd28342dba9a8772cf44c0404c49a2 +SIZE (xpi/firefox-i18n-54.0b9/fi.xpi) = 428997 +SHA256 (xpi/firefox-i18n-54.0b9/fr.xpi) = 174663f62d76a101d942ebbcecf9afd3f76f6d5f2a0036bda392786429dde800 +SIZE (xpi/firefox-i18n-54.0b9/fr.xpi) = 451595 +SHA256 (xpi/firefox-i18n-54.0b9/fy-NL.xpi) = 449d51d1eb948563153c6efd61203182399daf32f2c8cc91014bfdda3f98f411 +SIZE (xpi/firefox-i18n-54.0b9/fy-NL.xpi) = 444471 +SHA256 (xpi/firefox-i18n-54.0b9/ga-IE.xpi) = 681b372d08c444d202d84d1cccdf3de3709c6933056a4e0a65b9d93037100cbf +SIZE (xpi/firefox-i18n-54.0b9/ga-IE.xpi) = 457481 +SHA256 (xpi/firefox-i18n-54.0b9/gd.xpi) = e5c52d58adedb5123a6b84a8048b817e7b87d9f56661da4333d9b3caad790486 +SIZE (xpi/firefox-i18n-54.0b9/gd.xpi) = 446083 +SHA256 (xpi/firefox-i18n-54.0b9/gl.xpi) = d4d42bcfa6a944e323342b97105c81ae455dabe0d451cf8fcbcae237f1f0110e +SIZE (xpi/firefox-i18n-54.0b9/gl.xpi) = 443275 +SHA256 (xpi/firefox-i18n-54.0b9/gn.xpi) = 8ad3e597f2d6dfa2118773306ee839bbf31210ab236c36b8100ff22253faba7c +SIZE (xpi/firefox-i18n-54.0b9/gn.xpi) = 456065 +SHA256 (xpi/firefox-i18n-54.0b9/gu-IN.xpi) = 4796aa29379ebd4d63c971bc1e1d95f7d3b5098f41b75b40ce4499b9833c35a1 +SIZE (xpi/firefox-i18n-54.0b9/gu-IN.xpi) = 487114 +SHA256 (xpi/firefox-i18n-54.0b9/he.xpi) = 4e0e6841025ed13744859fd041ccab2451b59137f2a490bbb4ca68673e086d89 +SIZE (xpi/firefox-i18n-54.0b9/he.xpi) = 454287 +SHA256 (xpi/firefox-i18n-54.0b9/hi-IN.xpi) = 607df0d2a7c8fe67c868eed9e18490912f60828fd858f7253806b53d2fb13873 +SIZE (xpi/firefox-i18n-54.0b9/hi-IN.xpi) = 504631 +SHA256 (xpi/firefox-i18n-54.0b9/hr.xpi) = 6d3aefd443a1099fb36e33c8b9d372571275da4ba00160989e7d4a6310bf5fdd +SIZE (xpi/firefox-i18n-54.0b9/hr.xpi) = 447780 +SHA256 (xpi/firefox-i18n-54.0b9/hsb.xpi) = 85c73c23f5e67b539d7cf3ab1db06c8fb54f0df1bf9d3e2b817f2f823acf510a +SIZE (xpi/firefox-i18n-54.0b9/hsb.xpi) = 456524 +SHA256 (xpi/firefox-i18n-54.0b9/hu.xpi) = 504b2085905e1ece7a9a429e6159398f750ebf2ad640d4f2e5cb0991ab76ea5f +SIZE (xpi/firefox-i18n-54.0b9/hu.xpi) = 451120 +SHA256 (xpi/firefox-i18n-54.0b9/hy-AM.xpi) = 46ebab8fa3bd786d8fce0b0dc099cc3b5edfa8ad887ea50134832a50f9417ac8 +SIZE (xpi/firefox-i18n-54.0b9/hy-AM.xpi) = 496018 +SHA256 (xpi/firefox-i18n-54.0b9/id.xpi) = fc9ff88eef12d816e4e77c555ec35af6fb34cc57b92abc2562e2efeee976e080 +SIZE (xpi/firefox-i18n-54.0b9/id.xpi) = 425283 +SHA256 (xpi/firefox-i18n-54.0b9/is.xpi) = d8e32c300aa71c7dd7a983598210398e293b21e52a6a5e51398397cd8b768813 +SIZE (xpi/firefox-i18n-54.0b9/is.xpi) = 441708 +SHA256 (xpi/firefox-i18n-54.0b9/it.xpi) = 045120eaca2addf36b9de9d1c3a0a33a427ba6fec00c9116fde5ecddef932ad6 +SIZE (xpi/firefox-i18n-54.0b9/it.xpi) = 335500 +SHA256 (xpi/firefox-i18n-54.0b9/ja.xpi) = d82adbdbe9d9b9ee781d347797c97cac6a85c232f0277b7ef89a5a264d6cab99 +SIZE (xpi/firefox-i18n-54.0b9/ja.xpi) = 489327 +SHA256 (xpi/firefox-i18n-54.0b9/kk.xpi) = 30ca335393611ecf1b4a432ca066eb9894560575718b0b73060ed8a1c2bb66f3 +SIZE (xpi/firefox-i18n-54.0b9/kk.xpi) = 493047 +SHA256 (xpi/firefox-i18n-54.0b9/km.xpi) = 670be0260239880a4d5de5ec93861b8bfe5a3338d25240d58a831c8cf2937286 +SIZE (xpi/firefox-i18n-54.0b9/km.xpi) = 517240 +SHA256 (xpi/firefox-i18n-54.0b9/kn.xpi) = 9a0b6ab17153f3f9d2798dc3c3bfed9a705dcfe5da8b49c2c4ce1c78842c6a87 +SIZE (xpi/firefox-i18n-54.0b9/kn.xpi) = 516492 +SHA256 (xpi/firefox-i18n-54.0b9/ko.xpi) = 6e1365b989bb0dce2942e9c73b7e5dbb0b4434ef4ff869739ed4517ec5bff5d9 +SIZE (xpi/firefox-i18n-54.0b9/ko.xpi) = 460423 +SHA256 (xpi/firefox-i18n-54.0b9/lij.xpi) = d87563d9f203a6225428d4096f45f9fe938d8416d8ac6287f6a00f09f499a041 +SIZE (xpi/firefox-i18n-54.0b9/lij.xpi) = 431673 +SHA256 (xpi/firefox-i18n-54.0b9/lt.xpi) = 05c32d0b4c3c605a3af7c0058c2a62720abd724c81ff18535a06eb54d200783a +SIZE (xpi/firefox-i18n-54.0b9/lt.xpi) = 451193 +SHA256 (xpi/firefox-i18n-54.0b9/lv.xpi) = f03af683420024abb99d9c4b3f1a6f6cd6273419dc045ba0084cdcf3c8d497fa +SIZE (xpi/firefox-i18n-54.0b9/lv.xpi) = 447752 +SHA256 (xpi/firefox-i18n-54.0b9/mai.xpi) = 5ce1d124d6dcce4aed4556f478737bd30c2ea574808564b9eb108ea5737f2469 +SIZE (xpi/firefox-i18n-54.0b9/mai.xpi) = 497011 +SHA256 (xpi/firefox-i18n-54.0b9/mk.xpi) = d402ea29b05b85ddae4cf93f6ae4da7a0bb13b43fa38feb0ba044900066ef98e +SIZE (xpi/firefox-i18n-54.0b9/mk.xpi) = 493118 +SHA256 (xpi/firefox-i18n-54.0b9/ml.xpi) = 51b2c64a1db7f2b953f7caa9ac6597df26e25949675556057753dce65d058796 +SIZE (xpi/firefox-i18n-54.0b9/ml.xpi) = 512264 +SHA256 (xpi/firefox-i18n-54.0b9/mr.xpi) = 8af487b92bfa27c55cdf19aa6a7534baf115f2cb94e1067c6054de07d2feb181 +SIZE (xpi/firefox-i18n-54.0b9/mr.xpi) = 501032 +SHA256 (xpi/firefox-i18n-54.0b9/ms.xpi) = 93c06c1c1bfda46c426a387e9239d8a6c518590220e50877fda63752753ce305 +SIZE (xpi/firefox-i18n-54.0b9/ms.xpi) = 435501 +SHA256 (xpi/firefox-i18n-54.0b9/nb-NO.xpi) = 1d864224e93c2390f54451d154a0ad63acdb94ebbdbf6c27c5c93c5b2b5437ab +SIZE (xpi/firefox-i18n-54.0b9/nb-NO.xpi) = 433681 +SHA256 (xpi/firefox-i18n-54.0b9/nl.xpi) = 5adb70f306156d003600067daf3b9fc35facdd0dad37fda8a0de3c2f257053aa +SIZE (xpi/firefox-i18n-54.0b9/nl.xpi) = 431501 +SHA256 (xpi/firefox-i18n-54.0b9/nn-NO.xpi) = 197c0e19200f0f799a7051508156491b55ea1f8a6a46c4595f1e933618d201c6 +SIZE (xpi/firefox-i18n-54.0b9/nn-NO.xpi) = 427870 +SHA256 (xpi/firefox-i18n-54.0b9/or.xpi) = 019b5c164df7a3b935dfb6a3d5a29cdd5a8f4c4aee018cf0601bd00f1fc97aac +SIZE (xpi/firefox-i18n-54.0b9/or.xpi) = 494077 +SHA256 (xpi/firefox-i18n-54.0b9/pa-IN.xpi) = cd446e2386d97b9c1258aea056c758a724bedf70b8c6661d64e28462abc27d3a +SIZE (xpi/firefox-i18n-54.0b9/pa-IN.xpi) = 473515 +SHA256 (xpi/firefox-i18n-54.0b9/pl.xpi) = 4bc5d0b0996c9f5f9f565661e862e86affd0d4051513bf9a8ba97ab447fec19d +SIZE (xpi/firefox-i18n-54.0b9/pl.xpi) = 347203 +SHA256 (xpi/firefox-i18n-54.0b9/pt-BR.xpi) = ef66d351b5ee38c07c80b0f510165160f949580bf7242dbadb8a90599d9dc53f +SIZE (xpi/firefox-i18n-54.0b9/pt-BR.xpi) = 437172 +SHA256 (xpi/firefox-i18n-54.0b9/pt-PT.xpi) = fa958a2ac56ff6bbd088776fdc3ca9fcd27d1e18d5389536aa4ae53ab2e8b140 +SIZE (xpi/firefox-i18n-54.0b9/pt-PT.xpi) = 436176 +SHA256 (xpi/firefox-i18n-54.0b9/rm.xpi) = 213d5039e323a8bca08506ec25cfaefd86da93349256d219f30c7cf43a2aed45 +SIZE (xpi/firefox-i18n-54.0b9/rm.xpi) = 433404 +SHA256 (xpi/firefox-i18n-54.0b9/ro.xpi) = 9b2524673a654253e71a4f7940914f8ca7fb832f7c52e08e5dcae173d1a82b48 +SIZE (xpi/firefox-i18n-54.0b9/ro.xpi) = 449473 +SHA256 (xpi/firefox-i18n-54.0b9/ru.xpi) = 5bf3a32f5200f8f7b4ab291e0220bda35e3ab9d4862f437baff8d83b48701790 +SIZE (xpi/firefox-i18n-54.0b9/ru.xpi) = 487731 +SHA256 (xpi/firefox-i18n-54.0b9/si.xpi) = f14d68c352d16fe9c462a4c20b034da715e60e0ffd32fd825d1f1ec5f1d49b3e +SIZE (xpi/firefox-i18n-54.0b9/si.xpi) = 491067 +SHA256 (xpi/firefox-i18n-54.0b9/sk.xpi) = 1d24a7407a5cb23e414d327d06737096080d17907361a796c32c6a4042b8a6bf +SIZE (xpi/firefox-i18n-54.0b9/sk.xpi) = 455016 +SHA256 (xpi/firefox-i18n-54.0b9/sl.xpi) = a1f11eb2a599b9ccaee8e51011f83c5831ebb242f69a02170394120fc2bc22e0 +SIZE (xpi/firefox-i18n-54.0b9/sl.xpi) = 433174 +SHA256 (xpi/firefox-i18n-54.0b9/son.xpi) = 3bc66657e39b7543890fe1790e439599d69260c17e0d287a7ff13c39f7249326 +SIZE (xpi/firefox-i18n-54.0b9/son.xpi) = 435051 +SHA256 (xpi/firefox-i18n-54.0b9/sq.xpi) = 81aa0bb2741753a5189ff7df58fce9b4bb5925e1721b97614c4443100e798f63 +SIZE (xpi/firefox-i18n-54.0b9/sq.xpi) = 448158 +SHA256 (xpi/firefox-i18n-54.0b9/sr.xpi) = e16c0509f4862be880dc6944e9340f100af27790744ddeed4f8e5d32769b8778 +SIZE (xpi/firefox-i18n-54.0b9/sr.xpi) = 461355 +SHA256 (xpi/firefox-i18n-54.0b9/sv-SE.xpi) = 35d6e090b4bbdbdc3e7a70565bfbffab9ae31cbf2759f2f69c9b0d635e8bb401 +SIZE (xpi/firefox-i18n-54.0b9/sv-SE.xpi) = 440477 +SHA256 (xpi/firefox-i18n-54.0b9/ta.xpi) = a7bf359be46bd81874704fc02606ba2b2a810f319d340961e9cdb585984ff620 +SIZE (xpi/firefox-i18n-54.0b9/ta.xpi) = 493956 +SHA256 (xpi/firefox-i18n-54.0b9/te.xpi) = 55f41b31b92b4b3783c4df7dcc9bc5c05f1d4379f8d5fe1e7cc03dce74925d7d +SIZE (xpi/firefox-i18n-54.0b9/te.xpi) = 513284 +SHA256 (xpi/firefox-i18n-54.0b9/th.xpi) = 7a902c21e4fbbe40ca713120d89bab6f0865d899e07800a6e13ffb9538bf21f4 +SIZE (xpi/firefox-i18n-54.0b9/th.xpi) = 487216 +SHA256 (xpi/firefox-i18n-54.0b9/tr.xpi) = eefecb29429619eded7dfb57275ae0f1bd097807d125536a79925a9f98f0002b +SIZE (xpi/firefox-i18n-54.0b9/tr.xpi) = 440412 +SHA256 (xpi/firefox-i18n-54.0b9/uk.xpi) = dae0e785ce94ceaf5ee26a4a9dd7e720b7bc86f2c33f45cc1f3004ef300fc4d2 +SIZE (xpi/firefox-i18n-54.0b9/uk.xpi) = 490756 +SHA256 (xpi/firefox-i18n-54.0b9/uz.xpi) = 26ae129d0279aa1d07a65678d314e02a8cfdb8e44e6724a8b969f9249c23a52b +SIZE (xpi/firefox-i18n-54.0b9/uz.xpi) = 448112 +SHA256 (xpi/firefox-i18n-54.0b9/vi.xpi) = 90adb2366e0e77579b94a98ef41914ed8e174dd048c42e12ea3ef19fb04df2be +SIZE (xpi/firefox-i18n-54.0b9/vi.xpi) = 449654 +SHA256 (xpi/firefox-i18n-54.0b9/xh.xpi) = 3fd26ba139a2f6b27139a7b69fc6fa37525ad029659b126794773a9de86f0108 +SIZE (xpi/firefox-i18n-54.0b9/xh.xpi) = 440802 +SHA256 (xpi/firefox-i18n-54.0b9/zh-CN.xpi) = 752d78be88cef21f7694fd2ffb61a8d1bd67f39181d31771182bcdff4ad42a8b +SIZE (xpi/firefox-i18n-54.0b9/zh-CN.xpi) = 458333 +SHA256 (xpi/firefox-i18n-54.0b9/zh-TW.xpi) = 3484a9fa6455fe82e9d77d899169eca29af5aa3fbd708b4eb76b8c9299f7575b +SIZE (xpi/firefox-i18n-54.0b9/zh-TW.xpi) = 469164 --- b/www/firefox/Makefile +++ b/www/firefox/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= firefox -DISTVERSION= 53.0.3 +DISTVERSION= 54.0b9 DISTVERSIONSUFFIX=.source PORTEPOCH= 1 CATEGORIES= www ipv6 @@ -12,11 +12,11 @@ MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ MAINTAINER= gecko@FreeBSD.org COMMENT= Web browser based on the browser portion of Mozilla -BUILD_DEPENDS= nspr>=4.13.1:devel/nspr \ - nss>=3.29.5:security/nss \ - libevent>=2.0.21_2:devel/libevent \ - harfbuzz>=1.4.1:print/harfbuzz \ - graphite2>=1.3.8:graphics/graphite2 \ +BUILD_DEPENDS= nspr>=4.14:devel/nspr \ + nss>=3.30.2:security/nss \ + libevent>=2.0.22:devel/libevent \ + harfbuzz>=1.4.3:print/harfbuzz \ + graphite2>=1.3.10:graphics/graphite2 \ png>=1.6.28:graphics/png \ libvorbis>=1.3.5,3:audio/libvorbis \ libvpx>=1.5.0:multimedia/libvpx \ --- b/www/firefox/distinfo +++ b/www/firefox/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1495100875 -SHA256 (firefox-53.0.3.source.tar.xz) = 78cc89650b6d8baacaf55f1a486de06bf3bb5b8a3082fd044e70225e2816e348 -SIZE (firefox-53.0.3.source.tar.xz) = 215253212 +TIMESTAMP = 1495148452 +SHA256 (firefox-54.0b9.source.tar.xz) = 0cc8430d686efcc1ac9bd4f62b77f6b401a778bdd39f1f8323389d3551c825a3 +SIZE (firefox-54.0b9.source.tar.xz) = 229921124 --- a/www/firefox/files/patch-bug1338655 +++ /dev/null @@ -1,66 +0,0 @@ -commit bbd48a5613c8 -Author: Ralph Giles -Date: Fri Feb 10 12:58:18 2017 -0800 - - Bug 1338655 - Don't try to build mp4parse bindings. r=froydnj - - We use the cheddar crate to generate a C header file - for our mp4parse_capi wrapper crate. Currently we - do this at code check-in time via update-rust.sh. - - Cargo 0.18 and later will try to execute a build.rs - file in the crate source tree regardless of whether - it's specified in Cargo.toml so patching out that - line just results in 'crate cheddar not found'. - - This change restores the old behaviour by substituting - a 'build = false' line instead. - - We do have syntex vendored, but we don't currently build - it by default, so I prefer this solution to just vendoring - cheddar and generating the header at build time. The syntex - crate is quite large and adds significantly to our compile - time. - - MozReview-Commit-ID: InJRRODWAdP - - --HG-- - extra : rebase_source : 29378fcbc86015ce6cc22dc66d38a43ddbac204e ---- - media/libstagefright/binding/mp4parse-cargo.patch | 5 +++-- - media/libstagefright/binding/mp4parse_capi/Cargo.toml | 2 ++ - 2 files changed, 5 insertions(+), 2 deletions(-) - -diff --git media/libstagefright/binding/mp4parse-cargo.patch media/libstagefright/binding/mp4parse-cargo.patch -index 1dd13d20472a..bfa0ab74b424 100644 ---- media/libstagefright/binding/mp4parse-cargo.patch -+++ media/libstagefright/binding/mp4parse-cargo.patch -@@ -27,12 +27,13 @@ diff --git a/media/libstagefright/binding/mp4parse_capi/Cargo.toml b/media/libst - index aeeebc65..5c0836a 100644 - --- a/media/libstagefright/binding/mp4parse_capi/Cargo.toml - +++ b/media/libstagefright/binding/mp4parse_capi/Cargo.toml --@@ -18,18 +18,10 @@ exclude = [ -+@@ -18,18 +18,12 @@ exclude = [ - "*.mp4", - ] - - -build = "build.rs" --- -++build = false -+ - [dependencies] - byteorder = "1.0.0" - "mp4parse" = {version = "0.6.0", path = "../mp4parse"} -diff --git media/libstagefright/binding/mp4parse_capi/Cargo.toml media/libstagefright/binding/mp4parse_capi/Cargo.toml -index aee7ee947151..d7e3f55119d3 100644 ---- media/libstagefright/binding/mp4parse_capi/Cargo.toml -+++ media/libstagefright/binding/mp4parse_capi/Cargo.toml -@@ -18,6 +18,8 @@ exclude = [ - "*.mp4", - ] - -+build = false -+ - [dependencies] - byteorder = "1.0.0" - "mp4parse" = {version = "0.6.0", path = "../mp4parse"} --- a/www/firefox/files/patch-bug1359051 +++ /dev/null @@ -1,31 +0,0 @@ -commit fe7592e16fcc -Author: Sean Stangl -Date: Mon Apr 24 07:10:58 2017 -0700 - - Bug 1359051 - Define cacheFlush for non-Simulator ARM64 builds. r=tcampbell ---- - js/src/jit/ExecutableAllocator.h | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git js/src/jit/ExecutableAllocator.h js/src/jit/ExecutableAllocator.h -index 3a42918142ef..570a25ff0dc3 100644 ---- js/src/jit/ExecutableAllocator.h -+++ js/src/jit/ExecutableAllocator.h -@@ -259,7 +259,7 @@ class ExecutableAllocator - { - __clear_cache(code, reinterpret_cast(code) + size); - } --#elif defined(JS_CODEGEN_ARM) && defined(XP_IOS) -+#elif (defined(JS_CODEGEN_ARM) || defined(JS_CODEGEN_ARM64)) && defined(XP_IOS) - static void cacheFlush(void* code, size_t size) - { - sys_icache_invalidate(code, size); -@@ -297,7 +297,7 @@ class ExecutableAllocator - : "r0", "r1", "r2"); - } - } --#elif defined(JS_CODEGEN_ARM64) && (defined(__linux__) || defined(ANDROID)) && defined(__GNUC__) -+#elif defined(JS_CODEGEN_ARM64) - static void cacheFlush(void* code, size_t size) - { - vixl::CPU::EnsureIAndDCacheCoherency(code, size); --- a/www/firefox/files/patch-bug1359142 +++ /dev/null @@ -1,57 +0,0 @@ -Define EPC_sig and RFP_sig for JS_CODEGEN_(ARM64|MIPS) on BSDs - -diff --git js/src/wasm/WasmSignalHandlers.cpp js/src/wasm/WasmSignalHandlers.cpp -index 1ab76eeb4bd9..bcdff0487837 100644 ---- js/src/wasm/WasmSignalHandlers.cpp -+++ js/src/wasm/WasmSignalHandlers.cpp -@@ -108,7 +108,19 @@ class AutoSetHandlingSegFault - # define R12_sig(p) ((p)->sc_r12) - # define R13_sig(p) ((p)->sc_r13) - # define R14_sig(p) ((p)->sc_r14) --# define R15_sig(p) ((p)->sc_r15) -+# if defined(__arm__) -+# define R15_sig(p) ((p)->sc_pc) -+# else -+# define R15_sig(p) ((p)->sc_r15) -+# endif -+# if defined(__aarch64__) -+# define EPC_sig(p) ((p)->sc_elr) -+# define RFP_sig(p) ((p)->sc_x[29]) -+# endif -+# if defined(__mips__) -+# define EPC_sig(p) ((p)->sc_pc) -+# define RFP_sig(p) ((p)->sc_regs[30]) -+# endif - #elif defined(__linux__) || defined(SOLARIS) - # if defined(__linux__) - # define XMM_sig(p,i) ((p)->uc_mcontext.fpregs->_xmm[i]) -@@ -171,6 +183,14 @@ class AutoSetHandlingSegFault - # define R13_sig(p) ((p)->uc_mcontext.__gregs[_REG_R13]) - # define R14_sig(p) ((p)->uc_mcontext.__gregs[_REG_R14]) - # define R15_sig(p) ((p)->uc_mcontext.__gregs[_REG_R15]) -+# if defined(__aarch64__) -+# define EPC_sig(p) ((p)->uc_mcontext.__gregs[_REG_PC]) -+# define RFP_sig(p) ((p)->uc_mcontext.__gregs[_REG_X29]) -+# endif -+# if defined(__mips__) -+# define EPC_sig(p) ((p)->uc_mcontext.__gregs[_REG_EPC]) -+# define RFP_sig(p) ((p)->uc_mcontext.__gregs[_REG_S8]) -+# endif - #elif defined(__DragonFly__) || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) - # if defined(__DragonFly__) - # define XMM_sig(p,i) (((union savefpu*)(p)->uc_mcontext.mc_fpregs)->sv_xmm.sv_xmm[i]) -@@ -200,6 +220,14 @@ class AutoSetHandlingSegFault - # else - # define R15_sig(p) ((p)->uc_mcontext.mc_r15) - # endif -+# if defined(__FreeBSD__) && defined(__aarch64__) -+# define EPC_sig(p) ((p)->uc_mcontext.mc_gpregs.gp_elr) -+# define RFP_sig(p) ((p)->uc_mcontext.mc_gpregs.gp_x[29]) -+# endif -+# if defined(__FreeBSD__) && defined(__mips__) -+# define EPC_sig(p) ((p)->uc_mcontext.mc_pc) -+# define RFP_sig(p) ((p)->uc_mcontext.mc_regs[30]) -+# endif - #elif defined(XP_DARWIN) - # define EIP_sig(p) ((p)->uc_mcontext->__ss.__eip) - # define EBP_sig(p) ((p)->uc_mcontext->__ss.__ebp) --- b/www/firefox/files/patch-bug847568 +++ b/www/firefox/files/patch-bug847568 @@ -145,10 +145,10 @@ index 2118677ca3a8..e4978b413784 100644 CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS'] CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS'] diff --git gfx/thebes/moz.build gfx/thebes/moz.build -index dee9b7bfa2cb..bd801f3a468e 100644 +index 56f1b9fe3f4b..0ac1100b0df3 100644 --- gfx/thebes/moz.build +++ gfx/thebes/moz.build -@@ -273,7 +273,13 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3'): +@@ -269,7 +269,13 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3'): LOCAL_INCLUDES += CONFIG['SKIA_INCLUDES'] @@ -167,14 +167,14 @@ 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 -@@ -40,4 +40,7 @@ if CONFIG['_MSC_VER']: - if CONFIG['ENABLE_INTL_API']: - USE_LIBS += ['icu'] +@@ -29,4 +29,7 @@ if CONFIG['ENABLE_INTL_API']: + 'ICUUtils.cpp', + ] +if CONFIG['MOZ_SYSTEM_HARFBUZZ']: + CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS'] + - DIST_INSTALL = True + FINAL_LIBRARY = 'xul' diff --git netwerk/dns/moz.build netwerk/dns/moz.build index 79c26e3e7001..c4d93bc5f7dc 100644 --- netwerk/dns/moz.build @@ -209,7 +209,7 @@ index 95a58b634593..b614eef85c89 100644 + * 100 + GR2_VERSION_BUGFIX >= \ + (major) * 10000 + (minor) * 100 + (bugfix) ) + ], [ -+ #if !GR2_VERSION_REQUIRE(1,3,8) ++ #if !GR2_VERSION_REQUIRE(1,3,10) + #error "Insufficient graphite2 version." + #endif + ], [], @@ -225,7 +225,7 @@ diff --git toolkit/library/moz.build toolkit/library/moz.build index 24f940e1ed7e..079a575adec3 100644 --- toolkit/library/moz.build +++ toolkit/library/moz.build -@@ -228,6 +228,12 @@ if CONFIG['MOZ_SYSTEM_JPEG']: +@@ -224,6 +224,12 @@ if CONFIG['MOZ_SYSTEM_JPEG']: if CONFIG['MOZ_SYSTEM_PNG']: OS_LIBS += CONFIG['MOZ_PNG_LIBS'] @@ -242,7 +242,7 @@ diff --git toolkit/moz.configure toolkit/moz.configure index 9297e4d6f501..d8e273887e4b 100644 --- toolkit/moz.configure +++ toolkit/moz.configure -@@ -343,6 +343,26 @@ add_old_configure_assignment('FT2_LIBS', +@@ -356,6 +356,26 @@ add_old_configure_assignment('FT2_LIBS', add_old_configure_assignment('FT2_CFLAGS', delayed_getattr(ft2_info, 'cflags')) @@ -261,7 +261,7 @@ index 9297e4d6f501..d8e273887e4b 100644 +option('--with-system-harfbuzz', + help="Use system harfbuzz (located with pkgconfig)") + -+system_harfbuzz = pkg_check_modules('MOZ_HARFBUZZ', 'harfbuzz >= 1.4.1', ++system_harfbuzz = pkg_check_modules('MOZ_HARFBUZZ', 'harfbuzz >= 1.4.3', + when='--with-system-harfbuzz') + +set_config('MOZ_SYSTEM_HARFBUZZ', depends_if(system_harfbuzz)(lambda _: True)) --- /dev/null +++ b/www/firefox/files/patch-rust-option @@ -0,0 +1,345 @@ +Revert bug 1284816 and bug 1341967 to postpone bustage on non-x86 archs. + +diff --git browser/confvars.sh browser/confvars.sh +index d8dcd99c2757..740d9d3e5fcf 100755 +--- browser/confvars.sh ++++ browser/confvars.sh +@@ -30,6 +30,7 @@ if test "$OS_ARCH" = "WINNT"; then + fi + fi + ++MOZ_RUST_MP4PARSE=1 + if test "$NIGHTLY_BUILD"; then + MOZ_RUST_URLPARSE=1 + fi +diff --git build/moz.configure/rust.configure build/moz.configure/rust.configure +index 267d989f1597..f709820e60ae 100644 +--- build/moz.configure/rust.configure ++++ build/moz.configure/rust.configure +@@ -4,10 +4,20 @@ + # License, v. 2.0. If a copy of the MPL was not distributed with this + # file, You can obtain one at http://mozilla.org/MPL/2.0/. + +-# Rust is required by `rust_compiler` below. We allow_missing here +-# to propagate failures to the better error message there. +-rustc = check_prog('RUSTC', ['rustc'], allow_missing=True) +-cargo = check_prog('CARGO', ['cargo'], allow_missing=True) ++option('--disable-rust', help='Don\'t include Rust language sources') ++ ++@depends('--enable-rust') ++def rust_compiler_names(value): ++ if value: ++ return ['rustc'] ++ ++@depends('--enable-rust') ++def cargo_binary_names(value): ++ if value: ++ return ['cargo'] ++ ++rustc = check_prog('RUSTC', rust_compiler_names, allow_missing=True) ++cargo = check_prog('CARGO', cargo_binary_names, allow_missing=True) + + @depends_if(rustc) + @checking('rustc version', lambda info: info.version) +@@ -43,9 +53,12 @@ def cargo_info(cargo): + version=Version(version), + ) + +-@depends(rustc_info, cargo_info) ++@depends('--enable-rust', rustc_info, cargo_info) + @imports(_from='textwrap', _import='dedent') +-def rust_compiler(rustc_info, cargo_info): ++def rust_compiler(value, rustc_info, cargo_info): ++ if not value: ++ return None ++ + if not rustc_info: + die(dedent('''\ + Rust compiler not found. +diff --git dom/media/MediaPrefs.h dom/media/MediaPrefs.h +index 4dcc659222a4..559334d89fd1 100644 +--- dom/media/MediaPrefs.h ++++ dom/media/MediaPrefs.h +@@ -165,7 +165,7 @@ private: + DECL_MEDIA_PREF("media.ogg.flac.enabled", FlacInOgg, bool, false); + DECL_MEDIA_PREF("media.flac.enabled", FlacEnabled, bool, true); + +-#if !defined(RELEASE_OR_BETA) ++#if defined(MOZ_RUST_MP4PARSE) && !defined(RELEASE_OR_BETA) + DECL_MEDIA_PREF("media.rust.test_mode", RustTestMode, bool, false); + #endif + +diff --git media/libstagefright/binding/DecoderData.cpp media/libstagefright/binding/DecoderData.cpp +index 109ea329d154..a06e533b1e62 100644 +--- media/libstagefright/binding/DecoderData.cpp ++++ media/libstagefright/binding/DecoderData.cpp +@@ -13,9 +13,11 @@ + #include "mozilla/ArrayUtils.h" + #include "include/ESDS.h" + ++#ifdef MOZ_RUST_MP4PARSE + // OpusDecoder header is really needed only by MP4 in rust + #include "OpusDecoder.h" + #include "mp4parse.h" ++#endif // MOZ_RUST_MP4PARSE + + using namespace stagefright; + +@@ -187,6 +189,7 @@ MP4VideoInfo::Update(const MetaData* aMetaData, const char* aMimeType) + + } + ++#ifdef MOZ_RUST_MP4PARSE + static void + UpdateTrackProtectedInfo(mozilla::TrackInfo& aConfig, + const mp4parse_sinf_info& aSinf) +@@ -266,6 +269,7 @@ MP4VideoInfo::Update(const mp4parse_track_info* track, + mExtraData->AppendElements(video->extra_data.data, video->extra_data.length); + } + } ++#endif // MOZ_RUST_MP4PARSE + + bool + MP4VideoInfo::IsValid() const +diff --git media/libstagefright/binding/MP4Metadata.cpp media/libstagefright/binding/MP4Metadata.cpp +index 5c3810d99a38..5d14dfd8b8a9 100644 +--- media/libstagefright/binding/MP4Metadata.cpp ++++ media/libstagefright/binding/MP4Metadata.cpp +@@ -19,14 +19,18 @@ + #include "mp4_demuxer/MP4Metadata.h" + #include "mp4_demuxer/Stream.h" + #include "MediaPrefs.h" ++#ifdef MOZ_RUST_MP4PARSE + #include "mp4parse.h" ++#endif // MOZ_RUST_MP4PARSE + + #include + #include + #include + + ++#ifdef MOZ_RUST_MP4PARSE + struct FreeMP4Parser { void operator()(mp4parse_parser* aPtr) { mp4parse_free(aPtr); } }; ++#endif // MOZ_RUST_MP4PARSE + + using namespace stagefright; + +@@ -101,6 +103,7 @@ private: + bool mCanSeek; + }; + ++#ifdef MOZ_RUST_MP4PARSE + // Wrap an mp4_demuxer::Stream to remember the read offset. + + class RustStreamAdaptor { +@@ -145,9 +149,11 @@ private: + RustStreamAdaptor mRustSource; + mozilla::UniquePtr mRustParser; + }; ++#endif // MOZ_RUST_MP4PARSE + + MP4Metadata::MP4Metadata(Stream* aSource) + : mStagefright(MakeUnique(aSource)) ++#ifdef MOZ_RUST_MP4PARSE + , mRust(MakeUnique(aSource)) + , mPreferRust(false) + , mReportedAudioTrackTelemetry(false) +@@ -155,6 +161,7 @@ MP4Metadata::MP4Metadata(Stream* aSource) + #ifndef RELEASE_OR_BETA + , mRustTestMode(MediaPrefs::RustTestMode()) + #endif ++#endif // MOZ_RUST_MP4PARSE + { + } + +@@ -186,6 +193,7 @@ MP4Metadata::GetNumberTracks(mozilla::TrackInfo::TrackType aType) const + { + uint32_t numTracks = mStagefright->GetNumberTracks(aType); + ++#ifdef MOZ_RUST_MP4PARSE + if (!mRust) { + return numTracks; + } +@@ -211,10 +219,12 @@ MP4Metadata::GetNumberTracks(mozilla::TrackInfo::TrackType aType) const + mPreferRust = true; + return numTracksRust; + } ++#endif // MOZ_RUST_MP4PARSE + + return numTracks; + } + ++#ifdef MOZ_RUST_MP4PARSE + bool MP4Metadata::ShouldPreferRust() const { + if (!mRust) { + return false; +@@ -245,6 +255,7 @@ bool MP4Metadata::ShouldPreferRust() const { + // Otherwise, fall back. + return false; + } ++#endif // MOZ_RUST_MP4PARSE + + mozilla::UniquePtr + MP4Metadata::GetTrackInfo(mozilla::TrackInfo::TrackType aType, +@@ -253,6 +264,7 @@ MP4Metadata::GetTrackInfo(mozilla::TrackInfo::TrackType aType, + mozilla::UniquePtr info = + mStagefright->GetTrackInfo(aType, aTrackNumber); + ++#ifdef MOZ_RUST_MP4PARSE + if (!mRust) { + return info; + } +@@ -305,6 +317,7 @@ MP4Metadata::GetTrackInfo(mozilla::TrackInfo::TrackTyp + if (mPreferRust) { + return infoRust; + } ++#endif // MOZ_RUST_MP4PARSE + + return info; + } +@@ -319,6 +334,7 @@ const CryptoFile& + MP4Metadata::Crypto() const + { + const CryptoFile& crypto = mStagefright->Crypto(); ++#ifdef MOZ_RUST_MP4PARSE + const CryptoFile& rustCrypto = mRust->Crypto(); + + #ifndef RELEASE_OR_BETA +@@ -330,6 +347,7 @@ MP4Metadata::Crypto() const + if (mPreferRust) { + return rustCrypto; + } ++#endif // MOZ_RUST_MP4PARSE + + return crypto; + } +@@ -594,6 +612,7 @@ MP4MetadataStagefright::Metadata(Stream* aSource) + return parser->Metadata(); + } + ++#ifdef MOZ_RUST_MP4PARSE + bool + RustStreamAdaptor::Read(uint8_t* buffer, uintptr_t size, size_t* bytes_read) + { +@@ -859,5 +878,6 @@ MP4MetadataRust::Metadata(Stream* aSource) + MOZ_ASSERT(false, "Not yet implemented"); + return nullptr; + } ++#endif // MOZ_RUST_MP4PARSE + + } // namespace mp4_demuxer +diff --git media/libstagefright/binding/include/mp4_demuxer/DecoderData.h media/libstagefright/binding/include/mp4_demuxer/DecoderData.h +index 3cd4b7c142f4..dc25ddf03b10 100644 +--- media/libstagefright/binding/include/mp4_demuxer/DecoderData.h ++++ media/libstagefright/binding/include/mp4_demuxer/DecoderData.h +@@ -19,11 +19,13 @@ namespace stagefright + class MetaData; + } + ++#ifdef MOZ_RUST_MP4PARSE + extern "C" { + typedef struct mp4parse_track_info mp4parse_track_info; + typedef struct mp4parse_track_audio_info mp4parse_track_audio_info; + typedef struct mp4parse_track_video_info mp4parse_track_video_info; + } ++#endif // MOZ_RUST_MP4PARSE + + namespace mp4_demuxer + { +@@ -71,8 +73,10 @@ public: + void Update(const stagefright::MetaData* aMetaData, + const char* aMimeType); + ++#ifdef MOZ_RUST_MP4PARSE + void Update(const mp4parse_track_info* track, + const mp4parse_track_audio_info* audio); ++#endif // MOZ_RUST_MP4PARSE + + virtual bool IsValid() const override; + }; +@@ -85,8 +89,10 @@ public: + void Update(const stagefright::MetaData* aMetaData, + const char* aMimeType); + ++#ifdef MOZ_RUST_MP4PARSE + void Update(const mp4parse_track_info* track, + const mp4parse_track_video_info* video); ++#endif // MOZ_RUST_MP4PARSE + + virtual bool IsValid() const override; + }; +diff --git media/libstagefright/binding/include/mp4_demuxer/MP4Metadata.h media/libstagefright/binding/include/mp4_demuxer/MP4Metadata.h +index 492c9c1c1bc3..e16dbbd1155e 100644 +--- media/libstagefright/binding/include/mp4_demuxer/MP4Metadata.h ++++ media/libstagefright/binding/include/mp4_demuxer/MP4Metadata.h +@@ -36,6 +36,7 @@ public: + + private: + UniquePtr mStagefright; ++#ifdef MOZ_RUST_MP4PARSE + UniquePtr mRust; + mutable bool mPreferRust; + mutable bool mReportedAudioTrackTelemetry; +@@ -44,6 +45,7 @@ private: + mutable bool mRustTestMode; + #endif + bool ShouldPreferRust() const; ++#endif // MOZ_RUST_MP4PARSE + }; + + } // namespace mp4_demuxer +diff --git mobile/android/confvars.sh mobile/android/confvars.sh +index e79b6f5c0707..eb62763acaf7 100644 +--- mobile/android/confvars.sh ++++ mobile/android/confvars.sh +@@ -30,6 +30,8 @@ MOZ_XULRUNNER= + MOZ_CAPTURE=1 + MOZ_RAW=1 + ++MOZ_RUST_MP4PARSE=1 ++ + # use custom widget for html:select + MOZ_USE_NATIVE_POPUP_WINDOWS=1 + +diff --git toolkit/components/telemetry/Histograms.json toolkit/components/telemetry/Histograms.json +index 061c55f6a5b6..e49dfd176952 100644 +--- toolkit/components/telemetry/Histograms.json ++++ toolkit/components/telemetry/Histograms.json +@@ -6996,7 +6996,8 @@ + "expires_in_version": "55", + "kind": "boolean", + "bug_numbers": [1220885], +- "description": "(Bug 1220885) Whether the rust mp4 demuxer successfully parsed a stream segment." ++ "description": "(Bug 1220885) Whether the rust mp4 demuxer successfully parsed a stream segment.", ++ "cpp_guard": "MOZ_RUST_MP4PARSE" + }, + "MEDIA_RUST_MP4PARSE_ERROR_CODE": { + "alert_emails": ["giles@mozilla.com", "kinetik@flim.org"], +@@ -7004,21 +7005,24 @@ + "kind": "enumerated", + "n_values": 32, + "bug_numbers": [1238420], +- "description": "The error code reported when an MP4 parse attempt has failed.0 = OK, 1 = bad argument, 2 = invalid data, 3 = unsupported, 4 = unexpected end of file, 5 = read error." ++ "description": "The error code reported when an MP4 parse attempt has failed.0 = OK, 1 = bad argument, 2 = invalid data, 3 = unsupported, 4 = unexpected end of file, 5 = read error.", ++ "cpp_guard": "MOZ_RUST_MP4PARSE" + }, + "MEDIA_RUST_MP4PARSE_TRACK_MATCH_AUDIO": { + "alert_emails": ["giles@mozilla.com", "kinetik@flim.org"], + "expires_in_version": "55", + "kind": "boolean", + "bug_numbers": [1231169], +- "description": "Whether rust and stagefight mp4 parser audio track results match." ++ "description": "Whether rust and stagefight mp4 parser audio track results match.", ++ "cpp_guard": "MOZ_RUST_MP4PARSE" + }, + "MEDIA_RUST_MP4PARSE_TRACK_MATCH_VIDEO": { + "alert_emails": ["giles@mozilla.com", "kinetik@flim.org"], + "expires_in_version": "55", + "kind": "boolean", + "bug_numbers": [1231169], +- "description": "Whether rust and stagefight mp4 parser video track results match." ++ "description": "Whether rust and stagefight mp4 parser video track results match.", ++ "cpp_guard": "MOZ_RUST_MP4PARSE" + }, + "MEDIA_WMF_DECODE_ERROR": { + "expires_in_version": "55",