View | Details | Raw Unified | Return to bug 221335 | Differences between
and this patch

Collapse All | Expand All

(-)b/Mk/Uses/gecko.mk (-2 / +2 lines)
Lines 37-48 RUN_DEPENDS+= libxul>=45:www/libxul Link Here
37
.elif ${gecko_ARGS:Mfirefox}
37
.elif ${gecko_ARGS:Mfirefox}
38
38
39
_GECKO_DEFAULT_VERSION=	52
39
_GECKO_DEFAULT_VERSION=	52
40
_GECKO_VERSIONS=		52 55
40
_GECKO_VERSIONS=		52 56
41
_GECKO_TYPE=	firefox
41
_GECKO_TYPE=	firefox
42
42
43
# Dependence lines for different Firefox versions
43
# Dependence lines for different Firefox versions
44
52_DEPENDS=		${LOCALBASE}/lib/firefox/firefox:www/firefox-esr
44
52_DEPENDS=		${LOCALBASE}/lib/firefox/firefox:www/firefox-esr
45
55_DEPENDS=		${LOCALBASE}/lib/firefox/firefox:www/firefox
45
56_DEPENDS=		${LOCALBASE}/lib/firefox/firefox:www/firefox
46
46
47
.if exists(${LOCALBASE}/bin/firefox)
47
.if exists(${LOCALBASE}/bin/firefox)
48
_GECKO_INSTALLED_VER!=	${LOCALBASE}/bin/firefox --version 2>/dev/null
48
_GECKO_INSTALLED_VER!=	${LOCALBASE}/bin/firefox --version 2>/dev/null
(-)b/Mk/bsd.gecko.mk (-3 / +8 lines)
Lines 388-400 post-patch-SNDIO-on: Link Here
388
		${MOZSRC}/media/webrtc/signaling/test/common.build
388
		${MOZSRC}/media/webrtc/signaling/test/common.build
389
.endif
389
.endif
390
390
391
.if ${PORT_OPTIONS:MRUST}
391
.if ${PORT_OPTIONS:MRUST} || ${MOZILLA_VER:R:R} >= 54
392
BUILD_DEPENDS+=	rust>=1.15.1:${RUST_PORT}
392
BUILD_DEPENDS+=	rust>=1.17.0:${RUST_PORT}
393
. if ${MOZILLA_VER:R:R} >= 51
393
. if ${MOZILLA_VER:R:R} >= 51
394
BUILD_DEPENDS+=	cargo>=0.16.0:devel/cargo
394
BUILD_DEPENDS+=	cargo>=0.18.0:devel/cargo
395
. endif
395
. endif
396
RUST_PORT?=		lang/rust
396
RUST_PORT?=		lang/rust
397
. if ${MOZILLA_VER:R:R} < 54
397
MOZ_OPTIONS+=	--enable-rust
398
MOZ_OPTIONS+=	--enable-rust
399
. endif
398
.else
400
.else
399
MOZ_OPTIONS+=	--disable-rust
401
MOZ_OPTIONS+=	--disable-rust
400
.endif
402
.endif
Lines 404-409 MOZ_OPTIONS+= --enable-debug --disable-release Link Here
404
STRIP=	# ports/184285
406
STRIP=	# ports/184285
405
.else
407
.else
406
MOZ_OPTIONS+=	--disable-debug --disable-debug-symbols --enable-release
408
MOZ_OPTIONS+=	--disable-debug --disable-debug-symbols --enable-release
409
. if ${MOZILLA_VER:R:R} >= 56
410
MOZ_OPTIONS+=	--enable-rust-simd
411
. endif
407
.endif
412
.endif
408
413
409
.if ${PORT_OPTIONS:MDTRACE}
414
.if ${PORT_OPTIONS:MDTRACE}
(-)b/www/firefox-i18n/Makefile (-2 / +2 lines)
Lines 2-8 Link Here
2
# $FreeBSD$
2
# $FreeBSD$
3
3
4
PORTNAME=	firefox-i18n
4
PORTNAME=	firefox-i18n
5
PORTVERSION=	55.0.3
5
PORTVERSION=	56.0b6
6
CATEGORIES=	www
6
CATEGORIES=	www
7
MASTER_SITES=	MOZILLA/${PORTNAME:S|-i18n||}/releases/${DISTVERSION}/linux-i686/xpi \
7
MASTER_SITES=	MOZILLA/${PORTNAME:S|-i18n||}/releases/${DISTVERSION}/linux-i686/xpi \
8
		MOZILLA/${PORTNAME:S|-i18n||}/candidates/${DISTVERSION}-candidates/build2/linux-i686/xpi
8
		MOZILLA/${PORTNAME:S|-i18n||}/candidates/${DISTVERSION}-candidates/build2/linux-i686/xpi
Lines 15-21 COMMENT= Localized interface for Firefox Link Here
15
15
16
EXTRACT_DEPENDS=	zip:archivers/zip
16
EXTRACT_DEPENDS=	zip:archivers/zip
17
17
18
USES=		zip:infozip gecko:firefox,55,build
18
USES=		zip:infozip gecko:firefox,56,build
19
USE_XPI=	firefox
19
USE_XPI=	firefox
20
20
21
NO_ARCH=	yes
21
NO_ARCH=	yes
(-)b/www/firefox-i18n/distinfo (-191 / +191 lines)
Lines 1-191 Link Here
1
TIMESTAMP = 1503590171
1
TIMESTAMP = 1503631265
2
SHA256 (xpi/firefox-i18n-55.0.3/ach.xpi) = 57e804fe2d2ecfce6f57406985d74d05b1bb6a4b0dccd3fcee8c3d9d36ce753d
2
SHA256 (xpi/firefox-i18n-56.0b6/ach.xpi) = dfae1580052eb577652b35a5551abc94c36f6239f046af13e184aa3c9d3e0cf7
3
SIZE (xpi/firefox-i18n-55.0.3/ach.xpi) = 447504
3
SIZE (xpi/firefox-i18n-56.0b6/ach.xpi) = 454854
4
SHA256 (xpi/firefox-i18n-55.0.3/af.xpi) = 4f676b98ab4198a36ed1ac3cb9f357e6b59110d1d86f756adcb675a86ab2069d
4
SHA256 (xpi/firefox-i18n-56.0b6/af.xpi) = 16f8b402a32e3a7c178276947069748f8be34cb12ba389627c736b4ae4ba8e84
5
SIZE (xpi/firefox-i18n-55.0.3/af.xpi) = 448924
5
SIZE (xpi/firefox-i18n-56.0b6/af.xpi) = 456174
6
SHA256 (xpi/firefox-i18n-55.0.3/an.xpi) = 33ac2d10ce013952bcb50e7f3769641d029dbdfe8c624a3a3bc2c8aa1ba70660
6
SHA256 (xpi/firefox-i18n-56.0b6/an.xpi) = 9c352c2906ce8e72c23c4d804315d438b70aca040c9e0213c0a3fe225ffa9bb9
7
SIZE (xpi/firefox-i18n-55.0.3/an.xpi) = 468638
7
SIZE (xpi/firefox-i18n-56.0b6/an.xpi) = 475821
8
SHA256 (xpi/firefox-i18n-55.0.3/ar.xpi) = 0ee1a5d9b6f03a7b65840f1257fcabbe7637951d1051fb830820f11ac34dba04
8
SHA256 (xpi/firefox-i18n-56.0b6/ar.xpi) = 1a4d90431d9de4d3716a1f5e52c5f0ebe43dca8089657abc5fcc59c7c946dc41
9
SIZE (xpi/firefox-i18n-55.0.3/ar.xpi) = 492759
9
SIZE (xpi/firefox-i18n-56.0b6/ar.xpi) = 500671
10
SHA256 (xpi/firefox-i18n-55.0.3/as.xpi) = 993d5f49b51453869b5ff75c1ba4f16dd8fd59beb62bffed33cf4fc7024f6129
10
SHA256 (xpi/firefox-i18n-56.0b6/as.xpi) = ea1b7a0968bb86eb3dcb24d5e7cab89612ee002619bafff0472024b47cbb4f58
11
SIZE (xpi/firefox-i18n-55.0.3/as.xpi) = 501507
11
SIZE (xpi/firefox-i18n-56.0b6/as.xpi) = 508197
12
SHA256 (xpi/firefox-i18n-55.0.3/ast.xpi) = e969a3716c0659b3c313f73f29ce3ffbab296ef81734ff9f4410982dc4830c8a
12
SHA256 (xpi/firefox-i18n-56.0b6/ast.xpi) = 5a7fbfc6c36730a263b5b21d866e41e58d4de68a207b808b1e11b41fb9dc8613
13
SIZE (xpi/firefox-i18n-55.0.3/ast.xpi) = 460841
13
SIZE (xpi/firefox-i18n-56.0b6/ast.xpi) = 469116
14
SHA256 (xpi/firefox-i18n-55.0.3/az.xpi) = 2708ec4d49a06b727e4a06d920b3cc4e68fcff0c10bf269ccba8a60f82312ff0
14
SHA256 (xpi/firefox-i18n-56.0b6/az.xpi) = e6e5735b3b18b726248209bd06006272525bd5fb4be810fa4f908a445203f770
15
SIZE (xpi/firefox-i18n-55.0.3/az.xpi) = 475368
15
SIZE (xpi/firefox-i18n-56.0b6/az.xpi) = 484942
16
SHA256 (xpi/firefox-i18n-55.0.3/be.xpi) = ca95866a02a0ccacd2c00a8ff69540fd2e6967a35b25f215aca6e372f11569d0
16
SHA256 (xpi/firefox-i18n-56.0b6/be.xpi) = 896db589d7495daaf7d7a624543534508fe7fc6649173ef69d2eff4655c5460d
17
SIZE (xpi/firefox-i18n-55.0.3/be.xpi) = 522575
17
SIZE (xpi/firefox-i18n-56.0b6/be.xpi) = 531343
18
SHA256 (xpi/firefox-i18n-55.0.3/bg.xpi) = 846cbd821bbea4e6a83ff7d391d4e286508925bd7c0089c42026fd13332dcf01
18
SHA256 (xpi/firefox-i18n-56.0b6/bg.xpi) = f4339f230cb6f2dc776138efabd9ec8a55acee833037c78a86c90c53e2c1e21a
19
SIZE (xpi/firefox-i18n-55.0.3/bg.xpi) = 520012
19
SIZE (xpi/firefox-i18n-56.0b6/bg.xpi) = 528746
20
SHA256 (xpi/firefox-i18n-55.0.3/bn-BD.xpi) = fb61c9008ba7b82230f925af5e37db806b1af20b772a5091558421e43bd6a572
20
SHA256 (xpi/firefox-i18n-56.0b6/bn-BD.xpi) = 47dba6dea3414af74e04d178997c90afbabb099cd961c4bcc08fdaa82f1e928a
21
SIZE (xpi/firefox-i18n-55.0.3/bn-BD.xpi) = 535107
21
SIZE (xpi/firefox-i18n-56.0b6/bn-BD.xpi) = 542730
22
SHA256 (xpi/firefox-i18n-55.0.3/bn-IN.xpi) = 11cb288dbcf601403ca2dde29a6ac394b12cb4841016788cc5efdd7db1d524f3
22
SHA256 (xpi/firefox-i18n-56.0b6/bn-IN.xpi) = a4a4ede30f31f178b03f5aa89dc0998ce4ad6aafcdb3ec5554a4bc939dd64c56
23
SIZE (xpi/firefox-i18n-55.0.3/bn-IN.xpi) = 526354
23
SIZE (xpi/firefox-i18n-56.0b6/bn-IN.xpi) = 534409
24
SHA256 (xpi/firefox-i18n-55.0.3/br.xpi) = 008ee7d4781834f7520f0b3459089ca1d97eb6518c670144279562094862dcd9
24
SHA256 (xpi/firefox-i18n-56.0b6/br.xpi) = 8b963028b5fed1b2c18da5f39f0080c8abdb52c4705cc77ab8c15c7c147718ca
25
SIZE (xpi/firefox-i18n-55.0.3/br.xpi) = 457060
25
SIZE (xpi/firefox-i18n-56.0b6/br.xpi) = 464239
26
SHA256 (xpi/firefox-i18n-55.0.3/bs.xpi) = dd243f01e59854112f48b8a3683d840173aee994ba532496ee2a06b10fada878
26
SHA256 (xpi/firefox-i18n-56.0b6/bs.xpi) = a6e6f2d49ef0f3555dc0c3b3638172ea877c5eebd8188553b135d3f8a621cecf
27
SIZE (xpi/firefox-i18n-55.0.3/bs.xpi) = 465026
27
SIZE (xpi/firefox-i18n-56.0b6/bs.xpi) = 472213
28
SHA256 (xpi/firefox-i18n-55.0.3/ca.xpi) = 25c6e4bdb355f6d116be23d241a62ffe7853a971e461c56a1ab586433743bffe
28
SHA256 (xpi/firefox-i18n-56.0b6/ca.xpi) = da9278363135986bc3e59d33ab18c02cbcfeb51ee2bc26eda4065c71fbdeff5f
29
SIZE (xpi/firefox-i18n-55.0.3/ca.xpi) = 473018
29
SIZE (xpi/firefox-i18n-56.0b6/ca.xpi) = 480071
30
SHA256 (xpi/firefox-i18n-55.0.3/cak.xpi) = 5df85a9d3fb158eece6118ff9d6493928b4a846f6c0e5c8178dea6b5f878b8d3
30
SHA256 (xpi/firefox-i18n-56.0b6/cak.xpi) = 145dadd5bf690bb1cbe71f1605590399c838125554a1547a3f3e3c5ea3449b81
31
SIZE (xpi/firefox-i18n-55.0.3/cak.xpi) = 481774
31
SIZE (xpi/firefox-i18n-56.0b6/cak.xpi) = 489465
32
SHA256 (xpi/firefox-i18n-55.0.3/cs.xpi) = e5ba4844b9ced4c6a6cfd75853b6000fe2eabb9b33fffa73cc19e9562475d95c
32
SHA256 (xpi/firefox-i18n-56.0b6/cs.xpi) = ac161481ea2472aca48c2c6e284a159e32de02ace5f2b12ed568c46ce7a2f09e
33
SIZE (xpi/firefox-i18n-55.0.3/cs.xpi) = 476809
33
SIZE (xpi/firefox-i18n-56.0b6/cs.xpi) = 485050
34
SHA256 (xpi/firefox-i18n-55.0.3/cy.xpi) = 7a80d417cde600be304f1d7b59840ea62706509183515b5191d703ce59a668a0
34
SHA256 (xpi/firefox-i18n-56.0b6/cy.xpi) = af9ebec663c49d04e3753183d4ee3fcda5adaa2e6de5a75a52f30a1c94f40057
35
SIZE (xpi/firefox-i18n-55.0.3/cy.xpi) = 458725
35
SIZE (xpi/firefox-i18n-56.0b6/cy.xpi) = 466248
36
SHA256 (xpi/firefox-i18n-55.0.3/da.xpi) = 38bf51be7d418b67a69366f20aa1fe9b0c22fcf769757a0aefbcd60ac59240b9
36
SHA256 (xpi/firefox-i18n-56.0b6/da.xpi) = 7acffb58e9c64b4df48349deb91a8d5dfd636fd3e5f3b7118a18dc8c785a30ec
37
SIZE (xpi/firefox-i18n-55.0.3/da.xpi) = 452604
37
SIZE (xpi/firefox-i18n-56.0b6/da.xpi) = 460051
38
SHA256 (xpi/firefox-i18n-55.0.3/de.xpi) = 1b815ec21a24870acb7a84171ef7b64cff8d718c666c70b986ea8594da3dd95a
38
SHA256 (xpi/firefox-i18n-56.0b6/de.xpi) = 1d849df3784e9f578281238d475aefabb0723263d7c324a70987179a3b5ee53c
39
SIZE (xpi/firefox-i18n-55.0.3/de.xpi) = 465990
39
SIZE (xpi/firefox-i18n-56.0b6/de.xpi) = 475448
40
SHA256 (xpi/firefox-i18n-55.0.3/dsb.xpi) = 33f12a4322495be14a67a28c5b9518d9757dbf39a733e229cf3b9f28b64a6ddf
40
SHA256 (xpi/firefox-i18n-56.0b6/dsb.xpi) = 36ad9c4caeb36c205905735a0aef18b59e27c74151bef936d6f0b628c96e5034
41
SIZE (xpi/firefox-i18n-55.0.3/dsb.xpi) = 482081
41
SIZE (xpi/firefox-i18n-56.0b6/dsb.xpi) = 489855
42
SHA256 (xpi/firefox-i18n-55.0.3/el.xpi) = a6d1aefe768a046f9ba79b8b287d4e4656004556de9f2306af44b901c169ff9f
42
SHA256 (xpi/firefox-i18n-56.0b6/el.xpi) = a80c1bf01c0d0aa3b7181ec910799a57f26e371b20e7f414e868585f76f99150
43
SIZE (xpi/firefox-i18n-55.0.3/el.xpi) = 539777
43
SIZE (xpi/firefox-i18n-56.0b6/el.xpi) = 554080
44
SHA256 (xpi/firefox-i18n-55.0.3/en-GB.xpi) = 07474847b08f035f977013a0c7a5e42e07636901251207ba3d21300985d0eff9
44
SHA256 (xpi/firefox-i18n-56.0b6/en-GB.xpi) = 2489256b564908aeea91afaeefabb4e5fddbf1134131a12c8a0421e23b661033
45
SIZE (xpi/firefox-i18n-55.0.3/en-GB.xpi) = 439269
45
SIZE (xpi/firefox-i18n-56.0b6/en-GB.xpi) = 447332
46
SHA256 (xpi/firefox-i18n-55.0.3/en-US.xpi) = f57cda45b8c6e177bbc705fb5db21878d5297c57281c8fba810c6cbb6b095ae8
46
SHA256 (xpi/firefox-i18n-56.0b6/en-US.xpi) = 90cbea318aaaffb4ab67d8ecad0b786de10399d1d270b97eb360e8f52d158627
47
SIZE (xpi/firefox-i18n-55.0.3/en-US.xpi) = 439814
47
SIZE (xpi/firefox-i18n-56.0b6/en-US.xpi) = 446910
48
SHA256 (xpi/firefox-i18n-55.0.3/en-ZA.xpi) = bf5e3fac34d5ccc83af7c5b60e6d2077c27ded688d3e37efcfbf6386459a3f39
48
SHA256 (xpi/firefox-i18n-56.0b6/en-ZA.xpi) = f106c7656b0b751b46b57717367a1e187df73ad46e5cf44c367b341ed9f7e582
49
SIZE (xpi/firefox-i18n-55.0.3/en-ZA.xpi) = 438621
49
SIZE (xpi/firefox-i18n-56.0b6/en-ZA.xpi) = 445875
50
SHA256 (xpi/firefox-i18n-55.0.3/eo.xpi) = 4dffe19fb6787d5b2795066618532bb4951695ac10dbca20c17ccedadff2334b
50
SHA256 (xpi/firefox-i18n-56.0b6/eo.xpi) = 29eed024bda5fede0abf9a28f9e4da1749b2bede2bb613263e8733f902b7745e
51
SIZE (xpi/firefox-i18n-55.0.3/eo.xpi) = 461140
51
SIZE (xpi/firefox-i18n-56.0b6/eo.xpi) = 469040
52
SHA256 (xpi/firefox-i18n-55.0.3/es-AR.xpi) = 1b4b1ca27e4265a7868858a9f9822384908b87f567808b7253cc49be7616c036
52
SHA256 (xpi/firefox-i18n-56.0b6/es-AR.xpi) = 0b0d5afc3326ba8b284ef493375c6f5945dc2540affa27f966185f7eb64797c1
53
SIZE (xpi/firefox-i18n-55.0.3/es-AR.xpi) = 467619
53
SIZE (xpi/firefox-i18n-56.0b6/es-AR.xpi) = 475399
54
SHA256 (xpi/firefox-i18n-55.0.3/es-CL.xpi) = 6dcd97412618233b7d82d4f8b614da267010e2d5af3a736209bd0179c1f5ea35
54
SHA256 (xpi/firefox-i18n-56.0b6/es-CL.xpi) = bf0a81e47046e23bf104d1ea39f9577fabd717f5bbf3c0a0dae54ff36a76df53
55
SIZE (xpi/firefox-i18n-55.0.3/es-CL.xpi) = 471599
55
SIZE (xpi/firefox-i18n-56.0b6/es-CL.xpi) = 479876
56
SHA256 (xpi/firefox-i18n-55.0.3/es-ES.xpi) = 8f29eab7fcea76fb16fddbc6bc1505373b414f07e1678f231c8dd77fcd7c2dbb
56
SHA256 (xpi/firefox-i18n-56.0b6/es-ES.xpi) = 6e65540e72d20086dad5ea404f1498a92e4f7c21683e8bb8c99564cce338e575
57
SIZE (xpi/firefox-i18n-55.0.3/es-ES.xpi) = 359824
57
SIZE (xpi/firefox-i18n-56.0b6/es-ES.xpi) = 365588
58
SHA256 (xpi/firefox-i18n-55.0.3/es-MX.xpi) = c5cc49fb974401edcfd58b114d0d4f7d2a528522f89d50d393677fab7d586fac
58
SHA256 (xpi/firefox-i18n-56.0b6/es-MX.xpi) = f208c0693cfc655acaf1f7d56fac3c8897e38e5d9cb8f9f66bb0b2ba994e914a
59
SIZE (xpi/firefox-i18n-55.0.3/es-MX.xpi) = 474245
59
SIZE (xpi/firefox-i18n-56.0b6/es-MX.xpi) = 482523
60
SHA256 (xpi/firefox-i18n-55.0.3/et.xpi) = 155bdfe2c508b68c4a23a362158cd84d3be3080f3396b1fa060aed117bad89b7
60
SHA256 (xpi/firefox-i18n-56.0b6/et.xpi) = c1b50d614db0cdfd4cde80bdd34121bb8018face02dbd50ba8a8a191778ffc3e
61
SIZE (xpi/firefox-i18n-55.0.3/et.xpi) = 454471
61
SIZE (xpi/firefox-i18n-56.0b6/et.xpi) = 463225
62
SHA256 (xpi/firefox-i18n-55.0.3/eu.xpi) = c32de1d149e2f33cdee8a58e226d00cff29a78d783e6360e7715a006e74aeeec
62
SHA256 (xpi/firefox-i18n-56.0b6/eu.xpi) = b2bb41c6f480bb92e189c9f104845c119e2b3121073c3e6bbba96d9b243a7d15
63
SIZE (xpi/firefox-i18n-55.0.3/eu.xpi) = 460419
63
SIZE (xpi/firefox-i18n-56.0b6/eu.xpi) = 467842
64
SHA256 (xpi/firefox-i18n-55.0.3/fa.xpi) = ae990f77aea02c797fb14e2e10f736109888735cee39e39b1bfcec9c9add5c46
64
SHA256 (xpi/firefox-i18n-56.0b6/fa.xpi) = 6887bb0f493f8bf8bbe317c9f814d4695e2507da7f706474526f7e7a3eb22528
65
SIZE (xpi/firefox-i18n-55.0.3/fa.xpi) = 511561
65
SIZE (xpi/firefox-i18n-56.0b6/fa.xpi) = 518625
66
SHA256 (xpi/firefox-i18n-55.0.3/ff.xpi) = 14f8217883d80c32c08f38284f42e5978c3d6cf077dcc6065e8d2d954c3640d5
66
SHA256 (xpi/firefox-i18n-56.0b6/ff.xpi) = 228f9eb486ad4b365f69dc270c32b8c9adc8908dc08083af616605b56e92493a
67
SIZE (xpi/firefox-i18n-55.0.3/ff.xpi) = 455294
67
SIZE (xpi/firefox-i18n-56.0b6/ff.xpi) = 463057
68
SHA256 (xpi/firefox-i18n-55.0.3/fi.xpi) = d00ebd2bc119a6f78c29701cfaa9434d51a14d62e0c3be7e271c143fc87bf1ce
68
SHA256 (xpi/firefox-i18n-56.0b6/fi.xpi) = 299a418dbda495f5850a8fb5324c59794d92b0d2c7221d73e6f63e72e537adf9
69
SIZE (xpi/firefox-i18n-55.0.3/fi.xpi) = 453945
69
SIZE (xpi/firefox-i18n-56.0b6/fi.xpi) = 462333
70
SHA256 (xpi/firefox-i18n-55.0.3/fr.xpi) = a2ea34fa62fb6b83f77843d7284ad96491af8700aaa4f2df5cba6a5058ddc47c
70
SHA256 (xpi/firefox-i18n-56.0b6/fr.xpi) = fcb2e3cb87727e36def1493403adf4b8ca1890b5727cdc841a25c53dfa9fcbfc
71
SIZE (xpi/firefox-i18n-55.0.3/fr.xpi) = 476667
71
SIZE (xpi/firefox-i18n-56.0b6/fr.xpi) = 484521
72
SHA256 (xpi/firefox-i18n-55.0.3/fy-NL.xpi) = 0fe4964412a415c03c09ef320e299a9a361a41c84f317dee795e36b7f5612115
72
SHA256 (xpi/firefox-i18n-56.0b6/fy-NL.xpi) = d3f612dff42af13343ca94d5944c731db0c3bb8908033a017dd916912c51c2ad
73
SIZE (xpi/firefox-i18n-55.0.3/fy-NL.xpi) = 469971
73
SIZE (xpi/firefox-i18n-56.0b6/fy-NL.xpi) = 478012
74
SHA256 (xpi/firefox-i18n-55.0.3/ga-IE.xpi) = 7e2e87dd6d25934dfc66d804531320ca71b53933245c361c8dd6404688b8ef39
74
SHA256 (xpi/firefox-i18n-56.0b6/ga-IE.xpi) = 147f6b5cfa4d291f872c4f7de881a58e8ec80ad4dad9c904066639881f5f2ce7
75
SIZE (xpi/firefox-i18n-55.0.3/ga-IE.xpi) = 481440
75
SIZE (xpi/firefox-i18n-56.0b6/ga-IE.xpi) = 489337
76
SHA256 (xpi/firefox-i18n-55.0.3/gd.xpi) = 6c45c76ff5a0ae373f6ec8c0d81859f345cc31ad55471e702704c434797cca07
76
SHA256 (xpi/firefox-i18n-56.0b6/gd.xpi) = 4c86ec15ab92fa9b29e6853cc2e43f84d995e9c9c164ed09212797a012ebdd78
77
SIZE (xpi/firefox-i18n-55.0.3/gd.xpi) = 469055
77
SIZE (xpi/firefox-i18n-56.0b6/gd.xpi) = 476885
78
SHA256 (xpi/firefox-i18n-55.0.3/gl.xpi) = b1b699a2f9134d951d704c1b42f6677004c2cede354881b9b96438323ccbcb33
78
SHA256 (xpi/firefox-i18n-56.0b6/gl.xpi) = 047b9172f00ff9d324cf6d4bf808037e25a13bbd7a63becea0ef2ecc6790bc7e
79
SIZE (xpi/firefox-i18n-55.0.3/gl.xpi) = 459111
79
SIZE (xpi/firefox-i18n-56.0b6/gl.xpi) = 466427
80
SHA256 (xpi/firefox-i18n-55.0.3/gn.xpi) = af4389f4028790c393fd9623b13b8ea9587d25918c2b1635743d18de09f6269f
80
SHA256 (xpi/firefox-i18n-56.0b6/gn.xpi) = 62d4811509817e7ad05699531259d1de1777308c5c74445ef1a8f79e119400ef
81
SIZE (xpi/firefox-i18n-55.0.3/gn.xpi) = 476201
81
SIZE (xpi/firefox-i18n-56.0b6/gn.xpi) = 485748
82
SHA256 (xpi/firefox-i18n-55.0.3/gu-IN.xpi) = 547e37eca8d5a45fce201c550a4aca379b9bb006d7ff83b71971afedb641a3f4
82
SHA256 (xpi/firefox-i18n-56.0b6/gu-IN.xpi) = ab83105e68b4e1e2c627d9d445c1df8df6ecb4e2f4dda782b018779b803df3b2
83
SIZE (xpi/firefox-i18n-55.0.3/gu-IN.xpi) = 498986
83
SIZE (xpi/firefox-i18n-56.0b6/gu-IN.xpi) = 513694
84
SHA256 (xpi/firefox-i18n-55.0.3/he.xpi) = 451c0b7cb95accda6f8bca275f4d4a19c39be7160cce08975c6d751d11405255
84
SHA256 (xpi/firefox-i18n-56.0b6/he.xpi) = 94e6e96159471d0ff0fdd0ed49c8b305fbffa2e681385bed8a532cee117984e8
85
SIZE (xpi/firefox-i18n-55.0.3/he.xpi) = 479882
85
SIZE (xpi/firefox-i18n-56.0b6/he.xpi) = 488454
86
SHA256 (xpi/firefox-i18n-55.0.3/hi-IN.xpi) = 77fd9e88268d1bb3f42b99af29e87c666e7a1ebaa26fafaad3afa55aab6ea1ce
86
SHA256 (xpi/firefox-i18n-56.0b6/hi-IN.xpi) = 9ec81efc60591a8fb658c7e4612f96529d9c389b9de704ec4163b734fbf0b967
87
SIZE (xpi/firefox-i18n-55.0.3/hi-IN.xpi) = 530571
87
SIZE (xpi/firefox-i18n-56.0b6/hi-IN.xpi) = 537174
88
SHA256 (xpi/firefox-i18n-55.0.3/hr.xpi) = d36986ce628ebeddc28a56713f1444ec8aa99ffa297d4bc1b3478a92c3e6a8f0
88
SHA256 (xpi/firefox-i18n-56.0b6/hr.xpi) = c40158ff3466e1836d6cca42860ed0f782c15ee2ec9884e868465a64933c8fbe
89
SIZE (xpi/firefox-i18n-55.0.3/hr.xpi) = 467992
89
SIZE (xpi/firefox-i18n-56.0b6/hr.xpi) = 475017
90
SHA256 (xpi/firefox-i18n-55.0.3/hsb.xpi) = 0200e7ad91f8ae46cbd63e1b865f8fc8a58353aa189001b58a38da079bf9f02a
90
SHA256 (xpi/firefox-i18n-56.0b6/hsb.xpi) = 1beeba13527cdadf6a13ac855c26007c58a5ad74923678e27e156853c42873a0
91
SIZE (xpi/firefox-i18n-55.0.3/hsb.xpi) = 479798
91
SIZE (xpi/firefox-i18n-56.0b6/hsb.xpi) = 487554
92
SHA256 (xpi/firefox-i18n-55.0.3/hu.xpi) = c60d25907f159b1a59475682a55a8afa9f899e93a739c5f721b46c3bd7f63012
92
SHA256 (xpi/firefox-i18n-56.0b6/hu.xpi) = 33e354d15bda95d7be3ec0fa302cedd6f94ecc45a51e14d2294159855b2c96b8
93
SIZE (xpi/firefox-i18n-55.0.3/hu.xpi) = 481645
93
SIZE (xpi/firefox-i18n-56.0b6/hu.xpi) = 490147
94
SHA256 (xpi/firefox-i18n-55.0.3/hy-AM.xpi) = 2564f7fa81cc2d0e2fa87e7199e62afd3174b9f0339001d730da1a6255a8782a
94
SHA256 (xpi/firefox-i18n-56.0b6/hy-AM.xpi) = 67e4ef1f940789f23f09f3061be5502a0da16f70c921d2a10cd89584df6cb5ca
95
SIZE (xpi/firefox-i18n-55.0.3/hy-AM.xpi) = 520878
95
SIZE (xpi/firefox-i18n-56.0b6/hy-AM.xpi) = 527669
96
SHA256 (xpi/firefox-i18n-55.0.3/id.xpi) = 13ee8d82e28f13d6e29555dd261dd1bacf1db930889eecb594bbb0ee214a9d9f
96
SHA256 (xpi/firefox-i18n-56.0b6/id.xpi) = 1105795b4d8bb0d4911ca8b66ca06fbf3ae601ae3cc2ceffd3d251e944bc94f2
97
SIZE (xpi/firefox-i18n-55.0.3/id.xpi) = 450290
97
SIZE (xpi/firefox-i18n-56.0b6/id.xpi) = 459026
98
SHA256 (xpi/firefox-i18n-55.0.3/is.xpi) = 77fa1716d95bef9ff32e5e554df1a6f74638ebe3e679a8239a5209a7ad6c3551
98
SHA256 (xpi/firefox-i18n-56.0b6/is.xpi) = 96ae14dd40c9a1edb4a22deae513dbbc0435d7ad16f92ab2d30ecadc0f0061bd
99
SIZE (xpi/firefox-i18n-55.0.3/is.xpi) = 464372
99
SIZE (xpi/firefox-i18n-56.0b6/is.xpi) = 467403
100
SHA256 (xpi/firefox-i18n-55.0.3/it.xpi) = 0bdd8bf97c9c3880d1f002d647450487cf21fc003067469f2b9eda8301bd9f13
100
SHA256 (xpi/firefox-i18n-56.0b6/it.xpi) = 06365837e3e7470716ff3d15397812838c18b069228bfcc6180feb718e425973
101
SIZE (xpi/firefox-i18n-55.0.3/it.xpi) = 352941
101
SIZE (xpi/firefox-i18n-56.0b6/it.xpi) = 358654
102
SHA256 (xpi/firefox-i18n-55.0.3/ja.xpi) = c907bbf1efde7e601ec2ff6fb528896c8b2c3b70783dfa309e7d8aa54c45e655
102
SHA256 (xpi/firefox-i18n-56.0b6/ja.xpi) = 358118d443faca749bf82d441f464d39998aae563191847ec301e842f550a502
103
SIZE (xpi/firefox-i18n-55.0.3/ja.xpi) = 519764
103
SIZE (xpi/firefox-i18n-56.0b6/ja.xpi) = 529107
104
SHA256 (xpi/firefox-i18n-55.0.3/ka.xpi) = ab9bec8018935ba426f04a96e23b93e0f0d633f26f84a34c6553b883c6dd3c17
104
SHA256 (xpi/firefox-i18n-56.0b6/ka.xpi) = cee91b580bdb0a4a4699fa315923448f30cd5f612f024acc4bd7d70bb4be3937
105
SIZE (xpi/firefox-i18n-55.0.3/ka.xpi) = 493535
105
SIZE (xpi/firefox-i18n-56.0b6/ka.xpi) = 509056
106
SHA256 (xpi/firefox-i18n-55.0.3/kab.xpi) = 5e13da854fb8fdcfef8f760c9bb1cbfb7571856b933c181d41d09f36a7449dfb
106
SHA256 (xpi/firefox-i18n-56.0b6/kab.xpi) = 759f93232bf6a32456b3edf358a198efeff0a682ac5e38f206b4e6496ebc609d
107
SIZE (xpi/firefox-i18n-55.0.3/kab.xpi) = 470044
107
SIZE (xpi/firefox-i18n-56.0b6/kab.xpi) = 477378
108
SHA256 (xpi/firefox-i18n-55.0.3/kk.xpi) = 5edae7dba33d4369d529f3f965851798e31fd701c792c575de42602cf91eaee0
108
SHA256 (xpi/firefox-i18n-56.0b6/kk.xpi) = 369149b4d2cbbeb5e081a734c254e0396eb78c11f5c4a15fbc581c3d1be0b64b
109
SIZE (xpi/firefox-i18n-55.0.3/kk.xpi) = 526707
109
SIZE (xpi/firefox-i18n-56.0b6/kk.xpi) = 534891
110
SHA256 (xpi/firefox-i18n-55.0.3/km.xpi) = 8c741376968bc5145cf808c715c5dc92f7cf2a7134d3c1eaa9bc66e96d1b3ff0
110
SHA256 (xpi/firefox-i18n-56.0b6/km.xpi) = 27a3bbc50efac6d6ed66a47d3e6121cbd41eb6713f845f0256da29f7256f6d62
111
SIZE (xpi/firefox-i18n-55.0.3/km.xpi) = 540646
111
SIZE (xpi/firefox-i18n-56.0b6/km.xpi) = 549304
112
SHA256 (xpi/firefox-i18n-55.0.3/kn.xpi) = d387a3a29d621d2e1163cd6d1728861f6344c370950124cfce754f4ff5fe37d8
112
SHA256 (xpi/firefox-i18n-56.0b6/kn.xpi) = 9b1121dcb1ded73a1e13fccc1709254b962dd7afbbe69792cce84462ca629255
113
SIZE (xpi/firefox-i18n-55.0.3/kn.xpi) = 538859
113
SIZE (xpi/firefox-i18n-56.0b6/kn.xpi) = 545434
114
SHA256 (xpi/firefox-i18n-55.0.3/ko.xpi) = 524eca8be7b4ec0c04dfc09376d18479a9ddf677b006155b3b8c889f1d1c7425
114
SHA256 (xpi/firefox-i18n-56.0b6/ko.xpi) = a29ad71c4cbec603a21ae7db791232667f3fef42072d99fc13d54eeee9628897
115
SIZE (xpi/firefox-i18n-55.0.3/ko.xpi) = 494547
115
SIZE (xpi/firefox-i18n-56.0b6/ko.xpi) = 502854
116
SHA256 (xpi/firefox-i18n-55.0.3/lij.xpi) = 79cfb9142d836ffda39039205e72f52eba8d09a61d6d77382267320a3dc4d984
116
SHA256 (xpi/firefox-i18n-56.0b6/lij.xpi) = 9f2ddb0fda9972f64ae29a06f8b0c4a6c0307c0d425993ddbf200bed29e0677e
117
SIZE (xpi/firefox-i18n-55.0.3/lij.xpi) = 458698
117
SIZE (xpi/firefox-i18n-56.0b6/lij.xpi) = 467234
118
SHA256 (xpi/firefox-i18n-55.0.3/lt.xpi) = b8c979f9259ce409ff26af1beddd004fa90420021f5d98f2c069beb362f92160
118
SHA256 (xpi/firefox-i18n-56.0b6/lt.xpi) = 90f37e49815d0cf90126d20d922291e6debca1e5fb0439d5186a30ce19c6f342
119
SIZE (xpi/firefox-i18n-55.0.3/lt.xpi) = 481082
119
SIZE (xpi/firefox-i18n-56.0b6/lt.xpi) = 488711
120
SHA256 (xpi/firefox-i18n-55.0.3/lv.xpi) = d58361769c078859d65aba27d79a93fc839871a14f026d73e607facf49373a84
120
SHA256 (xpi/firefox-i18n-56.0b6/lv.xpi) = 9f1afceb2e16dcd6096ea62a3597b998fa6f00912ffedc1b5cbfe4aab4930824
121
SIZE (xpi/firefox-i18n-55.0.3/lv.xpi) = 473736
121
SIZE (xpi/firefox-i18n-56.0b6/lv.xpi) = 482204
122
SHA256 (xpi/firefox-i18n-55.0.3/mai.xpi) = a3ab546aad483b92e5d2757d46654d89b2593097624052a1638cc8f0c2caee41
122
SHA256 (xpi/firefox-i18n-56.0b6/mai.xpi) = 4f0627dc74553843860397d51404d97084a87f96288cf9b4c2fac6f51dc4f600
123
SIZE (xpi/firefox-i18n-55.0.3/mai.xpi) = 517894
123
SIZE (xpi/firefox-i18n-56.0b6/mai.xpi) = 524661
124
SHA256 (xpi/firefox-i18n-55.0.3/mk.xpi) = aba046611289624c02c1d3c81fe8a4ea50a96088ece2bd7fb2be40df882ac795
124
SHA256 (xpi/firefox-i18n-56.0b6/mk.xpi) = 09c383b1d9d74cc86b76726a80aafe1d1817889780b11de4bc4172c2f3cfbce1
125
SIZE (xpi/firefox-i18n-55.0.3/mk.xpi) = 500207
125
SIZE (xpi/firefox-i18n-56.0b6/mk.xpi) = 507777
126
SHA256 (xpi/firefox-i18n-55.0.3/ml.xpi) = b40dd990aa6b36924279bb9af0a0e4ce5c8497b275244794b200e5815ac42b48
126
SHA256 (xpi/firefox-i18n-56.0b6/ml.xpi) = 3b59caa1cd4368ec1540579fba5549ff452d61f5cc5386844d1a32a8f32b0ce6
127
SIZE (xpi/firefox-i18n-55.0.3/ml.xpi) = 540982
127
SIZE (xpi/firefox-i18n-56.0b6/ml.xpi) = 547505
128
SHA256 (xpi/firefox-i18n-55.0.3/mr.xpi) = bebcf5b465fc9e33955cdf4343c479f7b998819667ba3a23e298d38f833d2ead
128
SHA256 (xpi/firefox-i18n-56.0b6/mr.xpi) = 6d20de4aab2c9c91c33a59216f55c34f6e3dd06168fb2717dd80ad415086e211
129
SIZE (xpi/firefox-i18n-55.0.3/mr.xpi) = 528249
129
SIZE (xpi/firefox-i18n-56.0b6/mr.xpi) = 536554
130
SHA256 (xpi/firefox-i18n-55.0.3/ms.xpi) = 06d40cc6207dfd452fb12a3429b0bdf85c4fc196d51e66e6197ede9e9e5c9a82
130
SHA256 (xpi/firefox-i18n-56.0b6/ms.xpi) = 5e78d9eab21414ea0266a190efdc4f32f2e58b94abd767015679e1fde41c074a
131
SIZE (xpi/firefox-i18n-55.0.3/ms.xpi) = 459191
131
SIZE (xpi/firefox-i18n-56.0b6/ms.xpi) = 466549
132
SHA256 (xpi/firefox-i18n-55.0.3/my.xpi) = 48e005f6558c13ad0f3f73afc81489c0cb384b00589bf2b3cd03569e6bd2a82c
132
SHA256 (xpi/firefox-i18n-56.0b6/my.xpi) = e1b5ec13b8c76c09c9cfc8b56cb2bdb56f7c508cf1b37d546a8317ffc95ac53f
133
SIZE (xpi/firefox-i18n-55.0.3/my.xpi) = 528097
133
SIZE (xpi/firefox-i18n-56.0b6/my.xpi) = 536682
134
SHA256 (xpi/firefox-i18n-55.0.3/nb-NO.xpi) = 00e8ac31e0597ef4a1928b05b4d199563fcb249b3368d9bb63b8539174eafd5c
134
SHA256 (xpi/firefox-i18n-56.0b6/nb-NO.xpi) = e595f4a955765c4609b04a3ebd7b098faca18fd7585b428cae970d9cf24d9f8f
135
SIZE (xpi/firefox-i18n-55.0.3/nb-NO.xpi) = 457645
135
SIZE (xpi/firefox-i18n-56.0b6/nb-NO.xpi) = 465535
136
SHA256 (xpi/firefox-i18n-55.0.3/nl.xpi) = 358bd38888586ae4498b41ea6bd7417939cc828cce78be80ffef3a32741458bf
136
SHA256 (xpi/firefox-i18n-56.0b6/nl.xpi) = 97a5e31236da3828796dfbe8b3e2dc9c724ed7ac0ca28b27c91e3cfa1a017cb3
137
SIZE (xpi/firefox-i18n-55.0.3/nl.xpi) = 461510
137
SIZE (xpi/firefox-i18n-56.0b6/nl.xpi) = 469014
138
SHA256 (xpi/firefox-i18n-55.0.3/nn-NO.xpi) = 11dbe5bce47e3829a7b5d43c12178fc2ff750495f6aa0209c69fc7b6b96f6b8e
138
SHA256 (xpi/firefox-i18n-56.0b6/nn-NO.xpi) = 84eac73cfb8cd18a2f484778674ffbba3ba6b77b94eb8d4559d86f9f70159aab
139
SIZE (xpi/firefox-i18n-55.0.3/nn-NO.xpi) = 458457
139
SIZE (xpi/firefox-i18n-56.0b6/nn-NO.xpi) = 466167
140
SHA256 (xpi/firefox-i18n-55.0.3/or.xpi) = 64d1c4205a8e249bbb8604efac83b73251fadfc23daee75f40a51d9e2a9ca6a1
140
SHA256 (xpi/firefox-i18n-56.0b6/or.xpi) = f160806495969591a90e50b22356537cbc5146572c55e403a1e698e13b85b8e4
141
SIZE (xpi/firefox-i18n-55.0.3/or.xpi) = 511354
141
SIZE (xpi/firefox-i18n-56.0b6/or.xpi) = 518125
142
SHA256 (xpi/firefox-i18n-55.0.3/pa-IN.xpi) = c2fa26e5fe2400c6890aea2722ab010265cd7541653092d190e45a6805d9ec13
142
SHA256 (xpi/firefox-i18n-56.0b6/pa-IN.xpi) = 586610c9b6e4f1cb0078038b5bb4da9d0b23ba5e3140a6e5124d25afedd0d44f
143
SIZE (xpi/firefox-i18n-55.0.3/pa-IN.xpi) = 498453
143
SIZE (xpi/firefox-i18n-56.0b6/pa-IN.xpi) = 509005
144
SHA256 (xpi/firefox-i18n-55.0.3/pl.xpi) = c4973aa40a75f371d0c85a1e1d9c6fc5184eac38313ed50ea9c7189590a3d416
144
SHA256 (xpi/firefox-i18n-56.0b6/pl.xpi) = 146326ee1a267ce45bc900ca723692c2e155b1c582292083e4dc08b2fdef6d50
145
SIZE (xpi/firefox-i18n-55.0.3/pl.xpi) = 372429
145
SIZE (xpi/firefox-i18n-56.0b6/pl.xpi) = 377483
146
SHA256 (xpi/firefox-i18n-55.0.3/pt-BR.xpi) = 3555d0e761bbe2ba1035f62960344836b9ad1b2cb55edc07b215d826385c8d5b
146
SHA256 (xpi/firefox-i18n-56.0b6/pt-BR.xpi) = 36be368f26be31365fa98666893c93e8c563a7d583affbfb63596d25ee07cb95
147
SIZE (xpi/firefox-i18n-55.0.3/pt-BR.xpi) = 462717
147
SIZE (xpi/firefox-i18n-56.0b6/pt-BR.xpi) = 470912
148
SHA256 (xpi/firefox-i18n-55.0.3/pt-PT.xpi) = be15f048d135f364a7605527b9569ae81cc819cf38c7ed933298b3d4c58b5eef
148
SHA256 (xpi/firefox-i18n-56.0b6/pt-PT.xpi) = 5b0349e9cb95fac17901f8107c526e958495297259087e55087aba68e2d8c58d
149
SIZE (xpi/firefox-i18n-55.0.3/pt-PT.xpi) = 465239
149
SIZE (xpi/firefox-i18n-56.0b6/pt-PT.xpi) = 472754
150
SHA256 (xpi/firefox-i18n-55.0.3/rm.xpi) = 588239d7468d46d5eae7ac832eb48ba3630fd9da4cc1d4fd35a2f32c28f62f10
150
SHA256 (xpi/firefox-i18n-56.0b6/rm.xpi) = 2c584706227f658502bb61cbeb2fc4fdf94fbaf1fd6d92cacb7988e5ca639d81
151
SIZE (xpi/firefox-i18n-55.0.3/rm.xpi) = 458265
151
SIZE (xpi/firefox-i18n-56.0b6/rm.xpi) = 468130
152
SHA256 (xpi/firefox-i18n-55.0.3/ro.xpi) = 70b05f40b253b9fb63081db12e8675873fe45eda3a1a180e77e15ae215a62216
152
SHA256 (xpi/firefox-i18n-56.0b6/ro.xpi) = e32c4cdfd74962f7421f98afbbabd618fcf543d6be1e6f0c9d283cc2dfb5071f
153
SIZE (xpi/firefox-i18n-55.0.3/ro.xpi) = 462973
153
SIZE (xpi/firefox-i18n-56.0b6/ro.xpi) = 470561
154
SHA256 (xpi/firefox-i18n-55.0.3/ru.xpi) = 0c0d0296dd9d62ba86203b1b21476ff064f9d74d512bb6ffefe6f74ddf549352
154
SHA256 (xpi/firefox-i18n-56.0b6/ru.xpi) = bd77534af08f1a62bc3a728c7fcbfe2dc5f9834a086ec5838f9d60999322ccce
155
SIZE (xpi/firefox-i18n-55.0.3/ru.xpi) = 530901
155
SIZE (xpi/firefox-i18n-56.0b6/ru.xpi) = 541396
156
SHA256 (xpi/firefox-i18n-55.0.3/si.xpi) = f1f196f5523254940d10938c5c974a3d4128ec777fc1e8fb1399e24014b21fef
156
SHA256 (xpi/firefox-i18n-56.0b6/si.xpi) = bb07a690c8fa201ae6ad34998fb1cc90d86ef718a1f2e15fc30788056907b80f
157
SIZE (xpi/firefox-i18n-55.0.3/si.xpi) = 508353
157
SIZE (xpi/firefox-i18n-56.0b6/si.xpi) = 515879
158
SHA256 (xpi/firefox-i18n-55.0.3/sk.xpi) = dcdc24e7411113728f6485465493cb5ee4c82981823c83edebe3e43257d8bf1a
158
SHA256 (xpi/firefox-i18n-56.0b6/sk.xpi) = 24df42d97d8723040bf4127b0f4a486cf608b3cd9c15e5702b9f6e18932b7bf5
159
SIZE (xpi/firefox-i18n-55.0.3/sk.xpi) = 487582
159
SIZE (xpi/firefox-i18n-56.0b6/sk.xpi) = 495524
160
SHA256 (xpi/firefox-i18n-55.0.3/sl.xpi) = a1e7c731478f11da9f6f9f3c6b4f18787a04bd62c1636cdaa60c765b907cbc46
160
SHA256 (xpi/firefox-i18n-56.0b6/sl.xpi) = fe396d1f3a3c170b5c8111771ae35d30c8a648cbd35fd6157c02730810487091
161
SIZE (xpi/firefox-i18n-55.0.3/sl.xpi) = 465760
161
SIZE (xpi/firefox-i18n-56.0b6/sl.xpi) = 473765
162
SHA256 (xpi/firefox-i18n-55.0.3/son.xpi) = 61cc16ef2218aee4e58b4bd8bba3dea83bd362c5fccbe368d04b325bf875cf9e
162
SHA256 (xpi/firefox-i18n-56.0b6/son.xpi) = 1c35c8a32c682d6fbd3929d90ee8ecc4811a05cbb786a9211a1f8a5fa43bbbaa
163
SIZE (xpi/firefox-i18n-55.0.3/son.xpi) = 456958
163
SIZE (xpi/firefox-i18n-56.0b6/son.xpi) = 464281
164
SHA256 (xpi/firefox-i18n-55.0.3/sq.xpi) = 61ee5ee3e418d4a5098e94c22f646555f8b69f3cd1042b7e50fe0b9d28336c31
164
SHA256 (xpi/firefox-i18n-56.0b6/sq.xpi) = aa510373048dd79cbc4bbc094938ea3f803c6c0229431be48e960cf4e9192b0c
165
SIZE (xpi/firefox-i18n-55.0.3/sq.xpi) = 470630
165
SIZE (xpi/firefox-i18n-56.0b6/sq.xpi) = 479287
166
SHA256 (xpi/firefox-i18n-55.0.3/sr.xpi) = f2d1fc0ca15e814210306ce2b1777c91c64444f79ea1431e4663eb5476c713b1
166
SHA256 (xpi/firefox-i18n-56.0b6/sr.xpi) = a1e60a15885f3e28c05a5a0ab7baa3a21e9b35b0c30c7bb593d93ea6caca63d3
167
SIZE (xpi/firefox-i18n-55.0.3/sr.xpi) = 494878
167
SIZE (xpi/firefox-i18n-56.0b6/sr.xpi) = 504446
168
SHA256 (xpi/firefox-i18n-55.0.3/sv-SE.xpi) = 9a68ef76d1ba8b94238f7d724eb57ba9c94984e8b440f6068811cb8eb9853000
168
SHA256 (xpi/firefox-i18n-56.0b6/sv-SE.xpi) = 2d4294f705a2395c5aa0572bf78df878a7e2591a644391785ecaf6542df49fc4
169
SIZE (xpi/firefox-i18n-55.0.3/sv-SE.xpi) = 466011
169
SIZE (xpi/firefox-i18n-56.0b6/sv-SE.xpi) = 473905
170
SHA256 (xpi/firefox-i18n-55.0.3/ta.xpi) = 8d5f997e93cca5083d7d7196cd8f1524097ae6c6471bd373717c87dd1a5d4f2e
170
SHA256 (xpi/firefox-i18n-56.0b6/ta.xpi) = 1f9762bb957deef168d4d3ac08ba6f7625f4d36c05cc01d4f40d63e6b572a769
171
SIZE (xpi/firefox-i18n-55.0.3/ta.xpi) = 519998
171
SIZE (xpi/firefox-i18n-56.0b6/ta.xpi) = 530603
172
SHA256 (xpi/firefox-i18n-55.0.3/te.xpi) = 77e8558ae06366ee01252b37c756b42a77a013b85ccad1baa0ce69f0d7fa1831
172
SHA256 (xpi/firefox-i18n-56.0b6/te.xpi) = 25e435221e1ad3a0f3e9e55d1d12960ba06c6b1804860122598cda23e0668ffa
173
SIZE (xpi/firefox-i18n-55.0.3/te.xpi) = 542539
173
SIZE (xpi/firefox-i18n-56.0b6/te.xpi) = 549545
174
SHA256 (xpi/firefox-i18n-55.0.3/th.xpi) = 5c35f335847368570b196fc470de14bfa10a9a63c0b27facedbf7e9ab3aef436
174
SHA256 (xpi/firefox-i18n-56.0b6/th.xpi) = 0219b2d149ffeae2cff17e35b646fde9635d3eb400beeb91927ba8b0d8c1970a
175
SIZE (xpi/firefox-i18n-55.0.3/th.xpi) = 511903
175
SIZE (xpi/firefox-i18n-56.0b6/th.xpi) = 520255
176
SHA256 (xpi/firefox-i18n-55.0.3/tr.xpi) = a2790b948e050421d209b5802bb388664b75ae2d5c69175e0c84ab01b2b2a0c4
176
SHA256 (xpi/firefox-i18n-56.0b6/tr.xpi) = 2bcbfd64d4f7a07ff2a0896f298b97fad9ca0027f618fd8574acb7a5244372dd
177
SIZE (xpi/firefox-i18n-55.0.3/tr.xpi) = 472160
177
SIZE (xpi/firefox-i18n-56.0b6/tr.xpi) = 480284
178
SHA256 (xpi/firefox-i18n-55.0.3/uk.xpi) = 379ed1579d3f4cf9d149eb3906491505898f846f0e9476bd7562a07981baecf6
178
SHA256 (xpi/firefox-i18n-56.0b6/uk.xpi) = f58bc8afde5d04fd585a95f11caacbe6d8d9662af5a4932be021686174a37a54
179
SIZE (xpi/firefox-i18n-55.0.3/uk.xpi) = 526436
179
SIZE (xpi/firefox-i18n-56.0b6/uk.xpi) = 535396
180
SHA256 (xpi/firefox-i18n-55.0.3/ur.xpi) = 8924709d63a5476f31e2a67031bd3020ff73884f6879aeace68b6ab41abb4076
180
SHA256 (xpi/firefox-i18n-56.0b6/ur.xpi) = ccc4be25e95b46971418c74db432adc36e87282b514fc678aa6b2b6ffd8a91f0
181
SIZE (xpi/firefox-i18n-55.0.3/ur.xpi) = 520753
181
SIZE (xpi/firefox-i18n-56.0b6/ur.xpi) = 527307
182
SHA256 (xpi/firefox-i18n-55.0.3/uz.xpi) = 5cb211b260f5a781e28ab841618423e0662b48742fec2c1a2156cbdc9a7c5676
182
SHA256 (xpi/firefox-i18n-56.0b6/uz.xpi) = 309e524a8bf52af9df3f31386e08c695e7e3b5a47360b3abde33462258894ebf
183
SIZE (xpi/firefox-i18n-55.0.3/uz.xpi) = 467671
183
SIZE (xpi/firefox-i18n-56.0b6/uz.xpi) = 475059
184
SHA256 (xpi/firefox-i18n-55.0.3/vi.xpi) = 4c546bbf624f6416c6c094965a00db675beb014500b55cf96fba8d1f4c03adbb
184
SHA256 (xpi/firefox-i18n-56.0b6/vi.xpi) = e932b48683cfca3f9763d12f0b463906db44dcb7682bdc507127feda8e543572
185
SIZE (xpi/firefox-i18n-55.0.3/vi.xpi) = 476527
185
SIZE (xpi/firefox-i18n-56.0b6/vi.xpi) = 486252
186
SHA256 (xpi/firefox-i18n-55.0.3/xh.xpi) = 9c8eed4ed4947dbf6f6518f731e18a00cfe26d031f429222d5ae037814c4034e
186
SHA256 (xpi/firefox-i18n-56.0b6/xh.xpi) = c5b1d11ea5669b70b92c6c83456f5462a45017fda97fe35cd13cd0a6de4d6967
187
SIZE (xpi/firefox-i18n-55.0.3/xh.xpi) = 470719
187
SIZE (xpi/firefox-i18n-56.0b6/xh.xpi) = 477798
188
SHA256 (xpi/firefox-i18n-55.0.3/zh-CN.xpi) = b5ce9d67f7df55aff43f3bb3bb2d8bf8fa7ea15c1c40f94c1a331e3082cdcd88
188
SHA256 (xpi/firefox-i18n-56.0b6/zh-CN.xpi) = 5adc2a35bc6e6bb1d9fbca85f8bca5469c6a76967a8d5415f308b77d61bbba3b
189
SIZE (xpi/firefox-i18n-55.0.3/zh-CN.xpi) = 490383
189
SIZE (xpi/firefox-i18n-56.0b6/zh-CN.xpi) = 498939
190
SHA256 (xpi/firefox-i18n-55.0.3/zh-TW.xpi) = dfb0e10364b058869bcf832b01f586645f2c3c0fc647049f76c3c14561b2000e
190
SHA256 (xpi/firefox-i18n-56.0b6/zh-TW.xpi) = 302c21e3f12840f5c39d322611cff1ac9c9646839f7a90a30e49112c4b1019a8
191
SIZE (xpi/firefox-i18n-55.0.3/zh-TW.xpi) = 489347
191
SIZE (xpi/firefox-i18n-56.0b6/zh-TW.xpi) = 497719
(-)b/www/firefox/Makefile (-14 / +12 lines)
Lines 2-10 Link Here
2
# $FreeBSD$
2
# $FreeBSD$
3
3
4
PORTNAME=	firefox
4
PORTNAME=	firefox
5
DISTVERSION=	55.0.3
5
DISTVERSION=	56.0b6
6
DISTVERSIONSUFFIX=.source
6
DISTVERSIONSUFFIX=.source
7
PORTREVISION=	1
8
PORTEPOCH=	1
7
PORTEPOCH=	1
9
CATEGORIES=	www ipv6
8
CATEGORIES=	www ipv6
10
MASTER_SITES=	MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \
9
MASTER_SITES=	MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \
Lines 13-32 MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ Link Here
13
MAINTAINER=	gecko@FreeBSD.org
12
MAINTAINER=	gecko@FreeBSD.org
14
COMMENT=	Web browser based on the browser portion of Mozilla
13
COMMENT=	Web browser based on the browser portion of Mozilla
15
14
16
BUILD_DEPENDS=	nspr>=4.15:devel/nspr \
15
BUILD_DEPENDS=	nspr>=4.16:devel/nspr \
17
		nss>=3.31.1:security/nss \
16
		nss>=3.32:security/nss \
18
		libevent>=2.0.22:devel/libevent \
17
		libevent>=2.1.8:devel/libevent \
19
		harfbuzz>=1.4.6:print/harfbuzz \
18
		harfbuzz>=1.4.7:print/harfbuzz \
20
		graphite2>=1.3.10:graphics/graphite2 \
19
		graphite2>=1.3.10:graphics/graphite2 \
21
		png>=1.6.28:graphics/png \
20
		png>=1.6.31:graphics/png \
22
		libvorbis>=1.3.5,3:audio/libvorbis \
21
		libvorbis>=1.3.5,3:audio/libvorbis \
23
		libvpx>=1.5.0:multimedia/libvpx \
22
		libvpx>=1.5.0:multimedia/libvpx \
24
		sqlite3>=3.19.2:databases/sqlite3 \
23
		sqlite3>=3.19.3:databases/sqlite3 \
25
		${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3 \
24
		${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3 \
26
		v4l_compat>0:multimedia/v4l_compat \
25
		v4l_compat>0:multimedia/v4l_compat \
27
		autoconf-2.13:devel/autoconf213 \
26
		autoconf-2.13:devel/autoconf213 \
28
		yasm:devel/yasm \
27
		yasm:devel/yasm \
28
		llvm40>0:devel/llvm40 \
29
		zip:archivers/zip
29
		zip:archivers/zip
30
#		icu>=59.1,1:devel/icu \
30
#		soundtouch>=1.9.0:audio/soundtouch \
31
#		soundtouch>=1.9.0:audio/soundtouch \
31
32
32
LIB_DEPENDS=	libv4l2.so:multimedia/libv4l
33
LIB_DEPENDS=	libv4l2.so:multimedia/libv4l
Lines 34-40 LIB_DEPENDS= libv4l2.so:multimedia/libv4l Link Here
34
USE_GECKO=	gecko
35
USE_GECKO=	gecko
35
CONFLICTS_INSTALL=	firefox-esr-45.* firefox-esr-3[18].* firefox-esr-24.*
36
CONFLICTS_INSTALL=	firefox-esr-45.* firefox-esr-3[18].* firefox-esr-24.*
36
MOZ_PKGCONFIG_FILES=	# empty
37
MOZ_PKGCONFIG_FILES=	# empty
37
USE_MOZILLA=	-soundtouch
38
USE_MOZILLA=	-icu -soundtouch # XXX ports/218788
38
MOZILLA_NAME=	Firefox
39
MOZILLA_NAME=	Firefox
39
40
40
USE_GL=		gl
41
USE_GL=		gl
Lines 42-57 USES= tar:xz Link Here
42
43
43
FIREFOX_ICON=		${MOZILLA}.png
44
FIREFOX_ICON=		${MOZILLA}.png
44
FIREFOX_ICON_SRC=	${PREFIX}/lib/${MOZILLA}/browser/chrome/icons/default/default48.png
45
FIREFOX_ICON_SRC=	${PREFIX}/lib/${MOZILLA}/browser/chrome/icons/default/default48.png
46
MOZ_EXPORT=	BINDGEN_CFLAGS="-isystem${LOCALBASE}/include/nspr \
47
			-isystem${LOCALBASE}/include/pixman-1" # XXX bug 1341234
45
MOZ_OPTIONS=	--enable-application=browser \
48
MOZ_OPTIONS=	--enable-application=browser \
46
		--enable-official-branding
49
		--enable-official-branding
47
50
48
OPTIONS_DEFINE=		RUST
49
OPTIONS_DEFAULT=	BUNDLED_CAIRO
51
OPTIONS_DEFAULT=	BUNDLED_CAIRO
50
OPTIONS_EXCLUDE=	GNOMEUI
52
OPTIONS_EXCLUDE=	GNOMEUI
51
# XXX lang/rust and devel/cargo currently build only on these platforms
52
OPTIONS_DEFAULT_aarch64=RUST
53
OPTIONS_DEFAULT_amd64=	RUST
54
OPTIONS_DEFAULT_i386=	RUST
55
53
56
.include "${.CURDIR}/../../www/firefox/Makefile.options"
54
.include "${.CURDIR}/../../www/firefox/Makefile.options"
57
55
(-)b/www/firefox/distinfo (-3 / +3 lines)
Lines 1-3 Link Here
1
TIMESTAMP = 1503590171
1
TIMESTAMP = 1503631265
2
SHA256 (firefox-55.0.3.source.tar.xz) = 891836df85f8798c49f7b25661820f64d1311d59703c716eda471819b93ccda2
2
SHA256 (firefox-56.0b6.source.tar.xz) = 8dd0bec7027d39cbf2e2ad6132bff1020eeb2d58942c7bcc4960099b2b504825
3
SIZE (firefox-55.0.3.source.tar.xz) = 236010652
3
SIZE (firefox-56.0b6.source.tar.xz) = 255296652
(-)b/www/firefox/files/patch-bug1144632 (-22 / +4 lines)
Lines 1-8 Link Here
1
Revert bug 1323303 to unbreak build on big-endian architectures.
1
Revert bug 1323303 to unbreak build on big-endian architectures.
2
2
3
--- toolkit/moz.configure.orig	2017-07-31 16:20:54 UTC
3
diff --git toolkit/moz.configure toolkit/moz.configure
4
index 67fcbc39d075..c117fd11a358 100644
5
--- toolkit/moz.configure
4
+++ toolkit/moz.configure
6
+++ toolkit/moz.configure
5
@@ -771,11 +771,11 @@
7
@@ -1032,11 +1032,11 @@ add_old_configure_assignment('NECKO_PROTOCOLS', necko_protocols)
6
 # ==============================================================
8
 # ==============================================================
7
 option('--disable-skia', help='Disable use of Skia')
9
 option('--disable-skia', help='Disable use of Skia')
8
 
10
 
Lines 19-41 Revert bug 1323303 to unbreak build on big-endian architectures. Link Here
19
         return True
21
         return True
20
 
22
 
21
 set_config('MOZ_ENABLE_SKIA', skia)
23
 set_config('MOZ_ENABLE_SKIA', skia)
22
--- gfx/2d/ScaledFontBase.cpp.orig	2017-07-31 16:20:54 UTC
23
+++ gfx/2d/ScaledFontBase.cpp
24
@@ -212,14 +212,16 @@ ScaledFontBase::CopyGlyphsToBuilder(const GlyphBuffer 
25
     cairoPath->AppendPathToBuilder(builder);
26
     return;
27
   }
28
+#endif
29
+#ifdef USE_SKIA
30
   if (backendType == BackendType::RECORDING) {
31
     SkPath skPath = GetSkiaPathForGlyphs(aBuffer);
32
     RefPtr<Path> path = MakeAndAddRef<PathSkia>(skPath, FillRule::FILL_WINDING);
33
     path->StreamToSink(aBuilder);
34
     return;
35
   }
36
-  MOZ_ASSERT(false, "Path not being copied");
37
 #endif
38
+  MOZ_ASSERT(false, "Path not being copied");
39
 }
40
 
41
 void
(-)a/www/firefox/files/patch-bug1312182 (-376 lines)
Removed Link Here
1
commit 0d02dac1638ad
2
Author: Alessio Placitelli <alessio.placitelli@gmail.com>
3
Date:   Tue May 30 10:42:42 2017 +0200
4
5
    Bug 1312182 - Consolidate the uses of MOZ_TELEMETRY_REPORTING in the code. r=flod,gfritzsche,jaws
6
    
7
    The MOZ_TELEMETRY_REPORTING define does not control whether or not Telemetry is enabled
8
    but rather if it will send the gathered data to Mozilla servers. We still want to
9
    display the about:preferences options and let developers know about this behaviour.
10
    Please note that this patch is not changing any behaviour: it's only making it explicit
11
    by showing the options as disabled rather than hiding them.
12
    
13
    MozReview-Commit-ID: 7A0y0E0hm0Q
14
    
15
    --HG--
16
    extra : rebase_source : 36d1a7f5ec5c05b43731daf9507d3068fe7674ee
17
---
18
 browser/base/content/baseMenuOverlay.xul           |  2 +-
19
 browser/components/nsBrowserGlue.js                |  8 +--
20
 .../components/preferences/in-content-new/main.xul |  2 -
21
 .../preferences/in-content-new/privacy.js          | 32 +++++------
22
 .../preferences/in-content-new/privacy.xul         | 14 ++---
23
 .../components/preferences/in-content/advanced.js  | 63 +++++++++++-----------
24
 .../components/preferences/in-content/advanced.xul |  7 ++-
25
 .../chrome/browser/preferences-old/advanced.dtd    |  5 ++
26
 .../en-US/chrome/browser/preferences/advanced.dtd  |  5 ++
27
 9 files changed, 67 insertions(+), 71 deletions(-)
28
29
diff --git browser/base/content/baseMenuOverlay.xul browser/base/content/baseMenuOverlay.xul
30
index 1befa2bb66cc..804bbdebb797 100644
31
--- browser/base/content/baseMenuOverlay.xul
32
+++ browser/base/content/baseMenuOverlay.xul
33
@@ -61,7 +61,7 @@
34
                   onclick="checkForMiddleClick(this, event);"
35
                   label="&helpKeyboardShortcuts.label;"
36
                   accesskey="&helpKeyboardShortcuts.accesskey;"/>
37
-#ifdef MOZ_TELEMETRY_REPORTING
38
+#ifdef MOZ_SERVICES_HEALTHREPORT
39
         <menuitem id="healthReport"
40
                   label="&healthReport2.label;"
41
                   accesskey="&healthReport2.accesskey;"
42
diff --git browser/components/nsBrowserGlue.js browser/components/nsBrowserGlue.js
43
index 554c279356b9..1c21bf4c4323 100644
44
--- browser/components/nsBrowserGlue.js
45
+++ browser/components/nsBrowserGlue.js
46
@@ -528,9 +528,7 @@ BrowserGlue.prototype = {
47
     os.addObserver(this, "distribution-customization-complete");
48
     os.addObserver(this, "handle-xul-text-link");
49
     os.addObserver(this, "profile-before-change");
50
-    if (AppConstants.MOZ_TELEMETRY_REPORTING) {
51
-      os.addObserver(this, "keyword-search");
52
-    }
53
+    os.addObserver(this, "keyword-search");
54
     os.addObserver(this, "browser-search-engine-modified");
55
     os.addObserver(this, "restart-in-safe-mode");
56
     os.addObserver(this, "flash-plugin-hang");
57
@@ -583,9 +581,7 @@ BrowserGlue.prototype = {
58
       os.removeObserver(this, "places-database-locked");
59
     os.removeObserver(this, "handle-xul-text-link");
60
     os.removeObserver(this, "profile-before-change");
61
-    if (AppConstants.MOZ_TELEMETRY_REPORTING) {
62
-      os.removeObserver(this, "keyword-search");
63
-    }
64
+    os.removeObserver(this, "keyword-search");
65
     os.removeObserver(this, "browser-search-engine-modified");
66
     os.removeObserver(this, "flash-plugin-hang");
67
     os.removeObserver(this, "xpi-signature-changed");
68
diff --git browser/components/preferences/in-content-new/main.xul browser/components/preferences/in-content-new/main.xul
69
index e89ee1891c91..8672557bede2 100644
70
--- browser/components/preferences/in-content-new/main.xul
71
+++ browser/components/preferences/in-content-new/main.xul
72
@@ -183,11 +183,9 @@
73
               name="layout.spellcheckDefault"
74
               type="int"/>
75
 
76
-#ifdef MOZ_TELEMETRY_REPORTING
77
   <preference id="toolkit.telemetry.enabled"
78
               name="toolkit.telemetry.enabled"
79
               type="bool"/>
80
-#endif
81
 
82
   <preference id="browser.preferences.defaultPerformanceSettings.enabled"
83
               name="browser.preferences.defaultPerformanceSettings.enabled"
84
diff --git browser/components/preferences/in-content-new/privacy.js browser/components/preferences/in-content-new/privacy.js
85
index be057bfad611..73f72391b991 100644
86
--- browser/components/preferences/in-content-new/privacy.js
87
+++ browser/components/preferences/in-content-new/privacy.js
88
@@ -321,11 +321,9 @@ var gPrivacyPane = {
89
       this.initSubmitCrashes();
90
     }
91
     this.initTelemetry();
92
-    if (AppConstants.MOZ_TELEMETRY_REPORTING) {
93
-      this.initSubmitHealthReport();
94
-      setEventListener("submitHealthReportBox", "command",
95
-                       gPrivacyPane.updateSubmitHealthReport);
96
-    }
97
+    this.initSubmitHealthReport();
98
+    setEventListener("submitHealthReportBox", "command",
99
+                     gPrivacyPane.updateSubmitHealthReport);
100
 
101
     // Append search keywords into the elements could open subdialogs.
102
     let bundlePrefs = document.getElementById("bundlePreferences");
103
@@ -1414,8 +1412,10 @@ var gPrivacyPane = {
104
    * In all cases, set up the Learn More link sanely.
105
    */
106
   initTelemetry() {
107
-    if (AppConstants.MOZ_TELEMETRY_REPORTING) {
108
-      this._setupLearnMoreLink("toolkit.telemetry.infoURL", "telemetryLearnMore");
109
+    this._setupLearnMoreLink("toolkit.telemetry.infoURL", "telemetryLearnMore");
110
+    // If we're not sending any Telemetry, disable the telemetry upload checkbox as well.
111
+    if (!AppConstants.MOZ_TELEMETRY_REPORTING) {
112
+      document.getElementById("submitTelemetryBox").setAttribute("disabled", "true");
113
     }
114
   },
115
 
116
@@ -1439,9 +1439,6 @@ var gPrivacyPane = {
117
    * @param {Boolean} aEnabled False disables the controls, true enables them.
118
    */
119
   setTelemetrySectionEnabled(aEnabled) {
120
-    if (!AppConstants.MOZ_TELEMETRY_REPORTING) {
121
-      return;
122
-    }
123
     // If FHR is disabled, additional data sharing should be disabled as well.
124
     let disabled = !aEnabled;
125
     document.getElementById("submitTelemetryBox").disabled = disabled;
126
@@ -1456,19 +1453,21 @@ var gPrivacyPane = {
127
    * Initialize the health report service reference and checkbox.
128
    */
129
   initSubmitHealthReport() {
130
-    if (!AppConstants.MOZ_TELEMETRY_REPORTING) {
131
-      return;
132
-    }
133
     this._setupLearnMoreLink("datareporting.healthreport.infoURL", "FHRLearnMore");
134
 
135
     let checkbox = document.getElementById("submitHealthReportBox");
136
 
137
-    if (Services.prefs.prefIsLocked(PREF_UPLOAD_ENABLED)) {
138
+    // Telemetry is only sending data if MOZ_TELEMETRY_REPORTING is defined.
139
+    // We still want to display the preferences panel if that's not the case, but
140
+    // we want it to be disabled and unchecked.
141
+    if (Services.prefs.prefIsLocked(PREF_UPLOAD_ENABLED) ||
142
+        !AppConstants.MOZ_TELEMETRY_REPORTING) {
143
       checkbox.setAttribute("disabled", "true");
144
       return;
145
     }
146
 
147
-    checkbox.checked = Services.prefs.getBoolPref(PREF_UPLOAD_ENABLED);
148
+    checkbox.checked = Services.prefs.getBoolPref(PREF_UPLOAD_ENABLED) &&
149
+                       AppConstants.MOZ_TELEMETRY_REPORTING;
150
     this.setTelemetrySectionEnabled(checkbox.checked);
151
   },
152
 
153
@@ -1476,9 +1475,6 @@ var gPrivacyPane = {
154
    * Update the health report preference with state from checkbox.
155
    */
156
   updateSubmitHealthReport() {
157
-    if (!AppConstants.MOZ_TELEMETRY_REPORTING) {
158
-      return;
159
-    }
160
     let checkbox = document.getElementById("submitHealthReportBox");
161
     Services.prefs.setBoolPref(PREF_UPLOAD_ENABLED, checkbox.checked);
162
     this.setTelemetrySectionEnabled(checkbox.checked);
163
diff --git browser/components/preferences/in-content-new/privacy.xul browser/components/preferences/in-content-new/privacy.xul
164
index 9d531bd8274b..8030567573f8 100644
165
--- browser/components/preferences/in-content-new/privacy.xul
166
+++ browser/components/preferences/in-content-new/privacy.xul
167
@@ -760,9 +760,14 @@
168
 </groupbox>
169
 
170
 <!-- Data Choices -->
171
-#ifdef MOZ_TELEMETRY_REPORTING
172
-<groupbox id="historyGroup" data-category="panePrivacy" data-subcategory="reports" hidden="true">
173
+#ifdef MOZ_DATA_REPORTING
174
+
175
+<groupbox id="telemetryGroup" data-category="panePrivacy" data-subcategory="reports" hidden="true">
176
 <caption><label>&reports.label;</label></caption>
177
+#ifndef MOZ_TELEMETRY_REPORTING
178
+  <description id="TelemetryDisabledDesc" control="telemetryGroup">&healthReportingDisabled.label;</description>
179
+#endif
180
+
181
   <hbox align="center">
182
     <checkbox id="submitHealthReportBox" label="&enableHealthReport.label;"
183
               accesskey="&enableHealthReport.accesskey;"/>
184
@@ -782,14 +787,9 @@
185
                  class="indent">&telemetryDesc.label;</description>
186
   </vbox>
187
 </groupbox>
188
-#endif
189
 
190
-#ifdef MOZ_DATA_REPORTING
191
 #ifdef MOZ_CRASHREPORTER
192
 <groupbox id="crashReporterGroup" data-category="panePrivacy" data-subcategory="reports" hidden="true">
193
-#ifndef MOZ_TELEMETRY_REPORTING
194
-<caption><label>&reports.label;</label></caption>
195
-#endif
196
   <hbox align="center">
197
     <checkbox id="automaticallySubmitCrashesBox"
198
               preference="browser.crashReports.unsubmittedCheck.autoSubmit"
199
diff --git browser/components/preferences/in-content/advanced.js browser/components/preferences/in-content/advanced.js
200
index a6a2abaad9cf..9c7a2e716403 100644
201
--- browser/components/preferences/in-content/advanced.js
202
+++ browser/components/preferences/in-content/advanced.js
203
@@ -46,9 +46,7 @@ var gAdvancedPane = {
204
       this.initSubmitCrashes();
205
     }
206
     this.initTelemetry();
207
-    if (AppConstants.MOZ_TELEMETRY_REPORTING) {
208
-      this.initSubmitHealthReport();
209
-    }
210
+    this.initSubmitHealthReport();
211
     this.updateOnScreenKeyboardVisibility();
212
     this.updateCacheSizeInputField();
213
     this.updateActualCacheSize();
214
@@ -78,10 +76,8 @@ var gAdvancedPane = {
215
                      gAdvancedPane.updateHardwareAcceleration);
216
     setEventListener("advancedPrefs", "select",
217
                      gAdvancedPane.tabSelectionChanged);
218
-    if (AppConstants.MOZ_TELEMETRY_REPORTING) {
219
-      setEventListener("submitHealthReportBox", "command",
220
-                       gAdvancedPane.updateSubmitHealthReport);
221
-    }
222
+    setEventListener("submitHealthReportBox", "command",
223
+                     gAdvancedPane.updateSubmitHealthReport);
224
 
225
     setEventListener("connectionSettings", "command",
226
                      gAdvancedPane.showConnections);
227
@@ -293,8 +289,10 @@ var gAdvancedPane = {
228
    * In all cases, set up the Learn More link sanely.
229
    */
230
   initTelemetry() {
231
-    if (AppConstants.MOZ_TELEMETRY_REPORTING) {
232
-      this._setupLearnMoreLink("toolkit.telemetry.infoURL", "telemetryLearnMore");
233
+    this._setupLearnMoreLink("toolkit.telemetry.infoURL", "telemetryLearnMore");
234
+    // If we're not sending any Telemetry, disable the telemetry upload checkbox as well.
235
+    if (!AppConstants.MOZ_TELEMETRY_REPORTING) {
236
+      document.getElementById("submitTelemetryBox").setAttribute("disabled", "true");
237
     }
238
   },
239
 
240
@@ -303,46 +301,45 @@ var gAdvancedPane = {
241
    * @param {Boolean} aEnabled False disables the controls, true enables them.
242
    */
243
   setTelemetrySectionEnabled(aEnabled) {
244
-    if (AppConstants.MOZ_TELEMETRY_REPORTING) {
245
-      // If FHR is disabled, additional data sharing should be disabled as well.
246
-      let disabled = !aEnabled;
247
-      document.getElementById("submitTelemetryBox").disabled = disabled;
248
-      if (disabled) {
249
-        // If we disable FHR, untick the telemetry checkbox.
250
-        Services.prefs.setBoolPref("toolkit.telemetry.enabled", false);
251
-      }
252
-      document.getElementById("telemetryDataDesc").disabled = disabled;
253
+    // If FHR is disabled, additional data sharing should be disabled as well.
254
+    let disabled = !aEnabled;
255
+    document.getElementById("submitTelemetryBox").disabled = disabled;
256
+    if (disabled) {
257
+      // If we disable FHR, untick the telemetry checkbox.
258
+      Services.prefs.setBoolPref("toolkit.telemetry.enabled", false);
259
     }
260
+    document.getElementById("telemetryDataDesc").disabled = disabled;
261
   },
262
 
263
   /**
264
    * Initialize the health report service reference and checkbox.
265
    */
266
   initSubmitHealthReport() {
267
-    if (AppConstants.MOZ_TELEMETRY_REPORTING) {
268
-      this._setupLearnMoreLink("datareporting.healthreport.infoURL", "FHRLearnMore");
269
-
270
-      let checkbox = document.getElementById("submitHealthReportBox");
271
+    this._setupLearnMoreLink("datareporting.healthreport.infoURL", "FHRLearnMore");
272
 
273
-      if (Services.prefs.prefIsLocked(PREF_UPLOAD_ENABLED)) {
274
-        checkbox.setAttribute("disabled", "true");
275
-        return;
276
-      }
277
+    let checkbox = document.getElementById("submitHealthReportBox");
278
 
279
-      checkbox.checked = Services.prefs.getBoolPref(PREF_UPLOAD_ENABLED);
280
-      this.setTelemetrySectionEnabled(checkbox.checked);
281
+    // Telemetry is only sending data if MOZ_TELEMETRY_REPORTING is defined.
282
+    // We still want to display the preferences panel if that's not the case, but
283
+    // we want it to be disabled and unchecked.
284
+    if (Services.prefs.prefIsLocked(PREF_UPLOAD_ENABLED) ||
285
+        !AppConstants.MOZ_TELEMETRY_REPORTING) {
286
+      checkbox.setAttribute("disabled", "true");
287
+      return;
288
     }
289
+
290
+    checkbox.checked = Services.prefs.getBoolPref(PREF_UPLOAD_ENABLED) &&
291
+                       AppConstants.MOZ_TELEMETRY_REPORTING;
292
+    this.setTelemetrySectionEnabled(checkbox.checked);
293
   },
294
 
295
   /**
296
    * Update the health report preference with state from checkbox.
297
    */
298
   updateSubmitHealthReport() {
299
-    if (AppConstants.MOZ_TELEMETRY_REPORTING) {
300
-      let checkbox = document.getElementById("submitHealthReportBox");
301
-      Services.prefs.setBoolPref(PREF_UPLOAD_ENABLED, checkbox.checked);
302
-      this.setTelemetrySectionEnabled(checkbox.checked);
303
-    }
304
+    let checkbox = document.getElementById("submitHealthReportBox");
305
+    Services.prefs.setBoolPref(PREF_UPLOAD_ENABLED, checkbox.checked);
306
+    this.setTelemetrySectionEnabled(checkbox.checked);
307
   },
308
 
309
   updateOnScreenKeyboardVisibility() {
310
diff --git browser/components/preferences/in-content/advanced.xul browser/components/preferences/in-content/advanced.xul
311
index f2330223fb18..1b2c62168a59 100644
312
--- browser/components/preferences/in-content/advanced.xul
313
+++ browser/components/preferences/in-content/advanced.xul
314
@@ -37,12 +37,9 @@
315
   <preference id="layout.spellcheckDefault"
316
               name="layout.spellcheckDefault"
317
               type="int"/>
318
-
319
-#ifdef MOZ_TELEMETRY_REPORTING
320
   <preference id="toolkit.telemetry.enabled"
321
               name="toolkit.telemetry.enabled"
322
               type="bool"/>
323
-#endif
324
 
325
   <!-- Data Choices tab -->
326
 #ifdef MOZ_CRASHREPORTER
327
@@ -189,6 +186,9 @@
328
     <!-- Data Choices -->
329
     <tabpanel id="dataChoicesPanel" orient="vertical">
330
 #ifdef MOZ_TELEMETRY_REPORTING
331
+      <description>&healthReportingDisabled.label;</description>
332
+      <separator class="thin"/>
333
+#endif
334
       <groupbox>
335
         <caption>
336
           <checkbox id="submitHealthReportBox" label="&enableHealthReport.label;"
337
@@ -216,7 +216,6 @@
338
           </hbox>
339
         </vbox>
340
       </groupbox>
341
-#endif
342
 #ifdef MOZ_CRASHREPORTER
343
       <groupbox>
344
         <caption>
345
diff --git browser/locales/en-US/chrome/browser/preferences-old/advanced.dtd browser/locales/en-US/chrome/browser/preferences-old/advanced.dtd
346
index 215b800d3385..bf23c4fd251f 100644
347
--- browser/locales/en-US/chrome/browser/preferences-old/advanced.dtd
348
+++ browser/locales/en-US/chrome/browser/preferences-old/advanced.dtd
349
@@ -28,6 +28,11 @@
350
 
351
 <!ENTITY dataChoicesTab.label            "Data Choices">
352
 
353
+<!-- LOCALIZATION NOTE (healthReportingDisabled.label): This message is displayed above
354
+disabled data sharing options in developer builds or builds with no Telemetry support
355
+available. -->
356
+<!ENTITY healthReportingDisabled.label   "Data reporting is disabled for this build configuration">
357
+
358
 <!ENTITY healthReportDesc.label          "Helps you understand your browser performance and shares data with &vendorShortName; about your browser health">
359
 <!ENTITY enableHealthReport.label        "Enable &brandShortName; Health Report">
360
 <!ENTITY enableHealthReport.accesskey    "R">
361
diff --git browser/locales/en-US/chrome/browser/preferences/advanced.dtd browser/locales/en-US/chrome/browser/preferences/advanced.dtd
362
index 58a6b38630cf..6c478e48244a 100644
363
--- browser/locales/en-US/chrome/browser/preferences/advanced.dtd
364
+++ browser/locales/en-US/chrome/browser/preferences/advanced.dtd
365
@@ -28,6 +28,11 @@
366
 
367
 <!ENTITY dataChoicesTab.label            "Data Choices">
368
 
369
+<!-- LOCALIZATION NOTE (healthReportingDisabled.label): This message is displayed above
370
+disabled data sharing options in developer builds or builds with no Telemetry support
371
+available. -->
372
+<!ENTITY healthReportingDisabled.label   "Data reporting is disabled for this build configuration">
373
+
374
 <!ENTITY healthReportDesc.label          "Helps you understand your browser performance and shares data with &vendorShortName; about your browser health">
375
 <!ENTITY enableHealthReport.label        "Enable &brandShortName; Health Report">
376
 <!ENTITY enableHealthReport.accesskey    "R">
(-)b/www/firefox/files/patch-bug1366050 (+11 lines)
Added Link Here
1
--- toolkit/moz.configure.orig	2017-08-08 06:07:58 UTC
2
+++ toolkit/moz.configure
3
@@ -620,7 +620,7 @@ def stylo_config(value, _, target):
4
 
5
     # If nothing is specified, default to building stylo where possible.
6
     if value.origin == 'default':
7
-        if target.os == 'GNU' and target.bitness == 32:
8
+        if target.os != 'WINNT' and target.bitness == 32:
9
             # The clang setup we use in automation is a little unusual, and
10
             # doesn't play well with bindgen on 32-bit Linux.
11
             pass
(-)a/www/firefox/files/patch-bug1376268 (-61 lines)
Removed Link Here
1
commit ec31e574ed81
2
Author: Petr Sumbera <petr.sumbera@oracle.com>
3
Date:   Mon Jun 26 06:54:12 2017 -0700
4
5
    Bug 1376268 - Fix Spidermonkey build with no jit backend; r=bbouvier
6
    
7
    MozReview-Commit-ID: DgANwcf8oUh
8
    
9
    --HG--
10
    extra : amend_source : 1c3efbe975e93ee996e6b84d3fc073781740156d
11
---
12
 js/src/jit/ExecutableAllocator.h      | 2 +-
13
 js/src/jit/none/MacroAssembler-none.h | 8 ++++----
14
 2 files changed, 5 insertions(+), 5 deletions(-)
15
16
diff --git js/src/jit/ExecutableAllocator.h js/src/jit/ExecutableAllocator.h
17
index 570a25ff0dc3..d106b31ba906 100644
18
--- js/src/jit/ExecutableAllocator.h
19
+++ js/src/jit/ExecutableAllocator.h
20
@@ -219,7 +219,7 @@ class ExecutableAllocator
21
 
22
     static void poisonCode(JSRuntime* rt, JitPoisonRangeVector& ranges);
23
 
24
-#if defined(JS_CODEGEN_X86) || defined(JS_CODEGEN_X64) || defined(JS_SIMULATOR_ARM64)
25
+#if defined(JS_CODEGEN_X86) || defined(JS_CODEGEN_X64) || defined(JS_SIMULATOR_ARM64) || defined(JS_CODEGEN_NONE)
26
     static void cacheFlush(void*, size_t)
27
     {
28
     }
29
diff --git js/src/jit/none/MacroAssembler-none.h js/src/jit/none/MacroAssembler-none.h
30
index 9a40ec8a8f64..71ddca8b9f1c 100644
31
--- js/src/jit/none/MacroAssembler-none.h
32
+++ js/src/jit/none/MacroAssembler-none.h
33
@@ -48,7 +48,7 @@ static constexpr Register WasmIonExitRegE1 { Registers::invalid_reg };
34
 
35
 static constexpr Register WasmIonExitRegReturnData { Registers::invalid_reg };
36
 static constexpr Register WasmIonExitRegReturnType { Registers::invalid_reg };
37
-static constexpr Register WasmIonExitTlsReg = { Registers::invalid_reg };
38
+static constexpr Register WasmIonExitTlsReg { Registers::invalid_reg };
39
 static constexpr Register WasmIonExitRegD0 { Registers::invalid_reg };
40
 static constexpr Register WasmIonExitRegD1 { Registers::invalid_reg };
41
 static constexpr Register WasmIonExitRegD2 { Registers::invalid_reg };
42
@@ -153,6 +153,8 @@ class Assembler : public AssemblerShared
43
 
44
     static uintptr_t GetPointer(uint8_t*) { MOZ_CRASH(); }
45
 
46
+    static bool HasRoundInstruction(RoundingMode) { return false; }
47
+
48
     void verifyHeapAccessDisassembly(uint32_t begin, uint32_t end,
49
                                      const Disassembler::HeapAccess& heapAccess)
50
     {
51
@@ -196,9 +198,7 @@ class MacroAssemblerNone : public Assembler
52
     static bool SupportsSimd() { return false; }
53
     static bool SupportsUnalignedAccesses() { return false; }
54
 
55
-    static bool HasRoundInstruction(RoundingMode) { return false; }
56
-
57
-    void executableCopy(void*, bool) { MOZ_CRASH(); }
58
+    void executableCopy(void*, bool = true) { MOZ_CRASH(); }
59
     void copyJumpRelocationTable(uint8_t*) { MOZ_CRASH(); }
60
     void copyDataRelocationTable(uint8_t*) { MOZ_CRASH(); }
61
     void copyPreBarrierTable(uint8_t*) { MOZ_CRASH(); }
(-)a/www/firefox/files/patch-bug1385597 (-24 lines)
Removed Link Here
1
Properly restore system timezone on other POSIX systems. r?ehsan
2
    
3
--- toolkit/components/resistfingerprinting/nsRFPService.cpp
4
+++ toolkit/components/resistfingerprinting/nsRFPService.cpp
5
@@ -162,14 +162,14 @@ nsRFPService::UpdatePref()
6
         PR_SetEnv(tz);
7
       }
8
     } else {
9
-#if defined(XP_LINUX) || defined (XP_MACOSX)
10
-      // For POSIX like system, we reset the TZ to the /etc/localtime, which is the
11
-      // system timezone.
12
-      PR_SetEnv("TZ=:/etc/localtime");
13
-#else
14
+#if defined(XP_WIN)
15
       // For Windows, we reset the TZ to an empty string. This will make Windows to use
16
       // its system timezone.
17
       PR_SetEnv("TZ=");
18
+#else
19
+      // For POSIX like system, we reset the TZ to the /etc/localtime, which is the
20
+      // system timezone.
21
+      PR_SetEnv("TZ=:/etc/localtime");
22
 #endif
23
     }
24
   }
(-)b/www/firefox/files/patch-bug826985 (-8 / +8 lines)
Lines 107-116 index 12df1b3..e9863ba 100644 Link Here
107
 
107
 
108
 #include <new>
108
 #include <new>
109
 
109
 
110
@@ -26,6 +31,15 @@
110
@@ -32,6 +35,15 @@
111
 #include "critical_section_wrapper.h"
111
 #include "webrtc/modules/video_capture/linux/video_capture_linux.h"
112
 #include "video_capture_linux.h"
112
 #include "webrtc/system_wrappers/include/critical_section_wrapper.h"
113
 
113
 #include "webrtc/system_wrappers/include/trace.h"
114
+
114
+#ifdef HAVE_LIBV4L2
115
+#ifdef HAVE_LIBV4L2
115
+#define open	v4l2_open
116
+#define open	v4l2_open
116
+#define close	v4l2_close
117
+#define close	v4l2_close
Lines 119-128 index 12df1b3..e9863ba 100644 Link Here
119
+#define mmap	v4l2_mmap
120
+#define mmap	v4l2_mmap
120
+#define munmap	v4l2_munmap
121
+#define munmap	v4l2_munmap
121
+#endif
122
+#endif
122
+
123
 
123
 namespace webrtc
124
 namespace webrtc {
124
 {
125
 namespace videocapturemodule {
125
 namespace videocapturemodule
126
diff --git media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi
126
diff --git media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi
127
index d46b5aa..e452223 100644
127
index d46b5aa..e452223 100644
128
--- media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi
128
--- media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi
(-)b/www/firefox/files/patch-bug847568 (-1 / +1 lines)
Lines 261-267 index 9297e4d6f501..d8e273887e4b 100644 Link Here
261
+option('--with-system-harfbuzz',
261
+option('--with-system-harfbuzz',
262
+       help="Use system harfbuzz (located with pkgconfig)")
262
+       help="Use system harfbuzz (located with pkgconfig)")
263
+
263
+
264
+system_harfbuzz = pkg_check_modules('MOZ_HARFBUZZ', 'harfbuzz >= 1.4.6',
264
+system_harfbuzz = pkg_check_modules('MOZ_HARFBUZZ', 'harfbuzz >= 1.4.7',
265
+                                    when='--with-system-harfbuzz')
265
+                                    when='--with-system-harfbuzz')
266
+
266
+
267
+set_config('MOZ_SYSTEM_HARFBUZZ', depends_if(system_harfbuzz)(lambda _: True))
267
+set_config('MOZ_SYSTEM_HARFBUZZ', depends_if(system_harfbuzz)(lambda _: True))
(-)a/www/firefox/files/patch-rust-option (-816 lines)
Removed Link Here
1
Revert bug 1284816, bug 1341967, bug 1336153 to postpone bustage on non-x86 archs.
2
3
diff --git browser/confvars.sh browser/confvars.sh
4
index d8dcd99c2757..740d9d3e5fcf 100755
5
--- browser/confvars.sh
6
+++ browser/confvars.sh
7
@@ -30,6 +30,7 @@ if test "$OS_ARCH" = "WINNT"; then
8
   fi
9
 fi
10
 
11
+MOZ_RUST_MP4PARSE=1
12
 if test "$NIGHTLY_BUILD"; then
13
   MOZ_RUST_URLPARSE=1
14
 fi
15
diff --git build/moz.configure/rust.configure build/moz.configure/rust.configure
16
index 267d989f1597..f709820e60ae 100644
17
--- build/moz.configure/rust.configure
18
+++ build/moz.configure/rust.configure
19
@@ -4,10 +4,20 @@
20
 # License, v. 2.0. If a copy of the MPL was not distributed with this
21
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
22
 
23
-# Rust is required by `rust_compiler` below. We allow_missing here
24
-# to propagate failures to the better error message there.
25
-rustc = check_prog('RUSTC', ['rustc'], allow_missing=True)
26
-cargo = check_prog('CARGO', ['cargo'], allow_missing=True)
27
+option('--disable-rust', help='Don\'t include Rust language sources')
28
+
29
+@depends('--enable-rust')
30
+def rust_compiler_names(value):
31
+    if value:
32
+        return ['rustc']
33
+
34
+@depends('--enable-rust')
35
+def cargo_binary_names(value):
36
+    if value:
37
+        return ['cargo']
38
+
39
+rustc = check_prog('RUSTC', rust_compiler_names, allow_missing=True)
40
+cargo = check_prog('CARGO', cargo_binary_names, allow_missing=True)
41
 
42
 @depends_if(rustc)
43
 @checking('rustc version', lambda info: info.version)
44
@@ -43,9 +53,12 @@ def cargo_info(cargo):
45
         version=Version(version),
46
     )
47
 
48
-@depends(rustc_info, cargo_info)
49
+@depends('--enable-rust', rustc_info, cargo_info)
50
 @imports(_from='textwrap', _import='dedent')
51
-def rust_compiler(rustc_info, cargo_info):
52
+def rust_compiler(value, rustc_info, cargo_info):
53
+    if not value:
54
+        return None
55
+
56
     if not rustc_info:
57
         die(dedent('''\
58
         Rust compiler not found.
59
@@ -97,6 +110,9 @@ def rust_compiler(rustc_info, cargo_info):
60
 
61
     return True
62
 
63
+set_define('MOZ_RUST', rust_compiler)
64
+set_config('MOZ_RUST', rust_compiler)
65
+
66
 @template
67
 def rust_triple_alias(host_or_target):
68
     """Template defining the alias used for rustc's --target flag.
69
@@ -227,7 +243,8 @@ set_config('RUST_HOST_TARGET', rust_host_triple)
70
 
71
 @depends(rust_target_triple)
72
 def rust_target_env_name(triple):
73
-    return triple.upper().replace('-','_')
74
+    if triple:
75
+        return triple.upper().replace('-','_')
76
 
77
 # We need this to form various Cargo environment variables, as there is no
78
 # uppercase function in make, and we don't want to shell out just for
79
@@ -235,5 +252,6 @@ def rust_target_env_name(triple):
80
 set_config('RUST_TARGET_ENV_NAME', rust_target_env_name)
81
 
82
 # Until we remove all the other Rust checks in old-configure.
83
+add_old_configure_assignment('MOZ_RUST', rust_compiler)
84
 add_old_configure_assignment('RUSTC', rustc)
85
 add_old_configure_assignment('RUST_TARGET', rust_target_triple)
86
diff --git config/rules.mk config/rules.mk
87
index 94cc5556e3d0..7b143ebc5146 100644
88
--- config/rules.mk
89
+++ config/rules.mk
90
@@ -900,6 +900,7 @@ endif
91
 
92
 $(foreach file,$(DUMP_SYMS_TARGETS),$(eval $(call syms_template,$(file),$(file)_syms.track)))
93
 
94
+ifdef MOZ_RUST
95
 cargo_host_flag := --target=$(RUST_HOST_TARGET)
96
 cargo_target_flag := --target=$(RUST_TARGET)
97
 
98
@@ -1055,6 +1056,7 @@ force-cargo-host-program-build:
99
 
100
 $(HOST_RUST_PROGRAMS): force-cargo-host-program-build
101
 endif # HOST_RUST_PROGRAMS
102
+endif # MOZ_RUST
103
 
104
 $(SOBJS):
105
 	$(REPORT_BUILD)
106
diff --git dom/media/MediaPrefs.h dom/media/MediaPrefs.h
107
index 4dcc659222a4..559334d89fd1 100644
108
--- dom/media/MediaPrefs.h
109
+++ dom/media/MediaPrefs.h
110
@@ -183,7 +183,7 @@ private:
111
   DECL_MEDIA_PREF("media.ogg.flac.enabled",                   FlacInOgg, bool, false);
112
   DECL_MEDIA_PREF("media.flac.enabled",                       FlacEnabled, bool, true);
113
 
114
-#if !defined(RELEASE_OR_BETA)
115
+#if defined(MOZ_RUST_MP4PARSE) && !defined(RELEASE_OR_BETA)
116
   DECL_MEDIA_PREF("media.rust.test_mode",                     RustTestMode, bool, false);
117
 #endif
118
 
119
diff --git dom/media/gtest/moz.build dom/media/gtest/moz.build
120
index c66ac4a9437f..e2203c0a4321 100644
121
--- dom/media/gtest/moz.build
122
+++ dom/media/gtest/moz.build
123
@@ -22,7 +22,6 @@ UNIFIED_SOURCES += [
124
     'TestMozPromise.cpp',
125
     'TestMP3Demuxer.cpp',
126
     'TestMP4Demuxer.cpp',
127
-    'TestRust.cpp',
128
     'TestTrackEncoder.cpp',
129
     'TestVideoSegment.cpp',
130
     'TestVideoUtils.cpp',
131
@@ -36,6 +35,9 @@ if CONFIG['MOZ_WEBM_ENCODER']:
132
         'TestWebMWriter.cpp',
133
     ]
134
 
135
+if CONFIG['MOZ_RUST']:
136
+    UNIFIED_SOURCES += ['TestRust.cpp',]
137
+
138
 TEST_HARNESS_FILES.gtest += [
139
     '../test/gizmo-frag.mp4',
140
     '../test/gizmo.mp4',
141
diff --git media/libcubeb/src/moz.build media/libcubeb/src/moz.build
142
index c65b53b80f63..8953f646e831 100644
143
--- media/libcubeb/src/moz.build
144
+++ media/libcubeb/src/moz.build
145
@@ -32,7 +32,8 @@ if CONFIG['MOZ_PULSEAUDIO']:
146
         'cubeb_pulse.c',
147
     ]
148
     DEFINES['USE_PULSE'] = True
149
-    DEFINES['USE_PULSE_RUST'] = True
150
+    if CONFIG['MOZ_RUST']:
151
+        DEFINES['USE_PULSE_RUST'] = True
152
 
153
 if CONFIG['MOZ_JACK']:
154
     SOURCES += [
155
diff --git media/libstagefright/binding/DecoderData.cpp media/libstagefright/binding/DecoderData.cpp
156
index 109ea329d154..a06e533b1e62 100644
157
--- media/libstagefright/binding/DecoderData.cpp
158
+++ media/libstagefright/binding/DecoderData.cpp
159
@@ -13,9 +13,11 @@
160
 #include "mozilla/ArrayUtils.h"
161
 #include "include/ESDS.h"
162
 
163
+#ifdef MOZ_RUST_MP4PARSE
164
 // OpusDecoder header is really needed only by MP4 in rust
165
 #include "OpusDecoder.h"
166
 #include "mp4parse.h"
167
+#endif // MOZ_RUST_MP4PARSE
168
 
169
 using namespace stagefright;
170
 using mozilla::media::TimeUnit;
171
@@ -177,6 +179,7 @@ MP4VideoInfo::Update(const MetaData* aMetaData, const char* aMimeType)
172
   FindData(aMetaData, kKeyAVCC, mExtraData);
173
 }
174
 
175
+#ifdef MOZ_RUST_MP4PARSE
176
 static void
177
 UpdateTrackProtectedInfo(mozilla::TrackInfo& aConfig,
178
                          const mp4parse_sinf_info& aSinf)
179
@@ -263,6 +266,7 @@ MP4VideoInfo::Update(const mp4parse_track_info* track,
180
     mExtraData->AppendElements(video->extra_data.data, video->extra_data.length);
181
   }
182
 }
183
+#endif // MOZ_RUST_MP4PARSE
184
 
185
 bool
186
 MP4VideoInfo::IsValid() const
187
diff --git media/libstagefright/binding/MP4Metadata.cpp media/libstagefright/binding/MP4Metadata.cpp
188
index 5c3810d99a38..5d14dfd8b8a9 100644
189
--- media/libstagefright/binding/MP4Metadata.cpp
190
+++ media/libstagefright/binding/MP4Metadata.cpp
191
@@ -20,14 +20,18 @@
192
 #include "mp4_demuxer/MP4Metadata.h"
193
 #include "mp4_demuxer/Stream.h"
194
 #include "MediaPrefs.h"
195
+#ifdef MOZ_RUST_MP4PARSE
196
 #include "mp4parse.h"
197
+#endif // MOZ_RUST_MP4PARSE
198
 
199
 #include <limits>
200
 #include <stdint.h>
201
 #include <vector>
202
 
203
 
204
+#ifdef MOZ_RUST_MP4PARSE
205
 struct FreeMP4Parser { void operator()(mp4parse_parser* aPtr) { mp4parse_free(aPtr); } };
206
+#endif // MOZ_RUST_MP4PARSE
207
 
208
 using namespace stagefright;
209
 using mozilla::media::TimeUnit;
210
@@ -105,6 +109,7 @@ private:
211
   bool mCanSeek;
212
 };
213
 
214
+#ifdef MOZ_RUST_MP4PARSE
215
 // Wrap an mp4_demuxer::Stream to remember the read offset.
216
 
217
 class RustStreamAdaptor {
218
@@ -151,6 +156,7 @@ private:
219
   RustStreamAdaptor mRustSource;
220
   mozilla::UniquePtr<mp4parse_parser, FreeMP4Parser> mRustParser;
221
 };
222
+#endif // MOZ_RUST_MP4PARSE
223
 
224
 class IndiceWrapperStagefright : public IndiceWrapper {
225
 public:
226
@@ -187,6 +193,7 @@ IndiceWrapperStagefright::GetIndice(size_t aIndex, Index::Indice& aIndice) const
227
   return true;
228
 }
229
 
230
+#ifdef MOZ_RUST_MP4PARSE
231
 // the owner of mIndice is rust mp4 paser, so lifetime of this class
232
 // SHOULD NOT longer than rust parser.
233
 class IndiceWrapperRust : public IndiceWrapper
234
@@ -232,9 +239,11 @@ IndiceWrapperRust::GetIndice(size_t aIndex, Index::Indice& aIndice) const
235
   aIndice.sync = indice->sync;
236
   return true;
237
 }
238
+#endif // MOZ_RUST_MP4PARSE
239
 
240
 MP4Metadata::MP4Metadata(Stream* aSource)
241
  : mStagefright(MakeUnique<MP4MetadataStagefright>(aSource))
242
+#ifdef MOZ_RUST_MP4PARSE
243
  , mRust(MakeUnique<MP4MetadataRust>(aSource))
244
  , mPreferRust(MediaPrefs::EnableRustMP4Parser())
245
  , mReportedAudioTrackTelemetry(false)
246
@@ -242,6 +251,7 @@ MP4Metadata::MP4Metadata(Stream* aSource)
247
 #ifndef RELEASE_OR_BETA
248
  , mRustTestMode(MediaPrefs::RustTestMode())
249
 #endif
250
+#endif // MOZ_RUST_MP4PARSE
251
 {
252
 }
253
 
254
@@ -274,8 +284,11 @@ MP4Metadata::GetNumberTracks(mozilla::TrackInfo::TrackType aType) const
255
   MP4Metadata::ResultAndTrackCount numTracks =
256
     mStagefright->GetNumberTracks(aType);
257
 
258
+#ifdef MOZ_RUST_MP4PARSE
259
   if (!mRust) {
260
+#endif // MOZ_RUST_MP4PARSE
261
     return numTracks;
262
+#ifdef MOZ_RUST_MP4PARSE
263
   }
264
 
265
   MP4Metadata::ResultAndTrackCount numTracksRust =
266
@@ -350,8 +363,10 @@ MP4Metadata::GetNumberTracks(mozilla::TrackInfo::TrackType aType) const
267
   // Same non-error numbers, just return any.
268
   // (Choosing Rust here, in case it carries a warning, we'd want to know that.)
269
   return numTracksRust;
270
+#endif // MOZ_RUST_MP4PARSE
271
 }
272
 
273
+#ifdef MOZ_RUST_MP4PARSE
274
 bool MP4Metadata::ShouldPreferRust() const {
275
   if (!mRust) {
276
     return false;
277
@@ -389,6 +404,7 @@ bool MP4Metadata::ShouldPreferRust() const {
278
   // Otherwise, fall back.
279
   return false;
280
 }
281
+#endif // MOZ_RUST_MP4PARSE
282
 
283
 static const char*
284
 GetDifferentField(const mozilla::TrackInfo& info,
285
@@ -443,6 +459,7 @@ MP4Metadata::GetTrackInfo(mozilla::TrackInfo::TrackType aType,
286
   MP4Metadata::ResultAndTrackInfo info =
287
     mStagefright->GetTrackInfo(aType, aTrackNumber);
288
 
289
+#ifdef MOZ_RUST_MP4PARSE
290
   if (!mRust) {
291
     return info;
292
   }
293
@@ -514,6 +531,7 @@ MP4Metadata::GetTrackInfo(mozilla::TrackInfo::TrackType aType,
294
   if (mPreferRust) {
295
     return infoRust;
296
   }
297
+#endif // MOZ_RUST_MP4PARSE
298
 
299
   return info;
300
 }
301
@@ -528,6 +546,7 @@ MP4Metadata::ResultAndCryptoFile
302
 MP4Metadata::Crypto() const
303
 {
304
   MP4Metadata::ResultAndCryptoFile crypto = mStagefright->Crypto();
305
+#ifdef MOZ_RUST_MP4PARSE
306
   MP4Metadata::ResultAndCryptoFile rustCrypto = mRust->Crypto();
307
 
308
 #ifndef RELEASE_OR_BETA
309
@@ -548,6 +567,7 @@ MP4Metadata::Crypto() const
310
   if (mPreferRust) {
311
     return rustCrypto;
312
   }
313
+#endif // MOZ_RUST_MP4PARSE
314
 
315
   return crypto;
316
 }
317
@@ -556,17 +576,22 @@ MP4Metadata::ResultAndIndice
318
 MP4Metadata::GetTrackIndice(mozilla::TrackID aTrackID)
319
 {
320
   FallibleTArray<Index::Indice> indiceSF;
321
+#ifdef MOZ_RUST_MP4PARSE
322
   if (!mPreferRust
323
 #ifndef RELEASE_OR_BETA
324
       || mRustTestMode
325
 #endif
326
      ) {
327
+#endif // MOZ_RUST_MP4PARSE
328
     MediaResult rv = mStagefright->ReadTrackIndex(indiceSF, aTrackID);
329
     if (NS_FAILED(rv)) {
330
       return {Move(rv), nullptr};
331
     }
332
+#ifdef MOZ_RUST_MP4PARSE
333
   }
334
+#endif // MOZ_RUST_MP4PARSE
335
 
336
+#ifdef MOZ_RUST_MP4PARSE
337
   mp4parse_byte_data indiceRust = {};
338
   if (mPreferRust
339
 #ifndef RELEASE_OR_BETA
340
@@ -592,13 +617,18 @@ MP4Metadata::GetTrackIndice(mozilla::TrackID aTrackID)
341
     }
342
   }
343
 #endif
344
+#endif // MOZ_RUST_MP4PARSE
345
 
346
   UniquePtr<IndiceWrapper> indice;
347
+#ifdef MOZ_RUST_MP4PARSE
348
   if (mPreferRust) {
349
     indice = mozilla::MakeUnique<IndiceWrapperRust>(indiceRust);
350
   } else {
351
+#endif // MOZ_RUST_MP4PARSE
352
     indice = mozilla::MakeUnique<IndiceWrapperStagefright>(indiceSF);
353
+#ifdef MOZ_RUST_MP4PARSE
354
   }
355
+#endif // MOZ_RUST_MP4PARSE
356
 
357
   return {NS_OK, Move(indice)};
358
 }
359
@@ -856,6 +886,7 @@ MP4MetadataStagefright::Metadata(Stream* aSource)
360
   return {NS_OK, Move(buffer)};
361
 }
362
 
363
+#ifdef MOZ_RUST_MP4PARSE
364
 bool
365
 RustStreamAdaptor::Read(uint8_t* buffer, uintptr_t size, size_t* bytes_read)
366
 {
367
@@ -1152,5 +1183,6 @@ MP4MetadataRust::Metadata(Stream* aSource)
368
   MOZ_ASSERT(false, "Not yet implemented");
369
   return {NS_ERROR_NOT_IMPLEMENTED, nullptr};
370
 }
371
+#endif // MOZ_RUST_MP4PARSE
372
 
373
 } // namespace mp4_demuxer
374
diff --git media/libstagefright/binding/include/mp4_demuxer/DecoderData.h media/libstagefright/binding/include/mp4_demuxer/DecoderData.h
375
index 3cd4b7c142f4..dc25ddf03b10 100644
376
--- media/libstagefright/binding/include/mp4_demuxer/DecoderData.h
377
+++ media/libstagefright/binding/include/mp4_demuxer/DecoderData.h
378
@@ -19,11 +19,13 @@ namespace stagefright
379
 class MetaData;
380
 }
381
 
382
+#ifdef MOZ_RUST_MP4PARSE
383
 extern "C" {
384
 typedef struct mp4parse_track_info mp4parse_track_info;
385
 typedef struct mp4parse_track_audio_info mp4parse_track_audio_info;
386
 typedef struct mp4parse_track_video_info mp4parse_track_video_info;
387
 }
388
+#endif // MOZ_RUST_MP4PARSE
389
 
390
 namespace mp4_demuxer
391
 {
392
@@ -71,8 +73,10 @@ public:
393
   void Update(const stagefright::MetaData* aMetaData,
394
               const char* aMimeType);
395
 
396
+#ifdef MOZ_RUST_MP4PARSE
397
   void Update(const mp4parse_track_info* track,
398
               const mp4parse_track_audio_info* audio);
399
+#endif // MOZ_RUST_MP4PARSE
400
 
401
   virtual bool IsValid() const override;
402
 };
403
@@ -85,8 +89,10 @@ public:
404
   void Update(const stagefright::MetaData* aMetaData,
405
               const char* aMimeType);
406
 
407
+#ifdef MOZ_RUST_MP4PARSE
408
   void Update(const mp4parse_track_info* track,
409
               const mp4parse_track_video_info* video);
410
+#endif // MOZ_RUST_MP4PARSE
411
 
412
   virtual bool IsValid() const override;
413
 };
414
diff --git media/libstagefright/binding/include/mp4_demuxer/MP4Metadata.h media/libstagefright/binding/include/mp4_demuxer/MP4Metadata.h
415
index 492c9c1c1bc3..e16dbbd1155e 100644
416
--- media/libstagefright/binding/include/mp4_demuxer/MP4Metadata.h
417
+++ media/libstagefright/binding/include/mp4_demuxer/MP4Metadata.h
418
@@ -13,7 +13,9 @@
419
 #include "MediaInfo.h"
420
 #include "MediaResult.h"
421
 #include "Stream.h"
422
+#ifdef MOZ_RUST_MP4PARSE
423
 #include "mp4parse.h"
424
+#endif // MOZ_RUST_MP4PARSE
425
 
426
 namespace mp4_demuxer {
427
 
428
@@ -82,6 +84,7 @@ public:
429
 
430
 private:
431
   UniquePtr<MP4MetadataStagefright> mStagefright;
432
+#ifdef MOZ_RUST_MP4PARSE
433
   UniquePtr<MP4MetadataRust> mRust;
434
   mutable bool mPreferRust;
435
   mutable bool mReportedAudioTrackTelemetry;
436
@@ -90,6 +93,7 @@ private:
437
   mutable bool mRustTestMode;
438
 #endif
439
   bool ShouldPreferRust() const;
440
+#endif // MOZ_RUST_MP4PARSE
441
 };
442
 
443
 } // namespace mp4_demuxer
444
diff --git media/libstagefright/gtest/moz.build media/libstagefright/gtest/moz.build
445
index be4d56fc93f7..66fdd365f8f3 100644
446
--- media/libstagefright/gtest/moz.build
447
+++ media/libstagefright/gtest/moz.build
448
@@ -38,12 +38,13 @@ TEST_HARNESS_FILES.gtest += [
449
     'test_case_1351094.mp4',
450
 ]
451
 
452
-UNIFIED_SOURCES += ['TestMP4Rust.cpp',]
453
-TEST_HARNESS_FILES.gtest += [
454
-    '../../../dom/media/test/street.mp4',
455
-]
456
-LOCAL_INCLUDES += [
457
-    '../binding/include',
458
-]
459
+if CONFIG['MOZ_RUST']:
460
+    UNIFIED_SOURCES += ['TestMP4Rust.cpp',]
461
+    TEST_HARNESS_FILES.gtest += [
462
+        '../../../dom/media/test/street.mp4',
463
+    ]
464
+    LOCAL_INCLUDES += [
465
+        '../binding/include',
466
+    ]
467
 
468
 FINAL_LIBRARY = 'xul-gtest'
469
diff --git media/libstagefright/moz.build media/libstagefright/moz.build
470
index af5d1194d621..6725a0179989 100644
471
--- media/libstagefright/moz.build
472
+++ media/libstagefright/moz.build
473
@@ -83,9 +83,10 @@ SOURCES += [
474
     'system/core/libutils/VectorImpl.cpp',
475
 ]
476
 
477
-EXPORTS += [
478
-    'binding/include/mp4parse.h',
479
-]
480
+if CONFIG['MOZ_RUST']:
481
+    EXPORTS += [
482
+        'binding/include/mp4parse.h',
483
+    ]
484
 
485
 UNIFIED_SOURCES += [
486
     'binding/Adts.cpp',
487
diff --git mobile/android/confvars.sh mobile/android/confvars.sh
488
index e79b6f5c0707..eb62763acaf7 100644
489
--- mobile/android/confvars.sh
490
+++ mobile/android/confvars.sh
491
@@ -30,6 +30,8 @@ MOZ_XULRUNNER=
492
 MOZ_CAPTURE=1
493
 MOZ_RAW=1
494
 
495
+MOZ_RUST_MP4PARSE=1
496
+
497
 # use custom widget for html:select
498
 MOZ_USE_NATIVE_POPUP_WINDOWS=1
499
 
500
diff --git netwerk/base/moz.build netwerk/base/moz.build
501
index 61d022a9660e..e5ca1d77d859 100644
502
--- netwerk/base/moz.build
503
+++ netwerk/base/moz.build
504
@@ -256,7 +256,7 @@ UNIFIED_SOURCES += [
505
     'TLSServerSocket.cpp',
506
 ]
507
 
508
-if CONFIG['MOZ_RUST_URLPARSE']:
509
+if CONFIG['MOZ_RUST'] and CONFIG['MOZ_RUST_URLPARSE']:
510
     EXPORTS.mozilla.net += [ 'RustURL.h' ]
511
     UNIFIED_SOURCES += [ 'RustURL.cpp' ]
512
 
513
diff --git netwerk/base/nsStandardURL.cpp netwerk/base/nsStandardURL.cpp
514
index 608b918a4ecf..20bcdeb34ab8 100644
515
--- netwerk/base/nsStandardURL.cpp
516
+++ netwerk/base/nsStandardURL.cpp
517
@@ -858,6 +858,7 @@ nsStandardURL::BuildNormalizedSpec(const char *spec)
518
         if (!SegmentIs(spec, mScheme, "resource") &&
519
             !SegmentIs(spec, mScheme, "chrome")) {
520
             nsAutoCString ipString;
521
+#ifdef MOZ_RUST
522
             if (encHost.Length() > 0 &&
523
                 encHost.First() == '[' && encHost.Last() == ']' &&
524
                 ValidIPv6orHostname(encHost.get(), encHost.Length())) {
525
@@ -866,7 +867,9 @@ nsStandardURL::BuildNormalizedSpec(const char *spec)
526
                     return rv;
527
                 }
528
                 encHost = ipString;
529
-            } else if (NS_SUCCEEDED(NormalizeIPv4(encHost, ipString))) {
530
+            } else
531
+#endif
532
+            if (NS_SUCCEEDED(NormalizeIPv4(encHost, ipString))) {
533
                 encHost = ipString;
534
             }
535
         }
536
@@ -2112,6 +2115,7 @@ nsStandardURL::SetHost(const nsACString &input)
537
 
538
     if (!SegmentIs(mScheme, "resource") && !SegmentIs(mScheme, "chrome")) {
539
         nsAutoCString ipString;
540
+#ifdef MOZ_RUST
541
         if (hostBuf.Length() > 0 &&
542
             hostBuf.First() == '[' && hostBuf.Last() == ']' &&
543
             ValidIPv6orHostname(hostBuf.get(), hostBuf.Length())) {
544
@@ -2120,7 +2124,9 @@ nsStandardURL::SetHost(const nsACString &input)
545
                 return rv;
546
             }
547
             hostBuf = ipString;
548
-        } else if (NS_SUCCEEDED(NormalizeIPv4(hostBuf, ipString))) {
549
+        } else
550
+#endif
551
+        if (NS_SUCCEEDED(NormalizeIPv4(hostBuf, ipString))) {
552
           hostBuf = ipString;
553
         }
554
     }
555
diff --git old-configure.in old-configure.in
556
index 717a94fcc692..54b29d737cc1 100644
557
--- old-configure.in
558
+++ old-configure.in
559
@@ -2330,9 +2330,14 @@ if test -n "$MOZ_MULET"; then
560
 fi
561
 
562
 # Propagate feature switches for code written in rust from confvars.sh
563
-if test -n "$MOZ_RUST_URLPARSE"; then
564
-    AC_DEFINE(MOZ_RUST_URLPARSE)
565
-    AC_SUBST(MOZ_RUST_URLPARSE)
566
+if test -n "$MOZ_RUST"; then
567
+    if test -n "$MOZ_RUST_MP4PARSE"; then
568
+        AC_DEFINE(MOZ_RUST_MP4PARSE)
569
+    fi
570
+    if test -n "$MOZ_RUST_URLPARSE"; then
571
+        AC_DEFINE(MOZ_RUST_URLPARSE)
572
+        AC_SUBST(MOZ_RUST_URLPARSE)
573
+    fi
574
 fi
575
 
576
 AC_SUBST(MOZ_PHOENIX)
577
diff --git toolkit/components/telemetry/Histograms.json toolkit/components/telemetry/Histograms.json
578
index 061c55f6a5b6..e49dfd176952 100644
579
--- toolkit/components/telemetry/Histograms.json
580
+++ toolkit/components/telemetry/Histograms.json
581
@@ -8320,7 +8320,8 @@
582
     "expires_in_version": "60",
583
     "kind": "boolean",
584
     "bug_numbers": [1220885],
585
-    "description": "Whether the rust mp4 demuxer successfully parsed a stream segment."
586
+    "description": "Whether the rust mp4 demuxer successfully parsed a stream segment.",
587
+    "cpp_guard": "MOZ_RUST_MP4PARSE"
588
   },
589
   "MEDIA_RUST_MP4PARSE_ERROR_CODE": {
590
     "record_in_processes": ["main", "content"],
591
@@ -8329,7 +8330,8 @@
592
     "kind": "enumerated",
593
     "n_values": 32,
594
     "bug_numbers": [1238420],
595
-    "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."
596
+    "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.",
597
+    "cpp_guard": "MOZ_RUST_MP4PARSE"
598
   },
599
   "MEDIA_RUST_MP4PARSE_TRACK_MATCH_AUDIO": {
600
     "record_in_processes": ["main", "content"],
601
@@ -8337,7 +8339,8 @@
602
     "expires_in_version": "60",
603
     "kind": "boolean",
604
     "bug_numbers": [1231169],
605
-    "description": "Whether rust and stagefight mp4 parser audio track results match."
606
+    "description": "Whether rust and stagefight mp4 parser audio track results match.",
607
+    "cpp_guard": "MOZ_RUST_MP4PARSE"
608
   },
609
   "MEDIA_RUST_MP4PARSE_TRACK_MATCH_VIDEO": {
610
     "record_in_processes": ["main", "content"],
611
@@ -8345,7 +8348,8 @@
612
     "expires_in_version": "60",
613
     "kind": "boolean",
614
     "bug_numbers": [1231169],
615
-    "description": "Whether rust and stagefight mp4 parser video track results match."
616
+    "description": "Whether rust and stagefight mp4 parser video track results match.",
617
+    "cpp_guard": "MOZ_RUST_MP4PARSE"
618
   },
619
   "MEDIA_WMF_DECODE_ERROR": {
620
     "record_in_processes": ["main", "content", "gpu"],
621
diff --git toolkit/library/gtest/moz.build toolkit/library/gtest/moz.build
622
index 69a8fb1f4893..c684f48e456e 100644
623
--- toolkit/library/gtest/moz.build
624
+++ toolkit/library/gtest/moz.build
625
@@ -7,7 +7,6 @@
626
 FINAL_TARGET = 'dist/bin/gtest'
627
 
628
 USE_LIBS += [
629
-    'gkrust-gtest',
630
     'static:xul',
631
     # xul-gtest is an intermediate static library. It is used as FINAL_TARGET
632
     # for gtest code.
633
@@ -21,6 +20,11 @@ USE_LIBS += [
634
 # before StaticXULComponentStart.
635
 Libxul('xul-gtest-real')
636
 
637
+if CONFIG['MOZ_RUST']:
638
+    USE_LIBS += [
639
+        'gkrust-gtest',
640
+    ]
641
+
642
 DIRS += [
643
     'static',
644
 ]
645
diff --git toolkit/library/moz.build toolkit/library/moz.build
646
index 650f6eaba980..191e90ceb09a 100644
647
--- toolkit/library/moz.build
648
+++ toolkit/library/moz.build
649
@@ -63,7 +63,7 @@ def Libxul(name):
650
 
651
     # This option should go away in bug 1290972, but we need to wait until
652
     # Rust 1.12 has been released.
653
-    if CONFIG['OS_ARCH'] == 'Darwin':
654
+    if CONFIG['MOZ_RUST'] and CONFIG['OS_ARCH'] == 'Darwin':
655
         LDFLAGS += ['-Wl,-no_compact_unwind']
656
 
657
 Libxul('xul')
658
@@ -343,4 +343,5 @@ USE_LIBS += ['StaticXULComponentsEnd']
659
 # The above library needs to be last for C++ purposes.  This library,
660
 # however, is entirely composed of Rust code, and needs to come after
661
 # all the C++ code so any possible C++ -> Rust calls can be resolved.
662
-USE_LIBS += ['gkrust']
663
+if CONFIG['MOZ_RUST']:
664
+    USE_LIBS += ['gkrust']
665
diff --git toolkit/moz.configure toolkit/moz.configure
666
index ac9d123224ce..e90da70f0fa5 100644
667
--- toolkit/moz.configure
668
+++ toolkit/moz.configure
669
@@ -88,8 +88,7 @@ include('../js/moz.configure')
670
 
671
 # Rust
672
 # ==============================================================
673
-include('../build/moz.configure/rust.configure',
674
-        when='--enable-compile-environment')
675
+include('../build/moz.configure/rust.configure')
676
 
677
 
678
 # L10N
679
@@ -623,13 +622,13 @@ id_and_secret_keyfile('Leanplum SDK')
680
 option('--enable-stylo', nargs='?', choices=('build',),
681
        help='Include Stylo in the build and/or enable it at runtime')
682
 
683
-@depends('--enable-stylo')
684
-def stylo_config(value):
685
+@depends('--enable-stylo', '--enable-rust')
686
+def stylo_config(value, rust_enabled):
687
     build_stylo = None
688
     enable_stylo = None
689
 
690
     # The default is to not build Stylo at all.
691
-    if value.origin == 'default':
692
+    if not rust_enabled or value.origin == 'default':
693
         pass
694
     elif value == 'build':
695
         build_stylo = True
696
@@ -769,12 +768,14 @@ set_config('SERVO_TARGET_DIR', servo_target_dir)
697
 option('--enable-webrender', nargs='?', choices=('build',),
698
        help='Include WebRender in the build and/or enable it at runtime')
699
 
700
-@depends('--enable-webrender', milestone)
701
-def webrender(value, milestone):
702
+@depends('--enable-webrender', '--enable-rust', milestone)
703
+def webrender(value, rust_enabled, milestone):
704
     build_webrender = None
705
     enable_webrender = None
706
 
707
-    if value.origin == 'default':
708
+    if not rust_enabled:
709
+        pass
710
+    elif value.origin == 'default':
711
         # if nothing is specified, default to just building on Nightly
712
         build_webrender = milestone.is_nightly
713
     elif value == 'build':
714
diff --git toolkit/toolkit.mozbuild toolkit/toolkit.mozbuild
715
index b845aab48023..9215afc6dd2d 100644
716
--- toolkit/toolkit.mozbuild
717
+++ toolkit/toolkit.mozbuild
718
@@ -133,16 +133,23 @@ if CONFIG['MOZ_PREF_EXTENSIONS']:
719
 
720
 DIRS += [
721
     '/devtools',
722
-    '/toolkit/library',
723
-    '/toolkit/library/gtest/rust',
724
-    '/toolkit/library/rust',
725
-    '/toolkit/library/StaticXULComponentsEnd',
726
     '/services',
727
     '/startupcache',
728
     '/js/ductwork/debugger',
729
     '/other-licenses/snappy',
730
 ]
731
 
732
+if CONFIG['MOZ_RUST']:
733
+    DIRS += [
734
+        '/toolkit/library/gtest/rust',
735
+        '/toolkit/library/rust',
736
+    ]
737
+
738
+DIRS += [
739
+    '/toolkit/library/StaticXULComponentsEnd',
740
+    '/toolkit/library',
741
+]
742
+
743
 if 'gtk' in CONFIG['MOZ_WIDGET_TOOLKIT']:
744
     DIRS += ['/toolkit/system/gnome']
745
 
746
diff --git toolkit/xre/nsAppRunner.cpp toolkit/xre/nsAppRunner.cpp
747
index 667c2eb1b365..6fb6cf102baa 100644
748
--- toolkit/xre/nsAppRunner.cpp
749
+++ toolkit/xre/nsAppRunner.cpp
750
@@ -227,11 +227,13 @@
751
 extern uint32_t gRestartMode;
752
 extern void InstallSignalHandlers(const char *ProgramName);
753
 
754
+#ifdef MOZ_RUST
755
 // This workaround is fixed in Rust 1.19. For details, see bug 1358151.
756
 // Implementation in toolkit/library/rust/shared/lib.rs
757
 extern "C" {
758
   void rust_init_please_remove_this_after_updating_rust_1_19();
759
 }
760
+#endif
761
 
762
 #define FILE_COMPATIBILITY_INFO NS_LITERAL_CSTRING("compatibility.ini")
763
 #define FILE_INVALIDATE_CACHES NS_LITERAL_CSTRING(".purgecaches")
764
@@ -3122,8 +3124,10 @@ XREMain::XRE_mainInit(bool* aExitFlag)
765
     return 1;
766
   *aExitFlag = false;
767
 
768
+#ifdef MOZ_RUST
769
   // This workaround is fixed in Rust 1.19. For details, see bug 1358151.
770
   rust_init_please_remove_this_after_updating_rust_1_19();
771
+#endif
772
 
773
   atexit(UnexpectedExit);
774
   auto expectedShutdown = mozilla::MakeScopeExit([&] {
775
diff --git xpcom/base/nsDebugImpl.cpp xpcom/base/nsDebugImpl.cpp
776
index e6bb623c258b..c49d61dce605 100644
777
--- xpcom/base/nsDebugImpl.cpp
778
+++ xpcom/base/nsDebugImpl.cpp
779
@@ -148,14 +148,20 @@ nsDebugImpl::Abort(const char* aFile, int32_t aLine)
780
   return NS_OK;
781
 }
782
 
783
+#ifdef MOZ_RUST
784
 // From toolkit/library/rust/lib.rs
785
 extern "C" void intentional_panic(const char* message);
786
+#endif
787
 
788
 NS_IMETHODIMP
789
 nsDebugImpl::RustPanic(const char* aMessage)
790
 {
791
+#ifdef MOZ_RUST
792
   intentional_panic(aMessage);
793
   return NS_OK;
794
+#else
795
+  return NS_ERROR_NOT_IMPLEMENTED;
796
+#endif
797
 }
798
 
799
 NS_IMETHODIMP
800
diff --git xpcom/rust/nsstring/gtest/moz.build xpcom/rust/nsstring/gtest/moz.build
801
index 197411678815..5bed9e57e57d 100644
802
--- xpcom/rust/nsstring/gtest/moz.build
803
+++ xpcom/rust/nsstring/gtest/moz.build
804
@@ -4,8 +4,9 @@
805
 # License, v. 2.0. If a copy of the MPL was not distributed with this
806
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
807
 
808
-UNIFIED_SOURCES += [
809
-    'Test.cpp'
810
-]
811
+if CONFIG['MOZ_RUST']:
812
+    UNIFIED_SOURCES += [
813
+        'Test.cpp'
814
+    ]
815
 
816
 FINAL_LIBRARY = 'xul-gtest'

Return to bug 221335