FreeBSD Bugzilla – Attachment 185288 Details for
Bug 221335
www/firefox: update to 56.0
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
beta2
ff56.diff (text/plain), 94.33 KB, created by
Jan Beich
on 2017-08-11 13:03:37 UTC
(
hide
)
Description:
beta2
Filename:
MIME Type:
Creator:
Jan Beich
Created:
2017-08-11 13:03:37 UTC
Size:
94.33 KB
patch
obsolete
>From 3e419cade0d3aa1685948d9ebe225fa16707d105 Mon Sep 17 00:00:00 2001 >From: jbeich <jbeich@35697150-7ecd-e111-bb59-0022644237b5> >Date: Mon, 7 Aug 2017 18:22:51 +0000 >Subject: [PATCH] www/firefox: update to 56.0 > >Changes: https://www.mozilla.org/firefox/56.0/releasenotes/ >PR: 221335 >Security: 1098a15b-b0f6-42b7-b5c7-8a8646e8be07 >MFH: 2017Q3 (requires r447450 and r447538) >--- > Mk/Uses/gecko.mk | 4 +- > Mk/bsd.gecko.mk | 11 +- > www/firefox-i18n/Makefile | 6 +- > www/firefox-i18n/distinfo | 382 ++++++------ > www/firefox/Makefile | 27 +- > www/firefox/distinfo | 6 +- > www/firefox/files/patch-bug1312182 | 376 ------------ > www/firefox/files/patch-bug1376268 | 61 -- > www/firefox/files/patch-bug1385597 | 24 - > www/firefox/files/patch-bug1386164 | 80 +++ > www/firefox/files/patch-bug1388005 | 84 +++ > www/firefox/files/patch-bug1389133 | 26 + > www/firefox/files/patch-bug826985 | 16 +- > www/firefox/files/patch-bug847568 | 2 +- > www/firefox/files/patch-rust-option | 816 -------------------------- > www/firefox/files/patch-toolkit_moz.configure | 13 + > 16 files changed, 432 insertions(+), 1502 deletions(-) > delete mode 100644 www/firefox/files/patch-bug1312182 > delete mode 100644 www/firefox/files/patch-bug1376268 > delete mode 100644 www/firefox/files/patch-bug1385597 > create mode 100644 www/firefox/files/patch-bug1386164 > create mode 100644 www/firefox/files/patch-bug1388005 > create mode 100644 www/firefox/files/patch-bug1389133 > delete mode 100644 www/firefox/files/patch-rust-option > create mode 100644 www/firefox/files/patch-toolkit_moz.configure > >diff --git a/Mk/Uses/gecko.mk b/Mk/Uses/gecko.mk >index 691bd5aaa827..a2975447daf2 100644 >--- a/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 55 >+_GECKO_VERSIONS= 52 56 > _GECKO_TYPE= firefox > > # Dependence lines for different Firefox versions > 52_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox-esr >-55_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox >+56_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox > > .if exists(${LOCALBASE}/bin/firefox) > _GECKO_INSTALLED_VER!= ${LOCALBASE}/bin/firefox --version 2>/dev/null >diff --git a/Mk/bsd.gecko.mk b/Mk/bsd.gecko.mk >index aea22ac5b322..6aa818cbbaaa 100644 >--- a/Mk/bsd.gecko.mk >+++ b/Mk/bsd.gecko.mk >@@ -387,13 +387,15 @@ post-patch-SNDIO-on: > ${MOZSRC}/media/webrtc/signaling/test/common.build > .endif > >-.if ${PORT_OPTIONS:MRUST} >-BUILD_DEPENDS+= rust>=1.15.1:${RUST_PORT} >+.if ${PORT_OPTIONS:MRUST} || ${MOZILLA_VER:R:R} >= 54 >+BUILD_DEPENDS+= rust>=1.17.0:${RUST_PORT} > . if ${MOZILLA_VER:R:R} >= 51 >-BUILD_DEPENDS+= cargo>=0.16.0:devel/cargo >+BUILD_DEPENDS+= cargo>=0.18.0:devel/cargo > . endif > RUST_PORT?= lang/rust >+. if ${MOZILLA_VER:R:R} < 54 > MOZ_OPTIONS+= --enable-rust >+. endif > .else > MOZ_OPTIONS+= --disable-rust > .endif >@@ -403,6 +405,9 @@ MOZ_OPTIONS+= --enable-debug --disable-release > STRIP= # ports/184285 > .else > MOZ_OPTIONS+= --disable-debug --disable-debug-symbols --enable-release >+. if ${MOZILLA_VER:R:R} >= 56 >+MOZ_OPTIONS+= --enable-rust-simd >+. endif > .endif > > .if ${PORT_OPTIONS:MDTRACE} >diff --git a/www/firefox-i18n/Makefile b/www/firefox-i18n/Makefile >index 71a792182f3d..13031dbee3ed 100644 >--- a/www/firefox-i18n/Makefile >+++ b/www/firefox-i18n/Makefile >@@ -2,10 +2,10 @@ > # $FreeBSD$ > > PORTNAME= firefox-i18n >-PORTVERSION= 55.0.1 >+PORTVERSION= 56.0b2 > CATEGORIES= www > MASTER_SITES= MOZILLA/${PORTNAME:S|-i18n||}/releases/${DISTVERSION}/linux-i686/xpi \ >- MOZILLA/${PORTNAME:S|-i18n||}/candidates/${DISTVERSION}-candidates/build2/linux-i686/xpi >+ MOZILLA/${PORTNAME:S|-i18n||}/candidates/${DISTVERSION}-candidates/build1/linux-i686/xpi > PKGNAMEPREFIX= > DISTFILES= ${FIREFOX_I18N_:S/$/.xpi/} > DIST_SUBDIR= xpi/${DISTNAME} >@@ -15,7 +15,7 @@ COMMENT= Localized interface for Firefox > > EXTRACT_DEPENDS= zip:archivers/zip > >-USES= zip:infozip gecko:firefox,55,build >+USES= zip:infozip gecko:firefox,56,build > USE_XPI= firefox > > NO_ARCH= yes >diff --git a/www/firefox-i18n/distinfo b/www/firefox-i18n/distinfo >index 6d812b5c5d0c..4bf386a8980d 100644 >--- a/www/firefox-i18n/distinfo >+++ b/www/firefox-i18n/distinfo >@@ -1,191 +1,191 @@ >-TIMESTAMP = 1502312473 >-SHA256 (xpi/firefox-i18n-55.0.1/ach.xpi) = dd7814ceae9dfc8bb5f2f753caa4e1fe1710fd7acbfa561fda51a923c42a9c93 >-SIZE (xpi/firefox-i18n-55.0.1/ach.xpi) = 447504 >-SHA256 (xpi/firefox-i18n-55.0.1/af.xpi) = 45aec05be03e03c73e2d0179de621149dea373eb4622d956a2c54f1fc6b60a4a >-SIZE (xpi/firefox-i18n-55.0.1/af.xpi) = 448924 >-SHA256 (xpi/firefox-i18n-55.0.1/an.xpi) = 1c67b5ae972779f2208654272eca345a549c1e6aa5c59b15fd6e4c04785c3857 >-SIZE (xpi/firefox-i18n-55.0.1/an.xpi) = 468638 >-SHA256 (xpi/firefox-i18n-55.0.1/ar.xpi) = e15ae3685880f75b0dde0d691a6e6204698440192fc7136604c76d2dda08c3e2 >-SIZE (xpi/firefox-i18n-55.0.1/ar.xpi) = 492760 >-SHA256 (xpi/firefox-i18n-55.0.1/as.xpi) = bbd45adb073034d86bf520aae2aa78d2278489d20ebe359bd19dd9767aeafbfc >-SIZE (xpi/firefox-i18n-55.0.1/as.xpi) = 501508 >-SHA256 (xpi/firefox-i18n-55.0.1/ast.xpi) = 2b6aadfd0101ed1285fc5b6354a15cf7479c25b47a1819cdd80c94fcb26b66c3 >-SIZE (xpi/firefox-i18n-55.0.1/ast.xpi) = 460841 >-SHA256 (xpi/firefox-i18n-55.0.1/az.xpi) = d359f699a19722c0a65c1b3c2174c7c6219f01c366f156f036d23021831b4300 >-SIZE (xpi/firefox-i18n-55.0.1/az.xpi) = 475368 >-SHA256 (xpi/firefox-i18n-55.0.1/be.xpi) = 10dbc632413696bebec7a8c857ec37d121611a6ac3296df3155e17d6b156e9af >-SIZE (xpi/firefox-i18n-55.0.1/be.xpi) = 522575 >-SHA256 (xpi/firefox-i18n-55.0.1/bg.xpi) = 255ede1bcd7927e69c6a3f2c901abb33f567e7f77b017360bf93bd19509d61d4 >-SIZE (xpi/firefox-i18n-55.0.1/bg.xpi) = 520012 >-SHA256 (xpi/firefox-i18n-55.0.1/bn-BD.xpi) = 734613c4adb723ad3087db4921ac3c6b25ec2cb2834a34b42653ad373399e508 >-SIZE (xpi/firefox-i18n-55.0.1/bn-BD.xpi) = 535107 >-SHA256 (xpi/firefox-i18n-55.0.1/bn-IN.xpi) = d75e6896d2c8b83cc8bd63ea6c577a3dcccc9c4cebb12f56c3bfda5fb79daf5a >-SIZE (xpi/firefox-i18n-55.0.1/bn-IN.xpi) = 526354 >-SHA256 (xpi/firefox-i18n-55.0.1/br.xpi) = 528391063bff3899380fbdd6863434f340d089a5f800dae286929dd6ca2510c8 >-SIZE (xpi/firefox-i18n-55.0.1/br.xpi) = 457060 >-SHA256 (xpi/firefox-i18n-55.0.1/bs.xpi) = 88cc4aa3891e66397b01d7b750b3e932af677086c13d04c400e9b5966afed573 >-SIZE (xpi/firefox-i18n-55.0.1/bs.xpi) = 465026 >-SHA256 (xpi/firefox-i18n-55.0.1/ca.xpi) = daaa7ce4903db429821ba25889e75b9e7b11f7e320e2ae2e6c03ca1e20e01751 >-SIZE (xpi/firefox-i18n-55.0.1/ca.xpi) = 473018 >-SHA256 (xpi/firefox-i18n-55.0.1/cak.xpi) = 38bada639ddfb0d9abd166617363c2e333d7aa2e63c3d75f6856cd2eb0d31dee >-SIZE (xpi/firefox-i18n-55.0.1/cak.xpi) = 481774 >-SHA256 (xpi/firefox-i18n-55.0.1/cs.xpi) = 66196782f7151a01df153b9d763f25f49f035766342874577f586daacbe3a4f3 >-SIZE (xpi/firefox-i18n-55.0.1/cs.xpi) = 476809 >-SHA256 (xpi/firefox-i18n-55.0.1/cy.xpi) = ac9be82a4f0afdee6febc7cb4581c7f0ce3e900b48e27f00d6e2eb9b5a1e4618 >-SIZE (xpi/firefox-i18n-55.0.1/cy.xpi) = 458725 >-SHA256 (xpi/firefox-i18n-55.0.1/da.xpi) = 9829fe4ddb635f857b0b299bc752d554c00433750203a0e79d522db44a563ce1 >-SIZE (xpi/firefox-i18n-55.0.1/da.xpi) = 452604 >-SHA256 (xpi/firefox-i18n-55.0.1/de.xpi) = 1c8620fb483079be896c6a219429e0c13858d80678054bcaf9dc870ba783e5c4 >-SIZE (xpi/firefox-i18n-55.0.1/de.xpi) = 465990 >-SHA256 (xpi/firefox-i18n-55.0.1/dsb.xpi) = f1603c97d0ba802cce4563fb2107cce5197ff20abe6b1458767173f711d96916 >-SIZE (xpi/firefox-i18n-55.0.1/dsb.xpi) = 482081 >-SHA256 (xpi/firefox-i18n-55.0.1/el.xpi) = 8cb410e71bf96bc1e78fb9e1362ee9f6cc9622a5ad2041f100d2979f40b23d00 >-SIZE (xpi/firefox-i18n-55.0.1/el.xpi) = 539777 >-SHA256 (xpi/firefox-i18n-55.0.1/en-GB.xpi) = 2f5f058a2a721928bbd12c768765938d87ad6c37c072584d4811012bcbaa4fbe >-SIZE (xpi/firefox-i18n-55.0.1/en-GB.xpi) = 439269 >-SHA256 (xpi/firefox-i18n-55.0.1/en-US.xpi) = 7078baf35f5c02299683b1dcb3767bc796c9dc26a9dd649729ed4109b91fa8f4 >-SIZE (xpi/firefox-i18n-55.0.1/en-US.xpi) = 439814 >-SHA256 (xpi/firefox-i18n-55.0.1/en-ZA.xpi) = d0447449b12ce3c5325807b9a3f056be3815c58c839f11ea55c754f3bc87da86 >-SIZE (xpi/firefox-i18n-55.0.1/en-ZA.xpi) = 438621 >-SHA256 (xpi/firefox-i18n-55.0.1/eo.xpi) = b435b855b02c92bb80ab9f7388312c39c1b936ec3242b525ca50e8df41a9811c >-SIZE (xpi/firefox-i18n-55.0.1/eo.xpi) = 461140 >-SHA256 (xpi/firefox-i18n-55.0.1/es-AR.xpi) = 0712140958edc68a3050faa589cff1ac5525887d3309ed8ba24dda8f5b594fcf >-SIZE (xpi/firefox-i18n-55.0.1/es-AR.xpi) = 467619 >-SHA256 (xpi/firefox-i18n-55.0.1/es-CL.xpi) = 1b9162658325c6a3686056138ff5106f9829ddf842d9036ddc760b86c2d2b32a >-SIZE (xpi/firefox-i18n-55.0.1/es-CL.xpi) = 471599 >-SHA256 (xpi/firefox-i18n-55.0.1/es-ES.xpi) = c457a10bf90ea59af66f809fea67513a3762d3aacd9c8a0cd82235108b316959 >-SIZE (xpi/firefox-i18n-55.0.1/es-ES.xpi) = 359824 >-SHA256 (xpi/firefox-i18n-55.0.1/es-MX.xpi) = faea86e9b5f7c9e4e262108b27fe44a449859c9855c0d16b5e3ff2a78d67dd90 >-SIZE (xpi/firefox-i18n-55.0.1/es-MX.xpi) = 474245 >-SHA256 (xpi/firefox-i18n-55.0.1/et.xpi) = 8621792549cf4f6e7ae677577081727d95cd2108145e1396e6a7d6da5de74ee9 >-SIZE (xpi/firefox-i18n-55.0.1/et.xpi) = 454471 >-SHA256 (xpi/firefox-i18n-55.0.1/eu.xpi) = fb38c68ff5a351cba4c0e64ba0502328323241fc3393e0762674ce46cc419053 >-SIZE (xpi/firefox-i18n-55.0.1/eu.xpi) = 460419 >-SHA256 (xpi/firefox-i18n-55.0.1/fa.xpi) = 7b2b3856a1b6e02cf9671a5847aab6d2367bc1b44a576dca6b93824aec2f7561 >-SIZE (xpi/firefox-i18n-55.0.1/fa.xpi) = 511561 >-SHA256 (xpi/firefox-i18n-55.0.1/ff.xpi) = cae40f92930db2172446b5a33e8e3e8564738f615834e4485006ec930173530b >-SIZE (xpi/firefox-i18n-55.0.1/ff.xpi) = 455294 >-SHA256 (xpi/firefox-i18n-55.0.1/fi.xpi) = f57de383c38a423887b9b57f8a0cd8f861067bd1d86eea0a33b83928e8e3faeb >-SIZE (xpi/firefox-i18n-55.0.1/fi.xpi) = 453945 >-SHA256 (xpi/firefox-i18n-55.0.1/fr.xpi) = 202df2c44b9c248819c41b411f3380edad69244e506c1ec77e7833e75841e232 >-SIZE (xpi/firefox-i18n-55.0.1/fr.xpi) = 476668 >-SHA256 (xpi/firefox-i18n-55.0.1/fy-NL.xpi) = b7f9c5f0d4ffbaa29bf7b16e1f712e430fc489e5aa8c71f2e9d73ae97dc5a119 >-SIZE (xpi/firefox-i18n-55.0.1/fy-NL.xpi) = 469971 >-SHA256 (xpi/firefox-i18n-55.0.1/ga-IE.xpi) = e685e0d0c60499b209f4334d54cb45f947448edf24f7208804f81dc0fa6f5665 >-SIZE (xpi/firefox-i18n-55.0.1/ga-IE.xpi) = 481440 >-SHA256 (xpi/firefox-i18n-55.0.1/gd.xpi) = 6c05773dff34bc8175dbb517e79052ec18dbe4d3afc8fc2954bb1d4078f3bd9b >-SIZE (xpi/firefox-i18n-55.0.1/gd.xpi) = 469055 >-SHA256 (xpi/firefox-i18n-55.0.1/gl.xpi) = 10174252a20cd7cbceb587e2dc949a61fd9a43fce94c4e0629a7d6c9e295ef87 >-SIZE (xpi/firefox-i18n-55.0.1/gl.xpi) = 459111 >-SHA256 (xpi/firefox-i18n-55.0.1/gn.xpi) = 9963eac39e177d798969daa1559a54908f90234ef25c68061407661976482fbe >-SIZE (xpi/firefox-i18n-55.0.1/gn.xpi) = 476201 >-SHA256 (xpi/firefox-i18n-55.0.1/gu-IN.xpi) = decf4ce02bf2079beca9d91ce56c4be2cc806a6854170ffc203aa31880c83459 >-SIZE (xpi/firefox-i18n-55.0.1/gu-IN.xpi) = 498986 >-SHA256 (xpi/firefox-i18n-55.0.1/he.xpi) = 98cef48c565a8150dbe31aecbcaf3a63c541715ade1220ba37a68105e83556cb >-SIZE (xpi/firefox-i18n-55.0.1/he.xpi) = 479882 >-SHA256 (xpi/firefox-i18n-55.0.1/hi-IN.xpi) = 43859e5074151ba5571c2ea2a3a9b1957d4ca99e056c305da3e30d111b4d1ca1 >-SIZE (xpi/firefox-i18n-55.0.1/hi-IN.xpi) = 530571 >-SHA256 (xpi/firefox-i18n-55.0.1/hr.xpi) = 22fff17ae146db6f313fbde5f429d9b35e9a88fbade7351239e4054e6fb9da42 >-SIZE (xpi/firefox-i18n-55.0.1/hr.xpi) = 467992 >-SHA256 (xpi/firefox-i18n-55.0.1/hsb.xpi) = e38d8d9952a2be7f3bbf0cb15ecc1eb4f529e4c36c9f507d795a7fa99a0af156 >-SIZE (xpi/firefox-i18n-55.0.1/hsb.xpi) = 479798 >-SHA256 (xpi/firefox-i18n-55.0.1/hu.xpi) = 062b955c742a543d2b653e4879c90b7c2ff96372d3f55b1486c1953c9d7fd470 >-SIZE (xpi/firefox-i18n-55.0.1/hu.xpi) = 481645 >-SHA256 (xpi/firefox-i18n-55.0.1/hy-AM.xpi) = ea10f974acaf0006c851fc7879321f02900b6ba574e2cd1117a701e790ffef7a >-SIZE (xpi/firefox-i18n-55.0.1/hy-AM.xpi) = 520879 >-SHA256 (xpi/firefox-i18n-55.0.1/id.xpi) = 48a99906a98d0bc7f9220c4c648e6ebc5428a1b1fdf8041f7d8d17730efeafa1 >-SIZE (xpi/firefox-i18n-55.0.1/id.xpi) = 450290 >-SHA256 (xpi/firefox-i18n-55.0.1/is.xpi) = f3d8af34fb48721d53e06ddefe88047b5004e10640d0e0b9924bfbf535b7fed3 >-SIZE (xpi/firefox-i18n-55.0.1/is.xpi) = 464373 >-SHA256 (xpi/firefox-i18n-55.0.1/it.xpi) = b77325ec71144fbe280e369ec0e1dcf72867aff8602eb14102889e09d087822d >-SIZE (xpi/firefox-i18n-55.0.1/it.xpi) = 352941 >-SHA256 (xpi/firefox-i18n-55.0.1/ja.xpi) = 6b174b01ae0d4cd9101d88c8d5ec30a7394387e13ad8b1462a886368395de6d1 >-SIZE (xpi/firefox-i18n-55.0.1/ja.xpi) = 519764 >-SHA256 (xpi/firefox-i18n-55.0.1/ka.xpi) = e69009c27b8810db9e4f9327d7a85c9c07cf4fa1b650999ee71b2706257b3a7e >-SIZE (xpi/firefox-i18n-55.0.1/ka.xpi) = 493535 >-SHA256 (xpi/firefox-i18n-55.0.1/kab.xpi) = aaf82a38798f0a0af99fe3c0a66024d604ab62dcab1839ea8b92d1d7dc6b8cc1 >-SIZE (xpi/firefox-i18n-55.0.1/kab.xpi) = 470044 >-SHA256 (xpi/firefox-i18n-55.0.1/kk.xpi) = 3e52fb9036d0dacf71d831b472816eec29114b018da2ba2a7a64eafef70e9b2d >-SIZE (xpi/firefox-i18n-55.0.1/kk.xpi) = 526707 >-SHA256 (xpi/firefox-i18n-55.0.1/km.xpi) = e45c29be853d66afcd3b43f7d78cca8a4db7f1731d487161b57a043bf6f4d951 >-SIZE (xpi/firefox-i18n-55.0.1/km.xpi) = 540646 >-SHA256 (xpi/firefox-i18n-55.0.1/kn.xpi) = 6be0a26c8fae5e461fa45b6a3c574bce7689d0fed0571fdd12e738288d2341a2 >-SIZE (xpi/firefox-i18n-55.0.1/kn.xpi) = 538860 >-SHA256 (xpi/firefox-i18n-55.0.1/ko.xpi) = 8d2ba62b56df3e43c20e04d0920ca4608c4956e3590a6a23abe243ad8c597655 >-SIZE (xpi/firefox-i18n-55.0.1/ko.xpi) = 494547 >-SHA256 (xpi/firefox-i18n-55.0.1/lij.xpi) = f2d68cfb84305f9dc72b6fb04fe0f3bdfbdbc549d683cf2b8229263d97d565a1 >-SIZE (xpi/firefox-i18n-55.0.1/lij.xpi) = 458698 >-SHA256 (xpi/firefox-i18n-55.0.1/lt.xpi) = 275ff3a72b128b9db0413e0cade162a179a3a0fd702a41c94411bf74a69b97cd >-SIZE (xpi/firefox-i18n-55.0.1/lt.xpi) = 481082 >-SHA256 (xpi/firefox-i18n-55.0.1/lv.xpi) = 6c9c5244a1c5ba078c9740851b43f0de6d0d79afcd5c83b3b6dd81e3165fc9ef >-SIZE (xpi/firefox-i18n-55.0.1/lv.xpi) = 473736 >-SHA256 (xpi/firefox-i18n-55.0.1/mai.xpi) = 9b5b30fcc3f64e95c073c65cfb857bdbec62e3af630b5443220963b507f28fc4 >-SIZE (xpi/firefox-i18n-55.0.1/mai.xpi) = 517894 >-SHA256 (xpi/firefox-i18n-55.0.1/mk.xpi) = 1d33aacc5f3db9272a53b77c7aaab17cb03d3bba2480e90e9f4ae88ed178f277 >-SIZE (xpi/firefox-i18n-55.0.1/mk.xpi) = 500207 >-SHA256 (xpi/firefox-i18n-55.0.1/ml.xpi) = 585d1321d9e765203b1c693609001ed978868aadaa19c4a0f25ad1162c66f8bb >-SIZE (xpi/firefox-i18n-55.0.1/ml.xpi) = 540982 >-SHA256 (xpi/firefox-i18n-55.0.1/mr.xpi) = f567327d23cc88411c3dadb17744988ad4bc9157dcbb8d63d4e9013213fa5cd3 >-SIZE (xpi/firefox-i18n-55.0.1/mr.xpi) = 528249 >-SHA256 (xpi/firefox-i18n-55.0.1/ms.xpi) = 20e472acc73826653d0f6d73472919736b12cd682fc589cd65108878a0288f07 >-SIZE (xpi/firefox-i18n-55.0.1/ms.xpi) = 459191 >-SHA256 (xpi/firefox-i18n-55.0.1/my.xpi) = 6127217183acbd6272073ba7d2d63f27204a56cc91b0f6fe27a1a835cc3f879a >-SIZE (xpi/firefox-i18n-55.0.1/my.xpi) = 528097 >-SHA256 (xpi/firefox-i18n-55.0.1/nb-NO.xpi) = 951bc707774b4772115302e5e17f1951100eb818ecc663c472af3e214a1eae64 >-SIZE (xpi/firefox-i18n-55.0.1/nb-NO.xpi) = 457645 >-SHA256 (xpi/firefox-i18n-55.0.1/nl.xpi) = 4e79c3c23e2dc8612f94e8df7e535fe31b33996f974ddbb390b3531bfef38d80 >-SIZE (xpi/firefox-i18n-55.0.1/nl.xpi) = 461510 >-SHA256 (xpi/firefox-i18n-55.0.1/nn-NO.xpi) = e9f20af1ce0ba6b36dd79746292dfd900f939d8ce48b5d11147b66777738e415 >-SIZE (xpi/firefox-i18n-55.0.1/nn-NO.xpi) = 458457 >-SHA256 (xpi/firefox-i18n-55.0.1/or.xpi) = b4320830c582c73acee3e79d363c1867a136b36f2ebba32cf1f8a7b530218830 >-SIZE (xpi/firefox-i18n-55.0.1/or.xpi) = 511354 >-SHA256 (xpi/firefox-i18n-55.0.1/pa-IN.xpi) = fe4cc1ed5e1289b18eedf6d102a88460fd2cdb84eb60f7fc02588f5d18b1815b >-SIZE (xpi/firefox-i18n-55.0.1/pa-IN.xpi) = 498453 >-SHA256 (xpi/firefox-i18n-55.0.1/pl.xpi) = 0c7d6483a1240dadb2897dd47157456bede2a4387ff193032881db9b5bdbdee0 >-SIZE (xpi/firefox-i18n-55.0.1/pl.xpi) = 372430 >-SHA256 (xpi/firefox-i18n-55.0.1/pt-BR.xpi) = ac62ce753a160e25b5fd44a0e335fdd79bc392d870e6ac900768ab1781e66064 >-SIZE (xpi/firefox-i18n-55.0.1/pt-BR.xpi) = 462717 >-SHA256 (xpi/firefox-i18n-55.0.1/pt-PT.xpi) = 7426dd1a89ba871da9d966b29b9168ff345964b7d68d2163c86c1655c47e60e3 >-SIZE (xpi/firefox-i18n-55.0.1/pt-PT.xpi) = 465237 >-SHA256 (xpi/firefox-i18n-55.0.1/rm.xpi) = 864dca54a7dc2c6974bebaedf9042cbfbcced0a85de2aee0f9d80a232074df9f >-SIZE (xpi/firefox-i18n-55.0.1/rm.xpi) = 458265 >-SHA256 (xpi/firefox-i18n-55.0.1/ro.xpi) = 6cb6e1634a235fb2e46e2ff25f33f89c1c61114782a1c58f620d49d55de748ef >-SIZE (xpi/firefox-i18n-55.0.1/ro.xpi) = 462973 >-SHA256 (xpi/firefox-i18n-55.0.1/ru.xpi) = 39997f59a5710be0428496edbe6954625f3c321cb89a20c4eb1901a621cf2c3a >-SIZE (xpi/firefox-i18n-55.0.1/ru.xpi) = 530901 >-SHA256 (xpi/firefox-i18n-55.0.1/si.xpi) = c4cfa062a266c3ff7f5847dc060c78be9dd91a792f79a2092122ac377270876f >-SIZE (xpi/firefox-i18n-55.0.1/si.xpi) = 508353 >-SHA256 (xpi/firefox-i18n-55.0.1/sk.xpi) = 52e71b9050686130559e511c877bb06d76e7765903f31014b63621056e882eb1 >-SIZE (xpi/firefox-i18n-55.0.1/sk.xpi) = 487583 >-SHA256 (xpi/firefox-i18n-55.0.1/sl.xpi) = b9702991ebd8035610c341bc1b08136ac7711101632f5136dc7a1ea883e474f6 >-SIZE (xpi/firefox-i18n-55.0.1/sl.xpi) = 465760 >-SHA256 (xpi/firefox-i18n-55.0.1/son.xpi) = 779b7d472496361a860910ce86f7e7281bedf6bddef001923951b52f80e9ff1f >-SIZE (xpi/firefox-i18n-55.0.1/son.xpi) = 456959 >-SHA256 (xpi/firefox-i18n-55.0.1/sq.xpi) = 899db3ff59388671fef58e60add6f9fe349d0812c2bc4483637ddbe651943e54 >-SIZE (xpi/firefox-i18n-55.0.1/sq.xpi) = 470631 >-SHA256 (xpi/firefox-i18n-55.0.1/sr.xpi) = 97c5c450ddd4fb92da585011da59e962522bca2f731b739cd5c002012a607673 >-SIZE (xpi/firefox-i18n-55.0.1/sr.xpi) = 494878 >-SHA256 (xpi/firefox-i18n-55.0.1/sv-SE.xpi) = 28793b25536173166d37e248aeeb4f0374923a78e7401d906c9a206b68794a92 >-SIZE (xpi/firefox-i18n-55.0.1/sv-SE.xpi) = 466011 >-SHA256 (xpi/firefox-i18n-55.0.1/ta.xpi) = 3c261563af14eaacb71b18cec93c6bac8b52c4c8b2c6f8daa450ca999b59dd1d >-SIZE (xpi/firefox-i18n-55.0.1/ta.xpi) = 519998 >-SHA256 (xpi/firefox-i18n-55.0.1/te.xpi) = 836b79bf5d691cec5e6893b58b22d1c995d20627698dba516851e98c96d6e895 >-SIZE (xpi/firefox-i18n-55.0.1/te.xpi) = 542539 >-SHA256 (xpi/firefox-i18n-55.0.1/th.xpi) = 9fbce74883162f9330f38f5da6ed2c4b81e8a0eefd78b9bf59cc919714bfa343 >-SIZE (xpi/firefox-i18n-55.0.1/th.xpi) = 511903 >-SHA256 (xpi/firefox-i18n-55.0.1/tr.xpi) = df231571df6ce29eee1885630e9544ca333f33d7e09a14d93eea7c3e06ac5395 >-SIZE (xpi/firefox-i18n-55.0.1/tr.xpi) = 472160 >-SHA256 (xpi/firefox-i18n-55.0.1/uk.xpi) = 3373ec3addc81d5177157d3f16ab0e37c0ca7f97ddc56027a72bb5632314e95d >-SIZE (xpi/firefox-i18n-55.0.1/uk.xpi) = 526436 >-SHA256 (xpi/firefox-i18n-55.0.1/ur.xpi) = 0153a5af7e98c8a6e8afafb0bfd989ed71f05f12c05215bb3ff467af8614f7e6 >-SIZE (xpi/firefox-i18n-55.0.1/ur.xpi) = 520753 >-SHA256 (xpi/firefox-i18n-55.0.1/uz.xpi) = a15d82f940f696d6c70cb9d3d8b81d458c0936ccc95ff79d7d2e786536b9bf1e >-SIZE (xpi/firefox-i18n-55.0.1/uz.xpi) = 467671 >-SHA256 (xpi/firefox-i18n-55.0.1/vi.xpi) = 718514a6874900e2d8b78a3f5b71335ee4d67a42345bc1e101abada9f461bf89 >-SIZE (xpi/firefox-i18n-55.0.1/vi.xpi) = 476527 >-SHA256 (xpi/firefox-i18n-55.0.1/xh.xpi) = 33183835d979284be68c7904ec717fe1f92938a5dba067c7b7fb5e3eb5b0991c >-SIZE (xpi/firefox-i18n-55.0.1/xh.xpi) = 470719 >-SHA256 (xpi/firefox-i18n-55.0.1/zh-CN.xpi) = 56e42000a5528515e26962fe288c1571ca40cb671189a2496ab8d3a6de097472 >-SIZE (xpi/firefox-i18n-55.0.1/zh-CN.xpi) = 490383 >-SHA256 (xpi/firefox-i18n-55.0.1/zh-TW.xpi) = e5b94d27d2ef86e1945f4b8757a2f7149125b998f9a3316d0b4d1732646384c1 >-SIZE (xpi/firefox-i18n-55.0.1/zh-TW.xpi) = 489347 >+TIMESTAMP = 1502408043 >+SHA256 (xpi/firefox-i18n-56.0b2/ach.xpi) = 412d590806c83a0048e0e0fe90b55a05feb225f98d7ab7bd17ccbc8da4ea5d22 >+SIZE (xpi/firefox-i18n-56.0b2/ach.xpi) = 453652 >+SHA256 (xpi/firefox-i18n-56.0b2/af.xpi) = 492a985216b9991620c70a4aa67083afb27e5861821cca8c967e72cf0d50eab9 >+SIZE (xpi/firefox-i18n-56.0b2/af.xpi) = 454977 >+SHA256 (xpi/firefox-i18n-56.0b2/an.xpi) = 6894dd02211ddce20a4805eb5bbbbb469815599397f3df298c542f6e5275e4e6 >+SIZE (xpi/firefox-i18n-56.0b2/an.xpi) = 474624 >+SHA256 (xpi/firefox-i18n-56.0b2/ar.xpi) = d43ba5d761c86f6f72df9ba56fe8228490546cb41aff2efcdb1e0d465ccb8b5f >+SIZE (xpi/firefox-i18n-56.0b2/ar.xpi) = 499454 >+SHA256 (xpi/firefox-i18n-56.0b2/as.xpi) = 2299695121e34d4b55c62107d1ff7ddcf32a63aaf3f145fdeb461d1a8ddeac54 >+SIZE (xpi/firefox-i18n-56.0b2/as.xpi) = 507000 >+SHA256 (xpi/firefox-i18n-56.0b2/ast.xpi) = eeb3ea046af00cab26633a3a4d370e704dd9ce8a0a8fd50deb3907bb24997acd >+SIZE (xpi/firefox-i18n-56.0b2/ast.xpi) = 467915 >+SHA256 (xpi/firefox-i18n-56.0b2/az.xpi) = 8945fa6a28ee498cb23c401e7e4458cb007857fea7bace6cf6c890b5517497bc >+SIZE (xpi/firefox-i18n-56.0b2/az.xpi) = 483745 >+SHA256 (xpi/firefox-i18n-56.0b2/be.xpi) = 2c9df8ad9115952d87af9ffe6612e79c630ea7fe8310afa74e20699b8ab0bb76 >+SIZE (xpi/firefox-i18n-56.0b2/be.xpi) = 530147 >+SHA256 (xpi/firefox-i18n-56.0b2/bg.xpi) = f772aa0e3c8ba22b2311a8cda45cc8965889823bd6b0aac28a17e80cfc63e924 >+SIZE (xpi/firefox-i18n-56.0b2/bg.xpi) = 527558 >+SHA256 (xpi/firefox-i18n-56.0b2/bn-BD.xpi) = a8b4fff82480a173a0d20969e427bb9c5c30ec7dcac21ca56cc334c1e3674bec >+SIZE (xpi/firefox-i18n-56.0b2/bn-BD.xpi) = 541521 >+SHA256 (xpi/firefox-i18n-56.0b2/bn-IN.xpi) = edf7026aed76ecb633357cd5ccb6febdc54284a65a12f9cc6380fff2ef04b22f >+SIZE (xpi/firefox-i18n-56.0b2/bn-IN.xpi) = 533200 >+SHA256 (xpi/firefox-i18n-56.0b2/br.xpi) = 5c16c2b88700918bb472a21c97d0a5734a53beacbcc0af4c11ac2c818f22b6ad >+SIZE (xpi/firefox-i18n-56.0b2/br.xpi) = 463042 >+SHA256 (xpi/firefox-i18n-56.0b2/bs.xpi) = dc52da64489e662d76877d87e92cdedc15ff74795a5862bc2c09bfa88a7bafcb >+SIZE (xpi/firefox-i18n-56.0b2/bs.xpi) = 471016 >+SHA256 (xpi/firefox-i18n-56.0b2/ca.xpi) = 8908a3e4bce9cbbe8ba2b6cc0665aa94d67a86f403401f4f54854e8a5257fec2 >+SIZE (xpi/firefox-i18n-56.0b2/ca.xpi) = 478874 >+SHA256 (xpi/firefox-i18n-56.0b2/cak.xpi) = 7baf225b38756d018421bb2348cb6b0a9b05332b7b66c5fa79b6fcf43ff96188 >+SIZE (xpi/firefox-i18n-56.0b2/cak.xpi) = 488264 >+SHA256 (xpi/firefox-i18n-56.0b2/cs.xpi) = 9bfc529442743cf8774aede1ca0453a39d815d9db359789e162956464689575a >+SIZE (xpi/firefox-i18n-56.0b2/cs.xpi) = 483852 >+SHA256 (xpi/firefox-i18n-56.0b2/cy.xpi) = 8aa5b4f94ade896e3b530a7c0eb80af98847fac29e8a823e8c1f30bd4302afd4 >+SIZE (xpi/firefox-i18n-56.0b2/cy.xpi) = 465054 >+SHA256 (xpi/firefox-i18n-56.0b2/da.xpi) = 63981fb0f02d05855b8b96fcac3d86c2ffaacb332f606117f44bc36198bcfa7b >+SIZE (xpi/firefox-i18n-56.0b2/da.xpi) = 458855 >+SHA256 (xpi/firefox-i18n-56.0b2/de.xpi) = 480cb992987c94577f7f0fb1aa522b24dbaca357ae00f1390b132b8875b0e350 >+SIZE (xpi/firefox-i18n-56.0b2/de.xpi) = 472957 >+SHA256 (xpi/firefox-i18n-56.0b2/dsb.xpi) = 8872d7e4a4e8ef858db9ffdbdf49dbb022a2a9df18904581544ab492dd22966e >+SIZE (xpi/firefox-i18n-56.0b2/dsb.xpi) = 488655 >+SHA256 (xpi/firefox-i18n-56.0b2/el.xpi) = 7729999f17bc385901ffdaa8c063434b62306a36619c1cc49ab2bf15b3d30453 >+SIZE (xpi/firefox-i18n-56.0b2/el.xpi) = 552883 >+SHA256 (xpi/firefox-i18n-56.0b2/en-GB.xpi) = 81a4f78ef57b46b705fed1d6ed7679fb5bd5fdc764125ebc8184b491458a0040 >+SIZE (xpi/firefox-i18n-56.0b2/en-GB.xpi) = 446124 >+SHA256 (xpi/firefox-i18n-56.0b2/en-US.xpi) = 4c176fa8afd30fe128ab7165488f13e5d6e03836f10148b5cd58714ad012c6ee >+SIZE (xpi/firefox-i18n-56.0b2/en-US.xpi) = 445701 >+SHA256 (xpi/firefox-i18n-56.0b2/en-ZA.xpi) = 7e4984f7f32c7699b9ff30417b51eda74d16b7b2bab3601738bf5d964ee39b60 >+SIZE (xpi/firefox-i18n-56.0b2/en-ZA.xpi) = 444667 >+SHA256 (xpi/firefox-i18n-56.0b2/eo.xpi) = 0bd84a11d460b64b207b0b9ae5645f796f7dcc497dec202774daaa3b89f7f8e7 >+SIZE (xpi/firefox-i18n-56.0b2/eo.xpi) = 467843 >+SHA256 (xpi/firefox-i18n-56.0b2/es-AR.xpi) = 1991f29026474146746ee71a5ef86cbb1356cb598342e329f93aad3ff4615fe1 >+SIZE (xpi/firefox-i18n-56.0b2/es-AR.xpi) = 474190 >+SHA256 (xpi/firefox-i18n-56.0b2/es-CL.xpi) = b00006c35422638864ab2ba0d159e0a23cab15c2781af4a3ed3cf34e3bdaa747 >+SIZE (xpi/firefox-i18n-56.0b2/es-CL.xpi) = 478668 >+SHA256 (xpi/firefox-i18n-56.0b2/es-ES.xpi) = d741a9d9099364d5b2c92c86f80a0c09dd3b78c6404097b007c74906a2f6a33d >+SIZE (xpi/firefox-i18n-56.0b2/es-ES.xpi) = 364379 >+SHA256 (xpi/firefox-i18n-56.0b2/es-MX.xpi) = b6b8b8e0647232d712151b32e5efb355249808f5bd47a3aee103296cce719c6c >+SIZE (xpi/firefox-i18n-56.0b2/es-MX.xpi) = 481315 >+SHA256 (xpi/firefox-i18n-56.0b2/et.xpi) = 25b5f1a98d5fe4c6dc81d412d976dc79f7da9d0a2ed62fe6df21ef4691b4af1c >+SIZE (xpi/firefox-i18n-56.0b2/et.xpi) = 462028 >+SHA256 (xpi/firefox-i18n-56.0b2/eu.xpi) = de108c9c065983c8c9c6bb1bf3d2dd55a515a687f0e4b35f0164b06df414c279 >+SIZE (xpi/firefox-i18n-56.0b2/eu.xpi) = 466668 >+SHA256 (xpi/firefox-i18n-56.0b2/fa.xpi) = 898110bc2bd25a1f9fcda81b02c95b9a464993e12b44bcc21c3abb415ddf8184 >+SIZE (xpi/firefox-i18n-56.0b2/fa.xpi) = 517415 >+SHA256 (xpi/firefox-i18n-56.0b2/ff.xpi) = 760b1035bf7d29ade6b31a848cf791b366957203ce49ab774998f45eabce05f0 >+SIZE (xpi/firefox-i18n-56.0b2/ff.xpi) = 461860 >+SHA256 (xpi/firefox-i18n-56.0b2/fi.xpi) = e5f9bd3526be82f67f03f091eb513b3532c206ce140e7e58832787ca8fbe1593 >+SIZE (xpi/firefox-i18n-56.0b2/fi.xpi) = 461217 >+SHA256 (xpi/firefox-i18n-56.0b2/fr.xpi) = a3f4f53aae25570f6d316a60cfe735a5bb1acad6222f18ed776813fc87e6ae2f >+SIZE (xpi/firefox-i18n-56.0b2/fr.xpi) = 483323 >+SHA256 (xpi/firefox-i18n-56.0b2/fy-NL.xpi) = 8700c551364f445fbda68e5e97f4926a15c4da32d0f238aee2ca5eb2b96238dc >+SIZE (xpi/firefox-i18n-56.0b2/fy-NL.xpi) = 476804 >+SHA256 (xpi/firefox-i18n-56.0b2/ga-IE.xpi) = 489847a798fe28c3333c1d6d225ee0c87ac6d389ccbd2cd04b2092eb2b87ce62 >+SIZE (xpi/firefox-i18n-56.0b2/ga-IE.xpi) = 488128 >+SHA256 (xpi/firefox-i18n-56.0b2/gd.xpi) = a321811a4f5b051cc021d96516f6e2e104bccbeecf5ecc4913f62aa305cf0746 >+SIZE (xpi/firefox-i18n-56.0b2/gd.xpi) = 475688 >+SHA256 (xpi/firefox-i18n-56.0b2/gl.xpi) = 2bd25e6a349b56045f5bc14247022908a92b5d7c6e42edd6c3b502569e1bbf9d >+SIZE (xpi/firefox-i18n-56.0b2/gl.xpi) = 465231 >+SHA256 (xpi/firefox-i18n-56.0b2/gn.xpi) = 5ac7af26986fbda50aeae171acf60c6d3a067f7421f765aed76087a76dbebe4f >+SIZE (xpi/firefox-i18n-56.0b2/gn.xpi) = 484550 >+SHA256 (xpi/firefox-i18n-56.0b2/gu-IN.xpi) = 1b9c99da6217394db4117fc6af62ec380ff8bbbb2aee58ad5c85fd1bf76aee8d >+SIZE (xpi/firefox-i18n-56.0b2/gu-IN.xpi) = 512486 >+SHA256 (xpi/firefox-i18n-56.0b2/he.xpi) = ba17825233eddb38378ccc6d65f8f06c9e5d0c1a63c00cf9b14c5adaf8738edb >+SIZE (xpi/firefox-i18n-56.0b2/he.xpi) = 487257 >+SHA256 (xpi/firefox-i18n-56.0b2/hi-IN.xpi) = c460aac15419564e5622f0fbec5584543fb75ceb0dc5e5edf41522e3590ec9d1 >+SIZE (xpi/firefox-i18n-56.0b2/hi-IN.xpi) = 535965 >+SHA256 (xpi/firefox-i18n-56.0b2/hr.xpi) = bef1b02de45ff7890b33ce139c6452ea04e3d45e670950020462438f9d1566c9 >+SIZE (xpi/firefox-i18n-56.0b2/hr.xpi) = 473820 >+SHA256 (xpi/firefox-i18n-56.0b2/hsb.xpi) = 2835c02a078f136b55287ecb498458200684642ed7f2c766ae6ebb186aaa3cbe >+SIZE (xpi/firefox-i18n-56.0b2/hsb.xpi) = 486353 >+SHA256 (xpi/firefox-i18n-56.0b2/hu.xpi) = d6c073f52cd2f89cdc8f0390249f13db3892555e444d3d870f1ccc56be20561a >+SIZE (xpi/firefox-i18n-56.0b2/hu.xpi) = 487561 >+SHA256 (xpi/firefox-i18n-56.0b2/hy-AM.xpi) = 2339c238812a85a3dbe2d1fbd181c7cd9bc74269e2bd3beb296c444e00ffbb99 >+SIZE (xpi/firefox-i18n-56.0b2/hy-AM.xpi) = 526461 >+SHA256 (xpi/firefox-i18n-56.0b2/id.xpi) = 67584ac2610826d818cf514ad19dc2a4dd8f12368fecec9d442c9cd608e8fd25 >+SIZE (xpi/firefox-i18n-56.0b2/id.xpi) = 457829 >+SHA256 (xpi/firefox-i18n-56.0b2/is.xpi) = 127e543846495b445b0b30f945167ac96d70d259b72ce5940ae566e261afe7ff >+SIZE (xpi/firefox-i18n-56.0b2/is.xpi) = 466205 >+SHA256 (xpi/firefox-i18n-56.0b2/it.xpi) = b23dc0a8f78e02c1240f977f92243e981ef4c42bb7679508d7a920d78b356f5f >+SIZE (xpi/firefox-i18n-56.0b2/it.xpi) = 357457 >+SHA256 (xpi/firefox-i18n-56.0b2/ja.xpi) = 127f303ae88d3c947270514148d301c2480e56c9d42d504fc1cf05aa3495e509 >+SIZE (xpi/firefox-i18n-56.0b2/ja.xpi) = 526423 >+SHA256 (xpi/firefox-i18n-56.0b2/ka.xpi) = 9124e0792edfee04b48d0674704f667a561a5c3162f00a0a08e12f38efab1081 >+SIZE (xpi/firefox-i18n-56.0b2/ka.xpi) = 507862 >+SHA256 (xpi/firefox-i18n-56.0b2/kab.xpi) = 36487938f36d9226dd49f867b1f3828e6d179ae3cd8fea3099b36dd63da87a64 >+SIZE (xpi/firefox-i18n-56.0b2/kab.xpi) = 476177 >+SHA256 (xpi/firefox-i18n-56.0b2/kk.xpi) = 46e085732ef0f3b81c688ccfd9153bf997846ad2da6d37ff4c6a4b28d96761a2 >+SIZE (xpi/firefox-i18n-56.0b2/kk.xpi) = 533694 >+SHA256 (xpi/firefox-i18n-56.0b2/km.xpi) = 06dc4d42f14a882d12778d3e924d2078dd412e997b118345d02208a27748641e >+SIZE (xpi/firefox-i18n-56.0b2/km.xpi) = 548107 >+SHA256 (xpi/firefox-i18n-56.0b2/kn.xpi) = a25f35cc2d6b3cf120edde1a87155cc225cf8f377049abb4a8f29219138aed95 >+SIZE (xpi/firefox-i18n-56.0b2/kn.xpi) = 544237 >+SHA256 (xpi/firefox-i18n-56.0b2/ko.xpi) = 6e857e42d809e4093fbbe609c056a2693a857658b04cbadcdbc0df392198a4de >+SIZE (xpi/firefox-i18n-56.0b2/ko.xpi) = 501657 >+SHA256 (xpi/firefox-i18n-56.0b2/lij.xpi) = 712a0a2be68a5ea95059eac7c4cfd6fa570836aa1ce1fa91581d918ad3a29988 >+SIZE (xpi/firefox-i18n-56.0b2/lij.xpi) = 466033 >+SHA256 (xpi/firefox-i18n-56.0b2/lt.xpi) = ab6f39c8353ed98241047491e813bf6436b7bc525df7c4ef0b45723b4136b067 >+SIZE (xpi/firefox-i18n-56.0b2/lt.xpi) = 487514 >+SHA256 (xpi/firefox-i18n-56.0b2/lv.xpi) = a0c9763f769f42189725f2d43e2bf10dba9e3f10bce56217a9743095e9adc44d >+SIZE (xpi/firefox-i18n-56.0b2/lv.xpi) = 480799 >+SHA256 (xpi/firefox-i18n-56.0b2/mai.xpi) = 7139c3526d615b8049c250cea8e9265d3a3e5f43553b79c4062fa3d00f6a40af >+SIZE (xpi/firefox-i18n-56.0b2/mai.xpi) = 523460 >+SHA256 (xpi/firefox-i18n-56.0b2/mk.xpi) = 89fde87732e0cb08f505d014e4e50308adbea5ba282046c5bf4d8224c6824f3e >+SIZE (xpi/firefox-i18n-56.0b2/mk.xpi) = 506216 >+SHA256 (xpi/firefox-i18n-56.0b2/ml.xpi) = dc49a4a04e31df5bb6ddf97c8e57c207ea45d8bdec7748db88a8bae3c768254d >+SIZE (xpi/firefox-i18n-56.0b2/ml.xpi) = 546308 >+SHA256 (xpi/firefox-i18n-56.0b2/mr.xpi) = 28c6a6e83d0de7340f8a3db9625b76bc40c40662f7869256d5068deec5cb4eda >+SIZE (xpi/firefox-i18n-56.0b2/mr.xpi) = 535225 >+SHA256 (xpi/firefox-i18n-56.0b2/ms.xpi) = e5887bb23ff6dbd4c737097363b8b0553dab51719d20856968a160ab9010baeb >+SIZE (xpi/firefox-i18n-56.0b2/ms.xpi) = 465292 >+SHA256 (xpi/firefox-i18n-56.0b2/my.xpi) = 3c2ba0009e2af5f16b53b19291e156d42dba42e6e60352c1d111c203f1c279f7 >+SIZE (xpi/firefox-i18n-56.0b2/my.xpi) = 535485 >+SHA256 (xpi/firefox-i18n-56.0b2/nb-NO.xpi) = c30f9792dad9f3dc3bc58d09ceb182ee16950c21bf7240102672fd27f00ead2c >+SIZE (xpi/firefox-i18n-56.0b2/nb-NO.xpi) = 464328 >+SHA256 (xpi/firefox-i18n-56.0b2/nl.xpi) = dd801df2eca1c3d066b10a11be6f4cac923b55e1c3ebe005a88219a27c41f405 >+SIZE (xpi/firefox-i18n-56.0b2/nl.xpi) = 467817 >+SHA256 (xpi/firefox-i18n-56.0b2/nn-NO.xpi) = 520f5d3c4d3fb14f8be937ef244e23a151b600566d721dbf2cc4952a3ada2e0c >+SIZE (xpi/firefox-i18n-56.0b2/nn-NO.xpi) = 464961 >+SHA256 (xpi/firefox-i18n-56.0b2/or.xpi) = 10b34d93c44f289062ea509aa98491680ecf70c80631ab1b13e3b4b15307e5f3 >+SIZE (xpi/firefox-i18n-56.0b2/or.xpi) = 516928 >+SHA256 (xpi/firefox-i18n-56.0b2/pa-IN.xpi) = 527c19109c2e15f3fa21632af7c30c39390ca20379ca79589e129b26737115dd >+SIZE (xpi/firefox-i18n-56.0b2/pa-IN.xpi) = 507796 >+SHA256 (xpi/firefox-i18n-56.0b2/pl.xpi) = 9538d47022051a2744dcbe8564dd400ddd451f6b759558a4db7f3611704825e3 >+SIZE (xpi/firefox-i18n-56.0b2/pl.xpi) = 377749 >+SHA256 (xpi/firefox-i18n-56.0b2/pt-BR.xpi) = 09dfca88187e2885ba07639ec4abe0bb13f7a601f1d2e9ebf370c978b5346855 >+SIZE (xpi/firefox-i18n-56.0b2/pt-BR.xpi) = 469701 >+SHA256 (xpi/firefox-i18n-56.0b2/pt-PT.xpi) = 86d050654d9d95e92c58a47f5757bded2e27abc2b6505c3dca7ac8224d6f2d6a >+SIZE (xpi/firefox-i18n-56.0b2/pt-PT.xpi) = 471535 >+SHA256 (xpi/firefox-i18n-56.0b2/rm.xpi) = 7f5ba090ffb44f57e23bfc34fc8f82019a84019758d0080cc95a74c172b03ace >+SIZE (xpi/firefox-i18n-56.0b2/rm.xpi) = 466932 >+SHA256 (xpi/firefox-i18n-56.0b2/ro.xpi) = 345b91e81f1fc0683943e6b1120fca0f0b75f032e0dfae5edc11679a62968604 >+SIZE (xpi/firefox-i18n-56.0b2/ro.xpi) = 469356 >+SHA256 (xpi/firefox-i18n-56.0b2/ru.xpi) = 79dc589f689b5809ff4411259214db6b8681dc5526ab0885c741697bb01b0eef >+SIZE (xpi/firefox-i18n-56.0b2/ru.xpi) = 540181 >+SHA256 (xpi/firefox-i18n-56.0b2/si.xpi) = 81a80d73e28a7cdfa4aad3fe1a2a5339b47de72986671164b258e48fab1a3fd3 >+SIZE (xpi/firefox-i18n-56.0b2/si.xpi) = 514681 >+SHA256 (xpi/firefox-i18n-56.0b2/sk.xpi) = c629771b649d636da592e4de1c452f384f100ad97578085f42ff578c3aeed92d >+SIZE (xpi/firefox-i18n-56.0b2/sk.xpi) = 494327 >+SHA256 (xpi/firefox-i18n-56.0b2/sl.xpi) = e6dc80a580493bb4bf566d9366b378a5a05e9b6a0344c38ed2b10cee4eb7c924 >+SIZE (xpi/firefox-i18n-56.0b2/sl.xpi) = 472564 >+SHA256 (xpi/firefox-i18n-56.0b2/son.xpi) = e34c7e0333bf7484b6eaba7868025707d3ac6d88fdabff38f5e8a6207f5e1e2a >+SIZE (xpi/firefox-i18n-56.0b2/son.xpi) = 463080 >+SHA256 (xpi/firefox-i18n-56.0b2/sq.xpi) = afc266e4047dee27345c0a6444b4ca92ab52c22981fe221ea85771bde3728bc6 >+SIZE (xpi/firefox-i18n-56.0b2/sq.xpi) = 478090 >+SHA256 (xpi/firefox-i18n-56.0b2/sr.xpi) = bcefd7cb107a92ebb36b5ed80679adce44cff27b484ac5a5dc0a9d10fd1162ce >+SIZE (xpi/firefox-i18n-56.0b2/sr.xpi) = 503249 >+SHA256 (xpi/firefox-i18n-56.0b2/sv-SE.xpi) = 1b9dc86f9d0079599aac0a5442a5dfc885df4f6d32da781208d414c675566c3b >+SIZE (xpi/firefox-i18n-56.0b2/sv-SE.xpi) = 472906 >+SHA256 (xpi/firefox-i18n-56.0b2/ta.xpi) = 6c58721853c044a51a57da6296b434757443a731954127dc000ee93195344cd0 >+SIZE (xpi/firefox-i18n-56.0b2/ta.xpi) = 529407 >+SHA256 (xpi/firefox-i18n-56.0b2/te.xpi) = 159cbe9398fe3b4b35f8ff4cc5f59f38af708b8c3ab3014dbf51da27385f4bd7 >+SIZE (xpi/firefox-i18n-56.0b2/te.xpi) = 548885 >+SHA256 (xpi/firefox-i18n-56.0b2/th.xpi) = 3d0527bf8d4e123e99fc9dc27e3e5ef44706fa4d03e3cebb3ef29ddf327fcc44 >+SIZE (xpi/firefox-i18n-56.0b2/th.xpi) = 519059 >+SHA256 (xpi/firefox-i18n-56.0b2/tr.xpi) = 11586e465484b5590370f22483ed1418ba1b4d5ba649543addc60a19a4830cca >+SIZE (xpi/firefox-i18n-56.0b2/tr.xpi) = 479826 >+SHA256 (xpi/firefox-i18n-56.0b2/uk.xpi) = fe544ee562f63790d7e8e4b6b3191fbc78e8e0842781908ce69e8d5423315846 >+SIZE (xpi/firefox-i18n-56.0b2/uk.xpi) = 534199 >+SHA256 (xpi/firefox-i18n-56.0b2/ur.xpi) = a25c8ed3d6cb5d9d0e42f107e01561d04f07d1976c4d3f9101578780404f245a >+SIZE (xpi/firefox-i18n-56.0b2/ur.xpi) = 526109 >+SHA256 (xpi/firefox-i18n-56.0b2/uz.xpi) = 8cca61c59f1153b82bcf88bae6e308154ca923fb46e2726d4fe62eb07043637c >+SIZE (xpi/firefox-i18n-56.0b2/uz.xpi) = 473862 >+SHA256 (xpi/firefox-i18n-56.0b2/vi.xpi) = 925663ce548661100daf9a22a84a00c587769547fa7b0a157c9b2a7118eac80e >+SIZE (xpi/firefox-i18n-56.0b2/vi.xpi) = 485059 >+SHA256 (xpi/firefox-i18n-56.0b2/xh.xpi) = 7321e4b31ece1a339f3cd57f23c8fa69686974ae6b8c0b42c5ee85b7b2a60abf >+SIZE (xpi/firefox-i18n-56.0b2/xh.xpi) = 476601 >+SHA256 (xpi/firefox-i18n-56.0b2/zh-CN.xpi) = c504c88a732df0ef57e6edbfc9af7e32d45c1e05c0963f37e623b2477dc13ce2 >+SIZE (xpi/firefox-i18n-56.0b2/zh-CN.xpi) = 497730 >+SHA256 (xpi/firefox-i18n-56.0b2/zh-TW.xpi) = 5dd431303a5f38b590ec4baeef91ea11e20de72baa67fe4562678080f0dfe02a >+SIZE (xpi/firefox-i18n-56.0b2/zh-TW.xpi) = 496503 >diff --git a/www/firefox/Makefile b/www/firefox/Makefile >index 27c89d77faaa..cc242ae8b307 100644 >--- a/www/firefox/Makefile >+++ b/www/firefox/Makefile >@@ -2,30 +2,32 @@ > # $FreeBSD$ > > PORTNAME= firefox >-DISTVERSION= 55.0.1 >+DISTVERSION= 56.0b2 > DISTVERSIONSUFFIX=.source > PORTEPOCH= 1 > CATEGORIES= www ipv6 > MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ >- MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build2/source >+ MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/source > > MAINTAINER= gecko@FreeBSD.org > COMMENT= Web browser based on the browser portion of Mozilla > >-BUILD_DEPENDS= nspr>=4.15:devel/nspr \ >- nss>=3.31.1:security/nss \ >- libevent>=2.0.22:devel/libevent \ >- harfbuzz>=1.4.6:print/harfbuzz \ >+BUILD_DEPENDS= nspr>=4.16:devel/nspr \ >+ nss>=3.32:security/nss \ >+ libevent>=2.1.8:devel/libevent \ >+ harfbuzz>=1.4.7:print/harfbuzz \ > graphite2>=1.3.10:graphics/graphite2 \ >- png>=1.6.28:graphics/png \ >+ png>=1.6.31:graphics/png \ > libvorbis>=1.3.5,3:audio/libvorbis \ > libvpx>=1.5.0:multimedia/libvpx \ >- sqlite3>=3.19.2:databases/sqlite3 \ >+ sqlite3>=3.19.3:databases/sqlite3 \ > ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3 \ > v4l_compat>0:multimedia/v4l_compat \ > autoconf-2.13:devel/autoconf213 \ > yasm:devel/yasm \ >+ llvm40>0:devel/llvm40 \ > zip:archivers/zip >+# icu>=59.1,1:devel/icu \ > # soundtouch>=1.9.0:audio/soundtouch \ > > LIB_DEPENDS= libv4l2.so:multimedia/libv4l >@@ -33,7 +35,7 @@ LIB_DEPENDS= libv4l2.so:multimedia/libv4l > USE_GECKO= gecko > CONFLICTS_INSTALL= firefox-esr-45.* firefox-esr-3[18].* firefox-esr-24.* > MOZ_PKGCONFIG_FILES= # empty >-USE_MOZILLA= -soundtouch >+USE_MOZILLA= -icu -soundtouch # XXX ports/218788 > MOZILLA_NAME= Firefox > > USE_GL= gl >@@ -41,16 +43,13 @@ USES= tar:xz > > FIREFOX_ICON= ${MOZILLA}.png > FIREFOX_ICON_SRC= ${PREFIX}/lib/${MOZILLA}/browser/chrome/icons/default/default48.png >+MOZ_EXPORT= BINDGEN_CFLAGS="-isystem${LOCALBASE}/include/nspr \ >+ -isystem${LOCALBASE}/include/pixman-1" # XXX bug 1341234 > MOZ_OPTIONS= --enable-application=browser \ > --enable-official-branding > >-OPTIONS_DEFINE= RUST > OPTIONS_DEFAULT= BUNDLED_CAIRO > OPTIONS_EXCLUDE= GNOMEUI >-# XXX lang/rust and devel/cargo currently build only on these platforms >-OPTIONS_DEFAULT_aarch64=RUST >-OPTIONS_DEFAULT_amd64= RUST >-OPTIONS_DEFAULT_i386= RUST > > .include "${.CURDIR}/../../www/firefox/Makefile.options" > >diff --git a/www/firefox/distinfo b/www/firefox/distinfo >index 59e213e9f265..e80e71cbc55b 100644 >--- a/www/firefox/distinfo >+++ b/www/firefox/distinfo >@@ -1,3 +1,3 @@ >-TIMESTAMP = 1502312473 >-SHA256 (firefox-55.0.1.source.tar.xz) = 827c26ed1940ce22aeeec98120cbe1a415365929a9186a0bc3c4c17726a9a9d3 >-SIZE (firefox-55.0.1.source.tar.xz) = 236278024 >+TIMESTAMP = 1502408043 >+SHA256 (firefox-56.0b2.source.tar.xz) = 08ff303253de25b2794f59c96332f2014e294445ec0d03906b6345a96a6c1959 >+SIZE (firefox-56.0b2.source.tar.xz) = 253745300 >diff --git a/www/firefox/files/patch-bug1312182 b/www/firefox/files/patch-bug1312182 >deleted file mode 100644 >index 9c2b65f06d65..000000000000 >--- a/www/firefox/files/patch-bug1312182 >+++ /dev/null >@@ -1,376 +0,0 @@ >-commit 0d02dac1638ad >-Author: Alessio Placitelli <alessio.placitelli@gmail.com> >-Date: Tue May 30 10:42:42 2017 +0200 >- >- Bug 1312182 - Consolidate the uses of MOZ_TELEMETRY_REPORTING in the code. r=flod,gfritzsche,jaws >- >- The MOZ_TELEMETRY_REPORTING define does not control whether or not Telemetry is enabled >- but rather if it will send the gathered data to Mozilla servers. We still want to >- display the about:preferences options and let developers know about this behaviour. >- Please note that this patch is not changing any behaviour: it's only making it explicit >- by showing the options as disabled rather than hiding them. >- >- MozReview-Commit-ID: 7A0y0E0hm0Q >- >- --HG-- >- extra : rebase_source : 36d1a7f5ec5c05b43731daf9507d3068fe7674ee >---- >- browser/base/content/baseMenuOverlay.xul | 2 +- >- browser/components/nsBrowserGlue.js | 8 +-- >- .../components/preferences/in-content-new/main.xul | 2 - >- .../preferences/in-content-new/privacy.js | 32 +++++------ >- .../preferences/in-content-new/privacy.xul | 14 ++--- >- .../components/preferences/in-content/advanced.js | 63 +++++++++++----------- >- .../components/preferences/in-content/advanced.xul | 7 ++- >- .../chrome/browser/preferences-old/advanced.dtd | 5 ++ >- .../en-US/chrome/browser/preferences/advanced.dtd | 5 ++ >- 9 files changed, 67 insertions(+), 71 deletions(-) >- >-diff --git browser/base/content/baseMenuOverlay.xul browser/base/content/baseMenuOverlay.xul >-index 1befa2bb66cc..804bbdebb797 100644 >---- browser/base/content/baseMenuOverlay.xul >-+++ browser/base/content/baseMenuOverlay.xul >-@@ -61,7 +61,7 @@ >- onclick="checkForMiddleClick(this, event);" >- label="&helpKeyboardShortcuts.label;" >- accesskey="&helpKeyboardShortcuts.accesskey;"/> >--#ifdef MOZ_TELEMETRY_REPORTING >-+#ifdef MOZ_SERVICES_HEALTHREPORT >- <menuitem id="healthReport" >- label="&healthReport2.label;" >- accesskey="&healthReport2.accesskey;" >-diff --git browser/components/nsBrowserGlue.js browser/components/nsBrowserGlue.js >-index 554c279356b9..1c21bf4c4323 100644 >---- browser/components/nsBrowserGlue.js >-+++ browser/components/nsBrowserGlue.js >-@@ -528,9 +528,7 @@ BrowserGlue.prototype = { >- os.addObserver(this, "distribution-customization-complete"); >- os.addObserver(this, "handle-xul-text-link"); >- os.addObserver(this, "profile-before-change"); >-- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >-- os.addObserver(this, "keyword-search"); >-- } >-+ os.addObserver(this, "keyword-search"); >- os.addObserver(this, "browser-search-engine-modified"); >- os.addObserver(this, "restart-in-safe-mode"); >- os.addObserver(this, "flash-plugin-hang"); >-@@ -583,9 +581,7 @@ BrowserGlue.prototype = { >- os.removeObserver(this, "places-database-locked"); >- os.removeObserver(this, "handle-xul-text-link"); >- os.removeObserver(this, "profile-before-change"); >-- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >-- os.removeObserver(this, "keyword-search"); >-- } >-+ os.removeObserver(this, "keyword-search"); >- os.removeObserver(this, "browser-search-engine-modified"); >- os.removeObserver(this, "flash-plugin-hang"); >- os.removeObserver(this, "xpi-signature-changed"); >-diff --git browser/components/preferences/in-content-new/main.xul browser/components/preferences/in-content-new/main.xul >-index e89ee1891c91..8672557bede2 100644 >---- browser/components/preferences/in-content-new/main.xul >-+++ browser/components/preferences/in-content-new/main.xul >-@@ -183,11 +183,9 @@ >- name="layout.spellcheckDefault" >- type="int"/> >- >--#ifdef MOZ_TELEMETRY_REPORTING >- <preference id="toolkit.telemetry.enabled" >- name="toolkit.telemetry.enabled" >- type="bool"/> >--#endif >- >- <preference id="browser.preferences.defaultPerformanceSettings.enabled" >- name="browser.preferences.defaultPerformanceSettings.enabled" >-diff --git browser/components/preferences/in-content-new/privacy.js browser/components/preferences/in-content-new/privacy.js >-index be057bfad611..73f72391b991 100644 >---- browser/components/preferences/in-content-new/privacy.js >-+++ browser/components/preferences/in-content-new/privacy.js >-@@ -321,11 +321,9 @@ var gPrivacyPane = { >- this.initSubmitCrashes(); >- } >- this.initTelemetry(); >-- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >-- this.initSubmitHealthReport(); >-- setEventListener("submitHealthReportBox", "command", >-- gPrivacyPane.updateSubmitHealthReport); >-- } >-+ this.initSubmitHealthReport(); >-+ setEventListener("submitHealthReportBox", "command", >-+ gPrivacyPane.updateSubmitHealthReport); >- >- // Append search keywords into the elements could open subdialogs. >- let bundlePrefs = document.getElementById("bundlePreferences"); >-@@ -1414,8 +1412,10 @@ var gPrivacyPane = { >- * In all cases, set up the Learn More link sanely. >- */ >- initTelemetry() { >-- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >-- this._setupLearnMoreLink("toolkit.telemetry.infoURL", "telemetryLearnMore"); >-+ this._setupLearnMoreLink("toolkit.telemetry.infoURL", "telemetryLearnMore"); >-+ // If we're not sending any Telemetry, disable the telemetry upload checkbox as well. >-+ if (!AppConstants.MOZ_TELEMETRY_REPORTING) { >-+ document.getElementById("submitTelemetryBox").setAttribute("disabled", "true"); >- } >- }, >- >-@@ -1439,9 +1439,6 @@ var gPrivacyPane = { >- * @param {Boolean} aEnabled False disables the controls, true enables them. >- */ >- setTelemetrySectionEnabled(aEnabled) { >-- if (!AppConstants.MOZ_TELEMETRY_REPORTING) { >-- return; >-- } >- // If FHR is disabled, additional data sharing should be disabled as well. >- let disabled = !aEnabled; >- document.getElementById("submitTelemetryBox").disabled = disabled; >-@@ -1456,19 +1453,21 @@ var gPrivacyPane = { >- * Initialize the health report service reference and checkbox. >- */ >- initSubmitHealthReport() { >-- if (!AppConstants.MOZ_TELEMETRY_REPORTING) { >-- return; >-- } >- this._setupLearnMoreLink("datareporting.healthreport.infoURL", "FHRLearnMore"); >- >- let checkbox = document.getElementById("submitHealthReportBox"); >- >-- if (Services.prefs.prefIsLocked(PREF_UPLOAD_ENABLED)) { >-+ // Telemetry is only sending data if MOZ_TELEMETRY_REPORTING is defined. >-+ // We still want to display the preferences panel if that's not the case, but >-+ // we want it to be disabled and unchecked. >-+ if (Services.prefs.prefIsLocked(PREF_UPLOAD_ENABLED) || >-+ !AppConstants.MOZ_TELEMETRY_REPORTING) { >- checkbox.setAttribute("disabled", "true"); >- return; >- } >- >-- checkbox.checked = Services.prefs.getBoolPref(PREF_UPLOAD_ENABLED); >-+ checkbox.checked = Services.prefs.getBoolPref(PREF_UPLOAD_ENABLED) && >-+ AppConstants.MOZ_TELEMETRY_REPORTING; >- this.setTelemetrySectionEnabled(checkbox.checked); >- }, >- >-@@ -1476,9 +1475,6 @@ var gPrivacyPane = { >- * Update the health report preference with state from checkbox. >- */ >- updateSubmitHealthReport() { >-- if (!AppConstants.MOZ_TELEMETRY_REPORTING) { >-- return; >-- } >- let checkbox = document.getElementById("submitHealthReportBox"); >- Services.prefs.setBoolPref(PREF_UPLOAD_ENABLED, checkbox.checked); >- this.setTelemetrySectionEnabled(checkbox.checked); >-diff --git browser/components/preferences/in-content-new/privacy.xul browser/components/preferences/in-content-new/privacy.xul >-index 9d531bd8274b..8030567573f8 100644 >---- browser/components/preferences/in-content-new/privacy.xul >-+++ browser/components/preferences/in-content-new/privacy.xul >-@@ -760,9 +760,14 @@ >- </groupbox> >- >- <!-- Data Choices --> >--#ifdef MOZ_TELEMETRY_REPORTING >--<groupbox id="historyGroup" data-category="panePrivacy" data-subcategory="reports" hidden="true"> >-+#ifdef MOZ_DATA_REPORTING >-+ >-+<groupbox id="telemetryGroup" data-category="panePrivacy" data-subcategory="reports" hidden="true"> >- <caption><label>&reports.label;</label></caption> >-+#ifndef MOZ_TELEMETRY_REPORTING >-+ <description id="TelemetryDisabledDesc" control="telemetryGroup">&healthReportingDisabled.label;</description> >-+#endif >-+ >- <hbox align="center"> >- <checkbox id="submitHealthReportBox" label="&enableHealthReport.label;" >- accesskey="&enableHealthReport.accesskey;"/> >-@@ -782,14 +787,9 @@ >- class="indent">&telemetryDesc.label;</description> >- </vbox> >- </groupbox> >--#endif >- >--#ifdef MOZ_DATA_REPORTING >- #ifdef MOZ_CRASHREPORTER >- <groupbox id="crashReporterGroup" data-category="panePrivacy" data-subcategory="reports" hidden="true"> >--#ifndef MOZ_TELEMETRY_REPORTING >--<caption><label>&reports.label;</label></caption> >--#endif >- <hbox align="center"> >- <checkbox id="automaticallySubmitCrashesBox" >- preference="browser.crashReports.unsubmittedCheck.autoSubmit" >-diff --git browser/components/preferences/in-content/advanced.js browser/components/preferences/in-content/advanced.js >-index a6a2abaad9cf..9c7a2e716403 100644 >---- browser/components/preferences/in-content/advanced.js >-+++ browser/components/preferences/in-content/advanced.js >-@@ -46,9 +46,7 @@ var gAdvancedPane = { >- this.initSubmitCrashes(); >- } >- this.initTelemetry(); >-- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >-- this.initSubmitHealthReport(); >-- } >-+ this.initSubmitHealthReport(); >- this.updateOnScreenKeyboardVisibility(); >- this.updateCacheSizeInputField(); >- this.updateActualCacheSize(); >-@@ -78,10 +76,8 @@ var gAdvancedPane = { >- gAdvancedPane.updateHardwareAcceleration); >- setEventListener("advancedPrefs", "select", >- gAdvancedPane.tabSelectionChanged); >-- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >-- setEventListener("submitHealthReportBox", "command", >-- gAdvancedPane.updateSubmitHealthReport); >-- } >-+ setEventListener("submitHealthReportBox", "command", >-+ gAdvancedPane.updateSubmitHealthReport); >- >- setEventListener("connectionSettings", "command", >- gAdvancedPane.showConnections); >-@@ -293,8 +289,10 @@ var gAdvancedPane = { >- * In all cases, set up the Learn More link sanely. >- */ >- initTelemetry() { >-- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >-- this._setupLearnMoreLink("toolkit.telemetry.infoURL", "telemetryLearnMore"); >-+ this._setupLearnMoreLink("toolkit.telemetry.infoURL", "telemetryLearnMore"); >-+ // If we're not sending any Telemetry, disable the telemetry upload checkbox as well. >-+ if (!AppConstants.MOZ_TELEMETRY_REPORTING) { >-+ document.getElementById("submitTelemetryBox").setAttribute("disabled", "true"); >- } >- }, >- >-@@ -303,46 +301,45 @@ var gAdvancedPane = { >- * @param {Boolean} aEnabled False disables the controls, true enables them. >- */ >- setTelemetrySectionEnabled(aEnabled) { >-- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >-- // If FHR is disabled, additional data sharing should be disabled as well. >-- let disabled = !aEnabled; >-- document.getElementById("submitTelemetryBox").disabled = disabled; >-- if (disabled) { >-- // If we disable FHR, untick the telemetry checkbox. >-- Services.prefs.setBoolPref("toolkit.telemetry.enabled", false); >-- } >-- document.getElementById("telemetryDataDesc").disabled = disabled; >-+ // If FHR is disabled, additional data sharing should be disabled as well. >-+ let disabled = !aEnabled; >-+ document.getElementById("submitTelemetryBox").disabled = disabled; >-+ if (disabled) { >-+ // If we disable FHR, untick the telemetry checkbox. >-+ Services.prefs.setBoolPref("toolkit.telemetry.enabled", false); >- } >-+ document.getElementById("telemetryDataDesc").disabled = disabled; >- }, >- >- /** >- * Initialize the health report service reference and checkbox. >- */ >- initSubmitHealthReport() { >-- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >-- this._setupLearnMoreLink("datareporting.healthreport.infoURL", "FHRLearnMore"); >-- >-- let checkbox = document.getElementById("submitHealthReportBox"); >-+ this._setupLearnMoreLink("datareporting.healthreport.infoURL", "FHRLearnMore"); >- >-- if (Services.prefs.prefIsLocked(PREF_UPLOAD_ENABLED)) { >-- checkbox.setAttribute("disabled", "true"); >-- return; >-- } >-+ let checkbox = document.getElementById("submitHealthReportBox"); >- >-- checkbox.checked = Services.prefs.getBoolPref(PREF_UPLOAD_ENABLED); >-- this.setTelemetrySectionEnabled(checkbox.checked); >-+ // Telemetry is only sending data if MOZ_TELEMETRY_REPORTING is defined. >-+ // We still want to display the preferences panel if that's not the case, but >-+ // we want it to be disabled and unchecked. >-+ if (Services.prefs.prefIsLocked(PREF_UPLOAD_ENABLED) || >-+ !AppConstants.MOZ_TELEMETRY_REPORTING) { >-+ checkbox.setAttribute("disabled", "true"); >-+ return; >- } >-+ >-+ checkbox.checked = Services.prefs.getBoolPref(PREF_UPLOAD_ENABLED) && >-+ AppConstants.MOZ_TELEMETRY_REPORTING; >-+ this.setTelemetrySectionEnabled(checkbox.checked); >- }, >- >- /** >- * Update the health report preference with state from checkbox. >- */ >- updateSubmitHealthReport() { >-- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >-- let checkbox = document.getElementById("submitHealthReportBox"); >-- Services.prefs.setBoolPref(PREF_UPLOAD_ENABLED, checkbox.checked); >-- this.setTelemetrySectionEnabled(checkbox.checked); >-- } >-+ let checkbox = document.getElementById("submitHealthReportBox"); >-+ Services.prefs.setBoolPref(PREF_UPLOAD_ENABLED, checkbox.checked); >-+ this.setTelemetrySectionEnabled(checkbox.checked); >- }, >- >- updateOnScreenKeyboardVisibility() { >-diff --git browser/components/preferences/in-content/advanced.xul browser/components/preferences/in-content/advanced.xul >-index f2330223fb18..1b2c62168a59 100644 >---- browser/components/preferences/in-content/advanced.xul >-+++ browser/components/preferences/in-content/advanced.xul >-@@ -37,12 +37,9 @@ >- <preference id="layout.spellcheckDefault" >- name="layout.spellcheckDefault" >- type="int"/> >-- >--#ifdef MOZ_TELEMETRY_REPORTING >- <preference id="toolkit.telemetry.enabled" >- name="toolkit.telemetry.enabled" >- type="bool"/> >--#endif >- >- <!-- Data Choices tab --> >- #ifdef MOZ_CRASHREPORTER >-@@ -189,6 +186,9 @@ >- <!-- Data Choices --> >- <tabpanel id="dataChoicesPanel" orient="vertical"> >- #ifdef MOZ_TELEMETRY_REPORTING >-+ <description>&healthReportingDisabled.label;</description> >-+ <separator class="thin"/> >-+#endif >- <groupbox> >- <caption> >- <checkbox id="submitHealthReportBox" label="&enableHealthReport.label;" >-@@ -216,7 +216,6 @@ >- </hbox> >- </vbox> >- </groupbox> >--#endif >- #ifdef MOZ_CRASHREPORTER >- <groupbox> >- <caption> >-diff --git browser/locales/en-US/chrome/browser/preferences-old/advanced.dtd browser/locales/en-US/chrome/browser/preferences-old/advanced.dtd >-index 215b800d3385..bf23c4fd251f 100644 >---- browser/locales/en-US/chrome/browser/preferences-old/advanced.dtd >-+++ browser/locales/en-US/chrome/browser/preferences-old/advanced.dtd >-@@ -28,6 +28,11 @@ >- >- <!ENTITY dataChoicesTab.label "Data Choices"> >- >-+<!-- LOCALIZATION NOTE (healthReportingDisabled.label): This message is displayed above >-+disabled data sharing options in developer builds or builds with no Telemetry support >-+available. --> >-+<!ENTITY healthReportingDisabled.label "Data reporting is disabled for this build configuration"> >-+ >- <!ENTITY healthReportDesc.label "Helps you understand your browser performance and shares data with &vendorShortName; about your browser health"> >- <!ENTITY enableHealthReport.label "Enable &brandShortName; Health Report"> >- <!ENTITY enableHealthReport.accesskey "R"> >-diff --git browser/locales/en-US/chrome/browser/preferences/advanced.dtd browser/locales/en-US/chrome/browser/preferences/advanced.dtd >-index 58a6b38630cf..6c478e48244a 100644 >---- browser/locales/en-US/chrome/browser/preferences/advanced.dtd >-+++ browser/locales/en-US/chrome/browser/preferences/advanced.dtd >-@@ -28,6 +28,11 @@ >- >- <!ENTITY dataChoicesTab.label "Data Choices"> >- >-+<!-- LOCALIZATION NOTE (healthReportingDisabled.label): This message is displayed above >-+disabled data sharing options in developer builds or builds with no Telemetry support >-+available. --> >-+<!ENTITY healthReportingDisabled.label "Data reporting is disabled for this build configuration"> >-+ >- <!ENTITY healthReportDesc.label "Helps you understand your browser performance and shares data with &vendorShortName; about your browser health"> >- <!ENTITY enableHealthReport.label "Enable &brandShortName; Health Report"> >- <!ENTITY enableHealthReport.accesskey "R"> >diff --git a/www/firefox/files/patch-bug1376268 b/www/firefox/files/patch-bug1376268 >deleted file mode 100644 >index 716bdb42e658..000000000000 >--- a/www/firefox/files/patch-bug1376268 >+++ /dev/null >@@ -1,61 +0,0 @@ >-commit ec31e574ed81 >-Author: Petr Sumbera <petr.sumbera@oracle.com> >-Date: Mon Jun 26 06:54:12 2017 -0700 >- >- Bug 1376268 - Fix Spidermonkey build with no jit backend; r=bbouvier >- >- MozReview-Commit-ID: DgANwcf8oUh >- >- --HG-- >- extra : amend_source : 1c3efbe975e93ee996e6b84d3fc073781740156d >---- >- js/src/jit/ExecutableAllocator.h | 2 +- >- js/src/jit/none/MacroAssembler-none.h | 8 ++++---- >- 2 files changed, 5 insertions(+), 5 deletions(-) >- >-diff --git js/src/jit/ExecutableAllocator.h js/src/jit/ExecutableAllocator.h >-index 570a25ff0dc3..d106b31ba906 100644 >---- js/src/jit/ExecutableAllocator.h >-+++ js/src/jit/ExecutableAllocator.h >-@@ -219,7 +219,7 @@ class ExecutableAllocator >- >- static void poisonCode(JSRuntime* rt, JitPoisonRangeVector& ranges); >- >--#if defined(JS_CODEGEN_X86) || defined(JS_CODEGEN_X64) || defined(JS_SIMULATOR_ARM64) >-+#if defined(JS_CODEGEN_X86) || defined(JS_CODEGEN_X64) || defined(JS_SIMULATOR_ARM64) || defined(JS_CODEGEN_NONE) >- static void cacheFlush(void*, size_t) >- { >- } >-diff --git js/src/jit/none/MacroAssembler-none.h js/src/jit/none/MacroAssembler-none.h >-index 9a40ec8a8f64..71ddca8b9f1c 100644 >---- js/src/jit/none/MacroAssembler-none.h >-+++ js/src/jit/none/MacroAssembler-none.h >-@@ -48,7 +48,7 @@ static constexpr Register WasmIonExitRegE1 { Registers::invalid_reg }; >- >- static constexpr Register WasmIonExitRegReturnData { Registers::invalid_reg }; >- static constexpr Register WasmIonExitRegReturnType { Registers::invalid_reg }; >--static constexpr Register WasmIonExitTlsReg = { Registers::invalid_reg }; >-+static constexpr Register WasmIonExitTlsReg { Registers::invalid_reg }; >- static constexpr Register WasmIonExitRegD0 { Registers::invalid_reg }; >- static constexpr Register WasmIonExitRegD1 { Registers::invalid_reg }; >- static constexpr Register WasmIonExitRegD2 { Registers::invalid_reg }; >-@@ -153,6 +153,8 @@ class Assembler : public AssemblerShared >- >- static uintptr_t GetPointer(uint8_t*) { MOZ_CRASH(); } >- >-+ static bool HasRoundInstruction(RoundingMode) { return false; } >-+ >- void verifyHeapAccessDisassembly(uint32_t begin, uint32_t end, >- const Disassembler::HeapAccess& heapAccess) >- { >-@@ -196,9 +198,7 @@ class MacroAssemblerNone : public Assembler >- static bool SupportsSimd() { return false; } >- static bool SupportsUnalignedAccesses() { return false; } >- >-- static bool HasRoundInstruction(RoundingMode) { return false; } >-- >-- void executableCopy(void*, bool) { MOZ_CRASH(); } >-+ void executableCopy(void*, bool = true) { MOZ_CRASH(); } >- void copyJumpRelocationTable(uint8_t*) { MOZ_CRASH(); } >- void copyDataRelocationTable(uint8_t*) { MOZ_CRASH(); } >- void copyPreBarrierTable(uint8_t*) { MOZ_CRASH(); } >diff --git a/www/firefox/files/patch-bug1385597 b/www/firefox/files/patch-bug1385597 >deleted file mode 100644 >index c04746e89449..000000000000 >--- a/www/firefox/files/patch-bug1385597 >+++ /dev/null >@@ -1,24 +0,0 @@ >-Properly restore system timezone on other POSIX systems. r?ehsan >- >---- toolkit/components/resistfingerprinting/nsRFPService.cpp >-+++ toolkit/components/resistfingerprinting/nsRFPService.cpp >-@@ -162,14 +162,14 @@ nsRFPService::UpdatePref() >- PR_SetEnv(tz); >- } >- } else { >--#if defined(XP_LINUX) || defined (XP_MACOSX) >-- // For POSIX like system, we reset the TZ to the /etc/localtime, which is the >-- // system timezone. >-- PR_SetEnv("TZ=:/etc/localtime"); >--#else >-+#if defined(XP_WIN) >- // For Windows, we reset the TZ to an empty string. This will make Windows to use >- // its system timezone. >- PR_SetEnv("TZ="); >-+#else >-+ // For POSIX like system, we reset the TZ to the /etc/localtime, which is the >-+ // system timezone. >-+ PR_SetEnv("TZ=:/etc/localtime"); >- #endif >- } >- } >diff --git a/www/firefox/files/patch-bug1386164 b/www/firefox/files/patch-bug1386164 >new file mode 100644 >index 000000000000..bd7293f44877 >--- /dev/null >+++ b/www/firefox/files/patch-bug1386164 >@@ -0,0 +1,80 @@ >+diff --git build/gyp.mozbuild build/gyp.mozbuild >+index d45d46946d97..67d591e5cc1f 100644 >+--- build/gyp.mozbuild >++++ build/gyp.mozbuild >+@@ -43,7 +43,6 @@ gyp_vars.update({ >+ 'build_icu': 0, >+ 'build_opus': 0, >+ 'libyuv_dir': '/media/libyuv/libyuv', >+- 'libevent_dir': '/ipc/chromium/src/third_party/libevent', >+ 'yuv_disable_avx2': 0 if CONFIG['HAVE_X86_AVX2'] else 1, >+ # don't use openssl >+ 'use_openssl': 0, >+@@ -124,3 +123,6 @@ if CONFIG['MACOS_SDK_DIR']: >+ >+ if not CONFIG['MOZ_SYSTEM_LIBVPX']: >+ gyp_vars['libvpx_dir'] = '/media/libvpx/libvpx' >++ >++if not CONFIG['MOZ_SYSTEM_LIBEVENT']: >++ gyp_vars['libevent_dir'] = '/ipc/chromium/src/third_party/libevent' >+diff --git config/system-headers config/system-headers >+index ba8e03efcce7..12b2db6fc406 100644 >+--- config/system-headers >++++ config/system-headers >+@@ -1277,6 +1277,9 @@ bzlib.h >+ gio/gio.h >+ #if MOZ_SYSTEM_LIBEVENT==1 >+ event.h >++event2/event.h >++event2/event_compat.h >++event2/event_struct.h >+ #else >+ sys/event.h >+ #endif >+diff --git media/webrtc/trunk/gtest/moz.build media/webrtc/trunk/gtest/moz.build >+index 661b4968b1c4..87eb97e388c4 100644 >+--- media/webrtc/trunk/gtest/moz.build >++++ media/webrtc/trunk/gtest/moz.build >+@@ -64,9 +64,12 @@ if CONFIG['OS_TARGET'] in ['Darwin', 'Linux', 'WINNT']: >+ '../third_party/gflags/gen/posix/include/private', >+ ] >+ >+- USE_LIBS += [ >+- 'libevent', >+- ] >++ if CONFIG['MOZ_SYSTEM_LIBEVENT']: >++ OS_LIBS += CONFIG['MOZ_LIBEVENT_LIBS'] >++ else: >++ USE_LIBS += [ >++ 'libevent', >++ ] >+ >+ OS_LIBS += [ >+ 'rt', >+diff --git media/webrtc/trunk/webrtc/base/base.gyp media/webrtc/trunk/webrtc/base/base.gyp >+index 085d8dfb4a37..4dd48f7d5f81 100644 >+--- media/webrtc/trunk/webrtc/base/base.gyp >++++ media/webrtc/trunk/webrtc/base/base.gyp >+@@ -211,6 +211,7 @@ >+ ], >+ } , { >+ 'include_dirs': [ >++ '$(MOZ_LIBEVENT_CFLAGS)', >+ '<(libevent_dir)/', >+ '<(libevent_dir)/../', >+ '<(libevent_dir)/include/', >+diff --git media/webrtc/trunk/webrtc/base/task_queue_libevent.cc media/webrtc/trunk/webrtc/base/task_queue_libevent.cc >+index 6a9663735a09..e78fe294fee5 100644 >+--- media/webrtc/trunk/webrtc/base/task_queue_libevent.cc >++++ media/webrtc/trunk/webrtc/base/task_queue_libevent.cc >+@@ -14,7 +14,9 @@ >+ #include <string.h> >+ #include <unistd.h> >+ >+-#include "libevent/include/event.h" >++#include "event2/event.h" >++#include "event2/event_compat.h" >++#include "event2/event_struct.h" >+ #include "webrtc/base/checks.h" >+ #include "webrtc/base/logging.h" >+ #include "webrtc/base/task_queue_posix.h" >diff --git a/www/firefox/files/patch-bug1388005 b/www/firefox/files/patch-bug1388005 >new file mode 100644 >index 000000000000..2b8e04b6b656 >--- /dev/null >+++ b/www/firefox/files/patch-bug1388005 >@@ -0,0 +1,84 @@ >+commit 872350c79026 >+Author: Tooru Fujisawa <arai_a@mac.com> >+Date: Tue Aug 8 22:28:50 2017 +0900 >+ >+ Bug 1388005 - Fix build without Ion. r=nbp >+--- >+ js/src/jit/BaselineBailouts.cpp | 1 + >+ js/src/jit/CodeGenerator.cpp | 2 ++ >+ js/src/jit/IonCacheIRCompiler.cpp | 1 + >+ js/src/jit/none/MacroAssembler-none.h | 1 + >+ js/src/wasm/WasmSignalHandlers.cpp | 6 ++---- >+ 5 files changed, 7 insertions(+), 4 deletions(-) >+ >+diff --git js/src/jit/BaselineBailouts.cpp js/src/jit/BaselineBailouts.cpp >+index 5c90e8192580..3f6837426285 100644 >+--- js/src/jit/BaselineBailouts.cpp >++++ js/src/jit/BaselineBailouts.cpp >+@@ -410,6 +410,7 @@ struct BaselineStackBuilder >+ BaselineStubFrameLayout::reverseOffsetOfSavedFramePtr(); >+ return virtualPointerAtStackOffset(priorOffset + extraOffset); >+ #elif defined(JS_CODEGEN_NONE) >++ (void) priorOffset; >+ MOZ_CRASH(); >+ #else >+ # error "Bad architecture!" >+diff --git js/src/jit/CodeGenerator.cpp js/src/jit/CodeGenerator.cpp >+index cd5ead158db1..3744dd803837 100644 >+--- js/src/jit/CodeGenerator.cpp >++++ js/src/jit/CodeGenerator.cpp >+@@ -11167,6 +11167,8 @@ CodeGenerator::visitOutOfLineSwitch(OutOfLineSwitch<tableType>* jumpTable) >+ if (tableType == SwitchTableType::OutOfLine) { >+ #if defined(JS_CODEGEN_ARM) || defined(JS_CODEGEN_ARM64) >+ MOZ_CRASH("NYI: SwitchTableType::OutOfLine"); >++#elif defined(JS_CODEGEN_NONE) >++ MOZ_CRASH(); >+ #else >+ masm.haltingAlign(sizeof(void*)); >+ masm.use(jumpTable->start()->target()); >+diff --git js/src/jit/IonCacheIRCompiler.cpp js/src/jit/IonCacheIRCompiler.cpp >+index d5944f0c0b53..aa363aab7640 100644 >+--- js/src/jit/IonCacheIRCompiler.cpp >++++ js/src/jit/IonCacheIRCompiler.cpp >+@@ -6,6 +6,7 @@ >+ >+ #include "mozilla/DebugOnly.h" >+ >++#include "jit/BaselineIC.h" >+ #include "jit/CacheIRCompiler.h" >+ #include "jit/IonCaches.h" >+ #include "jit/IonIC.h" >+diff --git js/src/jit/none/MacroAssembler-none.h js/src/jit/none/MacroAssembler-none.h >+index adbf6bd35a0e..59fcfa474520 100644 >+--- js/src/jit/none/MacroAssembler-none.h >++++ js/src/jit/none/MacroAssembler-none.h >+@@ -210,6 +210,7 @@ class MacroAssemblerNone : public Assembler >+ void bindLater(Label*, wasm::TrapDesc) { MOZ_CRASH(); } >+ template <typename T> void j(Condition, T) { MOZ_CRASH(); } >+ template <typename T> void jump(T) { MOZ_CRASH(); } >++ void writeCodePointer(CodeOffset* label) { MOZ_CRASH(); } >+ void haltingAlign(size_t) { MOZ_CRASH(); } >+ void nopAlign(size_t) { MOZ_CRASH(); } >+ void checkStackAlignment() { MOZ_CRASH(); } >+diff --git js/src/wasm/WasmSignalHandlers.cpp js/src/wasm/WasmSignalHandlers.cpp >+index fe634536f3f6..d000d7a022c2 100755 >+--- js/src/wasm/WasmSignalHandlers.cpp >++++ js/src/wasm/WasmSignalHandlers.cpp >+@@ -437,15 +437,13 @@ ContextToFP(CONTEXT* context) >+ #endif >+ } >+ >++#ifndef JS_CODEGEN_NONE >+ static uint8_t* >+ ContextToSP(CONTEXT* context) >+ { >+-#ifdef JS_CODEGEN_NONE >+- MOZ_CRASH(); >+-#else >+ return reinterpret_cast<uint8_t*>(SP_sig(context)); >+-#endif >+ } >++#endif >+ >+ #if defined(__arm__) || defined(__aarch64__) >+ static uint8_t* >diff --git a/www/firefox/files/patch-bug1389133 b/www/firefox/files/patch-bug1389133 >new file mode 100644 >index 000000000000..2b24941e7025 >--- /dev/null >+++ b/www/firefox/files/patch-bug1389133 >@@ -0,0 +1,26 @@ >+commit 9c5239adc7cf >+Author: Martin Stransky <stransky@redhat.com> >+Date: Thu Aug 10 18:07:41 2017 +0200 >+ >+ Bug 1389133 - don't invalidate style content for missing widgets, r=karlt >+ >+ MozReview-Commit-ID: 2KfjYGvsiVv >+--- >+ widget/gtk/WidgetStyleCache.cpp | 4 ++++ >+ 1 file changed, 4 insertions(+) >+ >+diff --git widget/gtk/WidgetStyleCache.cpp widget/gtk/WidgetStyleCache.cpp >+index a1fa92bf57b8..bf0c2d080c17 100644 >+--- widget/gtk/WidgetStyleCache.cpp >++++ widget/gtk/WidgetStyleCache.cpp >+@@ -622,6 +622,10 @@ GetWidget(WidgetNodeType aWidgetType) >+ GtkWidget* widget = sWidgetStorage[aWidgetType]; >+ if (!widget) { >+ widget = CreateWidget(aWidgetType); >++ // Some widgets (MOZ_GTK_COMBOBOX_SEPARATOR for instance) may not be >++ // available or implemented. >++ if (!widget) >++ return nullptr; >+ // In GTK versions prior to 3.18, automatic invalidation of style contexts >+ // for widgets was delayed until the next resize event. Gecko however, >+ // typically uses the style context before the resize event runs and so an >diff --git a/www/firefox/files/patch-bug826985 b/www/firefox/files/patch-bug826985 >index 8e23b9382748..8e9e7d24a024 100644 >--- a/www/firefox/files/patch-bug826985 >+++ b/www/firefox/files/patch-bug826985 >@@ -107,10 +107,11 @@ index 12df1b3..e9863ba 100644 > > #include <new> > >-@@ -26,6 +31,15 @@ >- #include "critical_section_wrapper.h" >- #include "video_capture_linux.h" >- >+@@ -32,6 +35,15 @@ >+ #include "webrtc/modules/video_capture/linux/video_capture_linux.h" >+ #include "webrtc/system_wrappers/include/critical_section_wrapper.h" >+ #include "webrtc/system_wrappers/include/trace.h" >++ > +#ifdef HAVE_LIBV4L2 > +#define open v4l2_open > +#define close v4l2_close >@@ -119,10 +120,9 @@ index 12df1b3..e9863ba 100644 > +#define mmap v4l2_mmap > +#define munmap v4l2_munmap > +#endif >-+ >- namespace webrtc >- { >- namespace videocapturemodule >+ >+ namespace webrtc { >+ namespace videocapturemodule { > diff --git media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi > index d46b5aa..e452223 100644 > --- media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi >diff --git a/www/firefox/files/patch-bug847568 b/www/firefox/files/patch-bug847568 >index 0deb5a504f56..c2c40cc26b26 100644 >--- a/www/firefox/files/patch-bug847568 >+++ b/www/firefox/files/patch-bug847568 >@@ -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.6', >++system_harfbuzz = pkg_check_modules('MOZ_HARFBUZZ', 'harfbuzz >= 1.4.7', > + when='--with-system-harfbuzz') > + > +set_config('MOZ_SYSTEM_HARFBUZZ', depends_if(system_harfbuzz)(lambda _: True)) >diff --git a/www/firefox/files/patch-rust-option b/www/firefox/files/patch-rust-option >deleted file mode 100644 >index e60e11b111ee..000000000000 >--- a/www/firefox/files/patch-rust-option >+++ /dev/null >@@ -1,816 +0,0 @@ >-Revert bug 1284816, bug 1341967, bug 1336153 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. >-@@ -97,6 +110,9 @@ def rust_compiler(rustc_info, cargo_info): >- >- return True >- >-+set_define('MOZ_RUST', rust_compiler) >-+set_config('MOZ_RUST', rust_compiler) >-+ >- @template >- def rust_triple_alias(host_or_target): >- """Template defining the alias used for rustc's --target flag. >-@@ -227,7 +243,8 @@ set_config('RUST_HOST_TARGET', rust_host_triple) >- >- @depends(rust_target_triple) >- def rust_target_env_name(triple): >-- return triple.upper().replace('-','_') >-+ if triple: >-+ return triple.upper().replace('-','_') >- >- # We need this to form various Cargo environment variables, as there is no >- # uppercase function in make, and we don't want to shell out just for >-@@ -235,5 +252,6 @@ def rust_target_env_name(triple): >- set_config('RUST_TARGET_ENV_NAME', rust_target_env_name) >- >- # Until we remove all the other Rust checks in old-configure. >-+add_old_configure_assignment('MOZ_RUST', rust_compiler) >- add_old_configure_assignment('RUSTC', rustc) >- add_old_configure_assignment('RUST_TARGET', rust_target_triple) >-diff --git config/rules.mk config/rules.mk >-index 94cc5556e3d0..7b143ebc5146 100644 >---- config/rules.mk >-+++ config/rules.mk >-@@ -900,6 +900,7 @@ endif >- >- $(foreach file,$(DUMP_SYMS_TARGETS),$(eval $(call syms_template,$(file),$(file)_syms.track))) >- >-+ifdef MOZ_RUST >- cargo_host_flag := --target=$(RUST_HOST_TARGET) >- cargo_target_flag := --target=$(RUST_TARGET) >- >-@@ -1055,6 +1056,7 @@ force-cargo-host-program-build: >- >- $(HOST_RUST_PROGRAMS): force-cargo-host-program-build >- endif # HOST_RUST_PROGRAMS >-+endif # MOZ_RUST >- >- $(SOBJS): >- $(REPORT_BUILD) >-diff --git dom/media/MediaPrefs.h dom/media/MediaPrefs.h >-index 4dcc659222a4..559334d89fd1 100644 >---- dom/media/MediaPrefs.h >-+++ dom/media/MediaPrefs.h >-@@ -183,7 +183,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 dom/media/gtest/moz.build dom/media/gtest/moz.build >-index c66ac4a9437f..e2203c0a4321 100644 >---- dom/media/gtest/moz.build >-+++ dom/media/gtest/moz.build >-@@ -22,7 +22,6 @@ UNIFIED_SOURCES += [ >- 'TestMozPromise.cpp', >- 'TestMP3Demuxer.cpp', >- 'TestMP4Demuxer.cpp', >-- 'TestRust.cpp', >- 'TestTrackEncoder.cpp', >- 'TestVideoSegment.cpp', >- 'TestVideoUtils.cpp', >-@@ -36,6 +35,9 @@ if CONFIG['MOZ_WEBM_ENCODER']: >- 'TestWebMWriter.cpp', >- ] >- >-+if CONFIG['MOZ_RUST']: >-+ UNIFIED_SOURCES += ['TestRust.cpp',] >-+ >- TEST_HARNESS_FILES.gtest += [ >- '../test/gizmo-frag.mp4', >- '../test/gizmo.mp4', >-diff --git media/libcubeb/src/moz.build media/libcubeb/src/moz.build >-index c65b53b80f63..8953f646e831 100644 >---- media/libcubeb/src/moz.build >-+++ media/libcubeb/src/moz.build >-@@ -32,7 +32,8 @@ if CONFIG['MOZ_PULSEAUDIO']: >- 'cubeb_pulse.c', >- ] >- DEFINES['USE_PULSE'] = True >-- DEFINES['USE_PULSE_RUST'] = True >-+ if CONFIG['MOZ_RUST']: >-+ DEFINES['USE_PULSE_RUST'] = True >- >- if CONFIG['MOZ_JACK']: >- SOURCES += [ >-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; >- using mozilla::media::TimeUnit; >-@@ -177,6 +179,7 @@ MP4VideoInfo::Update(const MetaData* aMetaData, const char* aMimeType) >- FindData(aMetaData, kKeyAVCC, mExtraData); >- } >- >-+#ifdef MOZ_RUST_MP4PARSE >- static void >- UpdateTrackProtectedInfo(mozilla::TrackInfo& aConfig, >- const mp4parse_sinf_info& aSinf) >-@@ -263,6 +266,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 >-@@ -20,14 +20,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 <limits> >- #include <stdint.h> >- #include <vector> >- >- >-+#ifdef MOZ_RUST_MP4PARSE >- struct FreeMP4Parser { void operator()(mp4parse_parser* aPtr) { mp4parse_free(aPtr); } }; >-+#endif // MOZ_RUST_MP4PARSE >- >- using namespace stagefright; >- using mozilla::media::TimeUnit; >-@@ -105,6 +109,7 @@ private: >- bool mCanSeek; >- }; >- >-+#ifdef MOZ_RUST_MP4PARSE >- // Wrap an mp4_demuxer::Stream to remember the read offset. >- >- class RustStreamAdaptor { >-@@ -151,6 +156,7 @@ private: >- RustStreamAdaptor mRustSource; >- mozilla::UniquePtr<mp4parse_parser, FreeMP4Parser> mRustParser; >- }; >-+#endif // MOZ_RUST_MP4PARSE >- >- class IndiceWrapperStagefright : public IndiceWrapper { >- public: >-@@ -187,6 +193,7 @@ IndiceWrapperStagefright::GetIndice(size_t aIndex, Index::Indice& aIndice) const >- return true; >- } >- >-+#ifdef MOZ_RUST_MP4PARSE >- // the owner of mIndice is rust mp4 paser, so lifetime of this class >- // SHOULD NOT longer than rust parser. >- class IndiceWrapperRust : public IndiceWrapper >-@@ -232,9 +239,11 @@ IndiceWrapperRust::GetIndice(size_t aIndex, Index::Indice& aIndice) const >- aIndice.sync = indice->sync; >- return true; >- } >-+#endif // MOZ_RUST_MP4PARSE >- >- MP4Metadata::MP4Metadata(Stream* aSource) >- : mStagefright(MakeUnique<MP4MetadataStagefright>(aSource)) >-+#ifdef MOZ_RUST_MP4PARSE >- , mRust(MakeUnique<MP4MetadataRust>(aSource)) >- , mPreferRust(MediaPrefs::EnableRustMP4Parser()) >- , mReportedAudioTrackTelemetry(false) >-@@ -242,6 +251,7 @@ MP4Metadata::MP4Metadata(Stream* aSource) >- #ifndef RELEASE_OR_BETA >- , mRustTestMode(MediaPrefs::RustTestMode()) >- #endif >-+#endif // MOZ_RUST_MP4PARSE >- { >- } >- >-@@ -274,8 +284,11 @@ MP4Metadata::GetNumberTracks(mozilla::TrackInfo::TrackType aType) const >- MP4Metadata::ResultAndTrackCount numTracks = >- mStagefright->GetNumberTracks(aType); >- >-+#ifdef MOZ_RUST_MP4PARSE >- if (!mRust) { >-+#endif // MOZ_RUST_MP4PARSE >- return numTracks; >-+#ifdef MOZ_RUST_MP4PARSE >- } >- >- MP4Metadata::ResultAndTrackCount numTracksRust = >-@@ -350,8 +363,10 @@ MP4Metadata::GetNumberTracks(mozilla::TrackInfo::TrackType aType) const >- // Same non-error numbers, just return any. >- // (Choosing Rust here, in case it carries a warning, we'd want to know that.) >- return numTracksRust; >-+#endif // MOZ_RUST_MP4PARSE >- } >- >-+#ifdef MOZ_RUST_MP4PARSE >- bool MP4Metadata::ShouldPreferRust() const { >- if (!mRust) { >- return false; >-@@ -389,6 +404,7 @@ bool MP4Metadata::ShouldPreferRust() const { >- // Otherwise, fall back. >- return false; >- } >-+#endif // MOZ_RUST_MP4PARSE >- >- static const char* >- GetDifferentField(const mozilla::TrackInfo& info, >-@@ -443,6 +459,7 @@ MP4Metadata::GetTrackInfo(mozilla::TrackInfo::TrackType aType, >- MP4Metadata::ResultAndTrackInfo info = >- mStagefright->GetTrackInfo(aType, aTrackNumber); >- >-+#ifdef MOZ_RUST_MP4PARSE >- if (!mRust) { >- return info; >- } >-@@ -514,6 +531,7 @@ MP4Metadata::GetTrackInfo(mozilla::TrackInfo::TrackType aType, >- if (mPreferRust) { >- return infoRust; >- } >-+#endif // MOZ_RUST_MP4PARSE >- >- return info; >- } >-@@ -528,6 +546,7 @@ MP4Metadata::ResultAndCryptoFile >- MP4Metadata::Crypto() const >- { >- MP4Metadata::ResultAndCryptoFile crypto = mStagefright->Crypto(); >-+#ifdef MOZ_RUST_MP4PARSE >- MP4Metadata::ResultAndCryptoFile rustCrypto = mRust->Crypto(); >- >- #ifndef RELEASE_OR_BETA >-@@ -548,6 +567,7 @@ MP4Metadata::Crypto() const >- if (mPreferRust) { >- return rustCrypto; >- } >-+#endif // MOZ_RUST_MP4PARSE >- >- return crypto; >- } >-@@ -556,17 +576,22 @@ MP4Metadata::ResultAndIndice >- MP4Metadata::GetTrackIndice(mozilla::TrackID aTrackID) >- { >- FallibleTArray<Index::Indice> indiceSF; >-+#ifdef MOZ_RUST_MP4PARSE >- if (!mPreferRust >- #ifndef RELEASE_OR_BETA >- || mRustTestMode >- #endif >- ) { >-+#endif // MOZ_RUST_MP4PARSE >- MediaResult rv = mStagefright->ReadTrackIndex(indiceSF, aTrackID); >- if (NS_FAILED(rv)) { >- return {Move(rv), nullptr}; >- } >-+#ifdef MOZ_RUST_MP4PARSE >- } >-+#endif // MOZ_RUST_MP4PARSE >- >-+#ifdef MOZ_RUST_MP4PARSE >- mp4parse_byte_data indiceRust = {}; >- if (mPreferRust >- #ifndef RELEASE_OR_BETA >-@@ -592,13 +617,18 @@ MP4Metadata::GetTrackIndice(mozilla::TrackID aTrackID) >- } >- } >- #endif >-+#endif // MOZ_RUST_MP4PARSE >- >- UniquePtr<IndiceWrapper> indice; >-+#ifdef MOZ_RUST_MP4PARSE >- if (mPreferRust) { >- indice = mozilla::MakeUnique<IndiceWrapperRust>(indiceRust); >- } else { >-+#endif // MOZ_RUST_MP4PARSE >- indice = mozilla::MakeUnique<IndiceWrapperStagefright>(indiceSF); >-+#ifdef MOZ_RUST_MP4PARSE >- } >-+#endif // MOZ_RUST_MP4PARSE >- >- return {NS_OK, Move(indice)}; >- } >-@@ -856,6 +886,7 @@ MP4MetadataStagefright::Metadata(Stream* aSource) >- return {NS_OK, Move(buffer)}; >- } >- >-+#ifdef MOZ_RUST_MP4PARSE >- bool >- RustStreamAdaptor::Read(uint8_t* buffer, uintptr_t size, size_t* bytes_read) >- { >-@@ -1152,5 +1183,6 @@ MP4MetadataRust::Metadata(Stream* aSource) >- MOZ_ASSERT(false, "Not yet implemented"); >- return {NS_ERROR_NOT_IMPLEMENTED, 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 >-@@ -13,7 +13,9 @@ >- #include "MediaInfo.h" >- #include "MediaResult.h" >- #include "Stream.h" >-+#ifdef MOZ_RUST_MP4PARSE >- #include "mp4parse.h" >-+#endif // MOZ_RUST_MP4PARSE >- >- namespace mp4_demuxer { >- >-@@ -82,6 +84,7 @@ public: >- >- private: >- UniquePtr<MP4MetadataStagefright> mStagefright; >-+#ifdef MOZ_RUST_MP4PARSE >- UniquePtr<MP4MetadataRust> mRust; >- mutable bool mPreferRust; >- mutable bool mReportedAudioTrackTelemetry; >-@@ -90,6 +93,7 @@ private: >- mutable bool mRustTestMode; >- #endif >- bool ShouldPreferRust() const; >-+#endif // MOZ_RUST_MP4PARSE >- }; >- >- } // namespace mp4_demuxer >-diff --git media/libstagefright/gtest/moz.build media/libstagefright/gtest/moz.build >-index be4d56fc93f7..66fdd365f8f3 100644 >---- media/libstagefright/gtest/moz.build >-+++ media/libstagefright/gtest/moz.build >-@@ -38,12 +38,13 @@ TEST_HARNESS_FILES.gtest += [ >- 'test_case_1351094.mp4', >- ] >- >--UNIFIED_SOURCES += ['TestMP4Rust.cpp',] >--TEST_HARNESS_FILES.gtest += [ >-- '../../../dom/media/test/street.mp4', >--] >--LOCAL_INCLUDES += [ >-- '../binding/include', >--] >-+if CONFIG['MOZ_RUST']: >-+ UNIFIED_SOURCES += ['TestMP4Rust.cpp',] >-+ TEST_HARNESS_FILES.gtest += [ >-+ '../../../dom/media/test/street.mp4', >-+ ] >-+ LOCAL_INCLUDES += [ >-+ '../binding/include', >-+ ] >- >- FINAL_LIBRARY = 'xul-gtest' >-diff --git media/libstagefright/moz.build media/libstagefright/moz.build >-index af5d1194d621..6725a0179989 100644 >---- media/libstagefright/moz.build >-+++ media/libstagefright/moz.build >-@@ -83,9 +83,10 @@ SOURCES += [ >- 'system/core/libutils/VectorImpl.cpp', >- ] >- >--EXPORTS += [ >-- 'binding/include/mp4parse.h', >--] >-+if CONFIG['MOZ_RUST']: >-+ EXPORTS += [ >-+ 'binding/include/mp4parse.h', >-+ ] >- >- UNIFIED_SOURCES += [ >- 'binding/Adts.cpp', >-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 netwerk/base/moz.build netwerk/base/moz.build >-index 61d022a9660e..e5ca1d77d859 100644 >---- netwerk/base/moz.build >-+++ netwerk/base/moz.build >-@@ -256,7 +256,7 @@ UNIFIED_SOURCES += [ >- 'TLSServerSocket.cpp', >- ] >- >--if CONFIG['MOZ_RUST_URLPARSE']: >-+if CONFIG['MOZ_RUST'] and CONFIG['MOZ_RUST_URLPARSE']: >- EXPORTS.mozilla.net += [ 'RustURL.h' ] >- UNIFIED_SOURCES += [ 'RustURL.cpp' ] >- >-diff --git netwerk/base/nsStandardURL.cpp netwerk/base/nsStandardURL.cpp >-index 608b918a4ecf..20bcdeb34ab8 100644 >---- netwerk/base/nsStandardURL.cpp >-+++ netwerk/base/nsStandardURL.cpp >-@@ -858,6 +858,7 @@ nsStandardURL::BuildNormalizedSpec(const char *spec) >- if (!SegmentIs(spec, mScheme, "resource") && >- !SegmentIs(spec, mScheme, "chrome")) { >- nsAutoCString ipString; >-+#ifdef MOZ_RUST >- if (encHost.Length() > 0 && >- encHost.First() == '[' && encHost.Last() == ']' && >- ValidIPv6orHostname(encHost.get(), encHost.Length())) { >-@@ -866,7 +867,9 @@ nsStandardURL::BuildNormalizedSpec(const char *spec) >- return rv; >- } >- encHost = ipString; >-- } else if (NS_SUCCEEDED(NormalizeIPv4(encHost, ipString))) { >-+ } else >-+#endif >-+ if (NS_SUCCEEDED(NormalizeIPv4(encHost, ipString))) { >- encHost = ipString; >- } >- } >-@@ -2112,6 +2115,7 @@ nsStandardURL::SetHost(const nsACString &input) >- >- if (!SegmentIs(mScheme, "resource") && !SegmentIs(mScheme, "chrome")) { >- nsAutoCString ipString; >-+#ifdef MOZ_RUST >- if (hostBuf.Length() > 0 && >- hostBuf.First() == '[' && hostBuf.Last() == ']' && >- ValidIPv6orHostname(hostBuf.get(), hostBuf.Length())) { >-@@ -2120,7 +2124,9 @@ nsStandardURL::SetHost(const nsACString &input) >- return rv; >- } >- hostBuf = ipString; >-- } else if (NS_SUCCEEDED(NormalizeIPv4(hostBuf, ipString))) { >-+ } else >-+#endif >-+ if (NS_SUCCEEDED(NormalizeIPv4(hostBuf, ipString))) { >- hostBuf = ipString; >- } >- } >-diff --git old-configure.in old-configure.in >-index 717a94fcc692..54b29d737cc1 100644 >---- old-configure.in >-+++ old-configure.in >-@@ -2330,9 +2330,14 @@ if test -n "$MOZ_MULET"; then >- fi >- >- # Propagate feature switches for code written in rust from confvars.sh >--if test -n "$MOZ_RUST_URLPARSE"; then >-- AC_DEFINE(MOZ_RUST_URLPARSE) >-- AC_SUBST(MOZ_RUST_URLPARSE) >-+if test -n "$MOZ_RUST"; then >-+ if test -n "$MOZ_RUST_MP4PARSE"; then >-+ AC_DEFINE(MOZ_RUST_MP4PARSE) >-+ fi >-+ if test -n "$MOZ_RUST_URLPARSE"; then >-+ AC_DEFINE(MOZ_RUST_URLPARSE) >-+ AC_SUBST(MOZ_RUST_URLPARSE) >-+ fi >- fi >- >- AC_SUBST(MOZ_PHOENIX) >-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 >-@@ -8320,7 +8320,8 @@ >- "expires_in_version": "60", >- "kind": "boolean", >- "bug_numbers": [1220885], >-- "description": "Whether the rust mp4 demuxer successfully parsed a stream segment." >-+ "description": "Whether the rust mp4 demuxer successfully parsed a stream segment.", >-+ "cpp_guard": "MOZ_RUST_MP4PARSE" >- }, >- "MEDIA_RUST_MP4PARSE_ERROR_CODE": { >- "record_in_processes": ["main", "content"], >-@@ -8329,7 +8330,8 @@ >- "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": { >- "record_in_processes": ["main", "content"], >-@@ -8337,7 +8339,8 @@ >- "expires_in_version": "60", >- "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": { >- "record_in_processes": ["main", "content"], >-@@ -8345,7 +8348,8 @@ >- "expires_in_version": "60", >- "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": { >- "record_in_processes": ["main", "content", "gpu"], >-diff --git toolkit/library/gtest/moz.build toolkit/library/gtest/moz.build >-index 69a8fb1f4893..c684f48e456e 100644 >---- toolkit/library/gtest/moz.build >-+++ toolkit/library/gtest/moz.build >-@@ -7,7 +7,6 @@ >- FINAL_TARGET = 'dist/bin/gtest' >- >- USE_LIBS += [ >-- 'gkrust-gtest', >- 'static:xul', >- # xul-gtest is an intermediate static library. It is used as FINAL_TARGET >- # for gtest code. >-@@ -21,6 +20,11 @@ USE_LIBS += [ >- # before StaticXULComponentStart. >- Libxul('xul-gtest-real') >- >-+if CONFIG['MOZ_RUST']: >-+ USE_LIBS += [ >-+ 'gkrust-gtest', >-+ ] >-+ >- DIRS += [ >- 'static', >- ] >-diff --git toolkit/library/moz.build toolkit/library/moz.build >-index 650f6eaba980..191e90ceb09a 100644 >---- toolkit/library/moz.build >-+++ toolkit/library/moz.build >-@@ -63,7 +63,7 @@ def Libxul(name): >- >- # This option should go away in bug 1290972, but we need to wait until >- # Rust 1.12 has been released. >-- if CONFIG['OS_ARCH'] == 'Darwin': >-+ if CONFIG['MOZ_RUST'] and CONFIG['OS_ARCH'] == 'Darwin': >- LDFLAGS += ['-Wl,-no_compact_unwind'] >- >- Libxul('xul') >-@@ -343,4 +343,5 @@ USE_LIBS += ['StaticXULComponentsEnd'] >- # The above library needs to be last for C++ purposes. This library, >- # however, is entirely composed of Rust code, and needs to come after >- # all the C++ code so any possible C++ -> Rust calls can be resolved. >--USE_LIBS += ['gkrust'] >-+if CONFIG['MOZ_RUST']: >-+ USE_LIBS += ['gkrust'] >-diff --git toolkit/moz.configure toolkit/moz.configure >-index ac9d123224ce..e90da70f0fa5 100644 >---- toolkit/moz.configure >-+++ toolkit/moz.configure >-@@ -88,8 +88,7 @@ include('../js/moz.configure') >- >- # Rust >- # ============================================================== >--include('../build/moz.configure/rust.configure', >-- when='--enable-compile-environment') >-+include('../build/moz.configure/rust.configure') >- >- >- # L10N >-@@ -623,13 +622,13 @@ id_and_secret_keyfile('Leanplum SDK') >- option('--enable-stylo', nargs='?', choices=('build',), >- help='Include Stylo in the build and/or enable it at runtime') >- >--@depends('--enable-stylo') >--def stylo_config(value): >-+@depends('--enable-stylo', '--enable-rust') >-+def stylo_config(value, rust_enabled): >- build_stylo = None >- enable_stylo = None >- >- # The default is to not build Stylo at all. >-- if value.origin == 'default': >-+ if not rust_enabled or value.origin == 'default': >- pass >- elif value == 'build': >- build_stylo = True >-@@ -769,12 +768,14 @@ set_config('SERVO_TARGET_DIR', servo_target_dir) >- option('--enable-webrender', nargs='?', choices=('build',), >- help='Include WebRender in the build and/or enable it at runtime') >- >--@depends('--enable-webrender', milestone) >--def webrender(value, milestone): >-+@depends('--enable-webrender', '--enable-rust', milestone) >-+def webrender(value, rust_enabled, milestone): >- build_webrender = None >- enable_webrender = None >- >-- if value.origin == 'default': >-+ if not rust_enabled: >-+ pass >-+ elif value.origin == 'default': >- # if nothing is specified, default to just building on Nightly >- build_webrender = milestone.is_nightly >- elif value == 'build': >-diff --git toolkit/toolkit.mozbuild toolkit/toolkit.mozbuild >-index b845aab48023..9215afc6dd2d 100644 >---- toolkit/toolkit.mozbuild >-+++ toolkit/toolkit.mozbuild >-@@ -133,16 +133,23 @@ if CONFIG['MOZ_PREF_EXTENSIONS']: >- >- DIRS += [ >- '/devtools', >-- '/toolkit/library', >-- '/toolkit/library/gtest/rust', >-- '/toolkit/library/rust', >-- '/toolkit/library/StaticXULComponentsEnd', >- '/services', >- '/startupcache', >- '/js/ductwork/debugger', >- '/other-licenses/snappy', >- ] >- >-+if CONFIG['MOZ_RUST']: >-+ DIRS += [ >-+ '/toolkit/library/gtest/rust', >-+ '/toolkit/library/rust', >-+ ] >-+ >-+DIRS += [ >-+ '/toolkit/library/StaticXULComponentsEnd', >-+ '/toolkit/library', >-+] >-+ >- if 'gtk' in CONFIG['MOZ_WIDGET_TOOLKIT']: >- DIRS += ['/toolkit/system/gnome'] >- >-diff --git toolkit/xre/nsAppRunner.cpp toolkit/xre/nsAppRunner.cpp >-index 667c2eb1b365..6fb6cf102baa 100644 >---- toolkit/xre/nsAppRunner.cpp >-+++ toolkit/xre/nsAppRunner.cpp >-@@ -227,11 +227,13 @@ >- extern uint32_t gRestartMode; >- extern void InstallSignalHandlers(const char *ProgramName); >- >-+#ifdef MOZ_RUST >- // This workaround is fixed in Rust 1.19. For details, see bug 1358151. >- // Implementation in toolkit/library/rust/shared/lib.rs >- extern "C" { >- void rust_init_please_remove_this_after_updating_rust_1_19(); >- } >-+#endif >- >- #define FILE_COMPATIBILITY_INFO NS_LITERAL_CSTRING("compatibility.ini") >- #define FILE_INVALIDATE_CACHES NS_LITERAL_CSTRING(".purgecaches") >-@@ -3122,8 +3124,10 @@ XREMain::XRE_mainInit(bool* aExitFlag) >- return 1; >- *aExitFlag = false; >- >-+#ifdef MOZ_RUST >- // This workaround is fixed in Rust 1.19. For details, see bug 1358151. >- rust_init_please_remove_this_after_updating_rust_1_19(); >-+#endif >- >- atexit(UnexpectedExit); >- auto expectedShutdown = mozilla::MakeScopeExit([&] { >-diff --git xpcom/base/nsDebugImpl.cpp xpcom/base/nsDebugImpl.cpp >-index e6bb623c258b..c49d61dce605 100644 >---- xpcom/base/nsDebugImpl.cpp >-+++ xpcom/base/nsDebugImpl.cpp >-@@ -148,14 +148,20 @@ nsDebugImpl::Abort(const char* aFile, int32_t aLine) >- return NS_OK; >- } >- >-+#ifdef MOZ_RUST >- // From toolkit/library/rust/lib.rs >- extern "C" void intentional_panic(const char* message); >-+#endif >- >- NS_IMETHODIMP >- nsDebugImpl::RustPanic(const char* aMessage) >- { >-+#ifdef MOZ_RUST >- intentional_panic(aMessage); >- return NS_OK; >-+#else >-+ return NS_ERROR_NOT_IMPLEMENTED; >-+#endif >- } >- >- NS_IMETHODIMP >-diff --git xpcom/rust/nsstring/gtest/moz.build xpcom/rust/nsstring/gtest/moz.build >-index 197411678815..5bed9e57e57d 100644 >---- xpcom/rust/nsstring/gtest/moz.build >-+++ xpcom/rust/nsstring/gtest/moz.build >-@@ -4,8 +4,9 @@ >- # 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/. >- >--UNIFIED_SOURCES += [ >-- 'Test.cpp' >--] >-+if CONFIG['MOZ_RUST']: >-+ UNIFIED_SOURCES += [ >-+ 'Test.cpp' >-+ ] >- >- FINAL_LIBRARY = 'xul-gtest' >diff --git a/www/firefox/files/patch-toolkit_moz.configure b/www/firefox/files/patch-toolkit_moz.configure >new file mode 100644 >index 000000000000..03c2d4f868a0 >--- /dev/null >+++ b/www/firefox/files/patch-toolkit_moz.configure >@@ -0,0 +1,13 @@ >+Bindgen crashes on i386 >+ >+--- toolkit/moz.configure.orig 2017-08-08 06:07:58 UTC >++++ toolkit/moz.configure >+@@ -620,7 +620,7 @@ def stylo_config(value, _, target): >+ >+ # If nothing is specified, default to building stylo where possible. >+ if value.origin == 'default': >+- if target.os == 'GNU' and target.bitness == 32: >++ if target.os != 'WINNT' and target.bitness == 32: >+ # The clang setup we use in automation is a little unusual, and >+ # doesn't play well with bindgen on 32-bit Linux. >+ pass
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 221335
:
185156
|
185288
|
185463
|
185588
|
185814
|
186106
|
186160
|
186289
|
186384
|
186557