Gentoo Archives: gentoo-commits

From: Thomas Deutschmann <whissi@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/mozilla:master commit in: mail-client/thunderbird/
Date: Tue, 11 Jan 2022 20:00:02
Message-Id: 1641930178.987c3d41696b95624551567ff6ca2faefb6a05d5.whissi@gentoo
1 commit: 987c3d41696b95624551567ff6ca2faefb6a05d5
2 Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
3 AuthorDate: Tue Jan 11 19:42:58 2022 +0000
4 Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
5 CommitDate: Tue Jan 11 19:42:58 2022 +0000
6 URL: https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=987c3d41
7
8 mail-client/thunderbird: bump to v91.5.0
9
10 Package-Manager: Portage-3.0.30, Repoman-3.0.3
11 Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>
12
13 mail-client/thunderbird/Manifest | 64 ++
14 mail-client/thunderbird/thunderbird-91.5.0.ebuild | 1130 +++++++++++++++++++++
15 2 files changed, 1194 insertions(+)
16
17 diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest
18 index a525c88d..5a31df04 100644
19 --- a/mail-client/thunderbird/Manifest
20 +++ b/mail-client/thunderbird/Manifest
21 @@ -127,3 +127,67 @@ DIST thunderbird-91.4.1-vi.xpi 706360 BLAKE2B 9c06b70220402d9c04256528fc62260b77
22 DIST thunderbird-91.4.1-zh-CN.xpi 714609 BLAKE2B 5681115a1b4418d4c82308115b42910401d62ccb718679b3aa5075fb703cc4bf186885ccb83f51240594e576e3037de8afc9ad5ed0f61d01e978960e377b5976 SHA512 62dd3f25eadad68192f9e9a2e24580ba19638bca97ad243d2546c0912cd2db1107303678ec68f06bf7205f182582449ab030dac56371987626ef9fdc7d0c6523
23 DIST thunderbird-91.4.1-zh-TW.xpi 715956 BLAKE2B 6f500459be5ac8e610909c4802268f9e142071cb0549864d540a913a17da9125069017660f062eafae737707e5e1bf9e7fabe1a7f0e6055e1ddd05d27a12a25c SHA512 33905cb91ecddcf63240886fd51dba3454edf23fbf09a3ec19d8ea0585b5e54bcc79dd37b3e87d1e571bb5c4c317fb732546d51917b9e41b47339e3819a8fa91
24 DIST thunderbird-91.4.1.source.tar.xz 408805472 BLAKE2B b12d55ca45579c7a7d230100b9e4af1e6461ba6b6778b23d951ccfb3b497e2cf86e3952e09c57bc3477742f66283e9101f70edf70cf3bd92296982b25ef6c448 SHA512 aa442ef886277f5091ebadff907a29451a0ee6542f24adb5c1fb4223193d719c2cb01474d3ccd96067695b19ce3cbf042893b0beaaeb7c65e0660ab5072bf82e
25 +DIST thunderbird-91.5.0-af.xpi 560262 BLAKE2B 3f4844b361344f8200b6c40ec1d1509e16fb6ec7bf830e0b83ee14138e7c7bfdda532d584d9cb9839267ee9869425abc352cec9d0ab6869aad20e39e6798cbd6 SHA512 1d583ce659d11d249886c02a66be83b4f3a0ee9350520ed77d1195dad61f5ef4ac5112db44ad2b325446e7016be0429b0c9886ecd019831de50619265b69e58a
26 +DIST thunderbird-91.5.0-ar.xpi 660337 BLAKE2B c81e81ea6f504c2e54d1f77b456dd6514f8378feb59d6df4bf699e0a8e84ac3bfa65a30aa0a7f3cbb9f974967c0e139fae7562b2f0ea55fbfb4e034787412077 SHA512 c9dcb61473e6633215765c2c1b804fb32774dc837d1ee14700fadb85648ded747f25e0cfeee3b08b5cf2091eb9dcfaef46b5975a995744dcca40f6bb4bbf9a8f
27 +DIST thunderbird-91.5.0-ast.xpi 577075 BLAKE2B b10d1f5bb2ea4d234b89dd682050d5c63a84754d009681ce8f7d8cbbaebc574c275b2b1925564b443a9d19d11b50f249677d5a79b8a4d2a5f091fcbb72b7b265 SHA512 049117594201f6f0c7da08bd39f0c130da2ad5a9c0fe17962d39cdf6a169e2b3744328e02b6cbf60627b757aa9d87774fcfe0b817e5a119ebe4f7ad937ed0245
28 +DIST thunderbird-91.5.0-be.xpi 687231 BLAKE2B 0c698f208743934fa214dd43d85d836160568ba10f06aaa530519fb6a2f0f576b15cac36fa31a1f8e39f82c770de7ccba62175000e19ff773ba3410bbcc1e4de SHA512 7dbb24bc8b772aaa651957251f411b7c72ebcd2e31bec2dec3dd264461f22c58b26097ebe614af864653161af185507e6145ac9f66d5f7f25d7ee49e4a5cbd78
29 +DIST thunderbird-91.5.0-bg.xpi 686439 BLAKE2B 6161959e9b5451d900b7f651f925b4d4264364381dda1473b539fb7b9daaca5eaf86f228102f5fc9b291f578dfe889e61296e08fbaa134bc97dd86239041a0ad SHA512 28b79f72052f9f9dd31feb625dc8fff0030196cbcb0e485614418eb60cee29cd2abd1c77714bbc264a3b4ec0939aae38f5286921727ff6107d8e1b73e9d95a57
30 +DIST thunderbird-91.5.0-br.xpi 616043 BLAKE2B 9f411454f13fe868a8d6aa0498e8b3a86c4b9170df5672d31dc32932e1ffcfd8b0156a9b1fe0c979e329f4b02f83443a8416c18328af6c789069eca624e829ef SHA512 baf25da22d05fe0f33c612d9caa8ae5a9e139dbb128b03582a484a3df8e97ca19c3e500f812c4fe0b9a7e6639392c39412353bb2d03a1e6d6f1ea1b4fa1080b2
31 +DIST thunderbird-91.5.0-ca.xpi 641185 BLAKE2B 4929e8005140eea93af0e4299d68eececc2ff499b68c8863a14bf54358d85bf24d37562572773bd92200364a9a8f6d19544278e7cd43548db355a316437a0f07 SHA512 7303741a8e6714258a3d70b330c9a04c2f4c3424751b3a505297267f9cefee05dc70e06600db739b9248f6330118ffa08062495a9e4fecc661dc1ee7b4a78b04
32 +DIST thunderbird-91.5.0-cak.xpi 647243 BLAKE2B e67a96d46a177a0abf4a9bf754daf219ab69231ac0ba130307a75313eaba22c205694d8cd9d9179a92588609d19e0ea0b5ca969ad968538bc9a8bbd75f03fae9 SHA512 fdd5b5c47c54acd0145ca12256c62086b118622833784c71694fb7c538ced673f7f541f87bb79853af98a018eedcd7b1c0629d1faeda789be25ab672cf47c6b1
33 +DIST thunderbird-91.5.0-cs.xpi 698291 BLAKE2B 96d8863b6cc524148c7769aa56184e210a97f063847d9bcfb6b13448148cc23a86d0d3ab092662dc6e04b2537edcb629725885fd967c8c82717107f892bc473e SHA512 3ac36037db8fcea253ee11af2898615f31effa0b0eadf39771bd7aa0b307242a234d5d4e893ffedc3d4cc408c21898383be57a434b682d74f87052b0231ce2a9
34 +DIST thunderbird-91.5.0-cy.xpi 674001 BLAKE2B 821c964fed50ad424d7e1dc50f7fb8659275d70b5e414502a2d6b707d2ff978dc2d99e2f69cc6b15c8d3e07777676d4efbe5ef3746efd722f416b15d8d88a094 SHA512 66ea0dafe747707bd7b9c2c2d3827863b4249da6f0322c32bc0c198e71cda1d49fdcb1068ab03e0af0ddbddd1c39c3e554eeab5fa5a44cab10e31bca0b4f27e1
35 +DIST thunderbird-91.5.0-da.xpi 655976 BLAKE2B 52afae037f34a0981e32a852363598a223dfedafd6a158b0761119a790e39f87c9468196d786755074de1cdccd2614a9f72c291a229ce751d6b1d04538147a3e SHA512 61bccca0622aeba1cfd42f4bdb2d0423510f9d80ccbaa283f0cb50cf65ffecb17c3f11b565fae035571b124b7523210706f94652754dc41cf191d080e584d0b9
36 +DIST thunderbird-91.5.0-de.xpi 687030 BLAKE2B e5d7f56c8abfa0c0c55d061e70428ad126a5f873d2de97b57b481a6a85ee7be7cde8bab606adddb44f4422c9f230242633ba2dca67fce3b4294ff540f3f585b1 SHA512 4fd746c60a9864dd57bf86d23abac2d1093611595ccc09bcafe00b163487989b8431ac5b25f40ca088e7c28101403e92cf08ea1bb0eb0fe690e04af08448a0ca
37 +DIST thunderbird-91.5.0-dsb.xpi 707241 BLAKE2B df1c76d0aba54ab961dd8ce9d331647ab4320b6eb4014eb7417b9976d153984482bac06be99bf0678e10e838bf7bbc673bea37658660dbe924321664d164ffe6 SHA512 0b11b24df7ce17d83597da687f949829d6b2912447c78e301d824fd36c71efe5ee81624471e473ddd3eea3da7611f352a7b1f90799882aa4372a8141e64ead85
38 +DIST thunderbird-91.5.0-el.xpi 803553 BLAKE2B 8d383aa1b72f22a5acb1bc79512a70ed5fe58ce5a4d3423e66db06bdcefb1ff1f2005ce1ef0fb723da7a918e2c6614937f52e714d24b06d9f221a71edec891aa SHA512 eba79d9e4bdabc44743d3f58ed89d43cceca9d63779161cc8bbb989d9092952494cb97860823f21913f48b9a2a58783a385a7b61176d225fe1f8153bcf97c5b8
39 +DIST thunderbird-91.5.0-en-CA.xpi 634148 BLAKE2B 7eff355460a007a59e90f7968e0b595e8af94b0f4b49362cdb6c3a9407edb920fde6fa01a70c4fdd2697a672a0d3824f68dcf0f957f189ab4c68da6e2ec52ab7 SHA512 b292bcd58cdf411082760fee4994fbb0ac3e0d075ae725a8dd90b0b62abfe5f6fe1997deff1995d1af3c6d03ddcd9b5c97115434cea845fa96350bd29ad06487
40 +DIST thunderbird-91.5.0-en-GB.xpi 636519 BLAKE2B 100305bdcb6249156f8f6be4e3e1bab47c69a1cda6cbc68fc2b70a08fcf6b1f3000a36a1118bcd0a998aa8e2a282d32a8609d18fd60efbd5c76654d8a9051cd4 SHA512 67c003f9e3058bdbeafd72c9e429c23c8d6b1ccd4de24642255ecf9f8e09511e3715d8222edc18c915608df9f9837a623ad6fd580821973389331cfdae2d838f
41 +DIST thunderbird-91.5.0-es-AR.xpi 685109 BLAKE2B 75604d9b5f066982ec9d74bbd8f5213992533bce3fbaf16deea0e8e727cee99e3627e18bd7fe676baa70dd7a8d1b6e3af6ef5448faec06051d2ac944f9738588 SHA512 a2fc1fabbfcf3760e69417470969c95064678683655a0c3f036b6a9fb4faf94f5a4bd617cef2e21f90a7051fe5682adcc65f215cff9803538c2e73be57565648
42 +DIST thunderbird-91.5.0-es-ES.xpi 573866 BLAKE2B 052f02b81dc2c282c409e555e2901f43dcc661621ab593adc7cb06f54b6ab5ee30c0a041b510846ea01811c28f4462d0f8370e98955425966875cc11bb597fe3 SHA512 21dacf1de047cd3e87be36948d985377cbd0e47ad101740e8f6be5eab6b26df56699d852ef836b623e0a1cd32e2805020cc7e674e5b9ba38ce48eb1c62a58cd9
43 +DIST thunderbird-91.5.0-et.xpi 598857 BLAKE2B 4807f38f420bd2a88eb7d5a0cbb77f8f977cf97e764e9a7ccfc2de4832a63962bebe593a7a69cf139c4abd3bc81e3d11cf452c20c56d3e526ed656ddc8657ac8 SHA512 eae960d5cb2afe459105d3fcfc27114381d32353748c6acb8240f632b54cfaea2b9b85722bf378b188deb6cf74c0c838e2cab974906090a45583a7fb6b7d07bb
44 +DIST thunderbird-91.5.0-eu.xpi 666128 BLAKE2B 39dd5cce497d5509f2759ca14adfdcfd8e7e6fcc536383e9c0d36a21b9d8f6c29c13f30fee6081f88f1cf8e74200251267c805646d466618b0b1dbeb2c0fa699 SHA512 074fd37cc69a527e723384f1a31434e660bc821b233f6b03b3792e16709da8ff3139fe3470e1e47ac69b17f603d1594891c74656044b4b1bfc5d849f49c70170
45 +DIST thunderbird-91.5.0-fi.xpi 664680 BLAKE2B 0c0fc207b7f54bccd7ea135670325f5d1f4d0db17c990855092ca1d94d03ab441deb934d4b0d46e340c46234bc9ef4610a39c4cac11688df75060408c3d034a4 SHA512 b4b4a09fe1562961ee4515a8c9acbe996a38c9aa09abe4ff7d1017f6a7fca35d360e30a64128b0cdc439228ccfeaef76e320b9a6c8aa575fef5bf701ebce2697
46 +DIST thunderbird-91.5.0-fr.xpi 697508 BLAKE2B edb68cbddc612f69827b8a253c75ad353d32b097565b1db6c45e33db7d4d31152b80df3a9f367039ceab92f7b1133fba17313f2dead753aa128878a576e430cc SHA512 d5f246e9639905b92e6e6e5d2cc90639fd7431b4d93fd78d77aa277e34fbbe3c773577e8bbe953ea49aa96a2afd2fd83a3557e086d0c8bda00dbcc8148f38a7b
47 +DIST thunderbird-91.5.0-fy-NL.xpi 680176 BLAKE2B 24fec724137c7313ee892fb8d15c2fc8b806082e3a6b03aea003b71071a45633e4b0ad3ac410a86cb06520036f2b078dc2fcb371f012e142bc5d2948cc1d6b2e SHA512 3187040d7762f0a611f5239740de9da6c6577445afce6c8c3389de024b954e266cabf5b8912de7c88318e2b3297ff56398adf797828a965bbeef7a29b4bf72c0
48 +DIST thunderbird-91.5.0-ga-IE.xpi 601923 BLAKE2B 417ab87ecbe2f3ccdf6a79fec1f9a1d1930d11efa964e019fb8d2ee03825ca2660750b4963aaba816cc2f356f776072055dd03c36b7e2d19abbd2574e4b8347b SHA512 5c242fb88d531e75e92d4c3030a0339e1d07db464000fb2e93eda49d186adec0a4664cab490694d15ea6173846b6700cbdc83e4ef6c7677e67c5f736b15e8813
49 +DIST thunderbird-91.5.0-gd.xpi 635802 BLAKE2B af095848a441324f560d80469e82910a408b949cab62822abb0e51ebc9959a2807fa5adf7028fcf96ce8090ef7f75ee3b3844c51b6c598ea172e722805c8ddcf SHA512 2a6742c698d0d248b7c647dfaee828156ff402e8ffc34395e64ebe82d07a5e0c78030c22d2d137b545b871f9b5fde6357fdf2aa4208fedfb62c13b044a10fda9
50 +DIST thunderbird-91.5.0-gl.xpi 671102 BLAKE2B 150d054df194f4a5137161b1a6eb316675cb01453ec2dc536cb90f57bb17509b82a510fa715a1951e136a0b347de31b3473e0217ee6d12cf3d94807fe8072dea SHA512 285a7d649b07f72d3fb099de2e3701d7c4ecb5777b28d1e1272f126ca2e1da8d0cd0f215841e8b4e37a253ba896eb9b7d20bcde5c8d663e7cb463084c163efa9
51 +DIST thunderbird-91.5.0-he.xpi 665959 BLAKE2B 16e9e81e7aa7a34a266f9b20dc7ca6a18be9110ef6418c6db703f83109d0bb8fdbf9dd5f5c48a7866ee5fc1a9c4fa50e75ccffa244b282ac76da8923de329f13 SHA512 7d00e7819ddc7606e34110658c817a6845f14b39ca2e8aa7ed314fef56579d296123f23650487a17887fd384160659787a6aa468bb3dbedac71ca21159a430f8
52 +DIST thunderbird-91.5.0-hr.xpi 641199 BLAKE2B 076f53809926f3bd318989a821a2d8c4f7a7268eff398119bcb1308c4a7a9d5a91189b44c4a7743afe658666806299fd7da82f8aa2b3e98845af22a9dff07e6c SHA512 81fb6e64b6295d4d1a0d8cab94fad7479017934f72e23b33f3eb95d9e8c77f640c07cbd58a0bdf931c2af9b30b9cf3b6aaeac22b622bfa2262f45602b4a13be0
53 +DIST thunderbird-91.5.0-hsb.xpi 704709 BLAKE2B 5db999a430f68b3365855ff29e7ba4de342a5a21133ef81f5207ceb3ad539fd47bcf39fda9e7f5e76f69110619a05489875749da29c26da273d81d1ec111ec7b SHA512 70655592c441057325df9851cf8cc6db7c224fb6632db78d1d5741142868e7bb3b1fc8d80218779f3b5f0fcdedd5304ea249639263aca4665aafd8d23b5e8305
54 +DIST thunderbird-91.5.0-hu.xpi 707544 BLAKE2B 3f42410a3f92f8780a0911e9ea0f14eac4693a1a3b879f908901eb2bf107512e612ce067aee25a578ec7ec4bde480c20ebfeaaed9633376d03641175d0fcf1f6 SHA512 a127041eb65510eb2e48a113b671547bcbb023b8ac760dad60e8932c97a2273f6ef5bef8b4a73df9e53f12592cd3716eefa2b547b300584b269e9915a800de12
55 +DIST thunderbird-91.5.0-id.xpi 639060 BLAKE2B ca531ac9cdb4add95d5e6134da67a84e4531fedf5ccff70ff0a336f4be41b62396f595d138f6939fe4fb9c96116daaafb963433aabbb810a3d7bb479fe935da3 SHA512 99557be72ca2a7cb9ca21250aa308e28eb8e3ba8b418e66c9734990f63b7198a21242086b9018369e1351b5e82efa3ebdefd07468e43f729390dd1305ac9260e
56 +DIST thunderbird-91.5.0-is.xpi 575021 BLAKE2B 28ce5d17a89824f8969267550b3de6d95327137ee1ef5c98640f3469b86fc99932b35904e35a7536b7c63afa15b883c1b1f59c5673c0fa8d732922c4a2193fa2 SHA512 07bf839cdb55ee2ed79e944e8d3bb1552ef26046a01e2c16737d192a2d0b34312ba52d651c186cf6a276c73967fd1f24e5a9d0886c509456e1a261e0ca75918b
57 +DIST thunderbird-91.5.0-it.xpi 600165 BLAKE2B f598ae5807620139f2941a7d6a57ed288e0f5d2649ddb7a4e34d40200301e768dc61cf628ccb5c6cd3b8f05ea7329f3132230a68016fab0d725e9c73401196cc SHA512 4d4a69ed49aebe64a85227b0a874a5cd0053d5082b45999f58bf89e29bdfda462a41587cd9be2e7f2a8a561998f265fb6e07ca9fdff38b8fa7ad6fdc28d181c1
58 +DIST thunderbird-91.5.0-ja.xpi 741256 BLAKE2B 22a4a2e103b13234620f140bde0e05d64fa656e3a84d91c7ecf2216225daaefae4fa31fd64f98d5691befcdfba39a66eda1d867b3a377eaa0b1b1d8b4ed1f2f7 SHA512 3733197389060cc9794ab73a60618b8ee37cbc4cde1d758271c7d9e8bd81c3ee02934b454f25eac274c317494c151d228770b99dbcac54f7e2d898940e0b9c03
59 +DIST thunderbird-91.5.0-ka.xpi 746755 BLAKE2B cb83acc85ebacd71539fcd1caaaa2b20a69da00f57895021db95ff8e3d2bd328dbc8dd149825af81ab5abc6264682042b0828936a3f27d003d2317ce95d7eec8 SHA512 9fa6a69785a3af9415f634a8252e6adfcd61e99c0bf1810c6ceb7a85c5dd71394af2cd1628c3a580366a3a50a9bb7f7b5f823b943014bb70ff64b0798203c60c
60 +DIST thunderbird-91.5.0-kab.xpi 672066 BLAKE2B ef572a608656f4db856156d2f30809cd4361c57a3a7fd42f22981c92107cc7fa3890ccd85184eec12f3b6e79339ffed85e28d7fb7088f03c14d1ce2ec3522289 SHA512 d53fb40f94a3d36fdd8cd6f9d7aa1129cf1257f675744c1b6ea4e2cd94b12ffa7eb2d4b0d06439f7990d9c735e333d681d5233c6ac483f5181d652d61be6372e
61 +DIST thunderbird-91.5.0-kk.xpi 731376 BLAKE2B 332f4de0402f0702493958f81bd6d502bc95e276ffa57ea10c648f50b503448fc3a148c83f6b0bd351cbb57143205c207bfad356789a04cd409608fe90782105 SHA512 760ede6e8eb998066c8254071f970b95d3998972c3ecd085d36fdb7a21d02080bad982c4b43f8351a4c90a30699c18a03c6d4c5f9ed1143391c2ac52f8431f19
62 +DIST thunderbird-91.5.0-ko.xpi 695485 BLAKE2B 07254febc295306bb820032fc15c72afa0c4b38dba9458e4a5e89a707da8832e3c5a8d6438f52c5f394c270cf72d7a20a48cfdc294002d03c20baeb1978eed81 SHA512 570b99abbd73fa90a317e782ccea51c3a85f7592aefcd368167ac731315941a139f490e10fa7a87d54674e9930b46cd0997aa4c5406b1ad5cae1230ba293523c
63 +DIST thunderbird-91.5.0-lt.xpi 688963 BLAKE2B 617846f26df3b7457c0f1385f29822c24946ec53a6f3e9b9f45e9e1101a772d700a04cb3406a8d7c70a6a46ea227cf3554665a3daf59f37c0e5ce7217bed5d3a SHA512 3e8e668793c10562e16e34aeafe4729598b236b5554a27444ab870bfe83d33729dfd6661b8b18fb9ded4faad64979a07fb777c8a5eff8cbdb61d73ce9617b45c
64 +DIST thunderbird-91.5.0-lv.xpi 614311 BLAKE2B 08404143f77c66d0ca4fd2cd0cb0957bce77cb202c09655271e0e28a297baed2b968dc337ec9e7e3bb1ad45ca7a4cfbdcdc802e792472c57914d79480ccff410 SHA512 d9bf6ba2613ceeb0200a2d92387ffd6834e3df62686d59e254c7be4b77c1c6c6c82b78e057c9e5d69b4eef0407b87881109444d45829d46dd0cc6ff31dd0d03f
65 +DIST thunderbird-91.5.0-ms.xpi 574071 BLAKE2B 0d7056cff6984f664f9f92929bfb766e2345646d5983a1fb1cce7ab675fc700cb683a801cccfac3605bb263113ef90db55a1b4bac7ba18fc004f47ead0f88a63 SHA512 0bc7763529ad6c7fe2faf0f23be4c974f3f7f74a193d0600794dd0ace3e0f30879222d1469b325a3d6c463e18ae858b7831fa430779164debd4324c0b8034ab2
66 +DIST thunderbird-91.5.0-nb-NO.xpi 645845 BLAKE2B a0523bdb37a957be78e55ddedac494f65ee7cd5371f40a5665b169d43087258373e2df17465fec6513b0d8e296523feeb4eedab7abca1d05d2ed3eaff2c58bf9 SHA512 be3219f44538abcfbe81837e16824a023deb31bd79427c12998918e6e152e4dd1f25802a4fd63c52d2dce81c7c13348a8c64a30708025a0598d47fc630d8e195
67 +DIST thunderbird-91.5.0-nl.xpi 671294 BLAKE2B c2e1950c7a0f1a17d721d0a5ffe5f3d39d162dfe0bc769e51d3e458bde33612099eacd7e4f49899519dde1a5d3f40593faf3d0d8e5dcd96e7615ab35db4ed670 SHA512 317256630313832f32bd7ccc8353359474f785f3e155b1c73c361174da456f90b07fdfd0d61c9e6e86333c2f984b5f1d4b3b8423e5ceb220e01dea46670018b7
68 +DIST thunderbird-91.5.0-nn-NO.xpi 649250 BLAKE2B e9f55cdd29c6d17021d12f9333b72a6120b726cc4b47c41ad77fb2388499cc399cde4a4d4c3c16f8ad322b11956919c17418b77118002b4040ddb443727af770 SHA512 244e758beaad514059f7a830556d1446c5e0d2fd9e413536ff73cd12f8fbb5bf1f00109874ed3658378fea17ac8969a14cf652e89dbb6dcff5ccb5b9402df4a7
69 +DIST thunderbird-91.5.0-pa-IN.xpi 647763 BLAKE2B fd6e17c07812a36cb07a0b3fd4517cd06b624cdf683359443277eb98d32e437be6738304007177b2715a6e5f7cd3a0a96ff25ab24d2af0b924f3dbb84ecfff87 SHA512 e3a4748e9dbd90b9beb16b25d80f0a4d3d145def85b7fc4cf6781ce6f4ce2c8c397514bdc902f13068f3f8467ceab6addd67af345d3af7aa95c7e1ce7a73d837
70 +DIST thunderbird-91.5.0-pl.xpi 680331 BLAKE2B 33153c0e9e8c3d8ec338d251efbaec0293ca272a1a4834f6c035c7513a1102be19e4210c854921124263514ddb5a6f9549f1c9e9e4176cae3ef59954593c0464 SHA512 6204424d15f7054624eed94e17da2e4b07afc78fbc082fc2ec60c9377cb3a66facc6ceec602bef0c974a9f14519b63e59bef81a8e144712e2c27ee1b4fc08ae8
71 +DIST thunderbird-91.5.0-pt-BR.xpi 678984 BLAKE2B ec92e7fad45f6fe8c6b0b2a19d072718e7d2a4697de9cc0ada283cf946449f9b25ccf28592fbc7f56f1cde0bd0615589eca5c6d73eb2881781a42a18fce28150 SHA512 9bb36eb694ee4db446849f503304edd5d8a59b03ef77903c6050440c664c1479eac4516943e36021c4fe1e066d8a32810bd1d78681d39c4148108b8dd745e3b3
72 +DIST thunderbird-91.5.0-pt-PT.xpi 665735 BLAKE2B 9800c7ecabba84af448a0095a5f37331b2441f87083e8a1ad50e09314ac710d01ccfa84f8a3c07863b2a8d3205d966bf2d2caa4ea520fb26cae1779ba05686b1 SHA512 7473dca967ce1dda1c27175d302144a8ca5606d8930f68337740f9135c81fb7c338c152de6e6443c7d6d67b41c390fe046f59d0cfdc869364fba6d8799f2c664
73 +DIST thunderbird-91.5.0-rm.xpi 671680 BLAKE2B d7b60bd570ef0bde28aefc711765673f1683049d076de275c54561dc592c7803db0846a8dd67c5a57cf82e5f56b81a24321f11151d48b91181a6e795c8568343 SHA512 415cce75a32b1e751a4fa890b91b86562ac794876c94d65bfb76841807cbdcd8252db484945699080cf84a143e3fb9a675eb2aa148f374d71a78f69ba03eeff2
74 +DIST thunderbird-91.5.0-ro.xpi 656488 BLAKE2B d1f3e31303b706f96eb9af19783da54fbf2027023645f6a311f667836ae185c167abef016a278d377afe39232bb42b84246558a4a065f98502adcd8aec578d5f SHA512 a9d82ea460a1f3e4e20694c805a01379821689923412bc4d03bac2a14c2cbbf40371f472bd9f25b112b38b2e910c755f749fe2bef11b55581463b56aa0b7de18
75 +DIST thunderbird-91.5.0-ru.xpi 783362 BLAKE2B 9bce494bc861aa7fbb427678c2abfcf071724fcab8ffe884191d5f25046c1eebf59d5eccaaf6541667039702820a21249dc206710736c1033d3fd61b0030fa04 SHA512 1367f072ff25d2c1f23fb6f17fb9a17ec839d9a5405f338955af00b0c4eaf1469c16acf01aa7554764003d3ecc2106d229c0c24321ba32d67fa5b550bd855dcc
76 +DIST thunderbird-91.5.0-sk.xpi 707735 BLAKE2B d30decc01d625735d7710abccd1760e443aee22850a2fe854c3a8935fc3119ee39dd956b3d2fdd4299af990e9fa9a78bf34c2c0b59d77f73e19ed09078e0734a SHA512 9f0511479ca33a73b582c822a5292e852d94d96696a7c78c54bab7819be08577d01eb60d24b17a154b9073a8b543b493ed1034bd3492f919b35b8b46349b1601
77 +DIST thunderbird-91.5.0-sl.xpi 660449 BLAKE2B 5f0db88df501db74fcd5202b5483f187968f2ea910b578d91e3926b541ccdef43bb94cbcf77e377e7cfc95965e1ac399a9d138b877c9925c63f9625aec7cc045 SHA512 427e3e6bc3882d8384efb30ef8529377d0b855869fbc21d6ea0d4ef027c1b357dad15e2cf3e03702ca46c3cf9d4b8f5d523d87fe956dc7d56e848ac0e21c1ee0
78 +DIST thunderbird-91.5.0-sq.xpi 693391 BLAKE2B 962ab0b60f594291d6d8377d3c80b4170f88b9c7414f86b5fa89c45d3d5be5da6ca37195e47d5579de6b0acca4a6603cb21d37670694eb7ec7747f7bcef76bd1 SHA512 58129828e3cf1c3cf7c324a631cbd92efbe10ac7071f012adce9ff761461e6936574f54f8010d664f39befefaab7f69455e37f9dd96f6fd928d65b496da3f85f
79 +DIST thunderbird-91.5.0-sr.xpi 703354 BLAKE2B 8ca850543ca0d9c8f9a3b57b0eade1db85a7effe879b6dbe6b213d1c0917c1135a81aa7a85720c4d8cf32a05e86b14143132285df7ea204cc9dabcb74a2ae169 SHA512 4167605cf5ce389dc39a525dd8fe26b4a6109ed20e3e14df4170ba4f6e83dd1c4b0dfc28028cf49976a0a74c38416e9287b46dbd5d65c973d9bba6f118595c7c
80 +DIST thunderbird-91.5.0-sv-SE.xpi 675815 BLAKE2B ee26a1e8c765497230db196900532260310261dd21b7152485ff07c4c0fb201cf3974c3d7f5ba42dd496bac992ccfed093c4113c0fabe8bf178ff981631a8978 SHA512 e9976b54b4b423f175e4fefb42188d2ac1d22f94277476b46800feca64797b15de89140df04a290de1e8b8fea88de56cf79aa8360da335c4a6b94e92df6f7b54
81 +DIST thunderbird-91.5.0-th.xpi 741246 BLAKE2B 8499687e27454534c69c64d64a62356487955d7e457abb192706ca48b2f072bdf8a4e1b4aa223b05b8832687b4974ee00b1e45b77589c8b663c1b69abe045704 SHA512 11e944bb36a830b5bdd9f2cdf7e601694230be32ae5c2cb2ba8ff58027b8512cf4a5b17b91a053c92d5eb97b992a121f2479f3835e05b11fa77fae6d011854de
82 +DIST thunderbird-91.5.0-tr.xpi 685075 BLAKE2B de2ac3042449626365f5b541bcb67421a871f98dd33a7bb4b08969002c7a5233144231bf47047fdf0ed5498c2c301d4c679a06f6b79532015f7d6b68c5f05820 SHA512 afb13c3c14d1b7185d7b80fa2c870832036f4ae9b2f6064d06d7aba28745e110d8126973ceea6bdfa97480f73a313241ad5a74470e859ab4e1d0eb47acd3b771
83 +DIST thunderbird-91.5.0-uk.xpi 780974 BLAKE2B ec2cd789da897b1366b89fcf4b84814da2e703b204b99df5c177d6caf55e1b93c0301d020b11ad06e22370ba6dfff00ea47d1788825ebb9d4ffd58628f4ecfc6 SHA512 7448dd0f609839d3447c92bef10967b183e8ecc40b20e924603cae4e87bb8371f77ce520ded157603ed746328eca1e86a61e1edf7842de4cf811c51723137f8b
84 +DIST thunderbird-91.5.0-uz.xpi 588128 BLAKE2B 1653a97a765774808664f8e5eb4974454e0eec401ce58e81847fb529a8ad5285e466d710ba7afc8ddbb588d2880626d4f50cc9ffe4363b682dec491e3f112746 SHA512 3bdac984a2cb152ce2ceb0ccd6fdf5916b4a78ad5806ab1181e2551a1d45759e69bc1f1b29cf24f546715a7adf18ed43351dfea13bc4b04dc7dfd9870a1a2cf5
85 +DIST thunderbird-91.5.0-vi.xpi 706363 BLAKE2B 0f82ec5c419472ce0af3177d6cfb10f3efbcba831332fb79e6df400866406dcdbb9fb5a9e0f9d99ef1a387a0b0d105c63b9f62feeeac36183be3e9efa2f49ffd SHA512 21157fb61760e21485ff1a375f10949357163545bf9f3a1b0f30ba340103c37584d2e3fe9239bf8cc8010d910fed7030052421bfa4018fecb5576be24d73f04f
86 +DIST thunderbird-91.5.0-zh-CN.xpi 714610 BLAKE2B ee021e530c5fc109ccf6fc006fac56cff382df48548087085113d3358705ba329f1870c37ceac1c0c627614432d00a4efad49800afee9f3deea5ea91743f8e87 SHA512 30670fd9ded9c5fc8cb42555742b9f72b28bb3ab79fcd13e570a57df931cbb8160236387acecf90cc00c77f248e2b713aa5cf3bafaeffcada7b874ef44a9a9af
87 +DIST thunderbird-91.5.0-zh-TW.xpi 715959 BLAKE2B 291c6fec067909ef19c7134ad1b7d10107ba382f8187f3ff2701a1acc7073d224ba8bc6de889ec66efd3228d60faf5e43b5b5c1d514bf3a02d41be6974a704ea SHA512 bdd0a4d3c2139d951075237503d104e7ed371f6e3aab6ef670304d500394917bc278b2ce46bdd69b4c9e77f975c0985094c529cd2e4dd067d440c243f594f301
88 +DIST thunderbird-91.5.0.source.tar.xz 405937856 BLAKE2B f8bde92181e87608902595001fbf93b583836c5500358230a132e43c98c1bce0533c8fb81746970157049d84cb916d44e6573a4f39dddc4c4c76ee32d3ccef7f SHA512 e1cafbd99e67e8fef346e936890a22aeadded4aa8be604607535ae933251bc1b2a3b56c2b62045b3d37ecb09999adb746157df188d1a32dfe75685f3af959b7d
89
90 diff --git a/mail-client/thunderbird/thunderbird-91.5.0.ebuild b/mail-client/thunderbird/thunderbird-91.5.0.ebuild
91 new file mode 100644
92 index 00000000..833c6021
93 --- /dev/null
94 +++ b/mail-client/thunderbird/thunderbird-91.5.0.ebuild
95 @@ -0,0 +1,1130 @@
96 +# Copyright 1999-2022 Gentoo Authors
97 +# Distributed under the terms of the GNU General Public License v2
98 +
99 +EAPI="7"
100 +
101 +FIREFOX_PATCHSET="firefox-91esr-patches-03.tar.xz"
102 +
103 +LLVM_MAX_SLOT=13
104 +
105 +PYTHON_COMPAT=( python3_{7..10} )
106 +PYTHON_REQ_USE="ncurses,sqlite,ssl"
107 +
108 +WANT_AUTOCONF="2.1"
109 +
110 +VIRTUALX_REQUIRED="pgo"
111 +
112 +MOZ_ESR=
113 +
114 +MOZ_PV=${PV}
115 +MOZ_PV_SUFFIX=
116 +if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
117 + MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
118 +
119 + # Convert the ebuild version to the upstream Mozilla version
120 + MOZ_PV="${MOZ_PV/_alpha/a}" # Handle alpha for SRC_URI
121 + MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
122 + MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
123 +fi
124 +
125 +if [[ -n ${MOZ_ESR} ]] ; then
126 + # ESR releases have slightly different version numbers
127 + MOZ_PV="${MOZ_PV}esr"
128 +fi
129 +
130 +MOZ_PN="${PN%-bin}"
131 +MOZ_P="${MOZ_PN}-${MOZ_PV}"
132 +MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
133 +MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
134 +
135 +inherit autotools check-reqs desktop flag-o-matic gnome2-utils \
136 + llvm multiprocessing pax-utils python-any-r1 toolchain-funcs \
137 + virtualx xdg
138 +
139 +MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
140 +
141 +if [[ ${PV} == *_rc* ]] ; then
142 + MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
143 +fi
144 +
145 +PATCH_URIS=(
146 + https://dev.gentoo.org/~{polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
147 +)
148 +
149 +SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
150 + ${PATCH_URIS[@]}"
151 +
152 +DESCRIPTION="Thunderbird Mail Client"
153 +HOMEPAGE="https://www.thunderbird.net/"
154 +
155 +KEYWORDS="amd64 ~arm64 ~ppc64 x86"
156 +
157 +SLOT="0/$(ver_cut 1)"
158 +LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
159 +
160 +IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel"
161 +IUSE+=" jack lto +openh264 pgo pulseaudio sndio selinux"
162 +IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx +system-webp"
163 +IUSE+=" wayland wifi"
164 +
165 +REQUIRED_USE="debug? ( !system-av1 )
166 + pgo? ( lto )
167 + wifi? ( dbus )"
168 +
169 +BDEPEND="${PYTHON_DEPS}
170 + app-arch/unzip
171 + app-arch/zip
172 + >=dev-util/cbindgen-0.19.0
173 + >=net-libs/nodejs-10.23.1
174 + virtual/pkgconfig
175 + >=virtual/rust-1.51.0
176 + || (
177 + (
178 + sys-devel/clang:13
179 + sys-devel/llvm:13
180 + clang? (
181 + =sys-devel/lld-13*
182 + pgo? ( =sys-libs/compiler-rt-sanitizers-13*[profile] )
183 + )
184 + )
185 + (
186 + sys-devel/clang:12
187 + sys-devel/llvm:12
188 + clang? (
189 + =sys-devel/lld-12*
190 + pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] )
191 + )
192 + )
193 + (
194 + sys-devel/clang:11
195 + sys-devel/llvm:11
196 + clang? (
197 + =sys-devel/lld-11*
198 + pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] )
199 + )
200 + )
201 + )
202 + amd64? ( >=dev-lang/nasm-2.13 )
203 + x86? ( >=dev-lang/nasm-2.13 )"
204 +
205 +CDEPEND="
206 + >=dev-libs/nss-3.68
207 + >=dev-libs/nspr-4.32
208 + dev-libs/atk
209 + dev-libs/expat
210 + >=x11-libs/cairo-1.10[X]
211 + >=x11-libs/gtk+-3.4.0:3[X]
212 + x11-libs/gdk-pixbuf
213 + >=x11-libs/pango-1.22.0
214 + >=media-libs/mesa-10.2:*
215 + media-libs/fontconfig
216 + >=media-libs/freetype-2.4.10
217 + >=media-libs/libpng-1.6.35:0=[apng(+)]
218 + kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
219 + virtual/freedesktop-icon-theme
220 + >=x11-libs/pixman-0.19.2
221 + >=dev-libs/glib-2.26:2
222 + >=sys-libs/zlib-1.2.3
223 + >=dev-libs/libffi-3.0.10:=
224 + media-video/ffmpeg
225 + x11-libs/libX11
226 + x11-libs/libxcb
227 + x11-libs/libXcomposite
228 + x11-libs/libXdamage
229 + x11-libs/libXext
230 + x11-libs/libXfixes
231 + x11-libs/libXrender
232 + x11-libs/libXt
233 + dbus? (
234 + sys-apps/dbus
235 + dev-libs/dbus-glib
236 + )
237 + system-av1? (
238 + >=media-libs/dav1d-0.8.1:=
239 + >=media-libs/libaom-1.0.0:=
240 + )
241 + system-harfbuzz? (
242 + >=media-libs/harfbuzz-2.8.1:0=
243 + >=media-gfx/graphite2-1.3.13
244 + )
245 + system-icu? ( >=dev-libs/icu-69.1:= )
246 + system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
247 + system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
248 + system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
249 + system-webp? ( >=media-libs/libwebp-1.1.0:0= )
250 + wifi? (
251 + kernel_linux? (
252 + sys-apps/dbus
253 + dev-libs/dbus-glib
254 + net-misc/networkmanager
255 + )
256 + )
257 + jack? ( virtual/jack )
258 + selinux? ( sec-policy/selinux-mozilla )
259 + sndio? ( media-sound/sndio )"
260 +
261 +RDEPEND="${CDEPEND}
262 + jack? ( virtual/jack )
263 + openh264? ( media-libs/openh264:*[plugin] )
264 + pulseaudio? (
265 + || (
266 + media-sound/pulseaudio
267 + >=media-sound/apulse-0.1.12-r4
268 + )
269 + )
270 + selinux? ( sec-policy/selinux-mozilla )
271 + !<x11-plugins/enigmail-2.2"
272 +
273 +DEPEND="${CDEPEND}
274 + x11-libs/libICE
275 + x11-libs/libSM
276 + pulseaudio? (
277 + || (
278 + media-sound/pulseaudio
279 + >=media-sound/apulse-0.1.12-r4[sdk]
280 + )
281 + )
282 + wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
283 + amd64? ( virtual/opengl )
284 + x86? ( virtual/opengl )"
285 +
286 +S="${WORKDIR}/${PN}-${PV%_*}"
287 +
288 +llvm_check_deps() {
289 + if ! has_version -b "sys-devel/clang:${LLVM_SLOT}" ; then
290 + einfo "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
291 + return 1
292 + fi
293 +
294 + if use clang ; then
295 + if ! has_version -b "=sys-devel/lld-${LLVM_SLOT}*" ; then
296 + einfo "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
297 + return 1
298 + fi
299 +
300 + if use pgo ; then
301 + if ! has_version -b "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
302 + einfo "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
303 + return 1
304 + fi
305 + fi
306 + fi
307 +
308 + einfo "Using LLVM slot ${LLVM_SLOT} to build" >&2
309 +}
310 +
311 +MOZ_LANGS=(
312 + af ar ast be bg br ca cak cs cy da de dsb
313 + el en-CA en-GB en-US es-AR es-ES et eu
314 + fi fr fy-NL ga-IE gd gl he hr hsb hu
315 + id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
316 + pa-IN pl pt-BR pt-PT rm ro ru
317 + sk sl sq sr sv-SE th tr uk uz vi zh-CN zh-TW
318 +)
319 +
320 +mozilla_set_globals() {
321 + # https://bugs.gentoo.org/587334
322 + local MOZ_TOO_REGIONALIZED_FOR_L10N=(
323 + fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
324 + )
325 +
326 + local lang xflag
327 + for lang in "${MOZ_LANGS[@]}" ; do
328 + # en and en_US are handled internally
329 + if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
330 + continue
331 + fi
332 +
333 + # strip region subtag if $lang is in the list
334 + if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
335 + xflag=${lang%%-*}
336 + else
337 + xflag=${lang}
338 + fi
339 +
340 + SRC_URI+=" l10n_${xflag/[_@]/-}? ("
341 + SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
342 + SRC_URI+=" )"
343 + IUSE+=" l10n_${xflag/[_@]/-}"
344 + done
345 +}
346 +mozilla_set_globals
347 +
348 +moz_clear_vendor_checksums() {
349 + debug-print-function ${FUNCNAME} "$@"
350 +
351 + if [[ ${#} -ne 1 ]] ; then
352 + die "${FUNCNAME} requires exact one argument"
353 + fi
354 +
355 + einfo "Clearing cargo checksums for ${1} ..."
356 +
357 + sed -i \
358 + -e 's/\("files":{\)[^}]*/\1/' \
359 + "${S}"/third_party/rust/${1}/.cargo-checksum.json \
360 + || die
361 +}
362 +
363 +moz_install_xpi() {
364 + debug-print-function ${FUNCNAME} "$@"
365 +
366 + if [[ ${#} -lt 2 ]] ; then
367 + die "${FUNCNAME} requires at least two arguments"
368 + fi
369 +
370 + local DESTDIR=${1}
371 + shift
372 +
373 + insinto "${DESTDIR}"
374 +
375 + local emid xpi_file xpi_tmp_dir
376 + for xpi_file in "${@}" ; do
377 + emid=
378 + xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
379 +
380 + # Unpack XPI
381 + unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
382 +
383 + # Determine extension ID
384 + if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
385 + emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
386 + [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
387 + elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
388 + emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
389 + [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
390 + else
391 + die "failed to determine extension id"
392 + fi
393 +
394 + einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
395 + newins "${xpi_file}" "${emid}.xpi"
396 + done
397 +}
398 +
399 +mozconfig_add_options_ac() {
400 + debug-print-function ${FUNCNAME} "$@"
401 +
402 + if [[ ${#} -lt 2 ]] ; then
403 + die "${FUNCNAME} requires at least two arguments"
404 + fi
405 +
406 + local reason=${1}
407 + shift
408 +
409 + local option
410 + for option in ${@} ; do
411 + echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
412 + done
413 +}
414 +
415 +mozconfig_add_options_mk() {
416 + debug-print-function ${FUNCNAME} "$@"
417 +
418 + if [[ ${#} -lt 2 ]] ; then
419 + die "${FUNCNAME} requires at least two arguments"
420 + fi
421 +
422 + local reason=${1}
423 + shift
424 +
425 + local option
426 + for option in ${@} ; do
427 + echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
428 + done
429 +}
430 +
431 +mozconfig_use_enable() {
432 + debug-print-function ${FUNCNAME} "$@"
433 +
434 + if [[ ${#} -lt 1 ]] ; then
435 + die "${FUNCNAME} requires at least one arguments"
436 + fi
437 +
438 + local flag=$(use_enable "${@}")
439 + mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
440 +}
441 +
442 +mozconfig_use_with() {
443 + debug-print-function ${FUNCNAME} "$@"
444 +
445 + if [[ ${#} -lt 1 ]] ; then
446 + die "${FUNCNAME} requires at least one arguments"
447 + fi
448 +
449 + local flag=$(use_with "${@}")
450 + mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
451 +}
452 +
453 +pkg_pretend() {
454 + if [[ ${MERGE_TYPE} != binary ]] ; then
455 + if use pgo ; then
456 + if ! has usersandbox $FEATURES ; then
457 + die "You must enable usersandbox as X server can not run as root!"
458 + fi
459 + fi
460 +
461 + # Ensure we have enough disk space to compile
462 + if use pgo || use lto || use debug ; then
463 + CHECKREQS_DISK_BUILD="13500M"
464 + else
465 + CHECKREQS_DISK_BUILD="6400M"
466 + fi
467 +
468 + check-reqs_pkg_pretend
469 + fi
470 +}
471 +
472 +pkg_setup() {
473 + if [[ ${MERGE_TYPE} != binary ]] ; then
474 + if use pgo ; then
475 + if ! has userpriv ${FEATURES} ; then
476 + eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
477 + fi
478 + fi
479 +
480 + # Ensure we have enough disk space to compile
481 + if use pgo || use lto || use debug ; then
482 + CHECKREQS_DISK_BUILD="13500M"
483 + else
484 + CHECKREQS_DISK_BUILD="6400M"
485 + fi
486 +
487 + check-reqs_pkg_setup
488 +
489 + llvm_pkg_setup
490 +
491 + if use clang && use lto ; then
492 + local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
493 + [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
494 + [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
495 +
496 + # temp fix for https://bugs.gentoo.org/768543
497 + # we can assume that rust 1.{49,50}.0 always uses llvm 11
498 + local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
499 + [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
500 + [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
501 +
502 + if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then
503 + local version_llvm_rust="11"
504 + else
505 + local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
506 + [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
507 + [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
508 + fi
509 +
510 + if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
511 + eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
512 + eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
513 + eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
514 + eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
515 + eerror " - Build ${CATEGORY}/${PN} without USE=lto"
516 + die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
517 + fi
518 + fi
519 +
520 + if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \
521 + && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then
522 + # bug 792705
523 + eerror "Using GCC 11 to compile firefox is currently known to be broken (see bug #792705)."
524 + die "Set USE=clang or select <gcc-11 to build ${CATEGORY}/${P}."
525 + fi
526 +
527 + python-any-r1_pkg_setup
528 +
529 + # Avoid PGO profiling problems due to enviroment leakage
530 + # These should *always* be cleaned up anyway
531 + unset \
532 + DBUS_SESSION_BUS_ADDRESS \
533 + DISPLAY \
534 + ORBIT_SOCKETDIR \
535 + SESSION_MANAGER \
536 + XAUTHORITY \
537 + XDG_CACHE_HOME \
538 + XDG_SESSION_COOKIE
539 +
540 + # Build system is using /proc/self/oom_score_adj, bug #604394
541 + addpredict /proc/self/oom_score_adj
542 +
543 + if use pgo ; then
544 + # Allow access to GPU during PGO run
545 + local ati_cards mesa_cards nvidia_cards render_cards
546 + shopt -s nullglob
547 +
548 + ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g')
549 + if [[ -n "${ati_cards}" ]] ; then
550 + addpredict "${ati_cards}"
551 + fi
552 +
553 + mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
554 + if [[ -n "${mesa_cards}" ]] ; then
555 + addpredict "${mesa_cards}"
556 + fi
557 +
558 + nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g')
559 + if [[ -n "${nvidia_cards}" ]] ; then
560 + addpredict "${nvidia_cards}"
561 + fi
562 +
563 + render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g')
564 + if [[ -n "${render_cards}" ]] ; then
565 + addpredict "${render_cards}"
566 + fi
567 +
568 + shopt -u nullglob
569 + fi
570 +
571 + if ! mountpoint -q /dev/shm ; then
572 + # If /dev/shm is not available, configure is known to fail with
573 + # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
574 + ewarn "/dev/shm is not mounted -- expect build failures!"
575 + fi
576 +
577 + # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
578 + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
579 + # get your own set of keys.
580 + if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
581 + MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
582 + fi
583 +
584 + if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
585 + MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
586 + fi
587 +
588 + # Mozilla API keys (see https://location.services.mozilla.com/api)
589 + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
590 + # get your own set of keys.
591 + if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
592 + MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
593 + fi
594 +
595 + # Ensure we use C locale when building, bug #746215
596 + export LC_ALL=C
597 + fi
598 +}
599 +
600 +src_unpack() {
601 + local _lp_dir="${WORKDIR}/language_packs"
602 + local _src_file
603 +
604 + if [[ ! -d "${_lp_dir}" ]] ; then
605 + mkdir "${_lp_dir}" || die
606 + fi
607 +
608 + for _src_file in ${A} ; do
609 + if [[ ${_src_file} == *.xpi ]]; then
610 + cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
611 + else
612 + unpack ${_src_file}
613 + fi
614 + done
615 +}
616 +
617 +src_prepare() {
618 + use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
619 + eapply "${WORKDIR}/firefox-patches"
620 +
621 + # Allow user to apply any additional patches without modifing ebuild
622 + eapply_user
623 +
624 + # Make LTO respect MAKEOPTS
625 + sed -i \
626 + -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
627 + "${S}"/build/moz.configure/lto-pgo.configure \
628 + || die "sed failed to set num_cores"
629 +
630 + # Make ICU respect MAKEOPTS
631 + sed -i \
632 + -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
633 + "${S}"/intl/icu_sources_data.py \
634 + || die "sed failed to set num_cores"
635 +
636 + # sed-in toolchain prefix
637 + sed -i \
638 + -e "s/objdump/${CHOST}-objdump/" \
639 + "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
640 + || die "sed failed to set toolchain prefix"
641 +
642 + sed -i \
643 + -e 's/ccache_stats = None/return None/' \
644 + "${S}"/python/mozbuild/mozbuild/controller/building.py \
645 + || die "sed failed to disable ccache stats call"
646 +
647 + einfo "Removing pre-built binaries ..."
648 + find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
649 +
650 + # Clearing checksums where we have applied patches
651 + moz_clear_vendor_checksums target-lexicon-0.9.0
652 +
653 + # Create build dir
654 + BUILD_DIR="${WORKDIR}/${PN}_build"
655 + mkdir -p "${BUILD_DIR}" || die
656 +
657 + # Write API keys to disk
658 + echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
659 + echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
660 + echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
661 +
662 + xdg_src_prepare
663 +}
664 +
665 +src_configure() {
666 + # Show flags set at the beginning
667 + einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
668 + einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
669 + einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
670 + einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
671 + einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
672 +
673 + local have_switched_compiler=
674 + if use clang && ! tc-is-clang ; then
675 + # Force clang
676 + einfo "Enforcing the use of clang due to USE=clang ..."
677 + have_switched_compiler=yes
678 + AR=llvm-ar
679 + CC=${CHOST}-clang
680 + CXX=${CHOST}-clang++
681 + NM=llvm-nm
682 + RANLIB=llvm-ranlib
683 + elif ! use clang && ! tc-is-gcc ; then
684 + # Force gcc
685 + have_switched_compiler=yes
686 + einfo "Enforcing the use of gcc due to USE=-clang ..."
687 + AR=gcc-ar
688 + CC=${CHOST}-gcc
689 + CXX=${CHOST}-g++
690 + NM=gcc-nm
691 + RANLIB=gcc-ranlib
692 + fi
693 +
694 + if [[ -n "${have_switched_compiler}" ]] ; then
695 + # Because we switched active compiler we have to ensure
696 + # that no unsupported flags are set
697 + strip-unsupported-flags
698 + fi
699 +
700 + # Ensure we use correct toolchain
701 + export HOST_CC="$(tc-getBUILD_CC)"
702 + export HOST_CXX="$(tc-getBUILD_CXX)"
703 + tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
704 +
705 + # Pass the correct toolchain paths through cbindgen
706 + if tc-is-cross-compiler ; then
707 + export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
708 + fi
709 +
710 + # Set MOZILLA_FIVE_HOME
711 + export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
712 +
713 + # python/mach/mach/mixin/process.py fails to detect SHELL
714 + export SHELL="${EPREFIX}/bin/bash"
715 +
716 + # Set state path
717 + export MOZBUILD_STATE_PATH="${BUILD_DIR}"
718 +
719 + # Set MOZCONFIG
720 + export MOZCONFIG="${S}/.mozconfig"
721 +
722 + # Initialize MOZCONFIG
723 + mozconfig_add_options_ac '' --enable-application=comm/mail
724 +
725 + # Set Gentoo defaults
726 + export MOZILLA_OFFICIAL=1
727 +
728 + mozconfig_add_options_ac 'Gentoo default' \
729 + --allow-addon-sideload \
730 + --disable-cargo-incremental \
731 + --disable-crashreporter \
732 + --disable-install-strip \
733 + --disable-strip \
734 + --disable-updater \
735 + --enable-js-shell \
736 + --enable-official-branding \
737 + --enable-release \
738 + --enable-system-ffi \
739 + --enable-system-pixman \
740 + --host="${CBUILD:-${CHOST}}" \
741 + --libdir="${EPREFIX}/usr/$(get_libdir)" \
742 + --prefix="${EPREFIX}/usr" \
743 + --target="${CHOST}" \
744 + --without-ccache \
745 + --with-intl-api \
746 + --with-libclang-path="$(llvm-config --libdir)" \
747 + --with-system-nspr \
748 + --with-system-nss \
749 + --with-system-png \
750 + --with-system-zlib \
751 + --with-toolchain-prefix="${CHOST}-" \
752 + --with-unsigned-addon-scopes=app,system \
753 + --x-includes="${SYSROOT}${EPREFIX}/usr/include" \
754 + --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)"
755 +
756 + # Set update channel
757 + local update_channel=release
758 + [[ -n ${MOZ_ESR} ]] && update_channel=esr
759 + mozconfig_add_options_ac '' --update-channel=${update_channel}
760 +
761 + if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
762 + mozconfig_add_options_ac '' --enable-rust-simd
763 + fi
764 +
765 + if [[ -s "${S}/api-google.key" ]] ; then
766 + local key_origin="Gentoo default"
767 + if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
768 + key_origin="User value"
769 + fi
770 +
771 + mozconfig_add_options_ac "${key_origin}" \
772 + --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
773 + else
774 + einfo "Building without Google API key ..."
775 + fi
776 +
777 + if [[ -s "${S}/api-location.key" ]] ; then
778 + local key_origin="Gentoo default"
779 + if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
780 + key_origin="User value"
781 + fi
782 +
783 + mozconfig_add_options_ac "${key_origin}" \
784 + --with-google-location-service-api-keyfile="${S}/api-location.key"
785 + else
786 + einfo "Building without Location API key ..."
787 + fi
788 +
789 + if [[ -s "${S}/api-mozilla.key" ]] ; then
790 + local key_origin="Gentoo default"
791 + if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
792 + key_origin="User value"
793 + fi
794 +
795 + mozconfig_add_options_ac "${key_origin}" \
796 + --with-mozilla-api-keyfile="${S}/api-mozilla.key"
797 + else
798 + einfo "Building without Mozilla API key ..."
799 + fi
800 +
801 + mozconfig_use_with system-av1
802 + mozconfig_use_with system-harfbuzz
803 + mozconfig_use_with system-harfbuzz system-graphite2
804 + mozconfig_use_with system-icu
805 + mozconfig_use_with system-jpeg
806 + mozconfig_use_with system-libevent system-libevent "${SYSROOT}${EPREFIX}/usr"
807 + mozconfig_use_with system-libvpx
808 + mozconfig_use_with system-webp
809 +
810 + mozconfig_use_enable dbus
811 +
812 + use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
813 +
814 + if use hardened ; then
815 + mozconfig_add_options_ac "+hardened" --enable-hardening
816 + append-ldflags "-Wl,-z,relro -Wl,-z,now"
817 + fi
818 +
819 + mozconfig_use_enable jack
820 +
821 + mozconfig_use_enable pulseaudio
822 + # force the deprecated alsa sound code if pulseaudio is disabled
823 + if use kernel_linux && ! use pulseaudio ; then
824 + mozconfig_add_options_ac '-pulseaudio' --enable-alsa
825 + fi
826 +
827 + mozconfig_use_enable sndio
828 +
829 + mozconfig_use_enable wifi necko-wifi
830 +
831 + if use wayland ; then
832 + mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland
833 + else
834 + mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3
835 + fi
836 +
837 + if use lto ; then
838 + if use clang ; then
839 + # Upstream only supports lld when using clang
840 + mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
841 +
842 + mozconfig_add_options_ac '+lto' --enable-lto=cross
843 + else
844 + # ld.gold is known to fail:
845 + # /usr/lib/gcc/x86_64-pc-linux-gnu/11.2.1/../../../../x86_64-pc-linux-gnu/bin/ld.gold: internal error in set_xindex, at /var/tmp/portage/sys-devel/binutils-2.37_p1-r1/work/binutils-2.37/gold/object.h:1050
846 +
847 + # ThinLTO is currently broken, see bmo#1644409
848 + mozconfig_add_options_ac '+lto' --enable-lto=full
849 + mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
850 + fi
851 +
852 + if use pgo ; then
853 + mozconfig_add_options_ac '+pgo' MOZ_PGO=1
854 +
855 + if use clang ; then
856 + # Used in build/pgo/profileserver.py
857 + export LLVM_PROFDATA="llvm-profdata"
858 + fi
859 + fi
860 + else
861 + # Avoid auto-magic on linker
862 + if use clang ; then
863 + # This is upstream's default
864 + mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
865 + else
866 + mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
867 + fi
868 + fi
869 +
870 + # LTO flag was handled via configure
871 + filter-flags '-flto*'
872 +
873 + mozconfig_use_enable debug
874 + if use debug ; then
875 + mozconfig_add_options_ac '+debug' --disable-optimize
876 + else
877 + if is-flag '-g*' ; then
878 + if use clang ; then
879 + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
880 + else
881 + mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
882 + fi
883 + else
884 + mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
885 + fi
886 +
887 + if is-flag '-O0' ; then
888 + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
889 + elif is-flag '-O4' ; then
890 + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
891 + elif is-flag '-O3' ; then
892 + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
893 + elif is-flag '-O1' ; then
894 + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
895 + elif is-flag '-Os' ; then
896 + mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
897 + else
898 + mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
899 + fi
900 + fi
901 +
902 + # Debug flag was handled via configure
903 + filter-flags '-g*'
904 +
905 + # Optimization flag was handled via configure
906 + filter-flags '-O*'
907 +
908 + # Modifications to better support ARM, bug #553364
909 + if use cpu_flags_arm_neon ; then
910 + mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
911 +
912 + if ! tc-is-clang ; then
913 + # thumb options aren't supported when using clang, bug 666966
914 + mozconfig_add_options_ac '+cpu_flags_arm_neon' \
915 + --with-thumb=yes \
916 + --with-thumb-interwork=no
917 + fi
918 + fi
919 +
920 + if [[ ${CHOST} == armv*h* ]] ; then
921 + mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
922 +
923 + if ! use system-libvpx ; then
924 + sed -i \
925 + -e "s|softfp|hard|" \
926 + "${S}"/media/libvpx/moz.build \
927 + || die
928 + fi
929 + fi
930 +
931 + if use clang ; then
932 + # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
933 + # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
934 + # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
935 + local disable_elf_hack=
936 + if use amd64 ; then
937 + disable_elf_hack=yes
938 + elif use x86 ; then
939 + disable_elf_hack=yes
940 + elif use arm ; then
941 + disable_elf_hack=yes
942 + fi
943 +
944 + if [[ -n ${disable_elf_hack} ]] ; then
945 + mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
946 + fi
947 + elif tc-is-gcc ; then
948 + if ver_test $(gcc-fullversion) -ge 10 ; then
949 + einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
950 + append-cxxflags -fno-tree-loop-vectorize
951 + fi
952 + fi
953 +
954 + # Additional ARCH support
955 + case "${ARCH}" in
956 + arm)
957 + # Reduce the memory requirements for linking
958 + if use clang ; then
959 + # Nothing to do
960 + :;
961 + elif tc-ld-is-gold || use lto ; then
962 + append-ldflags -Wl,--no-keep-memory
963 + else
964 + append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
965 + fi
966 + ;;
967 + esac
968 +
969 + if ! use elibc_glibc ; then
970 + mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
971 + fi
972 +
973 + # Allow elfhack to work in combination with unstripped binaries
974 + # when they would normally be larger than 2GiB.
975 + append-ldflags "-Wl,--compress-debug-sections=zlib"
976 +
977 + # Make revdep-rebuild.sh happy; Also required for musl
978 + append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
979 +
980 + # Pass $MAKEOPTS to build system
981 + export MOZ_MAKE_FLAGS="${MAKEOPTS}"
982 +
983 + # Use system's Python environment
984 + export MACH_USE_SYSTEM_PYTHON=1
985 +
986 + # Disable notification when build system has finished
987 + export MOZ_NOSPAM=1
988 +
989 + # Portage sets XARGS environment variable to "xargs -r" by default which
990 + # breaks build system's check_prog() function which doesn't support arguments
991 + mozconfig_add_options_ac 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
992 +
993 + # Set build dir
994 + mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
995 +
996 + # Show flags we will use
997 + einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
998 + einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
999 + einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
1000 + einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
1001 + einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
1002 +
1003 + # Handle EXTRA_CONF and show summary
1004 + local ac opt hash reason
1005 +
1006 + # Apply EXTRA_ECONF entries to $MOZCONFIG
1007 + if [[ -n ${EXTRA_ECONF} ]] ; then
1008 + IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
1009 + for opt in "${ac[@]}"; do
1010 + mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
1011 + done
1012 + fi
1013 +
1014 + echo
1015 + echo "=========================================================="
1016 + echo "Building ${PF} with the following configuration"
1017 + grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
1018 + [[ -z ${hash} || ${hash} == \# ]] \
1019 + || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
1020 + printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
1021 + done
1022 + echo "=========================================================="
1023 + echo
1024 +
1025 + ./mach configure || die
1026 +}
1027 +
1028 +src_compile() {
1029 + local virtx_cmd=
1030 +
1031 + if use pgo ; then
1032 + virtx_cmd=virtx
1033 +
1034 + # Reset and cleanup environment variables used by GNOME/XDG
1035 + gnome2_environment_reset
1036 +
1037 + addpredict /root
1038 + fi
1039 +
1040 + local -x GDK_BACKEND=x11
1041 +
1042 + ${virtx_cmd} ./mach build --verbose \
1043 + || die
1044 +}
1045 +
1046 +src_install() {
1047 + # xpcshell is getting called during install
1048 + pax-mark m \
1049 + "${BUILD_DIR}"/dist/bin/xpcshell \
1050 + "${BUILD_DIR}"/dist/bin/${PN} \
1051 + "${BUILD_DIR}"/dist/bin/plugin-container
1052 +
1053 + DESTDIR="${D}" ./mach install || die
1054 +
1055 + # Upstream cannot ship symlink but we can (bmo#658850)
1056 + rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
1057 + dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
1058 +
1059 + # Don't install llvm-symbolizer from sys-devel/llvm package
1060 + if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
1061 + rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
1062 + fi
1063 +
1064 + # Install policy (currently only used to disable application updates)
1065 + insinto "${MOZILLA_FIVE_HOME}/distribution"
1066 + newins "${FILESDIR}"/distribution.ini distribution.ini
1067 + newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
1068 +
1069 + # Install system-wide preferences
1070 + local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref"
1071 + insinto "${PREFS_DIR}"
1072 + newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js
1073 +
1074 + local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
1075 +
1076 + # Set dictionary path to use system hunspell
1077 + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
1078 + pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
1079 + EOF
1080 +
1081 + # Force hwaccel prefs if USE=hwaccel is enabled
1082 + if use hwaccel ; then
1083 + cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
1084 + >>"${GENTOO_PREFS}" \
1085 + || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
1086 + fi
1087 +
1088 + # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
1089 + if use system-harfbuzz ; then
1090 + cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
1091 + sticky_pref("gfx.font_rendering.graphite.enabled", true);
1092 + EOF
1093 + fi
1094 +
1095 + # Install language packs
1096 + local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
1097 + if [[ -n "${langpacks}" ]] ; then
1098 + moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
1099 + fi
1100 +
1101 + # Install icons
1102 + local icon_srcdir="${S}/comm/mail/branding/thunderbird"
1103 + local icon_symbolic_file="${icon_srcdir}/TB-symbolic.svg"
1104 +
1105 + insinto /usr/share/icons/hicolor/symbolic/apps
1106 + newins "${icon_symbolic_file}" ${PN}-symbolic.svg
1107 +
1108 + local icon size
1109 + for icon in "${icon_srcdir}"/default*.png ; do
1110 + size=${icon%.png}
1111 + size=${size##*/default}
1112 +
1113 + if [[ ${size} -eq 48 ]] ; then
1114 + newicon "${icon}" ${PN}.png
1115 + fi
1116 +
1117 + newicon -s ${size} "${icon}" ${PN}.png
1118 + done
1119 +
1120 + # Install menu
1121 + local app_name="Mozilla ${MOZ_PN^}"
1122 + local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop"
1123 + local desktop_filename="${PN}.desktop"
1124 + local exec_command="${PN}"
1125 + local icon="${PN}"
1126 + local use_wayland="false"
1127 +
1128 + if use wayland ; then
1129 + use_wayland="true"
1130 + fi
1131 +
1132 + cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
1133 +
1134 + sed -i \
1135 + -e "s:@NAME@:${app_name}:" \
1136 + -e "s:@EXEC@:${exec_command}:" \
1137 + -e "s:@ICON@:${icon}:" \
1138 + "${WORKDIR}/${PN}.desktop-template" \
1139 + || die
1140 +
1141 + newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
1142 +
1143 + rm "${WORKDIR}/${PN}.desktop-template" || die
1144 +
1145 + # Install wrapper script
1146 + [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
1147 + newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
1148 +
1149 + # Update wrapper
1150 + sed -i \
1151 + -e "s:@PREFIX@:${EPREFIX}/usr:" \
1152 + -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
1153 + -e "s:@APULSELIB_DIR@:${apulselib}:" \
1154 + -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
1155 + "${ED}/usr/bin/${PN}" \
1156 + || die
1157 +}
1158 +
1159 +pkg_preinst() {
1160 + xdg_pkg_preinst
1161 +
1162 + # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
1163 + # does not need to be forced into the LD_LIBRARY_PATH
1164 + if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
1165 + einfo "APULSE found; Generating library symlinks for sound support ..."
1166 + local lib
1167 + pushd "${ED}${MOZILLA_FIVE_HOME}" &>/dev/null || die
1168 + for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
1169 + # A quickpkg rolled by hand will grab symlinks as part of the package,
1170 + # so we need to avoid creating them if they already exist.
1171 + if [[ ! -L ${lib##*/} ]] ; then
1172 + ln -s "${lib}" ${lib##*/} || die
1173 + fi
1174 + done
1175 + popd &>/dev/null || die
1176 + fi
1177 +}
1178 +
1179 +pkg_postinst() {
1180 + xdg_pkg_postinst
1181 +
1182 + if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
1183 + elog "Apulse was detected at merge time on this system and so it will always be"
1184 + elog "used for sound. If you wish to use pulseaudio instead please unmerge"
1185 + elog "media-sound/apulse."
1186 + elog
1187 + fi
1188 +
1189 + local show_doh_information
1190 + local show_shortcut_information
1191 +
1192 + if [[ -z "${REPLACING_VERSIONS}" ]] ; then
1193 + # New install; Tell user that DoH is disabled by default
1194 + show_doh_information=yes
1195 + show_shortcut_information=no
1196 + else
1197 + local replacing_version
1198 + for replacing_version in ${REPLACING_VERSIONS} ; do
1199 + if ver_test "${replacing_version}" -lt 91.0 ; then
1200 + # Tell user that we no longer install a shortcut
1201 + # per supported display protocol
1202 + show_shortcut_information=yes
1203 + fi
1204 + done
1205 + fi
1206 +
1207 + if [[ -n "${show_doh_information}" ]] ; then
1208 + elog
1209 + elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
1210 + elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
1211 + elog "DNS traffic to Cloudflare by default is not a good idea and applications"
1212 + elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
1213 + elog "(\"Off by choice\") by default."
1214 + elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
1215 + fi
1216 +
1217 + if [[ -n "${show_shortcut_information}" ]] ; then
1218 + elog
1219 + elog "Since ${PN}-91.0 we no longer install multiple shortcuts for"
1220 + elog "each supported display protocol. Instead we will only install"
1221 + elog "one generic Mozilla ${PN^} shortcut."
1222 + elog "If you still want to be able to select between running Mozilla ${PN^}"
1223 + elog "on X11 or Wayland, you have to re-create these shortcuts on your own."
1224 + fi
1225 +}