commit:     5e8bdbd1f25e14b03e5f46650f1d1d63d8d6e3c2
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Mon Dec  2 17:50:49 2019 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Mon Dec  2 18:02:01 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5e8bdbd1

www-client/firefox: bump to v71.0

Package-Manager: Portage-2.3.80, Repoman-2.3.19
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 www-client/firefox/Manifest            |  93 ++++
 www-client/firefox/firefox-71.0.ebuild | 802 +++++++++++++++++++++++++++++++++
 2 files changed, 895 insertions(+)

diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 9f1672454d3..73e3a1eb57f 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -277,3 +277,96 @@ DIST firefox-70.0.1-xh.xpi 473961 BLAKE2B 
218520f387dc574fabb1d9a1361156293592d5
 DIST firefox-70.0.1-zh-CN.xpi 568442 BLAKE2B 
305ca92f7011197be727b3203bb925a562cea719f22e6f8e766b7fec629f34d1afa3fa27b32268988358818a3c09f0e63f5a9053bae3e038de5c1c7f1e3c6149
 SHA512 
8cfd758f6d9366ddbc90a90a01ee8cd4a1920bdcacf68d556cabe679bb05797e6dbd1827f987cdb91e96a4490534428de7a44b2b98b3b65833e08b97971988ba
 DIST firefox-70.0.1-zh-TW.xpi 568302 BLAKE2B 
ff06766fe46d17e7393e93554901548287b8d193ed3ca85c124b44d70b188a76b00c7bd858de6538ba30c8d2a602710a1289c14c5cbcdd74a5d2e80f89eaec5a
 SHA512 
31289f8e96b60683dc9d15da183cccea99d260b95f9155463a1b406d520c33367c9d7760a04ff9fafd1528e89ded66ca45dce3d6d971f91ccab4dbd67cccc803
 DIST firefox-70.0.1.source.tar.xz 326335800 BLAKE2B 
a7f748719a42f5929150f8a6e9ff6e11d3f92deedc30a1c1f0b6ec7fc3cddc76f7faffc78e0544949599d6142a9fd540cfe467d393c42bcbe9ea027212a937af
 SHA512 
798e18620e50ef10f184b6e43c88cfbad8a446ae005204582bccc2958107910617375b0ff622c85fb768b48d490a31ea7674eef9f0c415aa72cd958f09a9f725
+DIST firefox-71.0-ach.xpi 484887 BLAKE2B 
197cb8a6be2d37d9f1bf2c5517e66265792e44b951af8476401cd5e81665cbb9c4a57f626a54226dcd38c55bf677dccd93ebb3baf214feebeee278a133b17e7b
 SHA512 
c9c640d57ac5d09ebbd1a971f67297ebca72af2a62ccb64f0627bfbd80740d1a741549a453488478e72323c15e7b9ba16d7d52f84b73fb856af390f7fce5614c
+DIST firefox-71.0-af.xpi 444403 BLAKE2B 
c43aa30af52b5694667fdfbc7371ab888214ed5ec74411cc3b09e2596664c31cea0168adf99c3e010323b7af1fda94799e35752ba09ce83829aac0ea4ab151ef
 SHA512 
207d1cb4f98557eeb1010618769496542bf383508f7ff6512268958b1d37b29ffd99bfd3409d6cebd56a21e562c50db66db0ac6cc1549daa9cf1a953ebbfbe9d
+DIST firefox-71.0-an.xpi 493802 BLAKE2B 
55eb11801907854d9092684904adafab638602cfdc71ba17e550442efe60285ae880a91646c52a868586bb939197772f1c615bb90af2039b48614130ffcbd8a8
 SHA512 
28c659b13ad84aa3d17fce5a760f6298a50ebc3d7b21636ce87b0623ebcd6af169da19c60075c681b38be674401633744358da789b29c3d4513e711cdac427c7
+DIST firefox-71.0-ar.xpi 556346 BLAKE2B 
f5228bcd2ad0efda95ab45a08534c4f645654b0d3a5ab9e326cd1765aa026b214bcffcaa9146a79235671afce58c05911fb00e807689dbdef94df6639cdaf757
 SHA512 
919d9d811b9aa567d473f7b2a1bdc3042c94e532fe22f0041c5fbdb0141b04bd693c5ff629765c1df4c4ec447c181c56b8b5cb60e163a087c137e6cbe38a3287
+DIST firefox-71.0-ast.xpi 491415 BLAKE2B 
081d14c20e145901a141a2b2428b425211189e7b110579b721b311d89bc45663890c2dec8f529403b9f30f9ad3b27888e8a8fc097170d6113aaecd9c538d04e0
 SHA512 
2e4723b0e7966217c059d6cd68b21e3aafe416678d8590fa53b4500981903c59e644b038b3327994834cc65f386b2d0e14cf67bfa61fbd80056efb47cddb7864
+DIST firefox-71.0-az.xpi 523562 BLAKE2B 
a3ccbeebad27fa3a631c606a08856e25079f8baf3921cf06d80a15dd7e1e4b461b9a4be423672f71aa48f45ccb110535c15826f4d93c69c851c384e2585bb758
 SHA512 
2766fd3ee327552d93505f81fe9398f0fea679aac7a0314c73a1f31a38798083ba53e515b4521e7c5336b2301f2d8426dd5e17ab5f7427ea41a7b94a43642d32
+DIST firefox-71.0-be.xpi 617161 BLAKE2B 
fd53af1589067a097317795601f5a49c1cf524db26ce656c4beee647bf2dcbd929f389fee4dd9372f30c625c3f5550af5e32d53a3382b0bbe6d7aa9599d62999
 SHA512 
53f4284da880e3e52b38703a17eb8c3913efa7e4280b75176839f1739055883e7c924da5f39ab26f6e2538a891b6af9c2705c8c5eb80214f1eb1eee7b7f9234d
+DIST firefox-71.0-bg.xpi 577531 BLAKE2B 
1fc72c82365758fb0b83edcadc2f97759240a21179bbf9c8d4c9ba3bbba947d8691cb8efaae8e5aba4287b75c190e31ab3ac1e65f27f0027233418e37e01bf8d
 SHA512 
ada68bd85bcf88c9930678cce015d0d18ab7699f3b1b33ed269e55ac12f3738784e63adb97f9e0df44ff293e91999abd5a0b86995dd7c0ce4798a4d943ddc3da
+DIST firefox-71.0-bn.xpi 611315 BLAKE2B 
941ff635d6812485148d2dcb614d301ae6a74e29969a53cf307bd6f8fd7dd4cd8766bffa53b43b2b2a6bf4319ef00bcb19037c318c9a7d4a540d6cd8f192ada3
 SHA512 
c0a66b87a516fd32deb86f2b2fd01467e524264f86edafe866ec2c170a5c2890a1d1dcf141a933957c77d56f14737f30bf3571e3d9e3786b964471707761b61d
+DIST firefox-71.0-br.xpi 524590 BLAKE2B 
3e53224c84af2d5a7b22a75d547f96ca9c64b02077525b27de27a1c22089766080b39596a7eeff246bc57c17c75326bf1e9051cd0fce48c4fe842b83b07b3044
 SHA512 
33c982688c6002e706eacc37562ca08cfe5653f7cf01144cc37680796a34fe1bd31e35adc828948403712ffd93e1edb5614e56d5c662d0e7b133ba9482e80ae8
+DIST firefox-71.0-bs.xpi 493905 BLAKE2B 
a25776aff74e13c33ae791495ccc580944abc9d00decba35843592fafddf8ae6e1aed4ea576d103963364d3fcc80af18cbb3d601b1231e3d73e6f0d0f691474d
 SHA512 
be820b2052ee903f5fb0b37638ee366993383f4af48436bdb346bd4e8b76c52e74785abdffd18c325e8f4f5adf56575cdf6dc452d1a3be13fa9f769ea1ab2418
+DIST firefox-71.0-ca.xpi 529757 BLAKE2B 
c42370312ab45fdda11c3f8c13b4ed945550eca5c5482ec19d136dc04cc25264b8d37cb276ad72346688658939423acb160c6c8844bc8c5fd2b49f969956a805
 SHA512 
a1b2fd534b76282bcec2834089fe26f76f89c8f35aaec15793e976b32f971074ad12f8c253f1480cf389dc1ac954ed40427efdfc6d6717194136c9d5018d7749
+DIST firefox-71.0-cak.xpi 558789 BLAKE2B 
407c7f18a503c4fa3cfabaea3e33a0d562ee023098246adff32b59c6b904010d76177bbc064c7cfec6af4c08e16202d6d5074dc668fd64dbcaffd91a86a402b6
 SHA512 
f509161da3e4051f41d41be27670e684082e982db2d8e5954749bd822ce635a3f704c01a668f843f854309a4e38d77735bb64a9956589fc12663e5b1491021a1
+DIST firefox-71.0-cs.xpi 550385 BLAKE2B 
a2919887bfde5917db0b676d5e18407f65fc79afb4b93db97be1bdd511e49c18ca244b5e2efc94c65698fec7371296469f66e7965c6331f47911c33fc33821f7
 SHA512 
3f972a4c665620a12cb5ed05c63e05074d3d1d36bf89551e78b3abbe5cb8c6b238adfd3f3b0c70885196761d6733bb2f62721c0aa01523a1906d7bdc43130d22
+DIST firefox-71.0-cy.xpi 535332 BLAKE2B 
37917354e3f252a69e4ef86e959d61a884874bc84827ee55013504eae4b1a5bef3b02a86e3729ff4e2a1715826ca29c5dc1451c7a94c815e9a11784eb74f35a1
 SHA512 
312751d0653fbae6902f9d138c12f4bde64ad04adacb92246a97713bb3ffc43906fc28b7fbcf8fd23d0cc3227c78cf4256af091539a1e8f1cb37843389892796
+DIST firefox-71.0-da.xpi 518337 BLAKE2B 
2aa1811bcb43eb2be433806ad89c2d25abfaec0bfb4e2ce5ef7db90dab88f1783e4d4f54d2a9e13d2dc6e2eb16acb76fa818bbfebd74eb03b130fe3072a3b1ea
 SHA512 
f6ed8cd0a7465c4f29d0656ccf20ed9b5f254b46a4fecf43839aa94eef3dc90d9f9f6ad9928a1cf1e1ec303ca91fe5f3e6f0c3922aa24c70aae0181d29b63626
+DIST firefox-71.0-de.xpi 550052 BLAKE2B 
b8e8d5f28ea2dc38e61060a2006e36c301d91945422432543476a9889789f7b323652a445e2bb790bd2d8fe266ed0cc32d26ed23e2e782ec362baf7779258819
 SHA512 
2ddfabb4845616467f434586c017bfd30dec20b2dcc7935de3f8b71019262c4e9d973a995edd6edfd8c71c9e491d2a39f2074162cc7a96e0e8396f4cf36bc822
+DIST firefox-71.0-dsb.xpi 559392 BLAKE2B 
c61beac29f95a4d7c5cf102619e8c64fe49fd1b1977f8d6ea9d78d679760400888befc84afe7305c384892a51992eb61a01ae1489f1c8889eef6475178df28e4
 SHA512 
280ef04b4f150d5e41d13fbf1583bba6715f95205a7b9528be4b1fcbae1cb28060da3a75f07402ded5beac536a38d51bc1f6612388035d1735f2c1af6e316cc6
+DIST firefox-71.0-el.xpi 621206 BLAKE2B 
01162d592c951c2eade042391e259caaeea607ac9a1802e752f686b597fd8e5da7aa4bee4e2828f947a5441e5e6402d7fb3c858bdcad6877a5d2d25210abbb37
 SHA512 
885a2c2be8ff36f3ca0045e8479f313daa36c63a20522d96da6618073526ee413b7631e8da390ed4e4d3b0c3fd0320185a781ca69bec538bea0a0551b6e6afd3
+DIST firefox-71.0-en-CA.xpi 505706 BLAKE2B 
86ed5edfb03a3b613f0cf6b6bdcd3c6df977cab63a856f3005dadd4fa6d528958130c97f56acf3b94b869ed84ac6e87a3ca1dd25e6ba305b1118eb1b158ba792
 SHA512 
9553398f0d8b55bc4be73dafceeba5f3d18545ec3d694bc7719df7b4a2b3ad0bf940c2e5c19eb3221c3030c861ac7544e4609a6b01477811936749580b16bff1
+DIST firefox-71.0-en-GB.xpi 503397 BLAKE2B 
6148187262cbcca4d6da1b7fed0800960f6fda3487377218455e60325c57071df26382b7d8e5954e0af89777899e7e128d4c7cea2d43b10298260c14ec3f0b7c
 SHA512 
1c036211d62719905fd16b9bc466f2939553451f82f4320a2721741a3b7b4ba767b6088ba8136dbe3ae99681ae735abb34e8a86a70c41af5401e959bf566ba06
+DIST firefox-71.0-eo.xpi 531526 BLAKE2B 
bc448f569377f120c7faa68d28b07a4a9ffbcbe8b6ff5959a6b03dbf7aafbd7ef16170e54fc13eb753dd1dcece0e8e2c69d55602090c887cc5fc36afcf074a26
 SHA512 
437bbefd3c1511ac37c0f9c3d726cde6d99c043707b68388084ef96f422639b2b228f614c24dfd6a973d1df77dbb37fb76c2ae7b4f2398cf3ac3b21c42c61c62
+DIST firefox-71.0-es-AR.xpi 540653 BLAKE2B 
922f1292e638c443932db188aee9f2fe8b557eab11c02a3d67cb70cee5cf1e7eac1cd8143712ded7f8abe6b900cd2d43df3b63a1e685b51d3afc0e8340610375
 SHA512 
8b038f13fadafa72c5b0341eb8f69cba3df360a1c27a8384a3004ce6e1c9185f7d13298467d4ba8a72896cde71627420f3b0121132e36318ede4947a459f0b10
+DIST firefox-71.0-es-CL.xpi 540838 BLAKE2B 
eeb5d8d96f6bebcc4ef4fff2aaac067d977522f7d5df16cf7f65df378cf157a6110edea54dab6f8670ee75e3ff34df2be6e1b5d14ea6abdb080bb3a28d592c94
 SHA512 
fb217bc675004a3ca760b48ae6e4f4728d4a0287bb7557f9be56ea537d20b173463aa1266748bbb157201ff1c96e6ef3512d4f13d5280c25449018039b0c0d7a
+DIST firefox-71.0-es-ES.xpi 518165 BLAKE2B 
e961369f6cdc629bbf55079e1e79bcd4375bd2ab24bfae636fab0519138a8229909fd0449202c75be0b14df0363a55729ab827b5d3126809a0dfff32fe974f1b
 SHA512 
75d8b0632fcbde3cac6a51087830dc5d60fbc60a8b37da13514d92a30514a9f6f5794b3ab4abc26223185112f7fae5f5f0d4c387cf58cadcc2ae7a020b7c0894
+DIST firefox-71.0-es-MX.xpi 544851 BLAKE2B 
03e02da5dc6b3e4a9eefb40f381942872543194ca45cd70359d25dcdb1270e51c92956e400f688a50b5e4cbd3bad2c70429ee3dde0caec1f26d8d87aa42e6a69
 SHA512 
b641592ac58cc06db33c7e93fc73edf01404331b9df8c0001a9a40370d0da08f984b9cf4012eaf585da50e5eea9501eb07317beb7eb822153ba68a3435efca2d
+DIST firefox-71.0-et.xpi 520415 BLAKE2B 
1709cbc17c5b9051ea7a928662d7550d9eb6e45f8a94143c7a4b3dd30415907bee34f8bc330a49aa66a3ca315f827259509f60e2470c245e883c8c19c5ff6f01
 SHA512 
ca574b2ca32a987cac82c02b11c2773220cfc1c352bb51a1fa849f3db17c89a473381a1927797daa68a8d01a76882d26de9bb86a03e00b0ec3b6e2915ee38602
+DIST firefox-71.0-eu.xpi 530784 BLAKE2B 
c8b8410e82c9c5da6a88d3237e6aebef0691a9619c91a3258461e3cbc0051fd3973db4d722984b585162532b6e7614d44ad78bec5472beea9ab63f23b2bf887a
 SHA512 
7c886453b70ca75b362c85a4f4322acbdb774831e38e08641266f16574665ff1e35b0876c3344b03e67e1855e75611e9feed211f5cc5da8d84ef168cab375b0d
+DIST firefox-71.0-fa.xpi 578069 BLAKE2B 
c5265fc1f6a255be0881970ee2f0e76ad14de25fad94033f81237edb9ceb1860bbfedb3ae175dc2b50b3130e337c04436be484bbbc98ac8b2ea1e9eb649257d5
 SHA512 
bd9434b140959fefb3408d00385041a1af963ce8a9f215cee516830832099f23b110cbfa85eaac0f31e13e4f289714f520a1c49cf7aaad76e607564c644dbdac
+DIST firefox-71.0-ff.xpi 497625 BLAKE2B 
d15905ef15aeaa341b3ab4331671adfd8fc32a407061a2bb56d05d15a83f17190aedbe13f7c54250acc7ce135da0f5bdaffe896be17a3eabfdf0d529831697ac
 SHA512 
3bdf28dd84ecf10e42e3a52537a7f40c56b0ee3c5bfa29ef7a8969a3bc24f69d582a706fb8f60f7d83a53e66823ba688c6e9dfb6daf14576c4cad3f8ab45d4e6
+DIST firefox-71.0-fi.xpi 526854 BLAKE2B 
8fe7175f9dc30f3fdd1f372124b4b211a64556506278ba18c7303cf38f996a72fc0c2d98ab0599fc4e434129fe54e6308fe2b3fd79e26a2481219cd7dfda3b48
 SHA512 
39fde113dbddac19360971ed61b177f84dbbac87ae290708e790d363f20eab8270e1262a1a2f81df73c5058d75dd2c443c9398827c93084de3ef41c36d25e8f8
+DIST firefox-71.0-fr.xpi 552869 BLAKE2B 
9d70856997eb8d61be64e669c54e84bffe48d7bc0011160883491129ac19747ca38960ff39953498624af7f6e6d698e8a73f72d8174daad90d61e7755192fd64
 SHA512 
426a7780d111ddf50288d5e1b979304330a30a76e40cd34eaef03c94fcc6f21e03b7743b9a2c38f49cd691fe927da7cb2f533a6bb4bf0e938e9c269cbd377c42
+DIST firefox-71.0-fy-NL.xpi 536242 BLAKE2B 
67405db7cb9bfe168d15a61ac79b1f67995851b209bd75fbf7e744c6e28f8e2dd56dff6a6424217252b05eb021114be14101f17649ecd5405b9c12c9c83bb180
 SHA512 
beb855f2c73397d381d1f609427fbfdee1c0b03f5a5edb6f93e708a211c7dcf15aeb40110439e4e8220f358cc03fce41d15d15446d75da316b84333c6b67f025
+DIST firefox-71.0-ga-IE.xpi 497577 BLAKE2B 
8987fad5f5c5249c2b20f84a4e2c4f8d377feafa6d8795e5800ee345acc332aa39be5b242a74e1d0fb3253dd0b89136679119d8dfa0563a539d3f1d7f0889d6d
 SHA512 
0b89ab4fdb364535c887d123ce696caf5bb8da937698d38253de4a9c7c915a1cfcdd324c3e730d71a21c767225871e48dcefb588798c1f94ee10c8601c3ffe1e
+DIST firefox-71.0-gd.xpi 522588 BLAKE2B 
00060c4ae9e335deb73f93b670ab70f974d86b0f3aef143935b3e2af5345578f72c8f05813a845bdf89fd7da7ce728367d4c201c7ea41f4055d8b35726d31ff8
 SHA512 
b6b8f35335574033d66c198d5e6df1f47416be2be7206558dd2ffffdce8c01798da9373618bdbe67ed7f9996f15d0f6b943a59333587c5bf9e5d77ee285cc15e
+DIST firefox-71.0-gl.xpi 498585 BLAKE2B 
0454a2f7269ff965e79d0b8d12d2e84950a09670efab8f5e53deb6c7d7ccef25f73cf3b10f294ef7a5835974c8127f5a91ef4b1590f86cc013115a46b908943c
 SHA512 
d014e8a5eea52152bc33203fd0f244f43b97d67de4adaada60c70a725065a6a0961c40b24c0564aaeffbc780c609b6ccc402b4049ff13005562e6abc4192e633
+DIST firefox-71.0-gn.xpi 553689 BLAKE2B 
0a5c7239d13c2f6e83d1ecd3562c08ddf2635f5452f70181d4d8459fff656e2d7b0d0ed81dc7228b4d912571bffd17474ad92075654bf6318e0bb7fab7daf391
 SHA512 
f0bc639b81ed7c37c2ee28f17f8c2aa2eadd02bc17125582276b5ec50d25cc264fd015afe17d0b1ad4fb604522f784f32b14ccf27fc7e4e4dd45436c5017070b
+DIST firefox-71.0-gu-IN.xpi 587968 BLAKE2B 
5806b5f13ba31488de19b895af46e0579e57aa319c2eb497d3f8e812e6e588f0baaa96b0241e761762eab97f71a1c71110695e2909cb0d610c31e8ab8840a1b8
 SHA512 
24e57d85c01949d96d01c0a34b098abc5d6057a5ac39568937264d477da7a0f19f2382fd662ea7da4754a364055cd76d23bafe612db323bf3d39133778b5658e
+DIST firefox-71.0-he.xpi 548164 BLAKE2B 
68c928562816c6ab44f80914c6c5f76f8bb5b792ff32c3c6300ec94d5accf92dd321a8ecea2c76993dd00e565e268692fa00f5513da7762395258852105937ea
 SHA512 
95097da7a81186c043bfe29e32470bdef7333882cbeaa7940fb546376a14cb3b7db99ace1aaa957f74a6e66aab803b83168dd3251c07a744eb14a855a7a73121
+DIST firefox-71.0-hi-IN.xpi 588405 BLAKE2B 
5e8d3dc7cad53dfe87d20ba5f51682c6e991295889277e9f3b88a884c88b897b9d1244eddf170553acbacd7dc92dbfbbaf3afd1c1adacfe1524e46d91c94502f
 SHA512 
fc629fcd0d01beaa7a673cfb512ab23967573bc813316c743899529e621c935dc87bf00775d603744ccbc72e1abdcece4a479f8e321b982356b1e4cc38da01db
+DIST firefox-71.0-hr.xpi 532687 BLAKE2B 
b080a664dd6edd84f58378269df8c566c9c944d4619e7dbc964156c537d55b1847e77e233f3e0abc2de79e0c2b927d4667f22a9ed6fac3cf218dad7bc1ee49f0
 SHA512 
8f95a7613504c8e8dbf8252a94e054a2529b69c13d8116821a729da054cf4921884b3ae2e81a77261c56e2e54eee292f8b31879f3559f089a6e863734523419f
+DIST firefox-71.0-hsb.xpi 555207 BLAKE2B 
46386164326fd1eec5f937604e26b46ecd10a3427df581a5c16347ca19dffbd12a0094d27481ec425e81ff3fb824f7ee6297228cded87fb526825aa7a8903bc8
 SHA512 
7876a9b5d60d29f503bdfd3fe37788454c32f2a593f546437e596919e038d14de160cc7e025788aba8af0eb04e8386ea31caeaef9ddb5e84d06114b095983b8e
+DIST firefox-71.0-hu.xpi 560491 BLAKE2B 
ad9eef9653972f5777f97841cd878c3bf01baba2a7a9ffce015862e434fa5bebf20762b61962dbf8c87e2eee29edab4c8509de332ed3c02752ef067255236d15
 SHA512 
fd17e3a5fb28a8a9facac81bf0493c9c252c2c1fb15b3dcac802abac375be39b8fe977fd029f16937e5e9150d13b4d6c366573751650b4348154e29d209edb3f
+DIST firefox-71.0-hy-AM.xpi 564283 BLAKE2B 
e9db1849c95ac890e7f85c0c837b213971b6a251934b89bbc02ea0bd2c85e2bb7fc1c7f05027366d584ca0961d8cfb6020978d724dd0aa3fb1e09116826cb639
 SHA512 
935c1f49a7d6eaabc74cf2dd3e8e0d012610b5cb5d629189b8ba3cd6481a965cd7db23aeeebe7539c088724997f0688de3f02ad7299dd21912317270a321c3a1
+DIST firefox-71.0-ia.xpi 521940 BLAKE2B 
6e8f88262eda0f7e81fff84b430b13eedf250bdb2695f7633aac6bae3e3d5d546308585404a250024b363bc12bcda2afe957c65541fd49dd8e900ab78f5dcb54
 SHA512 
e12f51205b545fc4a03cc44acfcd594c62c943e03e74c6ba44967b4d944128bbeb31fdfa2812e16961e5044d8ce1c9382575403f16101f6ebc35203fa99d36d0
+DIST firefox-71.0-id.xpi 515826 BLAKE2B 
1c20c858e04b3c569c6b94a8441065e9d5c2c8da4f9fa3221d851424d79674740cf586ce9a10894057e2fa75085a8ac4fbcc0472e625f191c9a3826b8f4b7937
 SHA512 
699049c9203c179777725c9e0fcfa392069e41dea83320b3e6242ff7c6c01ac7914758b421b94a55b6dd7ee172ae71db46b267df26efe5a236fa0689000bfebe
+DIST firefox-71.0-is.xpi 511990 BLAKE2B 
8496ca11de1c42df889a123e3baaa86da82e1d15e119bf3c835349cf778ed426111779b4764847a104c264abf2fd6ae52dd4aeacbfe46485805fffcc545131be
 SHA512 
4edae50ce11e5851036e9ca96755f6edb8564e3dad0c1439533fa774d4a3ecef47e1305f328cb798d59ac0d4ac6a918c229abb1849a60d99fbf0d2aee204bd8c
+DIST firefox-71.0-it.xpi 419131 BLAKE2B 
3ce34681c22ab6ebe1754209333905858990d6eac113981947a4055b696d02f0e59c02b94c2d0ddc5763e8adc2bc5ecca5ae4b7afb6fccb8aab9a05eda098054
 SHA512 
6969ea91b05ab28406c71fdb61b137b244c254687cd32e73972be6a1014fb1b00d97c6c1111cbb16ae2a8e1e3de019b733ba8ce6a891762d1ad04412cdd7ff39
+DIST firefox-71.0-ja.xpi 577551 BLAKE2B 
aae4eb45bfc39e163489cc4d55ab305ee677f290ea0c1d01f0c2bbccbe46702dd0131a8b09623d7cda79089d1d5e470056baffb3bd99d79ebc45584eb001a8ea
 SHA512 
f3d48747a0680414b9a421a44cb9f5ef0da9ffa7d43182c3437fe51be2081840056f2b29cc6aded34e690ee71e7108bd3385a60697a766fbf6710e63a6a0fafb
+DIST firefox-71.0-ka.xpi 581703 BLAKE2B 
a8ad777ab9389dfae2d521d409fb98b61334bb1b3f536d0aa645db5b0450d436fa125756d72638b13cf5918d13da312e227ac2b11b5a31b633697c2766ab6d8b
 SHA512 
e379d8b77e9d27a8e5662271f296eb8a0b53668114cf28a14708c12ace4d71c9d8fe904b07ec2c3e9c135e0728cc743919525df9ffa659cc75bfb06cdaa080a5
+DIST firefox-71.0-kab.xpi 538872 BLAKE2B 
6a3d44c2b8cc021c81993dc6bb720c17b6eb845a384f507809e164d5c7e2ab42a8e2265ee9d409becfae7a9c9f5466ef5784966e37d7ada12ddf42a15cb123c1
 SHA512 
ce32215965ec1528b0451a5f93855f563c998e75bdf1b97d53744f23dd6583690919429893c7fa1c67f2abac5048cb1563d102c6a34e9872b17f56f39bdb7b92
+DIST firefox-71.0-kk.xpi 600169 BLAKE2B 
b89e024893bd9936fb8795f7fcd6c3976bbd8cb3600d71505ba84c5e45a682dc366e8d33530b0d770ea38ff0d626ee5d6ee75f34f4d01530607bb8b999a40568
 SHA512 
021c7c234f5e6482e281ae258060ca546a15221788f196656313c32a12ce893997f2fd2bd842b1967e4649ea111b610bedb10ec9799c67b863108da54d83ae7a
+DIST firefox-71.0-km.xpi 567777 BLAKE2B 
50c28db6c17ad59dff8054599f9511a164f893dc5da8e18359333abaec9489589211ae48d8f3a48e3115672799e4c81ee6c58ef729c9e394632cdcf86ef66b85
 SHA512 
88e55b3b5d9829b5f2d4a3e99c4a0f3b763a9499e33f90d1c82e30f678e398ed2814f97925872da677d2dec9d8721dd869f42e504424c60207797627e9c03bff
+DIST firefox-71.0-kn.xpi 556675 BLAKE2B 
e192e077090ed05c5b228c0aa9deb7eacc4275ef29190027bce5d62e2e5db45fdd5d7a625053172d9f96f5e284c65faaf00d5d4c503d72132f663f342df2b61f
 SHA512 
ce63cbc2c5b1336cb3626c2af4cbb1181dd7306e42ce757ae39d4e5ca42353f4cee2226724a71901f7ee3388c29780c3ffaa8cfe3289c3ce8d216eb7cff28dac
+DIST firefox-71.0-ko.xpi 568484 BLAKE2B 
659cdeae24375042b64e81e23459997cdbcf33618dbbf5adaae3e5586afb34b9a99dbef8f2d2deb8683455cca3e6970b1ab6c5b7827294d372817e561d6eba48
 SHA512 
8e62e364109028fa1c380d4571a1d9b777fad8492d700c6672a1165424b94ce2b0e9200651209c003b6bc6c414cd959214d8e9b404043e6de906092db56df7de
+DIST firefox-71.0-lij.xpi 503675 BLAKE2B 
01afe58d9aff00d6d6b74a72f528e7c99b51339aa5034621eef901d4e911893ee04d757452f21aa591cfe0078bdd11872d4b743ff4935e84f7f06a9b77b5c50a
 SHA512 
326cc28b07f5bbfe5d7e89da9e06c90609ed377b098d1bb6226205a72bbf7dac859871dce5c57d22ea7d39cf05de844de602e2e84c3d0ae31b57224353b17c14
+DIST firefox-71.0-lt.xpi 557431 BLAKE2B 
6b0e0da582e8071875c58fe924b75267dd9d2261a55266f28d70c68caec6a89ae7a29011ffa9e858987e3553ddb57f5c116af80496306c0799bd3965253aa081
 SHA512 
72953d50567a70dfaf51022ba7fe82fee0dbb65ae674624284ee64d82298493b24c9055856b76dff2a6637d9b3d3afef691df3baebc968bcd334a569d16abb3b
+DIST firefox-71.0-lv.xpi 512014 BLAKE2B 
9aa965ba1aa557d0bc2e850d23b6cc71db96f757885832f3598836a8e3f7181737cbc4c87a40690b5c9acf8c8919c58bd2e0868038d662aa858df977940c9d02
 SHA512 
53dad3698c72d9d160bfd3f9de20320f857bc7d77e99e9ef16ac61c574a3c29b40f6a3c0878e4859ebf7069b6ebe11243b13b7e2bf7a76cfe69fb294b1cd0db3
+DIST firefox-71.0-mk.xpi 486549 BLAKE2B 
b7baddb8e8b9ff633030f1827af63471a65740a09f7758457d1fda785da99fa517ef2e37cd561e7f86411a9eace58ac601af2dc0c53ec47775d4d1357a5abb34
 SHA512 
65999ca3ef0a20433dcb3192e98894c50551ad03f4c4f263fabc34af7adde699a075aa884d1f28af34d447b70d4285f3d74a59f8ddc4345bb6fb62232e954805
+DIST firefox-71.0-mr.xpi 587809 BLAKE2B 
7aee66e42a5996362621b0ed48b6027fccdd3e7c5659021d7a8abf05869ff1096e1a3dcbfd2740df930eb288c493b040d3a8c8861a0b831b06888d9b4c4e1aed
 SHA512 
b974c9e4161603caaa804d51bcab47e9a4adfa522b8adaf78005d977077bdba1f84c6a91790f57db597aa9de028dc0a96b45b8fafdfdfa4b3610c3e19b51eb8d
+DIST firefox-71.0-ms.xpi 493978 BLAKE2B 
87004cb4e49a47b1c5014a17d6b4a7d9e08f5941456560a2300a9f0289ff214506cb453d04d86f7ac1e8714b0e5528bc53f9c5a356af70d1b7152f9b6e190c48
 SHA512 
a1c31fd7ff4bc219f592e0a9b1b781694ff6b8749b164ef5f4c6ab8db381f4fdff9257777a89a450bb8c5d5ef6f5e415cace48d6441a3f76a3533811201a1a3c
+DIST firefox-71.0-my.xpi 559302 BLAKE2B 
120a6c4e5a8cd9aeebd2934ade92e357763088ce71bea81528998e95e11772b3ec7aa08c67ac908744d3cce151f4d9269faebe6e4eac94eb402e85f93d05ec6a
 SHA512 
5a4afb550fbc3649875ce09a269f39cfb5b893cd0a62e85c3b2ba02d87a7ab51ceed16a323a2bf8501ffa27ba57cef54b0cb730d931de569d4bc176427615ed5
+DIST firefox-71.0-nb-NO.xpi 523511 BLAKE2B 
6eed4201d55415ac2b256db03cd9bc5e05cc283fa9ccd3299f3ee8960e2ba36f6858ae8537d6ea025b48f3038fa5091bd94d5e043efa1606e1ef282e5c931659
 SHA512 
7361f3326b69b60cc646d6dd046217012fd7ba592ef477d5326c6b2d9582452402faf5526c54045466149a3c5c3d58932a0bace568df9f6b5ba3f0497766c763
+DIST firefox-71.0-nl.xpi 524570 BLAKE2B 
368c985772359104beb7d42be988cb33cc1f164d211a71dc07e8335926ffbbaaa7c431a0d677545746e561648f4d8d10ee80794f44c4b2777ebe9d4e6bdc5677
 SHA512 
ceec58edde446532170b2d7eff98f8b041c9563240547d4ada786f47de8b6e8212ed4048052b8157f241e8950e2e80759f979d3aa09537c3b19ed2ceec37f447
+DIST firefox-71.0-nn-NO.xpi 524675 BLAKE2B 
ff616f3dc46381565d04e6b70deda4b65c758218a876b6b09a683d53af1942a237e8631d48939c3dc48e52d14217d3a86634add2069bdfe87958aedfa5db65fa
 SHA512 
4f2b10b69df0da5a99f88dca043cb4814bd06c635e86b877e3e25059d323335ac58c05a6c7a9503b77a26b355677ae9aec5708e73ca35e15d8d6137f3efddc3d
+DIST firefox-71.0-oc.xpi 513068 BLAKE2B 
153f5216ee9df0414fd38e989535f2ad3f6d208f01aff99b3120c601b6dc111ad92d34e2835ed5fe6921a46b6be67463a1be77859e8fa20d14ebecacf3d69add
 SHA512 
27699f83c94bb184491db81c3add9fa7672014613c7e807e90a79e0113618f48e54c7fa86c920c742b31de350f3e2ae7cb48e69a4584489369d1e887a6029be9
+DIST firefox-71.0-pa-IN.xpi 567890 BLAKE2B 
904da5c4d648046e02bc0997426d01459dcfd99136c01273aa8ae1fa512439019c9b4421193b350a92b148f7f112c3fea55b9c3c8f7c35a5fdf687cadc50e3ed
 SHA512 
b212e75badefb7ecbb003b8745202d187eb016ef2ca2fa17fc0d287517ba03da60bf6370d2c85350d9a4cedb0cbc4069dcffaf9da18f7c761b75b243442e09da
+DIST firefox-71.0-patches-04.tar.xz 20428 BLAKE2B 
b7aabd18979e348dc7ee7ced4fabc6a4fc3cd0026d84138f1bc1be575b482b10a13c28be567f4ee5a18a6d809cb9553b773b259586b2c05bb0fb8a06f7266875
 SHA512 
88ddf1314c1cbbb212b73ef57ecfca50bf265ac54f7353cc4d7ed4e91d7e8813bc96493cb0f9f83778fb8259d21e0b76525d8eb5da5cedffbdaa5066a90be974
+DIST firefox-71.0-pl.xpi 537708 BLAKE2B 
ba395854d4d0c8db63f67115f5e3fee99a1d362d02f9baa9a103d93769ee555084a31369c50bfc74882e45b38559de24b0add1d18a878882733aa57027a4dd8e
 SHA512 
816ec98bff27904e4324cbf72d00821957e12d7822eb3c92f2ef0e5d2f94076083cd95aaaaa88cea220eb28d59800d97c3912fac68f9cb01bb99b931802eb688
+DIST firefox-71.0-pt-BR.xpi 526408 BLAKE2B 
40d18fc46b59654dba7dc5d977b1b3f62fb18a1a3a639d8bc9ef541e32a9b54a5b5abe2b83d85a8e6039d25f2b22d21d82f8da8e2f071a77bedc524560ed0926
 SHA512 
2f8043266a894c9b5c810902ca70bc9762ca5ac9986250f7ee89a0dc6d78245f3663ee2d2c1579b4d89ed20a39a58721975167ea5e887f853fe4a40fd5995ec7
+DIST firefox-71.0-pt-PT.xpi 536024 BLAKE2B 
7a1fcfb662dffd51ba58ba489e4e1980ef423969c0bdd19b627b5543896b2546dcaa52d8f1db9d0152890e407b16ad7cb5c4cd29530e525a0d27e87c3c03e2a6
 SHA512 
9d239cc219bd5971305ae961d96498785910cdc6421cecb905af2cf294288547a2124506e68e6af453426dea691cd9a318ec577303f1aa793ecac51ac6998cbc
+DIST firefox-71.0-rm.xpi 530028 BLAKE2B 
6759f5a9b2d1517aa274e86056dc50472866ef1ace1415e3d2a3ef28d2fef580a3a79c7b4a27ae5030bd463a13d1438bea0021e9dfacb4bb980ebae14ee1450e
 SHA512 
59a83fa77db1f1a06562a1bd884207ac86de9d7571f760badeb172bff9e06e6a7570a0e76c302095ce91365d82d8336829ce56ad782e5646a03efb2f3fc2fa3c
+DIST firefox-71.0-ro.xpi 535696 BLAKE2B 
d8e3767f06f5e1b8bf04ccae829c4f0ae08d0f76039800fd995d5048ad5c0ce2ae556e42198d2edb54d9d8553de5552314bc01b941d7bb3e4937fe1d463385f3
 SHA512 
d95be9886facef792e98b7b7ab089baa2bb78477a3fec57958b502f5c820d845f7ec1dac1f3908e9201eeb1c5dbc354751f136d41815a1101c10af7bc1258e18
+DIST firefox-71.0-ru.xpi 619122 BLAKE2B 
a09d007c9efec58d205c094e50dda76b47912b13ae949aa9b1ed4e592d50c7fbb45e82f53bed377b463c5db5b2d0f2123260764a10356313e211f1a03c2ef1c3
 SHA512 
1312b7c3cfb2f31c12e9e21b05fb1fb19a1d34e225231e155d51a52d6f3d9fd8f02bf72a5a34e05354ad0286e223428e9061fb464d4298f00aa37bc948099576
+DIST firefox-71.0-si.xpi 534498 BLAKE2B 
438a08cfdc6127792971abef940df09d031d20111e96aa55ace7b2ba90f4b593d5f935bc3599576eaddcfb1874d0d76661bbc18c46132ed8b6e6a665a560ea00
 SHA512 
47acc4dc3daaf4decb2b351f678e092cd0fb1b53484f48d0ae695f61da0aa6b2082bed3e2fec85b814d206ca0cdcea7810002e52b1b8930221a432e5c15a167d
+DIST firefox-71.0-sk.xpi 555932 BLAKE2B 
42e7ec48fc5458f716f2a87cd492d9fd8ce21d332a46abb38764dad8d4c86590bf0c5b0c168859ecf6e961dfbbb02fd51abf560d5a34b18a8e0902de9e53f4fc
 SHA512 
6b51f0cc9a46a0ad1e6760d71545cf9d94c58eb42cd9fd9ec30af8f75c867036baf45f78075130a3dc0a9544a47df84cc51d3b4305cf02a268143671f29efac5
+DIST firefox-71.0-sl.xpi 536716 BLAKE2B 
3afe4ba8cb373c7de38e15be371f2a4d8eb2b5b13f58b3124d4f6f8530e9d7bd051077f9b2a8ce6e6a53596c15d45e61c7beaa5b3b0cabb4731db2d66d500f46
 SHA512 
9128c70423915dd05a68e4e2ebb79e9e979641e79cf5815f125589cad42a7a4023f03a548ea21797d9cf0cfd5695de4838601b00287365efcad2d4e438f6fa9d
+DIST firefox-71.0-son.xpi 462534 BLAKE2B 
03b682aea3de01090a7990e69786e0a737b5aabb31228297819f29aaa5b318fc7bde75d76032ccb1e358396f3e792a9501333526f1751d00ebbc5091b2fc9efd
 SHA512 
59f2dab3d8c45cf2ceca88db890a50f0ecda58203c4e669d9276e5424c34a547c1e3ae432df86a27eef5e7188afc030fb5daba3cc9dddccb76b8f860f4cd945e
+DIST firefox-71.0-sq.xpi 549892 BLAKE2B 
0991659203c1868195828684aacdb33d1b2df6cb797dfa00c10dc6ea5a366e5493ee6efc270f2c105677bc427d5da5f2f94426470da06d2b8079712a00a00a7a
 SHA512 
b2ad1a895bc4c22b0814a6ff8a5dd8a93c92155da8373e35383776451b9e67b8da4c57354bd40428c4b0ec60e4420bd953cb2643a98c438d04a737de17fcf905
+DIST firefox-71.0-sr.xpi 552127 BLAKE2B 
efadff83b67c36841b8ee2c4400fc349100b53ce27b14401a5c0d2dff5eb8f5c205acf6559c2c74eba91eb8abc850c4ced3db3d8a0d16a2b2f153dd9f40de215
 SHA512 
7fd176602b632cbb09e7043a5daf12ccbbaa1c0d4a47829113788985b142f6df5a85cb33a5fc695aab27f7dc06edaba08b93a924edbeff2aa8471d547fbac2b8
+DIST firefox-71.0-sv-SE.xpi 535449 BLAKE2B 
719bbbeae234570bd5b83682766eedf2ed2fff7192bed64833af371bb75d545bd386cd4abed15f31b19f1a8e20c95b4832f17648d99de51899e766c53eecf044
 SHA512 
85faa8e15f6c346eb6bc9a0774675803c5bcb69c1d4fa95cd4b3905cc10e012f213d33daaa1358e0732e294a916e31716432b9def75c370669f7af384ef254a3
+DIST firefox-71.0-ta.xpi 560975 BLAKE2B 
25d9d29953a28569fbf280caddffe6b551389e09975fb1780131548a3192f642281b8e2d137c1fc33af1cd6fafd66d744324dd36e9ada69887e0b5d20c59c7d7
 SHA512 
8c2de23f247cd66a38fa6cdb615844c48633223e03b24377bb354fcad0f3c88b4e8fa935a7478643580932988741012fdd1e3f3068e0ffe9a846b6cf83e8de85
+DIST firefox-71.0-te.xpi 579563 BLAKE2B 
0324a66ab94c4acd0970951c7b38fe45259ed489cb31a401a15891c11ded0b3326d23b01bef38d22e0ef786052c905be7d68f72224a7a78c8233a2dc4a13aebc
 SHA512 
72cd2d3b29b8b1d7e1219a111808ebe190499c0d06a050bb1f3d43a814c58e13d44375f55e963d8d96b1b269895d3bee63380969395083973106bf402ffc3d29
+DIST firefox-71.0-th.xpi 588717 BLAKE2B 
a69ec173c9e3b32bf7514acab99c5e9a90a9bad20a75ca5f8abe8f748caaeb9c156fdf811a9cb8e78daec40c4d02cefbc291fa42a624863fb06678da2abcbc1b
 SHA512 
0b86df6aae57973d9d6925753266c685197c905ecc53f856db89ef01c6d083f3eb043e00ae503c241d215771689b489fe1abd9022c4b679dcc7ebbb300807ec3
+DIST firefox-71.0-tr.xpi 548287 BLAKE2B 
81a27ca61208a82385418ca7319de24718d3eb20f473bdb3584f03d335dd0c51b7db2c002ea9f898724b46e109b7b9fd41b7369b637dc4ea8bafe9bdcece01e0
 SHA512 
2d9d998eaa2172253064150a1d7395f52d5b7706c4fbed942854ce96b5c774e4de77015b41cd77dc5ac4b6bd8dc534f9590252ade42cff37f4ebe956e3712fd3
+DIST firefox-71.0-uk.xpi 608193 BLAKE2B 
11128e8e1afae5a545d38808ce6f95df82c0d161255fa8f64e6f1dc614f0951478f63500ab06f948c8d06476f6da695ac2779bcaedea2a34ad76306c87d48bac
 SHA512 
441df6a99815864dc75ed4b94d55585b72082fb70975d3177daccd68a04dcd1a13afd1a16fcbf33ad65c1cbddccfb270aa1bba58465546484722cb3d0387ddcb
+DIST firefox-71.0-ur.xpi 556725 BLAKE2B 
8c957f6ab53a0d7225b768fae18cb900fcc91b1099e555e6e7109b003c3f4c8134218c9579778e01efb74d2841d933ff5d6af11f31a08b59161f6476407b3d91
 SHA512 
6b7914b561bc734a5d33ed4283ceeeb4c88343014e4d48afa9b529932e02b41061ba647415e43a751e0a8989f5d649d9b6d8723b50962e4b688c195fd106fa0e
+DIST firefox-71.0-uz.xpi 494755 BLAKE2B 
600905ac5c21954e64ba38dc2923c83e970903f8a43f7f8d0ab2965a9e3c3aacf4b48710deca48deddf812a89949d669057884157eae55c99f864349bdb3a3d5
 SHA512 
a27dc824904814d673bdda6adece167ad00183d76d8523703878ab0263c77b5337ec1102a59facb7752b37b70a36f4ef9b31b7f4c1d502a67d163e8d9f95f889
+DIST firefox-71.0-vi.xpi 563455 BLAKE2B 
99d892741ea487d025c0e206cf0954c960baeb7cc94edcec8a7fb9c1c11f74c5aa1910d551b89c2ca10c79fff27b271f9b4ab61383951294dc3c4791abd39537
 SHA512 
468930e0c6d298d6de7315bb8a2b8906a5a8b22752d2ce924bb523690c5759de60ff8c67da58c4c4bd79a4fe6ddf5510714bf6a89f672f07691c404968f6523d
+DIST firefox-71.0-xh.xpi 466494 BLAKE2B 
89cd4ba2391fa6d1577542c71e3f7ac7eb18decb8c1c9d633f805f9402be061eb31509d1e60995e83c9c90749145722591b0e952ac56e7c26e5872879bc4a6f4
 SHA512 
bcb5bbae311db65f6e2a81c39b6a4d2e13f7ff79aaad217cafcd3b1992b1cfd3d25668c10e7c6a74392cbadfb7b302b74408ab116d19e0c2c952e0241310e20b
+DIST firefox-71.0-zh-CN.xpi 570176 BLAKE2B 
4771f6ac64ed820a5837b172b02cb54133a3847d743e2a3eba934c4edce390b8fc1e9ff13409af5db4bc8d3ed07f9a843bd33301bd515128918869e87224a4fa
 SHA512 
18eb4f39857f257f403656f81e38cba9b55bd29462f9d1e9148be092acc812ae27051d2c31b5a6312493e65c71d11881e0260d5cef9c1fe78df1c2b33388c475
+DIST firefox-71.0-zh-TW.xpi 568991 BLAKE2B 
691e5aea3725516e4f2db1c91bfafe35d157d67332051f73139c6ae6f079db9b90e69478b285660a998242a33587567a1b0b36671464f096072e17d2dc741542
 SHA512 
4a949f2335da366827abb4b0e5944c0dd3132bcb750aed395bbc643bbfd4e72d2bed73dc505da241279ccd929e412371dd1eddce6581934a5c48be1ead1b3dad
+DIST firefox-71.0.source.tar.xz 312341460 BLAKE2B 
b94f7c716e79aaa756e89e06267e9941bb6f58ced516e8e2d284bb7617ae775bd877c000a84eccde3a1f2ffd60c289c8781cb551f6f013045914157653a216d5
 SHA512 
2f60bb7513dc2e730d8d558faad30367e12d27cb24b630aaebeb0473d0a202a3d4838b253d631722d57fb26f54145e296a710ec1714d3ba27dd71c6c1c52e920

diff --git a/www-client/firefox/firefox-71.0.ebuild 
b/www-client/firefox/firefox-71.0.ebuild
new file mode 100644
index 00000000000..2abc5742b83
--- /dev/null
+++ b/www-client/firefox/firefox-71.0.ebuild
@@ -0,0 +1,802 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+VIRTUALX_REQUIRED="pgo"
+WANT_AUTOCONF="2.1"
+MOZ_ESR=""
+
+PYTHON_COMPAT=( python3_{5,6,7} )
+PYTHON_REQ_USE='ncurses,sqlite,ssl,threads(+)'
+
+# This list can be updated with scripts/get_langs.sh from the mozilla overlay
+MOZ_LANGS=(ach af an ar ast az be bg bn br bs ca cak cs cy da de dsb el en 
en-CA
+en-GB en-US eo es-AR es-CL es-ES es-MX et eu fa ff fi fr fy-NL ga-IE gd gl gn 
gu-IN
+he hi-IN hr hsb hu hy-AM ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms 
my
+nb-NO nl nn-NO oc pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv-SE ta te
+th tr uk ur uz vi xh zh-CN zh-TW )
+
+# 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*}" # 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}-71.0-patches-04"
+
+MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases";
+MOZ_SRC_URI="${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.xz"
+
+if [[ "${PV}" == *_rc* ]]; then
+       
MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}";
+       MOZ_LANGPACK_PREFIX="linux-i686/xpi/"
+       MOZ_SRC_URI="${MOZ_HTTP_URI}/source/${PN}-${MOZ_PV}.source.tar.xz -> 
$P.tar.xz"
+fi
+
+LLVM_MAX_SLOT=9
+
+inherit check-reqs eapi7-ver flag-o-matic toolchain-funcs eutils \
+               gnome2-utils llvm mozcoreconf-v6 pax-utils xdg-utils \
+               autotools mozlinguas-v2 virtualx multiprocessing eapi7-ver
+
+DESCRIPTION="Firefox Web Browser"
+HOMEPAGE="https://www.mozilla.com/firefox";
+
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+SLOT="0"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+IUSE="bindist clang cpu_flags_x86_avx2 debug eme-free geckodriver
+       +gmp-autoupdate hardened hwaccel jack lto cpu_flags_arm_neon pgo
+       pulseaudio +screenshot selinux startup-notification +system-av1
+       +system-harfbuzz +system-icu +system-jpeg +system-libevent
+       +system-sqlite +system-libvpx +system-webp test wayland wifi"
+
+REQUIRED_USE="pgo? ( lto )"
+
+RESTRICT="!bindist? ( bindist )
+       !test? ( test )"
+
+PATCH_URIS=( 
https://dev.gentoo.org/~{anarchy,axs,polynomial-c,whissi}/mozilla/patchsets/${PATCH}.tar.xz
 )
+SRC_URI="${SRC_URI}
+       ${MOZ_SRC_URI}
+       ${PATCH_URIS[@]}"
+
+CDEPEND="
+       >=dev-libs/nss-3.47.1
+       >=dev-libs/nspr-4.23
+       dev-libs/atk
+       dev-libs/expat
+       >=x11-libs/cairo-1.10[X]
+       >=x11-libs/gtk+-2.18:2
+       >=x11-libs/gtk+-3.4.0:3[X]
+       x11-libs/gdk-pixbuf
+       >=x11-libs/pango-1.22.0
+       >=media-libs/libpng-1.6.35:0=[apng]
+       >=media-libs/mesa-10.2:*
+       media-libs/fontconfig
+       >=media-libs/freetype-2.4.10
+       kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
+       virtual/freedesktop-icon-theme
+       sys-apps/dbus
+       dev-libs/dbus-glib
+       startup-notification? ( >=x11-libs/startup-notification-0.8 )
+       >=x11-libs/pixman-0.19.2
+       >=dev-libs/glib-2.26:2
+       >=sys-libs/zlib-1.2.3
+       >=virtual/libffi-3.0.10:=
+       virtual/ffmpeg
+       x11-libs/libX11
+       x11-libs/libXcomposite
+       x11-libs/libXdamage
+       x11-libs/libXext
+       x11-libs/libXfixes
+       x11-libs/libXrender
+       x11-libs/libXt
+       system-av1? (
+               >=media-libs/dav1d-0.3.0:=
+               >=media-libs/libaom-1.0.0:=
+       )
+       system-harfbuzz? ( >=media-libs/harfbuzz-2.5.3:0= 
>=media-gfx/graphite2-1.3.13 )
+       system-icu? ( >=dev-libs/icu-64.1:= )
+       system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
+       system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
+       system-libvpx? ( =media-libs/libvpx-1.7*:0=[postproc] )
+       system-sqlite? ( >=dev-db/sqlite-3.29.0:3[secure-delete,debug=] )
+       system-webp? ( >=media-libs/libwebp-1.0.2:0= )
+       wifi? (
+               kernel_linux? (
+                       net-misc/networkmanager
+               )
+       )
+       jack? ( virtual/jack )
+       selinux? ( sec-policy/selinux-mozilla )"
+
+RDEPEND="${CDEPEND}
+       jack? ( virtual/jack )
+       pulseaudio? ( || ( media-sound/pulseaudio
+               >=media-sound/apulse-0.1.9 ) )
+       selinux? ( sec-policy/selinux-mozilla )"
+
+DEPEND="${CDEPEND}
+       app-arch/zip
+       app-arch/unzip
+       >=dev-util/cbindgen-0.9.1
+       >=net-libs/nodejs-8.11.0
+       >=sys-devel/binutils-2.30
+       sys-apps/findutils
+       || (
+               (
+                       sys-devel/clang:9
+                       !clang? ( sys-devel/llvm:9 )
+                       clang? (
+                               =sys-devel/lld-9*
+                               sys-devel/llvm:9[gold]
+                               pgo? ( 
=sys-libs/compiler-rt-sanitizers-9*[profile] )
+                       )
+               )
+               (
+                       sys-devel/clang:8
+                       !clang? ( sys-devel/llvm:8 )
+                       clang? (
+                               =sys-devel/lld-8*
+                               sys-devel/llvm:8[gold]
+                               pgo? ( 
=sys-libs/compiler-rt-sanitizers-8*[profile] )
+                       )
+               )
+               (
+                       sys-devel/clang:7
+                       !clang? ( sys-devel/llvm:7 )
+                       clang? (
+                               =sys-devel/lld-7*
+                               sys-devel/llvm:7[gold]
+                               pgo? ( 
=sys-libs/compiler-rt-sanitizers-7*[profile] )
+                       )
+               )
+               (
+                       sys-devel/clang:6
+                       !clang? ( sys-devel/llvm:6 )
+                       clang? (
+                               =sys-devel/lld-6*
+                               sys-devel/llvm:6[gold]
+                               pgo? ( 
=sys-libs/compiler-rt-sanitizers-6*[profile] )
+                       )
+               )
+       )
+       pulseaudio? ( media-sound/pulseaudio )
+       >=virtual/rust-1.36.0
+       wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
+       amd64? ( >=dev-lang/yasm-1.1 virtual/opengl )
+       x86? ( >=dev-lang/yasm-1.1 virtual/opengl )
+       !system-av1? (
+               amd64? ( >=dev-lang/nasm-2.13 )
+               x86? ( >=dev-lang/nasm-2.13 )
+       )"
+
+S="${WORKDIR}/firefox-${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
+
+llvm_check_deps() {
+       if ! has_version --host-root "sys-devel/clang:${LLVM_SLOT}" ; then
+               ewarn "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM 
slot ${LLVM_SLOT} ..." >&2
+               return 1
+       fi
+
+       if use clang ; then
+               if ! has_version --host-root "=sys-devel/lld-${LLVM_SLOT}*" ; 
then
+                       ewarn "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot 
use LLVM slot ${LLVM_SLOT} ..." >&2
+                       return 1
+               fi
+
+               if use pgo ; then
+                       if ! has_version --host-root 
"=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
+                               ewarn 
"=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM 
slot ${LLVM_SLOT} ..." >&2
+                               return 1
+                       fi
+               fi
+       fi
+
+       einfo "Will use LLVM slot ${LLVM_SLOT}!" >&2
+}
+
+pkg_setup() {
+       moz_pkgsetup
+
+       if use pgo ; then
+               if ! has usersandbox $FEATURES ; then
+                       die "You must enable usersandbox as X server can not 
run as root!"
+               fi
+       fi
+
+       # 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
+
+       addpredict /proc/self/oom_score_adj
+
+       llvm_pkg_setup
+}
+
+pkg_pretend() {
+       # Ensure we have enough disk space to compile
+       if use pgo || use lto || 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() {
+       use !wayland && rm -f "${WORKDIR}/firefox/2019_mozilla-bug1539471.patch"
+       eapply "${WORKDIR}/firefox"
+       eapply "${FILESDIR}/${PN}-69.0-lto-gcc-fix.patch"
+
+       # Allow user to apply any additional patches without modifing ebuild
+       eapply_user
+
+       local n_jobs=$(makeopts_jobs)
+       if [[ ${n_jobs} == 1 ]]; then
+               einfo "Building with MAKEOPTS=-j1 is known to fail (bug 
#687028); Forcing MAKEOPTS=-j2 ..."
+               export MAKEOPTS=-j2
+       fi
+
+       # 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
+
+       # 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
+
+       # rustfmt, a tool to format Rust code, is optional and not required to 
build Firefox.
+       # However, when available, an unsupported version can cause problems, 
bug #669548
+       sed -i -e "s@check_prog('RUSTFMT', 
add_rustup_path('rustfmt')@check_prog('RUSTFMT', 
add_rustup_path('rustfmt_do_not_use')@" \
+               "${S}"/build/moz.configure/rust.configure || die
+
+       # 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
+}
+
+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
+
+       # Add information about TERM to output (build.log) to aid debugging
+       # blessings problems
+       if [[ -n "${TERM}" ]] ; then
+               einfo "TERM is set to: \"${TERM}\""
+       else
+               einfo "TERM is unset."
+       fi
+
+       if use clang && ! tc-is-clang ; then
+               # Force clang
+               einfo "Enforcing the use of clang due to USE=clang ..."
+               CC=${CHOST}-clang
+               CXX=${CHOST}-clang++
+               strip-unsupported-flags
+       elif ! use clang && ! tc-is-gcc ; then
+               # Force gcc
+               einfo "Enforcing the use of gcc due to USE=-clang ..."
+               CC=${CHOST}-gcc
+               CXX=${CHOST}-g++
+               strip-unsupported-flags
+       fi
+
+       ####################################
+       #
+       # mozconfig, CFLAGS and CXXFLAGS setup
+       #
+       ####################################
+
+       mozconfig_init
+       # common config components
+       mozconfig_annotate 'system_libs' \
+               --with-system-zlib \
+               --with-system-bz2
+
+       # Must pass release in order to properly select linker
+       mozconfig_annotate 'Enable by Gentoo' --enable-release
+
+       # libclang.so is not properly detected work around issue
+       mozconfig_annotate '' --with-libclang-path="$(llvm-config --libdir)"
+
+       if use pgo ; then
+               if ! has userpriv $FEATURES ; then
+                       eerror "Building firefox with USE=pgo and 
FEATURES=-userpriv is not supported!"
+               fi
+       fi
+
+       # Don't let user's LTO flags clash with upstream's flags
+       filter-flags -flto*
+
+       if use lto ; then
+               local show_old_compiler_warning=
+
+               if use clang ; then
+                       # At this stage CC is adjusted and the following check 
will
+                       # will work
+                       if [[ $(clang-major-version) -lt 7 ]] ; then
+                               show_old_compiler_warning=1
+                       fi
+
+                       # Upstream only supports lld when using clang
+                       mozconfig_annotate "forcing ld=lld due to USE=clang and 
USE=lto" --enable-linker=lld
+               else
+                       if [[ $(gcc-major-version) -lt 8 ]] ; then
+                               show_old_compiler_warning=1
+                       fi
+
+                       if ! use cpu_flags_x86_avx2 ; then
+                               local _gcc_version_with_ipa_cdtor_fix="8.3"
+                               local 
_current_gcc_version="$(gcc-major-version).$(gcc-minor-version)"
+
+                               if ver_test "${_current_gcc_version}" -lt 
"${_gcc_version_with_ipa_cdtor_fix}" ; then
+                                       # due to a GCC bug, GCC will produce 
AVX2 instructions
+                                       # even if the CPU doesn't support AVX2, 
https://gcc.gnu.org/ml/gcc-patches/2018-12/msg01142.html
+                                       einfo "Disable IPA cdtor due to bug in 
GCC and missing AVX2 support -- triggered by USE=lto"
+                                       append-ldflags -fdisable-ipa-cdtor
+                               else
+                                       einfo "No GCC workaround required, GCC 
version is already patched!"
+                               fi
+                       else
+                               einfo "No GCC workaround required, system 
supports AVX2"
+                       fi
+
+                       # Linking only works when using ld.gold when LTO is 
enabled
+                       mozconfig_annotate "forcing ld=gold due to USE=lto" 
--enable-linker=gold
+               fi
+
+               if [[ -n "${show_old_compiler_warning}" ]] ; then
+                       # Checking compiler's major version uses CC variable. 
Because we allow
+                       # user to control used compiler via USE=clang flag, we 
cannot use
+                       # initial value. So this is the earliest stage where we 
can do this check
+                       # because pkg_pretend is not called in the main phase 
function sequence
+                       # environment saving is not guaranteed so we don't know 
if we will have
+                       # correct compiler until now.
+                       ewarn ""
+                       ewarn "USE=lto requires up-to-date compiler (>=gcc-8 or 
>=clang-7)."
+                       ewarn "You are on your own -- expect build failures. 
Don't file bugs using that unsupported configuration!"
+                       ewarn ""
+                       sleep 5
+               fi
+
+               mozconfig_annotate '+lto' --enable-lto=thin
+
+               if use pgo ; then
+                       mozconfig_annotate '+pgo' MOZ_PGO=1
+               fi
+       else
+               # Avoid auto-magic on linker
+               if use clang ; then
+                       # This is upstream's default
+                       mozconfig_annotate "forcing ld=lld due to USE=clang" 
--enable-linker=lld
+               elif tc-ld-is-gold ; then
+                       mozconfig_annotate "linker is set to gold" 
--enable-linker=gold
+               else
+                       mozconfig_annotate "linker is set to bfd" 
--enable-linker=bfd
+               fi
+       fi
+
+       # It doesn't compile on alpha without this LDFLAGS
+       use alpha && append-ldflags "-Wl,--no-relax"
+
+       # Add full relro support for hardened
+       if use hardened ; then
+               append-ldflags "-Wl,-z,relro,-z,now"
+               mozconfig_use_enable hardened hardening
+       fi
+
+       # Modifications to better support ARM, bug 553364
+       if use cpu_flags_arm_neon ; then
+               mozconfig_annotate '' --with-fpu=neon
+
+               if ! tc-is-clang ; then
+                       # thumb options aren't supported when using clang, bug 
666966
+                       mozconfig_annotate '' --with-thumb=yes
+                       mozconfig_annotate '' --with-thumb-interwork=no
+               fi
+       fi
+
+       if [[ ${CHOST} == armv*h* ]] ; then
+               mozconfig_annotate '' --with-float-abi=hard
+               if ! use system-libvpx ; then
+                       sed -i -e "s|softfp|hard|" \
+                               "${S}"/media/libvpx/moz.build
+               fi
+       fi
+
+       mozconfig_use_enable !bindist official-branding
+
+       mozconfig_use_enable debug
+       mozconfig_use_enable debug tests
+       if ! use debug ; then
+               mozconfig_annotate 'disabled by Gentoo' --disable-debug-symbols
+       else
+               mozconfig_annotate 'enabled by Gentoo' --enable-debug-symbols
+       fi
+       # These are enabled by default in all mozilla applications
+       mozconfig_annotate '' --with-system-nspr 
--with-nspr-prefix="${SYSROOT}${EPREFIX}"/usr
+       mozconfig_annotate '' --with-system-nss 
--with-nss-prefix="${SYSROOT}${EPREFIX}"/usr
+       mozconfig_annotate '' --x-includes="${SYSROOT}${EPREFIX}"/usr/include \
+               --x-libraries="${SYSROOT}${EPREFIX}"/usr/$(get_libdir)
+       mozconfig_annotate '' --prefix="${EPREFIX}"/usr
+       mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir)
+       mozconfig_annotate '' --disable-crashreporter
+       mozconfig_annotate 'Gentoo default' --with-system-png
+       mozconfig_annotate '' --enable-system-ffi
+       mozconfig_annotate '' --disable-gconf
+       mozconfig_annotate '' --with-intl-api
+       mozconfig_annotate '' --enable-system-pixman
+       # Instead of the standard --build= and --host=, mozilla uses --host 
instead
+       # of --build, and --target intstead of --host.
+       # Note, mozilla also has --build but it does not do what you think it 
does.
+       # Set both --target and --host as mozilla uses python to guess values 
otherwise
+       mozconfig_annotate '' --target="${CHOST}"
+       mozconfig_annotate '' --host="${CBUILD:-${CHOST}}"
+       if use system-libevent ; then
+               mozconfig_annotate '' 
--with-system-libevent="${SYSROOT}${EPREFIX}"/usr
+       fi
+
+       if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
+               mozconfig_annotate '' --enable-rust-simd
+       fi
+
+       # use the gtk3 toolkit (the only one supported at this point)
+       # TODO: Will this result in automagic dependency on 
x11-libs/gtk+[wayland]?
+       if use wayland ; then
+               mozconfig_annotate '' 
--enable-default-toolkit=cairo-gtk3-wayland
+       else
+               mozconfig_annotate '' --enable-default-toolkit=cairo-gtk3
+       fi
+
+       mozconfig_use_enable startup-notification
+       mozconfig_use_enable system-sqlite
+       mozconfig_use_with system-av1
+       mozconfig_use_with system-harfbuzz
+       mozconfig_use_with system-harfbuzz system-graphite2
+       mozconfig_use_with system-icu
+       mozconfig_use_with system-jpeg
+       mozconfig_use_with system-libvpx
+       mozconfig_use_with system-webp
+       mozconfig_use_enable pulseaudio
+       # force the deprecated alsa sound code if pulseaudio is disabled
+       if use kernel_linux && ! use pulseaudio ; then
+               mozconfig_annotate '-pulseaudio' --enable-alsa
+       fi
+
+       # Disable built-in ccache support to avoid sandbox violation, #665420
+       # Use FEATURES=ccache instead!
+       mozconfig_annotate '' --without-ccache
+       sed -i -e 's/ccache_stats = None/return None/' \
+               python/mozbuild/mozbuild/controller/building.py || \
+               die "Failed to disable ccache stats call"
+
+       mozconfig_use_enable wifi necko-wifi
+
+       mozconfig_use_enable geckodriver
+
+       # enable JACK, bug 600002
+       mozconfig_use_enable jack
+
+       # Enable/Disable eme support
+       use eme-free && mozconfig_annotate '+eme-free' --disable-eme
+
+       # Setup api key for location services and safebrowsing, 
https://bugzilla.mozilla.org/show_bug.cgi?id=1531176#c34
+       echo -n "${_google_api_key}" > "${S}"/google-api-key
+       mozconfig_annotate '' 
--with-google-location-service-api-keyfile="${S}/google-api-key"
+       mozconfig_annotate '' 
--with-google-safebrowsing-api-keyfile="${S}/google-api-key"
+
+       mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
+
+       # allow elfhack to work in combination with unstripped binaries
+       # when they would normally be larger than 2GiB.
+       append-ldflags "-Wl,--compress-debug-sections=zlib"
+
+       if use clang && ! use arm64; then
+               # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
+               # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
+               mozconfig_annotate 'elf-hack is broken when using Clang' 
--disable-elf-hack
+       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
+
+       mkdir -p "${S}"/third_party/rust/libloading/.deps
+
+       # workaround for funky/broken upstream configure...
+       SHELL="${SHELL:-${EPREFIX}/bin/bash}" MOZ_NOSPAM=1 \
+       ./mach configure || die
+}
+
+src_compile() {
+       local _virtx=
+       if use pgo ; then
+               _virtx=virtx
+
+               # Reset and cleanup environment variables used by GNOME/XDG
+               gnome2_environment_reset
+
+               addpredict /root
+               addpredict /etc/gconf
+       fi
+
+       GDK_BACKEND=x11 \
+               MOZ_MAKE_FLAGS="${MAKEOPTS} -O" \
+               SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
+               MOZ_NOSPAM=1 \
+               ${_virtx} \
+               ./mach build --verbose \
+               || die
+}
+
+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-3 \
+               
"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+               || die
+
+       # set dictionary path, to use system hunspell
+       echo "pref(\"spellchecker.dictionary_path\", 
\"${EPREFIX}/usr/share/myspell\");" \
+               
>>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" || die
+
+       # force the graphite pref if system-harfbuzz is enabled, since the pref 
cant disable it
+       if use system-harfbuzz ; then
+               echo 
"sticky_pref(\"gfx.font_rendering.graphite.enabled\",true);" \
+                       
>>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" || die
+       fi
+
+       # force cairo as the canvas renderer on platforms without skia support
+       if [[ $(tc-endian) == "big" ]] ; then
+               echo "sticky_pref(\"gfx.canvas.azure.backends\",\"cairo\");" \
+                       
>>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" || die
+               echo "sticky_pref(\"gfx.content.azure.backends\",\"cairo\");" \
+                       
>>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" || die
+       fi
+
+       # 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
+
+       if ! use screenshot ; then
+               echo "pref(\"extensions.screenshots.disabled\", true);" >> \
+                       
"${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
+
+       local plugin
+       use gmp-autoupdate || use eme-free || 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
+
+       cd "${S}"
+       MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX}/bin/bash}" 
MOZ_NOSPAM=1 \
+       DESTDIR="${D}" ./mach install || die
+
+       if use geckodriver ; then
+               cp "${BUILD_OBJ_DIR}"/dist/bin/geckodriver 
"${ED%/}"${MOZILLA_FIVE_HOME} || die
+               pax-mark m "${ED%/}"${MOZILLA_FIVE_HOME}/geckodriver
+
+               dosym ${MOZILLA_FIVE_HOME}/geckodriver /usr/bin/geckodriver
+       fi
+
+       # Install language packs
+       MOZ_INSTALL_L10N_XPIFILE="1" 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-devedit...@mozilla.org");
+sticky_pref("browser.devedition.theme.enabled", true);
+sticky_pref("devtools.theme", "dark");
+PROFILE_EOF
+
+       else
+               sizes="16 22 24 32 48 64 128 256"
+               icon_path="${S}/browser/branding/official"
+               icon="${PN}"
+               name="Mozilla Firefox"
+       fi
+
+       # Disable built-in auto-update because we update firefox through 
package manager
+       insinto ${MOZILLA_FIVE_HOME}/distribution/
+       newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
+
+       # 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
+       # Install a 48x48 icon into /usr/share/pixmaps for legacy DEs
+       newicon "${icon_path}/default48.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
+
+       # Don't install llvm-symbolizer from sys-devel/llvm package
+       [[ -f "${ED%/}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] && \
+               rm "${ED%/}${MOZILLA_FIVE_HOME}/llvm-symbolizer"
+
+       # firefox and firefox-bin are identical
+       rm "${ED%/}"${MOZILLA_FIVE_HOME}/firefox-bin || die
+       dosym firefox ${MOZILLA_FIVE_HOME}/firefox-bin
+
+       # Required in order to use plugins and even run firefox on hardened.
+       pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/{firefox,plugin-container}
+}
+
+pkg_preinst() {
+       # 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() {
+       xdg_desktop_database_update
+       xdg_icon_cache_update
+
+       if ! use gmp-autoupdate && ! use eme-free ; 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
+               elog
+       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."
+               elog
+       fi
+
+       local show_doh_information
+
+       if [[ -z "${REPLACING_VERSIONS}" ]] ; then
+               # New install; Tell user that DoH is disabled by default
+               show_doh_information=yes
+       else
+               local replacing_version
+               for replacing_version in ${REPLACING_VERSIONS} ; do
+                       if ver_test "${replacing_version}" -lt 70 ; then
+                               # Tell user only once about our DoH default
+                               show_doh_information=yes
+                               break
+                       fi
+               done
+       fi
+
+       if [[ -n "${show_doh_information}" ]] ; then
+               elog
+               elog "Note regarding Trusted Recursive Resolver aka 
DNS-over-HTTPS (DoH):"
+               elog "Due to privacy concerns (encrypting DNS might be a good 
thing, sending all"
+               elog "DNS traffic to Cloudflare by default is not a good idea 
and applications"
+               elog "should respect OS configured settings), 
\"network.trr.mode\" was set to 5"
+               elog "(\"Off by choice\") by default."
+               elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
+       fi
+}
+
+pkg_postrm() {
+       xdg_desktop_database_update
+       xdg_icon_cache_update
+}

Reply via email to