Gentoo Archives: gentoo-commits

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