aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Arnold <nerdboy@gentoo.org>2017-06-15 12:29:30 -0700
committerSteve Arnold <nerdboy@gentoo.org>2017-06-15 12:29:30 -0700
commit84a37099782733d84289982ffc431f3d5369dc4c (patch)
treee10f8161056b497a809196118f8f8f92706c68ac
parentdev-qt/qt*: clean up older/crufty versions of qt5 (diff)
downloadarm-84a37099782733d84289982ffc431f3d5369dc4c.tar.gz
arm-84a37099782733d84289982ffc431f3d5369dc4c.tar.bz2
arm-84a37099782733d84289982ffc431f3d5369dc4c.zip
Playing with firefox on arm - 52 works (use -skia) but 53 does not :/
* note this needs custom mozconfig eclass Signed-off-by: Steve Arnold <nerdboy@gentoo.org>
-rw-r--r--www-client/firefox/Manifest95
-rw-r--r--www-client/firefox/files/arm64-1-define-ARCH_CPU_ARM64.patch26
-rw-r--r--www-client/firefox/files/arm64-2-import-crbug-for-aarch64.patch407
-rw-r--r--www-client/firefox/files/arm64-3-set-WEBRTC_DETECT_ARM_NEON-when-optional.patch22
-rw-r--r--www-client/firefox/files/arm64-4-link-chromium-mutex-based-atomics.patch59
-rw-r--r--www-client/firefox/files/arm64-5-mozjemalloc-no-static-page-sizes.patch22
-rw-r--r--www-client/firefox/files/autoconf.mk321
-rw-r--r--www-client/firefox/files/autoconf.mk.gentoo396
-rw-r--r--www-client/firefox/files/firefox-23.0-egl-webgl.patch102
-rw-r--r--www-client/firefox/files/firefox-29.0.1-armhf.patch126
-rw-r--r--www-client/firefox/files/firefox-31.0-webm-disallow-negative-samples.patch29
-rw-r--r--www-client/firefox/files/firefox-32.0-hppa-js-configure.patch21
-rw-r--r--www-client/firefox/files/firefox-33.0-jemalloc-configure.patch29
-rw-r--r--www-client/firefox/files/firefox-35.0-gmp-clearkey-sprintf.patch10
-rw-r--r--www-client/firefox/files/firefox-36.0-depollute-CONST-from-dtoa.patch18
-rw-r--r--www-client/firefox/files/firefox-36.0-disable-ion.patch18
-rw-r--r--www-client/firefox/files/firefox-37.0-configure_force_arm-neon.patch16
-rw-r--r--www-client/firefox/files/firefox-37.0-jemalloc_configure_unbashify.patch11
-rw-r--r--www-client/firefox/files/firefox-45-qt-widget-fix.patch21
-rw-r--r--www-client/firefox/files/firefox-46-fix-egl-configure.patch90
-rw-r--r--www-client/firefox/files/firefox-48.0-pgo.patch12
-rw-r--r--www-client/firefox/files/firefox-52.0.1-disable_cachegen.patch20
-rw-r--r--www-client/firefox/files/firefox-52.0.1-fix_hardened_pie_detection.patch19
-rw-r--r--www-client/firefox/files/firefox-53-turn_off_crash_on_seccomp_fail.patch100
-rw-r--r--www-client/firefox/files/firefox-webrtc-armcpufeatures.patch28
-rw-r--r--www-client/firefox/files/fix_hardened_pie_detection.patch36
-rw-r--r--www-client/firefox/files/mozilla-config.h217
-rw-r--r--www-client/firefox/files/mozilla_configure_regexp.patch22
-rw-r--r--www-client/firefox/files/mozilla_configure_regexp_esr.patch32
-rw-r--r--www-client/firefox/files/musl_drop_hunspell_alloc_hooks.patch13
-rw-r--r--www-client/firefox/files/update_h2_curve.patch30
-rw-r--r--www-client/firefox/firefox-52.0.2.ebuild398
-rw-r--r--www-client/firefox/firefox-53.0.3.ebuild422
33 files changed, 1844 insertions, 1344 deletions
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 022caa9..b2d4a0e 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -1,2 +1,93 @@
-DIST firefox-44.0-patches-0.1.tar.xz 12308 SHA256 056bf890c8e17b0ffbbb9786a0903cfb7bf250390c6b3663b20dac9e1646c404 SHA512 9d3d62c157e117efadf897f849cb85102676e0549ca9fa6b84daa2be8e597ba90121c3b1f6a8e80e0d187a87d5ad746cd66b5eb074846d8637866c89f30924a4 WHIRLPOOL f9445f900f6042df8e36bb286553c4196f67e254c3eaf55195fd26f6c3e20edba7634d99d2259cbcc2645cd7bee57ce8ef20566c569847d51b48a03d5dbee893
-DIST firefox-44.0b4.source.tar.xz 182407048 SHA256 6b5b2ebcb94618747281a24fc3c6504b436bc3413283b77935484730bc21b9c5 SHA512 c9def31db89fc40295303a883b8c69bc62b796ed3604192e8945288b3edc1e49f93bea07f7c602992ad0a956cc3cf59e55ea5f3cb54b4faada0bbb7df0487e28 WHIRLPOOL 3f75dc7e87d6aa92a256b7acf1ef4e4326db7cf87c9f00db0765e65fb4e7bc19cd9b87bcefc291aed3b61796500506c4c005f00e1a248f3f52cd124dfb499913
+DIST firefox-53.0-patches-02.tar.xz 9000 SHA256 bda023900cb3bf7d437a64145ab0061451da922cded4d324887115acc750b65a SHA512 683969301b115da6afa16fb35b4c6372cbb0fadde5667c3c1393956713432a8e0acb994e0c4ff9b24d2ba9844fc9ff88dd85ce9a534bbf425815a1c7793c1d07 WHIRLPOOL 668ef530d808017b00eb8f46412bd5f13f4e56f09213cff9ad82419b069018d82ae7d056b4180cb82d01c2a5065e8bbb621b8a412b92f9aefd069b853bce3a87
+DIST firefox-53.0.3-ach.xpi 432351 SHA256 e6a116ee56fda449cdd67585161147cb77dd739667131576d95c0aee94e5ad3a SHA512 30c934cc8fb541432c7200e08da1b6160a70056edb7a4063937bbefa6000e0d10f1936bcb749ca448767b9353401527141fb428368a845e11553366dda7b879f WHIRLPOOL 83de03fc4f95d46bf9bcd3cf6eee91af0232d1512a7f62c28acd339e841ec677a55a07f6a8c83adb1f3ed610a2bedd171fa9a68d72bc3956ba9c33d268a9ce6a
+DIST firefox-53.0.3-af.xpi 441830 SHA256 1d0084d8373617e25738a7b3462935369a039d56f82f64527ff0415c3db9e3e7 SHA512 d29683ede82d7062268637b68f21ba580c4129449bf805adad689b65a4a930c8c1396ebaa90857ef20803ebe3a5ba55a2f40a12afa177ff88c1afc3a52934a2b WHIRLPOOL 5daaca6aebcf71f4d8150e1ce3f8833f52e81309506998f3d4e968ed94c302df66f144fbed97b8d914c0372d5181cb97d1f8b20884084e6dab01ef6108444b33
+DIST firefox-53.0.3-an.xpi 450801 SHA256 b0740572e813b2ba281c190c50e8617dbce274ae16607cdb2f06f42a6c1e49af SHA512 43b5c62d8db60bbf10baa071225860c82d71505e9948e7e9c15f607b984de38561b86e66f58a226c4b0af0f2fbc536f6e86576b7742f5ab13852ebffff063768 WHIRLPOOL beb3952e53080bd85e60b9e9ec76670900600d9c0d7556092dcc84838da6fa6d823124c1bb850fb2597c713574b988d132137fd43f5da8565323e397cba973d9
+DIST firefox-53.0.3-ar.xpi 479118 SHA256 561d8baac858b8b54d34fec81781645a1faf4b75923095380ce3eede566ee4bb SHA512 fc76ad4db699a6afdbc915d9fb3666ed9c62f50d86ffdfb76df2971612a4266e43b96780b53dbbc478539369b3e621aefdf9e96579b37b98ba88d0c0c2ee2054 WHIRLPOOL f1db4658f72a368fb1ffdae9526133d9badaa72d321a44af646b0e16df5cfb2717d2745af56cb7742a608bfbee3b649308a9ac8515134b1ff182c8a17ebe6474
+DIST firefox-53.0.3-as.xpi 491256 SHA256 fc4f5bfc64ab7bcc0776317ed1a52d5f0c6d612f945bf8ae436a797f745a286b SHA512 2b77962c207cb397eeb0c7ae2c4365f713b769981eb3675a62ba1898cd73e12d5e536dad030fd590161c404907a147ce5b377f8ba32ab09e688dc9a5789b3e0b WHIRLPOOL 58ec48510ce78e0efa73b94b3dc19d14cad21ed6a28304dec6066efb7ebd57669e360926dcc2d7e07b6c673a44c9b817d75dbf97acc532ce23ad28a41842b88d
+DIST firefox-53.0.3-ast.xpi 445436 SHA256 cc31c6282534e067e6b09491bd8ce86e84b4c46d5c217a1931f029d9e746ff30 SHA512 68a277d07ab2f6de88e254b8168a63a597106a4f034b46aef15fdc5081a0f367e65c41f055181aff5b3e0769fad8bae7309ba3855e47410d3115af8148ba93d9 WHIRLPOOL 251eb0f5a9e3afcef741853c513268730f424be38a2f298b4cf33b58c22a7d271eb1eb45f75cc99cfc32f9329ee9f9f77ba94b230031cd79d4ae7c44307fbb8d
+DIST firefox-53.0.3-az.xpi 459504 SHA256 9f55b5cb611c95672e90188ba63a1dfcdeec3c7998688821feb0ac7ef435320a SHA512 fd11c1eb2e3088a1611d367aea12ae4ce78bbe1788f332e97e8adfd77b01b36364a245ff7db089e3a5c7133e2d0f1d68a1a9bed33976026098ff8a9b693cf007 WHIRLPOOL b3a32fa894fe5d2fcf81187baa5fed4fb979b14b0a308997ff8cd440ee2a8ebf2c319692ec002d7911bfb77fb6daa4096c8306fd221074cca931e33c3ae8277e
+DIST firefox-53.0.3-bg.xpi 492609 SHA256 6ae5117b4636b74e6aea42271d109a1f295e3c5f2a1c13d935cccfd8e793df25 SHA512 5b4095f8ed2b68f5c07c183f8f388ea8528bbc07f434cb60935f72730c95bf702e2c76dfa4dd334d694da3be485bde463dd92704a2b00a4ea910b41439aa9b3f WHIRLPOOL db742e76ba0c7a75dd93a9842e23689a5ac2505b32a5f652c52963bfed2a16fb7a79ee01c8a12fcbce604e9e438ad3b7dbd67115e8aa0dc4b8a118d397d4f420
+DIST firefox-53.0.3-bn-BD.xpi 516502 SHA256 bbe8e57e339423e88aef9fab8fd186ab3ccdf5bb3ba3828aec4b53db24feace7 SHA512 9e13af42ed2c23197ea64ec4390e7413860f52641733adec9decc60ca1b31e8d8c62f498834401d5f4a298e87c075fa695034f9c09d9cf696fded0379d4dde65 WHIRLPOOL a3359a619b0494355385a9322b8c01b20770808b6f7ec17b9f2ddf6f09c1974f04e2cfc33cc53368d69a5f11dc9bc11361f6c31c4ac32b795d0567756d3fde53
+DIST firefox-53.0.3-bn-IN.xpi 513553 SHA256 1bd46b57948be279d93b82f253d749e79919654374998ca814258bb8ecdf36bc SHA512 252038e950a22983db34d9647e5e75d9e7619ec95401f3ee2cd4b2efbe51db26e608c194012d61704f8c2397ff31fbb9f92d2900001d484dfd022d581dc1897f WHIRLPOOL f67930bcf166828cacc153dd45d88e9ec2c1fc8a8b4c3ca2da3c367b3c40b9a6bf5f6eb3145380cc806fe46103251b40c5c2a223a34c5086070f74768f99a9ef
+DIST firefox-53.0.3-br.xpi 440068 SHA256 231a3bc39f30ca1990deccf7da656958755d2639a97e89396eabd19ffb91d444 SHA512 986a23be9c58916558f4b11d8cfe62e32244080d7c14eddf7d07b44d06f7bbd45192d781b81ee7d65efb3a4a8846926a18ee91f05972a5ea719cca41584e1c86 WHIRLPOOL 8eb16ad11903f2e4ea6068b28ea47b2aa0daf45a5aae378da374885dcb1325f5c3dcc6546598f87ded0ee2ddad5ef33d3759e39d3e7ccf0c3db92527c462fb82
+DIST firefox-53.0.3-bs.xpi 446634 SHA256 cf14dd3a7cbae9d247ba8ae43bd8449a758266d768315ac27ecaf790a7775a24 SHA512 c892078cde5784a407d9ab78468ad5f1e15fe2b4872c07cba44b5d23ba44a7335f2d79f0c4be512093806f857f8f2a1b22a9b2d9c699a280a327775c4becebdc WHIRLPOOL 3dbc51bfadc1ed701caa3063602fd9ca73e61f99c9b84a276618fa3d689bd551a217f07c3c4bb5b097585bd467be63ab0241ad487d4adb277f4a87a90f31f201
+DIST firefox-53.0.3-ca.xpi 448943 SHA256 96c7f00088e2c758071d95c79ec474b9d56ef34c7d11c83b62e069e6d0e15d5e SHA512 4f6c169294fe7680aea6c80096840383de57fb209c852778e2da449ea7376296ce4fa76a018bee818cf413af438f366a42102e538537b06e3d9cf6270cb77bf7 WHIRLPOOL 2f924577ac0ed2fd0e10f5bcb90d418b305bd09b2fad8f0a9711b272728c3158120077feb5fbe08d00c5e9016d19a215751791db1f6677b118a1b5246f5b9f6f
+DIST firefox-53.0.3-cak.xpi 463843 SHA256 232ca5ce0105c67baed0ae7695d879621830595131ee5cd245149917bbc72c2b SHA512 49f7d0019487aa3cd164ddbd606f2aa3a6b32fc7845b417d785f964e0d5e548304bfd8673c6ecc4be55e09749831f4ad1208236aab040a1022badbeacb922f80 WHIRLPOOL 0594818e9b2c6d2fd706e5b2c0b54ef7eb4fee6fbba2107b5479df0b5004b62d7d7acb5ba066d930da71ff74a8eadff1817f6a5deeddd400e7e29f455ed3e62b
+DIST firefox-53.0.3-cs.xpi 449412 SHA256 fa3281d69c9f2dac9eda8e96157f2b191641852562fb713dd104c94412112e7f SHA512 88e809d5deac35088955d9bd83752e797f46911d446ced508d4ceae118679c764a84e21f399b8265bdf47ecb17adb5836868f544eb8aa39adfeadbba335d76bd WHIRLPOOL 93a22a9216aad0382cd9878294ced71ea0318520312efc75480e0f7f301fe2eb94fd97cac3950c345b875a81bcb51cd31ff51eb7df52eece82bcaa55c2c16b2b
+DIST firefox-53.0.3-cy.xpi 441505 SHA256 632866f99885ac791216307f403faffdd36782b59ec4d71e5b80239a3f78782b SHA512 309b6081b93fe5ba70365ddc1e8af69856c444ab0215c6332b24b1fbf86a8ebfbe0e150e32c75e65abedef1fafcec0f333bee9ee46c0845ad3d56a7809846d8b WHIRLPOOL a2c95a071664f07e08582e6b7535cafdba5953ede0f07ef956b80c63f03d9a986e7dcab64a01beab254c12fcc2af9d8e794dc65254eaef171a58acd44bb1416f
+DIST firefox-53.0.3-da.xpi 428974 SHA256 85c1b80c5a0d4f0b0b991963ddff203624486fbfe51c5012ce656f201449fd1d SHA512 a38abfc580eacefc1fd589c3f3d5e6646e11d725332ec87d39c33089a4601c604c9b69bfea664106cbcb58a5dc7562b151f26622871c8990af0e4aaccbefda2d WHIRLPOOL b9ca55546e2f3247e004a1b270862cf6e4b31134719361ba303befd50883fed43087da60067eb9650b7ccce67b9e8aaece1966dcf38ff39129ffba319e4bdf15
+DIST firefox-53.0.3-de.xpi 447785 SHA256 4c8a3bfd1c4fb2975d5a8510a0bf1f15eb1d0bedb583aae05254954ae81c65cc SHA512 429b592fadf4c625268708273544653ba771fbdfebd9fd8f302c4dd50a9d983fef915945f40cbbce1ed1c528aa953731b0ccfbe5fb28175a2716a88877156b30 WHIRLPOOL 7dcdda4c4feb3a7d997c2a72c51b76ce58388dfc2b8fa076dd2e0e0fb950c1eae490ebe8780765c7ea69b3fab7db1d4834547ead19352d1659ba268d2d953ceb
+DIST firefox-53.0.3-dsb.xpi 464375 SHA256 fa0e95bb08506b4978bf57829ab12b030ba995fd49fc6ce6800bad20c1de2b6e SHA512 087389e331b9a58ae9095a984804793fbbfaa58a112a23f95c47e0002fc2061d07d4dbace257d98eee22981b00711c0b7c3c90fce37d694381d34de281d6c8bd WHIRLPOOL 01109f112bf2a2333430d5c8369971b7694afe310b86b2801864806cfe842f18d9af9ebc0d79ce7479e22052bbe545c7d234acca2ad7a81fb99ec2ba3fda12ae
+DIST firefox-53.0.3-el.xpi 523413 SHA256 a647e41baafbf943051c6632092074f6c753c303698aabfba075ef7e131c5ac7 SHA512 31ed912c3a098a56177ef3de1e6b0d14a60df1c8db2bf039f5815da3eaa50c6c1b99ff901093ca43411e40105b0803726ce528b4bf9d2efbe6c435c484dffa0f WHIRLPOOL 68ffb0e9e035c62b3dfa671fbbdc7d5cc998c5b586441be7990c6b270c68b9a5d61d25ac70f8b58a26b99d342149bef901d4d7c36cc86e74686473050f9826ef
+DIST firefox-53.0.3-en-GB.xpi 424830 SHA256 f1d6a52496f690a5588f7e7ed6e494ba8dbae32fb11a51a27885d442058fd5dc SHA512 e060719de2bea93436e4e128d8648644dddf0343da787c99a47fe4ca6ca18dd6d284190701bf57efe0530797ce50524e85f833a7181cd1c4a66cda467a0b2a87 WHIRLPOOL 19f6a7bd8e49258f381957f49a08a360385cbc195611e1569bae318147c9876498d6df9def052e8cc7479dbce0c389f966eb05f3c6b249dcd706b948652ca85e
+DIST firefox-53.0.3-en-ZA.xpi 417992 SHA256 06fbcdacf39b7230c6ae7f97a6b11d61c649f0db5a48539cf7ac8da194bcfe86 SHA512 b527f6598ff203a495f8b0553de1ecf01bfb1986d519e75a0b1aba55041051672f2aa327e9d2325a9d2fc64eabb70629bac83e5fb404e8f5fd60a9881dbcbc75 WHIRLPOOL daa327760a19144e31fefd3b68e76f300e9f5957d73b6cb8088fa7ab49c9645d2d2ed9658a771c452bff98c776283b44b85bced508a03af01229eb62d4fed0e8
+DIST firefox-53.0.3-eo.xpi 442323 SHA256 8d65c14c9946b82f3de6f06ddce3ffca2b8eccf6f8c114c77de5f37fe090c851 SHA512 3076895093534bcd8dd024b05bf0aa93cdf80c8f8cc2da4cf1a3ebdfe4b58b19c05429228f309a748eb1cc98dea852f7adbea8174f145fd050bb137ae92b7951 WHIRLPOOL b0a568a06e911bfb6f96706331f83c9947c9384333f62cabf8c4b31129795f6da9f6c4307f3a7e76dfab5c828e3fe46c5d84580e388eb51cea989ec7c0030442
+DIST firefox-53.0.3-es-AR.xpi 450768 SHA256 1cef38483eab7bad50f814e854fd78b3aae5e94a4fdf886610d0a874c8a3c5c3 SHA512 4f6cdb7b1973b6b4b6b7ec616d6a4113bf58d7187a93e0820481db594bed5f3b504d761007454aa1dc22a1c817c5022af6addf0558865cd3a30450d4dd2ee876 WHIRLPOOL 7cac25cf62cfc36be9c12bffe6522415046e3dd7026e0bb264e9d3c3200644d8a70bb4aeea446a105f9cedca3bcbacf91c2a8994472d9d3d80d143e885d2c371
+DIST firefox-53.0.3-es-CL.xpi 450477 SHA256 68f738ae30690751e37d290ff4dc45d6464e659c3c24dd95077e44d5e70af42f SHA512 0d9f5783296f33b51b744cd4657ee0687d12f5f379e00124e7a7b4e89f3763da64818420117ba5a7792c56dac0630774db8545725051ddf172552e8b52585751 WHIRLPOOL 13cb0570e8831b89617e37fb7450cae597fc92e0f3d37e98d81eb62cf26652f19b56b593b7c1d9398858e8191204fe676c27f4251a37cee2a2536181c3f22102
+DIST firefox-53.0.3-es-ES.xpi 347589 SHA256 4b47102f9fc36e651d7501d94e36da372e7e71fd89eed8c13b0b39c64e645a04 SHA512 fffefe8f35a428ae1b4a73da516a538ef5bb76017b7854145ed07fb2b57908819d542c129e4418e80893ffbfd4dbc72c1e5888b45664ff3f2ba73e4a9d734561 WHIRLPOOL 47d17685ac3ff34f9991163359fe659badad6efa4863d49b4bc50d68354fe51efe77d14676a7e1f54e4e3c5a7432801e7f003e3de17165540728765ca65b7c81
+DIST firefox-53.0.3-es-MX.xpi 453326 SHA256 31992fc3284854d2ecd15c8c05ece2e6912ce8db48a41cab13249604fd0033d9 SHA512 e9bb25870fa1c93279b18af92a03168b666c3d160ea6e5891c1104e7e25ba16fcf6bc65021dd5d81f59fbb4083d4f14c0728b155d21337e11192d79ed26ce8cb WHIRLPOOL 3f8aa2d20e1a09db0a9ce4df57fe43f2c0891b0fd361267fcad7a9361af0630e6ab808c2884bd03e27da91932f954576d1c0167225ec68c0d1a0e828e08f5497
+DIST firefox-53.0.3-et.xpi 428865 SHA256 c3d9c9f96826712ef327ba273e43bb628e6f1cfb751ff12719d1be659e3c8c7f SHA512 973e3acd5469adeb2bcb6ea1b6f30dc90eec18ad765be598e52fa264d987d9cc928b880133f285ff33bd05e303435c553c47927f75d0d91c66844fb9ac9a1a7d WHIRLPOOL 3f2e224dca81cb2632b087bef48c7830732448f4f9671f4e72c5ca13c2b7d27208152dec2e4fed07242de0067ea4f92529b64bf628463c15c290f358eddbe80e
+DIST firefox-53.0.3-eu.xpi 443204 SHA256 81481d249ac98833e51b0d847f8fb4091dac80b1ca613303f0067d3b0ae9b677 SHA512 f7e976cf9c0f8a0eacf7f718f2db134417c3326b9dd45288f16cb0911d2e5ddf9a990df7e0a297fe13a9f51e08d715eaa3da524f0b8e813d28c890eb10f3d576 WHIRLPOOL ad1696d7f8deb6dd64596aac77c4940b65f15b0677e304e11f62e1cad52a749645393ef8e89d59cc53a87a89eb8137793d826a4c8f1a11694980f3879a428570
+DIST firefox-53.0.3-fa.xpi 496782 SHA256 88f5a080963cc08d56812683636e8b939c649028822a6c6ff1a2acf7d15254fd SHA512 a822cfd12f787aceb94d2a79722da1deae2ed14384322cc63cfafbfdc2205739ac4716316ec43733b0e401e2e65a428c5f253ab1dc4bc3831ad654510fd8a6be WHIRLPOOL 68b911f1b4f8d8e791fbf322fb7211c1e8b9e07db23b03eb5ee46c07baf932f7c9351f116ea1fd44a7f08bcf04cb3cb3252487652853799aa2e755a84bf25cfa
+DIST firefox-53.0.3-ff.xpi 446670 SHA256 4d335479465769e31ab9d315d1be373da2306b78370a2ca61929f1dce746cd1b SHA512 7aebef4f08314a87e80daf6ece782059715fe4040da08c14bda214da017ef3bc4eaf5e80a21aea1ba74bd0ccc79fe3edd2c978782d5ea4392bdbe26e29b11038 WHIRLPOOL e18152bf7b9e56034ae582238f336f1a3395ce27455ba1c984626e6fabff5e86819b957c09393f350e7fb314bef0d67f3d3462a2ff3d6a72a2588e93ecba097e
+DIST firefox-53.0.3-fi.xpi 434622 SHA256 62970f8b0bde16afdb29067887c74ed00bc74d317621335683243a780d30d29d SHA512 45e72b4b6b413cf4ca4de57dacc2c37a559c63eb476e717b7787350c4e400f803e2d46d983fb183d9994ac50d519d6b6822d48ba088f0322db81d2a0d4a086a4 WHIRLPOOL 7926d573148c052b21f402be67cbb78964006ea2dc4203b5d73bf04a71537ea2be5942e2bc5a7e087681f2746c09a15d3b27273c77e57a99d92dbc5bd7127dcf
+DIST firefox-53.0.3-fr.xpi 457535 SHA256 f593570f85f3aed79f99038f93447e41a28f025c5233d75a0b8ca232fcdeec3a SHA512 34dae47c19f9ab1b016901660c5d521a1b87a51a825bff428bb65256200622ef7e1d32cbfc8f57503426659ca661dc46ced59942fbb9e4b10ee8cb97432bd9df WHIRLPOOL 510d71ab10122c7079bf91f7470993f8273a84501f4b6c2a995934bcd5240c180216da0a6afdad1a229bb4dc97945d5e5228da53dea9dd62f09c18eb4dc7031d
+DIST firefox-53.0.3-fy-NL.xpi 449823 SHA256 dc0e43045727efa78a152ac0398196540cc17e1bd7c450c43a71484131f82701 SHA512 eae203b99a144590f7902f2d3da4981bdc1b431d7f97d82ae1086195e480da2ba8343fcee69a15f110598deacd0f65ba4f98bd19d97d2d03e2685fd028309b8c WHIRLPOOL d47f8472a7d60f3825c9b4e0959f76174b04b59d06d94f5b1f2308d72d222789bf391a6bb0bde01b3433e2e0b1a403e4c1498319648050c1c3c37f324c9e1867
+DIST firefox-53.0.3-ga-IE.xpi 463130 SHA256 04e1a50f8030162244523f92d9cf0ba7a195ba742d292c64b78c88fc983b7584 SHA512 0c978c9e0e2739cd46f9f5b4dd4393f39c96480debe420634573fdde05139282ed4c88f23870bf91490ea95950fe25a6e82ecfeb57c0bfcc8b774986e08cd632 WHIRLPOOL ed57d5b5ce7a0a1dfc80cfc47efa5050d9b659b2a07431f99618dd2caeebf2e3aeb6048c1804d46dc5bd232130989997a9ecaa909d16a6e0fb7b38918b56ccbe
+DIST firefox-53.0.3-gd.xpi 452062 SHA256 0d1890182a95cd2adcba8ed965e0553821d6a9597f577a1197bdcedd855aaad1 SHA512 f2059549643091c631fb55819cc686e12a7f9508bfca2701069cf3eba7f2714f6070163bc0f27068797c754275f5df23403f3db600adccec56d31e940ee70b75 WHIRLPOOL 9e495539f674f85bc150b80c6828261a33b3d9277b66f61a308ea4cb53f54fd50777406257e7a28d7235e618775a764f25ac94da9b2cb31dc71d00317ac0b0db
+DIST firefox-53.0.3-gl.xpi 449152 SHA256 acf0716f7f771d73cb21055428128d9498d633fda7763c3db9d427e8ba6e4243 SHA512 b787dc3340fbf4ebadc6648939cad3f526790c4fb056d3eff4e9c5fa34c00c4912f03bc5d1a3d89572c736a51b8f028a3f8e2cc4dc0665698aee3bde37b63186 WHIRLPOOL a71e0c1f087fc6a5cd667f5560e0d9824604a86710392b6286d7eb245af06705aaa74d1773723df0b429b36bae17fde843ad95da578aad068bf30564b315dd24
+DIST firefox-53.0.3-gn.xpi 461573 SHA256 a115f95820f4d653053fec02b1c1400ab957a819722d5a29951aa1407c2024f1 SHA512 b1ce66105d29a68c508a02045ebd73f758feff7ce328b9c6bb2fb4f6cae0c56ffe4727068610bd2f50008dd68e35db4c4e2ef19a80de6306f383e979a12e0098 WHIRLPOOL b5205d798ad756dd1f5b2748a54cb5eee453581750312a04b00e40b88605b4440365f3e35a8dbaf6a113c02bd5dcbdc40fa35a24e511e2080d3f8c290f77e20c
+DIST firefox-53.0.3-gu-IN.xpi 493672 SHA256 a62119d72e4f8e4b3f00a429ac0028fe6ca53f1294ae2089415ef2050c7f87a6 SHA512 ed89e51f951e0a99d75dc2d798be53c89be1fd3f24ece485b0569014c0edd3b4376680ced424d178573d051ab540e95b32d1ba0effb3ef8b54e86fa5db950f62 WHIRLPOOL 6c5210d6ef5077cc292cd51f089ffc87894a2599903ebe287fdb5cdb9ed385331802ec23e9e1299a0dd3d843ac3c2a41f7b4cf00586dc84ba0432cb2c58a0b32
+DIST firefox-53.0.3-he.xpi 460050 SHA256 263d142979b67853d37f60ab29f984b8e14a0609a6dd85da927383d9301e5499 SHA512 722d123d876ab69b82421b154c264cea4d2b8c05a6fd9f27150671c860cb3c689f7a1741544982bf9d79637a9e9b3441e08a215126ecc7be6134f413092192b7 WHIRLPOOL ff9fd7736678dc87a1121315637b25fec1a0605210ad97a1f8ab77fff87f96e9b5e042e29f81f2e3a20ae547792cabbeeeca768979b086ba518b6515116d4b87
+DIST firefox-53.0.3-hi-IN.xpi 511788 SHA256 2a450c9aaf941ba8f9c0ec12354529f3dfb47d9de66685066634fd2e5359cfea SHA512 200e3ccd9c89156fbebcae7f182486bf39c305bdb7323569c04568bbfe2f0ad558542625efa9f9b117df5b9a51650f0327a0b01784e33196c5b2be73dc90e186 WHIRLPOOL 94efe227ee9d5413149c8bdfa834390d561f4cb9d12f0dcdb498a98442fab932bda3e6a5efacb3e90509c53b6a1b8ccc45fe9120034bbd25a9fce13af3f947b2
+DIST firefox-53.0.3-hr.xpi 453110 SHA256 e931cbf3ace412f860dcc7e0b14d862459f0c54e6f8abffa83825645910f11e7 SHA512 a6a151a94892f328cd96bcd508c757ee09334fb68c251f2e2caad18ef2ca66dab110df43e6ea912344697db554a5f5bac4e8427193700d23501afc1d80983051 WHIRLPOOL b6474023d7ad24746bd918c6fc906365dcf9ba410aff43149ddf8b522fd873b8d0ab5e13ff5e2a87e203d71c2ebee65e455759562d2aaf123a675748e17e3b45
+DIST firefox-53.0.3-hsb.xpi 462173 SHA256 9663469370dc0a6ed450bf4061f0bd491e7766740aafbbc79057534ac319967e SHA512 d9d60e3fb1a065506b1a14eadd654499e08a8538c846cdbc9aec888a33c7d45a797879b9b6857478f710844f483d6bc80b608ba8ba4e2ce5462cac5591662e8b WHIRLPOOL 0a5ce2c32eb0202088fc41f552717bfd6ebb85f1e69294e66a14dfd2d8fec37961550a196a9d80d1b7968934c23b6007577bccf66f7ebd7b601e80a7c46cfcba
+DIST firefox-53.0.3-hu.xpi 456925 SHA256 fc28470f937ab701a6262425a01e725d1c12e9fd5045750019608f00434ba93b SHA512 9f71044f5147161738ba8feea527b675fd764ba534875adb86c2a003ef6abf13932f48e8c329b8aa77b06f5432ba031a56aefe25f246eea31ed711a0b7fdf210 WHIRLPOOL c4a59d33571c405a182fdc0e31dc3ccf9126ee86710cf21c4654cde49cf06eb82499248ef6e04e01c654a8e0ffe55b6b8925b9891b3629f0ccf65da4768bde3f
+DIST firefox-53.0.3-hy-AM.xpi 500718 SHA256 eec34716ad97a2fe2a1a8449c4f450aef326c2d13b75ec571dacfedae918ee5d SHA512 3a9bc08459840ef2f65fb1ae28458e30b200e7bfc01a86b5466974fb544b76bc209a0415c2d0a7e330ee7d0e0dc9bc579a9e6e4b57a69f15f3838f0b34c093a9 WHIRLPOOL 1aecca7e4fa363169b1c4f78f86cb225723bce4adb761787f9a6f939d8d2595320938e5f7464f5d132882e2478e8704135c344985145baabbbf211734fc2db3c
+DIST firefox-53.0.3-id.xpi 430281 SHA256 25df7f7d38327e8ff8388d9588ebf29423723f76f99b890db8d41c0d6dc6655d SHA512 235209e34b857a9c918fcd144ce01a39a5b567b18debacf67040a25fbeafc04af23db93818c326a887492adb1d964e08c0677841e85096d94a60506550c30eb6 WHIRLPOOL 8fe0bfe791dbe0efbba44c4c11d33020dc77961e61f224c1bbbc8d1d6c61204d44a424f4fd8c84af9de850db239e0de125a83d5e455f1a5bb3c3394fc62d76cf
+DIST firefox-53.0.3-is.xpi 447332 SHA256 d929734bc994f3b20f7c8cbd4e25d98d9081afd63af81e6fd5318688e6b57eac SHA512 1456f5449617bf24e8a7194fa1c0e1da935f80a4ad85662ff1c4fa103f5615ac32d26728720889c21f1c28884856fa596e89287843ca255ad27c87bb31b55a73 WHIRLPOOL f9fa10afb01f67ca1ca1976c9d90e77ef0651731abad8e58880167be4799fddccbd0a0cca2d8bb02cecc5ad7c1555a858a0db34882a90bcb92e6f75d74b050e9
+DIST firefox-53.0.3-it.xpi 341969 SHA256 4f8a8855b2680e8bc2323727d3a2d7aab0cdd9f718b1cfd3586f6b93430f88cf SHA512 4a230f8c3aed1b2f3285b08054130a24b215e4355c606bc10ae39123c3a0458cc7e81ecc569e637b2497cd1fe4c7f9a73133a2118210fb0bff6439bb49b00223 WHIRLPOOL bb82c195b36fd34213092a3200e3f598b316b1013ffb549effc3cc0acde282b3f699eba28cf98a13d5749b70a6e8e3b398bb5628af2a79c1df74dd4d758918e7
+DIST firefox-53.0.3-ja.xpi 493029 SHA256 fd7aa5fa31bf8160ae1bba834bdf43129c14978cacc775d3625bc42555844f2e SHA512 e6206cce4bf33121a10bec4602676d7a483ec6c6c8a6333453d95131a5fffca3b4d54f2b0560121419940bcabb607a0f90b99c376fbd6ff38b23e6a7cfdbfad2 WHIRLPOOL b76e8b31a85d2a3d0a965994e0bbeecb66e34318ea6c8f3758a811637de3cb51fef79589e3ac0f677b4a503be452915fcbb34fce83636bccbbb74c95127e17cf
+DIST firefox-53.0.3-ka.xpi 480046 SHA256 64b359537bf0484808f18dcd0338ac8c45a48bbb1c4727d1df7af34ecd8ba310 SHA512 6d8cbe601323fe69baa3ad1abaf877d45c059f74bc2899174011ddc2a906b043e7cbfc8ed9624a2e112d4e2e780b13739b772dc150fc10b3469c3ddc9b7fc536 WHIRLPOOL e7d21e49689f12e8a5f2a8cf2c514190de4bc47f5d6d9f0a2a01e8b767a86e973719feb76bf799021664989c2ef2a71ba5c598c5a1971a14cf7fe80e0cb8b503
+DIST firefox-53.0.3-kab.xpi 449396 SHA256 225c329d738f295078a95330fda73a9f9f24f5a0ffc812985fb0a3f25513497e SHA512 1a88c19ab4bbe4cef49355eaa846679ce54c364869fb71a43a8f31fd804c014260182c6c7a86a4a8fe798473b45b002a83ebe1e56321f7f6a871c89851d0474d WHIRLPOOL 9f4c51d7ed6800b3084b59341e6bb5df63a775a535d69dcb4947db80c245b0fb155838bd0ef591c8fd75b523929d292e91e8b765f2340f66ce5ff79b9d2b09b3
+DIST firefox-53.0.3-kk.xpi 499341 SHA256 085d618e649720ab7a8649f4b5ad0e576aa5dbefee4ae0f23480f19b8dc48ca2 SHA512 0f5db26c2bf9c44ded62b5858b966f68f17108fbd4e54072aab44ea086ec480d6883198e44a9426d2f539d4ef6e40bcf50c5015df3e7b1abbc4403a24d6c477c WHIRLPOOL c0a1da3700c2f416b8940ce1adb5fa26e8df4b3cb86ff3fb3e6a5cbbd00ae26d9221463e940a59496186968fe7d2e5f4764aab4388bb385331ae8ea33dec427e
+DIST firefox-53.0.3-km.xpi 524729 SHA256 d2c3dcede1bd71d85877b8f9b4b6e300275baa9e9f266d65066ed49ffd970fe1 SHA512 4942709be3aa751f5a62646b14d6f344e5c5d3ae8261852309fc71b3fe86661aec30183e7da0ce06b5d5bdb15f711237cc9fe23889a270564834a16285aeef47 WHIRLPOOL 8d58c93d956f4a23234c6e82f2c1c77b03cb286940d887d3d08648dc6d691da26d0987244948fcc03ce9b2b1ab11c8db6265fa80e42d2606fae7a9c0b71627cf
+DIST firefox-53.0.3-kn.xpi 524037 SHA256 fad69dedf7db8d0ba39209dbb4a6e759c60e541c253101ec67b288cb2fed9ceb SHA512 10158baa68603394bc009618d3f326912f06cea67942284d376d07c12953c195f1e85ec38efece3c531e0a1d3924c82154e7afef88294dd975f9025365cafc38 WHIRLPOOL 224d482567090b7ee6378fb194f0ff282d1e628d08b94f9be4fd7985002648cddea15094a09c278bfb315932be60cdda5e39037565b55186feb8ac662f9a1c18
+DIST firefox-53.0.3-ko.xpi 468653 SHA256 7f0b62d524629a037505f8deb1e400c3da5fccf78c0de975655f973e79231285 SHA512 9d1e019db91d0af5f7a40e0cf95bc2b0800a1725f49c428a321b84a97c5370c81244aeccbcc63bc26e57e60b2f53b699fe6e7a7fab6caa0f5e36aaf3ab0c616a WHIRLPOOL 06730d0c2f8bb85cbfd4d7d36a4799cedfc0207a4805d810299b7e5580def60c3f8fde3066cbe78e1cf8ca4d5a82c5899f81ec1c6f8d10395d7b4c13fa3b0f74
+DIST firefox-53.0.3-lij.xpi 435430 SHA256 54454c19503de03176a98e7a9c1bae14bdc40886bb730b7f26e7b0d38d92a971 SHA512 c2172854c49874fe322710f2cec184d11081e6c8ca236dcfd957702d67f2ce0e89bc90152578ce0f17ee1fe500d847be649616696321f5a0caf161c610acfbe7 WHIRLPOOL 3f871d1ed3b7c62890e8d6fdc1326e2e7e1a811b8a09bd68ad90a9c895e9d60c0a449cb34ce2a8c0209d7bc9d965d01c5db5797c921ac8b4fd19ce7e81ca1d52
+DIST firefox-53.0.3-lt.xpi 457034 SHA256 1861bc9a195ea3b0319a8c1b8b664fe1e4b5e007ebdfa4f7d1784631da2f8c0f SHA512 a034e8b5805e07efc57a9de7b81daeafa4caf3e45f722c3e0287b85e6d02cde6d0835fe5a553b52546c0b8c0a3107a673c0b65b4dea18dac168f5bf518590ddd WHIRLPOOL e4bb9fbb15d7c905d2b69e655355408e321c71dad5b4f0e04651c270b29a0b25c77813a1c15a191199421f97726d9bc53832c02362948b8ea1e65004733e7275
+DIST firefox-53.0.3-lv.xpi 453378 SHA256 c00e2a8254107817c1f2d27947bc91755629fa734035099693c04a7ff9065d90 SHA512 707a367d6a8c340e93dbf00498da23d7de63af187745b8140d3a790377f078356db21d03878a5dbf20757b1036c0a24aae5af479186fba6d4ddb0139eb6974c4 WHIRLPOOL 857cbd09204ef43b16e25eaeaec1f7d74138573a33b97433d512d9ad1b1e6910e29677d5d1592b95326273c287935e0d50347154b26bfeaf2078b5f45c7c51c8
+DIST firefox-53.0.3-mai.xpi 504302 SHA256 25665e8c4a73180dca5c6b271c4d89b8a800261b019ff2728a61954af10f5de4 SHA512 f755da6bb19e9157d86c42bc1935c654c28de88e097211ba1483748bafdbed0cf3b040c67422e147df2f357278981a6e677b7d6d0b03f4aeb5d568b29d04feca WHIRLPOOL aa3e3ad861c735603099c3c527de56b61f7ad3c4ff1748c1672cb0572d78f350ab552c0cefd4d14ebab26c9c97d95083bc6454109d00f6cf8ea9a58e21cac680
+DIST firefox-53.0.3-mk.xpi 499956 SHA256 78868c7546daa620f186c72c84f51d1ff30fb007e3b3dba4dfc194c109525682 SHA512 fc1325e348f5699b05113482a6c05e6763e6ef4c9d89ba7a2e58a7593bc0fed4a0510bb71556d7b562f6785e559f972775d9417d7dbb4f6177e3f0af73d84396 WHIRLPOOL 6feeb9b6dfb3af98c0a242130a073f5fdd98633641d32224478ded4a134afdc035d8006060238f8d547a6a8be30e1823e732bafb8de2673a714001dd155ecdf3
+DIST firefox-53.0.3-ml.xpi 520667 SHA256 857d6e655c21deef2c0b1010d911c420175e914ec2793239e27b849939f388e2 SHA512 0085ac530de2a90afaf0b23dcfec555dfd0b33123a6561145220e878528a9197d2a3d0150723f58753889b0f61cbafb1a0436f15a7c4cc4ff3a6cc709728911c WHIRLPOOL 83e1c7066846be7424f6a3405996d8a4f2b62ddc195f180df2beea21f305daef0349c76094bf133a60d6ffd78cf1588ea271feb79e552f635c76d87c7ffc1e4d
+DIST firefox-53.0.3-mr.xpi 507882 SHA256 56367d182c2815d059c41bbac11825a0b7c72b9b30a5adb57863c42a97fb6624 SHA512 eb2dd4993c1d09d53b593c5f31d6c349a840fb1306734288992987357920e68cefe4cc84ceca0fab6604e985170742a541f07dcaebe135ad9b7417effc8ab970 WHIRLPOOL 8a199f75338c94b64f11fc47c138eb08f908bb86649dbbf7fd96afc85e9c2a7fdb4d23a5e5b9ac9e1cfc206c21a96a67c1abe81e1577cd4b146c9dc6120bf499
+DIST firefox-53.0.3-ms.xpi 440728 SHA256 4ceb5646daa509065fa5de098600d4b60160052240772d33cef78f8b6a34e697 SHA512 f76ef725428865216e2bf851b64bb184692f758a9557984bead3b6c3bbbff6526ed1c9b926ecfdbc9872549fcf5af539b91856288fd0f2c14d65c8db142ccce8 WHIRLPOOL a1ba74e5492dc3a5c7c4597bbdfc58372b21bd4bdc7aee3b22340fca174cf0e9d5a3d7ce2f49089a8599c4bb3194f7fd87da535c60044a7f58733ae74601b502
+DIST firefox-53.0.3-nb-NO.xpi 439033 SHA256 b812e5b4f681d38dd6ea9a707ce5297e79f25d7216f4436ec22ec580f0880b6e SHA512 41ef08ddf904277b86b277ff2d4c030c000cad84f2dda027b738912c61c004fd2eb101048702aa81b707c1c5d07d1b6301c79832af8fcad16bdab0efad197465 WHIRLPOOL 5384f192d901d69ecec74306223222043b2ba329918e6162caf61c15166a4276f6194ba8e1f42e21dfd360c79c0becba8885e0cd187575bc5ad6e9648655e46f
+DIST firefox-53.0.3-nl.xpi 436860 SHA256 abd34f2c16841f9a6159b4f6de967ea19f1920b941f89802ab8c34347a073932 SHA512 7f3d4c0599412f0b6eaf6686d4c1404c1e1a675145ae228a35a6b0eb06fb4108962c505edce7f4e10b7dd64ac8798807da5ec4ed7686df55d7f27685d366d6d3 WHIRLPOOL f14c320c80cf3f531b5fead7784fbc02f9cabfbcd7bf44737c211fb15a906225bebf06e87dbcf7a132f0968df26e16953df00e1feda077cfe7f7b58afa1f037a
+DIST firefox-53.0.3-nn-NO.xpi 433329 SHA256 e42e3197753f83bbda085fad8f7b1582ccc0af48a9b4189f8987d8314ddc7e38 SHA512 b3d732d50a944c2803277c9c39c2f0fbdefecc4052c43143add0b5559f30046c0532742ef90fefff29854f892e8c2144c2cda7088441c22872c24c8ea051e609 WHIRLPOOL bc0edc091fdb2d3f270a48b9d9c03fd77712a5fe7b3d96fcf173711ac38824ce87bbbfa4fdc3d02224a5eab15f88284ec7bf7e94f580455db34e0f8f7f9c4468
+DIST firefox-53.0.3-or.xpi 501208 SHA256 7bdc757b4d74430d0821e6e3cfe6ae252655fa7c1f82478a1140b32d794f5f60 SHA512 3c02ebac41e896ebd8cfb0d8ee7e7ffbf62763686442989d832c712fba331a4e4490be64ae5f54ca884ec2f5b7121f1dcec687066d018aafa5086144ed539c47 WHIRLPOOL 72e9bccf82968e9918a5b13629791e633b9860848fbab30fd9bb241c56a4d3f79aac59a08375b7ab2440b9b50acfe6a5c318d85c5832ac23d464329ef49bb707
+DIST firefox-53.0.3-pa-IN.xpi 480864 SHA256 a6a94c7bf40c3d50112284c704bec10db14997913d5696b700b78b7e5c7bbc01 SHA512 ae4b08d7fc56e5755ca17409b025af9d0cea91e8f952655c76f8bb290d4d38feaf76fc25f234b07240e05c6a3b55405895122587854fc8c89d918f08d90e601c WHIRLPOOL b0e422e5c330e88fbe4287c5c4b781bfb71ee93d9e3f2f6a41c4114a558002497f0bc1ddd425228f027720c11d5330db5e345efa8f67c693423ff9124d775fb4
+DIST firefox-53.0.3-pl.xpi 354949 SHA256 d7091eb558474f63d12ac1e182d397c708264f0465444d5bbe06340461409621 SHA512 f0a274d88afc538982578f60a4ae775746c89dfe62915b4264c793ae609abb72e1cdacc69f99d4f93e62f969bb57e6bbd1c950b062dc0d9c662df694ce3aac61 WHIRLPOOL ab5492c58e642884c569ad1cee75d067b295f46f1ca82f2418fe3a14f86f132d0e880983ba1e886aae790e705fbbf881a7ac1d181aba635030acd3d224576d1a
+DIST firefox-53.0.3-pt-BR.xpi 442708 SHA256 34297b6aff54b29803c2c534fc31405cbc5a34a0ebaa1e2bd5be01674dec0355 SHA512 be8d6a21ddb8ec0c0673142ad409065c3ed8beaa48c82fd86056567b7c6eb7199adb58d506a3368b3bcd80d73526cdc55d01235d8230c6f8f14c5cd51883d130 WHIRLPOOL 112331836a551791ed49bbc848751d5924db52b1782aae2fc4bbc3714a4b5d3c20d954c3ac344bd2f0ea81e77825290d2139fef45588455c2cff2cac0f14de06
+DIST firefox-53.0.3-pt-PT.xpi 441599 SHA256 b7fd92c3e4bb7425457d1de0a4d0944766635bb984e6d31104704160e465c3d1 SHA512 d642223e3a557556ce630d2198ded928c6a594b2f00b133ad218ef65279f043fcb9374941dab36da436ee934a58be9552d12dafe88cfbff708219b1ff9b64b9b WHIRLPOOL 67644fe451bf842fe8a601b26e99a45c16173b4146e5bc3cf3e42508f9135d2a7db7d75c45e2e314866c57110476d6055339414bcfd6ffd47fe82707dd42791d
+DIST firefox-53.0.3-rm.xpi 439749 SHA256 02c74fc48145cc3b40d06c94210313b7f24975b45bab9aa877b392bf932713bc SHA512 763395268c11fcdd6a3db82ba25a38609f31716ba1516bf3b4b531e4fcbcb17644973f7b86aff2c918cacccbefe0af3834bcfa82c4a43d0655daadc1662d8025 WHIRLPOOL f216e2ae64a800fba6e3dc2fded47c81d571259b98f88a82a2d805e6bd035578190c194329505f0fb77f1880dd8882c9a1b5850621671c2ea06795cb32cbc38e
+DIST firefox-53.0.3-ro.xpi 454823 SHA256 9d0dc4348d0290b5308cfb3dc2e15583188ed457e5ea3e82e08974eac998519e SHA512 b1bb74c03a902dcd7a5cf57b1195b70368b126acc16be3184b743a1b1b437227192b3affeed4f4d05962fc274871ae2bb610e97d9dca4920f85d1e87682c7330 WHIRLPOOL 1fc05f8d0073e7ed7e84a801ec31b8f71b51339bdadd73f4b9cb38525039904a32ce97489c71c1c313c3f52543990fa9627a46b246491ded1d9000aa514d9117
+DIST firefox-53.0.3-ru.xpi 506894 SHA256 51d9943f124ca27928bd2812873b234715b038f2b1cd89cbc1faf9daee0dd0c8 SHA512 e727eea4ef3d71f9a51072983d75c232fadbfcc597198755063f7a493a1a5ba0df66058b3ddd15a1cb2cf21d93c2baa6b74c245e9e3cd6ff8e22b396a65f7a9d WHIRLPOOL 4fd23d8b095bb08fdbfbe58da468b257847ecf98de065460e036adb3ba8d75aa16edcd8588913ea8e6a7b7b725da8fa30431825e22021e4f8656a2b29cc3cfa1
+DIST firefox-53.0.3-si.xpi 496183 SHA256 9b20181adeaf5e8a81f0014612d280b80d2d43b9c3da28b45fa2d94c5c16d3d6 SHA512 b992b48a03e0cba437f23de08113576f474215f241b68d134ec40bc7f38594e7b14dbbf493f79fce0855450bb6712be7b1e9fcb954e63f4d23a975713544f123 WHIRLPOOL a69b1580d7bdcc2633c9085d6d5bea748383ac0eb4044536cfe2a80163766006acc15ca151a7ce553745528be5afc340376deb72993345d07adc78ed6da144b9
+DIST firefox-53.0.3-sk.xpi 460859 SHA256 3d394c7bcc143c59fb9bebc8309f8ddd4c13ca35fd44400957729b9146b99879 SHA512 86da73856584af230578601090a2bee10f547033496a1ac9da33b1296a9e336918c0be8a1d25aeba943d4483b69329f042ae5ad3b958b9de2d09eaeb4fc45976 WHIRLPOOL e32141097185151c7347a72164e89b5a3d1fa586a66bd7f3992c999f66ccd2a38ad2d2e5dc186125411a1dd3d761ad0a29983af3d13bfa251c98ee6e0046fcff
+DIST firefox-53.0.3-sl.xpi 438369 SHA256 3f328c63bb70243cc2e74a6a4403f8755354c7b85f6ae87a74853de037a69a26 SHA512 d6616d64a74dfac9b0c58c009dbd6636e879a12d7a8f802dd063538807b6f4c46293f2311910e15045e099368c9a0df1d0cbe143498efb37a3203f3f73f5f542 WHIRLPOOL 234711dcafa9b826c6cdf327bf7f98d232ceabae877f4fc8b7aca950231d0755070684e41a7aca2e2776e059722bc33ee2e671f7ed5713e1bdb9035b3004acb1
+DIST firefox-53.0.3-son.xpi 439834 SHA256 beffa4c7fc7387a04fef9d96ad1cba47c4a4545e6f25d2826c96b11d1dbd8d36 SHA512 ab76cb2139b8264eb7aa50b1b86e1c803dbf79771ee7046994bdf8aa96ef9c8e8396fc10b3136454917bbd1c9ba90b7a5135ba87d6ff61bac0eb284759ad71a3 WHIRLPOOL f2a5794fd19e85b32e7f4c78e096580b2faeebc09acb526f9ac2d2ec1f957959300faf22479cc06797fb574e609f4f30c733f86d4090c2b5337953092070e7d2
+DIST firefox-53.0.3-sq.xpi 453422 SHA256 e7ba6289dd07bc11df9481bcb6dcf9159a84f163efec5ae92d25a294ef1f6cde SHA512 b27ced4c381d123fb45f0ffe46d7fb0c6c432a85c8aaec2e2786bd2e5315918a51c43def4d403a9cbd2676282af4d0ab5a63f5c4c025a12d033a8ca99232945b WHIRLPOOL 65a7b6616bc9a7476be20a2a5de90709a0b19e7396f6bf3f526836a29ec386049c21a6e5f06c0e1c4e80bb75164b4a557f16ba730b282ed7e84fd11d8b6770c9
+DIST firefox-53.0.3-sr.xpi 467997 SHA256 5fa121ca8cf3c8eab17332c9f43bd94414190ccd2827fe51b68946ed04856e77 SHA512 b08a54f740338965cd81342e9913fa34ad8710a0e8f94cc481c2a927bab2e8b3a51e7d0b7e2366e8acc59b65c5d9b6519695083ad450a94696e637708d40362b WHIRLPOOL 8529660349b06c54f7f34452526f4e371ec9c0f3a365ae3166e4ef3fb5d8b5b42998ea904bc80e68018cc201e79b8121a812c0a966103e138432cc8022724ea7
+DIST firefox-53.0.3-sv-SE.xpi 445795 SHA256 71949c2ebf794037b8bf4bd2452a8aaa72f603012fec0a921aead50eae2ef27a SHA512 8bf5001911ef38ef3d21bae267c8adfea7e81b864fbd194f9dd03454920072f2db0e37f88006143a51356067e53b58ade6529ee73f5fbfd161d635753ae42870 WHIRLPOOL 121697ef14fe6360dd11f82b064ff5cb3516c84e17a57e0ca57abf36a8405b219df9d326f014de0e23d11acfcd3604f6de4e0e51be09d2e34130934cbed1f93d
+DIST firefox-53.0.3-ta.xpi 500480 SHA256 391a6d7622d216673e5f2cf6391724ceecb257aac6089ab290dab510bb5ff92a SHA512 044aec0a69893de31beaf5995fee4f759dab629ad1269de2335e97e231201f20673a7c7794846da9fabb07832c6ac8e040053b27d775a31e2d90cff96ebcbe06 WHIRLPOOL 906ab2b77ff865ce36a15f8a4d94545563175684f4a976734bd31eef6b6f047eaef0c2ddc6b9c95bbfa528f6f6536af65b3e144467e3f1d7eea362289cc4c443
+DIST firefox-53.0.3-te.xpi 520475 SHA256 a80e1c178f1d27f2a551665faaab48445fab20238212ae5c0dce9b9cacc1247b SHA512 7ef33f861464e7b5f844479f75adb92847369649bccef28505da2019ff0babf93ad5cfcabbc75543aa6bb96ba00787991aa6c5ad831e581cd4c9958d630f9895 WHIRLPOOL 0fc6c4bfe2c43d46c8f83ebbc1b53fbf3d0dca52e9df6d33d6bc921fdf74cefb598977919dad7416d90a565f00bf00ebd228eb5d0f969bfea466f5ba32e636a4
+DIST firefox-53.0.3-th.xpi 494087 SHA256 6357bdc635568f52b9c03b8785b4cf86b656fae69d2393ea7b53fc87360803c5 SHA512 3e0dd4af719f3e54b35cffa7d7738b1f1479a9e32113233d360a7a80cab49e02d3716ef59e463b7687ca23a5dd5a0ac9f813f1b91b6dbb0efb4b5e7d4132514e WHIRLPOOL 40a3dc2a83dfbd6b6dbb5820295e1230ae08ff37662e17cbc81c1304252dd102a1f6a1715cb64028281563010c44552821850760f1bde59f0eb757b7fcf2c89a
+DIST firefox-53.0.3-tr.xpi 445852 SHA256 12e9663e2a591de9b4eba5d689f25ff98e2db45781ada5877d8d21f093800eae SHA512 5f9c796ceb7a6ac0540cc767ebf0186f8bdd8e10279bc46f46902cc0b1052bfd9a34b3c17d47682ef71323888ead81e48b737db7e7955fd3962c30ae99b9e754 WHIRLPOOL b6997ace2ccf9dfd1950acef4739ba69c4c742fd185d0069fcf5a904020df3f4a6d32036bb129e61a820f464815b5f1aa2bcf66eee0f0528f207e5f1a39011a6
+DIST firefox-53.0.3-uk.xpi 497432 SHA256 966d51bd93cf4b53721357770fca2c4bbe064a067bc044b1ba0e269213b442a5 SHA512 2b7db5b10edd4778558351e54abb25f5145b57b3a7a23ab283525baa1d3b75b957bc0ef75d0114ca4adaeeb08f7ecb37579ac367c5fc4f74e5ccb51b828b55c4 WHIRLPOOL 41d97697e66935bd5004282e03adda73cd18240bf6dc25556f4ad9e11062f103c82fba4f3c13e9c759586bfda9861612ac83c8c98c21476f0b568fd8ae3fdfdc
+DIST firefox-53.0.3-uz.xpi 453391 SHA256 90d44b439af4204fb022e99e045540268d8ac078470e7a7d756671161d79d5db SHA512 cc4a8f1ebea394a930029a180ae6da9b7df6348385dc27d7f0b1532647db370b491ade4038536030fc9d0b1165f5758d0082826669e09d07b8c235a9956a82c4 WHIRLPOOL 6fa90df7bb7ac838084fc1513f85e763054f09835c2b25bfa3de51bb50d9886e5113cc49f7773d0db6182cb0f951d146109e68e759d7bf221af4d14df16cde74
+DIST firefox-53.0.3-vi.xpi 455841 SHA256 cc67e32dc6aa0f36827e4a9f156b8476950cc876bbbd9668e7f928dc7c90aa9b SHA512 53466093b570157cc73c00a73d24668bf923cd4461e4ae436a38ab4e8506cb7fc9b2a25f9f2a7abeb6df19323071d77f774380d4b6c41f1061d8e4c367c0c54b WHIRLPOOL fed118d292ed826a3b2995b01c5438fd0eeaa93a974dacdddb5e31e3f56438ba0b4396f9e469ddb59f055facefc59bbd24a1db50aca20622174938999e4bf8c5
+DIST firefox-53.0.3-xh.xpi 446171 SHA256 fceffdd06821fc224e5a7118e54f4ac14d73b175784f654646791878899ea385 SHA512 00441a43d066338b2b51f57143727d09811fd168c8722bbe77fc321e1517f7dd068d3f6ef4d0f40cd1acaa7eb84421d1bce187bd6858c1dc4550750ac6cef366 WHIRLPOOL bd13cb49eeafde48db822e43395ca9fef37aa05f7b507974c846d6d985a1f19338ae6dd0edf5bce26772e7481f0f7941cf9af8f16074e9d44a5e6c8eecc406d4
+DIST firefox-53.0.3-zh-CN.xpi 463955 SHA256 befcbbe52e769631c3792555e4e579684762c719696fb4c0e0d48a98e4a5d599 SHA512 c8c0c05939ce72f2a72cfac7cd209789fb55053f88ad711ecf497e36a3a37446860a261f7fa2b00cea5b5035d9bee549b0209ef51a2dcdc2871b187780f390b7 WHIRLPOOL 756502bac6a030af7b0fa08fb29ec83ccf87319bc079b6f95adbce4d53ab5f78cd30361a077959d9aa832bb00ca49b751b168896c8eb9dd32536f4e4ecf3cf18
+DIST firefox-53.0.3-zh-TW.xpi 474982 SHA256 32e697c5f5188085fc1bf08216ca8d562cd2c286ece23e61d9a6359ff6e78061 SHA512 556d9a868e137c7e5b7c005b746db62b6c6cbaed668dcb513235a05e9bb84ffc0f0fb031a7cee58c75b802a939b402e083d46306a80be599309bf6124d8ece35 WHIRLPOOL 25929eb57e122bccef20f19d951e4ae0892fb966ccb7b06a1e55a77511dc8fe44453a5f373fc3dd32d2947c5c80200069919fe3c22db28f0b9eb3e1cd78ea046
+DIST firefox-53.0.3.source.tar.xz 215253212 SHA256 78cc89650b6d8baacaf55f1a486de06bf3bb5b8a3082fd044e70225e2816e348 SHA512 cef5de1e9d6ddf6509a80cd30169fdce701b2fed022979ba5931ccea7b8f77cb644b01984dae028d350e32321cfe2eefc0236c0731bf5a2be12a994fc3fc1118 WHIRLPOOL 2e04efa111e2f4547a38ef3181487ac872fbd8c654c8ef62a593691f2f04ad5380c559c79e8b4f10c8012b072767cb0baa3773b728ee9dfa1d775d3394a6b3f7
diff --git a/www-client/firefox/files/arm64-1-define-ARCH_CPU_ARM64.patch b/www-client/firefox/files/arm64-1-define-ARCH_CPU_ARM64.patch
new file mode 100644
index 0000000..e47aafa
--- /dev/null
+++ b/www-client/firefox/files/arm64-1-define-ARCH_CPU_ARM64.patch
@@ -0,0 +1,26 @@
+From: Makoto Kato <m_kato@ga2.so-net.ne.jp>
+Date: Sun, 28 Feb 2016 19:26:18 +0900
+Subject: Bug 1250403 - Part 1. Define ARCH_CPU_ARM64 instead of
+ ARCH_CPU_AARCH64. r=billm
+
+Chromium defines ARCH_CPU_ARM64 and ARCH_CPU_ARM_FAMILY for aarch64. So we should use it instead. Because webrtc and sandbox already define it
+
+MozReview-Commit-ID: C7GYnpRryhA
+---
+ ipc/chromium/src/build/build_config.h | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/ipc/chromium/src/build/build_config.h b/ipc/chromium/src/build/build_config.h
+index 7a4938e..dcec00d 100644
+--- a/ipc/chromium/src/build/build_config.h
++++ b/ipc/chromium/src/build/build_config.h
+@@ -109,7 +109,8 @@
+ #define ARCH_CPU_ALPHA 1
+ #define ARCH_CPU_64_BITS 1
+ #elif defined(__aarch64__)
+-#define ARCH_CPU_AARCH64 1
++#define ARCH_CPU_ARM_FAMILY 1
++#define ARCH_CPU_ARM64 1
+ #define ARCH_CPU_64_BITS 1
+ #else
+ #error Please add support for your architecture in build/build_config.h
diff --git a/www-client/firefox/files/arm64-2-import-crbug-for-aarch64.patch b/www-client/firefox/files/arm64-2-import-crbug-for-aarch64.patch
new file mode 100644
index 0000000..1e3d7f3
--- /dev/null
+++ b/www-client/firefox/files/arm64-2-import-crbug-for-aarch64.patch
@@ -0,0 +1,407 @@
+From: Makoto Kato <m_kato@ga2.so-net.ne.jp>
+Date: Sun, 28 Feb 2016 19:11:09 +0900
+Subject: Bug 1250403 - Part 2. Import crbug #354405 for aarch64. r=billm
+
+MozReview-Commit-ID: A3sArb6IE6m
+---
+ ipc/chromium/moz.build | 2 +-
+ ipc/chromium/src/base/atomicops.h | 4 +-
+ .../src/base/atomicops_internals_arm64_gcc.h | 360 +++++++++++++++++++++
+ 3 files changed, 364 insertions(+), 2 deletions(-)
+ create mode 100644 ipc/chromium/src/base/atomicops_internals_arm64_gcc.h
+
+diff --git a/ipc/chromium/moz.build b/ipc/chromium/moz.build
+index 8b8e4cc..88aaafe 100644
+--- a/ipc/chromium/moz.build
++++ b/ipc/chromium/moz.build
+@@ -162,7 +162,7 @@ if os_bsd or os_linux:
+ ]
+
+ ost = CONFIG['OS_TEST']
+-if '86' not in ost and 'arm' not in ost and 'mips' not in ost:
++if '86' not in ost and 'arm' not in ost and 'aarch64' != ost and 'mips' not in ost:
+ SOURCES += [
+ 'src/base/atomicops_internals_mutex.cc',
+ ]
+diff --git a/ipc/chromium/src/base/atomicops.h b/ipc/chromium/src/base/atomicops.h
+index a167541..f9ad55b 100644
+--- a/ipc/chromium/src/base/atomicops.h
++++ b/ipc/chromium/src/base/atomicops.h
+@@ -138,8 +138,10 @@ Atomic64 Release_Load(volatile const Atomic64* ptr);
+ #include "base/atomicops_internals_x86_macosx.h"
+ #elif defined(COMPILER_GCC) && defined(ARCH_CPU_X86_FAMILY)
+ #include "base/atomicops_internals_x86_gcc.h"
+-#elif defined(COMPILER_GCC) && defined(ARCH_CPU_ARM_FAMILY)
++#elif defined(COMPILER_GCC) && defined(ARCH_CPU_ARMEL)
+ #include "base/atomicops_internals_arm_gcc.h"
++#elif defined(COMPILER_GCC) && defined(ARCH_CPU_ARM64)
++#include "base/atomicops_internals_arm64_gcc.h"
+ #elif defined(COMPILER_GCC) && defined(ARCH_CPU_MIPS)
+ #include "base/atomicops_internals_mips_gcc.h"
+ #else
+diff --git a/ipc/chromium/src/base/atomicops_internals_arm64_gcc.h b/ipc/chromium/src/base/atomicops_internals_arm64_gcc.h
+new file mode 100644
+index 0000000..a2b0abc
+--- /dev/null
++++ b/ipc/chromium/src/base/atomicops_internals_arm64_gcc.h
+@@ -0,0 +1,360 @@
++// Copyright 2014 The Chromium Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style license that can be
++// found in the LICENSE file.
++
++// This file is an internal atomic implementation, use base/atomicops.h instead.
++
++// TODO(rmcilroy): Investigate whether we can use __sync__ intrinsics instead of
++// the hand coded assembly without introducing perf regressions.
++// TODO(rmcilroy): Investigate whether we can use acquire / release versions of
++// exclusive load / store assembly instructions and do away with
++// the barriers.
++
++#ifndef BASE_ATOMICOPS_INTERNALS_ARM64_GCC_H_
++#define BASE_ATOMICOPS_INTERNALS_ARM64_GCC_H_
++
++#if defined(OS_QNX)
++#include <sys/cpuinline.h>
++#endif
++
++namespace base {
++namespace subtle {
++
++inline void MemoryBarrier() {
++ __asm__ __volatile__ ( // NOLINT
++ "dmb ish \n\t" // Data memory barrier.
++ ::: "memory"
++ ); // NOLINT
++}
++
++
++inline Atomic32 NoBarrier_CompareAndSwap(volatile Atomic32* ptr,
++ Atomic32 old_value,
++ Atomic32 new_value) {
++ Atomic32 prev;
++ int32_t temp;
++
++ __asm__ __volatile__ ( // NOLINT
++ "0: \n\t"
++ "ldxr %w[prev], %[ptr] \n\t" // Load the previous value.
++ "cmp %w[prev], %w[old_value] \n\t"
++ "bne 1f \n\t"
++ "stxr %w[temp], %w[new_value], %[ptr] \n\t" // Try to store the new value.
++ "cbnz %w[temp], 0b \n\t" // Retry if it did not work.
++ "1: \n\t"
++ "clrex \n\t" // In case we didn't swap.
++ : [prev]"=&r" (prev),
++ [temp]"=&r" (temp),
++ [ptr]"+Q" (*ptr)
++ : [old_value]"r" (old_value),
++ [new_value]"r" (new_value)
++ : "memory", "cc"
++ ); // NOLINT
++
++ return prev;
++}
++
++inline Atomic32 NoBarrier_AtomicExchange(volatile Atomic32* ptr,
++ Atomic32 new_value) {
++ Atomic32 result;
++ int32_t temp;
++
++ __asm__ __volatile__ ( // NOLINT
++ "0: \n\t"
++ "ldxr %w[result], %[ptr] \n\t" // Load the previous value.
++ "stxr %w[temp], %w[new_value], %[ptr] \n\t" // Try to store the new value.
++ "cbnz %w[temp], 0b \n\t" // Retry if it did not work.
++ : [result]"=&r" (result),
++ [temp]"=&r" (temp),
++ [ptr]"+Q" (*ptr)
++ : [new_value]"r" (new_value)
++ : "memory"
++ ); // NOLINT
++
++ return result;
++}
++
++inline Atomic32 NoBarrier_AtomicIncrement(volatile Atomic32* ptr,
++ Atomic32 increment) {
++ Atomic32 result;
++ int32_t temp;
++
++ __asm__ __volatile__ ( // NOLINT
++ "0: \n\t"
++ "ldxr %w[result], %[ptr] \n\t" // Load the previous value.
++ "add %w[result], %w[result], %w[increment]\n\t"
++ "stxr %w[temp], %w[result], %[ptr] \n\t" // Try to store the result.
++ "cbnz %w[temp], 0b \n\t" // Retry on failure.
++ : [result]"=&r" (result),
++ [temp]"=&r" (temp),
++ [ptr]"+Q" (*ptr)
++ : [increment]"r" (increment)
++ : "memory"
++ ); // NOLINT
++
++ return result;
++}
++
++inline Atomic32 Barrier_AtomicIncrement(volatile Atomic32* ptr,
++ Atomic32 increment) {
++ MemoryBarrier();
++ Atomic32 result = NoBarrier_AtomicIncrement(ptr, increment);
++ MemoryBarrier();
++
++ return result;
++}
++
++inline Atomic32 Acquire_CompareAndSwap(volatile Atomic32* ptr,
++ Atomic32 old_value,
++ Atomic32 new_value) {
++ Atomic32 prev;
++ int32_t temp;
++
++ __asm__ __volatile__ ( // NOLINT
++ "0: \n\t"
++ "ldxr %w[prev], %[ptr] \n\t" // Load the previous value.
++ "cmp %w[prev], %w[old_value] \n\t"
++ "bne 1f \n\t"
++ "stxr %w[temp], %w[new_value], %[ptr] \n\t" // Try to store the new value.
++ "cbnz %w[temp], 0b \n\t" // Retry if it did not work.
++ "dmb ish \n\t" // Data memory barrier.
++ "1: \n\t"
++ // If the compare failed the 'dmb' is unnecessary, but we still need a
++ // 'clrex'.
++ "clrex \n\t"
++ : [prev]"=&r" (prev),
++ [temp]"=&r" (temp),
++ [ptr]"+Q" (*ptr)
++ : [old_value]"r" (old_value),
++ [new_value]"r" (new_value)
++ : "memory", "cc"
++ ); // NOLINT
++
++ return prev;
++}
++
++inline Atomic32 Release_CompareAndSwap(volatile Atomic32* ptr,
++ Atomic32 old_value,
++ Atomic32 new_value) {
++ Atomic32 prev;
++ int32_t temp;
++
++ MemoryBarrier();
++
++ __asm__ __volatile__ ( // NOLINT
++ "0: \n\t"
++ "ldxr %w[prev], %[ptr] \n\t" // Load the previous value.
++ "cmp %w[prev], %w[old_value] \n\t"
++ "bne 1f \n\t"
++ "stxr %w[temp], %w[new_value], %[ptr] \n\t" // Try to store the new value.
++ "cbnz %w[temp], 0b \n\t" // Retry if it did not work.
++ "1: \n\t"
++ // If the compare failed the we still need a 'clrex'.
++ "clrex \n\t"
++ : [prev]"=&r" (prev),
++ [temp]"=&r" (temp),
++ [ptr]"+Q" (*ptr)
++ : [old_value]"r" (old_value),
++ [new_value]"r" (new_value)
++ : "memory", "cc"
++ ); // NOLINT
++
++ return prev;
++}
++
++inline void NoBarrier_Store(volatile Atomic32* ptr, Atomic32 value) {
++ *ptr = value;
++}
++
++inline void Acquire_Store(volatile Atomic32* ptr, Atomic32 value) {
++ *ptr = value;
++ MemoryBarrier();
++}
++
++inline void Release_Store(volatile Atomic32* ptr, Atomic32 value) {
++ MemoryBarrier();
++ *ptr = value;
++}
++
++inline Atomic32 NoBarrier_Load(volatile const Atomic32* ptr) {
++ return *ptr;
++}
++
++inline Atomic32 Acquire_Load(volatile const Atomic32* ptr) {
++ Atomic32 value = *ptr;
++ MemoryBarrier();
++ return value;
++}
++
++inline Atomic32 Release_Load(volatile const Atomic32* ptr) {
++ MemoryBarrier();
++ return *ptr;
++}
++
++// 64-bit versions of the operations.
++// See the 32-bit versions for comments.
++
++inline Atomic64 NoBarrier_CompareAndSwap(volatile Atomic64* ptr,
++ Atomic64 old_value,
++ Atomic64 new_value) {
++ Atomic64 prev;
++ int32_t temp;
++
++ __asm__ __volatile__ ( // NOLINT
++ "0: \n\t"
++ "ldxr %[prev], %[ptr] \n\t"
++ "cmp %[prev], %[old_value] \n\t"
++ "bne 1f \n\t"
++ "stxr %w[temp], %[new_value], %[ptr] \n\t"
++ "cbnz %w[temp], 0b \n\t"
++ "1: \n\t"
++ "clrex \n\t"
++ : [prev]"=&r" (prev),
++ [temp]"=&r" (temp),
++ [ptr]"+Q" (*ptr)
++ : [old_value]"r" (old_value),
++ [new_value]"r" (new_value)
++ : "memory", "cc"
++ ); // NOLINT
++
++ return prev;
++}
++
++inline Atomic64 NoBarrier_AtomicExchange(volatile Atomic64* ptr,
++ Atomic64 new_value) {
++ Atomic64 result;
++ int32_t temp;
++
++ __asm__ __volatile__ ( // NOLINT
++ "0: \n\t"
++ "ldxr %[result], %[ptr] \n\t"
++ "stxr %w[temp], %[new_value], %[ptr] \n\t"
++ "cbnz %w[temp], 0b \n\t"
++ : [result]"=&r" (result),
++ [temp]"=&r" (temp),
++ [ptr]"+Q" (*ptr)
++ : [new_value]"r" (new_value)
++ : "memory"
++ ); // NOLINT
++
++ return result;
++}
++
++inline Atomic64 NoBarrier_AtomicIncrement(volatile Atomic64* ptr,
++ Atomic64 increment) {
++ Atomic64 result;
++ int32_t temp;
++
++ __asm__ __volatile__ ( // NOLINT
++ "0: \n\t"
++ "ldxr %[result], %[ptr] \n\t"
++ "add %[result], %[result], %[increment] \n\t"
++ "stxr %w[temp], %[result], %[ptr] \n\t"
++ "cbnz %w[temp], 0b \n\t"
++ : [result]"=&r" (result),
++ [temp]"=&r" (temp),
++ [ptr]"+Q" (*ptr)
++ : [increment]"r" (increment)
++ : "memory"
++ ); // NOLINT
++
++ return result;
++}
++
++inline Atomic64 Barrier_AtomicIncrement(volatile Atomic64* ptr,
++ Atomic64 increment) {
++ MemoryBarrier();
++ Atomic64 result = NoBarrier_AtomicIncrement(ptr, increment);
++ MemoryBarrier();
++
++ return result;
++}
++
++inline Atomic64 Acquire_CompareAndSwap(volatile Atomic64* ptr,
++ Atomic64 old_value,
++ Atomic64 new_value) {
++ Atomic64 prev;
++ int32_t temp;
++
++ __asm__ __volatile__ ( // NOLINT
++ "0: \n\t"
++ "ldxr %[prev], %[ptr] \n\t"
++ "cmp %[prev], %[old_value] \n\t"
++ "bne 1f \n\t"
++ "stxr %w[temp], %[new_value], %[ptr] \n\t"
++ "cbnz %w[temp], 0b \n\t"
++ "dmb ish \n\t"
++ "1: \n\t"
++ "clrex \n\t"
++ : [prev]"=&r" (prev),
++ [temp]"=&r" (temp),
++ [ptr]"+Q" (*ptr)
++ : [old_value]"r" (old_value),
++ [new_value]"r" (new_value)
++ : "memory", "cc"
++ ); // NOLINT
++
++ return prev;
++}
++
++inline Atomic64 Release_CompareAndSwap(volatile Atomic64* ptr,
++ Atomic64 old_value,
++ Atomic64 new_value) {
++ Atomic64 prev;
++ int32_t temp;
++
++ MemoryBarrier();
++
++ __asm__ __volatile__ ( // NOLINT
++ "0: \n\t"
++ "ldxr %[prev], %[ptr] \n\t"
++ "cmp %[prev], %[old_value] \n\t"
++ "bne 1f \n\t"
++ "stxr %w[temp], %[new_value], %[ptr] \n\t"
++ "cbnz %w[temp], 0b \n\t"
++ "1: \n\t"
++ "clrex \n\t"
++ : [prev]"=&r" (prev),
++ [temp]"=&r" (temp),
++ [ptr]"+Q" (*ptr)
++ : [old_value]"r" (old_value),
++ [new_value]"r" (new_value)
++ : "memory", "cc"
++ ); // NOLINT
++
++ return prev;
++}
++
++inline void NoBarrier_Store(volatile Atomic64* ptr, Atomic64 value) {
++ *ptr = value;
++}
++
++inline void Acquire_Store(volatile Atomic64* ptr, Atomic64 value) {
++ *ptr = value;
++ MemoryBarrier();
++}
++
++inline void Release_Store(volatile Atomic64* ptr, Atomic64 value) {
++ MemoryBarrier();
++ *ptr = value;
++}
++
++inline Atomic64 NoBarrier_Load(volatile const Atomic64* ptr) {
++ return *ptr;
++}
++
++inline Atomic64 Acquire_Load(volatile const Atomic64* ptr) {
++ Atomic64 value = *ptr;
++ MemoryBarrier();
++ return value;
++}
++
++inline Atomic64 Release_Load(volatile const Atomic64* ptr) {
++ MemoryBarrier();
++ return *ptr;
++}
++
++} // namespace base::subtle
++} // namespace base
++
++#endif // BASE_ATOMICOPS_INTERNALS_ARM64_GCC_H_
diff --git a/www-client/firefox/files/arm64-3-set-WEBRTC_DETECT_ARM_NEON-when-optional.patch b/www-client/firefox/files/arm64-3-set-WEBRTC_DETECT_ARM_NEON-when-optional.patch
new file mode 100644
index 0000000..21c3bf6
--- /dev/null
+++ b/www-client/firefox/files/arm64-3-set-WEBRTC_DETECT_ARM_NEON-when-optional.patch
@@ -0,0 +1,22 @@
+From: Mike Hommey <mh+mozilla@glandium.org>
+Date: Wed, 2 Mar 2016 10:01:15 +0900
+Subject: Bug 1252699 - Set WEBRTC_DETECT_ARM_NEON when optional neon is
+ requested. r=jesup
+
+---
+ media/webrtc/trunk/webrtc/build/common.gypi | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/media/webrtc/trunk/webrtc/build/common.gypi b/media/webrtc/trunk/webrtc/build/common.gypi
+index 4e46b60..02aae44 100644
+--- a/media/webrtc/trunk/webrtc/build/common.gypi
++++ b/media/webrtc/trunk/webrtc/build/common.gypi
+@@ -320,7 +320,7 @@
+ ['arm_neon==1', {
+ 'defines': ['WEBRTC_ARCH_ARM_NEON',],
+ }],
+- ['arm_neon==0 and (OS=="android" or moz_widget_toolkit_gonk==1)', {
++ ['arm_neon==0 and arm_neon_optional==1', {
+ 'defines': ['WEBRTC_DETECT_ARM_NEON',],
+ }],
+ ],
diff --git a/www-client/firefox/files/arm64-4-link-chromium-mutex-based-atomics.patch b/www-client/firefox/files/arm64-4-link-chromium-mutex-based-atomics.patch
new file mode 100644
index 0000000..53bbdc1
--- /dev/null
+++ b/www-client/firefox/files/arm64-4-link-chromium-mutex-based-atomics.patch
@@ -0,0 +1,59 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Sat, 19 Mar 2016 01:24:21 +0900
+Subject: Bug 1257888 - Link chromium mutex-based atomics implementation to
+ webrtc signaling tests
+
+---
+ ipc/chromium/atomics/moz.build | 17 +++++++++++++++++
+ ipc/chromium/moz.build | 4 ++++
+ media/webrtc/signaling/test/common.build | 1 +
+ 3 files changed, 22 insertions(+)
+ create mode 100644 ipc/chromium/atomics/moz.build
+
+diff --git a/ipc/chromium/atomics/moz.build b/ipc/chromium/atomics/moz.build
+new file mode 100644
+index 0000000..6e0a9e4
+--- /dev/null
++++ b/ipc/chromium/atomics/moz.build
+@@ -0,0 +1,17 @@
++# -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*-
++# vim: set filetype=python:
++# This Source Code Form is subject to the terms of the Mozilla Public
++# License, v. 2.0. If a copy of the MPL was not distributed with this
++# file, You can obtain one at http://mozilla.org/MPL/2.0/.
++
++include('/ipc/chromium/chromium-config.mozbuild')
++
++Library('chromium_atomics')
++
++# This test is copied from ../moz.build for atomicops_internals_mutex.cc
++ost = CONFIG['OS_TEST']
++if '86' not in ost and 'arm' not in ost and 'aarch64' != ost and 'mips' not in ost:
++ SOURCES += [
++ '../src/base/atomicops_internals_mutex.cc',
++ '../src/base/lock_impl_posix.cc',
++ ]
+diff --git a/ipc/chromium/moz.build b/ipc/chromium/moz.build
+index 88aaafe..52b6282 100644
+--- a/ipc/chromium/moz.build
++++ b/ipc/chromium/moz.build
+@@ -172,3 +172,7 @@ CXXFLAGS += CONFIG['TK_CFLAGS']
+ include('/ipc/chromium/chromium-config.mozbuild')
+
+ FINAL_LIBRARY = 'xul'
++
++DIRS += [
++ 'atomics',
++]
+diff --git a/media/webrtc/signaling/test/common.build b/media/webrtc/signaling/test/common.build
+index c0a624f..21adad5 100644
+--- a/media/webrtc/signaling/test/common.build
++++ b/media/webrtc/signaling/test/common.build
+@@ -79,6 +79,7 @@ if CONFIG['OS_TARGET'] in ('DragonFly', 'FreeBSD', 'NetBSD', 'OpenBSD'):
+
+ USE_LIBS += [
+ '/media/webrtc/trunk/testing/gtest_gtest/gtest',
++ 'chromium_atomics',
+ 'gkmedias',
+ 'nksrtp_s',
+ 'nss',
diff --git a/www-client/firefox/files/arm64-5-mozjemalloc-no-static-page-sizes.patch b/www-client/firefox/files/arm64-5-mozjemalloc-no-static-page-sizes.patch
new file mode 100644
index 0000000..1c8cd9a
--- /dev/null
+++ b/www-client/firefox/files/arm64-5-mozjemalloc-no-static-page-sizes.patch
@@ -0,0 +1,22 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Wed, 25 Feb 2015 10:41:37 +0900
+Subject: Make powerpc not use static page sizes in mozjemalloc
+
+Closes: #763900
+---
+ memory/mozjemalloc/jemalloc.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/memory/mozjemalloc/jemalloc.c b/memory/mozjemalloc/jemalloc.c
+index ee9e288..2e27e69 100644
+--- a/memory/mozjemalloc/jemalloc.c
++++ b/memory/mozjemalloc/jemalloc.c
+@@ -1089,7 +1089,7 @@ static const bool config_recycle = false;
+ * controlling the malloc behavior are defined as compile-time constants
+ * for best performance and cannot be altered at runtime.
+ */
+-#if !defined(__ia64__) && !defined(__sparc__) && !defined(__mips__)
++#if !defined(__ia64__) && !defined(__sparc__) && !defined(__mips__) && !defined(__powerpc__)
+ #define MALLOC_STATIC_SIZES 1
+ #endif
+
diff --git a/www-client/firefox/files/autoconf.mk b/www-client/firefox/files/autoconf.mk
deleted file mode 100644
index 4489850..0000000
--- a/www-client/firefox/files/autoconf.mk
+++ /dev/null
@@ -1,321 +0,0 @@
-ifndef INCLUDED_AUTOCONF_MK
-INCLUDED_AUTOCONF_MK = 1
-include $(DEPTH)/config/emptyvars.mk
-A11Y_LOG = 1
-ACDEFINES = -DX_DISPLAY_MISSING='1' -DHAVE_ARM_SIMD='1' -DHAVE_ARM_NEON='1' -DBUILD_ARM_NEON='1' -DMOZ_PROFILING='1' -DMOZILLA_VERSION='"35.0a1"' -DMOZILLA_VERSION_U='35.0a1' -DMOZILLA_UAVERSION='"35.0"' -DXP_LINUX='1' -DD_INO='d_ino' -DMOZ_DEBUG_SYMBOLS='1' -DSTDC_HEADERS='1' -DHAVE_VISIBILITY_HIDDEN_ATTRIBUTE='1' -DHAVE_VISIBILITY_ATTRIBUTE='1' -DHAVE_DIRENT_H='1' -DHAVE_GETOPT_H='1' -DHAVE_SYS_BITYPES_H='1' -DHAVE_MEMORY_H='1' -DHAVE_UNISTD_H='1' -DHAVE_GNU_LIBC_VERSION_H='1' -DHAVE_NL_TYPES_H='1' -DHAVE_MALLOC_H='1' -DHAVE_SYS_QUOTA_H='1' -DHAVE_SYS_SYSMACROS_H='1' -DHAVE_LINUX_QUOTA_H='1' -DHAVE_LINUX_IF_ADDR_H='1' -DHAVE_LINUX_RTNETLINK_H='1' -DHAVE_SYS_TYPES_H='1' -DHAVE_NETINET_IN_H='1' -DHAVE_BYTESWAP_H='1' -DHAVE_SYS_CDEFS_H='1' -DHAVE_DLOPEN='1' -DHAVE_DLADDR='1' -DHAVE_MEMMEM='1' -DNO_X11='1' -D_REENTRANT='1' -DHAVE_STAT64='1' -DHAVE_LSTAT64='1' -DHAVE_TRUNCATE64='1' -DHAVE_LOCALTIME_R='1' -DHAVE_CLOCK_MONOTONIC='1' -DHAVE_RES_NINIT='1' -DHAVE_LANGINFO_CODESET='1' -DVA_COPY='va_copy' -DHAVE_VA_COPY='1' -DHAVE_THREAD_TLS_KEYWORD='1' -DMALLOC_H='<malloc.h>' -DHAVE_STRNDUP='1' -DHAVE_POSIX_MEMALIGN='1' -DHAVE_MEMALIGN='1' -DHAVE_VALLOC='1' -DHAVE_MALLOC_USABLE_SIZE='1' -DHAVE_I18N_LC_MESSAGES='1' -DHAVE_LOCALECONV='1' -DTARGET_XPCOM_ABI='"arm-eabi-gcc3"' -DNS_ATTR_MALLOC='__attribute__((malloc))' -DNS_WARN_UNUSED_RESULT='__attribute__((warn_unused_result))' -DNIGHTLY_BUILD='1' -DMOZ_UPDATE_CHANNEL='nightly' -DEARLY_BETA_OR_EARLIER='1' -DMOZ_XULRUNNER='1' -DMOZ_BUILD_APP='xulrunner' -DMOZ_WIDGET_QT='1' -DQT_NO_KEYWORDS='1' -DMOZ_PDF_PRINTING='1' -DMOZ_ENABLE_QT5FEEDBACK='1' -DMOZ_ENABLE_QT5GEOPOSITION='1' -DMOZ_DISTRIBUTION_ID='"org.mozilla"' -DMOZ_WEBRTC='1' -DMOZ_WEBRTC_ASSERT_ALWAYS='1' -DMOZ_WEBRTC_SIGNALING='1' -DMOZ_PEERCONNECTION='1' -DMOZ_SCTP='1' -DMOZ_SRTP='1' -DMOZ_SAMPLE_TYPE_S16='1' -DMOZ_WEBSPEECH='1' -DMOZ_RAW='1' -DATTRIBUTE_ALIGNED_MAX='64' -DMOZ_WEBM='1' -DMOZ_FFMPEG='1' -DMOZ_FMP4='1' -DMOZ_EME='1' -DMOZ_MEDIA_NAVIGATOR='1' -DMOZ_VPX='1' -DMOZ_VPX_ERROR_CONCEALMENT='1' -DVPX_ARM_ASM='1' -DMOZ_WAVE='1' -DMOZ_TREMOR='1' -DMOZ_OPUS='1' -DMOZ_GSTREAMER='1' -DGST_API_VERSION='"0.10"' -DENABLE_SYSTEM_EXTENSION_DIRS='1' -DMOZ_CRASHREPORTER_ENABLE_PERCENT='100' -DMOZ_USE_NATIVE_POPUP_WINDOWS='1' -DMOZ_FEEDS='1' -DMOZ_URL_CLASSIFIER='1' -DMOZ_GL_PROVIDER='GLContextProviderEGL' -DGL_PROVIDER_EGL='1' -DMOZ_GFX_OPTIMIZE_MOBILE='1' -DMOZ_STACKWALKING='1' -DMOZ_LOGGING='1' -DMOZ_DUMP_PAINTING='1' -DMOZ_MEMORY='1' -DMOZ_MEMORY_DEBUG='1' -DMOZ_MEMORY_LINUX='1' -DJSGC_INCREMENTAL='1' -DJS_GC_ZEAL='1' -DHAVE___CXA_DEMANGLE='1' -DMOZ_DEMANGLE_SYMBOLS='1' -DHAVE__UNWIND_BACKTRACE='1' -DJS_DEFAULT_JITREPORT_GRANULARITY='3' -DMOZ_OMNIJAR='1' -DMOZ_USER_DIR='".mozilla"' -DHAVE_FT_BITMAP_SIZE_Y_PPEM='1' -DHAVE_FT_GLYPHSLOT_EMBOLDEN='1' -DHAVE_FT_LOAD_SFNT_TABLE='1' -DHAVE_FONTCONFIG_FCFREETYPE_H='1' -DMOZ_TREE_PIXMAN='1' -DHAVE_STDINT_H='1' -DHAVE_INTTYPES_H='1' -DMOZ_TREE_CAIRO='1' -DMOZ_ENABLE_SKIA='1' -DUSE_SKIA='1' -DUSE_SKIA_GPU='1' -DMOZ_XUL='1' -DMOZ_PROFILELOCKING='1' -DENABLE_MARIONETTE='1' -DBUILD_CTYPES='1' -DMOZ_SOCIAL='1' -DMOZ_SERVICES_COMMON='1' -DMOZ_SERVICES_CRYPTO='1' -DMOZ_SERVICES_HEALTHREPORT='1' -DMOZ_SERVICES_METRICS='1' -DMOZ_SERVICES_SYNC='1' -DMOZ_MACBUNDLE_ID='org.mozilla.xulrunnerdebug' -DMOZ_B2G_VERSION='"1.0.0"' -DMOZ_B2G_OS_NAME='""' -DMOZ_APP_UA_NAME='""' -DMOZ_APP_UA_VERSION='"35.0a1"' -DFIREFOX_VERSION='35.0a1' -DMOZ_TELEMETRY_DISPLAY_REV='2' -DMOZ_DATA_REPORTING='1' -DMOZ_DLL_SUFFIX='".so"' -DHAVE_POSIX_FADVISE='1' -DHAVE_POSIX_FALLOCATE='1' -DXP_UNIX='1' -DMOZ_REFLOW_PERF='1' -DMOZ_REFLOW_PERF_DSP='1' -DA11Y_LOG='1' -DEXPOSE_INTL_API='1' -DENABLE_INTL_API='1' -DU_STATIC_IMPLEMENTATION='1' -DU_USING_ICU_NAMESPACE='0' -DMOZ_STATIC_JS='1'
-AR = ar
-ARM_ARCH = 7
-AR_DELETE = $(AR) d
-AR_EXTRACT = $(AR) x
-AR_FLAGS = crs $@
-AR_LIST = $(AR) t
-AS = $(CC)
-ASFLAGS = -fPIC -Wa,--noexecstack -include $(DEPTH)/mozilla-config.h -DMOZILLA_CLIENT
-ASM_SUFFIX = s
-AS_DASH_C_FLAG = -c
-AUTOCONF = /usr/bin/autoconf
-AWK = gawk
-BUILD_ARM_NEON = 1
-BUILD_CTYPES = 1
-CAIRO_FT_CFLAGS = -I/usr/include/freetype2
-CC = gcc
-CCACHE = no
-CC_VERSION = 4.6.4
-COMPILE_ENVIRONMENT = 1
-CPP = gcc -E
-CPU_ARCH = arm
-CXX = c++
-CXXCPP = c++ -E
-CXX_VERSION = 4.6.4
-DLL_PREFIX = lib
-DLL_SUFFIX = .so
-DOXYGEN = :
-DSO_LDOPTS = -shared -Wl,-z,defs -Wl,--gc-sections
-DSO_PIC_CFLAGS = -fPIC
-EARLY_BETA_OR_EARLIER = 1
-ENABLE_INTL_API = 1
-EXPAND_LIBS_LIST_STYLE = linkerscript
-EXPAND_LIBS_ORDER_STYLE = section-ordering-file
-FC_FONT_FEATURE = #define CAIRO_HAS_FC_FONT 1
-FIREFOX_VERSION = 35.0a1
-FT2_CFLAGS = -I/usr/include/freetype2
-FT2_LIBS = -lfreetype -lfontconfig
-FT_FONT_FEATURE = #define CAIRO_HAS_FT_FONT 1
-GCC_USE_GNU_LD = 1
-GMAKE = /usr/bin/gmake
-GNU_AS = 1
-GNU_CC = 1
-GNU_CXX = 1
-GNU_LD = 1
-GRE_MILESTONE = 35.0a1
-GSTREAMER_CFLAGS = -pthread -I/usr/include/gstreamer-0.10 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-GSTREAMER_LIBS = -pthread -lgstapp-0.10 -lgstbase-0.10 -lgstreamer-0.10 -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lglib-2.0 -lgstvideo-0.10
-GST_API_VERSION = 0.10
-HAVE_ARM_NEON = 1
-HAVE_ARM_SIMD = 1
-HAVE_CLOCK_MONOTONIC = 1
-HAVE_INTTYPES_H = 1
-HAVE_LINUX_PERF_EVENT_H = 1
-HOST_AR = ar
-HOST_AR_FLAGS = crs $@
-HOST_CC = gcc
-HOST_CFLAGS = -O3 -DXP_UNIX -MD -MP -MF $(MDDEPDIR)/$(@F).pp
-HOST_CXX = c++
-HOST_CXXFLAGS = -O3 -DUSE_ANDROID_OMTC_HACKS=1 -std=gnu++0x -MD -MP -MF $(MDDEPDIR)/$(@F).pp
-HOST_MOC = moc
-HOST_NSPR_MDCPUCFG = \"md/_linux.cfg\"
-HOST_OPTIMIZE_FLAGS = -O3
-HOST_OS_ARCH = Linux
-HOST_QMAKE = qmake
-HOST_RANLIB = ranlib
-HOST_RCC = rcc
-ICU_LIB_NAMES = icui18n icuuc icudata
-INSTALL_DATA = ${INSTALL} -m 644
-INSTALL_PROGRAM = ${INSTALL}
-INSTALL_SCRIPT = ${INSTALL_PROGRAM}
-JAR = :
-JARSIGNER = :
-JAVA = :
-JAVAC = :
-JAVAH = :
-KEYTOOL = :
-LD = ld
-LD_PRINT_ICF_SECTIONS = -Wl,--print-icf-sections
-LIBS_DESC_SUFFIX = desc
-LIBXUL_DIST = /objdir-mer-dbg/dist
-LIB_PREFIX = lib
-LIB_SUFFIX = a
-LN_S = ln -s
-MACOS_PRIVATE_FRAMEWORKS_DIR = /System/Library/PrivateFrameworks
-MC = mc.exe
-MKCSHLIB = $(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-h,$(DSO_SONAME) -o $@
-MKSHLIB = $(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-h,$(DSO_SONAME) -o $@
-MKSHLIB_FORCE_ALL = -Wl,--whole-archive
-MKSHLIB_UNFORCE_ALL = -Wl,--no-whole-archive
-MMX_FLAGS = -mmmx
-MOC = moc
-MOZILLA_OFFICIAL = 1
-MOZILLA_SYMBOLVERSION = 35a1
-MOZILLA_VERSION = 35.0a1
-MOZ_ALSA = 1
-MOZ_ALSA_CFLAGS = -I/usr/include/alsa
-MOZ_ALSA_LIBS = -lasound
-MOZ_APP_DISPLAYNAME = XULRunner
-MOZ_APP_MAXVERSION = 35.0a1
-MOZ_APP_NAME = xulrunner
-MOZ_APP_VERSION = 35.0a1
-MOZ_AUTH_EXTENSION = 1
-MOZ_B2G_VERSION = 1.0.0
-MOZ_BING_API_CLIENTID = no-bing-api-clientid
-MOZ_BING_API_KEY = no-bing-api-key
-MOZ_BUILD_APP = xulrunner
-MOZ_BUILD_NSPR = 1
-MOZ_BUILD_ROOT = /objdir-mer-dbg
-MOZ_CAIRO_CFLAGS = -I$(LIBXUL_DIST)/include/cairo
-MOZ_CAIRO_OSLIBS = ${CAIRO_FT_OSLIBS}
-MOZ_CHILD_PROCESS_BUNDLE = plugin-container.app/Contents/MacOS/
-MOZ_CHILD_PROCESS_NAME = plugin-container
-MOZ_CHROME_FILE_FORMAT = symlink
-MOZ_DATA_REPORTING = 1
-MOZ_DEBUG = 1
-MOZ_DEBUG_DISABLE_DEFS = -DNDEBUG -DTRIMMED
-MOZ_DEBUG_ENABLE_DEFS = -DDEBUG -DTRACING
-MOZ_DEBUG_FLAGS = -gdwarf-4
-MOZ_DEBUG_SYMBOLS = 1
-MOZ_DEMANGLE_SYMBOLS = 1
-MOZ_DISTRIBUTION_ID = org.mozilla
-MOZ_DOC_INCLUDE_DIRS = ./dist/include ./dist/include/nspr
-MOZ_DOC_INPUT_DIRS = ./dist/include ./dist/idl
-MOZ_DOC_OUTPUT_DIR = ./dist/docs
-MOZ_EME = 1
-MOZ_EM_DEBUG = 1
-MOZ_ENABLE_CAIRO_FT = 1
-MOZ_ENABLE_QT = 1
-MOZ_ENABLE_QT5FEEDBACK = 1
-MOZ_ENABLE_QT5GEOPOSITION = 1
-MOZ_ENABLE_SKIA = 1
-MOZ_ENABLE_SKIA_GPU = 1
-MOZ_FEEDS = 1
-MOZ_FFMPEG = 1
-MOZ_FIX_LINK_PATHS = -Wl,-rpath-link,$(LIBXUL_DIST)/bin -Wl,-rpath-link,$(prefix)/lib
-MOZ_FMP4 = 1
-MOZ_FS_LAYOUT = unix
-MOZ_GAMEPAD_BACKEND = stub
-MOZ_GFX_OPTIMIZE_MOBILE = 1
-MOZ_GLUE_PROGRAM_LDFLAGS = $(MKSHLIB_FORCE_ALL) $(call EXPAND_LIBNAME_PATH,mozglue,$(LIBXUL_DIST)/lib) $(call EXPAND_LIBNAME_PATH,memory,$(LIBXUL_DIST)/lib) $(MKSHLIB_UNFORCE_ALL) -rdynamic
-MOZ_GL_DEFAULT_PROVIDER = EGL
-MOZ_GL_PROVIDER = EGL
-MOZ_GOOGLE_API_KEY = no-google-api-key
-MOZ_GSTREAMER = 1
-MOZ_ICU_CFLAGS = -I$(topsrcdir)/intl/icu/source/common -I$(topsrcdir)/intl/icu/source/i18n
-MOZ_ICU_VERSION = 52
-MOZ_JPEG_LIBS = -ljpeg
-MOZ_MACBUNDLE_ID = org.mozilla.xulrunnerdebug
-MOZ_MACBUNDLE_NAME = XULRunnerDebug.app
-MOZ_MEMORY = 1
-MOZ_MOZILLA_API_KEY = no-mozilla-api-key
-MOZ_NATIVE_JPEG = 1
-MOZ_OMNIJAR = 1
-MOZ_OPTIMIZE_FLAGS = -freorder-blocks -Os
-MOZ_OPUS = 1
-MOZ_PACKAGER_FORMAT = omni
-MOZ_PANGO_CFLAGS = -pthread -DMESA_EGL_NO_X11_HEADERS -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng15
-MOZ_PANGO_LIBS = -lpangoft2-1.0 -lfreetype -lfontconfig -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lglib-2.0
-MOZ_PDF_PRINTING = 1
-MOZ_PEERCONNECTION = 1
-MOZ_PERMISSIONS = 1
-MOZ_PGO_OPTIMIZE_FLAGS = -O3
-MOZ_PNG_ARM_NEON = 1
-MOZ_PNG_ARM_NEON_CHECK = 1
-MOZ_PREF_EXTENSIONS = 1
-MOZ_PROFILELOCKING = 1
-MOZ_PROFILING = 1
-MOZ_PULSEAUDIO = 1
-MOZ_PULSEAUDIO_CFLAGS = -D_REENTRANT
-MOZ_PULSEAUDIO_LIBS = -lpulse
-MOZ_QT_CFLAGS = -I/usr/include/qt5/QtGui -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/QtQuick -I/usr/include/qt5/QtQml -I/usr/include/qt5/QtGui/5.2.2/QtGui -I/usr/include/qt5/QtFeedback -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I/usr/include/qt5/QtPositioning -I/usr/include/qt5 -I/usr/include/qt5/QtCore
-MOZ_QT_LIBS = -lQt5Quick -lQt5Gui -lQt5Qml -lQt5Network -lQt5Core -lQt0Feedback -lQt5Core -lQt5Positioning -lQt5Core
-MOZ_RAW = 1
-MOZ_REPLACE_MALLOC = 1
-MOZ_SAMPLE_TYPE_S16 = 1
-MOZ_SCTP = 1
-MOZ_SERVICES_COMMON = 1
-MOZ_SERVICES_CRYPTO = 1
-MOZ_SERVICES_HEALTHREPORT = 1
-MOZ_SERVICES_METRICS = 1
-MOZ_SERVICES_SYNC = 1
-MOZ_SOCIAL = 1
-MOZ_SPELLCHECK = 1
-MOZ_SRTP = 1
-MOZ_STACKWALKING = 1
-MOZ_TOOLKIT_SEARCH = 1
-MOZ_TREE_CAIRO = 1
-MOZ_TREE_PIXMAN = 1
-MOZ_TREMOR = 1
-MOZ_UI_LOCALE = en-US
-MOZ_UNIVERSALCHARDET = 1
-MOZ_UPDATE_CHANNEL = nightly
-MOZ_UPDATE_PACKAGING = 1
-MOZ_URL_CLASSIFIER = 1
-MOZ_USE_PTHREADS = 1
-MOZ_VPX = 1
-MOZ_VPX_ERROR_CONCEALMENT = 1
-MOZ_WAVE = 1
-MOZ_WEBM = 1
-MOZ_WEBRTC = 1
-MOZ_WEBRTC_ASSERT_ALWAYS = 1
-MOZ_WEBRTC_HAVE_ETHTOOL_SPEED_HI = 1
-MOZ_WEBRTC_SIGNALING = 1
-MOZ_WEBSPEECH = 1
-MOZ_WIDGET_TOOLKIT = qt
-MOZ_XUL = 1
-MOZ_XULRUNNER = 1
-MOZ_ZIPWRITER = 1
-NECKO_COOKIES = 1
-NECKO_PROTOCOLS = wyciwyg ftp about http res app viewsource file device websocket data
-NECKO_WIFI_DBUS = 1
-NIGHTLY_BUILD = 1
-NSPR_CFLAGS = -I/objdir-mer-dbg/dist/include/nspr
-NSPR_LIBS = -L/objdir-mer-dbg/dist/lib -lnspr4 -lplc4 -lplds4
-NSPR_PKGCONF_CHECK = nspr
-NSS_CFLAGS = -I$(LIBXUL_DIST)/include/nss
-NSS_LIBS = -L$(LIBXUL_DIST)/lib -lcrmf -lsmime3 -lssl3 -lnss3 -lnssutil3
-OBJCOPY = /usr/bin/objcopy
-OBJ_SUFFIX = o
-OMNIJAR_NAME = omni.ja
-OS_ARCH = Linux
-OS_CFLAGS = -Wall -Wpointer-arith -Wdeclaration-after-statement -Werror=return-type -Werror=int-to-pointer-cast -Wtype-limits -Wempty-body -Wsign-compare -Wno-unused -O3 -std=gnu99 -fgnu89-inline -fno-strict-aliasing -ffunction-sections -fdata-sections -fno-math-errno -pthread -pipe
-OS_COMPILE_CFLAGS = -include $(DEPTH)/mozilla-config.h -DMOZILLA_CLIENT -MD -MP -MF $(MDDEPDIR)/$(@F).pp
-OS_COMPILE_CXXFLAGS = -DMOZILLA_CLIENT -include $(DEPTH)/mozilla-config.h -MD -MP -MF $(MDDEPDIR)/$(@F).pp
-OS_CXXFLAGS = -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Werror=int-to-pointer-cast -Werror=type-limits -Wempty-body -Wsign-compare -Wno-invalid-offsetof -O3 -DUSE_ANDROID_OMTC_HACKS=1 -fno-exceptions -fno-strict-aliasing -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -std=gnu++0x -pthread -pipe
-OS_LDFLAGS = -lpthread -Wl,-z,noexecstack -Wl,-z,text -Wl,--build-id -Wl,--icf=safe
-OS_LIBS = -ldl
-OS_RELEASE = 3.13-1-amd64
-OS_TARGET = Linux
-OS_TEST = armv7l
-PDF_SURFACE_FEATURE = #define CAIRO_HAS_PDF_SURFACE 1
-PERL = /usr/bin/perl
-PKG_CONFIG = /usr/bin/pkg-config
-PROFILE_GEN_CFLAGS = -fprofile-generate
-PROFILE_GEN_LDFLAGS = -fprofile-generate
-PROFILE_USE_CFLAGS = -fprofile-use -fprofile-correction -Wcoverage-mismatch
-PROFILE_USE_LDFLAGS = -fprofile-use
-PYTHON = /objdir-mer-dbg/_virtualenv/bin/python
-PYTHON_SITE_PACKAGES = /objdir-mer-dbg/_virtualenv/lib/python2.7/site-packages
-QT_SURFACE_FEATURE = #define CAIRO_HAS_QT_SURFACE 1
-RANLIB = ranlib
-RCC = rcc
-REALTIME_LIBS = -lrt
-RPMBUILD = /usr/bin/rpmbuild
-SHELL = /bin/sh
-SSE2_FLAGS = -msse2
-SSE_FLAGS = -msse
-STL_FLAGS = -I$(DIST)/stl_wrappers
-STRIP = strip
-STRIP_FLAGS = --strip-debug
-TAR = tar
-TARGET_CPU = armv7l
-TARGET_MD_ARCH = unix
-TARGET_NSPR_MDCPUCFG = \"md/_linux.cfg\"
-TARGET_OS = linux-gnueabihf
-TARGET_VENDOR = unknown
-TARGET_XPCOM_ABI = arm-eabi-gcc3
-TEE_SURFACE_FEATURE = #define CAIRO_HAS_TEE_SURFACE 1
-TK_CFLAGS = $(MOZ_QT_CFLAGS)
-TK_LIBS = $(MOZ_QT_LIBS)
-UNZIP = /usr/bin/unzip
-USE_DEPENDENT_LIBS = 1
-VISIBILITY_FLAGS = -I$(DIST)/system_wrappers -include $(MOZILLA_DIR)/config/gcc_hidden_dso_handle.h
-VPX_ARM_ASM = 1
-VPX_AS = $(CC)
-VPX_ASFLAGS = -march=armv7-a -mfpu=neon
-VPX_ASM_SUFFIX = s
-VPX_AS_CONVERSION = $(PERL) $(topsrcdir)/media/libvpx/build/make/ads2gas.pl
-VPX_DASH_C_FLAG = -c
-WINDRES = :
-WRAP_STL_INCLUDES = 1
-WRAP_SYSTEM_INCLUDES = 1
-XARGS = /usr/bin/xargs
-XULRUNNER_STUB_NAME = xulrunner-stub
-ZIP = /usr/bin/zip
-_FONTCONFIG_LIBS = -lfontconfig
-_PANGOCHK_CFLAGS = -pthread -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-_PANGOCHK_LIBS = -lpango-1.0 -lgobject-2.0 -lglib-2.0
-_QT5FEEDBACK_CFLAGS = -I/usr/include/qt5/QtFeedback -I/usr/include/qt5 -I/usr/include/qt5/QtCore
-_QT5FEEDBACK_LIBS = -lQt0Feedback -lQt5Core
-_QT5GEOPOSITION_CFLAGS = -I/usr/include/qt5/QtPositioning -I/usr/include/qt5 -I/usr/include/qt5/QtCore
-_QT5GEOPOSITION_LIBS = -lQt5Positioning -lQt5Core
-ac_configure_args = --prefix=/usr --with-system-jpeg --with-gl-provider=EGL --enable-application=xulrunner --enable-update-channel=nightly --enable-update-packaging --enable-tests --enable-default-toolkit=cairo-qt --enable-optimize --enable-mobile-optimize --enable-profile-guided-optimization --enable-debug-symbols=-gdwarf-4 --enable-cpp-rtti --enable-skia --disable-dbus --disable-updater --disable-gamepad --disable-printing --enable-webrtc --enable-profiling --enable-gstreamer --disable-dbus --disable-necko-wifi --disable-accessibility --without-x --enable-debug --enable-logging --disable-optimize --without-x --disable-tests --disable-accessibility --disable-dbus --disable-necko-wifi
-bindir = ${exec_prefix}/bin
-build = armv7l-unknown-linux-gnueabihf
-build_alias = armv7l-unknown-linux-gnueabihf
-build_cpu = armv7l
-build_os = linux-gnueabihf
-build_vendor = unknown
-datadir = ${prefix}/share
-exec_prefix = ${prefix}
-host = armv7l-unknown-linux-gnueabihf
-host_alias = armv7l-unknown-linux-gnueabihf
-host_cpu = armv7l
-host_os = linux-gnueabihf
-host_vendor = unknown
-includedir = ${prefix}/include
-infodir = ${prefix}/info
-libdir = ${exec_prefix}/lib
-libexecdir = ${exec_prefix}/libexec
-localstatedir = ${prefix}/var
-mandir = ${prefix}/man
-oldincludedir = /usr/include
-prefix = /usr
-program_transform_name = s,x,x,
-sbindir = ${exec_prefix}/sbin
-sharedstatedir = ${prefix}/com
-sysconfdir = ${prefix}/etc
-target = armv7l-unknown-linux-gnueabihf
-target_alias = armv7l-unknown-linux-gnueabihf
-target_cpu = armv7l
-target_os = linux-gnueabihf
-target_vendor = unknown
-top_srcdir = /mozilla-central
-include $(topsrcdir)/config/baseconfig.mk
-endif
diff --git a/www-client/firefox/files/autoconf.mk.gentoo b/www-client/firefox/files/autoconf.mk.gentoo
deleted file mode 100644
index 8b9f1ec..0000000
--- a/www-client/firefox/files/autoconf.mk.gentoo
+++ /dev/null
@@ -1,396 +0,0 @@
-ifndef INCLUDED_AUTOCONF_MK
-INCLUDED_AUTOCONF_MK = 1
-include $(DEPTH)/config/emptyvars.mk
-A11Y_LOG = 1
-ACCEPTED_MAR_CHANNEL_IDS = firefox-mozilla-release
-ACCESSIBILITY = 1
-ACDEFINES = -DHAVE_ARM_SIMD='1' -DHAVE_ARM_NEON='1' -DBUILD_ARM_NEON='1' -DMOZILLA_VERSION='"33.0"' -DMOZILLA_VERSION_U='33.0' -DMOZILLA_UAVERSION='"33.0"' -DXP_LINUX='1' -DD_INO='d_ino' -DSTDC_HEADERS='1' -DHAVE_SSIZE_T='1' -DHAVE_ST_BLKSIZE='1' -DHAVE_SIGINFO_T='1' -DHAVE_VISIBILITY_HIDDEN_ATTRIBUTE='1' -DHAVE_VISIBILITY_ATTRIBUTE='1' -DHAVE_DIRENT_H='1' -DHAVE_GETOPT_H='1' -DHAVE_SYS_BITYPES_H='1' -DHAVE_MEMORY_H='1' -DHAVE_UNISTD_H='1' -DHAVE_GNU_LIBC_VERSION_H='1' -DHAVE_NL_TYPES_H='1' -DHAVE_MALLOC_H='1' -DHAVE_X11_XKBLIB_H='1' -DHAVE_SYS_QUOTA_H='1' -DHAVE_SYS_SYSMACROS_H='1' -DHAVE_LINUX_QUOTA_H='1' -DHAVE_LINUX_IF_ADDR_H='1' -DHAVE_LINUX_RTNETLINK_H='1' -DHAVE_SYS_TYPES_H='1' -DHAVE_NETINET_IN_H='1' -DHAVE_BYTESWAP_H='1' -DHAVE_SYS_CDEFS_H='1' -DHAVE_DLOPEN='1' -DHAVE_DLADDR='1' -DHAVE_MEMMEM='1' -DFUNCPROTO='15' -DHAVE_LIBXSS='1' -D_REENTRANT='1' -DHAVE_STAT64='1' -DHAVE_LSTAT64='1' -DHAVE_TRUNCATE64='1' -DHAVE_LOCALTIME_R='1' -DHAVE_CLOCK_MONOTONIC='1' -DHAVE_RES_NINIT='1' -DHAVE_LANGINFO_CODESET='1' -DVA_COPY='va_copy' -DHAVE_VA_COPY='1' -DHAVE_THREAD_TLS_KEYWORD='1' -DMALLOC_H='<malloc.h>' -DHAVE_STRNDUP='1' -DHAVE_POSIX_MEMALIGN='1' -DHAVE_MEMALIGN='1' -DHAVE_VALLOC='1' -DHAVE_MALLOC_USABLE_SIZE='1' -DHAVE_I18N_LC_MESSAGES='1' -DHAVE_LOCALECONV='1' -DTARGET_XPCOM_ABI='"arm-eabi-gcc3"' -DNS_ATTR_MALLOC='__attribute__((malloc))' -DNS_WARN_UNUSED_RESULT='__attribute__((warn_unused_result))' -DRELEASE_BUILD='1' -DHAVE_LIBPNG='1' -DMOZ_UPDATE_CHANNEL='default' -DMOZ_PHOENIX='1' -DMOZ_BUILD_APP='browser' -DMOZ_X11='1' -DMOZ_WIDGET_GTK2='1' -DMOZ_WIDGET_GTK='2' -DMOZ_PDF_PRINTING='1' -DMOZ_ENABLE_XREMOTE='1' -DMOZ_INSTRUMENT_EVENT_LOOP='1' -DMOZ_ENABLE_STARTUP_NOTIFICATION='1' -DNS_PRINTING='1' -DNS_PRINT_PREVIEW='1' -DMOZ_DISTRIBUTION_ID='"org.mozilla"' -DMOZ_ENABLE_GIO='1' -DMOZ_ENABLE_DBUS='1' -DACCESSIBILITY='1' -DMOZ_WEBRTC='1' -DMOZ_WEBRTC_ASSERT_ALWAYS='1' -DMOZ_WEBRTC_SIGNALING='1' -DMOZ_PEERCONNECTION='1' -DMOZ_SCTP='1' -DMOZ_SRTP='1' -DMOZ_SAMPLE_TYPE_S16='1' -DMOZ_WEBSPEECH='1' -DMOZ_RAW='1' -DATTRIBUTE_ALIGNED_MAX='64' -DMOZ_WEBM='1' -DMOZ_FFMPEG='1' -DMOZ_FMP4='1' -DMOZ_EME='1' -DMOZ_MEDIA_NAVIGATOR='1' -DMOZ_VPX='1' -DMOZ_VPX_ERROR_CONCEALMENT='1' -DHAVE_LIBVPX='1' -DMOZ_VPX_NO_MEM_REPORTING='1' -DVPX_ARM_ASM='1' -DMOZ_WAVE='1' -DMOZ_TREMOR='1' -DMOZ_OPUS='1' -DMOZ_GSTREAMER='1' -DGST_API_VERSION='"1.0"' -DENABLE_SYSTEM_EXTENSION_DIRS='1' -DMOZ_WEBGL='1' -DMOZ_WEBGL_CONFORMANT='1' -DMOZ_GAMEPAD='1' -DMOZ_CRASHREPORTER_ENABLE_PERCENT='100' -DMOZ_WEBAPP_RUNTIME='1' -DMOZ_FEEDS='1' -DMOZ_NATIVE_SQLITE='1' -DMOZ_SAFE_BROWSING='1' -DMOZ_URL_CLASSIFIER='1' -DGL_PROVIDER_GLX='1' -DMOZ_LOGGING='1' -DMOZ_MEMORY='1' -DMOZ_MEMORY_LINUX='1' -DJSGC_INCREMENTAL='1' -DJSGC_USE_EXACT_ROOTING='1' -DJSGC_GENERATIONAL='1' -DMOZ_PAY='1' -DMOZ_ACTIVITIES='1' -DHAVE___CXA_DEMANGLE='1' -DHAVE__UNWIND_BACKTRACE='1' -DJS_DEFAULT_JITREPORT_GRANULARITY='3' -DMOZ_OMNIJAR='1' -DMOZ_DEFAULT_MOZILLA_FIVE_HOME='"/usr/lib/firefox"' -DMOZ_USER_DIR='".mozilla"' -DHAVE_FT_BITMAP_SIZE_Y_PPEM='1' -DHAVE_FT_GLYPHSLOT_EMBOLDEN='1' -DHAVE_FT_LOAD_SFNT_TABLE='1' -DHAVE_FONTCONFIG_FCFREETYPE_H='1' -DHAVE_STDINT_H='1' -DHAVE_INTTYPES_H='1' -DMOZ_XUL='1' -DENABLE_MARIONETTE='1' -DBUILD_CTYPES='1' -DMOZ_PLACES='1' -DMOZ_SOCIAL='1' -DMOZ_SERVICES_COMMON='1' -DMOZ_SERVICES_CRYPTO='1' -DMOZ_SERVICES_HEALTHREPORT='1' -DMOZ_SERVICES_METRICS='1' -DMOZ_SERVICES_SYNC='1' -DMOZ_JSDOWNLOADS='1' -DMOZ_MACBUNDLE_ID='org.mozilla.aurora' -DMOZ_B2G_VERSION='"1.0.0"' -DMOZ_B2G_OS_NAME='""' -DMOZ_APP_UA_NAME='""' -DMOZ_APP_UA_VERSION='"33.0"' -DFIREFOX_VERSION='33.0' -DMOZ_TELEMETRY_DISPLAY_REV='2' -DMOZ_DATA_REPORTING='1' -DMOZ_DLL_SUFFIX='".so"' -DHAVE_POSIX_FADVISE='1' -DHAVE_POSIX_FALLOCATE='1' -DXP_UNIX='1' -DMOZ_ACCESSIBILITY_ATK='1' -DATK_MAJOR_VERSION='2' -DATK_MINOR_VERSION='12' -DATK_REV_VERSION='0' -DA11Y_LOG='1' -DEXPOSE_INTL_API='1' -DENABLE_INTL_API='1' -DMOZ_STATIC_JS='1'
-AR = armv7a-hardfloat-linux-gnueabi-ar
-ARM_ARCH = 7
-AR_DELETE = $(AR) d
-AR_EXTRACT = $(AR) x
-AR_FLAGS = crs $@
-AR_LIST = $(AR) t
-AS = $(CC)
-ASFLAGS = -fPIC -Wa,--noexecstack -include $(DEPTH)/mozilla-config.h -DMOZILLA_CLIENT
-ASM_SUFFIX = s
-AS_DASH_C_FLAG = -c
-AUTOCONF = /usr/bin/autoconf
-AWK = gawk
-BUILD_ARM_NEON = 1
-BUILD_CTYPES = 1
-CAIRO_CFLAGS = -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/libpng16
-CAIRO_LIBS = -lcairo
-CAIRO_TEE_CFLAGS = -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/libpng16
-CAIRO_TEE_LIBS = -lcairo
-CAIRO_XRENDER_CFLAGS = -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/libpng16
-CAIRO_XRENDER_LIBS = -lcairo -lXext -lXrender -lX11
-CC = armv7a-hardfloat-linux-gnueabi-gcc
-CCACHE = no
-CC_VERSION = 4.8.3
-CFLAGS = -Wall -Wpointer-arith -Wdeclaration-after-statement -Werror=return-type -Werror=int-to-pointer-cast -Wtype-limits -Wempty-body -Wsign-compare -Wno-unused -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -std=gnu99 -fgnu89-inline -fno-strict-aliasing -fno-math-errno -pthread -pipe
-COMPILE_ENVIRONMENT = 1
-CPP = armv7a-hardfloat-linux-gnueabi-gcc -E
-CPPFLAGS = -DWEBRTC_ARCH_ARM_V7
-CPU_ARCH = arm
-CXX = armv7a-hardfloat-linux-gnueabi-g++
-CXXCPP = armv7a-hardfloat-linux-gnueabi-g++ -E
-CXXFLAGS = -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Werror=int-to-pointer-cast -Wtype-limits -Wempty-body -Wsign-compare -Wno-invalid-offsetof -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -fno-exceptions -fno-strict-aliasing -fno-rtti -fno-exceptions -fno-math-errno -std=gnu++0x -pthread -pipe
-CXX_VERSION = 4.8.3
-DEVELOPER_OPTIONS = 1
-DLL_PREFIX = lib
-DLL_SUFFIX = .so
-DOXYGEN = :
-DSO_LDOPTS = -shared -Wl,-z,defs
-DSO_PIC_CFLAGS = -fPIC
-E10S_TESTING_ONLY = 1
-ENABLE_INTL_API = 1
-EXPAND_LIBS_LIST_STYLE = linkerscript
-EXPAND_LIBS_ORDER_STYLE = none
-FFLAGS = -pipe -march=armv7-a
-FIREFOX_VERSION = 33.0
-FT2_CFLAGS = -I/usr/include/freetype2
-FT2_LIBS = -lfreetype -lfontconfig
-GCC_USE_GNU_LD = 1
-GLIB_CFLAGS = -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-GLIB_LIBS = -lgobject-2.0 -lglib-2.0
-GMAKE = /usr/bin/make
-GNU_AS = 1
-GNU_CC = 1
-GNU_CXX = 1
-GNU_LD = 1
-GRE_MILESTONE = 33.0
-GSTREAMER_CFLAGS = -pthread -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-GSTREAMER_LIBS = -lgstapp-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 -lgstvideo-1.0
-GST_API_VERSION = 1.0
-HAVE_ARM_NEON = 1
-HAVE_ARM_SIMD = 1
-HAVE_CLOCK_MONOTONIC = 1
-HAVE_INTTYPES_H = 1
-HAVE_LINUX_PERF_EVENT_H = 1
-HOST_AR = ar
-HOST_AR_FLAGS = crs $@
-HOST_CC = cc
-HOST_CFLAGS = -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -DXP_UNIX -MD -MP -MF $(MDDEPDIR)/$(@F).pp
-HOST_CXX = c++
-HOST_CXXFLAGS = -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -std=gnu++0x -MD -MP -MF $(MDDEPDIR)/$(@F).pp
-HOST_LDFLAGS = -Wl,-O1 -Wl,--as-needed
-HOST_NSPR_MDCPUCFG = \"md/_linux.cfg\"
-HOST_OPTIMIZE_FLAGS = -O3
-HOST_OS_ARCH = Linux
-HOST_RANLIB = ranlib
-INSTALL_DATA = ${INSTALL} -m 644
-INSTALL_PROGRAM = ${INSTALL}
-INSTALL_SCRIPT = ${INSTALL_PROGRAM}
-JAR = :
-JARSIGNER = :
-JAVA = :
-JAVAC = :
-JAVAH = :
-KEYTOOL = :
-LD = armv7a-hardfloat-linux-gnueabi-ld
-LDFLAGS = -lpthread -Wl,-O1 -Wl,--as-needed -Wl,-z,noexecstack -Wl,-z,text
-LD_IS_BFD = 1
-LIBS = -ldl
-LIBS_DESC_SUFFIX = desc
-LIBXUL_DIST = /var/tmp/portage/www-client/firefox-33.0/work/mozilla-release/obj-armv7a-hardfloat-linux-gnueabi/dist
-LIBXUL_LIBS = $(XPCOM_FROZEN_LDOPTS)
-LIB_PREFIX = lib
-LIB_SUFFIX = a
-LN_S = ln -s
-MACOS_PRIVATE_FRAMEWORKS_DIR = /System/Library/PrivateFrameworks
-MAR_CHANNEL_ID = firefox-mozilla-release
-MC = mc.exe
-MKCSHLIB = $(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-h,$(DSO_SONAME) -o $@
-MKSHLIB = $(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-h,$(DSO_SONAME) -o $@
-MKSHLIB_FORCE_ALL = -Wl,--whole-archive
-MKSHLIB_UNFORCE_ALL = -Wl,--no-whole-archive
-MMX_FLAGS = -mmmx
-MOZILLA_SYMBOLVERSION = 33
-MOZILLA_VERSION = 33.0
-MOZ_ACTIVITIES = 1
-MOZ_ALSA = 1
-MOZ_ALSA_CFLAGS = -I/usr/include/alsa
-MOZ_ALSA_LIBS = -lasound
-MOZ_APP_BASENAME = Firefox
-MOZ_APP_DISPLAYNAME = Aurora
-MOZ_APP_ID = {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
-MOZ_APP_MAXVERSION = 33.*
-MOZ_APP_NAME = firefox
-MOZ_APP_STATIC_INI = 1
-MOZ_APP_VENDOR = Mozilla
-MOZ_APP_VERSION = 33.0
-MOZ_AUTH_EXTENSION = 1
-MOZ_B2G_VERSION = 1.0.0
-MOZ_BING_API_CLIENTID = no-bing-api-clientid
-MOZ_BING_API_KEY = no-bing-api-key
-MOZ_BRANDING_DIRECTORY = browser/branding/aurora
-MOZ_BUILD_APP = browser
-MOZ_BUILD_ROOT = /var/tmp/portage/www-client/firefox-33.0/work/mozilla-release/obj-armv7a-hardfloat-linux-gnueabi
-MOZ_BZ2_LIBS = $(call EXPAND_LIBNAME_PATH,bz2,$(DEPTH)/modules/libbz2/src)
-MOZ_CAIRO_CFLAGS = -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/libpng16 -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/libpng16
-MOZ_CAIRO_LIBS = -lcairo -L/usr/lib -lcairo -lXext -lXrender -lX11
-MOZ_CAIRO_OSLIBS = -lcairo -L/usr/lib -lcairo -lXext -lXrender -lX11
-MOZ_CHILD_PROCESS_BUNDLE = plugin-container.app/Contents/MacOS/
-MOZ_CHILD_PROCESS_NAME = plugin-container
-MOZ_CHROME_FILE_FORMAT = symlink
-MOZ_COMPONENTS_VERSION_SCRIPT_LDFLAGS = -Wl,--version-script -Wl,$(BUILD_TOOLS)/gnu-ld-scripts/components-version-script
-MOZ_COMPONENT_NSPR_LIBS = -L$(LIBXUL_DIST)/bin $(NSPR_LIBS)
-MOZ_DATA_REPORTING = 1
-MOZ_DBUS_CFLAGS = -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include
-MOZ_DBUS_GLIB_CFLAGS = -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-MOZ_DBUS_GLIB_LIBS = -ldbus-glib-1 -ldbus-1 -lgobject-2.0 -lglib-2.0
-MOZ_DBUS_LIBS = -ldbus-1
-MOZ_DEBUG_DISABLE_DEFS = -DNDEBUG -DTRIMMED
-MOZ_DEBUG_ENABLE_DEFS = -DDEBUG -DTRACING
-MOZ_DEBUG_FLAGS = -g
-MOZ_DISABLE_UNIFIED_COMPILATION = 1
-MOZ_DISTRIBUTION_ID = org.mozilla
-MOZ_DOC_INCLUDE_DIRS = ./dist/include ./dist/include/nspr
-MOZ_DOC_INPUT_DIRS = ./dist/include ./dist/idl
-MOZ_DOC_OUTPUT_DIR = ./dist/docs
-MOZ_EME = 1
-MOZ_ENABLE_DBUS = 1
-MOZ_ENABLE_GIO = 1
-MOZ_ENABLE_GNOME_COMPONENT = 1
-MOZ_ENABLE_GTK = 1
-MOZ_ENABLE_GTK2 = 1
-MOZ_ENABLE_STARTUP_NOTIFICATION = 1
-MOZ_ENABLE_XREMOTE = 1
-MOZ_EXTENSION_MANAGER = 1
-MOZ_FEEDS = 1
-MOZ_FFI_CFLAGS = -I/usr/lib/libffi-3.1/include
-MOZ_FFI_LIBS = -lffi
-MOZ_FFMPEG = 1
-MOZ_FIX_LINK_PATHS = -Wl,-rpath-link,$(LIBXUL_DIST)/bin -Wl,-rpath-link,$(prefix)/lib
-MOZ_FMP4 = 1
-MOZ_FRAMEPTR_FLAGS = -fomit-frame-pointer
-MOZ_FS_LAYOUT = unix
-MOZ_GAMEPAD = 1
-MOZ_GAMEPAD_BACKEND = linux
-MOZ_GIO_CFLAGS = -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-MOZ_GIO_COMPONENT = 1
-MOZ_GIO_LIBS = -lgio-2.0 -lgobject-2.0 -lglib-2.0
-MOZ_GLUE_PROGRAM_LDFLAGS = $(MKSHLIB_FORCE_ALL) $(call EXPAND_LIBNAME_PATH,mozglue,$(LIBXUL_DIST)/lib) $(call EXPAND_LIBNAME_PATH,memory,$(LIBXUL_DIST)/lib) $(MKSHLIB_UNFORCE_ALL) -rdynamic
-MOZ_GL_DEFAULT_PROVIDER = GLX
-MOZ_GOOGLE_API_KEY = AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc
-MOZ_GSTREAMER = 1
-MOZ_GTK2_CFLAGS = -pthread -I/usr/include/gtk-2.0 -I/usr/include/gtk-unix-print-2.0 -I/usr/include/gtk-2.0 -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-MOZ_GTK2_LIBS = -lgtk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lfreetype -lfontconfig -lgdk-x11-2.0 -lpangocairo-1.0 -lpango-1.0 -lcairo -lgdk_pixbuf-2.0 -lgobject-2.0 -lglib-2.0
-MOZ_HUNSPELL_CFLAGS = -I/usr/include/hunspell
-MOZ_HUNSPELL_LIBS = -lhunspell-1.3
-MOZ_ICU_LIBS = -licui18n -licuuc -licudata
-MOZ_ICU_VERSION = 52
-MOZ_INSTRUMENT_EVENT_LOOP = 1
-MOZ_JPEG_LIBS = -ljpeg
-MOZ_JSDOWNLOADS = 1
-MOZ_JS_LIBS = $(call EXPAND_LIBNAME_PATH,js_static,$(LIBXUL_DIST)/lib) -lffi -licui18n -licuuc -licudata
-MOZ_LIBEVENT_CFLAGS = -I/usr/include
-MOZ_LIBEVENT_LIBS = -L/usr/lib -levent
-MOZ_LIBVPX_LIBS = -lvpx -lm
-MOZ_MACBUNDLE_ID = org.mozilla.aurora
-MOZ_MACBUNDLE_NAME = Aurora.app
-MOZ_MEMORY = 1
-MOZ_MOZILLA_API_KEY = no-mozilla-api-key
-MOZ_NATIVE_FFI = 1
-MOZ_NATIVE_HUNSPELL = 1
-MOZ_NATIVE_ICU = 1
-MOZ_NATIVE_JPEG = 1
-MOZ_NATIVE_LIBEVENT = 1
-MOZ_NATIVE_LIBVPX = 1
-MOZ_NATIVE_NSPR = 1
-MOZ_NATIVE_NSS = 1
-MOZ_NATIVE_PNG = 1
-MOZ_NATIVE_SQLITE = 1
-MOZ_NATIVE_ZLIB = 1
-MOZ_NO_DEBUG_RTL = 1
-MOZ_OMNIJAR = 1
-MOZ_OPTIMIZE = 1
-MOZ_OPTIMIZE_FLAGS = -Os -freorder-blocks
-MOZ_OPUS = 1
-MOZ_PACKAGER_FORMAT = omni
-MOZ_PANGO_CFLAGS = -pthread -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/libpng16
-MOZ_PANGO_LIBS = -lpangoft2-1.0 -lfreetype -lfontconfig -lpangocairo-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lcairo
-MOZ_PAY = 1
-MOZ_PDF_PRINTING = 1
-MOZ_PEERCONNECTION = 1
-MOZ_PERMISSIONS = 1
-MOZ_PGO_OPTIMIZE_FLAGS = -O3
-MOZ_PHOENIX = 1
-MOZ_PIXMAN_CFLAGS = -I/usr/include/pixman-1
-MOZ_PIXMAN_LIBS = -lpixman-1
-MOZ_PLACES = 1
-MOZ_PNG_CFLAGS = -I/var/tmp/portage/www-client/firefox-33.0/work/mozilla-release/obj-armv7a-hardfloat-linux-gnueabi/dist/include
-MOZ_PNG_LIBS = -lpng
-MOZ_PNG_ARM_NEON = 1
-MOZ_PNG_ARM_NEON_CHECK = 1
-MOZ_PREF_EXTENSIONS = 1
-MOZ_PROFILE_MIGRATOR = 1
-MOZ_PULSEAUDIO = 1
-MOZ_PULSEAUDIO_CFLAGS = -D_REENTRANT
-MOZ_PULSEAUDIO_LIBS = -lpulse
-MOZ_RAW = 1
-MOZ_REPLACE_MALLOC = 1
-MOZ_SAFE_BROWSING = 1
-MOZ_SAMPLE_TYPE_S16 = 1
-MOZ_SCTP = 1
-MOZ_SERVICES_COMMON = 1
-MOZ_SERVICES_CRYPTO = 1
-MOZ_SERVICES_HEALTHREPORT = 1
-MOZ_SERVICES_METRICS = 1
-MOZ_SERVICES_SYNC = 1
-MOZ_SHARED_ICU = 1
-MOZ_SOCIAL = 1
-MOZ_SPELLCHECK = 1
-MOZ_SRTP = 1
-MOZ_STARTUP_NOTIFICATION_CFLAGS = -I/usr/include/startup-notification-1.0
-MOZ_STARTUP_NOTIFICATION_LIBS = -lstartup-notification-1
-MOZ_TOOLKIT_SEARCH = 1
-MOZ_TREMOR = 1
-MOZ_UI_LOCALE = en-US
-MOZ_UNIVERSALCHARDET = 1
-MOZ_UPDATE_CHANNEL = default
-MOZ_URL_CLASSIFIER = 1
-MOZ_USE_PTHREADS = 1
-MOZ_VPX = 1
-MOZ_VPX_ERROR_CONCEALMENT = 1
-MOZ_WAVE = 1
-MOZ_WEBAPP_RUNTIME = 1
-MOZ_WEBGL = 1
-MOZ_WEBM = 1
-MOZ_WEBRTC = 1
-MOZ_WEBRTC_ASSERT_ALWAYS = 1
-MOZ_WEBRTC_HAVE_ETHTOOL_SPEED_HI = 1
-MOZ_WEBRTC_SIGNALING = 1
-MOZ_WEBRTC_X11_LIBS = -lXext -lXdamage -lXfixes -lXcomposite
-MOZ_WEBSPEECH = 1
-MOZ_WIDGET_GTK = 2
-MOZ_WIDGET_TOOLKIT = gtk2
-MOZ_X11 = 1
-MOZ_XUL = 1
-MOZ_ZIPWRITER = 1
-MOZ_ZLIB_LIBS = -lz
-NECKO_COOKIES = 1
-NECKO_PROTOCOLS = wyciwyg ftp about http res app viewsource file device websocket data
-NECKO_WIFI = 1
-NECKO_WIFI_DBUS = 1
-NSPR_CFLAGS = -I/usr/include/nspr
-NSPR_CONFIG = /usr/bin/nspr-config
-NSPR_LIBS = -lplds4 -lplc4 -lnspr4 -lpthread -ldl
-NSPR_PKGCONF_CHECK = nspr >= 4.10.3
-NSS_CFLAGS = -I/usr/include/nss
-NSS_CONFIG = /usr/bin/nss-config
-NSS_LIBS = -lssl3 -lsmime3 -lnss3 -lnssutil3 -lcrmf
-NS_PRINTING = 1
-OBJCOPY = /usr/bin/objcopy
-OBJ_SUFFIX = o
-OMNIJAR_NAME = omni.ja
-OS_ARCH = Linux
-OS_CFLAGS = -Wall -Wpointer-arith -Wdeclaration-after-statement -Werror=return-type -Werror=int-to-pointer-cast -Wtype-limits -Wempty-body -Wsign-compare -Wno-unused -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -std=gnu99 -fgnu89-inline -fno-strict-aliasing -fno-math-errno -pthread -pipe
-OS_COMPILE_CFLAGS = -include $(DEPTH)/mozilla-config.h -DMOZILLA_CLIENT -MD -MP -MF $(MDDEPDIR)/$(@F).pp
-OS_COMPILE_CXXFLAGS = -DMOZILLA_CLIENT -include $(DEPTH)/mozilla-config.h -MD -MP -MF $(MDDEPDIR)/$(@F).pp
-OS_CPPFLAGS = -DWEBRTC_ARCH_ARM_V7
-OS_CXXFLAGS = -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Werror=int-to-pointer-cast -Wtype-limits -Wempty-body -Wsign-compare -Wno-invalid-offsetof -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -fno-exceptions -fno-strict-aliasing -fno-rtti -fno-exceptions -fno-math-errno -std=gnu++0x -pthread -pipe
-OS_LDFLAGS = -lpthread -Wl,-O1 -Wl,--as-needed -Wl,-z,noexecstack -Wl,-z,text
-OS_LIBS = -ldl
-OS_TARGET = Linux
-OS_TEST = armv7a
-PDF_SURFACE_FEATURE = #define CAIRO_HAS_PDF_SURFACE 1
-PERL = /usr/bin/perl
-PIXMAN_CFLAGS = -I/usr/include/pixman-1
-PIXMAN_LIBS = -lpixman-1
-PKG_CONFIG = /usr/bin/pkg-config
-PKG_SKIP_STRIP = 1
-PROFILE_GEN_CFLAGS = -fprofile-generate
-PROFILE_GEN_LDFLAGS = -fprofile-generate
-PROFILE_USE_CFLAGS = -fprofile-use -fprofile-correction -Wcoverage-mismatch
-PROFILE_USE_LDFLAGS = -fprofile-use
-PYTHON = /var/tmp/portage/www-client/firefox-33.0/work/mozilla-release/obj-armv7a-hardfloat-linux-gnueabi/_virtualenv/bin/python
-PYTHON_SITE_PACKAGES = /var/tmp/portage/www-client/firefox-33.0/work/mozilla-release/obj-armv7a-hardfloat-linux-gnueabi/_virtualenv/lib/python2.7/site-packages
-RANLIB = armv7a-hardfloat-linux-gnueabi-ranlib
-RELEASE_BUILD = 1
-RPMBUILD = :
-SHELL = /bin/sh
-SQLITE_LIBS = -lsqlite3
-SSE2_FLAGS = -msse2
-SSE_FLAGS = -msse
-STL_FLAGS = -I$(DIST)/stl_wrappers
-STRIP = armv7a-hardfloat-linux-gnueabi-strip
-TAR = tar
-TARGET_CPU = armv7a
-TARGET_MD_ARCH = unix
-TARGET_NSPR_MDCPUCFG = \"md/_linux.cfg\"
-TARGET_OS = linux-gnueabi
-TARGET_VENDOR = hardfloat
-TARGET_XPCOM_ABI = arm-eabi-gcc3
-TK_CFLAGS = $(MOZ_GTK2_CFLAGS)
-TK_LIBS = $(MOZ_GTK2_LIBS) -lstartup-notification-1
-UNZIP = /usr/bin/unzip
-USE_DEPENDENT_LIBS = 1
-VISIBILITY_FLAGS = -I$(DIST)/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h
-VPX_ARM_ASM = 1
-VPX_AS = $(CC)
-VPX_ASFLAGS = -march=armv7-a -mfpu=neon
-VPX_ASM_SUFFIX = s
-VPX_AS_CONVERSION = $(PERL) $(topsrcdir)/media/libvpx/build/make/ads2gas.pl
-WGET = wget
-WINDRES = :
-WRAP_STL_INCLUDES = 1
-WRAP_SYSTEM_INCLUDES = 1
-XARGS = /usr/bin/xargs
-XCFLAGS = -I/usr/include
-XEXT_LIBS = -lXext
-XLDFLAGS = -L/usr/lib
-XLIBS = -lX11
-XPCOM_FROZEN_LDOPTS = $(call EXPAND_LIBNAME_PATH,xul mozalloc,$(LIBXUL_DIST)/bin)
-XPCOM_GLUE_LDOPTS = $(LIBXUL_DIST)/lib/$(LIB_PREFIX)xpcomglue_s.$(LIB_SUFFIX) $(XPCOM_FROZEN_LDOPTS)
-XPCOM_LIBS = $(XPCOM_FROZEN_LDOPTS)
-XPCOM_STANDALONE_GLUE_LDOPTS = $(LIBXUL_DIST)/lib/$(LIB_PREFIX)xpcomglue.$(LIB_SUFFIX)
-XPCOM_STANDALONE_STATICRUNTIME_GLUE_LDOPTS = $(LIBXUL_DIST)/lib/$(LIB_PREFIX)xpcomglue.$(LIB_SUFFIX)
-XPCOM_STATICRUNTIME_GLUE_LDOPTS = $(LIBXUL_DIST)/lib/$(LIB_PREFIX)xpcomglue_s.$(LIB_SUFFIX) $(XPCOM_FROZEN_LDOPTS)
-XSS_LIBS = -lXss -lXext -lX11
-XT_LIBS = -lXt
-XULRUNNER_STUB_NAME = xulrunner-stub
-X_CFLAGS = -I/usr/include
-X_LIBS = -L/usr/lib
-X_PRE_LIBS = -lSM -lICE
-ZIP = /usr/bin/zip
-_FONTCONFIG_LIBS = -lfontconfig
-_GTKCHECK_CFLAGS = -pthread -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2
-_GTKCHECK_LIBS = -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lfreetype -lfontconfig
-_PANGOCHK_CFLAGS = -pthread -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-_PANGOCHK_LIBS = -lpango-1.0 -lgobject-2.0 -lglib-2.0
-ac_configure_args = --enable-application=browser --enable-optimize --disable-pedantic --disable-updater --disable-strip --disable-install-strip --disable-installer --disable-strip-libs --disable-profilelocking --enable-single-profile --disable-profilesharing --with-system-zlib --enable-pango --enable-svg --enable-default-toolkit=cairo-gtk2 --disable-official-branding --with-branding=browser/branding/aurora --disable-debug --disable-tests --disable-debug-symbols --enable-startup-notification --enable-necko-wifi --enable-dbus --enable-ogg --enable-wave --enable-ion --enable-yarr-jit --with-system-nspr --with-nspr-prefix=/usr --with-system-nss --with-nss-prefix=/usr --x-includes=/usr/include --x-libraries=/usr/lib --with-system-libevent=/usr --prefix=/usr --libdir=/usr/lib --enable-system-hunspell --disable-gnomevfs --disable-gnomeui --enable-gio --disable-crashreporter --with-system-png --enable-system-ffi --disable-gold --disable-gconf --enable-jemalloc --enable-replace-malloc --target=armv7a-hardfloat-linux-gnueabi --build=armv7a-hardfloat-linux-gnueabi --enable-gstreamer=1.0 --enable-pulseaudio --enable-system-cairo --enable-system-sqlite --with-system-jpeg --with-system-icu --enable-intl-api --with-system-libvpx --with-google-api-keyfile=/var/tmp/portage/www-client/firefox-33.0/work/mozilla-release/google-api-key --disable-mailnews --with-default-mozilla-five-home=/usr/lib/firefox --enable-extensions=default
-bindir = ${exec_prefix}/bin
-build = armv7a-hardfloat-linux-gnueabi
-build_alias = armv7a-hardfloat-linux-gnueabi
-build_cpu = armv7a
-build_os = linux-gnueabi
-build_vendor = hardfloat
-datadir = ${prefix}/share
-exec_prefix = ${prefix}
-host = armv7l-unknown-linux-gnueabihf
-host_alias = armv7l-unknown-linux-gnueabihf
-host_cpu = armv7l
-host_os = linux-gnueabihf
-host_vendor = unknown
-includedir = ${prefix}/include
-infodir = ${prefix}/info
-libdir = /usr/lib
-libexecdir = ${exec_prefix}/libexec
-localstatedir = ${prefix}/var
-mandir = ${prefix}/man
-oldincludedir = /usr/include
-prefix = /usr
-program_transform_name = s,x,x,
-sbindir = ${exec_prefix}/sbin
-sharedstatedir = ${prefix}/com
-sysconfdir = ${prefix}/etc
-target = armv7a-hardfloat-linux-gnueabi
-target_alias = armv7a-hardfloat-linux-gnueabi
-target_cpu = armv7a
-target_os = linux-gnueabi
-target_vendor = hardfloat
-top_srcdir = /var/tmp/portage/www-client/firefox-33.0/work/mozilla-release
-include $(topsrcdir)/config/baseconfig.mk
-endif
diff --git a/www-client/firefox/files/firefox-23.0-egl-webgl.patch b/www-client/firefox/files/firefox-23.0-egl-webgl.patch
deleted file mode 100644
index bef31cf..0000000
--- a/www-client/firefox/files/firefox-23.0-egl-webgl.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-# HG changeset patch
-# Parent 32f31f8201b0dc1335b4e1ec5992c7233d99e101
-# User Nicholas Cameron <ncameron@mozilla.com>
-Bug 788319, get webgl working with EGL. r=
-
-diff --git a/content/canvas/src/Makefile.in b/content/canvas/src/Makefile.in
---- a/content/canvas/src/Makefile.in
-+++ b/content/canvas/src/Makefile.in
-@@ -81,9 +81,15 @@ INCLUDES += \
- -I$(srcdir)/../../../layout/generic \
- -I$(srcdir)/../../base/src \
- -I$(srcdir)/../../html/content/src \
- -I$(srcdir)/../../../js/xpconnect/src \
- -I$(srcdir)/../../../dom/base \
- -I$(topsrcdir)/content/xul/content/src \
- $(NULL)
-
-+# define MOZ_USE_EGL if we want to back WebGL with EGL, but we would not
-+# otherwise expect it (i.e., not Android, ANGLE, etc.)
-+ifeq ($(MOZ_GL_PROVIDER),EGL)
-+DEFINES += -DMOZ_USE_EGL
-+endif
-+
- DEFINES += -D_IMPL_NS_LAYOUT
-diff --git a/content/canvas/src/WebGLContext.cpp b/content/canvas/src/WebGLContext.cpp
---- a/content/canvas/src/WebGLContext.cpp
-+++ b/content/canvas/src/WebGLContext.cpp
-@@ -409,16 +409,21 @@ WebGLContext::SetDimensions(int32_t widt
- NS_ENSURE_TRUE(Preferences::GetRootBranch(), NS_ERROR_FAILURE);
-
- #ifdef XP_WIN
- bool preferEGL =
- Preferences::GetBool("webgl.prefer-egl", false);
- bool preferOpenGL =
- Preferences::GetBool("webgl.prefer-native-gl", false);
- #endif
-+#ifdef MOZ_USE_EGL
-+ bool preferEGL = true;
-+ bool preferOpenGL = false;
-+ bool useANGLE = false;
-+#endif
- bool forceEnabled =
- Preferences::GetBool("webgl.force-enabled", false);
- bool useMesaLlvmPipe =
- Preferences::GetBool("gfx.prefer-mesa-llvmpipe", false);
- bool disabled =
- Preferences::GetBool("webgl.disabled", false);
- bool prefer16bit =
- Preferences::GetBool("webgl.prefer-16bpp", false);
-@@ -499,23 +504,22 @@ WebGLContext::SetDimensions(int32_t widt
- if (useMesaLlvmPipe || PR_GetEnv("MOZ_WEBGL_FORCE_OPENGL")) {
- preferEGL = false;
- useANGLE = false;
- useOpenGL = true;
- }
- #endif
-
- gfxIntSize size(width, height);
--
--#ifdef XP_WIN
-+#if defined(XP_WIN) || defined(MOZ_USE_EGL)
- // if we want EGL, try it now
- if (!gl && (preferEGL || useANGLE) && !preferOpenGL) {
- gl = gl::GLContextProviderEGL::CreateOffscreen(size, caps);
- if (!gl || !InitAndValidateGL()) {
-- GenerateWarning("Error during ANGLE OpenGL ES initialization");
-+ GenerateWarning("Error during OpenGL ES initialization");
- return NS_ERROR_FAILURE;
- }
- }
- #endif
-
- // try the default provider, whatever that is
- if (!gl && useOpenGL) {
- GLContext::ContextFlags flag = useMesaLlvmPipe
-diff --git a/gfx/layers/opengl/CanvasLayerOGL.h b/gfx/layers/opengl/CanvasLayerOGL.h
---- a/gfx/layers/opengl/CanvasLayerOGL.h
-+++ b/gfx/layers/opengl/CanvasLayerOGL.h
-@@ -34,17 +34,23 @@ public:
- , mDelayedUpdates(false)
- , mIsGLAlphaPremult(false)
- , mUploadTexture(0)
- #if defined(GL_PROVIDER_GLX)
- , mPixmap(0)
- #endif
- {
- mImplData = static_cast<LayerOGL*>(this);
-+#if MOZ_GL_PROVIDER==EGL
-+ //TODO
-+ mForceReadback = true;
-+#else
- mForceReadback = Preferences::GetBool("webgl.force-layers-readback", false);
-+#endif
-+
- }
-
- ~CanvasLayerOGL() {
- Destroy();
- }
-
- // CanvasLayer implementation
- virtual void Initialize(const Data& aData);
diff --git a/www-client/firefox/files/firefox-29.0.1-armhf.patch b/www-client/firefox/files/firefox-29.0.1-armhf.patch
deleted file mode 100644
index 7b028a8..0000000
--- a/www-client/firefox/files/firefox-29.0.1-armhf.patch
+++ /dev/null
@@ -1,126 +0,0 @@
-# HG changeset patch
-# Parent ee20da83ab99b4e34165c5eb76fe48208b659974
-# User Marty Rosenberg <mrosenberg@mozilla.com>
-make sm build when build as armhf.
-
-diff --git a/js/src/jit/BaselineIC.cpp b/js/src/jit/BaselineIC.cpp
---- a/js/src/jit/BaselineIC.cpp
-+++ b/js/src/jit/BaselineIC.cpp
-@@ -1920,17 +1920,16 @@ ICCompare_Fallback::Compiler::generateSt
- masm.pushValue(R0);
- masm.pushValue(R1);
-
- // Push arguments.
- masm.pushValue(R1);
- masm.pushValue(R0);
- masm.push(BaselineStubReg);
- masm.pushBaselineFramePtr(BaselineFrameReg, R0.scratchReg());
--
- return tailCallVM(DoCompareFallbackInfo, masm);
- }
-
- //
- // Compare_String
- //
-
- bool
-diff --git a/js/src/jit/arm/MacroAssembler-arm.cpp b/js/src/jit/arm/MacroAssembler-arm.cpp
---- a/js/src/jit/arm/MacroAssembler-arm.cpp
-+++ b/js/src/jit/arm/MacroAssembler-arm.cpp
-@@ -3479,16 +3479,17 @@ MacroAssemblerARMCompat::setupABICall(ui
- JS_ASSERT(!inCall_);
- inCall_ = true;
- args_ = args;
- passedArgs_ = 0;
- passedArgTypes_ = 0;
- #ifdef JS_CODEGEN_ARM_HARDFP
- usedIntSlots_ = 0;
- usedFloatSlots_ = 0;
-+ usedFloat32_ = false;
- padding_ = 0;
- #else
- usedSlots_ = 0;
- #endif
- floatArgsInGPR[0] = MoveOperand();
- floatArgsInGPR[1] = MoveOperand();
- floatArgsInGPRValid[0] = false;
- floatArgsInGPRValid[1] = false;
-@@ -3521,41 +3522,55 @@ MacroAssemblerARMCompat::passABIArg(cons
- {
- MoveOperand to;
- ++passedArgs_;
- if (!enoughMemory_)
- return;
- switch (type) {
- case MoveOp::FLOAT32:
- case MoveOp::DOUBLE: {
-+ JS_ASSERT(!usedFloat32_);
-+ if (type == MoveOp::FLOAT32)
-+ usedFloat32_ = true;
- FloatRegister fr;
- if (GetFloatArgReg(usedIntSlots_, usedFloatSlots_, &fr)) {
- if (from.isFloatReg() && from.floatReg() == fr) {
- // Nothing to do; the value is in the right register already
-+ usedFloatSlots_++;
-+ if (type == MoveOp::FLOAT32)
-+ passedArgTypes_ = (passedArgTypes_ << ArgType_Shift) | ArgType_Float32;
-+ else
-+ passedArgTypes_ = (passedArgTypes_ << ArgType_Shift) | ArgType_Double;
- return;
- }
- to = MoveOperand(fr);
- } else {
- // If (and only if) the integer registers have started spilling, do we
- // need to take the register's alignment into account
-- uint32_t disp = GetFloatArgStackDisp(usedIntSlots_, usedFloatSlots_, &padding_);
-+ uint32_t disp = INT_MAX;
-+ if (type == MoveOp::FLOAT32)
-+ disp = GetFloat32ArgStackDisp(usedIntSlots_, usedFloatSlots_, &padding_);
-+ else
-+ disp = GetDoubleArgStackDisp(usedIntSlots_, usedFloatSlots_, &padding_);
- to = MoveOperand(sp, disp);
- }
- usedFloatSlots_++;
- if (type == MoveOp::FLOAT32)
- passedArgTypes_ = (passedArgTypes_ << ArgType_Shift) | ArgType_Float32;
- else
- passedArgTypes_ = (passedArgTypes_ << ArgType_Shift) | ArgType_Double;
- break;
- }
- case MoveOp::GENERAL: {
- Register r;
- if (GetIntArgReg(usedIntSlots_, usedFloatSlots_, &r)) {
- if (from.isGeneralReg() && from.reg() == r) {
- // Nothing to do; the value is in the right register already
-+ usedIntSlots_++;
-+ passedArgTypes_ = (passedArgTypes_ << ArgType_Shift) | ArgType_General;
- return;
- }
- to = MoveOperand(r);
- } else {
- uint32_t disp = GetIntArgStackDisp(usedIntSlots_, usedFloatSlots_, &padding_);
- to = MoveOperand(sp, disp);
- }
- usedIntSlots_++;
-diff --git a/js/src/jit/arm/MacroAssembler-arm.h b/js/src/jit/arm/MacroAssembler-arm.h
---- a/js/src/jit/arm/MacroAssembler-arm.h
-+++ b/js/src/jit/arm/MacroAssembler-arm.h
-@@ -443,16 +443,17 @@ class MacroAssemblerARMCompat : public M
- // The actual number of arguments that were passed, used to assert that
- // the initial number of arguments declared was correct.
- uint32_t passedArgs_;
- uint32_t passedArgTypes_;
-
- #ifdef JS_CODEGEN_ARM_HARDFP
- uint32_t usedIntSlots_;
- uint32_t usedFloatSlots_;
-+ bool usedFloat32_;
- uint32_t padding_;
- #else
- // ARM treats arguments as a vector in registers/memory, that looks like:
- // { r0, r1, r2, r3, [sp], [sp,+4], [sp,+8] ... }
- // usedSlots_ keeps track of how many of these have been used.
- // It bears a passing resemblance to passedArgs_, but a single argument
- // can effectively use between one and three slots depending on its size and
- // alignment requirements
-
diff --git a/www-client/firefox/files/firefox-31.0-webm-disallow-negative-samples.patch b/www-client/firefox/files/firefox-31.0-webm-disallow-negative-samples.patch
deleted file mode 100644
index bccc25e..0000000
--- a/www-client/firefox/files/firefox-31.0-webm-disallow-negative-samples.patch
+++ /dev/null
@@ -1,29 +0,0 @@
---- a/content/media/webm/WebMReader.cpp 2014-10-20 21:59:39.000000000 -0400
-+++ b/content/media/webm/WebMReader.cpp 2014-10-28 09:06:51.959665416 -0400
-@@ -668,7 +668,15 @@
- return true;
- }
- int32_t keepFrames = frames - skipFrames;
-+ if (keepFrames < 0) {
-+ NS_WARNING("Int overflow in keepFrames");
-+ return false;
-+ }
- int samples = keepFrames * channels;
-+ if (samples < 0) {
-+ NS_WARNING("Int overflow in samples");
-+ return false;
-+ }
- nsAutoArrayPtr<AudioDataValue> trimBuffer(new AudioDataValue[samples]);
- for (int i = 0; i < samples; i++)
- trimBuffer[i] = buffer[skipFrames*channels + i];
-@@ -691,6 +699,10 @@
- int32_t keepFrames = frames - discardFrames.value();
- if (keepFrames > 0) {
- int samples = keepFrames * channels;
-+ if (samples < 0) {
-+ NS_WARNING("Int overflow in samples");
-+ return false;
-+ }
- nsAutoArrayPtr<AudioDataValue> trimBuffer(new AudioDataValue[samples]);
- for (int i = 0; i < samples; i++)
- trimBuffer[i] = buffer[i];
diff --git a/www-client/firefox/files/firefox-32.0-hppa-js-configure.patch b/www-client/firefox/files/firefox-32.0-hppa-js-configure.patch
deleted file mode 100644
index c37edda..0000000
--- a/www-client/firefox/files/firefox-32.0-hppa-js-configure.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- a/mozilla-release/js/src/configure.in
-+++ b/mozilla-release/js/src/configure.in
-@@ -958,7 +958,7 @@
- CPU_ARCH=s390x
- ;;
-
--hppa* | parisc)
-+hppa* | parisc*)
- CPU_ARCH=hppa
- ;;
-
-@@ -2009,6 +2009,9 @@
- AC_DEFINE(JS_CPU_MIPS)
- AC_DEFINE(JS_NUNBOX32)
- ;;
-+hppa*)
-+ AC_DEFINE(JS_NUNBOX32)
-+ ;;
- esac
-
- MOZ_ARG_DISABLE_BOOL(ion,
diff --git a/www-client/firefox/files/firefox-33.0-jemalloc-configure.patch b/www-client/firefox/files/firefox-33.0-jemalloc-configure.patch
deleted file mode 100644
index 0e6e11e..0000000
--- a/www-client/firefox/files/firefox-33.0-jemalloc-configure.patch
+++ /dev/null
@@ -1,29 +0,0 @@
---- a/memory/jemalloc/src/configure.ac 2014-10-11 05:06:41.000000000 -0400
-+++ b/memory/jemalloc/src/configure.ac 2014-10-16 13:41:10.809799170 -0400
-@@ -887,7 +887,7 @@
- dnl Check whether the BSD/SUSv1 sbrk() exists. If not, disable DSS support.
- AC_CHECK_FUNC([sbrk], [have_sbrk="1"], [have_sbrk="0"])
- if test "x$have_sbrk" = "x1" ; then
-- if test "x$sbrk_deprecated" == "x1" ; then
-+ if test "x$sbrk_deprecated" = "x1" ; then
- AC_MSG_RESULT([Disabling dss allocation because sbrk is deprecated])
- enable_dss="0"
- else
-@@ -1180,7 +1180,7 @@
- printf("%d\n", rv);
- }
- ], [je_cv_gcc_builtin_ffsl])
--if test "x${je_cv_gcc_builtin_ffsl}" == "xyes" ; then
-+if test "x${je_cv_gcc_builtin_ffsl}" = "xyes" ; then
- AC_DEFINE([JEMALLOC_INTERNAL_FFSL], [__builtin_ffsl])
- AC_DEFINE([JEMALLOC_INTERNAL_FFS], [__builtin_ffs])
- else
-@@ -1194,7 +1194,7 @@
- printf("%d\n", rv);
- }
- ], [je_cv_function_ffsl])
-- if test "x${je_cv_function_ffsl}" == "xyes" ; then
-+ if test "x${je_cv_function_ffsl}" = "xyes" ; then
- AC_DEFINE([JEMALLOC_INTERNAL_FFSL], [ffsl])
- AC_DEFINE([JEMALLOC_INTERNAL_FFS], [ffs])
- else
diff --git a/www-client/firefox/files/firefox-35.0-gmp-clearkey-sprintf.patch b/www-client/firefox/files/firefox-35.0-gmp-clearkey-sprintf.patch
deleted file mode 100644
index dfd9a8d..0000000
--- a/www-client/firefox/files/firefox-35.0-gmp-clearkey-sprintf.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/mozilla-beta/media/gmp-clearkey/0.1/openaes/oaes_lib.c 2014-12-04 11:24:16.279571363 -0500
-+++ b/mozilla-beta/media/gmp-clearkey/0.1/openaes/oaes_lib.c 2014-12-04 11:23:07.449572313 -0500
-@@ -42,6 +42,7 @@
-
- #include "oaes_config.h"
- #include "oaes_lib.h"
-+#include "standard.h"
-
- #ifdef OAES_HAVE_ISAAC
- #include "rand.h"
diff --git a/www-client/firefox/files/firefox-36.0-depollute-CONST-from-dtoa.patch b/www-client/firefox/files/firefox-36.0-depollute-CONST-from-dtoa.patch
deleted file mode 100644
index 137bbfd..0000000
--- a/www-client/firefox/files/firefox-36.0-depollute-CONST-from-dtoa.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- a/mozilla-release/js/src/dtoa.c 2015-03-01 12:51:12.950912536 -0500
-+++ b/mozilla-release/js/src/dtoa.c 2015-03-01 12:57:49.670919777 -0500
-@@ -245,6 +245,7 @@
- #endif
-
- #ifndef CONST
-+#define DTOA_UNSETCONSTDEF
- #ifdef KR_headers
- #define CONST /* blank */
- #else
-@@ -3246,3 +3247,7 @@
- *rve = s;
- return s0;
- }
-+
-+#ifdef DTOA_UNSETCONSTDEF
-+#undef CONST
-+#endif
diff --git a/www-client/firefox/files/firefox-36.0-disable-ion.patch b/www-client/firefox/files/firefox-36.0-disable-ion.patch
deleted file mode 100644
index 50c5c51..0000000
--- a/www-client/firefox/files/firefox-36.0-disable-ion.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- a/mozilla-release/js/src/jit/none/Lowering-none.h 2015-03-01 11:11:55.340803791 -0500
-+++ a/mozilla-release/js/src/jit/none/Lowering-none.h 2015-03-01 11:18:41.500811205 -0500
-@@ -65,6 +65,7 @@
- bool lowerMulI(MMul *, MDefinition *, MDefinition *) { MOZ_CRASH(); }
- bool lowerUDiv(MDiv *) { MOZ_CRASH(); }
- bool lowerUMod(MMod *) { MOZ_CRASH(); }
-+ bool visitValue(LValue *value) { MOZ_CRASH(); }
- bool visitBox(MBox *box) { MOZ_CRASH(); }
- bool visitUnbox(MUnbox *unbox) { MOZ_CRASH(); }
- bool visitReturn(MReturn *ret) { MOZ_CRASH(); }
-@@ -78,6 +79,7 @@
- bool visitAsmJSStoreHeap(MAsmJSStoreHeap *ins) { MOZ_CRASH(); }
- bool visitAsmJSLoadFuncPtr(MAsmJSLoadFuncPtr *ins) { MOZ_CRASH(); }
- bool visitStoreTypedArrayElementStatic(MStoreTypedArrayElementStatic *ins) { MOZ_CRASH(); }
-+ bool visitSubstr(MSubstr *ins) { MOZ_CRASH(); }
- bool visitForkJoinGetSlice(MForkJoinGetSlice *ins) { MOZ_CRASH(); }
- bool visitAtomicTypedArrayElementBinop(MAtomicTypedArrayElementBinop *ins) { MOZ_CRASH(); }
- bool visitCompareExchangeTypedArrayElement(MCompareExchangeTypedArrayElement *ins) { MOZ_CRASH(); }
diff --git a/www-client/firefox/files/firefox-37.0-configure_force_arm-neon.patch b/www-client/firefox/files/firefox-37.0-configure_force_arm-neon.patch
deleted file mode 100644
index 44b5747..0000000
--- a/www-client/firefox/files/firefox-37.0-configure_force_arm-neon.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- configure.orig 2015-04-22 14:19:27.725026443 -0700
-+++ configure 2015-04-22 14:31:32.890026789 -0700
-@@ -6765,6 +6765,13 @@
- MOZ_FLOAT_ABI=softfp
- MOZ_ALIGN=no
- ;;
-+ arm-Linux)
-+ MOZ_THUMB=yes
-+ MOZ_ARCH=armv7-a
-+ MOZ_FPU=neon
-+ MOZ_FLOAT_ABI=hard
-+ MOZ_SOFT_FLOAT=no
-+ ;;
- arm-Darwin)
- MOZ_ARCH=toolchain-default
- MOZ_THUMB=yes
diff --git a/www-client/firefox/files/firefox-37.0-jemalloc_configure_unbashify.patch b/www-client/firefox/files/firefox-37.0-jemalloc_configure_unbashify.patch
deleted file mode 100644
index b5278b1..0000000
--- a/www-client/firefox/files/firefox-37.0-jemalloc_configure_unbashify.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/memory/jemalloc/src/configure.ac 2015-03-30 18:54:42.000000000 -0400
-+++ b/memory/jemalloc/src/configure.ac 2015-04-06 16:23:52.170389285 -0400
-@@ -989,7 +989,7 @@
- AC_ARG_WITH([lg_page],
- [AS_HELP_STRING([--with-lg-page=<lg-page>], [Base 2 log of system page size])],
- [LG_PAGE="$with_lg_page"], [LG_PAGE="detect"])
--if test "x$LG_PAGE" == "xdetect"; then
-+if test "x$LG_PAGE" = "xdetect"; then
- AC_CACHE_CHECK([LG_PAGE],
- [je_cv_lg_page],
- AC_RUN_IFELSE([AC_LANG_PROGRAM(
diff --git a/www-client/firefox/files/firefox-45-qt-widget-fix.patch b/www-client/firefox/files/firefox-45-qt-widget-fix.patch
new file mode 100644
index 0000000..339bec0
--- /dev/null
+++ b/www-client/firefox/files/firefox-45-qt-widget-fix.patch
@@ -0,0 +1,21 @@
+--- a/widget/qt/nsWindow.cpp 2016-02-01 17:41:02.000000000 -0500
++++ b/widget/qt/nsWindow.cpp 2016-02-04 11:22:02.369759044 -0500
+@@ -594,17 +594,17 @@
+ }
+
+ NS_IMETHODIMP
+ nsWindow::ConfigureChildren(const nsTArray<nsIWidget::Configuration>& aConfigurations)
+ {
+ for (uint32_t i = 0; i < aConfigurations.Length(); ++i) {
+ const Configuration& configuration = aConfigurations[i];
+
+- nsWindow* w = static_cast<nsWindow*>(configuration.mChild);
++ nsWindow* w = static_cast<nsWindow*>(configuration.mChild.get());
+ NS_ASSERTION(w->GetParent() == this,
+ "Configured widget is not a child");
+
+ LayoutDeviceIntRect wBounds =
+ LayoutDeviceIntRect::FromUnknownRect(w->mBounds);
+ if (wBounds.Size() != configuration.mBounds.Size()) {
+ w->Resize(configuration.mBounds.x, configuration.mBounds.y,
+ configuration.mBounds.width, configuration.mBounds.height,
diff --git a/www-client/firefox/files/firefox-46-fix-egl-configure.patch b/www-client/firefox/files/firefox-46-fix-egl-configure.patch
new file mode 100644
index 0000000..d0fd1cc
--- /dev/null
+++ b/www-client/firefox/files/firefox-46-fix-egl-configure.patch
@@ -0,0 +1,90 @@
+--- configure.in.orig 2016-04-29 11:06:47.642487076 -0700
++++ configure.in 2016-04-29 11:14:12.959680789 -0700
+@@ -6893,6 +6893,9 @@
+ fi
+ AC_SUBST(MOZ_GL_DEFAULT_PROVIDER)
+ AC_DEFINE_UNQUOTED(GL_PROVIDER_$MOZ_GL_DEFAULT_PROVIDER)
++if test "$MOZ_GL_PROVIDER" = "EGL"; then
++ AC_DEFINE(MOZ_EGL_XRENDER_COMPOSITE)
++fi
+
+ dnl ========================================================
+ dnl = faststripe theme
+--- configure.orig 2016-04-29 11:06:39.915580500 -0700
++++ configure 2016-04-29 11:15:07.184703614 -0700
+@@ -25428,6 +25428,9 @@
+ withval="$with_gl_provider"
+ val=`echo $withval`
+ MOZ_GL_PROVIDER="$val"
++ if test "$val" = "EGL"; then
++ MOZ_EGL_XRENDER_COMPOSITE=1
++ fi
+ fi
+
+
+--- gfx/gl/GLContextProviderImpl.h.orig 2016-04-29 16:46:12.009987108 -0700
++++ gfx/gl/GLContextProviderImpl.h 2016-04-29 17:36:38.108466759 -0700
+@@ -10,7 +10,7 @@
+ #ifndef GL_CONTEXT_PROVIDER_NAME
+ #error GL_CONTEXT_PROVIDER_NAME not defined
+ #endif
+-#if defined(ANDROID)
++#if defined(ANDROID) || defined(GL_PROVIDER_EGL)
+ typedef void* EGLSurface;
+ #endif // defined(ANDROID)
+
+@@ -84,7 +84,7 @@
+ static already_AddRefed<GLContext>
+ CreateWrappingExisting(void* aContext, void* aSurface);
+
+-#if defined(ANDROID)
++#if defined(ANDROID) || defined(GL_PROVIDER_EGL)
+ static EGLSurface CreateEGLSurface(void* aWindow);
+ static void DestroyEGLSurface(EGLSurface surface);
+ #endif // defined(ANDROID)
+--- gfx/gl/GLContextProvider.h.orig 2016-04-29 20:51:45.350686842 -0700
++++ gfx/gl/GLContextProvider.h 2016-04-29 20:58:03.616317703 -0700
+@@ -40,35 +40,28 @@
+ #endif
+
+ #if defined(MOZ_X11)
++ #ifdef MOZ_EGL_XRENDER_COMPOSITE
++ #define GL_CONTEXT_PROVIDER_NAME GLContextProviderEGL
++ #include "GLContextProviderImpl.h"
++ #undef GL_CONTEXT_PROVIDER_NAME
++ #define GL_CONTEXT_PROVIDER_DEFAULT GLContextProviderEGL
++ #endif
++#else
+ #define GL_CONTEXT_PROVIDER_NAME GLContextProviderGLX
+ #include "GLContextProviderImpl.h"
+ #undef GL_CONTEXT_PROVIDER_NAME
+ #define GL_CONTEXT_PROVIDER_DEFAULT GLContextProviderGLX
+ #endif
+
+-#define GL_CONTEXT_PROVIDER_NAME GLContextProviderEGL
+-#include "GLContextProviderImpl.h"
+-#undef GL_CONTEXT_PROVIDER_NAME
+-#ifndef GL_CONTEXT_PROVIDER_DEFAULT
+- #define GL_CONTEXT_PROVIDER_DEFAULT GLContextProviderEGL
+-#endif
+-
+ #if defined(MOZ_WIDGET_UIKIT)
+ #define GL_CONTEXT_PROVIDER_NAME GLContextProviderEAGL
+ #include "GLContextProviderImpl.h"
+ #undef GL_CONTEXT_PROVIDER_NAME
+ #ifndef GL_CONTEXT_PROVIDER_DEFAULT
+-#define GL_CONTEXT_PROVIDER_DEFAULT GLContextProviderEAGL
++ #define GL_CONTEXT_PROVIDER_DEFAULT GLContextProviderEAGL
+ #endif
+ #endif
+
+-#ifdef MOZ_GL_PROVIDER
+- #define GL_CONTEXT_PROVIDER_NAME MOZ_GL_PROVIDER
+- #include "GLContextProviderImpl.h"
+- #undef GL_CONTEXT_PROVIDER_NAME
+- #define GL_CONTEXT_PROVIDER_DEFAULT MOZ_GL_PROVIDER
+-#endif
+-
+ #ifdef GL_CONTEXT_PROVIDER_DEFAULT
+ typedef GL_CONTEXT_PROVIDER_DEFAULT GLContextProvider;
+ #else
diff --git a/www-client/firefox/files/firefox-48.0-pgo.patch b/www-client/firefox/files/firefox-48.0-pgo.patch
new file mode 100644
index 0000000..645c008
--- /dev/null
+++ b/www-client/firefox/files/firefox-48.0-pgo.patch
@@ -0,0 +1,12 @@
+--- firefox-47.0.1/Makefile.in.orig 2016-06-01 07:11:37.000000000 +0300
++++ firefox-47.0.1/Makefile.in 2016-08-06 16:45:14.442699244 +0300
+@@ -55,6 +55,9 @@
+ endif
+ endif
+
++pgo-profile-run:
++ $(PYTHON) $(topsrcdir)/build/pgo/profileserver.py $(EXTRA_TEST_ARGS)
++
+ ifdef JS_STANDALONE
+ .PHONY: CLOBBER
+ CLOBBER:
diff --git a/www-client/firefox/files/firefox-52.0.1-disable_cachegen.patch b/www-client/firefox/files/firefox-52.0.1-disable_cachegen.patch
new file mode 100644
index 0000000..da368f4
--- /dev/null
+++ b/www-client/firefox/files/firefox-52.0.1-disable_cachegen.patch
@@ -0,0 +1,20 @@
+--- ./browser/config/mozconfigs/linux32/common-opt.orig 2017-03-27 16:47:57.039428674 -0700
++++ ./browser/config/mozconfigs/linux32/common-opt 2017-03-27 16:43:26.004591584 -0700
+@@ -3,6 +3,7 @@
+ ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}
+ ac_add_options --with-google-api-keyfile=/builds/gapi.data
+ ac_add_options --with-mozilla-api-keyfile=/builds/mozilla-desktop-geoloc-api.key
++ac_add_options --disable-startupcache
+
+ . $topsrcdir/build/unix/mozconfig.linux32
+
+--- ./browser/config/mozconfigs/linux64/common-opt.orig 2017-03-27 16:46:54.794982020 -0700
++++ ./browser/config/mozconfigs/linux64/common-opt 2017-03-27 16:47:05.345170624 -0700
+@@ -3,6 +3,7 @@
+ ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}
+ ac_add_options --with-google-api-keyfile=/builds/gapi.data
+ ac_add_options --with-mozilla-api-keyfile=/builds/mozilla-desktop-geoloc-api.key
++ac_add_options --disable-startupcache
+
+ . $topsrcdir/build/unix/mozconfig.linux
+
diff --git a/www-client/firefox/files/firefox-52.0.1-fix_hardened_pie_detection.patch b/www-client/firefox/files/firefox-52.0.1-fix_hardened_pie_detection.patch
new file mode 100644
index 0000000..4a6a8c3
--- /dev/null
+++ b/www-client/firefox/files/firefox-52.0.1-fix_hardened_pie_detection.patch
@@ -0,0 +1,19 @@
+--- a/build/autoconf/compiler-opts.m4 2017-03-27 13:05:30.237437847 -0700
++++ b/build/autoconf/compiler-opts.m4 2017-03-27 13:07:33.848963990 -0700
+@@ -288,6 +288,8 @@
+
+ if test "$GNU_CC" -a -n "$MOZ_PIE"; then
+ AC_MSG_CHECKING([for PIE support])
++ _SAVE_CFLAGS=$CFLAGS
++ CFLAGS="$CFLAGS -fPIC"
+ _SAVE_LDFLAGS=$LDFLAGS
+ LDFLAGS="$LDFLAGS -pie"
+ AC_TRY_LINK(,,AC_MSG_RESULT([yes])
+@@ -295,6 +297,7 @@
+ AC_MSG_RESULT([no])
+ AC_MSG_ERROR([--enable-pie requires PIE support from the linker.]))
+ LDFLAGS=$_SAVE_LDFLAGS
++ CFLAGS=$_SAVE_CFLAGS
+ fi
+
+ AC_SUBST(MOZ_PROGRAM_LDFLAGS)
diff --git a/www-client/firefox/files/firefox-53-turn_off_crash_on_seccomp_fail.patch b/www-client/firefox/files/firefox-53-turn_off_crash_on_seccomp_fail.patch
new file mode 100644
index 0000000..2d0c06b
--- /dev/null
+++ b/www-client/firefox/files/firefox-53-turn_off_crash_on_seccomp_fail.patch
@@ -0,0 +1,100 @@
+
+# HG changeset patch
+# User Jed Davis <jld@mozilla.com>
+# Date 1485552350 25200
+# Node ID 7781de08a1c6d84a92e9d54a78ac9f54f8c4c240
+# Parent 952f0a7824ad897dd0f76318b567341e7d8ad46d
+Bug 1286865 - Step 0: Turn off crash-on-seccomp-fail by default on non-nightly. r=gcp
+
+MozReview-Commit-ID: 1It6HNizbAc
+
+diff --git a/security/sandbox/linux/Sandbox.cpp b/security/sandbox/linux/Sandbox.cpp
+--- a/security/sandbox/linux/Sandbox.cpp
++++ b/security/sandbox/linux/Sandbox.cpp
+@@ -68,16 +68,18 @@ MOZ_IMPORT_API void
+ } // extern "C"
+ #endif // MOZ_ASAN
+
+ // Signal number used to enable seccomp on each thread.
+ int gSeccompTsyncBroadcastSignum = 0;
+
+ namespace mozilla {
+
++static bool gSandboxCrashOnError = false;
++
+ // This is initialized by SandboxSetCrashFunc().
+ SandboxCrashFunc gSandboxCrashFunc;
+
+ #ifdef MOZ_GMP_SANDBOX
+ // For media plugins, we can start the sandbox before we dlopen the
+ // module, so we have to pre-open the file and simulate the sandboxed
+ // open().
+ static SandboxOpenedFile gMediaPluginFile;
+@@ -143,25 +145,28 @@ SigSysHandler(int nr, siginfo_t *info, v
+ args[2] = SECCOMP_PARM3(&savedCtx);
+ args[3] = SECCOMP_PARM4(&savedCtx);
+ args[4] = SECCOMP_PARM5(&savedCtx);
+ args[5] = SECCOMP_PARM6(&savedCtx);
+
+ // TODO, someday when this is enabled on MIPS: include the two extra
+ // args in the error message.
+ SANDBOX_LOG_ERROR("seccomp sandbox violation: pid %d, syscall %d,"
+- " args %d %d %d %d %d %d. Killing process.",
++ " args %d %d %d %d %d %d.%s",
+ pid, syscall_nr,
+- args[0], args[1], args[2], args[3], args[4], args[5]);
++ args[0], args[1], args[2], args[3], args[4], args[5],
++ gSandboxCrashOnError ? " Killing process." : "");
+
+- // Bug 1017393: record syscall number somewhere useful.
+- info->si_addr = reinterpret_cast<void*>(syscall_nr);
++ if (gSandboxCrashOnError) {
++ // Bug 1017393: record syscall number somewhere useful.
++ info->si_addr = reinterpret_cast<void*>(syscall_nr);
+
+- gSandboxCrashFunc(nr, info, &savedCtx);
+- _exit(127);
++ gSandboxCrashFunc(nr, info, &savedCtx);
++ _exit(127);
++ }
+ }
+
+ /**
+ * This function installs the SIGSYS handler. This is slightly
+ * complicated because we want to use Chromium's handler to dispatch
+ * to specific trap handlers defined in the policy, but we also need
+ * the full original signal context to give to Breakpad for crash
+ * dumps. So we install Chromium's handler first, then retrieve its
+@@ -510,16 +515,31 @@ void
+ SandboxEarlyInit(GeckoProcessType aType)
+ {
+ const SandboxInfo info = SandboxInfo::Get();
+ if (info.Test(SandboxInfo::kUnexpectedThreads)) {
+ return;
+ }
+ MOZ_RELEASE_ASSERT(IsSingleThreaded());
+
++ // Set gSandboxCrashOnError if appropriate. This doesn't need to
++ // happen this early, but for now it's here so that I don't need to
++ // add NSPR dependencies for PR_GetEnv.
++ //
++ // This also means that users with "unexpected threads" setups won't
++ // crash even on nightly.
++#ifdef NIGHTLY_BUILD
++ gSandboxCrashOnError = true;
++#endif
++ if (const char* envVar = getenv("MOZ_SANDBOX_CRASH_ON_ERROR")) {
++ if (envVar[0]) {
++ gSandboxCrashOnError = envVar[0] != '0';
++ }
++ }
++
+ // Which kinds of resource isolation (of those that need to be set
+ // up at this point) can be used by this process?
+ bool canChroot = false;
+ bool canUnshareNet = false;
+ bool canUnshareIPC = false;
+
+ switch (aType) {
+ case GeckoProcessType_Default:
+
diff --git a/www-client/firefox/files/firefox-webrtc-armcpufeatures.patch b/www-client/firefox/files/firefox-webrtc-armcpufeatures.patch
deleted file mode 100644
index f7c684b..0000000
--- a/www-client/firefox/files/firefox-webrtc-armcpufeatures.patch
+++ /dev/null
@@ -1,28 +0,0 @@
---- a/media/webrtc/trunk/webrtc/system_wrappers/source/cpu_features.cc
-+++ a/media/webrtc/trunk/webrtc/system_wrappers/source/cpu_features.cc
-@@ -61,12 +61,25 @@ static int GetCPUInfo(CPUFeature feature
- return 0;
- }
- #else
- // Default to straight C for other platforms.
- static int GetCPUInfo(CPUFeature feature) {
- (void)feature;
- return 0;
- }
-+
-+#if !defined(WEBRTC_GONK) && !defined(ANDROID)
-+#ifdef WEBRTC_ARCH_ARM_V7
-+uint64_t WebRtc_GetCPUFeaturesARM(void) {
-+ return kCPUFeatureARMv7
-+#ifdef WEBRTC_ARCH_ARM_NEON
-+ | kCPUFeatureNEON
-+#endif
-+ | kCPUFeatureVFPv3;
-+}
-+#endif // WEBRTC_ARCH_ARM_V7
-+#endif // !WEBRTC_GONK && !ANDROID
-+
- #endif
-
- WebRtc_CPUInfo WebRtc_GetCPUInfo = GetCPUInfo;
- WebRtc_CPUInfo WebRtc_GetCPUInfoNoASM = GetCPUInfoNoASM;
diff --git a/www-client/firefox/files/fix_hardened_pie_detection.patch b/www-client/firefox/files/fix_hardened_pie_detection.patch
new file mode 100644
index 0000000..7cc74cd
--- /dev/null
+++ b/www-client/firefox/files/fix_hardened_pie_detection.patch
@@ -0,0 +1,36 @@
+From: Jory A. Pratt <anarchy@gentoo.org>
+
+CFLAGS must contain -fPIC when checking the linker
+
+https://bugs.gentoo.org/show_bug.cgi?id=607350
+
+diff --git a/build/autoconf/compiler-opts.m4 b/build/autoconf/compiler-opts.m4
+--- a/build/autoconf/compiler-opts.m4
++++ b/build/autoconf/compiler-opts.m4
+@@ -263,23 +263,26 @@ fi
+
+ MOZ_ARG_ENABLE_BOOL(pie,
+ [ --enable-pie Enable Position Independent Executables],
+ MOZ_PIE=1,
+ MOZ_PIE= )
+
+ if test "$GNU_CC" -a -n "$MOZ_PIE"; then
+ AC_MSG_CHECKING([for PIE support])
++ _SAVE_CFLAGS=$CFLAGS
++ CFLAGS="$CFLAGS -fPIC"
+ _SAVE_LDFLAGS=$LDFLAGS
+ LDFLAGS="$LDFLAGS -pie"
+ AC_TRY_LINK(,,AC_MSG_RESULT([yes])
+ [MOZ_PROGRAM_LDFLAGS="$MOZ_PROGRAM_LDFLAGS -pie"],
+ AC_MSG_RESULT([no])
+ AC_MSG_ERROR([--enable-pie requires PIE support from the linker.]))
+ LDFLAGS=$_SAVE_LDFLAGS
++ CFLAGS=$_SAVE_CFLAGS
+ fi
+
+ AC_SUBST(MOZ_PROGRAM_LDFLAGS)
+
+ dnl ASan assumes no symbols are being interposed, and when that happens,
+ dnl it's not happy with it. Unconveniently, since Firefox is exporting
+ dnl libffi symbols and Gtk+3 pulls system libffi via libwayland-client,
+ dnl system libffi interposes libffi symbols that ASan assumes are in
diff --git a/www-client/firefox/files/mozilla-config.h b/www-client/firefox/files/mozilla-config.h
deleted file mode 100644
index 7595a04..0000000
--- a/www-client/firefox/files/mozilla-config.h
+++ /dev/null
@@ -1,217 +0,0 @@
-/* List of defines generated by configure. Included with preprocessor flag,
- * -include, to avoid long list of -D defines on the compile command-line.
- * Do not edit.
- */
-
-#ifndef _MOZILLA_CONFIG_H_
-#define _MOZILLA_CONFIG_H_
-
-#define A11Y_LOG 1
-#define ATTRIBUTE_ALIGNED_MAX 64
-#define BUILD_ARM_NEON 1
-#define BUILD_CTYPES 1
-#define D_INO d_ino
-#define EARLY_BETA_OR_EARLIER 1
-#define ENABLE_INTL_API 1
-#define ENABLE_MARIONETTE 1
-#define ENABLE_SYSTEM_EXTENSION_DIRS 1
-#define EXPOSE_INTL_API 1
-#define FIREFOX_VERSION 35.0a1
-#define GL_PROVIDER_EGL 1
-#define GST_API_VERSION "0.10"
-#define HAVE_ARM_NEON 1
-#define HAVE_ARM_SIMD 1
-#define HAVE_BYTESWAP_H 1
-#define HAVE_CLOCK_MONOTONIC 1
-#define HAVE_DIRENT_H 1
-#define HAVE_DLADDR 1
-#define HAVE_DLOPEN 1
-#define HAVE_FONTCONFIG_FCFREETYPE_H 1
-#define HAVE_FT_BITMAP_SIZE_Y_PPEM 1
-#define HAVE_FT_GLYPHSLOT_EMBOLDEN 1
-#define HAVE_FT_LOAD_SFNT_TABLE 1
-#define HAVE_GETOPT_H 1
-#define HAVE_GNU_LIBC_VERSION_H 1
-#define HAVE_I18N_LC_MESSAGES 1
-#define HAVE_INTTYPES_H 1
-#define HAVE_LANGINFO_CODESET 1
-#define HAVE_LINUX_IF_ADDR_H 1
-#define HAVE_LINUX_QUOTA_H 1
-#define HAVE_LINUX_RTNETLINK_H 1
-#define HAVE_LOCALECONV 1
-#define HAVE_LOCALTIME_R 1
-#define HAVE_LSTAT64 1
-#define HAVE_MALLOC_H 1
-#define HAVE_MALLOC_USABLE_SIZE 1
-#define HAVE_MEMALIGN 1
-#define HAVE_MEMMEM 1
-#define HAVE_MEMORY_H 1
-#define HAVE_NETINET_IN_H 1
-#define HAVE_NL_TYPES_H 1
-#define HAVE_POSIX_FADVISE 1
-#define HAVE_POSIX_FALLOCATE 1
-#define HAVE_POSIX_MEMALIGN 1
-#define HAVE_RES_NINIT 1
-#define HAVE_STAT64 1
-#define HAVE_STDINT_H 1
-#define HAVE_STRNDUP 1
-#define HAVE_SYS_BITYPES_H 1
-#define HAVE_SYS_CDEFS_H 1
-#define HAVE_SYS_QUOTA_H 1
-#define HAVE_SYS_SYSMACROS_H 1
-#define HAVE_SYS_TYPES_H 1
-#define HAVE_THREAD_TLS_KEYWORD 1
-#define HAVE_TRUNCATE64 1
-#define HAVE_UNISTD_H 1
-#define HAVE_VALLOC 1
-#define HAVE_VA_COPY 1
-#define HAVE_VISIBILITY_ATTRIBUTE 1
-#define HAVE_VISIBILITY_HIDDEN_ATTRIBUTE 1
-#define HAVE__UNWIND_BACKTRACE 1
-#define HAVE___CXA_DEMANGLE 1
-#define JSGC_INCREMENTAL 1
-#define JS_DEFAULT_JITREPORT_GRANULARITY 3
-#define JS_GC_ZEAL 1
-#define MALLOC_H <malloc.h>
-#define MOZILLA_UAVERSION "35.0"
-#define MOZILLA_VERSION "35.0a1"
-#define MOZILLA_VERSION_U 35.0a1
-#define MOZ_APP_UA_NAME ""
-#define MOZ_APP_UA_VERSION "35.0a1"
-#define MOZ_B2G_OS_NAME ""
-#define MOZ_B2G_VERSION "1.0.0"
-#define MOZ_BUILD_APP xulrunner
-#define MOZ_CRASHREPORTER_ENABLE_PERCENT 100
-#define MOZ_DATA_REPORTING 1
-#define MOZ_DEBUG_SYMBOLS 1
-#define MOZ_DEMANGLE_SYMBOLS 1
-#define MOZ_DISTRIBUTION_ID "org.mozilla"
-#define MOZ_DLL_SUFFIX ".so"
-#define MOZ_DUMP_PAINTING 1
-#define MOZ_EME 1
-#define MOZ_ENABLE_QT5FEEDBACK 1
-#define MOZ_ENABLE_QT5GEOPOSITION 1
-#define MOZ_ENABLE_SKIA 1
-#define MOZ_FEEDS 1
-#define MOZ_FFMPEG 1
-#define MOZ_FMP4 1
-#define MOZ_GFX_OPTIMIZE_MOBILE 1
-#define MOZ_GL_PROVIDER GLContextProviderEGL
-#define MOZ_GSTREAMER 1
-#define MOZ_LOGGING 1
-#define MOZ_MACBUNDLE_ID org.mozilla.xulrunnerdebug
-#define MOZ_MEDIA_NAVIGATOR 1
-#define MOZ_MEMORY 1
-#define MOZ_MEMORY_DEBUG 1
-#define MOZ_MEMORY_LINUX 1
-#define MOZ_OMNIJAR 1
-#define MOZ_OPUS 1
-#define MOZ_PDF_PRINTING 1
-#define MOZ_PEERCONNECTION 1
-#define MOZ_PROFILELOCKING 1
-#define MOZ_PROFILING 1
-#define MOZ_RAW 1
-#define MOZ_REFLOW_PERF 1
-#define MOZ_REFLOW_PERF_DSP 1
-#define MOZ_SAMPLE_TYPE_S16 1
-#define MOZ_SCTP 1
-#define MOZ_SERVICES_COMMON 1
-#define MOZ_SERVICES_CRYPTO 1
-#define MOZ_SERVICES_HEALTHREPORT 1
-#define MOZ_SERVICES_METRICS 1
-#define MOZ_SERVICES_SYNC 1
-#define MOZ_SOCIAL 1
-#define MOZ_SRTP 1
-#define MOZ_STACKWALKING 1
-#define MOZ_STATIC_JS 1
-#define MOZ_TELEMETRY_DISPLAY_REV 2
-#define MOZ_TREE_CAIRO 1
-#define MOZ_TREE_PIXMAN 1
-#define MOZ_TREMOR 1
-#define MOZ_UPDATE_CHANNEL nightly
-#define MOZ_URL_CLASSIFIER 1
-#define MOZ_USER_DIR ".mozilla"
-#define MOZ_USE_NATIVE_POPUP_WINDOWS 1
-#define MOZ_VPX 1
-#define MOZ_VPX_ERROR_CONCEALMENT 1
-#define MOZ_WAVE 1
-#define MOZ_WEBM 1
-#define MOZ_WEBRTC 1
-#define MOZ_WEBRTC_ASSERT_ALWAYS 1
-#define MOZ_WEBRTC_SIGNALING 1
-#define MOZ_WEBSPEECH 1
-#define MOZ_WIDGET_QT 1
-#define MOZ_XUL 1
-#define MOZ_XULRUNNER 1
-#define NIGHTLY_BUILD 1
-#define NO_X11 1
-#define NS_ATTR_MALLOC __attribute__((malloc))
-#define NS_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
-#define QT_NO_KEYWORDS 1
-#define STDC_HEADERS 1
-#define TARGET_XPCOM_ABI "arm-eabi-gcc3"
-#define USE_SKIA 1
-#define USE_SKIA_GPU 1
-#define U_STATIC_IMPLEMENTATION 1
-#define U_USING_ICU_NAMESPACE 0
-#define VA_COPY va_copy
-#define VPX_ARM_ASM 1
-#define XP_LINUX 1
-#define XP_UNIX 1
-#define X_DISPLAY_MISSING 1
-#define _REENTRANT 1
-
-/*
- * The c99 defining the limit macros (UINT32_MAX for example), says:
- *
- * C++ implementations should define these macros only when
- * __STDC_LIMIT_MACROS is defined before <stdint.h> is included.
- *
- * The same also occurs with __STDC_CONSTANT_MACROS for the constant macros
- * (INT8_C for example) used to specify a literal constant of the proper type,
- * and with __STDC_FORMAT_MACROS for the format macros (PRId32 for example) used
- * with the fprintf function family.
- */
-#define __STDC_LIMIT_MACROS
-#define __STDC_CONSTANT_MACROS
-#if !defined(__STDC_FORMAT_MACROS)
-#define __STDC_FORMAT_MACROS
-#endif
-
-/*
- * Force-include Char16.h in order to define PRUnichar as char16_t everywhere.
- * Note that this should be the first #include to make sure that prtypes.h does
- * not attempt to define PRUnichar. This includes the following hunspell-specific
- * includes.
- *
- * We don't use this to build elfhack and elf-dynstr-gc since those builds happen
- * during the export tier. Also, disable this when building assembly files too.
- */
-#if !defined(ELFHACK_BUILD) && !defined(__ASSEMBLER__)
-#include "mozilla/Char16.h"
-#endif
-
-/*
- * Force-include hunspell_alloc_hooks.h and hunspell_fopen_hooks.h for hunspell,
- * so that we don't need to modify them directly.
- *
- * HUNSPELL_STATIC is defined in extensions/spellcheck/hunspell/src/Makefile.in,
- * unless --enable-system-hunspell is defined.
- */
-#if defined(HUNSPELL_STATIC)
-#include "hunspell_alloc_hooks.h"
-#include "hunspell_fopen_hooks.h"
-#endif
-
-/*
- * Force-include sdkdecls.h for building the chromium sandbox code.
- *
- * CHROMIUM_SANDBOX_BUILD is defined in security/sandbox/moz.build.
- * Note that this include path relies on the LOCAL_INCLUDES in that file.
- */
-#if defined(CHROMIUM_SANDBOX_BUILD) && defined(XP_WIN)
-#include "base/shim/sdkdecls.h"
-#endif
-
-#endif /* _MOZILLA_CONFIG_H_ */
-
diff --git a/www-client/firefox/files/mozilla_configure_regexp.patch b/www-client/firefox/files/mozilla_configure_regexp.patch
new file mode 100644
index 0000000..f35e445
--- /dev/null
+++ b/www-client/firefox/files/mozilla_configure_regexp.patch
@@ -0,0 +1,22 @@
+From: Jory A. Pratt <anarchy@gentoo.org>
+
+Note: the first occurrence of :space: is [:space:] (with a single pair
+of []), where it should be [[:space:]] (with two pairs of []).
+
+This causes the sed command to fail (with the error message quoted in
+my original report), driving to failure the whole configure step.
+
+https://bugzilla.mozilla.org/show_bug.cgi?id=1329252
+
+diff --git a/build/autoconf/icu.m4 b/build/autoconf/icu.m4
+--- a/build/autoconf/icu.m4
++++ b/build/autoconf/icu.m4
+@@ -70,7 +70,7 @@
+ fi
+ fi
+
+- version=`sed -n 's/^[[:space:]]*#[[:space:]]*define[[:space:]][[:space:]]*U_ICU_VERSION_MAJOR_NUM[[:space:]][[:space:]]*\([0-9][0-9]*\)[[:space:]]*$/\1/p' "$icudir/common/unicode/uvernum.h"`
++ version=`sed -n 's/^[[[:space:]]]*#[[:space:]]*define[[:space:]][[:space:]]*U_ICU_VERSION_MAJOR_NUM[[:space:]][[:space:]]*\([0-9][0-9]*\)[[:space:]]*$/\1/p' "$icudir/common/unicode/uvernum.h"`
+ if test x"$version" = x; then
+ AC_MSG_ERROR([cannot determine icu version number from uvernum.h header file $lineno])
+ fi \ No newline at end of file
diff --git a/www-client/firefox/files/mozilla_configure_regexp_esr.patch b/www-client/firefox/files/mozilla_configure_regexp_esr.patch
new file mode 100644
index 0000000..9e165ff
--- /dev/null
+++ b/www-client/firefox/files/mozilla_configure_regexp_esr.patch
@@ -0,0 +1,32 @@
+From: Jory A. Pratt <anarchy@gentoo.org>
+
+Note: the first occurrence of :space: is [:space:] (with a single pair
+of []), where it should be [[:space:]] (with two pairs of []).
+
+This causes the sed command to fail (with the error message quoted in
+my original report), driving to failure the whole configure step.
+
+https://bugzilla.mozilla.org/show_bug.cgi?id=1329252
+
+diff --git a/build/autoconf/icu.m4 b/build/autoconf/icu.m4
+--- a/build/autoconf/icu.m4
++++ b/build/autoconf/icu.m4
+@@ -68,17 +68,17 @@ if test -n "$USE_ICU"; then
+ icudir="$_topsrcdir/intl/icu/source"
+ if test ! -d "$icudir"; then
+ icudir="$_topsrcdir/../../intl/icu/source"
+ if test ! -d "$icudir"; then
+ AC_MSG_ERROR([Cannot find the ICU directory])
+ fi
+ fi
+
+- version=`sed -n 's/^[[:space:]]*#[[:space:]]*define[[:space:]][[:space:]]*U_ICU_VERSION_MAJOR_NUM[[:space:]][[:space:]]*\([0-9][0-9]*\)[[:space:]]*$/\1/p' "$icudir/common/unicode/uvernum.h"`
++ version=`sed -n 's/^[[[:space:]]]*#[[:space:]]*define[[:space:]][[:space:]]*U_ICU_VERSION_MAJOR_NUM[[:space:]][[:space:]]*\([0-9][0-9]*\)[[:space:]]*$/\1/p' "$icudir/common/unicode/uvernum.h"`
+ if test x"$version" = x; then
+ AC_MSG_ERROR([cannot determine icu version number from uvernum.h header file $lineno])
+ fi
+ MOZ_ICU_VERSION="$version"
+
+ if test "$OS_TARGET" = WINNT; then
+ MOZ_SHARED_ICU=1
+ fi
diff --git a/www-client/firefox/files/musl_drop_hunspell_alloc_hooks.patch b/www-client/firefox/files/musl_drop_hunspell_alloc_hooks.patch
new file mode 100644
index 0000000..f7997bc
--- /dev/null
+++ b/www-client/firefox/files/musl_drop_hunspell_alloc_hooks.patch
@@ -0,0 +1,13 @@
+--- a/extensions/spellcheck/hunspell/glue/hunspell_alloc_hooks.h.orig 2017-04-04 18:32:38.007556606 +0200
++++ b/extensions/spellcheck/hunspell/glue/hunspell_alloc_hooks.h 2017-04-04 18:34:02.380234036 +0200
+@@ -51,8 +51,8 @@
+ #include "mozHunspellAllocator.h"
+
+ #define malloc(size) HunspellAllocator::CountingMalloc(size)
+-#define calloc(count, size) HunspellAllocator::CountingCalloc(count, size)
+-#define free(ptr) HunspellAllocator::CountingFree(ptr)
++//#define calloc(count, size) HunspellAllocator::CountingCalloc(count, size)
++//#define free(ptr) HunspellAllocator::CountingFree(ptr)
+ #define realloc(ptr, size) HunspellAllocator::CountingRealloc(ptr, size)
+
+ #endif
diff --git a/www-client/firefox/files/update_h2_curve.patch b/www-client/firefox/files/update_h2_curve.patch
new file mode 100644
index 0000000..a1f0ffa
--- /dev/null
+++ b/www-client/firefox/files/update_h2_curve.patch
@@ -0,0 +1,30 @@
+From: Franziskus Kiefer <franziskuskiefer@gmail.com>
+
+Update keybits in H2
+
+https://bugzilla.mozilla.org/show_bug.cgi?id=1290037
+
+diff --git a/netwerk/protocol/http/Http2Session.cpp b/netwerk/protocol/http/Http2Session.cpp
+--- a/netwerk/protocol/http/Http2Session.cpp
++++ b/netwerk/protocol/http/Http2Session.cpp
+@@ -3516,18 +3516,18 @@ Http2Session::ConfirmTLSProfile()
+ RETURN_SESSION_ERROR(this, INADEQUATE_SECURITY);
+ }
+
+ uint32_t keybits = ssl->GetKEAKeyBits();
+ if (kea == ssl_kea_dh && keybits < 2048) {
+ LOG3(("Http2Session::ConfirmTLSProfile %p FAILED due to DH %d < 2048\n",
+ this, keybits));
+ RETURN_SESSION_ERROR(this, INADEQUATE_SECURITY);
+- } else if (kea == ssl_kea_ecdh && keybits < 256) { // 256 bits is "security level" of 128
+- LOG3(("Http2Session::ConfirmTLSProfile %p FAILED due to ECDH %d < 256\n",
++ } else if (kea == ssl_kea_ecdh && keybits < 224) { // see rfc7540 9.2.1.
++ LOG3(("Http2Session::ConfirmTLSProfile %p FAILED due to ECDH %d < 224\n",
+ this, keybits));
+ RETURN_SESSION_ERROR(this, INADEQUATE_SECURITY);
+ }
+
+ int16_t macAlgorithm = ssl->GetMACAlgorithmUsed();
+ LOG3(("Http2Session::ConfirmTLSProfile %p MAC Algortihm (aead==6) %d\n",
+ this, macAlgorithm));
+ if (macAlgorithm != nsISSLSocketControl::SSL_MAC_AEAD) {
diff --git a/www-client/firefox/firefox-52.0.2.ebuild b/www-client/firefox/firefox-52.0.2.ebuild
new file mode 100644
index 0000000..47e7af7
--- /dev/null
+++ b/www-client/firefox/firefox-52.0.2.ebuild
@@ -0,0 +1,398 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+VIRTUALX_REQUIRED="pgo"
+WANT_AUTOCONF="2.1"
+MOZ_ESR=""
+
+# This list can be updated with scripts/get_langs.sh from the mozilla overlay
+MOZ_LANGS=( ach af an ar as ast az bg bn-BD bn-IN br bs ca cak cs cy da de dsb
+el en en-GB en-US en-ZA eo es-AR es-CL es-ES es-MX et eu fa ff fi fr fy-NL ga-IE
+gd gl gn gu-IN he hi-IN hr hsb hu hy-AM id is it ja ka kab kk km kn ko lij lt lv
+mai mk ml mr ms nb-NO nl nn-NO or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq
+sr sv-SE ta te th tr uk uz vi xh zh-CN zh-TW )
+
+# Convert the ebuild version to the upstream mozilla version, used by mozlinguas
+MOZ_PV="${PV/_alpha/a}" # Handle alpha for SRC_URI
+MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
+MOZ_PV="${MOZ_PV/_rc/rc}" # Handle rc for SRC_URI
+
+if [[ ${MOZ_ESR} == 1 ]]; then
+ # ESR releases have slightly different version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+# Patch version
+PATCH="${PN}-52.0-patches-08"
+MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases"
+
+MOZCONFIG_OPTIONAL_GTK2ONLY=0
+MOZCONFIG_OPTIONAL_WIFI=1
+
+inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils mozconfig-v6.52 pax-utils fdo-mime autotools virtualx mozlinguas-v2
+
+DESCRIPTION="Firefox Web Browser"
+HOMEPAGE="http://www.mozilla.com/firefox"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+
+SLOT="0"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+IUSE="bindist egl +gmp-autoupdate hardened hwaccel jack nsplugin pgo rust selinux test"
+RESTRICT="!bindist? ( bindist )"
+
+PATCH_URIS=( https://dev.gentoo.org/~{anarchy,axs,polynomial-c}/mozilla/patchsets/${PATCH}.tar.xz )
+SRC_URI="${SRC_URI}
+ ${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.xz
+ ${PATCH_URIS[@]}"
+
+ASM_DEPEND=">=dev-lang/yasm-1.1"
+
+RDEPEND="
+ jack? ( virtual/jack )
+ >=dev-libs/nss-3.28.3
+ >=dev-libs/nspr-4.13.1
+ selinux? ( sec-policy/selinux-mozilla )"
+
+DEPEND="${RDEPEND}
+ pgo? ( >=sys-devel/gcc-4.5 )
+ rust? ( dev-lang/rust )
+ amd64? ( ${ASM_DEPEND} virtual/opengl )
+ x86? ( ${ASM_DEPEND} virtual/opengl )"
+
+S="${WORKDIR}/firefox-${MOZ_PV}"
+
+QA_PRESTRIPPED="usr/lib*/${PN}/firefox"
+
+BUILD_OBJ_DIR="${S}/ff"
+
+# allow GMP_PLUGIN_LIST to be set in an eclass or
+# overridden in the enviromnent (advanced hackers only)
+if [[ -z $GMP_PLUGIN_LIST ]]; then
+ GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
+fi
+
+pkg_setup() {
+ moz_pkgsetup
+
+ # Avoid PGO profiling problems due to enviroment leakage
+ # These should *always* be cleaned up anyway
+ unset DBUS_SESSION_BUS_ADDRESS \
+ DISPLAY \
+ ORBIT_SOCKETDIR \
+ SESSION_MANAGER \
+ XDG_SESSION_COOKIE \
+ XAUTHORITY
+
+ if ! use bindist; then
+ einfo
+ elog "You are enabling official branding. You may not redistribute this build"
+ elog "to any users on your network or the internet. Doing so puts yourself into"
+ elog "a legal problem with Mozilla Foundation"
+ elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag"
+ fi
+
+ if use pgo; then
+ einfo
+ ewarn "You will do a double build for profile guided optimization."
+ ewarn "This will result in your build taking at least twice as long as before."
+ fi
+
+ if use rust; then
+ einfo
+ ewarn "This is very experimental, should only be used by those developing firefox."
+ fi
+}
+
+pkg_pretend() {
+ # Ensure we have enough disk space to compile
+ if use pgo || use debug || use test ; then
+ CHECKREQS_DISK_BUILD="8G"
+ else
+ CHECKREQS_DISK_BUILD="4G"
+ fi
+ check-reqs_pkg_setup
+}
+
+src_unpack() {
+ unpack ${A}
+
+ # Unpack language packs
+ mozlinguas_src_unpack
+}
+
+src_prepare() {
+ # Apply our patches
+ eapply "${WORKDIR}/firefox"
+ eapply "${FILESDIR}"/musl_drop_hunspell_alloc_hooks.patch \
+ "${FILESDIR}"/"${PN}"-52.0.1-disable_cachegen.patch
+
+ # fix lto flag, causes command line error
+ sed -i -e "s|--param lto-partitions=1|-flto-partition=one|" \
+ "${S}"/security/sandbox/linux/moz.build \
+ "${S}"/ipc/app/pie/moz.build \
+ "${S}"/ipc/app/moz.build
+
+ # Enable gnomebreakpad
+ if use debug ; then
+ sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \
+ "${S}"/build/unix/run-mozilla.sh || die "sed failed!"
+ fi
+
+ # Drop -Wl,--as-needed related manipulation for ia64 as it causes ld sefgaults, bug #582432
+ if use ia64 ; then
+ sed -i \
+ -e '/^OS_LIBS += no_as_needed/d' \
+ -e '/^OS_LIBS += as_needed/d' \
+ "${S}"/widget/gtk/mozgtk/gtk2/moz.build \
+ "${S}"/widget/gtk/mozgtk/gtk3/moz.build \
+ || die "sed failed to drop --as-needed for ia64"
+ fi
+
+ # Ensure that our plugins dir is enabled as default
+ sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \
+ "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!"
+ sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \
+ "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!"
+
+ # Fix sandbox violations during make clean, bug 372817
+ sed -e "s:\(/no-such-file\):${T}\1:g" \
+ -i "${S}"/config/rules.mk \
+ -i "${S}"/nsprpub/configure{.in,} \
+ || die
+
+ # Don't exit with error when some libs are missing which we have in
+ # system.
+ sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \
+ -i "${S}"/browser/installer/Makefile.in || die
+
+ # Don't error out when there's no files to be removed:
+ sed 's@\(xargs rm\)$@\1 -f@' \
+ -i "${S}"/toolkit/mozapps/installer/packager.mk || die
+
+ # Keep codebase the same even if not using official branding
+ sed '/^MOZ_DEV_EDITION=1/d' \
+ -i "${S}"/browser/branding/aurora/configure.sh || die
+
+ # Allow user to apply any additional patches without modifing ebuild
+ eapply_user
+
+ # Autotools configure is now called old-configure.in
+ # This works because there is still a configure.in that happens to be for the
+ # shell wrapper configure script
+ eautoreconf old-configure.in
+
+ # Must run autoconf in js/src
+ cd "${S}"/js/src || die
+ eautoconf old-configure.in
+
+ # Need to update jemalloc's configure
+ cd "${S}"/memory/jemalloc/src || die
+ WANT_AUTOCONF= eautoconf
+}
+
+src_configure() {
+ MEXTENSIONS="default"
+ # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
+ # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
+ # get your own set of keys.
+ _google_api_key=AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc
+
+ ####################################
+ #
+ # mozconfig, CFLAGS and CXXFLAGS setup
+ #
+ ####################################
+
+ mozconfig_init
+ mozconfig_config
+
+ # enable JACK, bug 600002
+ mozconfig_use_enable jack
+
+ # It doesn't compile on alpha without this LDFLAGS
+ use alpha && append-ldflags "-Wl,--no-relax"
+
+ # Add full relro support for hardened
+ use hardened && append-ldflags "-Wl,-z,relro,-z,now"
+
+ # Only available on mozilla-overlay for experimentation -- Removed in Gentoo repo per bug 571180
+ use egl && mozconfig_annotate 'Enable EGL as GL provider' --with-gl-provider=EGL
+
+ use hardened && mozconfig_annotate '' --disable-startupcache
+
+ # Setup api key for location services
+ echo -n "${_google_api_key}" > "${S}"/google-api-key
+ mozconfig_annotate '' --with-google-api-keyfile="${S}/google-api-key"
+
+ mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
+
+ mozconfig_use_enable rust
+
+ # Allow for a proper pgo build
+ if use pgo; then
+ echo "mk_add_options PROFILE_GEN_SCRIPT='EXTRA_TEST_ARGS=10 \$(MAKE) -C \$(MOZ_OBJDIR) pgo-profile-run'" >> "${S}"/.mozconfig
+ fi
+
+ echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" >> "${S}"/.mozconfig
+ echo "mk_add_options XARGS=/usr/bin/xargs" >> "${S}"/.mozconfig
+
+ # Finalize and report settings
+ mozconfig_final
+
+ if [[ $(gcc-major-version) -lt 4 ]]; then
+ append-cxxflags -fno-stack-protector
+ fi
+
+ # workaround for funky/broken upstream configure...
+ SHELL="${SHELL:-${EPREFIX%/}/bin/bash}" \
+ emake -f client.mk configure
+}
+
+src_compile() {
+ if use pgo; then
+ addpredict /root
+ addpredict /etc/gconf
+ # Reset and cleanup environment variables used by GNOME/XDG
+ gnome2_environment_reset
+
+ # Firefox tries to use dri stuff when it's run, see bug 380283
+ shopt -s nullglob
+ cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
+ if test -z "${cards}"; then
+ cards=$(echo -n /dev/ati/card* /dev/nvidiactl* | sed 's/ /:/g')
+ if test -n "${cards}"; then
+ # Binary drivers seem to cause access violations anyway, so
+ # let's use indirect rendering so that the device files aren't
+ # touched at all. See bug 394715.
+ export LIBGL_ALWAYS_INDIRECT=1
+ fi
+ fi
+ shopt -u nullglob
+ [[ -n "${cards}" ]] && addpredict "${cards}"
+
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX%/}/bin/bash}" \
+ virtx emake -f client.mk profiledbuild || die "virtx emake failed"
+ else
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX%/}/bin/bash}" \
+ emake -f client.mk realbuild
+ fi
+
+}
+
+src_install() {
+ cd "${BUILD_OBJ_DIR}" || die
+
+ # Pax mark xpcshell for hardened support, only used for startupcache creation.
+ pax-mark m "${BUILD_OBJ_DIR}"/dist/bin/xpcshell
+
+ # Add our default prefs for firefox
+ cp "${FILESDIR}"/gentoo-default-prefs.js-1 \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+
+ mozconfig_install_prefs \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js"
+
+ # Augment this with hwaccel prefs
+ if use hwaccel ; then
+ cat "${FILESDIR}"/gentoo-hwaccel-prefs.js-1 >> \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+ fi
+
+ echo "pref(\"extensions.autoDisableScopes\", 3);" >> \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+
+ if use nsplugin; then
+ echo "pref(\"plugin.load_flash_only\", false);" >> \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+ fi
+
+ local plugin
+ use gmp-autoupdate || for plugin in "${GMP_PLUGIN_LIST[@]}" ; do
+ echo "pref(\"media.${plugin}.autoupdate\", false);" >> \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+ done
+
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX%/}/bin/bash}" \
+ emake DESTDIR="${D}" install
+
+ # Install language packs
+ mozlinguas_src_install
+
+ local size sizes icon_path icon name
+ if use bindist; then
+ sizes="16 32 48"
+ icon_path="${S}/browser/branding/aurora"
+ # Firefox's new rapid release cycle means no more codenames
+ # Let's just stick with this one...
+ icon="aurora"
+ name="Aurora"
+
+ # Override preferences to set the MOZ_DEV_EDITION defaults, since we
+ # don't define MOZ_DEV_EDITION to avoid profile debaucles.
+ # (source: browser/app/profile/firefox.js)
+ cat >>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" <<PROFILE_EOF
+pref("app.feedback.baseURL", "https://input.mozilla.org/%LOCALE%/feedback/firefoxdev/%VERSION%/");
+sticky_pref("lightweightThemes.selectedThemeID", "firefox-devedition@mozilla.org");
+sticky_pref("browser.devedition.theme.enabled", true);
+sticky_pref("devtools.theme", "dark");
+PROFILE_EOF
+
+ else
+ sizes="16 22 24 32 256"
+ icon_path="${S}/browser/branding/official"
+ icon="${PN}"
+ name="Mozilla Firefox"
+ fi
+
+ # Install icons and .desktop for menu entry
+ for size in ${sizes}; do
+ insinto "/usr/share/icons/hicolor/${size}x${size}/apps"
+ newins "${icon_path}/default${size}.png" "${icon}.png"
+ done
+ # The 128x128 icon has a different name
+ insinto "/usr/share/icons/hicolor/128x128/apps"
+ newins "${icon_path}/mozicon128.png" "${icon}.png"
+ # Install a 48x48 icon into /usr/share/pixmaps for legacy DEs
+ newicon "${icon_path}/content/icon48.png" "${icon}.png"
+ newmenu "${FILESDIR}/icon/${PN}.desktop" "${PN}.desktop"
+ sed -i -e "s:@NAME@:${name}:" -e "s:@ICON@:${icon}:" \
+ "${ED}/usr/share/applications/${PN}.desktop" || die
+
+ # Add StartupNotify=true bug 237317
+ if use startup-notification ; then
+ echo "StartupNotify=true"\
+ >> "${ED}/usr/share/applications/${PN}.desktop" \
+ || die
+ fi
+
+ # Required in order to use plugins and even run firefox on hardened.
+ pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/{firefox,firefox-bin,plugin-container}
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ # Update mimedb for the new .desktop file
+ fdo-mime_desktop_database_update
+ gnome2_icon_cache_update
+
+ if ! use gmp-autoupdate ; then
+ elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
+ elog "installing into new profiles:"
+ local plugin
+ for plugin in "${GMP_PLUGIN_LIST[@]}"; do elog "\t ${plugin}" ; done
+ fi
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}
diff --git a/www-client/firefox/firefox-53.0.3.ebuild b/www-client/firefox/firefox-53.0.3.ebuild
new file mode 100644
index 0000000..0dbe145
--- /dev/null
+++ b/www-client/firefox/firefox-53.0.3.ebuild
@@ -0,0 +1,422 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+VIRTUALX_REQUIRED="pgo"
+WANT_AUTOCONF="2.1"
+MOZ_ESR=""
+
+# This list can be updated with scripts/get_langs.sh from the mozilla overlay
+MOZ_LANGS=( ach af an ar as ast az bg bn-BD bn-IN br bs ca cak cs cy da de dsb
+el en en-GB en-US en-ZA eo es-AR es-CL es-ES es-MX et eu fa ff fi fr fy-NL ga-IE
+gd gl gn gu-IN he hi-IN hr hsb hu hy-AM id is it ja ka kab kk km kn ko lij lt lv
+mai mk ml mr ms nb-NO nl nn-NO or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq
+sr sv-SE ta te th tr uk uz vi xh zh-CN zh-TW )
+
+# Convert the ebuild version to the upstream mozilla version, used by mozlinguas
+MOZ_PV="${PV/_alpha/a}" # Handle alpha for SRC_URI
+MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
+MOZ_PV="${MOZ_PV/_rc/rc}" # Handle rc for SRC_URI
+
+if [[ ${MOZ_ESR} == 1 ]]; then
+ # ESR releases have slightly different version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+# Patch version
+PATCH="${PN}-53.0-patches-02"
+MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases"
+
+MOZCONFIG_OPTIONAL_GTK2ONLY=0
+MOZCONFIG_OPTIONAL_WIFI=1
+
+inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils mozconfig-v6.53 pax-utils fdo-mime autotools virtualx mozlinguas-v2
+
+DESCRIPTION="Firefox Web Browser"
+HOMEPAGE="http://www.mozilla.com/firefox"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+
+SLOT="0"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+IUSE="bindist egl +gmp-autoupdate hardened hwaccel jack nsplugin pgo rust selinux test"
+RESTRICT="!bindist? ( bindist )"
+
+PATCH_URIS=( https://dev.gentoo.org/~{anarchy,axs,polynomial-c}/mozilla/patchsets/${PATCH}.tar.xz )
+SRC_URI="${SRC_URI}
+ ${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.xz
+ ${PATCH_URIS[@]}"
+
+ASM_DEPEND=">=dev-lang/yasm-1.1"
+
+RDEPEND="
+ jack? ( virtual/jack )
+ >=dev-libs/nss-3.29.5
+ >=dev-libs/nspr-4.13.1
+ selinux? ( sec-policy/selinux-mozilla )"
+
+DEPEND="${RDEPEND}
+ pgo? ( >=sys-devel/gcc-4.5 )
+ rust? ( dev-lang/rust )
+ amd64? ( ${ASM_DEPEND} virtual/opengl )
+ x86? ( ${ASM_DEPEND} virtual/opengl )"
+
+S="${WORKDIR}/firefox-${MOZ_PV}"
+
+QA_PRESTRIPPED="usr/lib*/${PN}/firefox"
+
+BUILD_OBJ_DIR="${S}/ff"
+
+# allow GMP_PLUGIN_LIST to be set in an eclass or
+# overridden in the enviromnent (advanced hackers only)
+if [[ -z $GMP_PLUGIN_LIST ]]; then
+ GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
+fi
+
+pkg_setup() {
+ moz_pkgsetup
+
+ # Avoid PGO profiling problems due to enviroment leakage
+ # These should *always* be cleaned up anyway
+ unset DBUS_SESSION_BUS_ADDRESS \
+ DISPLAY \
+ ORBIT_SOCKETDIR \
+ SESSION_MANAGER \
+ XDG_SESSION_COOKIE \
+ XAUTHORITY
+
+ if ! use bindist; then
+ einfo
+ elog "You are enabling official branding. You may not redistribute this build"
+ elog "to any users on your network or the internet. Doing so puts yourself into"
+ elog "a legal problem with Mozilla Foundation"
+ elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag"
+ fi
+
+ if use pgo; then
+ einfo
+ ewarn "You will do a double build for profile guided optimization."
+ ewarn "This will result in your build taking at least twice as long as before."
+ fi
+
+ if use rust; then
+ einfo
+ ewarn "This is very experimental, should only be used by those developing firefox."
+ fi
+}
+
+pkg_pretend() {
+ # Ensure we have enough disk space to compile
+ if use pgo || use debug || use test ; then
+ CHECKREQS_DISK_BUILD="8G"
+ else
+ CHECKREQS_DISK_BUILD="4G"
+ fi
+ check-reqs_pkg_setup
+}
+
+src_unpack() {
+ unpack ${A}
+
+ # Unpack language packs
+ mozlinguas_src_unpack
+}
+
+src_prepare() {
+ # Apply our patches
+ eapply "${WORKDIR}/firefox"
+ eapply "${FILESDIR}"/musl_drop_hunspell_alloc_hooks.patch
+ eapply "${FILESDIR}"/${PN}-52.0.1-disable_cachegen.patch
+ eapply "${FILESDIR}"/${PN}-53-turn_off_crash_on_seccomp_fail.patch
+
+ # fix lto flag, causes command line error
+ sed -i -e "s|--param lto-partitions=1|-flto-partition=one|" \
+ "${S}"/security/sandbox/linux/moz.build \
+ "${S}"/ipc/app/pie/moz.build \
+ "${S}"/ipc/app/moz.build
+
+
+ # Enable gnomebreakpad
+ if use debug ; then
+ sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \
+ "${S}"/build/unix/run-mozilla.sh || die "sed failed!"
+ fi
+
+ # Drop -Wl,--as-needed related manipulation for ia64 as it causes ld sefgaults, bug #582432
+ if use ia64 ; then
+ sed -i \
+ -e '/^OS_LIBS += no_as_needed/d' \
+ -e '/^OS_LIBS += as_needed/d' \
+ "${S}"/widget/gtk/mozgtk/gtk2/moz.build \
+ "${S}"/widget/gtk/mozgtk/gtk3/moz.build \
+ || die "sed failed to drop --as-needed for ia64"
+ fi
+
+ # Ensure that our plugins dir is enabled as default
+ sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \
+ "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!"
+ sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \
+ "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!"
+
+ # Fix sandbox violations during make clean, bug 372817
+ sed -e "s:\(/no-such-file\):${T}\1:g" \
+ -i "${S}"/config/rules.mk \
+ -i "${S}"/nsprpub/configure{.in,} \
+ || die
+
+ # Don't exit with error when some libs are missing which we have in
+ # system.
+ sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \
+ -i "${S}"/browser/installer/Makefile.in || die
+
+ # Don't error out when there's no files to be removed:
+ sed 's@\(xargs rm\)$@\1 -f@' \
+ -i "${S}"/toolkit/mozapps/installer/packager.mk || die
+
+ # Keep codebase the same even if not using official branding
+ sed '/^MOZ_DEV_EDITION=1/d' \
+ -i "${S}"/browser/branding/aurora/configure.sh || die
+
+ # Allow user to apply any additional patches without modifing ebuild
+ eapply_user
+
+ # Autotools configure is now called old-configure.in
+ # This works because there is still a configure.in that happens to be for the
+ # shell wrapper configure script
+ eautoreconf old-configure.in
+
+ # Must run autoconf in js/src
+ cd "${S}"/js/src || die
+ eautoconf old-configure.in
+
+ # Need to update jemalloc's configure
+ cd "${S}"/memory/jemalloc/src || die
+ WANT_AUTOCONF= eautoconf
+}
+
+src_configure() {
+ MEXTENSIONS="default"
+ # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
+ # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
+ # get your own set of keys.
+ _google_api_key=AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc
+
+ ####################################
+ #
+ # mozconfig, CFLAGS and CXXFLAGS setup
+ #
+ ####################################
+
+ mozconfig_init
+ mozconfig_config
+
+ # enable JACK, bug 600002
+ mozconfig_use_enable jack
+
+ # It doesn't compile on alpha without this LDFLAGS
+ use alpha && append-ldflags "-Wl,--no-relax"
+
+ # Add full relro support for hardened
+ use hardened && append-ldflags "-Wl,-z,relro,-z,now"
+
+ # Only available on mozilla-overlay for experimentation -- Removed in Gentoo repo per bug 571180
+ use egl && mozconfig_annotate 'Enable EGL as GL provider' --with-gl-provider=EGL
+
+ use hardened && mozconfig_annotate '' --disable-startupcache
+
+ # Setup api key for location services
+ echo -n "${_google_api_key}" > "${S}"/google-api-key
+ mozconfig_annotate '' --with-google-api-keyfile="${S}/google-api-key"
+
+ mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
+
+ mozconfig_use_enable rust
+
+ # Allow for a proper pgo build
+ if use pgo; then
+ echo "mk_add_options PROFILE_GEN_SCRIPT='EXTRA_TEST_ARGS=10 \$(MAKE) -C \$(MOZ_OBJDIR) pgo-profile-run'" >> "${S}"/.mozconfig
+ fi
+
+ echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" >> "${S}"/.mozconfig
+ echo "mk_add_options XARGS=/usr/bin/xargs" >> "${S}"/.mozconfig
+
+ # Finalize and report settings
+ mozconfig_final
+
+ if [[ $(gcc-major-version) -lt 4 ]]; then
+ append-cxxflags -fno-stack-protector
+ fi
+
+ # workaround for funky/broken upstream configure...
+ SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
+ emake -f client.mk configure
+}
+
+src_compile() {
+ if use pgo; then
+ addpredict /root
+ addpredict /etc/gconf
+ # Reset and cleanup environment variables used by GNOME/XDG
+ gnome2_environment_reset
+
+ # Firefox tries to use dri stuff when it's run, see bug 380283
+ shopt -s nullglob
+ cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
+ if test -z "${cards}"; then
+ cards=$(echo -n /dev/ati/card* /dev/nvidiactl* | sed 's/ /:/g')
+ if test -n "${cards}"; then
+ # Binary drivers seem to cause access violations anyway, so
+ # let's use indirect rendering so that the device files aren't
+ # touched at all. See bug 394715.
+ export LIBGL_ALWAYS_INDIRECT=1
+ fi
+ fi
+ shopt -u nullglob
+ [[ -n "${cards}" ]] && addpredict "${cards}"
+
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
+ virtx emake -f client.mk profiledbuild || die "virtx emake failed"
+ else
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
+ emake -f client.mk realbuild
+ fi
+
+}
+
+src_install() {
+ cd "${BUILD_OBJ_DIR}" || die
+
+ # Pax mark xpcshell for hardened support, only used for startupcache creation.
+ pax-mark m "${BUILD_OBJ_DIR}"/dist/bin/xpcshell
+
+ # Add our default prefs for firefox
+ cp "${FILESDIR}"/gentoo-default-prefs.js-1 \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+
+ mozconfig_install_prefs \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js"
+
+ # Augment this with hwaccel prefs
+ if use hwaccel ; then
+ cat "${FILESDIR}"/gentoo-hwaccel-prefs.js-1 >> \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+ fi
+
+ echo "pref(\"extensions.autoDisableScopes\", 3);" >> \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+
+ if use nsplugin; then
+ echo "pref(\"plugin.load_flash_only\", false);" >> \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+ fi
+
+ local plugin
+ use gmp-autoupdate || for plugin in "${GMP_PLUGIN_LIST[@]}" ; do
+ echo "pref(\"media.${plugin}.autoupdate\", false);" >> \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+ done
+
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
+ emake DESTDIR="${D}" install
+
+ # Install language packs
+ mozlinguas_src_install
+
+ local size sizes icon_path icon name
+ if use bindist; then
+ sizes="16 32 48"
+ icon_path="${S}/browser/branding/aurora"
+ # Firefox's new rapid release cycle means no more codenames
+ # Let's just stick with this one...
+ icon="aurora"
+ name="Aurora"
+
+ # Override preferences to set the MOZ_DEV_EDITION defaults, since we
+ # don't define MOZ_DEV_EDITION to avoid profile debaucles.
+ # (source: browser/app/profile/firefox.js)
+ cat >>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" <<PROFILE_EOF
+pref("app.feedback.baseURL", "https://input.mozilla.org/%LOCALE%/feedback/firefoxdev/%VERSION%/");
+sticky_pref("lightweightThemes.selectedThemeID", "firefox-devedition@mozilla.org");
+sticky_pref("browser.devedition.theme.enabled", true);
+sticky_pref("devtools.theme", "dark");
+PROFILE_EOF
+
+ else
+ sizes="16 22 24 32 256"
+ icon_path="${S}/browser/branding/official"
+ icon="${PN}"
+ name="Mozilla Firefox"
+ fi
+
+ # Install icons and .desktop for menu entry
+ for size in ${sizes}; do
+ insinto "/usr/share/icons/hicolor/${size}x${size}/apps"
+ newins "${icon_path}/default${size}.png" "${icon}.png"
+ done
+ # The 128x128 icon has a different name
+ insinto "/usr/share/icons/hicolor/128x128/apps"
+ newins "${icon_path}/mozicon128.png" "${icon}.png"
+ # Install a 48x48 icon into /usr/share/pixmaps for legacy DEs
+ newicon "${icon_path}/content/icon48.png" "${icon}.png"
+ newmenu "${FILESDIR}/icon/${PN}.desktop" "${PN}.desktop"
+ sed -i -e "s:@NAME@:${name}:" -e "s:@ICON@:${icon}:" \
+ "${ED}/usr/share/applications/${PN}.desktop" || die
+
+ # Add StartupNotify=true bug 237317
+ if use startup-notification ; then
+ echo "StartupNotify=true"\
+ >> "${ED}/usr/share/applications/${PN}.desktop" \
+ || die
+ fi
+
+ # Required in order to use plugins and even run firefox on hardened.
+ pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/{firefox,firefox-bin,plugin-container}
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+
+ # if the apulse libs are available in MOZILLA_FIVE_HOME then apulse
+ # doesn't need to be forced into the LD_LIBRARY_PATH
+ if use pulseaudio && has_version ">=media-sound/apulse-0.1.9" ; then
+ einfo "APULSE found - Generating library symlinks for sound support"
+ local lib
+ pushd "${ED}"${MOZILLA_FIVE_HOME} &>/dev/null || die
+ for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
+ # a quickpkg rolled by hand will grab symlinks as part of the package,
+ # so we need to avoid creating them if they already exist.
+ if ! [ -L ${lib##*/} ]; then
+ ln -s "${lib}" ${lib##*/} || die
+ fi
+ done
+ popd &>/dev/null || die
+ fi
+}
+
+pkg_postinst() {
+ # Update mimedb for the new .desktop file
+ fdo-mime_desktop_database_update
+ gnome2_icon_cache_update
+
+ if ! use gmp-autoupdate ; then
+ elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
+ elog "installing into new profiles:"
+ local plugin
+ for plugin in "${GMP_PLUGIN_LIST[@]}"; do elog "\t ${plugin}" ; done
+ fi
+
+ if use pulseaudio && has_version ">=media-sound/apulse-0.1.9"; then
+ elog "Apulse was detected at merge time on this system and so it will always be"
+ elog "used for sound. If you wish to use pulseaudio instead please unmerge"
+ elog "media-sound/apulse."
+ fi
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}