summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Deutschmann <whissi@gentoo.org>2021-06-04 09:08:55 +0200
committerThomas Deutschmann <whissi@gentoo.org>2021-06-04 09:32:55 +0200
commit8c1ae9e94ab00b9c7e23beaab4aee381b8e742df (patch)
tree5d458ab51ca08e01da511548d0f1c54bdb4b3197 /mail-client/thunderbird
parentdev-lang/typescript: pull node-16 (diff)
downloadgentoo-8c1ae9e94ab00b9c7e23beaab4aee381b8e742df.tar.gz
gentoo-8c1ae9e94ab00b9c7e23beaab4aee381b8e742df.tar.bz2
gentoo-8c1ae9e94ab00b9c7e23beaab4aee381b8e742df.zip
mail-client/thunderbird: bump to v78.11.0
Package-Manager: Portage-3.0.19, Repoman-3.0.3 Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
Diffstat (limited to 'mail-client/thunderbird')
-rw-r--r--mail-client/thunderbird/Manifest66
-rw-r--r--mail-client/thunderbird/thunderbird-78.11.0.ebuild1108
2 files changed, 1174 insertions, 0 deletions
diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest
index 9d411a04b1c1..c9202ccf1ae8 100644
--- a/mail-client/thunderbird/Manifest
+++ b/mail-client/thunderbird/Manifest
@@ -1,4 +1,5 @@
DIST firefox-78esr-patches-13.tar.xz 83664 BLAKE2B 92250d5bc3821ee1ff032236bd00e01a53e0af4f9e39696a634edb39f0a182bf5ff74b7fc0f107c9c53136c64485c398391e3a857c8b2b904115fd13d17e2a4f SHA512 96739811bea833a6a9cb09075dfe49c6fa7f613e8bd41e1d830d6ae6851ce8e2f5d27c87d0035b6f3a099340dfd7eebe6ecb930ff25079e76cea92a7610293ca
+DIST firefox-78esr-patches-14.tar.xz 82976 BLAKE2B 08cc3618c8069f4169b7647e7eb699153d558bb89f8a4f1ed74d5ccd339f77119cd8f253df011f0c2f255ad889b65e843171d7559f469788463ca7e9aa2e96aa SHA512 1611c6f9d2c7d586e7b53810c1cfdb2682f5d289b1b019b71694b1ab2d8bbdfe827a73cfaf59f7e4808c0b90409ca4fa57e27655d8cdf0c578ffdbad33659f26
DIST thunderbird-78.10.2-af.xpi 548348 BLAKE2B 44d4c00a3672a82a1d7ec37394b6952824d940163a63213b8efa17488d97277de285f053ecca2925baef5ebb296647914028fbf37c884cf8d2527219e762d7e5 SHA512 04be6901b422e6a0a93d4b2a8c930f3ac8c78d4ce4fdff0dcfb904184080e5f1b0a10b05c44358069dfd9372fdabfeaa4b7a8b92fc16867fbe43569264996a08
DIST thunderbird-78.10.2-ar.xpi 648605 BLAKE2B 5f78480a6bca437d650f8567e8fc53dcf1ed61b6fc303f245d6634917caba60a85aa95636029891230d898e49076601be9c5265c9f00f2fb3ee88793e9159a81 SHA512 85d4711c30a7956199d34b5bb5b20a1876758bb12dd0ab09a636d5cdee8c3038f5f7a1940327218aca635e8789a36cd4d8318878999bee7bf49e87e88e7af829
DIST thunderbird-78.10.2-ast.xpi 561260 BLAKE2B 5c5883a0f42ef3b5ba1d42e70ec5d526eb93254d797c60ef757eed42285c9f9105a644088137cf59847da9fd20b7fdbdfc65c12c5c31118b8b004ba45c00bd28 SHA512 b3650198079ef290e82e51b9eb659c6675927378b14903de31d746ba6f5144bc8b1bc59b4909226118b4d5b88eb16ee7aee686cb15e6a28ae34e3a5bcc6d6441
@@ -64,3 +65,68 @@ DIST thunderbird-78.10.2-vi.xpi 674614 BLAKE2B 3e24680e55133daefdd3b1759a9d257a1
DIST thunderbird-78.10.2-zh-CN.xpi 687175 BLAKE2B 19dab68c9608822f54523bbc99647a51731c17290ef49d51379c48d284180e0b3a9f66380222a767c4d3dd0dbeecc7036cff95b57e29399d922527c2187058ea SHA512 5b90f11c3ff739fec02adec18285a95e70a02370567d9dadea97d64798916c793c5155bc3b313b489518d326124f215e29267a6465d7b52513fd2d3c25c97cde
DIST thunderbird-78.10.2-zh-TW.xpi 687616 BLAKE2B d1b895a11c2ef84b2ffb4e9c24b477f77f84145b87659a29ebda5c5295c127e37fbe04f4e8662e552f848b4758ea19116e0b4fb8733fd467de1f3d827c3637a6 SHA512 fcf0ca89e6c80facd0b669fdb2c7807f48f703ca7fbf193882d2f4a8a4037ef4aceafd5aa04730c5fb9184b74e50ec74369684f55e3f786215acf2aeb663c31c
DIST thunderbird-78.10.2.source.tar.xz 353926908 BLAKE2B 23ed531fae63453b0b088f6eca4df3fa70c87e659ccb4afb6e1a26a9837cb0740ae354ed8078dbbdf7480d99fc7b82f0f37f37978f957a1d855f61e9f10dd974 SHA512 b938580055b8b935a37cd7b7aea9b654f5dc42b0a5d459ccb95d10fbde49405c5fad3ebf450ecd1077289aef008801d1dbbb7d5be56bb238616df14a7658c3f4
+DIST thunderbird-78.11.0-af.xpi 548343 BLAKE2B 5eb0f8bde98e845046980bfa098b9749113cd4a95cff2ebcf7d387769bf407fb4f59926fea905dc293f916a91e0e0aaf78e1f4b2aac60dc1a38684a7293bbbef SHA512 2978a9f8d81d936495207e9ecd45e67e9073037ffb9481e5dbfaa73a776a7787970bbde9ba9790c6ad53998fa391d251bc6b8eb5a3a04dd3bae791b8b426e73e
+DIST thunderbird-78.11.0-ar.xpi 648611 BLAKE2B d41906f09fb0522199e74ac0a7823f3769e23fb310c9d62a0332d288fb7cf46f7d1d97321f4cba6fe03b53c5e254e2ce27cb8606c58a9c1559b152d2be70d681 SHA512 595415279e9f14abc678d652bb58c3b7a5b4907dd979b86320aa4ea5c499bc02034c5fad4ffb388719ac8795923e9eb7936f9700b5655457cfb3942fddf6b821
+DIST thunderbird-78.11.0-ast.xpi 561258 BLAKE2B 156729fe4b59c1594c35dc4e1bf198638cf361a679a95470fe495833c518c583abfbd69f358bba04f2c58d5a0d941603c969d640f9c18a26126a78f48e9b64d1 SHA512 d5821cf2aba5c3df1dac2d4310ba77aa7b5c1a69067216404944eff8b06bfb4eab2816aafbc490cf365c90aba850e6766092d9ae96dfb74ee9bb0452b591c21c
+DIST thunderbird-78.11.0-be.xpi 666676 BLAKE2B 81877cd6f49e61d462d22510ed82b3a6e31ce34d2d11f253ee6ce31e7569dd6f3f5e4fd0ff41a7404c3b374fe01b6495af064a722f445c4ac23d7941e546b9ab SHA512 11243c238d1fff8519e58d5f138b3830f398c5f561a968d448dbe3703d81ab98056ff65dd80ae3c268ddc14583437a1b4988323ae20c235652619c887e89a137
+DIST thunderbird-78.11.0-bg.xpi 672416 BLAKE2B 625560636cbd8522d9425e395ce28829644d86700c365987ba31e92c9d8fb8ea5d132f62ff12b6386c41dd995d3b95d49e55c84c5be7d68e687228f2f510b0be SHA512 1c16a3ba03579a462ed1f36eadb409c81cfa6185f6112a674aea9cbf445529d66c51e844ea7ec6c9c89ed8bdf593223a80116f976dd242078487c18a20f7abe4
+DIST thunderbird-78.11.0-br.xpi 604529 BLAKE2B b2e9f794d23b4a78209ffa355db99ce06ce573bfc9c3ee69a0cf82ebfca1e06c06b3e6ba869dfed72abe2d6ef84a87224fe713febe2c00828770a0a13e0a70e4 SHA512 f4a67b79ba899c29f6a0ee5ee2677a75898ecd417a5460af52e1dd72a99b985db9f00fe682a2249cf76ec7576316a52d24995b39e5e5ecac5fffc7b3abfb1126
+DIST thunderbird-78.11.0-ca.xpi 620448 BLAKE2B 9b88bbb31a16934ca112f806db6b8a7225ce7969073b297b03f71522c5f5f069958fce80608da0e30cfd7edac5b1c5f9c161078b7210affa48e103e3e5aa7185 SHA512 5abf0bb7f9b9ffb784ce89bbc74deebdfd042ca465b14cd7560bc6e8d774fac8d1998dd1afe3bab31a2347bddb4b64621bce39429ee49c17302a0cd7c85987cb
+DIST thunderbird-78.11.0-cak.xpi 635650 BLAKE2B 2d127cd4601de8b7aa114a3a96ec21e35dc7e0fc2da0df3a8a075ef2abfd044c797059cfce2167b839398c0762ca8378b7878c7208f0cfecf5ed4ebcb0c54883 SHA512 d74ab66d99895b6ba97e2e2ea8d3a285d0ba87f242f5f5ebcd155a15155b23db3eafd19599eae4d4f759efbbffa10b70ecfe899751c2f0e7c31fe7e51e47f99a
+DIST thunderbird-78.11.0-cs.xpi 635344 BLAKE2B 9ca8d944d2be138d90a8da9e93d3e7a2ef5306dc3bad3fe874bb62347359f58472d38794210de3898774c2b1ede57b5a4cca10d210b63dd2aaa44e936d41ee7d SHA512 b967644424cfc8132a76ba82dbca88b6c712bf1c37f46d57f0f17cbb493de4e3468c9ed6b20ef030c087316c263cc081fa7fb796c5f9cdaf3e34212f211ddfb4
+DIST thunderbird-78.11.0-cy.xpi 646232 BLAKE2B 0f180f548f4bbca346b877092b940889ebdd8b2e97819052744a0b0ba2bdddc413d335e13b3392b0e02a7c347616d12cf266bae8d19f5365779eca449119599e SHA512 b9bdd207ab9165e383a51f094d8ffa07ac20bf9d15f0f6832ccccc3342244ab7ba3344e20d3ac4c3ade70fbfab7c5598e9051907427a4553aa63022ac23fcef3
+DIST thunderbird-78.11.0-da.xpi 620991 BLAKE2B db619e56d9140b547055ed21d13590ffae23ca6528603cb40a68c7b5b46ae0a70bb267f79fd6b450cc106541491cb95072e8d34e1f22ccde3ae7138c809cde7a SHA512 7417e454e1621e47df72b749da146faa0d9c88955c85655fb3edbe4a8e550788e9f6c53565a78cfe82e9ce0ab3524052cbfa0fdff5a71d2291284299a4ee4c33
+DIST thunderbird-78.11.0-de.xpi 665194 BLAKE2B af74caf1d4a6ae13ee3e6c59a3dd562333588c4b855b1f2cebcdf1f36a02fe2645bf6f402ca22cc69c7e38febabbf2cd63858eca31a1450224c7a5f7b68e8432 SHA512 ee3163c6b9e3c1583c0c3b5d33112f5e9f37b336e3ec52980dee7bab02f016a4b6a7f6f82851932c4d72f7c85428e24e308e798fe34c41b8cec3cb226b3c150f
+DIST thunderbird-78.11.0-dsb.xpi 666778 BLAKE2B 26a14ff3711b6789b62cfab66b5e125bb4b1d41489b32a939602d37571503539022e7a72503417eb4f8d6d8f12c1d0ed8097e6d3e4cdef6b3c3b609d8209d279 SHA512 d8781e76172b29f68943f5f3bcf922b40937495a189ef709dcae19e2977cea27caebdb6b17989fd594bf707fdb0a288982d7ee4bbc916af987add20cf55b55d5
+DIST thunderbird-78.11.0-el.xpi 774458 BLAKE2B 5ca290b9df4e7a7d7cb109bf1f026f88b47941d0e224de56ffe2fb1a8b4df8818584f163cb48657d022e553821349e1f2fb8f27a102de0986912402b9dd519cd SHA512 06d1dcc0b17604cdd68bf8c0b0dc6a014ae6f70c05b4a1c5b2768a45eef8099686b307ce3e0b13a1d294ef45f1707cc7252c0c85d6b0bcf204cacf189f63bedd
+DIST thunderbird-78.11.0-en-CA.xpi 611764 BLAKE2B 3c7df065c37712eeeb4d383eb42673ec31e8ba9d3d80a042728de1c276619ed19dc509762ec90f13b13a48b73991d2b9aee33df101039f18a4096ef0640f5e59 SHA512 843582f12e6d32c4eb27a0e984a96a406fa39b1adcd253c372e05c826e623e8059ccc704f7438cd4a14216b4251ceaa8c5b8b48dd8d34cc9f12336a3fb1ffe89
+DIST thunderbird-78.11.0-en-GB.xpi 611188 BLAKE2B 9702b2e97c951589974f5b7f80636838261da021c4736e08416f15b0a7d30bc0885c6570fdc1f127111ce1f68e2251f181bc19b9bec887b7b1034becfc166fa4 SHA512 f0ecae7a6d3272cc779c35859647a86ec2f857499b47634006db528373a43aac79329e9ffeee304eb0a95195915f7aeb1170ef74240bb67e560d4305f960b21c
+DIST thunderbird-78.11.0-es-AR.xpi 657793 BLAKE2B 895e2b21661c7c82475d3c93695e011f15f44d63cb49eab3b4b0c6a6d7d062eeb4282b1e16843d9202dc172e146406ed21851197e5eaff52dbbd81de0ea4f441 SHA512 570adcfa7416d1d3b2dbf6923927580c1334efd16ad024ab10df0a9c20558aaf4c14fb67245fe7d72b1d14454b759b38e3545fb62e9f9eb3feb881773dfcb6bc
+DIST thunderbird-78.11.0-es-ES.xpi 569808 BLAKE2B fd1edf9defcb06a2be32a065c72a479b43d66122636a5024d415d91358296a516730942aaf486fd18b391cc66a3282d8ac81263df261b5a98e3ec8a23cde3a18 SHA512 64fa4b4eb00c95dc8ccdc369cfc3c50a06bda3fc95a4d5625d677e27354f116d33b3e7de1697dfd16fa6429dcfbcbc2c7b8e4cdc9d6598ac08487d12b3d898ca
+DIST thunderbird-78.11.0-et.xpi 597738 BLAKE2B 449b1057f9647f36e725368933b56125bf22377be1551c5c1a2c2b2dd4627114ec8257dc7b6960a2d31465c3026ce2f29c91d1c86fe7aa3741b9a92f425a9f51 SHA512 9f36639ddcc96851585a1cd5d36fcacbc4bbb6c1155cab5da1376f40b0a2a096c0d923ee00db32ff3a40c6543b957ae75472b1a052310be7cb0539cb3a826619
+DIST thunderbird-78.11.0-eu.xpi 632960 BLAKE2B 7953b03d89922c61a4b2b4fd1328cc9f39b0095d071738c08531883ce4636a50669f62d26b87750c573638e0db48fb67aba18df70106636789306ac1ffe690b9 SHA512 e590ac6762c92b95e7c820f86f1484f72acf878489356c74b346073a39417b1db5a99a233d2466bf4f350516dab0279753e5724588bc0edca5965831c96a0e13
+DIST thunderbird-78.11.0-fa.xpi 639752 BLAKE2B 9762634fb297c77110d6d45a64ccfc298510c838aaba9203a1e07b640e6aa72fa3083f722a070864927e0f687a6b764aa0cd51df79c50a1d9c71b289c0f13ade SHA512 de2725034fd0373ea8955905079f4eabfe1d2baba44fbdcd614fd85ea33a8b8eabf4371f19e6f046929cbd56e4bf70e862693f1fbd97050c3411c83de8317234
+DIST thunderbird-78.11.0-fi.xpi 642456 BLAKE2B 5af89a5311f7a373cd07a6350ef5bbc865be21d53cc33e5aa7a0ccf6d2963a25cbfb3cdac7c805f66feb084d807fed3a72aa3dd561c3d03ca647faaa6b3daa19 SHA512 0a22233c37b279b344862c0d156f938c588921aefc4852f3d4631a459b5a177cb74495ed61bbb90329aeb781f909cd9a330d2153114b8ebd64f53eb37bfa7965
+DIST thunderbird-78.11.0-fr.xpi 669492 BLAKE2B def525cee10efa0978d778ddb0ccd9672eb51ab5d7eb5a4a09b64773b410b5d2b3d17b93445cd324431cdec0ac8da8e72bab5534d60c694f2a50172280156174 SHA512 18b4aa4cf6684f0510b8e3cf990c79bb5b3c61ae37012dda0bc14febfa9ecb53f4cc86f21c40deca972972b1e89a9f15231a7498c3578ab22d1753b3dc397dff
+DIST thunderbird-78.11.0-fy-NL.xpi 653078 BLAKE2B 043b2ecc0f54e0ba9b6f75ed1a0e8502ff4e5788e41d8c54a4895a107fd044fcb1aa4237a1e593f1cdcb8782e25226b6ba996df830aa1ab5b005410a7988c558 SHA512 e3b295fdb187715bda511105be726bddbbcd8ca3446bb8199937bcf98d16caa5ff7df52c9ef6170b85b8b0a0369179744e5a02283908c5fd1a3fede244d3ad77
+DIST thunderbird-78.11.0-ga-IE.xpi 600708 BLAKE2B 9bb307d36ce5b9178985b818b75f417a4f44b29e748b847427598cd34a1202a15a5b2fbad00060bb98dd2ac0e1881845dbf23544f4defb16932c228fbe7eac22 SHA512 52a330bb02aac06ab2588537316a6241332bec6e2d616a3c5bba44fba1d50d4bc25ed3ca91372c74979ea6c92eadf484170e033bb0f2a12e22b54da0ac88fe4b
+DIST thunderbird-78.11.0-gd.xpi 609380 BLAKE2B 8e33f096bc758e7d13c67b46f7508941c14dc8936678df293edb8782dc625c0b93ecb3b3d6df2b060e318430b9ced5c79c884b3fd495156e052e3edbf045d217 SHA512 e41728ba4d570995fcc382d372c7f1bf83ec1b554371748580b48d7f119047075439de662bc17bfeb60e20134f1f29ff3855c6e8a6e09498db606194c651dd05
+DIST thunderbird-78.11.0-gl.xpi 615733 BLAKE2B 2b5364a9d4c03540091a60195f9a3d7b18cee3857693613c8d121731f1ff370209134ddffc6190e4e95b8ac5c32a7fbc8df81497e6dfaba680f91dc8f46feb2f SHA512 c7b2aee95fdf67a65a9ffcb48ce8da2c720b6a6674a945012289f53d30e855c0602fc5df8b7186aadacb993fc2b1494bb79427d095db1daffd724e6fdec5a8db
+DIST thunderbird-78.11.0-he.xpi 640490 BLAKE2B f79910c79f9ba9d5ccbf72b5104b71837a77d53dcf92627f264b7a9f8717dc08ade847d717fac74b72ba102e204daa5af673a9438a52a4353890148456ebfa1c SHA512 54122ab286ae100a38d0e9172d447d85df2692ea47baf57bb4632204c689ea6db83546610db1f0a93795eb7316bdee7db8b7adba8975bc51729b368df1bdc546
+DIST thunderbird-78.11.0-hr.xpi 629032 BLAKE2B 137a179f6d3b774e177fd8d1b7035c5a872a998a2f22b5507007e7655e3b70d07414c9dd97c793276a892115c031afbb37e81a61f48ea830419e597b01fa9fc0 SHA512 2714cc3c735c227e7da7c61d078648814c1533f18ad18f90edc66a3e35af924b0728e335d3381c211333297aeb7cae5122f3803554ab825fbce54c55f0bc5087
+DIST thunderbird-78.11.0-hsb.xpi 668608 BLAKE2B 61dccd236d7fa6d0e0df69727650f0f2710f14f6733b71e99b3f349f9446d551de861d5b44a3b8096a3a36503cdda7313d3459c974adabd19d8bb66f6bdd1df3 SHA512 d9461ec874a3c4a14ea8450868ec4193ed160df3e43fb083b1bc0cd3c9e208a9698f5b84cb4088e02fcfcad83e88a98406a8782672c57f3caf609917443620ce
+DIST thunderbird-78.11.0-hu.xpi 679836 BLAKE2B e58d2bfe5c6919fc46ab323a325dcd3ea6b2069763da16f8cdeb79a50dd7a1812f01e42a89abaa61d1bee4dab608c15e898f3563fe2b5eb2d2dfd61cd4e08d48 SHA512 b27bc91598df5b47453593c0ca75217f59143db756a496386907992bc9d7d259655985459c6cacf9736b5d12f8ebd92d7419c478892e22a2c6747a05bbdd3c64
+DIST thunderbird-78.11.0-hy-AM.xpi 713327 BLAKE2B 25269f40b57361629a7212bfd1a5e8525e78d388a88e3648eea9316e7a181ecb79ca1657b1699103780fbecdb77ae939d2db29b424dcc00abb3bc8a65cf95b1c SHA512 389a018f3185b24d5141a235f12d8a450aa86d3a17d4af03049453c607bedab9f953dba3f4e0b6c6512eb56bd9276a13871b56c386dc0e1433c819fddc95a03e
+DIST thunderbird-78.11.0-id.xpi 620681 BLAKE2B 614ef09d3bafdceb05809efc973a38f23b7647561c80365d8b9dadeba0eb871b44af847ddecc0ee14a9ff8fe70c3facca2e1ba2a072ff3bed648c556cacab461 SHA512 2761954d55dda11609a20ce67868b9d83d3bc2608ecdc2a2d5bd8ffed628e80e62696f10b44026f53600becb0c0cadadf486f50e64f8ccffa7948cf1273fa910
+DIST thunderbird-78.11.0-is.xpi 581637 BLAKE2B 2462fcd02e4affe409def825e5e220e1c4a3a0b0ec9e6666c1641dda1aeab472c088688e971ad149d3462eb1d11521c4076142da37e22c52756a2442585a0ea8 SHA512 52b11675f5333e3519e4972030d48f158ad1a266774a387a34012839227607ffc70662d6d94c06e3212825c187261339f112bc3b3181aa89b9c66c2f0e480bdf
+DIST thunderbird-78.11.0-it.xpi 572964 BLAKE2B c272e3f7203dc8494f83075f8121971e9fbee227e99cb84e33db32df61e0504b3a30ccafbeee42757cb437382d98a3251b019522077f1c4bc5012a0487275f52 SHA512 c09e348a4cdc1a682b30358a9c2a8a49342f07de5fe746e17079a11c480a5046cae348b0d8cdf56df3af3a77020feb6d1248bc22ded14c0d2f1f6d3c5b74053a
+DIST thunderbird-78.11.0-ja.xpi 722453 BLAKE2B eac59b6fa660fa3d80f4c968c444b495017b44cb73e9ec28840fd135dea439b5fa481ef10fa57333e2cbbc4d6a68634ce2b1705cbacbfa7be74aff14e41f718e SHA512 c141ca2158307241f8b47fbca516944b81740c7a198f969e502bd774ac868037e9680024d910a737b34b026c465471bc2f493de4a6d6adf5e16c4aec66102cdb
+DIST thunderbird-78.11.0-ka.xpi 717016 BLAKE2B fba12a3dcff7cfe1421bc1d8ea130dff1c3c474e8aeb202463dc1bfcd681ea60e0076a6323ffd270e448dfb01a511ff93e13c906e0ab8f23d0da1c741848e988 SHA512 546d7863ac06da5334a89f8b3e590d596e58cadd3e7fb32420afad64d63ca31e4e8697e59e8f064a1dd1291c9fe6cb8993acac292f968494dde044e10bd71118
+DIST thunderbird-78.11.0-kab.xpi 651922 BLAKE2B 3b94ce7c69c7ed81361e4366c28de31e4e2e6f7e646e587ecf0bd410f3f52c3f284ca61805fe0ee0d86bc7d6763aee8a6071f53fb99d4638ab631451303ccb8e SHA512 60761ebf5d8fb8ff639e9178e5788fdcd9728cef6f69ba4dd9553eacf61b3e0a1ed3aa0489c277bd618745dc64da7587de8ee0f3f8d5f7ae3f93957f5456dec6
+DIST thunderbird-78.11.0-kk.xpi 720464 BLAKE2B bd741e0567c243303ae7287f9f12dfb7c59f286b8638285ea2b44e0bdb911dfc40434438fe7640f0a3a36a0863307ffccdfaac83d3c023cafb14d953f05a753e SHA512 d92a7e142e6e8d01853d55ba0fba3b94df2847a7bfc8c7086d3ab06646c6bc55d3ecf9c63e4dcf1e42b883f297f55fd9ca94e19df12d54d33a406f9b985f1218
+DIST thunderbird-78.11.0-ko.xpi 688207 BLAKE2B 1cc5547c1bd57daaa84557de95f708c9f44f66091b82749622e59030e91a1c1a6e7a503c692b1097f35cb1376634d1e9aef2c1d3ecdb82f02f3b8d7ac8d02ddf SHA512 111c022dfae9705ca43bec679e84345415626e29b6320ce1001e8a00c5b34948ed7dad0548b864ef367d4f8db91b4e56554f2ba7ec490efcea69207184776404
+DIST thunderbird-78.11.0-lt.xpi 660298 BLAKE2B d494291f5c7f5010128da76a704c8b6a780e1b37c6e89b5b4f275c4c3bba69d0e2bb7b7b2e27ee8922085570d5b7f43d65b3d9fad4f7589dcf32d7db965b135d SHA512 02ceeaf31b2d42494d5d1b8351912e4f4df5925e3b1111c0bb59ec84187ae83fd241a99f4f5660a8d7a0bf636b9c53c74fc61640065829735859c633f4f79758
+DIST thunderbird-78.11.0-ms.xpi 572177 BLAKE2B 9ac91c920b272754c6f97c1f0018b7bad5d78b017705f4a2d8d8ae2e54bcaca373d64ebce37cb76a4d99ab4dd17cfa275fc24bf1b6e1c60f062cea43242e9c11 SHA512 5e31a0eb2e34aa45f75ee932150131e5618984d2e7d04acf5cdb4a72c5fec53131ea1bd36e407b98266d9a497219745c2aba9b501ca813a133abd7cab81fa9ac
+DIST thunderbird-78.11.0-nb-NO.xpi 637236 BLAKE2B 86d94e683a3bddd0a344b8c3313dca82ec588a6957e6731734f1368a99e82acbb329f676bd516c43f7a54ad2ce18ee1d839283d132eb15300364477f13807abc SHA512 9953462a1ed7b3ec2cfc979d4379b711ba065d9c519677abe10f0c13196e36830dd6bb549d199b681042200ac64668152b6855e4f23ada38815cf63e3df4e95b
+DIST thunderbird-78.11.0-nl.xpi 644361 BLAKE2B 27a5a7a210ddf4f6c5e880f5234d938d61f513911db6b4954fc3cf97de257f253f089c2e4380294863bc08d8358ab9d3b79b786a0397076565d331ede5d94c66 SHA512 b4ba64c3bfdd3f4f5c52272802e927e2ad0bcd78b7553e7a65a16ecac715e5f9940f4d202097fc05e9b694e56e1ca9ddd99f1fb7f16b749e58a1f84835cadc4f
+DIST thunderbird-78.11.0-nn-NO.xpi 640698 BLAKE2B 64a382fdeb55933aed0f12e4e01c5cb4e858885213cb48c4f95030d61bd8bb50e7bad4ab27bffa85f0a741cd77bcdf9ac962f854cf665a0717f863ab70d30334 SHA512 2cd14aef1333764eab9635b9a676e9412843ca76bad49f68a75ff888a2c8159a6d8790db482c879b620754ee7102656fca3dac78d4ca37c4eb65ca9afc1b17e8
+DIST thunderbird-78.11.0-pa-IN.xpi 633218 BLAKE2B 782271f2f4c3858f3f7e4e9594210f2420f1116c28c2e28d7086194768c611c4f8cef2d26d6afa16a3449617eedef6395f54a1ad96136dde5763da5509744e20 SHA512 a0e5cceaa1b3a4278384c3653f463b9ba7829e24739cb6986b9e2bace54c4724e0747d72c7c8e7de4a0b06523e8722ccc21af3e2467580f2d8e375a62eb859d7
+DIST thunderbird-78.11.0-pl.xpi 637127 BLAKE2B 15bd3782cd937d32665e078bf064b3d359625a546bf160e53ca19e3cb6d0628b68ba5bc2237cc2668e5812ff0fcda98271e5cdf848d5bea59588d23c6355c9e3 SHA512 e6f552fe5cfb51cd1b8fbaa5f5e59606ac032bc4316b694429da2357cc20f466bd2fb93b53e4e8c8397dcb0b688912f838acfea9312ea4c6f78d5874e1350a6b
+DIST thunderbird-78.11.0-pt-BR.xpi 649418 BLAKE2B 5f12a096e4e8f4a1784c5de3042995f40e7bc389d935aabb2dfa6c90aaacfb4899d23ebe177b094fdc601303812096d4972fde661d34c407168c86300e43064a SHA512 8c31c917ef14f6b9ad1064d268bb5c32ac8cda2e43586abbd4dd2e898dbd6699e0c7babd2f0e4607b2ae2ddbb099acda46deda11ef329bad7ed46162bda85454
+DIST thunderbird-78.11.0-pt-PT.xpi 655488 BLAKE2B 34101f209071fbf439ed15b0ce1af5f16f5d07d9adcd84e15e64f2939177bcd192591ec3bcc962df3c6467d55b743867f4bcbecd330af667a758167b2129ac1b SHA512 81db3d1f452b06e08e81f7c40d0fd5ee6887e8c1e618b676dba10a9deee720da318db8b52c9632ae1b727b75e7c3577a355779fe233319f53881ea4b393f5da3
+DIST thunderbird-78.11.0-rm.xpi 646533 BLAKE2B 6ed3823c693a13accdf5293c55e61302f8747b43ded4b36dab0d28b31430174579cc6b8a37605a0ca3ebaf901ad00a15eb9e6fbe22822e17e9569b7d15b2597b SHA512 e0831ee2236dadf6554021c7f4b80329532a39233fa94109d304993f72a9be6436e0ed2f3aeeff928342de1798d4aa225200cd42d517185f8bcb8dc7ee813cf8
+DIST thunderbird-78.11.0-ro.xpi 662634 BLAKE2B d0d396b81621aed365b580dc802f3fd8d70da2814190f87d0007620110f03fcd45cb501a6be7b5fe8f616a2b25c7a312512f51e936d1894300b919fde21b412d SHA512 ac89bbe12cb3db1ab4afdb768ca7681a8620b8fd0ea13753806f8841e5f42b8e069cf8864b5b273e347068e30644c8cdfc748ef8aaecd16eac9e0d9d69b7f426
+DIST thunderbird-78.11.0-ru.xpi 756179 BLAKE2B 97ae08626e6d3cb79549a922cc77d407087b089099bdb313748b35105018cb7dfe20c180ce33590988dea28763801a5883c73384234dacb04a258cbb5045c22d SHA512 218d371689587addb7f58bf77800418e71865655a6b8a741a856ecd19664e714c5a706c28325871a455e14802d2ad19570e4dcc2ec36bb541030d1427a4e07c2
+DIST thunderbird-78.11.0-si.xpi 651107 BLAKE2B 023dd3bfb33421ad40838de454d26c3273edc18f8c37a0a138ef9b31e360639d5fe4c7ecac13d045ef484c95255ac7c8560f7a89de6d3acacb3bd62ae1d718d8 SHA512 b4407aeb29a7dbb11ddb1af9b819b26d02c0cbc0b9f8479d8186d63ad2919ed1f93c3e1f4cdc1033944ac4611623bb9e4cd41e5695873bd0c16f466f0a200ff6
+DIST thunderbird-78.11.0-sk.xpi 643226 BLAKE2B 4538fab12007f8bff1e398d91f4cd8a4ab5daec2a7a02f699fadd9352bf563de37984a2317cfa55979451b8e3ab139d0e9bff6b212895e35dfc47802323d96b8 SHA512 4c097c03a9c5f67d6c315f8d097760260986cf8cc299cbbe8e73c21cb1adccd9f27c91b420f6fd8dff07dfa1d9ef08ce8964dacc4ee2f27353fc6789c000ef5e
+DIST thunderbird-78.11.0-sl.xpi 632387 BLAKE2B 0447e0295494f468d339f716a64155ae7bd06ffe1bfd85d123498b8f7f08946280cd24f07249128cff90677a4bdb38a93dc1494d091d99f193ee35e2c2e0b29c SHA512 88a0188d61f53888221a62cd107c3cd140bea943e9ab04667a84d1fc4cb960e6e7a65b0415db77e5e16ff37edc80a0e4cbf2d1ec4f7cfd51aad4ac04d9715bff
+DIST thunderbird-78.11.0-sq.xpi 657820 BLAKE2B 05dac5425b86dfccdaf9e6851173e57783b9dc542b04b94bc38ac1c26d85e0de2bb5f458a99cbf6e2c1e03e87b4066ef7a0029a75aac072adca1376441737417 SHA512 271b0e279809375bdc32017bee724483de054f8afd29ea467fad49e6ae867447fd63a4ab29997a2f2b50d3cd0b1a68367363e2c1f352729ab0d288fbb6451b84
+DIST thunderbird-78.11.0-sr.xpi 683118 BLAKE2B d3994161023a5e6d678cc32d8e192e3ee3e127b1b4cc0e2d060a3b126757f835f9c5ed2c5bcea1834bd779a412f7b38a02030b818f9dc11128dc4fcd4d892d45 SHA512 f9aba1f45d313d9c6eb6cb2177e218e21c1a6e9e7908675462893dae3354eda896e6ff8a00d3f634883165e01dea5a7550c752e348745489937d7179e3407049
+DIST thunderbird-78.11.0-sv-SE.xpi 648871 BLAKE2B c42ae9287630439a52b77d2ddf4dd00ee83ae7b85a9a7bd184e69b2d7ccbd11352098dfaa1164a1ee6ad3d8df72bd7a16a4991a6c1da4db6d00fd41ac0603d70 SHA512 708950a9bd38375e469f8e0006c4c63f867828f7324e847bc9116f2cdc59c73c4b8a0bfa65568c28d71163cd2cd13f73749590578145d809ee6306a627c17bc1
+DIST thunderbird-78.11.0-th.xpi 712040 BLAKE2B 7d45cc692e84122fbb8abf265d000fddeea685059f93ae862fb0f49f9a6ee46af5f8c40cc06efc849b5704356c7ad2925addd087468216b715399bed14933638 SHA512 739f265f30e43ee707ac8b3f422b3665640133a5303a07ffcbc5c0f503bcc27236fdd43fa8650c18432ad7888d96ebcd1c6d7043d75be27c76723e02bd816671
+DIST thunderbird-78.11.0-tr.xpi 649072 BLAKE2B f2e78a3c0098b4b13d6f0c21a091843a77151785f3c054fead3a42c0a8524af9d3db4ea1fa67f8394dc7e713d4c67b15baef37be1c6fd8f7a8f31adddce7b42a SHA512 d7c2015420542ce94419b3edd6a77fff5ce48206d8705ed83845725ef7f76b7e64d39c033bb419d61bc74fd0aae9472fd5be7670f186b0f778a61fb6d757a65a
+DIST thunderbird-78.11.0-uz.xpi 586597 BLAKE2B 8b064a4ddadf316854546ed33c65aac119376f09091d42c22f47dd8f40ac210d12f5f1a8101b03f9113ed0e5c09e9ea3c21c95525c4a2a0bc2eaac195924c831 SHA512 72be001755d84ec39c00cf2d9a83d787d1716620da0c1a99b8f5ce793c89af89a8f49361a32ec4335c7a900da7ca718e3e38ddc80f81ae22786f158ff7c7ae07
+DIST thunderbird-78.11.0-vi.xpi 674611 BLAKE2B 67834c7860979a438ed61056080b32c7be4416aebf87325172a15ff48f915a0d61c6a45e5cfc84c4aa74cd0f3776e5dc1476e187f7c07c5378abc010ac2af5ae SHA512 336075fc449df3ac1a05d041d7fab80ca7c418cb43bbdb45df50b1a206dc95e0750f1b4b61da6d5473346e183f0c7525ef41de76dab9ff60ff8923b030a67486
+DIST thunderbird-78.11.0-zh-CN.xpi 687183 BLAKE2B 9a18986ed58dec976e82f533a8a08cd6f374f20f3fe016ca8dff71fc01be7de0cebeb2cc311791bd41cee66f53f8f275a16cec376efe70848cb761daebdc87db SHA512 53f81f5e5bfd20c3a6dd144d780e76016a58c0c60c034e7b7738a81d9ee6e702652ea8fb3e40861918e7606c6159ed09dd2e6ad7522a1d25f6c648fcc6c908f3
+DIST thunderbird-78.11.0-zh-TW.xpi 687626 BLAKE2B 4822fd23fc0864238bbb85742fd9f9ce6a9f13384270a738d95f33defa5b07f453cd490d9df771a8fed594007512e40bbebf3434d29dad61319b35230d0e7229 SHA512 95eaa27e5877a3203ae0976bb349b38fd3d6ec0b44e0cc333e2573877d5482897d5ad4c888d8947c6d55ab3e6c2e17c21fe69c3aff3d3c81549e8f19918c0153
+DIST thunderbird-78.11.0.source.tar.xz 352417996 BLAKE2B 8c8c972df68468a13c33526d076f40b02ef2b1568ae24a3b496cfca65647ff079c27117092c3e856f4b8ac535802619f7f01e14fd2804a37586006c4f6a12158 SHA512 c669439ae671a0a589f69902cced5685b8bab346c0ca3eeabd58d0449af338fb7a7a9189d6c2ef784f660c32278fee70766169d91293447eedef2e18a84f116a
diff --git a/mail-client/thunderbird/thunderbird-78.11.0.ebuild b/mail-client/thunderbird/thunderbird-78.11.0.ebuild
new file mode 100644
index 000000000000..281a2a6acb6f
--- /dev/null
+++ b/mail-client/thunderbird/thunderbird-78.11.0.ebuild
@@ -0,0 +1,1108 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+FIREFOX_PATCHSET="firefox-78esr-patches-14.tar.xz"
+
+LLVM_MAX_SLOT=12
+
+PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_REQ_USE="ncurses,sqlite,ssl"
+
+WANT_AUTOCONF="2.1"
+
+VIRTUALX_REQUIRED="pgo"
+
+MOZ_ESR=
+
+MOZ_PV=${PV}
+MOZ_PV_SUFFIX=
+if [[ ${PV} =~ (_(alpha|beta|rc).*)$ ]] ; then
+ MOZ_PV_SUFFIX=${BASH_REMATCH[1]}
+
+ # Convert the ebuild version to the upstream Mozilla version
+ MOZ_PV="${MOZ_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
+fi
+
+if [[ -n ${MOZ_ESR} ]] ; then
+ # ESR releases have slightly different version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+MOZ_PN="${PN%-bin}"
+MOZ_P="${MOZ_PN}-${MOZ_PV}"
+MOZ_PV_DISTFILES="${MOZ_PV}${MOZ_PV_SUFFIX}"
+MOZ_P_DISTFILES="${MOZ_PN}-${MOZ_PV_DISTFILES}"
+
+inherit autotools check-reqs desktop flag-o-matic gnome2-utils llvm \
+ multiprocessing pax-utils python-any-r1 toolchain-funcs \
+ virtualx xdg
+
+MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/releases/${MOZ_PV}"
+
+if [[ ${PV} == *_rc* ]] ; then
+ MOZ_SRC_BASE_URI="https://archive.mozilla.org/pub/${MOZ_PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
+fi
+
+PATCH_URIS=(
+ https://dev.gentoo.org/~{axs,polynomial-c,whissi}/mozilla/patchsets/${FIREFOX_PATCHSET}
+)
+
+SRC_URI="${MOZ_SRC_BASE_URI}/source/${MOZ_P}.source.tar.xz -> ${MOZ_P_DISTFILES}.source.tar.xz
+ ${PATCH_URIS[@]}"
+
+DESCRIPTION="Thunderbird Mail Client"
+HOMEPAGE="https://www.mozilla.org/thunderbird"
+
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+SLOT="0/$(ver_cut 1)"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+IUSE="+clang cpu_flags_arm_neon dbus debug eme-free
+ hardened hwaccel jack lto +openh264 pgo pulseaudio selinux
+ +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent
+ +system-libvpx +system-webp wayland wifi"
+
+REQUIRED_USE="wifi? ( dbus )"
+
+BDEPEND="${PYTHON_DEPS}
+ app-arch/unzip
+ app-arch/zip
+ >=dev-util/cbindgen-0.14.3
+ >=net-libs/nodejs-10.21.0
+ virtual/pkgconfig
+ >=virtual/rust-1.41.0
+ || (
+ (
+ sys-devel/clang:12
+ sys-devel/llvm:12
+ clang? (
+ =sys-devel/lld-12*
+ pgo? ( =sys-libs/compiler-rt-sanitizers-12*[profile] )
+ )
+ )
+ (
+ sys-devel/clang:11
+ sys-devel/llvm:11
+ clang? (
+ =sys-devel/lld-11*
+ pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] )
+ )
+ )
+ (
+ sys-devel/clang:10
+ sys-devel/llvm:10
+ clang? (
+ =sys-devel/lld-10*
+ pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] )
+ )
+ )
+ )
+ lto? (
+ !clang? ( sys-devel/binutils[gold] )
+ )
+ amd64? ( >=dev-lang/yasm-1.1 )
+ x86? ( >=dev-lang/yasm-1.1 )
+ !system-av1? (
+ amd64? ( >=dev-lang/nasm-2.13 )
+ x86? ( >=dev-lang/nasm-2.13 )
+ )"
+
+CDEPEND="
+ >=dev-libs/nss-3.53.1
+ >=dev-libs/nspr-4.25
+ 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
+ >=x11-libs/pixman-0.19.2
+ >=dev-libs/glib-2.26:2
+ >=sys-libs/zlib-1.2.3
+ >=dev-libs/libffi-3.0.10:=
+ media-video/ffmpeg
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrender
+ x11-libs/libXt
+ dbus? (
+ sys-apps/dbus
+ dev-libs/dbus-glib
+ )
+ system-av1? (
+ >=media-libs/dav1d-0.3.0:=
+ >=media-libs/libaom-1.0.0:=
+ )
+ system-harfbuzz? (
+ >=media-libs/harfbuzz-2.6.8:0=
+ >=media-gfx/graphite2-1.3.13
+ )
+ system-icu? ( >=dev-libs/icu-67.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.8.2:0=[postproc] )
+ system-webp? ( >=media-libs/libwebp-1.1.0:0= )
+ wifi? (
+ kernel_linux? (
+ sys-apps/dbus
+ dev-libs/dbus-glib
+ net-misc/networkmanager
+ )
+ )
+ jack? ( virtual/jack )
+ selinux? ( sec-policy/selinux-mozilla )"
+
+RDEPEND="${CDEPEND}
+ jack? ( virtual/jack )
+ openh264? ( media-libs/openh264:*[plugin] )
+ pulseaudio? (
+ || (
+ media-sound/pulseaudio
+ >=media-sound/apulse-0.1.12-r4
+ )
+ )
+ selinux? ( sec-policy/selinux-mozilla )
+ !<x11-plugins/enigmail-2.2"
+
+DEPEND="${CDEPEND}
+ pulseaudio? (
+ || (
+ media-sound/pulseaudio
+ >=media-sound/apulse-0.1.12-r4[sdk]
+ )
+ )
+ wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
+ amd64? ( virtual/opengl )
+ x86? ( virtual/opengl )"
+
+S="${WORKDIR}/${PN}-${PV%_*}"
+
+llvm_check_deps() {
+ if ! has_version -b "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 -b "=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 -b "=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 "Using LLVM slot ${LLVM_SLOT} to build" >&2
+}
+
+MOZ_LANGS=(
+ af ar ast be bg br ca cak cs cy da de dsb el en-CA en-GB en-US
+ es-AR es-ES et eu fa fi fr fy-NL ga-IE gd gl he hr hsb hu hy-AM
+ id is it ja ka kab kk ko lt ms nb-NO nl nn-NO pa-IN pl pt-BR
+ pt-PT rm ro ru si sk sl sq sr sv-SE th tr uz vi zh-CN zh-TW
+)
+
+mozilla_set_globals() {
+ # https://bugs.gentoo.org/587334
+ local MOZ_TOO_REGIONALIZED_FOR_L10N=(
+ fy-NL ga-IE gu-IN hi-IN hy-AM nb-NO ne-NP nn-NO pa-IN sv-SE
+ )
+
+ local lang xflag
+ for lang in "${MOZ_LANGS[@]}" ; do
+ # en and en_US are handled internally
+ if [[ ${lang} == en ]] || [[ ${lang} == en-US ]] ; then
+ continue
+ fi
+
+ # strip region subtag if $lang is in the list
+ if has ${lang} "${MOZ_TOO_REGIONALIZED_FOR_L10N[@]}" ; then
+ xflag=${lang%%-*}
+ else
+ xflag=${lang}
+ fi
+
+ SRC_URI+=" l10n_${xflag/[_@]/-}? ("
+ SRC_URI+=" ${MOZ_SRC_BASE_URI}/linux-x86_64/xpi/${lang}.xpi -> ${MOZ_P_DISTFILES}-${lang}.xpi"
+ SRC_URI+=" )"
+ IUSE+=" l10n_${xflag/[_@]/-}"
+ done
+}
+mozilla_set_globals
+
+moz_clear_vendor_checksums() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -ne 1 ]] ; then
+ die "${FUNCNAME} requires exact one argument"
+ fi
+
+ einfo "Clearing cargo checksums for ${1} ..."
+
+ sed -i \
+ -e 's/\("files":{\)[^}]*/\1/' \
+ "${S}"/third_party/rust/${1}/.cargo-checksum.json \
+ || die
+}
+
+moz_install_xpi() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local DESTDIR=${1}
+ shift
+
+ insinto "${DESTDIR}"
+
+ local emid xpi_file xpi_tmp_dir
+ for xpi_file in "${@}" ; do
+ emid=
+ xpi_tmp_dir=$(mktemp -d --tmpdir="${T}")
+
+ # Unpack XPI
+ unzip -qq "${xpi_file}" -d "${xpi_tmp_dir}" || die
+
+ # Determine extension ID
+ if [[ -f "${xpi_tmp_dir}/install.rdf" ]] ; then
+ emid=$(sed -n -e '/install-manifest/,$ { /em:id/!d; s/.*[\">]\([^\"<>]*\)[\"<].*/\1/; p; q }' "${xpi_tmp_dir}/install.rdf")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from install.rdf"
+ elif [[ -f "${xpi_tmp_dir}/manifest.json" ]] ; then
+ emid=$(sed -n -e 's/.*"id": "\([^"]*\)".*/\1/p' "${xpi_tmp_dir}/manifest.json")
+ [[ -z "${emid}" ]] && die "failed to determine extension id from manifest.json"
+ else
+ die "failed to determine extension id"
+ fi
+
+ einfo "Installing ${emid}.xpi into ${ED}${DESTDIR} ..."
+ newins "${xpi_file}" "${emid}.xpi"
+ done
+}
+
+mozconfig_add_options_ac() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local reason=${1}
+ shift
+
+ local option
+ for option in ${@} ; do
+ echo "ac_add_options ${option} # ${reason}" >>${MOZCONFIG}
+ done
+}
+
+mozconfig_add_options_mk() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 2 ]] ; then
+ die "${FUNCNAME} requires at least two arguments"
+ fi
+
+ local reason=${1}
+ shift
+
+ local option
+ for option in ${@} ; do
+ echo "mk_add_options ${option} # ${reason}" >>${MOZCONFIG}
+ done
+}
+
+mozconfig_use_enable() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 1 ]] ; then
+ die "${FUNCNAME} requires at least one arguments"
+ fi
+
+ local flag=$(use_enable "${@}")
+ mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
+}
+
+mozconfig_use_with() {
+ debug-print-function ${FUNCNAME} "$@"
+
+ if [[ ${#} -lt 1 ]] ; then
+ die "${FUNCNAME} requires at least one arguments"
+ fi
+
+ local flag=$(use_with "${@}")
+ mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
+}
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]] ; then
+ if use pgo ; then
+ if ! has usersandbox $FEATURES ; then
+ die "You must enable usersandbox as X server can not run as root!"
+ fi
+ fi
+
+ # Ensure we have enough disk space to compile
+ if use pgo || use lto || use debug ; then
+ CHECKREQS_DISK_BUILD="13500M"
+ else
+ CHECKREQS_DISK_BUILD="6400M"
+ fi
+
+ check-reqs_pkg_pretend
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]] ; then
+ if use pgo ; then
+ if ! has userpriv ${FEATURES} ; then
+ eerror "Building ${PN} with USE=pgo and FEATURES=-userpriv is not supported!"
+ fi
+ fi
+
+ # Ensure we have enough disk space to compile
+ if use pgo || use lto || use debug ; then
+ CHECKREQS_DISK_BUILD="13500M"
+ else
+ CHECKREQS_DISK_BUILD="6400M"
+ fi
+
+ check-reqs_pkg_setup
+
+ llvm_pkg_setup
+
+ if use clang && use lto ; then
+ local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
+ [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
+ [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
+
+ # temp fix for https://bugs.gentoo.org/768543
+ # we can assume that rust 1.{49,50}.0 always uses llvm 11
+ local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
+ [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
+ [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
+
+ if ver_test "${version_rust}" -ge "1.49" && ver_test "${version_rust}" -le "1.50" ; then
+ local version_llvm_rust="11"
+ else
+ local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
+ [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
+ [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
+ fi
+
+ if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
+ eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
+ eerror "You will be unable to link ${CATEGORY}/${PN}. To proceed you have the following options:"
+ eerror " - Manually switch rust version using 'eselect rust' to match used LLVM version"
+ eerror " - Switch to dev-lang/rust[system-llvm] which will guarantee matching version"
+ eerror " - Build ${CATEGORY}/${PN} without USE=lto"
+ die "LLVM version used by Rust (${version_llvm_rust}) does not match with ld.lld version (${version_lld})!"
+ fi
+ fi
+
+ python-any-r1_pkg_setup
+
+ # 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 \
+ XAUTHORITY \
+ XDG_CACHE_HOME \
+ XDG_SESSION_COOKIE
+
+ # Build system is using /proc/self/oom_score_adj, bug #604394
+ addpredict /proc/self/oom_score_adj
+
+ if ! mountpoint -q /dev/shm ; then
+ # If /dev/shm is not available, configure is known to fail with
+ # a traceback report referencing /usr/lib/pythonN.N/multiprocessing/synchronize.py
+ ewarn "/dev/shm is not mounted -- expect build failures!"
+ fi
+
+ # 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.
+ if [[ -z "${MOZ_API_KEY_GOOGLE+set}" ]] ; then
+ MOZ_API_KEY_GOOGLE="AIzaSyDEAOvatFogGaPi0eTgsV_ZlEzx0ObmepsMzfAc"
+ fi
+
+ if [[ -z "${MOZ_API_KEY_LOCATION+set}" ]] ; then
+ MOZ_API_KEY_LOCATION="AIzaSyB2h2OuRgGaPicUgy5N-5hsZqiPW6sH3n_rptiQ"
+ fi
+
+ # Mozilla API keys (see https://location.services.mozilla.com/api)
+ # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
+ # get your own set of keys.
+ if [[ -z "${MOZ_API_KEY_MOZILLA+set}" ]] ; then
+ MOZ_API_KEY_MOZILLA="edb3d487-3a84-46m0ap1e3-9dfd-92b5efaaa005"
+ fi
+
+ # Ensure we use C locale when building, bug #746215
+ export LC_ALL=C
+ fi
+}
+
+src_unpack() {
+ local _lp_dir="${WORKDIR}/language_packs"
+ local _src_file
+
+ if [[ ! -d "${_lp_dir}" ]] ; then
+ mkdir "${_lp_dir}" || die
+ fi
+
+ for _src_file in ${A} ; do
+ if [[ ${_src_file} == *.xpi ]]; then
+ cp "${DISTDIR}/${_src_file}" "${_lp_dir}" || die "Failed to copy '${_src_file}' to '${_lp_dir}'!"
+ else
+ unpack ${_src_file}
+ fi
+ done
+}
+
+src_prepare() {
+ use lto && rm -v "${WORKDIR}"/firefox-patches/*-LTO-Only-enable-LTO-*.patch
+ eapply "${WORKDIR}/firefox-patches"
+
+ # Allow user to apply any additional patches without modifing ebuild
+ eapply_user
+
+ # Make LTO respect MAKEOPTS
+ sed -i \
+ -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/build/moz.configure/lto-pgo.configure \
+ || die "sed failed to set num_cores"
+
+ # Make ICU respect MAKEOPTS
+ sed -i \
+ -e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
+ "${S}"/intl/icu_sources_data.py \
+ || die "sed failed to set num_cores"
+
+ # sed-in toolchain prefix
+ sed -i \
+ -e "s/objdump/${CHOST}-objdump/" \
+ "${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
+ || die "sed failed to set toolchain prefix"
+
+ sed -i \
+ -e 's/ccache_stats = None/return None/' \
+ "${S}"/python/mozbuild/mozbuild/controller/building.py \
+ || die "sed failed to disable ccache stats call"
+
+ einfo "Removing pre-built binaries ..."
+ find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
+
+ # Clearing checksums where we have applied patches
+ moz_clear_vendor_checksums target-lexicon-0.9.0
+
+ # Create build dir
+ BUILD_DIR="${WORKDIR}/${PN}_build"
+ mkdir -p "${BUILD_DIR}" || die
+
+ # Write API keys to disk
+ echo -n "${MOZ_API_KEY_GOOGLE//gGaPi/}" > "${S}"/api-google.key || die
+ echo -n "${MOZ_API_KEY_LOCATION//gGaPi/}" > "${S}"/api-location.key || die
+ echo -n "${MOZ_API_KEY_MOZILLA//m0ap1/}" > "${S}"/api-mozilla.key || die
+
+ xdg_src_prepare
+}
+
+src_configure() {
+ # Show flags set at the beginning
+ einfo "Current BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
+ einfo "Current CFLAGS:\t\t${CFLAGS:-no value set}"
+ einfo "Current CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
+ einfo "Current LDFLAGS:\t\t${LDFLAGS:-no value set}"
+ einfo "Current RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
+
+ local have_switched_compiler=
+ if use clang && ! tc-is-clang ; then
+ # Force clang
+ einfo "Enforcing the use of clang due to USE=clang ..."
+ have_switched_compiler=yes
+ AR=llvm-ar
+ CC=${CHOST}-clang
+ CXX=${CHOST}-clang++
+ NM=llvm-nm
+ RANLIB=llvm-ranlib
+ elif ! use clang && ! tc-is-gcc ; then
+ # Force gcc
+ have_switched_compiler=yes
+ einfo "Enforcing the use of gcc due to USE=-clang ..."
+ AR=gcc-ar
+ CC=${CHOST}-gcc
+ CXX=${CHOST}-g++
+ NM=gcc-nm
+ RANLIB=gcc-ranlib
+ fi
+
+ if [[ -n "${have_switched_compiler}" ]] ; then
+ # Because we switched active compiler we have to ensure
+ # that no unsupported flags are set
+ strip-unsupported-flags
+ fi
+
+ # Ensure we use correct toolchain
+ export HOST_CC="$(tc-getBUILD_CC)"
+ export HOST_CXX="$(tc-getBUILD_CXX)"
+ tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
+
+ # Pass the correct toolchain paths through cbindgen
+ if tc-is-cross-compiler ; then
+ export BINDGEN_CFLAGS="${SYSROOT:+--sysroot=${ESYSROOT}} --target=${CHOST} ${BINDGEN_CFLAGS-}"
+ fi
+
+ # Set MOZILLA_FIVE_HOME
+ export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+
+ # python/mach/mach/mixin/process.py fails to detect SHELL
+ export SHELL="${EPREFIX}/bin/bash"
+
+ # Set MOZCONFIG
+ export MOZCONFIG="${S}/.mozconfig"
+
+ # Initialize MOZCONFIG
+ mozconfig_add_options_ac '' --enable-application=comm/mail
+ mozconfig_add_options_ac '' --enable-calendar
+
+ # Set Gentoo defaults
+ export MOZILLA_OFFICIAL=1
+
+ mozconfig_add_options_ac 'Gentoo default' \
+ --allow-addon-sideload \
+ --disable-cargo-incremental \
+ --disable-crashreporter \
+ --disable-install-strip \
+ --disable-strip \
+ --disable-updater \
+ --enable-official-branding \
+ --enable-release \
+ --enable-system-ffi \
+ --enable-system-pixman \
+ --host="${CBUILD:-${CHOST}}" \
+ --libdir="${EPREFIX}/usr/$(get_libdir)" \
+ --prefix="${EPREFIX}/usr" \
+ --target="${CHOST}" \
+ --without-ccache \
+ --with-intl-api \
+ --with-libclang-path="$(llvm-config --libdir)" \
+ --with-system-nspr \
+ --with-system-nss \
+ --with-system-png \
+ --with-system-zlib \
+ --with-toolchain-prefix="${CHOST}-" \
+ --with-unsigned-addon-scopes=app,system \
+ --x-includes="${SYSROOT}${EPREFIX}/usr/include" \
+ --x-libraries="${SYSROOT}${EPREFIX}/usr/$(get_libdir)"
+
+ # Set update channel
+ local update_channel=release
+ [[ -n ${MOZ_ESR} ]] && update_channel=esr
+ mozconfig_add_options_ac '' --update-channel=${update_channel}
+
+ if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
+ mozconfig_add_options_ac '' --enable-rust-simd
+ fi
+
+ if [[ -s "${S}/api-google.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-google.key" | md5sum | awk '{ print $1 }') != 709560c02f94b41f9ad2c49207be6c54 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-google-safebrowsing-api-keyfile="${S}/api-google.key"
+ else
+ einfo "Building without Google API key ..."
+ fi
+
+ if [[ -s "${S}/api-location.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-location.key" | md5sum | awk '{ print $1 }') != ffb7895e35dedf832eb1c5d420ac7420 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-google-location-service-api-keyfile="${S}/api-location.key"
+ else
+ einfo "Building without Location API key ..."
+ fi
+
+ if [[ -s "${S}/api-mozilla.key" ]] ; then
+ local key_origin="Gentoo default"
+ if [[ $(cat "${S}/api-mozilla.key" | md5sum | awk '{ print $1 }') != 3927726e9442a8e8fa0e46ccc39caa27 ]] ; then
+ key_origin="User value"
+ fi
+
+ mozconfig_add_options_ac "${key_origin}" \
+ --with-mozilla-api-keyfile="${S}/api-mozilla.key"
+ else
+ einfo "Building without Mozilla API key ..."
+ fi
+
+ 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-libevent system-libevent "${SYSROOT}${EPREFIX}/usr"
+ mozconfig_use_with system-libvpx
+ mozconfig_use_with system-webp
+
+ mozconfig_use_enable dbus
+
+ use eme-free && mozconfig_add_options_ac '+eme-free' --disable-eme
+
+ if use hardened ; then
+ mozconfig_add_options_ac "+hardened" --enable-hardening
+ append-ldflags "-Wl,-z,relro -Wl,-z,now"
+ fi
+
+ mozconfig_use_enable jack
+
+ mozconfig_use_enable pulseaudio
+ # force the deprecated alsa sound code if pulseaudio is disabled
+ if use kernel_linux && ! use pulseaudio ; then
+ mozconfig_add_options_ac '-pulseaudio' --enable-alsa
+ fi
+
+ mozconfig_use_enable wifi necko-wifi
+
+ if use wayland ; then
+ mozconfig_add_options_ac '+wayland' --enable-default-toolkit=cairo-gtk3-wayland
+ else
+ mozconfig_add_options_ac '' --enable-default-toolkit=cairo-gtk3
+ fi
+
+ if use lto ; then
+ if use clang ; then
+ # Upstream only supports lld when using clang
+ mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
+
+ mozconfig_add_options_ac '+lto' --enable-lto=cross
+ else
+ # Linking only works when using ld.gold when LTO is enabled
+ mozconfig_add_options_ac "forcing ld=gold due to USE=lto" --enable-linker=gold
+
+ # ThinLTO is currently broken, see bmo#1644409
+ mozconfig_add_options_ac '+lto' --enable-lto=full
+ fi
+
+ if use pgo ; then
+ mozconfig_add_options_ac '+pgo' MOZ_PGO=1
+
+ if use clang ; then
+ # Used in build/pgo/profileserver.py
+ export LLVM_PROFDATA="llvm-profdata"
+ fi
+ fi
+ else
+ # Avoid auto-magic on linker
+ if use clang ; then
+ # This is upstream's default
+ mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
+ elif tc-ld-is-gold ; then
+ mozconfig_add_options_ac "linker is set to gold" --enable-linker=gold
+ else
+ mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
+ fi
+ fi
+
+ # LTO flag was handled via configure
+ filter-flags '-flto*'
+
+ mozconfig_use_enable debug
+ if use debug ; then
+ mozconfig_add_options_ac '+debug' --disable-optimize
+ else
+ if is-flag '-g*' ; then
+ if use clang ; then
+ mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols=$(get-flag '-g*')
+ else
+ mozconfig_add_options_ac 'from CFLAGS' --enable-debug-symbols
+ fi
+ else
+ mozconfig_add_options_ac 'Gentoo default' --disable-debug-symbols
+ fi
+
+ if is-flag '-O0' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O0
+ elif is-flag '-O4' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O4
+ elif is-flag '-O3' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O3
+ elif is-flag '-O1' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-O1
+ elif is-flag '-Os' ; then
+ mozconfig_add_options_ac "from CFLAGS" --enable-optimize=-Os
+ else
+ mozconfig_add_options_ac "Gentoo default" --enable-optimize=-O2
+ fi
+ fi
+
+ # Debug flag was handled via configure
+ filter-flags '-g*'
+
+ # Optimization flag was handled via configure
+ filter-flags '-O*'
+
+ # Modifications to better support ARM, bug #553364
+ if use cpu_flags_arm_neon ; then
+ mozconfig_add_options_ac '+cpu_flags_arm_neon' --with-fpu=neon
+
+ if ! tc-is-clang ; then
+ # thumb options aren't supported when using clang, bug 666966
+ mozconfig_add_options_ac '+cpu_flags_arm_neon' \
+ --with-thumb=yes \
+ --with-thumb-interwork=no
+ fi
+ fi
+
+ if [[ ${CHOST} == armv*h* ]] ; then
+ mozconfig_add_options_ac 'CHOST=armv*h*' --with-float-abi=hard
+
+ if ! use system-libvpx ; then
+ sed -i \
+ -e "s|softfp|hard|" \
+ "${S}"/media/libvpx/moz.build \
+ || die
+ fi
+ fi
+
+ if use clang ; then
+ # https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
+ # https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
+ # toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
+ local disable_elf_hack=
+ if use amd64 ; then
+ disable_elf_hack=yes
+ elif use x86 ; then
+ disable_elf_hack=yes
+ elif use arm ; then
+ disable_elf_hack=yes
+ fi
+
+ if [[ -n ${disable_elf_hack} ]] ; then
+ mozconfig_add_options_ac 'elf-hack is broken when using Clang' --disable-elf-hack
+ fi
+ elif tc-is-gcc ; then
+ if ver_test $(gcc-fullversion) -ge 10 ; then
+ einfo "Forcing -fno-tree-loop-vectorize to workaround GCC bug, see bug 758446 ..."
+ append-cxxflags -fno-tree-loop-vectorize
+ fi
+ fi
+
+ # Additional ARCH support
+ case "${ARCH}" in
+ arm)
+ # Reduce the memory requirements for linking
+ if use clang ; then
+ # Nothing to do
+ :;
+ elif tc-ld-is-gold || use lto ; then
+ append-ldflags -Wl,--no-keep-memory
+ else
+ append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
+ fi
+ ;;
+ esac
+
+ if ! use elibc_glibc ; then
+ mozconfig_add_options_ac '!elibc_glibc' --disable-jemalloc
+ fi
+
+ # Allow elfhack to work in combination with unstripped binaries
+ # when they would normally be larger than 2GiB.
+ append-ldflags "-Wl,--compress-debug-sections=zlib"
+
+ # Make revdep-rebuild.sh happy; Also required for musl
+ append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
+
+ # Pass $MAKEOPTS to build system
+ export MOZ_MAKE_FLAGS="${MAKEOPTS}"
+
+ # Use system's Python environment
+ export MACH_USE_SYSTEM_PYTHON=1
+
+ # Disable notification when build system has finished
+ export MOZ_NOSPAM=1
+
+ # Build system requires xargs but is unable to find it
+ mozconfig_add_options_mk 'Gentoo default' "XARGS=${EPREFIX}/usr/bin/xargs"
+
+ # Set build dir
+ mozconfig_add_options_mk 'Gentoo default' "MOZ_OBJDIR=${BUILD_DIR}"
+
+ # Show flags we will use
+ einfo "Build BINDGEN_CFLAGS:\t${BINDGEN_CFLAGS:-no value set}"
+ einfo "Build CFLAGS:\t\t${CFLAGS:-no value set}"
+ einfo "Build CXXFLAGS:\t\t${CXXFLAGS:-no value set}"
+ einfo "Build LDFLAGS:\t\t${LDFLAGS:-no value set}"
+ einfo "Build RUSTFLAGS:\t\t${RUSTFLAGS:-no value set}"
+
+ # Handle EXTRA_CONF and show summary
+ local ac opt hash reason
+
+ # Apply EXTRA_ECONF entries to $MOZCONFIG
+ if [[ -n ${EXTRA_ECONF} ]] ; then
+ IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
+ for opt in "${ac[@]}"; do
+ mozconfig_add_options_ac "EXTRA_ECONF" --${opt#--}
+ done
+ fi
+
+ echo
+ echo "=========================================================="
+ echo "Building ${PF} with the following configuration"
+ grep ^ac_add_options "${MOZCONFIG}" | while read ac opt hash reason; do
+ [[ -z ${hash} || ${hash} == \# ]] \
+ || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
+ printf " %-30s %s\n" "${opt}" "${reason:-mozilla.org default}"
+ done
+ echo "=========================================================="
+ echo
+
+ ./mach configure || die
+}
+
+src_compile() {
+ local virtx_cmd=
+
+ if use pgo ; then
+ virtx_cmd=virtx
+
+ # Reset and cleanup environment variables used by GNOME/XDG
+ gnome2_environment_reset
+
+ addpredict /root
+ fi
+
+ local -x GDK_BACKEND=x11
+
+ ${virtx_cmd} ./mach build --verbose \
+ || die
+}
+
+src_install() {
+ # xpcshell is getting called during install
+ pax-mark m \
+ "${BUILD_DIR}"/dist/bin/xpcshell \
+ "${BUILD_DIR}"/dist/bin/${PN} \
+ "${BUILD_DIR}"/dist/bin/plugin-container
+
+ DESTDIR="${D}" ./mach install || die
+
+ # Upstream cannot ship symlink but we can (bmo#658850)
+ rm "${ED}${MOZILLA_FIVE_HOME}/${PN}-bin" || die
+ dosym ${PN} ${MOZILLA_FIVE_HOME}/${PN}-bin
+
+ # Don't install llvm-symbolizer from sys-devel/llvm package
+ if [[ -f "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] ; then
+ rm -v "${ED}${MOZILLA_FIVE_HOME}/llvm-symbolizer" || die
+ fi
+
+ # Install policy (currently only used to disable application updates)
+ insinto "${MOZILLA_FIVE_HOME}/distribution"
+ newins "${FILESDIR}"/distribution.ini distribution.ini
+ newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
+
+ # Install system-wide preferences
+ local PREFS_DIR="${MOZILLA_FIVE_HOME}/defaults/pref"
+ insinto "${PREFS_DIR}"
+ newins "${FILESDIR}"/gentoo-default-prefs.js gentoo-prefs.js
+
+ local GENTOO_PREFS="${ED}${PREFS_DIR}/gentoo-prefs.js"
+
+ # Set dictionary path to use system hunspell
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set spellchecker.dictionary_path pref"
+ pref("spellchecker.dictionary_path", "${EPREFIX}/usr/share/myspell");
+ EOF
+
+ # Force hwaccel prefs if USE=hwaccel is enabled
+ if use hwaccel ; then
+ cat "${FILESDIR}"/gentoo-hwaccel-prefs.js \
+ >>"${GENTOO_PREFS}" \
+ || die "failed to add prefs to force hardware-accelerated rendering to all-gentoo.js"
+ fi
+
+ # Force the graphite pref if USE=system-harfbuzz is enabled, since the pref cannot disable it
+ if use system-harfbuzz ; then
+ cat >>"${GENTOO_PREFS}" <<-EOF || die "failed to set gfx.font_rendering.graphite.enabled pref"
+ sticky_pref("gfx.font_rendering.graphite.enabled", true);
+ EOF
+ fi
+
+ # Install language packs
+ local langpacks=( $(find "${WORKDIR}/language_packs" -type f -name '*.xpi') )
+ if [[ -n "${langpacks}" ]] ; then
+ moz_install_xpi "${MOZILLA_FIVE_HOME}/distribution/extensions" "${langpacks[@]}"
+ fi
+
+ # Install icons
+ local icon_srcdir="${S}/comm/mail/branding/thunderbird"
+ local icon_symbolic_file="${icon_srcdir}/TB-symbolic.svg"
+
+ insinto /usr/share/icons/hicolor/symbolic/apps
+ newins "${icon_symbolic_file}" ${PN}-symbolic.svg
+
+ local icon size
+ for icon in "${icon_srcdir}"/default*.png ; do
+ size=${icon%.png}
+ size=${size##*/default}
+
+ if [[ ${size} -eq 48 ]] ; then
+ newicon "${icon}" ${PN}.png
+ fi
+
+ newicon -s ${size} "${icon}" ${PN}.png
+ done
+
+ # Install menus
+ local wrapper_wayland="${PN}-wayland.sh"
+ local wrapper_x11="${PN}-x11.sh"
+ local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop"
+ local display_protocols="auto X11"
+ local icon="${PN}"
+ local name="Mozilla ${MOZ_PN^}"
+ local use_wayland="false"
+
+ if use wayland ; then
+ display_protocols+=" Wayland"
+ use_wayland="true"
+ fi
+
+ local app_name desktop_filename display_protocol exec_command
+ for display_protocol in ${display_protocols} ; do
+ app_name="${name} on ${display_protocol}"
+ desktop_filename="${PN}-${display_protocol,,}.desktop"
+
+ case ${display_protocol} in
+ Wayland)
+ exec_command="${PN}-wayland --name ${PN}-wayland"
+ newbin "${FILESDIR}/${wrapper_wayland}" ${PN}-wayland
+ ;;
+ X11)
+ if ! use wayland ; then
+ # Exit loop here because there's no choice so
+ # we don't need wrapper/.desktop file for X11.
+ continue
+ fi
+
+ exec_command="${PN}-x11 --name ${PN}-x11"
+ newbin "${FILESDIR}/${wrapper_x11}" ${PN}-x11
+ ;;
+ *)
+ app_name="${name}"
+ desktop_filename="${PN}.desktop"
+ exec_command="${PN}"
+ ;;
+ esac
+
+ cp "${desktop_file}" "${WORKDIR}/${PN}.desktop-template" || die
+
+ sed -i \
+ -e "s:@NAME@:${app_name}:" \
+ -e "s:@EXEC@:${exec_command}:" \
+ -e "s:@ICON@:${icon}:" \
+ "${WORKDIR}/${PN}.desktop-template" \
+ || die
+
+ newmenu "${WORKDIR}/${PN}.desktop-template" "${desktop_filename}"
+
+ rm "${WORKDIR}/${PN}.desktop-template" || die
+ done
+
+ # Install generic wrapper script
+ [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
+ newbin "${FILESDIR}/${PN}.sh" ${PN}
+
+ # Update wrapper
+ local wrapper
+ for wrapper in \
+ "${ED}/usr/bin/${PN}" \
+ "${ED}/usr/bin/${PN}-x11" \
+ "${ED}/usr/bin/${PN}-wayland" \
+ ; do
+ [[ ! -f "${wrapper}" ]] && continue
+
+ sed -i \
+ -e "s:@PREFIX@:${EPREFIX}/usr:" \
+ -e "s:@MOZ_FIVE_HOME@:${MOZILLA_FIVE_HOME}:" \
+ -e "s:@APULSELIB_DIR@:${apulselib}:" \
+ -e "s:@DEFAULT_WAYLAND@:${use_wayland}:" \
+ "${wrapper}" \
+ || die
+ done
+}
+
+pkg_preinst() {
+ xdg_pkg_preinst
+
+ # If the apulse libs are available in MOZILLA_FIVE_HOME then apulse
+ # does not need to be forced into the LD_LIBRARY_PATH
+ if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; 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_pkg_postinst
+
+ if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; 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
+ 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
+}