summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoonas Niilola <juippis@gentoo.org>2022-02-09 15:33:07 +0200
committerJoonas Niilola <juippis@gentoo.org>2022-02-09 15:35:14 +0200
commit34107bfe0c2d32051d1b555349fb3f47a62359d0 (patch)
tree266eda668dfcf2df14d0518ab504eb5e0d34bd45 /mail-client
parentdev-lang/spidermonkey: add 91.6.0 (diff)
downloadgentoo-34107bfe0c2d32051d1b555349fb3f47a62359d0.tar.gz
gentoo-34107bfe0c2d32051d1b555349fb3f47a62359d0.tar.bz2
gentoo-34107bfe0c2d32051d1b555349fb3f47a62359d0.zip
mail-client/thunderbird: add 91.6.0
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'mail-client')
-rw-r--r--mail-client/thunderbird/Manifest65
-rw-r--r--mail-client/thunderbird/thunderbird-91.6.0.ebuild1136
2 files changed, 1201 insertions, 0 deletions
diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest
index c8aa295e29d3..48270e12cfef 100644
--- a/mail-client/thunderbird/Manifest
+++ b/mail-client/thunderbird/Manifest
@@ -1,4 +1,5 @@
DIST firefox-91esr-patches-04.tar.xz 17460 BLAKE2B 305d8b0bc8a4115a76e459afd8bc7987bdde2e76d4564faf664a92a4c6a95c975ce599c5ddde9bdafc3c37ca5c8758e0ef815364d0ce4dd5fd452ddae73a77eb SHA512 6073b31bb898fe61d72435b11deacb5e93a1744227e4704bb3012e0cb363792f3a965d72e7769c4aae3a25f0c81247b287ce145c81bbd0a87470a5438fede11e
+DIST firefox-91esr-patches-05j.tar.xz 17116 BLAKE2B 5db6d2d3d5432369d2cfcda1a2b542d70ac18c1af7013d91984054c9658d7e3f989527c3a248de53f2e8dc51a852a46477f9ad75e98db28f50f8609fcafe547c SHA512 42080a8e28014d5f8de7ff45e0128ab71747faad7a92f0f7094686125835c168751794bd0229f77290f075502c271af0171ffae2863325d10cc6e8a853a90d3e
DIST thunderbird-91.5.0-af.xpi 560262 BLAKE2B 3f4844b361344f8200b6c40ec1d1509e16fb6ec7bf830e0b83ee14138e7c7bfdda532d584d9cb9839267ee9869425abc352cec9d0ab6869aad20e39e6798cbd6 SHA512 1d583ce659d11d249886c02a66be83b4f3a0ee9350520ed77d1195dad61f5ef4ac5112db44ad2b325446e7016be0429b0c9886ecd019831de50619265b69e58a
DIST thunderbird-91.5.0-ar.xpi 660337 BLAKE2B c81e81ea6f504c2e54d1f77b456dd6514f8378feb59d6df4bf699e0a8e84ac3bfa65a30aa0a7f3cbb9f974967c0e139fae7562b2f0ea55fbfb4e034787412077 SHA512 c9dcb61473e6633215765c2c1b804fb32774dc837d1ee14700fadb85648ded747f25e0cfeee3b08b5cf2091eb9dcfaef46b5975a995744dcca40f6bb4bbf9a8f
DIST thunderbird-91.5.0-ast.xpi 577075 BLAKE2B b10d1f5bb2ea4d234b89dd682050d5c63a84754d009681ce8f7d8cbbaebc574c275b2b1925564b443a9d19d11b50f249677d5a79b8a4d2a5f091fcbb72b7b265 SHA512 049117594201f6f0c7da08bd39f0c130da2ad5a9c0fe17962d39cdf6a169e2b3744328e02b6cbf60627b757aa9d87774fcfe0b817e5a119ebe4f7ad937ed0245
@@ -127,3 +128,67 @@ DIST thunderbird-91.5.1-vi.xpi 720551 BLAKE2B 9e2c0947497588c76f4a45d268495bfd85
DIST thunderbird-91.5.1-zh-CN.xpi 726135 BLAKE2B 3b86bc5b198b7da510162cbb2a4f8c5c76f1b565b94d7be7e592a302459e91fe1f08f8dd5628c29b3b660d736cf35b597c409fd25722f344cadd9fd413db0701 SHA512 9097f8b300e25b91395c44ac8dcb2cf4bfd37ca043da1f6d46d1cceda3bd53f6efb3ecf6f8573960d34deb7180db0e6f392e72fcf72155b098aca8639d8262bf
DIST thunderbird-91.5.1-zh-TW.xpi 727308 BLAKE2B 2534f30bce59b6cd39c7d723ccadfbdfe64cf557d2f75fc58b582be4afbd1931f29ac1fd1c153b849747b6b5e2f4b5e8c80d62f60e6fbc662ddee2feeec9c8ca SHA512 1e317fdd6bc23a6c5dc1c61257016fb9721a7976b7292b9423e61c17c3da3912dcec3dd166d17a1901c7173903d1d6e60ebc7c5b390d320a973177703da8c96c
DIST thunderbird-91.5.1.source.tar.xz 405332676 BLAKE2B 01dd02ba571b9f8aab9f935a4364ea18803ac0b4b5ceba3062ae6e537d86e503df8d295ac739b21fb5a16bc831ab7da407d5d28fc1fcb40c9591bec30c830de0 SHA512 5939e09b143e440efa906d95cda06826bd3a73b2edde5eed86229b8a0e4d1434519059f37d319d26978d7eea9b3906c5e1c1543a2bc2465625d5ab5438855717
+DIST thunderbird-91.6.0-af.xpi 561894 BLAKE2B ee02ec9682b3d932c77b54ee6f7bb8f1da9b513c8a065e9814bc22150218684f209286eda428f86c1a44d67147b65e51206090719a5a8ac57b2301a8cdbdccb3 SHA512 52f1ab3d9b0762753f1bfea9b5f307867dad910bf456035aba925b320aec02a41346a5f37d2c89d4d2dedb274b3fb18a2323b68e92e250fbb4e37b0bf9fc2409
+DIST thunderbird-91.6.0-ar.xpi 665244 BLAKE2B 4fca3326fbf261c0a2bef1b92ce90ec647aa1e22efe42e96a7794ab8554c56aefa5b6bc866093d7cc81195098460e60ae81015a073566144553153244527bf8f SHA512 31e45bc21929d2334431059d8b6f68792bcb4a1bfc8988454ebfcff3df3d4d855ffb54c0907f5e89dd7169a566be72c3acad9ab868668f06fd9b800d1fe2885f
+DIST thunderbird-91.6.0-ast.xpi 580512 BLAKE2B 80ada566c861f2e96a3b713815630f2dc7b8d857a6f5d0f8d4596d1815241bd188cc87a13e78c148fb2405fc5266b4d6faf00b5fefd7e8a0d823e02b6a2500f7 SHA512 878600750c6c0a97a41c7c32c230779238ba06aef71098f17c6b3b218c1c5e23a902c077c25a9c70230d56aeb4febf49c073bd1ff6e7cc134048eae7fd87e37c
+DIST thunderbird-91.6.0-be.xpi 694745 BLAKE2B 883d610bb952511d8a8e5bfdc756a04c8679e5f57d460f0da268ddc562f51dd6f8791bcfbaf992afbb99d46ee51af466a1f27bb81f1e29dc018f7bbd860d31df SHA512 76f7807075fe2dbfc2bc788667a0d6fc24fbe0e160abf8cad191416a45385c3efce5fabbc4aa8e64514d584b13f7a8c080faa1c7641aedfe033f1223e69aadb6
+DIST thunderbird-91.6.0-bg.xpi 690967 BLAKE2B 5331bb11d075017f7f9ead7e8001b1475ae82e6d1a1c9df2355f22b68e0177e4fea70ea39800a81963a659ba885e4e1eff58f6d4e9ee4b1e856e5efcc8710517 SHA512 3614f34a2d162eba1ea477c45122659656c4558231d155ccf93d72f3387c9ec167c284172097c77c8710ab9110884b2ec41e3d4ee1a242937d6200d5fe03690d
+DIST thunderbird-91.6.0-br.xpi 620588 BLAKE2B 907fc304efc0bc6c31defa5c2d19a7fb6d206d00889fe5ede234950b57eb0ef064313b89a17dd413f79689c03ea4b6ef653b748540f05b81cf0d8214dcf7efa8 SHA512 4cde1cfc30f49c369fcef8c2452f16f475e05dfbe5709de3542a1eba27bcae422934a763affc10729cc8059e15e61c067f1a8fa167cfbe00c88bfb42e50ef0b4
+DIST thunderbird-91.6.0-ca.xpi 645023 BLAKE2B a11745cba717a2b350a4b85fd7d00fa342c96445b0d806c4f45084b8a3a27b632287badd2f6a58fad2ead6ea3e9cfa31e95d7fbf92c9bd4300ec832aa166a5e4 SHA512 4c7b6ecffbbdee861a1bd6c942b9db92101f430be9d5a216a64a5c1f69668e5a5c8890bb569f888c909abd7ecea64545a78c6bedf096ece064a2c2c3eef25d95
+DIST thunderbird-91.6.0-cak.xpi 652066 BLAKE2B e38da02d9f938d72857b6e25fa06494918a8eff780cd5e59c4549ccbc944abb8b002210e1c7cac0d291919d397868602efcd9b1680349cca5d5e82a0a772cdfd SHA512 32a24679580fbbad8a4967df7ef57116ff2b46bb6494a668bb94edb60599be0bc30e4781ac1fea888676bf06b5e66cb24802edaf24be056fabace6abc6c4b028
+DIST thunderbird-91.6.0-cs.xpi 706864 BLAKE2B 7799332cddf5a94b74d7f57ec70786a9d54cd385475acace953cddce53cc82014ea0c00a78a96271b1acaed42da961c7b51501aa3e33de12f986a196176fd448 SHA512 2038df1b2842e4852d573230be3f3dd031839267aa527835cc1e311045a3673eb19f392780cf5f3ea6bb1e3895cacabdb2aa5096b6be4ae51d4cc69ddfccfb50
+DIST thunderbird-91.6.0-cy.xpi 683931 BLAKE2B 2826bd0a2ba4afef8c69eb610e1dbda658b975631bf1de257c429c1ed35549414faf6bff803ee218c43f52433fa55988bd3339a6e2a7ac886711682fa464a617 SHA512 c0a1055b76b9492f138248f1807158c20c5ce63257f27dee8e42320f4a4deb2af6fe3a87c0d4e257ed65a56093f783f019daf109b0353042f71899cf21b0eb61
+DIST thunderbird-91.6.0-da.xpi 663958 BLAKE2B e0fc76a64aeaa823351f98dd3af19e4537c7de889d391b6e479a31d1b51ffc9b5fc69f0b008ab38a868e0f9d2d029bb7b69d04e4dde2526ac4ce4c0f1c6e07cf SHA512 f3b2f7760f1fae3472dfda089f4e0dd653c404b90ad09028dcea903619a87e745cc9c087d44fe05a1fea69cc8498cd2f146014a19f1aabb10458014f35784730
+DIST thunderbird-91.6.0-de.xpi 694809 BLAKE2B 3d6896d3abf19d14018ae6a1a97c5ee297ad970d464992134b24b53f69bead846c2d0b5ec4554eb873a9207ba905a2dd78b2ba79abfc7c42949d0ee4d42dfc64 SHA512 9609756e7d15f3395ebd4e95c0092764b0e0bf3b3672ce3ac79bfcdf9ecb5712c5899d9b519be67b71ab38e1a4aa188458ae990f7f3cef6bcd735d51ca73086e
+DIST thunderbird-91.6.0-dsb.xpi 719350 BLAKE2B bbaf6ac13ef7329c1822365d35d087dc03f2768b22705c218bfe3e087582be3c14297bac9530469c635e3e4d013aedafe1d3f57d8d9dee44274b6e66d7aa21c2 SHA512 28e2fb3f46d4a4651a836e839c3e7762439f2ea49c535327133133deb9a8aac63f32d47fa7d2a9487dfe4f2a87555f8be539765b676ec8342ac83ad0792cd113
+DIST thunderbird-91.6.0-el.xpi 814590 BLAKE2B 89bfc7ddbfdaf377ae15814922c423266d7714331013de64239a3648990795d396d18d5c4c05897e1a1cc52e82643356385865bf50b50c0f1cbc69f10e6f8618 SHA512 bf7c47db902a449195427efc408e212e41dd4154c277d24510dac251fe942863bc8a8c85e838173d61d108edbf39d5962dadfdd7b513ebd13767249be325fb59
+DIST thunderbird-91.6.0-en-CA.xpi 640884 BLAKE2B 972baa950eece08c9af4fedb7276fb59a1fe828cce57c613a5aca99effd110e85f6cc84591e3be3e002e1341e8f7c61eb694255feec86b4f4ca0c45674611683 SHA512 b61fb64d18aeddfe54b29b833152ab33f0fecfda36b517f9539e0d05979a018848b21ce8bb6ae6d75ed3ef57ea147abff963502483909b26375d48345831e1fd
+DIST thunderbird-91.6.0-en-GB.xpi 646451 BLAKE2B 93e1748711ab780cfdff53d9be7c1c8fc1aa4a1a8cde8650b8380174f3b88306038846c8c738ee23bbf2aadf3e3ea07f80c8fbb75c2d96e47d35e5e3a5951fd3 SHA512 b39443a05ece20925483be3ddad4c80caac865695bd344042f8309f9401e3560749f637a8b1298e011b19c029e65db1299694b1b921b43d686dd08dcc660cc0f
+DIST thunderbird-91.6.0-es-AR.xpi 696017 BLAKE2B d29f230ec678fca55321ff42a1c14076893c4c75a09dc6b0516e36e68d5de7095f86e964374a0be35624b0a6962527d9c7f839a79660b0ed1c2325490b3a2fba SHA512 216d356d3a6e68baec10135fdace216a88e6903206a6634f8e0d5362c61c995a179fbf5ac34229302338d0571125067a2b1de10003f8098f52b3e7ddf7ebd74d
+DIST thunderbird-91.6.0-es-ES.xpi 592152 BLAKE2B 70d32af5dcfddd90270597ab7ebe7b4fb71b2c2f946a5b6bc9f3a26cba9ddeb1ec1c556c37ffe9d6ce44eacea6f8777cf99cce480149464f64199b6742f1ec72 SHA512 2f6d32f6650cb7f6d37ebc0f6591eb8cf3a6147cad1c945341b7fc098e238c72309f5916ca600e896bb564c8198b37043515ed3daf5418d762cc86838d241138
+DIST thunderbird-91.6.0-et.xpi 649367 BLAKE2B 508ea13f3dc51912c89cce3ad78b139484672b5355157b67d154cfb5e1ec038a1f22490f1981b48b7323a02477f2864c7e17d608731488dd267a95b2c1501c9b SHA512 fee5259f0b7e71e102216ad47d59eaf46e6c4ce098f95d445aba9015f10c3af807e22cd2b6c77764c9d7aa00aed47b1044fc55ba9f66bc87dda72a878dea596d
+DIST thunderbird-91.6.0-eu.xpi 673428 BLAKE2B 86e9b202079bb362a8b8a913ab7dc076034950acabf20dbb452d8e9775337e1db27342f8da926b529f0fc66277c1b6b1ecd4aeb80453bf58e6f13bcc3a23dae0 SHA512 161ab1396486238c3e4c78e9848ebe021395e4d82c74723c63909f45ba2cd51748271b3dcbcf447a4eb20bc6a63df0747ba1ffae2da03fe09e9616622a5c409d
+DIST thunderbird-91.6.0-fi.xpi 674034 BLAKE2B 2e50123aaea9cbc906e03ae8266a9457fd74fcae2866832bbe89e0553f6f879c5052d3d088429a850cf3ec1ffb1c174a4e4befeed1da9f75f9fe4fec8a0e247b SHA512 633dbc9e958d79c0ea1b27e96519e0cdd742e5f6e7506d677210bde4309d8672982aca05138d00e7a48504f87e1c3f65e048d1e644654b18d33816d99bf401db
+DIST thunderbird-91.6.0-fr.xpi 708189 BLAKE2B afc06e320c44af1431cdce7d5d5b5caf601110848a89d4b9d1d3046749c3831a3cd86aa4f967aa2d60a2d1255056f2d5695f159daaa96904d8da5d48dd0be8f9 SHA512 cf776b331612c4d5f1503e95b996ea0143f3c7c85d29a6e7ce265758f2977bd116abb04bd718516ae32a50434a8b5cc61b3f955c74a0629c82f3eccf8edde621
+DIST thunderbird-91.6.0-fy-NL.xpi 689193 BLAKE2B b336593de6b7b1540afcaf51f50d1c9b1dbc5242f059936d4577e90a455fcb36c28a19f27263cc224c60629ef62596fade43aac4f506a155047218188cd2c29b SHA512 0af2fa6eaf896b7d87d666a7c98555cf7096dcb41dc4ce0f3bafdfd0462b0da1803a5c7db4ace9861fb51f207a6e4dec36c71df9f2db590f877d264dadfdebf1
+DIST thunderbird-91.6.0-ga-IE.xpi 613122 BLAKE2B 085548d0890cf0a13d78faa0c6825128e2e81745083023be44c938d0456ba8336fbc07449406b6cdf0c2755ca7f776bc78627394ecdc81c063e19f5095d60207 SHA512 54bd2cc8c5d94d0bc1ff217dbd1d2dfab2fec2ccd08b94ac116d6cb30e7fcc84ad987d6d0a62ef4c810f18d0d8f56f4b8cbc2ac4a824346a40552fddde40a340
+DIST thunderbird-91.6.0-gd.xpi 640647 BLAKE2B 59cd14c1cff58e31af3de1949d59c1084ce447829ffd26095f851f1dd4418e44577af3715045316f9942acfc80fe925eb3cf2738aa052b82b4c2a193a07ed30d SHA512 7922fa3636426425ea28c1bf99238c4745809f65622ae2d66266d945da50c519911aca5e53441f3a4a7687c43ae52c279bf554b8d3f6d63f7e0e932142f21a79
+DIST thunderbird-91.6.0-gl.xpi 677617 BLAKE2B 50da19040513270c2d0cb58025e14bee8ee8bafe2b9ee97c035890cf45428e23fd21dd0acc4cf2843a225ef1c06768b5426c880c2119665e4346dd5ab8f22856 SHA512 21c21542af705d030564497b878bb3e35fb84314ec19ba7b755a854c9425d7cfec933cdba16c55e8556af94bf9391edf661536d58149ec94c1a741e518c085db
+DIST thunderbird-91.6.0-he.xpi 671910 BLAKE2B a17f6866d57b199b997a02da1fdf5b2e8dba06120db23a439d35135a59e6f5df80f48dc2b9fe2fcbe6047a73078d97a43c3b0d7d8a5f0452dd60806301ef4fa6 SHA512 92c8339e964f5263fb6736536c17b5b22f66a35eaf69954ab379b085a2411c73c302a707377b00d685b944d069dda030dfb61330bdef67c712986581a544a748
+DIST thunderbird-91.6.0-hr.xpi 646311 BLAKE2B a9ee17f57b2d209de2556c6457dee40aee455e8a9ac9e0c9b69162e1665e5048434361d82777d0c659209d30d65c30a65f94732a5c55ec4a41c4d760b074ab71 SHA512 79155bcae49bbacd60c29f47a6b69c44f1b0326b292d0241bc8b82ec4029517241c188813bf7b125289c7eb097791c2bffd66615707bce4dbadd0604dc723590
+DIST thunderbird-91.6.0-hsb.xpi 716151 BLAKE2B b01a2a1685abfe901b73c25fdaefbd9c31a7f64c9006c4349b7beb7f51799a09b1219d15e157927a37431a1461a24840b14be3eaccfb0d7c03359bc5d359a37e SHA512 081bec87fdbeab6cabbccb40f9617a81435468ce65998a9e1803e6c916974c0f27a084f501fc585357fb11f8cec6f74350b339308a87440f556e512ef7622f29
+DIST thunderbird-91.6.0-hu.xpi 718773 BLAKE2B ee638b4d4b5c312b4fd25bacd349ca5ad1b1c8d59bd768574e5806f6bf1b0a08957adbdc0a6168e71cb0d40e1d5eac84ebf9b32119af797aa1ddcb0c5987a272 SHA512 2f794f1ac14e6869d81f9ef6f2111ae0253c3a0b5868352725eb8945e27456bba64cfa20888a31a9629c28302f90a7c2dde9fbf93213012858ee216e5153b8dd
+DIST thunderbird-91.6.0-id.xpi 644513 BLAKE2B 7ba09705e2c719914f7d7591e322eca6db07a74399019ba899d489a1d5ebcf03994b767eedb18121a8142b91a808ffe51ad6832dad6df0d208ace36adeb918e8 SHA512 2a569e32183d4bbf6a36b5b24e4e35919148303e27b079401341df13befa5539d3e9c50114df434a1182430ba2d982c75a9c8a24d9cacf73f4e5f08daf0043fb
+DIST thunderbird-91.6.0-is.xpi 678581 BLAKE2B 93ac0bd7a2f59883e20a44bb5b0d391b9415057b332659fc5b24ad1b795fe47612e26cc1b540e6364f956cff6795c4fa96ad5f19c6a6431702f60f77fc9ba980 SHA512 13d576b452381ed56099b2a0bd3456ec79afbb5e07c6d3f115d1ba5fa7378ea21b57bd0cd5c82a2ef6a933dfd963226eae5f6d990503cc3739a43f277eb7d8ad
+DIST thunderbird-91.6.0-it.xpi 609978 BLAKE2B 994e08af3f56144c83e863006f474cf6d7bde44b3d345adb0c991189bf557d47f428047e61fe5f46e380ba533b2da2ddf16dab003d27ec41640ea5a5e3532a82 SHA512 edb3dbf45a688d795b8bb0d8440ee3f41fad00b8181d752d47f8a84b9e4e3d1c883d595ad78f53d52898f38d2c6e76b08c047c0bdbf9e8cce2673cb8faa891d6
+DIST thunderbird-91.6.0-ja.xpi 754200 BLAKE2B f50bb506cc19d87ea4574d77517ba79b07ae1e880524bcede0d9b1a66b3113b524b5496bb6dcf9b8be899e2701acf641ca5d4f8f51942a9ff41ae0929bc3e3ac SHA512 3af8a29dd51e77610af091b980b3ce66a024279109452f3c27c5b1ff136564530276aee40c01c788b0dfb81cc441d7c461959755b177e5dda47a9a5ca2711e8c
+DIST thunderbird-91.6.0-ka.xpi 755749 BLAKE2B 22db22abd776df7540303688ee7d61aec4cea679610ca8af27d0537c0d25cdd817540b00d8de60e14b82a4a4d34e2007a09e6e7b15a0c7380134349865f1e019 SHA512 865281bca85cdf7c750468d7fdf7a0cd20e7f7e01b441e89193a7e96d71a2c86c2e30fedd25c0d3bd6f0cb92e397513b93cf8a8c3138248874186ed618c6ed32
+DIST thunderbird-91.6.0-kab.xpi 677013 BLAKE2B bdd36722341e9228eaf463365e1c596920b0bf16487c11450e1857164adb852f14bbabc58c77e5d33a4095636dc28bdceeb37d517cf899d3e4087e902cd6918d SHA512 dab1302eeb9c21f06d40c735ed0679d45a79d11790bd78714966dbb7b9d22cfe20d34b9ec6bab44b0b5698c4a922394928e9470e39d9f03fa767f37a6609e8ac
+DIST thunderbird-91.6.0-kk.xpi 745027 BLAKE2B 9377b8da4bb48b080e2d7aea219003f5438536b419d164bab46f7874d46cb39e157b8a1e32c8b319d2f0fde5929663cdaab965eab674acdc3ed2e68d61071d79 SHA512 9c9340c3ec23bb62f9eef6708145d695100b77b3727ecb9af8faca0aaeaa7cef3100302abe4ea1e150a93082ced74be1e9ee4cc4b9aa1d39ade10780bd157f28
+DIST thunderbird-91.6.0-ko.xpi 703525 BLAKE2B 5705e113baf0370fcfdbe3a7e790f87cac41baedb16be43286965c10b408d7011b825a6e3c5ed71c036be15b68c4f82785a1443567515d5272f0473c6e583648 SHA512 277eb170fcdb1c88d58601282b6f0f1a18ee6a18b241af5602c49a8c49fb55cc3570538ad030d5c9f4fca421c7d771bec84307484af2346ced1ca045b433d581
+DIST thunderbird-91.6.0-lt.xpi 695678 BLAKE2B 42efb2e95dff87391000d65cf7335cd93bb53e5083d4e9330930b237daa75a46e0b6eeff4abc8af1eab0cd98c752beafab82617d8ed75cb2b1c29c8dd79659fe SHA512 4518c165cfd4d50c03d6bfc9e21e6c7c623aa268e3c6a87eec9bd9cf6f0068dd405dd0ea43cc7302b03e838b51e35232906aa1c14cc3a2d3ef61cdd290e01036
+DIST thunderbird-91.6.0-lv.xpi 618454 BLAKE2B ae86a8231a8f66f74186a961c412945bc00a65af2925e38676d5f36952dbbe131544506797bd904902a9dc5db2263771f74e576a1803a2d28709723c8ab63cca SHA512 86b42067398b0501fb79df6d5a65dfa02917b7c71d7e074d768607df6356bbae7e0f26e708b53e63ae984d62b56c69d193b71299fac67f0e12748ef08eb753e0
+DIST thunderbird-91.6.0-ms.xpi 578079 BLAKE2B 284f1e998ec4aa430a1f68e5bb4b89fcd76cbeb16deaa1a1113b1804d3eff82314f0ab76fae47e874a169fb594175cb68e3a2b1ee20b353cf49f092e83714323 SHA512 43b0134ab66e6fa78341104eb62a5ca432a3731d9d6ffa0aa12820f4c4d51069be780418256d02bc18f6a7e041d1665ccdd4c76b3e48ae359a6f3a919fc92099
+DIST thunderbird-91.6.0-nb-NO.xpi 652519 BLAKE2B 9b03c47cf8dad3f98674cddc827f0ccf3da93c9bcf3b83fafe13812e3e12820f9c129302f6015a6a54dfe369045c5d686aca2c9597513769067cf605fb865cbf SHA512 096a8c74ef6124ad153619a9a402a61ba9989e5fa78ed0507b864ccab3ced2c497545f1046a4c43999def099a60e9fd2a281e9379f8f17aba8649276aa3a13a2
+DIST thunderbird-91.6.0-nl.xpi 682120 BLAKE2B c83852e6021d74332e990cbd298bc48d106db216ec00b5b312e76ba32fdcb26ab9e4fa91a1b6401444b270a14eed3fed9832c7a75485f99afb7165187ea9aa29 SHA512 237f35c8f1ca760e5fe9eafcaed25881007fcee1272345d0e119639c4881f5856b4489565de34a6e8126b8c8ff05b5afd3efebe42644e2994edc282b9e7e1b26
+DIST thunderbird-91.6.0-nn-NO.xpi 656079 BLAKE2B 29f657c4f15dc93641d13d3c9215598d62b82ab29a20dac61dabc038954cc7756d5cf8af0ae3b7bfb7085c36c3712f7c3264e324d71172589b98544c951d70c3 SHA512 84ce89a9036910c3410e5ccdf8e2f829faf6790e06f28d2a9683ff3ccd895acad8048a1844ac6a5b9b3f892763cf8c7bfabf91a3283e371238eac41c0cfc0ea5
+DIST thunderbird-91.6.0-pa-IN.xpi 652274 BLAKE2B 43c25490d9683d6dcd5e5cc3a98cbd56e1d62cbc5dc0a5797e72fc85c54249b3ab6b1416b89c9ea7d51f67cb057193924fbef181eb059171d0b3fac22830ae64 SHA512 74187b956aaf4d23c1b61e87dadb0341e8bf9339631467d0ab9e9f0c9a406f9cc12744f39fe56f18693f8baa17284d5349b66aa02db9c8f1432a25c388efa1c6
+DIST thunderbird-91.6.0-pl.xpi 692826 BLAKE2B fd10ce7904769dc2bb82a7970154207486d6b53f0f812be81a219510368ee8d8e8c169200fc7f5cd2935266ca60cddac8344e9d1f9ea487b98dc92b350d7c5fa SHA512 f9d8f8630afb5ac63d5336441844e5a9cf93068ca2fa28d6fe95f6af9351079d6cf7cccc969a4a0c0df7300736feb3e4e8b799c62efb003b8f66d859890f48d7
+DIST thunderbird-91.6.0-pt-BR.xpi 689677 BLAKE2B b6401fa4faf9f6a3beed0e92592b0293d425fb2a6aad1f634af41ba57d3426189c0e295ba08f180827b5a9b4e1b5d5fa71dd68b6b3caa7ed9980b4bcceb07942 SHA512 a9af78f8dc2b453e477c1d6f4a254bf594c096379f7c64cb7fd05bb07d4efee7d5753351f00bd22525f18a2297254afea7f9bdcaeb2b37d6feb5ed07bfe1f2cf
+DIST thunderbird-91.6.0-pt-PT.xpi 673205 BLAKE2B 707b568a99eddcff877b41e4c771747cf5d9feddd870477bcbe7af6def762420c993e5e9f2f3fa659b9e98d3004c2ab7030d6e4fea5dabccdc9030a9e950d319 SHA512 f48c7ee8c67d9bee6b9d7587fe6b405fd3891e0d5b26077d740016f30c78ce26b7ffd4044a3b61fd86c2f5c8c5315085ce0279c4a7ef65acd02bf0535fdf6f8d
+DIST thunderbird-91.6.0-rm.xpi 684947 BLAKE2B dfb8f9d8c512f6da5cf15b70d2c6b3ea6936ce80167ff7d7d3c21ebb7c2240f68b75464cab4e04db8f4fed1e2979e1e17b94fd1589c35e53311fbb628b38ec3e SHA512 990a0d2ab175b7b2d63bf2cdc721328f787214c34318da7e7ca97fb73dcf9db7b11bd0341ecf21c1300daf85052267a69f9754c746b24fd0b117dd9aaef7d7db
+DIST thunderbird-91.6.0-ro.xpi 661277 BLAKE2B 31696dbbd79178b0c18fd398f5f96bdb5b1aff039401662708a088cc6261229bb75b100e9a2d42f6fc0e3c7983f4454bfebe023a4ec3368c516ec1c745983e4d SHA512 d3976c2f3d3228228d36be553a2b745374b8c07a9fe6c2eee79b5bb3eccacfe05ac5cf2916fdf5f3fb135b350a043a052bb9795c8e3b7a2938a550b4666660f1
+DIST thunderbird-91.6.0-ru.xpi 791768 BLAKE2B 9f33b64a5f349e1c51e2ed7497638211dbcd16759f42bacd40ff27d6cf1db9d865cbcd4e43134979c46e462d1114b3bfa95aee5cf2161b31bf93fd3404938d25 SHA512 3a3c31dc4231da6d65328d7bcca96c81a017d5d255acad7bc7a441c58b404b35d76ac7766a1611348e07f932437560286be6cd81e88390c36648f8d0e59d51c1
+DIST thunderbird-91.6.0-sk.xpi 718685 BLAKE2B 838451e60bd9ce2f8a4ffc760bb61fc5f868b9e340cc633e88cf4d512bfcaefcfdca95313efae69807ca025a48f9e3c17b6c94d7c1334e43ebea515e7f80d225 SHA512 04563fc864a2c8f97971b660bde95918379b4247fa62e82a19fca48dfcc52b864d77681b4468ec73f84c836350343ba4a743215220003d5327fb68f94ff0ea4a
+DIST thunderbird-91.6.0-sl.xpi 677318 BLAKE2B ff413a770bf4f90f94449a9a6faf890d7a91a23f003574060ea1bb15a2581bb48da1533b0772830c554e25e5329b04a74d5f2d2fdbf898812da4ef74e6dcbb06 SHA512 0f2f9bb12428f00aea84a45e3e45c56ae322f7fa75dc41068324b81addd8ab74d7678df12e34e680f6fd96b8ee8090f0542f72e6baaa8d7a0e9769eb0cc0f9d7
+DIST thunderbird-91.6.0-sq.xpi 700483 BLAKE2B 7f84979981084a91dac4bc238d3d38f3a9f20f5ea455989b5db79b5cb7870f76c5b016cbcf264d86bc9c691800b51858c9ce4755ee82ba1cc70175f5f34b2a21 SHA512 7495dc3f675c6da0ac8fc2ab80923b0711ba5ba6a4c122c860b545cadb2fa571b260c10b6f08f95eb2ae2e2288058dd3d0ccfd824f1420842e3aed26fdcaebad
+DIST thunderbird-91.6.0-sr.xpi 708979 BLAKE2B ac43621d88751bad8a82d0ba21fc2513346cf9fa741b7be55e736d9affca43e6281de0a74d99c67e06bed91881e2cd445500539f02877907656203bfceb66c8d SHA512 9175f2ae76641492922a7cea9cdf9f93f3ebf5d9cc3cf9d37df4d710ac1a99b1cc88bd181d28b799e3365b01868a2056c174d359e238aa289073f0cf98f0d2c5
+DIST thunderbird-91.6.0-sv-SE.xpi 686485 BLAKE2B 208d9350160f59804a83f73b3d5fc685e9b8644ccfa38374611bfd8c57c1efb258668d5df9b18e941687e619e841433ba9f553b428f954307a9cc1cb96942927 SHA512 be6f3d926606145c2d100870f07270abe87497a24a2f523ec608f2ff2634ae065da8c112ee0b12b7d14de40e585d34e322e9cc14eb5f5b8213cec9e1fa756036
+DIST thunderbird-91.6.0-th.xpi 746639 BLAKE2B 6423856da4a0094d7bbd989493df9368533bd7c85c360a6323d14cf0f8469a1c1feb3d073a714b0ef13e51064e40312f646dd5d120f700363a70a21d3941f433 SHA512 380954d15f2d2219869e6fb38672bbcb6c68becf9c11063fb7d4af04aaff772140239c9d3ec37910cc98f692230b851e30b972dc5008ab035848a7bcb276ff4a
+DIST thunderbird-91.6.0-tr.xpi 695168 BLAKE2B f27ed3c499eed00ad06a6b370de9f9931d1e1acf8bc2c24ab6d194e3751d15fdae8da85d81c9d8ca774546265bfe2f512d6b5206a653cb6bf48a9936e3351441 SHA512 6d2dd5eb3386934493e6b7692ec469ea860a63e9f64729226a5e40261bde0f2843ce2a5250f9b508abeef4af6ba22da2897e6b1a668944984cd8734cd7c26da8
+DIST thunderbird-91.6.0-uk.xpi 793450 BLAKE2B 6388c0d9060dad8a5caa7a2a868e12e5f0314e62c87bcae9c16ecbb69bfadad7c31bae0333278283063b430d82c922bd5e05e0bc6cb2842072a46ca6ec6ec7f9 SHA512 515250a6f2f1c7d7aaa445ec3ee1f50971de2903ff2226a8a27ef53172ce8c849715895f55836f87a74bf08cbc97573b1cb566d8fde0e79682add34446ed2ad4
+DIST thunderbird-91.6.0-uz.xpi 591030 BLAKE2B c8908389b05e851dcfe888fe900618c884f4ba7aaba53aedeb04c6676e78ee3abf873b8706448550dc7f5d9c27f00d16dfb025a44401c073274fdc2010df74a9 SHA512 07056e5f7ae47b19b7469b2242c8c79c4a53b630e3574f62c9baef16527222e09ffe32296f97745f841e7ce331af90fde2358ab4fa2724a6d7708f2a3dfadcb6
+DIST thunderbird-91.6.0-vi.xpi 720553 BLAKE2B f8df213d321aca19aea857aa9921000a629afeab183613ef2eb4fc1e5e3cf5b795f1cfccc286cc61f9cd9aa86ca8e9536bceab52f1b59ca7ea479dc7a2b2c453 SHA512 66d26bacf3343d08c0f60225961151ee63903d8a8142137fb313b764b0ba1255ad1b3a9dfc84519c8e1e32b99aeedaf822bd2edee9db99b268c04812be67d51f
+DIST thunderbird-91.6.0-zh-CN.xpi 726136 BLAKE2B 46b8efa0fe29807716ebe86dc5d16075c7e7c2611a02b854df3dc75a35406cb8963f2792cba12e280de4a3bbbb19f6a72eb295bd519fc3cb57576f5a5e5b8d05 SHA512 ce147a27f6536c0daf0c7118e321299a3c5afcfc051742996c4e234d0ed37b032ce28b2fe0fb7a34ce51d01a492c6c7ea9be6ef93361984263caa63a36b70733
+DIST thunderbird-91.6.0-zh-TW.xpi 727310 BLAKE2B f92e4a4456c0b8dc32271b2cc14cf018ae1b25d2c3954b08a8bb93b7f36927a3f39e550b21d743a5fe352d9df97f2826c292745fbc49247c2a218f7c0e431371 SHA512 21468bd2023afde037d0624b67b04f0ebf553d6ef4c05d680bd757c6176575b25e8d22fa1de44c4dc62b786f9774a08aef9603f518cd0624a14b636184f09057
+DIST thunderbird-91.6.0.source.tar.xz 404738672 BLAKE2B fe5b2cdde426e3a7ea35fa2fd6afb5647a63d0251f29dc5f7ceeb87db945595e1ca2c5e8adb01c8666de7269cab6f7e6607cb1e326469dc5d46a0b36a8041950 SHA512 a11eafe1390141ee3508eea06ba8ab135d0725513977a3b37b3b35f413a1f825dc14fef530b9ac961840804be59291c7f5cba3c93b12726605d4a7255660f749
diff --git a/mail-client/thunderbird/thunderbird-91.6.0.ebuild b/mail-client/thunderbird/thunderbird-91.6.0.ebuild
new file mode 100644
index 000000000000..cdfb04a96132
--- /dev/null
+++ b/mail-client/thunderbird/thunderbird-91.6.0.ebuild
@@ -0,0 +1,1136 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+FIREFOX_PATCHSET="firefox-91esr-patches-05j.tar.xz"
+
+LLVM_MAX_SLOT=13
+
+PYTHON_COMPAT=( python3_{8..10} )
+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 optfeature 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/~{juippis,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.thunderbird.net/"
+
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+SLOT="0"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+
+IUSE="+clang cpu_flags_arm_neon dbus debug eme-free hardened hwaccel"
+IUSE+=" jack lto +openh264 pgo pulseaudio sndio selinux"
+IUSE+=" +system-av1 +system-harfbuzz +system-icu +system-jpeg +system-libevent +system-libvpx system-png +system-webp"
+IUSE+=" wayland wifi"
+
+REQUIRED_USE="debug? ( !system-av1 )
+ pgo? ( lto )
+ wifi? ( dbus )"
+
+BDEPEND="${PYTHON_DEPS}
+ app-arch/unzip
+ app-arch/zip
+ >=dev-util/cbindgen-0.19.0
+ >=net-libs/nodejs-10.23.1
+ virtual/pkgconfig
+ >=virtual/rust-1.51.0
+ || (
+ (
+ sys-devel/clang:13
+ sys-devel/llvm:13
+ clang? (
+ =sys-devel/lld-13*
+ pgo? ( =sys-libs/compiler-rt-sanitizers-13*[profile] )
+ )
+ )
+ (
+ 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] )
+ )
+ )
+ )
+ amd64? ( >=dev-lang/nasm-2.13 )
+ x86? ( >=dev-lang/nasm-2.13 )"
+
+COMMON_DEPEND="
+ >=dev-libs/nss-3.68
+ >=dev-libs/nspr-4.32
+ dev-libs/atk
+ dev-libs/expat
+ >=x11-libs/cairo-1.10[X]
+ >=x11-libs/gtk+-3.4.0:3[X]
+ x11-libs/gdk-pixbuf
+ >=x11-libs/pango-1.22.0
+ >=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/libxcb
+ 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.8.1:=
+ >=media-libs/libaom-1.0.0:=
+ )
+ system-harfbuzz? (
+ >=media-libs/harfbuzz-2.8.1:0=
+ >=media-gfx/graphite2-1.3.13
+ )
+ system-icu? ( >=dev-libs/icu-69.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-png? ( >=media-libs/libpng-1.6.35:0=[apng] )
+ 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 )
+ sndio? ( media-sound/sndio )"
+
+RDEPEND="${COMMON_DEPEND}
+ 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="${COMMON_DEPEND}
+ x11-libs/libICE
+ x11-libs/libSM
+ 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
+ einfo "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
+ einfo "=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
+ einfo "=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
+ fi fr fy-NL ga-IE gd gl he hr hsb hu
+ id is it ja ka kab kk ko lt lv ms nb-NO nl nn-NO
+ pa-IN pl pt-BR pt-PT rm ro ru
+ sk sl sq sr sv-SE th tr uk 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
+
+ if ! use clang && [[ $(gcc-major-version) -eq 11 ]] \
+ && ! has_version -b ">sys-devel/gcc-11.1.0:11" ; then
+ # bug 792705
+ eerror "Using GCC 11 to compile firefox is currently known to be broken (see bug #792705)."
+ die "Set USE=clang or select <gcc-11 to build ${CATEGORY}/${P}."
+ 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 use pgo ; then
+ # Allow access to GPU during PGO run
+ local ati_cards mesa_cards nvidia_cards render_cards
+ shopt -s nullglob
+
+ ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g')
+ if [[ -n "${ati_cards}" ]] ; then
+ addpredict "${ati_cards}"
+ fi
+
+ mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
+ if [[ -n "${mesa_cards}" ]] ; then
+ addpredict "${mesa_cards}"
+ fi
+
+ nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g')
+ if [[ -n "${nvidia_cards}" ]] ; then
+ addpredict "${nvidia_cards}"
+ fi
+
+ render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g')
+ if [[ -n "${render_cards}" ]] ; then
+ addpredict "${render_cards}"
+ fi
+
+ shopt -u nullglob
+ fi
+
+ 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 cargo respect MAKEOPTS
+ export CARGO_BUILD_JOBS="$(makeopts_jobs)"
+
+ # 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 state path
+ export MOZBUILD_STATE_PATH="${BUILD_DIR}"
+
+ # Set MOZCONFIG
+ export MOZCONFIG="${S}/.mozconfig"
+
+ # Initialize MOZCONFIG
+ mozconfig_add_options_ac '' --enable-application=comm/mail
+
+ # 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-js-shell \
+ --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-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-png
+ 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 sndio
+
+ 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
+ # ld.gold is known to fail:
+ # /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
+
+ # ThinLTO is currently broken, see bmo#1644409
+ mozconfig_add_options_ac '+lto' --enable-lto=full
+ mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
+ 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
+ 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
+
+ # Portage sets XARGS environment variable to "xargs -r" by default which
+ # breaks build system's check_prog() function which doesn't support arguments
+ mozconfig_add_options_ac '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 menu
+ local app_name="Mozilla ${MOZ_PN^}"
+ local desktop_file="${FILESDIR}/icon/${PN}-r2.desktop"
+ local desktop_filename="${PN}.desktop"
+ local exec_command="${PN}"
+ local icon="${PN}"
+ local use_wayland="false"
+
+ if use wayland ; then
+ use_wayland="true"
+ fi
+
+ 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
+
+ # Install wrapper script
+ [[ -f "${ED}/usr/bin/${PN}" ]] && rm "${ED}/usr/bin/${PN}"
+ newbin "${FILESDIR}/${PN}-r1.sh" ${PN}
+
+ # Update wrapper
+ 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}:" \
+ "${ED}/usr/bin/${PN}" \
+ || die
+}
+
+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
+ local show_shortcut_information
+
+ if [[ -z "${REPLACING_VERSIONS}" ]] ; then
+ # New install; Tell user that DoH is disabled by default
+ show_doh_information=yes
+ show_shortcut_information=no
+ else
+ local replacing_version
+ for replacing_version in ${REPLACING_VERSIONS} ; do
+ if ver_test "${replacing_version}" -lt 91.0 ; then
+ # Tell user that we no longer install a shortcut
+ # per supported display protocol
+ show_shortcut_information=yes
+ fi
+ done
+ fi
+
+ if [[ -n "${show_doh_information}" ]] ; then
+ elog
+ elog "Note regarding Trusted Recursive Resolver aka DNS-over-HTTPS (DoH):"
+ elog "Due to privacy concerns (encrypting DNS might be a good thing, sending all"
+ elog "DNS traffic to Cloudflare by default is not a good idea and applications"
+ elog "should respect OS configured settings), \"network.trr.mode\" was set to 5"
+ elog "(\"Off by choice\") by default."
+ elog "You can enable DNS-over-HTTPS in ${PN^}'s preferences."
+ fi
+
+ if [[ -n "${show_shortcut_information}" ]] ; then
+ elog
+ elog "Since ${PN}-91.0 we no longer install multiple shortcuts for"
+ elog "each supported display protocol. Instead we will only install"
+ elog "one generic Mozilla ${PN^} shortcut."
+ elog "If you still want to be able to select between running Mozilla ${PN^}"
+ elog "on X11 or Wayland, you have to re-create these shortcuts on your own."
+ fi
+
+ optfeature_header "Optional runtime features:"
+ optfeature "encrypted chat support" net-libs/libotr
+}