From fc68863e718441fe15bb0dea2ca03ea06a6f558d Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 25 Mar 2024 19:01:08 +0000 Subject: gentoo auto-resync : 25:03:2024 - 19:01:08 --- app-office/libreoffice/Manifest | 21 +- .../files/libreoffice-24.2-unused-qt6network.patch | 57 ++ .../files/libreoffice-7.6-unused-qt5network.patch | 58 ++ .../files/libreoffice-7.6.6.1-detect-plasma6.patch | 153 ----- app-office/libreoffice/libreoffice-24.2.2.1.ebuild | 693 -------------------- app-office/libreoffice/libreoffice-24.2.2.2.ebuild | 697 +++++++++++++++++++++ .../libreoffice/libreoffice-24.2.9999.ebuild | 4 + app-office/libreoffice/libreoffice-7.6.6.1.ebuild | 668 -------------------- app-office/libreoffice/libreoffice-7.6.6.3.ebuild | 668 ++++++++++++++++++++ app-office/libreoffice/libreoffice-7.6.9999.ebuild | 3 + app-office/libreoffice/libreoffice-9999.ebuild | 4 + 11 files changed, 1502 insertions(+), 1524 deletions(-) create mode 100644 app-office/libreoffice/files/libreoffice-24.2-unused-qt6network.patch create mode 100644 app-office/libreoffice/files/libreoffice-7.6-unused-qt5network.patch delete mode 100644 app-office/libreoffice/files/libreoffice-7.6.6.1-detect-plasma6.patch delete mode 100644 app-office/libreoffice/libreoffice-24.2.2.1.ebuild create mode 100644 app-office/libreoffice/libreoffice-24.2.2.2.ebuild delete mode 100644 app-office/libreoffice/libreoffice-7.6.6.1.ebuild create mode 100644 app-office/libreoffice/libreoffice-7.6.6.3.ebuild (limited to 'app-office/libreoffice') diff --git a/app-office/libreoffice/Manifest b/app-office/libreoffice/Manifest index 3ade561b026d..324ea53f8472 100644 --- a/app-office/libreoffice/Manifest +++ b/app-office/libreoffice/Manifest @@ -1,11 +1,12 @@ AUX libreoffice-24.2-qtdetect.patch 989 BLAKE2B 01e1c1493293363206cd43ded09b69becd02b0b93c2fcb5fd4387a54424b9fa552ebfa128290a1b0551e6b6fe5de8f57025a2ebf5c75da2ea01bd66f5910f9d6 SHA512 dc00b2afe98f7bf30637c4102e336d6781f76cd7eb6c339c0b369ec2aa50544bc266fd42540fea037c1fcd07ae7e6d1b6503be620db9127084ffe6528f8db4b1 +AUX libreoffice-24.2-unused-qt6network.patch 3348 BLAKE2B 9ec1c83e9405128fcf493e6382e822cb577548e68ec46d0971825dec08cefe7ab18fdaf5d028ce747aaec5cdb57f3d2267b96cff997d90990435cda3ae98d47f SHA512 2eb04c76377526c67e28d20bfcdc682a52c7afa754a2e5a0f6df146917050dd9565bd4ae767347db58bb95afa5436baceea33b3e9b1e6c5b96517eb4cf22e1cb AUX libreoffice-5.3.4.2-kioclient5.patch 605 BLAKE2B 30961066c080c4d06ca978b7c0ad4b57a3739d6d34a2941f2ea57d3a5c4ab65e3f3c2376243aa88c9c05b1038cf9bfb7605a370d11513bb4553de2d268010519 SHA512 2aa6d1fc96749b79b3291f6e27630c6cf59d2c743f0dd8603867ba8aec2c17f87b70e1dd031365013f7e9ea53c160e9cb3f48af592a587dc05f3ae4cc1b35df6 AUX libreoffice-6.1-nomancompress.patch 967 BLAKE2B e60afbfd7007a5fab7291ffba34369137336327f4d1ee27789c5f6229b9a82f4aeab0eaeaf494e60b992c66fcdb276b6423b87713febb14e9eeaffa388369ca8 SHA512 f82e23f15cefd947af20a50e1e4168c9023d5f8b9e19da7f76b141a60be4fa3516ad16400ce26e4d0ff293c570031ac87bbbf6766444e1b31e7bc3ee8ef58083 AUX libreoffice-7.2.0.4-qt5detect.patch 536 BLAKE2B fd77876d1ca3973ad30c9ebb60bf28e163dd29dcaebaa2b94d84f4c2ab060617d96f4df3d5114f17f882b0cb8b9e2ecdb284fdd1e4aaf8a34cc0c1f06a295c04 SHA512 e1ac7dfc4743cbdea3050b18c1714d06c8bcca4abc51d56e13362c8379fbdd3d37a1916c962fcb1389783c9b1fd72783c9ee45fbb649538ca0fc0cb7b05bcacf AUX libreoffice-7.5.8.2-icu-74-compatibility.patch 5299 BLAKE2B b1c12af133c48ef3e586c41f2fa1cd4b7b6c4d7e93d783ada5c3670a30eb7e2bf3039df242d2f186270810b479621b38f4e91cde6428ee6453170eaffe326a56 SHA512 d64618c007d35ea873d25c7e40058fdc50de29ce1fe2c573aa8b9d628094d681af8ef31e4cd992b0baa996b097dec9c0a28e4d5881ac17b7916ec3bf330f4128 AUX libreoffice-7.5.9.2-libxml2-2.12.patch 12445 BLAKE2B 3675c092e6a6d5f357a623fd0381faf53d20f66a555895450f0b437b0ca709a9bb2453a351abcf2e5caaad17dcaa8a9bebf2ede559ad6311c5f382088f44e460 SHA512 ffe0c6a3c696bf7549dcd4b6907d35b271361a53aa730502569b5073ecef15747f40886a554da0b369f549ab2fccb897dba7c1c04332f9271ba98d9ac11dc6ea +AUX libreoffice-7.6-unused-qt5network.patch 3218 BLAKE2B 1445716fcfb556d7ef997bf1f5bf8dbb75032e9556d878fd999c6d260b2bff9e445cfec5f2a7537fe5118f31a1574cc21badb62b4a70b2452f694f03e75d2fd7 SHA512 e9861f2acfda59d09fc2f5431e4697a9bbd0927c5a765e35e7418b60ed0aeeafcaac3873fd0222b57facf71f4375a095a75e57574cd36e02f8ade0f264993647 AUX libreoffice-7.6.5.2-gcc14.patch 1134 BLAKE2B a58f62b255455a827625eeecb43816aae1e66b98c9d93b926f2b000be72787e68a5f7c2e3a9a5301b7c82978275dfe53ec9474fc0bdd6d10801cf473009a0573 SHA512 2f4d00cec8ddf2362b787420f5f6e71f060fd4800291b907918255615cfa0996d7cc199898e69665ec0d6041776025043c796402a02be1192b087632cad9bea3 -AUX libreoffice-7.6.6.1-detect-plasma6.patch 6630 BLAKE2B e2dc41883398b5b1876932215b88d2ec4463865daa38b3f627c0a568c3bc00d384dd1d117549e64a4fad46549f20cba2afcb7ae4727b0ce462c78f2bdeca5b98 SHA512 208a080b9e6f7a5d3f1900f522328e6b1bca4dac4304ec57ba5e36e6ca2141857a9b2ad85052bceb9fde00185a57fefbfa16639fbc46c53a066d874bc1d73e5a AUX libreoffice.confd 228 BLAKE2B 7b9ed0d08b91b6e78dd3a2ac242cac48ef141c25bf25713b5fa6c4fdea3d5b0e16b4073a864fbec328edf4008729869fba5236e9cc113ba9bd3d6de5c10153c3 SHA512 6718cfd481b4349d70b718d4811f80ac0eff60d465b9f9eeff8ab9641de1fecb6197023f98bb1fca77a57b48ae2d8e38803f3af3a51191b1df71aa8cc5d33661 AUX libreoffice.initd 507 BLAKE2B d49fd0f48254160fff3eb90a75294c6cf044805352a982ab3d2127426a18a6171e5043c071b59581a1f927a7c499c8abb58820081c6ba6e285097c883917f0e3 SHA512 fee4720898510b1aa07a9ed597d041d1e1edfb8f8b8e9596ef4254d4d3c1e8a959bbd65202a377289910ed28283f9c8a4bdc893d2d0835f37ee28cd3c7cb010d DIST 17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip 3519470 BLAKE2B ccfdf6b7f88f22d3ec7898c529c374f13059979450aabdccc9781ca91dd27d0119dfec3d33dda073c2973fa4a8aacae13924c9a67e38a1422c48bfee41b6f3e8 SHA512 a231eba4a1baca11766ef292ab45e302081115477fe23018652882923308856835cf8c9ecba61a5cf22543474ccef3136965d794a90c9e4e9e6dcc21f9af6e1a @@ -29,23 +30,23 @@ DIST dtoa-20180411.tgz 48893 BLAKE2B 4a03dc67e44353ae1c0653c8305d2df9bcfef16b48d DIST eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip 427800 BLAKE2B d3ac085a39ee9798182b70ba650fa954234b964e33278ac4fe3f84f8c3218ad49f12d139079328036b4f9d80cde967888c0a66393c34dedf27af69dac02c5aff SHA512 9091d3628d9c75c068507537afc9e10bfb79c1abfd36ad697af3d592a1cc049ba6640f665bfc53cc520b6a26c21d70b0275106843444b441484c2178f2784743 DIST f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip 211919 BLAKE2B 2c72493e44d3ad1714d294fb7baaa85d33fef2eb4ce75bf507b65f78f1d9d399bb5eb72cee188a8abc4b234eb2845a26755791fb3ac104ffe6e55013ab41ca8b SHA512 c1a15ebbfe817ec79d4b3f1c97d096bf8511737d7d35d97302856ccfb3de14a1cd16bd31000415d9ab24bbd9ef770d37855cee4b819ff0e8fca2f2766920a114 DIST frozen-1.1.1.tar.gz 186589 BLAKE2B 5f103311c49777d0d284cabe026fae55f09bd24b2227d56133c48b9f9f0542361f3e007687089145939c12fc6a1af8baf1c76ba76176bdddec3d726e45d705d1 SHA512 e22561a4e634e388e11f95b3005bc711e543013d314f6aaeda34befb2c673aea2d71a717d8822bc8fa85bdc8409945ba2ad91a1bac4f8cb5303080de01a5f60e -DIST libreoffice-24.2.2.1.tar.xz 280628072 BLAKE2B f9b22b25bdd58278de020fa67ec6ab3d7a3986c75d7931ea82b69dc5d330876be1aaf4cd3ef7cde6e9eb2554ee7d156c04bb8729e13a5e622e8e68b4e28cba08 SHA512 62840468733eabb4a4b9784802e1710e2a697ebe6fa3d6246bcc9d08b97a8af189b259fe8af6f2add4d1cf706df40431fc26d92be318dd9b547f05de992368d5 +DIST libreoffice-24.2.2.2.tar.xz 280611816 BLAKE2B db0f141f93ae5d43b0c4ae363560770a98930ebe2fbbe8ab44909bc57d9d88bcb0d4476e374e1af1e4d6e38b4167d6d50a28719fecee69f61483f34522be57d2 SHA512 a05b8ea123b687dc27b9e9919814581efc155a075d797d1ddf2e2565dd029f82e09efe52b0c4082dde6156704023b6262c91ef356e6f4794250dfd133759cb29 DIST libreoffice-7.6.4.1.tar.xz 281547116 BLAKE2B 55712cf41e38373476dbc3d6a6f244dc0ba9222caf587c5d8a56c5f952e064e815d752a786d6770891775dc2a43739ae05fb94935006c005b41b3aeca229a866 SHA512 dbfc0cc8aa68e26c89da12156046ccf18201759c0e67757ce259a1150934ad7e2d914837701731fbe00aeab9a2f8c996619eb0892b7907de8012fdd7421da0f6 DIST libreoffice-7.6.5.2.tar.xz 281916516 BLAKE2B b0e21dbc9a1c76027065862ca7ea24eba21ffe5dc1862ff50941644f291122396fbf94141cdbed84c54b0251f3c4452db1e4714ec30c35e416a6450a6caf7f2f SHA512 b6289b1c9b7d363a04f8f63b16994a1820468cb4b270a639279046965b8b773cd9aec40eca57528b17990679a6e8a29a17c5e643b50fe5a5c971928904472602 -DIST libreoffice-7.6.6.1.tar.xz 282150652 BLAKE2B 5327e945aeb05d793c647a21fe96cabdb5116617ba4c18423a57fe4ea8f62bab681b6da77f52e16493f6b4ab3e2555f5205f7bf2102320503c07821c9ac7c913 SHA512 26e51eb3d9124be4cf88eeb838f83d3341826b96382bc70b8e4737399410da5da770493f08c33ca3667b6bffb69097ceea79170e3785f9fdf0b27db21d134690 +DIST libreoffice-7.6.6.3.tar.xz 282144120 BLAKE2B 8d6f39046c9793c8dc5e2667e684c32f61b475b83787c75eeacf441a636c7244b032ae2cd7dac75c3077de63c68382e63bb834f69986ef788d78542df087b19b SHA512 822584e1a191aac08f3141ba2dc2b91b0cbd50635a8506e9f3d00e224c997e1ec83957dd8a7dbede28a0ba28e1a8658d7e0b526bf796db286210393a326e6ca3 DIST libreoffice-branding-gentoo-0.8.tar.xz 151568 BLAKE2B f03c7ddeb53c5ca3fd23401679601fcf2c4037ba17be4eb7b784c7ce7ebb71a24b8ab4aac8b7da8c6b1f14dd23bc1294ba85ff4f70ad271fb4ee3c5372e10883 SHA512 785031a699b1d1895ce4b50ffc3ddf645f3a0ef9acdf37facfd18cf75db9484cb8f53a50abb63d6006ead76a80b6ff5aa99661063245ebb84bd64013d713de7f -DIST libreoffice-help-24.2.2.1.tar.xz 167069480 BLAKE2B ca1c551a38b2c4250e2c39216e476fab67d72df4adcf5f3ced2e83b0b2ec6f3ae0596a9c7eeb8bfca27e360bfb2b2d32c90e6c1216f0204bc971fe9ba2277446 SHA512 51daafb453d5bfb296a4985a51cb69c1bc0e8559546061440713c3cb6a8021ff54989c02f9d34bd00734e4d4b32d9533d9cffb80f4bcd3fffbed1b6c48a19cb3 +DIST libreoffice-help-24.2.2.2.tar.xz 167069856 BLAKE2B 1d3524ea1db78420b0f5df54d58517bd7f1419dd125086bc1e36851250062f3ed5dd14793f1bee0017220c007b5e624b5e0baf8aa6c83ff0a18381c5ed6d547e SHA512 c05f87a24b511ad34ce7c8bb02e90034848a6297033e3d1f2ea14f2d8686ba5e01547031960f214c215e41e9aa105dd6c52ace29e4807dcca92fd4297230598c DIST libreoffice-help-7.6.4.1.tar.xz 166959028 BLAKE2B fadcd32c50af1d4607ecd20ef7640cfbd1912361a792c324540dee1b5ee78c5f622b8363a5b96a1afb8256618573a0bb6f919a144de98fe88a1331d9241612f0 SHA512 0f72cd933ab7b897ec36f7b29bc5e568be289ea50ae0844e6083ff4957eab3cd313b39ffbda2e58f59de7962a05b371d8d61043d80323bb474e5436d23d3a859 DIST libreoffice-help-7.6.5.2.tar.xz 166958152 BLAKE2B 440a268b8a5ea13abc553a0154f56c39eaec88024e268b1a40f016fb53f368df7610b0e53cbf3a6b9ca87ca7c753d086ad1944b48bab11d1861862c1b345e61c SHA512 f7b2a068f0bfcb35f3ad521c3c41ce26dd0f1abcc2c002e654ea951131b60451b81af964bf8c870615d14c8330bcd1c6d0b941caba390aa86ec6fb53dfe200c3 -DIST libreoffice-help-7.6.6.1.tar.xz 166956308 BLAKE2B 26ec36b28f7e6725817c88668d9156fa3acd7e247a6fe21affad6fc08c6b0e71c952d07576a37bfb548030d40bb45cb6079acf7f5da669c85e96f33564afc595 SHA512 aa427fc1e053138bd5a54da99846dee5b454bd328253226e2925b36f3869881e1e3ae8ca501157bb4d8c325071df1caa587654142f22c616f6939979347e3271 +DIST libreoffice-help-7.6.6.3.tar.xz 166956596 BLAKE2B 217b32cf9d1882b2a60e436bb6319be5c60807bd7bb8ce373a6a2ecbd8d6f2537bd2a13d58ea14f47532a5a780df1815457adc473e2b0107e5e510db144d90a4 SHA512 07ed22d2161770a39e618075aadc5b42f8f5c436938a0aa29351628e61572e6e1d03642d45541dcfebf57dfdd1e558b23a8d596025fb45a1771652ad2860583f DIST skia-m111-a31e897fb3dcbc96b2b40999751611d029bf5404.tar.xz 10693272 BLAKE2B 67f2bd33d58c58c59f1ee5fb693a6a7e6a1ace52f269ae0fa6617027e93131031b0af9d44c36e371fe5a38c5b7519a61f9bcf4286a13ef5b06ea7e7eb5cb0a0f SHA512 58d50fdd19cc5df640244e0c765aec6addc3e552701b201772584e8bea7cda12047e4a6af41452c6669aadfc026de29a4a4e7c6b31c7dfff30e29e50ed46fe3d DIST skia-m116-2ddcf183eb260f63698aa74d1bb380f247ad7ccd.tar.xz 10868024 BLAKE2B ce8247de4cd6939b0593adf1c3dc6b78cdf4220fbcd2dfb2b9cf6d80d42f9c49f4d93fbe3cff68d079f04cc5801daf20999b288f7fdc85b58e32035151a3616a SHA512 6c10785ed9ab8cdf3385ebd3f3d13a64b850df9cc7a12e513326a84c7a3e6f6235f9f4dbce128eac2e43a2707fe6a6011716de5985adf4742d55879210bf32e9 DIST zxcvbn-c-2.5.tar.gz 1404434 BLAKE2B f0f22fc8643f785e8f9ed42033d6654c2e67aa4e258bbc4fecf533efcf8b86b6d7e67f9042326247c311c42a4e2b24b844e0bae65cdb2e46ea043a2974ffd857 SHA512 d7199b3cc36cd0e401bd8f857132425908307aefcdb1bb635ee81c34cf71ccbcdf0fe36a336a55da1281692b508881b54773afa41379a448863095f4abd5c0e8 -EBUILD libreoffice-24.2.2.1.ebuild 20303 BLAKE2B bf000d88de34cb31f8c2d53a5d6560780c960cb53ebb6389ead212e2497b717b5c9fa5c42ab68810d7ac793efa7872c7496ae343bda9a2503b9f3eb7342465d1 SHA512 8e89bc35ee0c8730be05b0aed4fcf6fb9ef5bc9a2740fc68e8ab03c2c9e06846160a099adbf2c42e01d6fd7200f1616bb8aef075387b6e18b56bffd399a130ac -EBUILD libreoffice-24.2.9999.ebuild 20219 BLAKE2B b640f436856a894d1e816ab639f938c1bf66747310d01c19b294338b270a64b0be27c46348fc1775eef2126e6aec3bd6e25730f292552e772a1bb487a45958e4 SHA512 c808a1e70fcc63a51faf99f8b954115880833941c6c895a873ca870b3c0214a496e9e5828c4c7826310d1f7963e156a70f3528bb4f084724368f34f3307e2e0a +EBUILD libreoffice-24.2.2.2.ebuild 20418 BLAKE2B a4565590a86e64cfa92b6ad0f476aebb5611db31b1cb8449dea7d97d5988fb3111c11d6ab4c50868f2d69bc063e4815ca6c40f961c5c3bbb9a069cc1495b0493 SHA512 d8bb5810fc80e2fed900b10af38d7d436ae9428282c94a804c93d4d25b5966ab9c1e5755828da8bd10964bd5ff5b08ee7ee7c08d4713d3a924c2346e513570e2 +EBUILD libreoffice-24.2.9999.ebuild 20337 BLAKE2B 127d3de6087ca61860bad4a2987bd693df8b3116d11abeaba6cdea51cd0ccf12fc557db50e2b2720eb83f21d724384bbf01f2036a9803f2932efe3ef76d2c9f4 SHA512 2c37f139a05d5df7bc45d53082cc7e3dd1cc5cb71197682349fb4b809b35f0ddc9cf8ee7bd113be3233cae950960cd907154ab7f2c637fb8b5f5d2e4634e6a54 EBUILD libreoffice-7.6.4.1.ebuild 19678 BLAKE2B 9437af453ccbf75140b39cb37ff2705630a2499295681fa129945ca6ed96b030a832ac997990e80ee3cfb7d7203f5e3a1e4375677e456e1ff11c6a4dce3a3178 SHA512 c8d41e5bbbc9cbf9f2cd1f3d4dd74aca9074287410c4a2e26e789ed939a691385c6d9c3f62c5144ad2f8af15a9be26206f2470e5908ab10f507b423c459873b0 EBUILD libreoffice-7.6.5.2.ebuild 19659 BLAKE2B 81a6b4e532ee828a93e7a586f7ca7765cc3a05500c563e9ead4f739de44f5c3ada7d9025862df5cf2d7d177e59ee091bd7554141df3c5f5a86616e367ddd901c SHA512 ce8574db7ad42413e68775dfe7cbf2ea3d5b3e8a5d27de9a84b9e1c4381a3bcd0c395f64ade36a44b5e6c463670f6c9959073b5634f543fb97c2a7c60c164974 -EBUILD libreoffice-7.6.6.1.ebuild 19685 BLAKE2B c42cc85c6b9cbdaed4546e0af8598e93dbfa5d7849c57c02db5a38dfd70272f674e55dbbe3fdd248b881ed842be7b11b24d264d2bd6f91b2ec503ac097379e8e SHA512 69e5fcf61ce9c7cf0bb6c4991b431ec3b7cae8066263679820e3b768052cb09ae44d106b383913f86219f82ef35b3ca1d10583e168f22d325b2d0fbd64d3b227 -EBUILD libreoffice-7.6.9999.ebuild 19602 BLAKE2B 1106df61961b014ff834b11460ca424ea785a11792074077a8f07546188968d697b8223bac6f02e59e46245c785ac6968f5f571425711780398c0fe1c1499829 SHA512 9aed64688d0cf330eb43fcafdc4e021a3463db5e098ef18ec084a9a69fbed57dabd241eb70177c70243caf08d3edb737401e19d7d6ccc1570b521633b06849fc -EBUILD libreoffice-9999.ebuild 20219 BLAKE2B b640f436856a894d1e816ab639f938c1bf66747310d01c19b294338b270a64b0be27c46348fc1775eef2126e6aec3bd6e25730f292552e772a1bb487a45958e4 SHA512 c808a1e70fcc63a51faf99f8b954115880833941c6c895a873ca870b3c0214a496e9e5828c4c7826310d1f7963e156a70f3528bb4f084724368f34f3307e2e0a +EBUILD libreoffice-7.6.6.3.ebuild 19674 BLAKE2B a623f785caa8ccfc03e0b1a06bb1afd54d3d8497227ebd0ca760ba124fe9baeaa327dc4c159e1250e8659971e3bfc919828434262b1180dd4904539b363ed4ab SHA512 5b73041c1be293b83980905cbedc4810e15621f5a2a98fb0faa44dfa8fb3167089d87c05f2b9b73c653a150585916580823ac68e4973a481faecbe58e9504cca +EBUILD libreoffice-7.6.9999.ebuild 19670 BLAKE2B 3485289367b03f709aef887ae08a377f2ee1b33b6aac2cb9545d8a7a0d27fa1a98dfcf7bbe197cb168da2c454f1dd1a6671fe1c0567f2b9f473f53eae05509da SHA512 eedbaffa3957a00a93a517fd7a397d8050de64c45de846705d4277df8d49f1109c63572a163d8333ce02ea3e85a22f6cdaf116d5b57b7840d846a32015805695 +EBUILD libreoffice-9999.ebuild 20337 BLAKE2B 127d3de6087ca61860bad4a2987bd693df8b3116d11abeaba6cdea51cd0ccf12fc557db50e2b2720eb83f21d724384bbf01f2036a9803f2932efe3ef76d2c9f4 SHA512 2c37f139a05d5df7bc45d53082cc7e3dd1cc5cb71197682349fb4b809b35f0ddc9cf8ee7bd113be3233cae950960cd907154ab7f2c637fb8b5f5d2e4634e6a54 MISC metadata.xml 1233 BLAKE2B f93989caf1340cda4c3327a3d3d033d224050848b32b9d80e0b093b024bf124d238f1aae9852d1a6173e8aee79314517dd12e589079e58378e5f63626a80957c SHA512 3af0cefdceeba7a45658a2151b0534f44b9dfe6d3af8374f3061cb098f607a36a2fe134e3c0280ce6d807b523f68e708b51e6f1b4178292a528405e18f12d686 diff --git a/app-office/libreoffice/files/libreoffice-24.2-unused-qt6network.patch b/app-office/libreoffice/files/libreoffice-24.2-unused-qt6network.patch new file mode 100644 index 000000000000..ccb69f22654e --- /dev/null +++ b/app-office/libreoffice/files/libreoffice-24.2-unused-qt6network.patch @@ -0,0 +1,57 @@ +From d4287704f9e2ea07e0750b114ec0761c2732d03e Mon Sep 17 00:00:00 2001 +From: Andreas Sturmlechner +Date: Tue, 12 Mar 2024 21:40:25 +0100 +Subject: [PATCH] Drop unused QtNetwork dependency, fix KDE terminology + +'KDE version' -> 'KDE Frameworks version' + +Change-Id: I2e6a912be93d79b251dcf32c20796374c9ca9cf2 +Signed-off-by: Andreas Sturmlechner +--- + configure.ac | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 6d56df8625f1..9d6b35b747e5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -13341,7 +13341,7 @@ then + + QT6_CFLAGS="-I$qt6_incdir -DQT_CLEAN_NAMESPACE -DQT_THREAD_SUPPORT -DQT_NO_VERSION_TAGGING" + QT6_CFLAGS=$(printf '%s' "$QT6_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g") +- QT6_LIBS="-L$qt6_libdir -lQt6Core -lQt6Gui -lQt6Widgets -lQt6Network" ++ QT6_LIBS="-L$qt6_libdir -lQt6Core -lQt6Gui -lQt6Widgets" + if test "$_os" = "Emscripten"; then + QT6_LIBS="$QT6_LIBS -lQt6BundledPcre2 -lQt6BundledZLIB -L${qt6_platformsdir} -lqwasm -sGL_ENABLE_GET_PROC_ADDRESS" + fi +@@ -13521,15 +13521,15 @@ then + AC_MSG_ERROR([KF6 libraries not found. Please specify the root of your KF6 installation by exporting KF6DIR before running "configure".]) + fi + +- KF6_CFLAGS="-I$kf6_incdir -I$kf6_incdir/KCoreAddons -I$kf6_incdir/KI18n -I$kf6_incdir/KConfig -I$kf6_incdir/KConfigCore -I$kf6_incdir/KWindowSystem -I$kf6_incdir/KIO -I$kf6_incdir/KIOCore -I$kf6_incdir/KIOWidgets -I$kf6_incdir/KIOFileWidgets -I$qt6_incdir -I$qt6_incdir/QtCore -I$qt6_incdir/QtGui -I$qt6_incdir/QtWidgets -I$qt6_incdir/QtNetwork -DQT_CLEAN_NAMESPACE -DQT_THREAD_SUPPORT -DQT_NO_VERSION_TAGGING" +- KF6_LIBS="-L$kf6_libdir -lKF6CoreAddons -lKF6I18n -lKF6ConfigCore -lKF6WindowSystem -lKF6KIOCore -lKF6KIOWidgets -lKF6KIOFileWidgets -L$qt6_libdir -lQt6Core -lQt6Gui -lQt6Widgets -lQt6Network" ++ KF6_CFLAGS="-I$kf6_incdir -I$kf6_incdir/KCoreAddons -I$kf6_incdir/KI18n -I$kf6_incdir/KConfig -I$kf6_incdir/KConfigCore -I$kf6_incdir/KWindowSystem -I$kf6_incdir/KIO -I$kf6_incdir/KIOCore -I$kf6_incdir/KIOWidgets -I$kf6_incdir/KIOFileWidgets -I$qt6_incdir -I$qt6_incdir/QtCore -I$qt6_incdir/QtGui -I$qt6_incdir/QtWidgets -DQT_CLEAN_NAMESPACE -DQT_THREAD_SUPPORT -DQT_NO_VERSION_TAGGING" ++ KF6_LIBS="-L$kf6_libdir -lKF6CoreAddons -lKF6I18n -lKF6ConfigCore -lKF6WindowSystem -lKF6KIOCore -lKF6KIOWidgets -lKF6KIOFileWidgets -L$qt6_libdir -lQt6Core -lQt6Gui -lQt6Widgets" + KF6_CFLAGS=$(printf '%s' "$KF6_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g") + + AC_LANG_PUSH([C++]) + save_CXXFLAGS=$CXXFLAGS + CXXFLAGS="$CXXFLAGS $KF6_CFLAGS" + dnl KF6 development version as of 2023-06 uses version number 5.240 +- AC_MSG_CHECKING([whether KDE is >= 5.240]) ++ AC_MSG_CHECKING([whether KDE Frameworks is >= 5.240]) + AC_RUN_IFELSE([AC_LANG_SOURCE([[ + #include + +@@ -13537,7 +13537,7 @@ int main(int argc, char **argv) { + if (KCOREADDONS_VERSION_MAJOR == 6 || (KCOREADDONS_VERSION_MAJOR == 5 && KCOREADDONS_VERSION_MINOR >= 240)) return 0; + else return 1; + } +- ]])],[AC_MSG_RESULT([yes])],[AC_MSG_ERROR([KDE version too old])],[]) ++ ]])],[AC_MSG_RESULT([yes])],[AC_MSG_ERROR([KDE Frameworks version too old])],[]) + CXXFLAGS=$save_CXXFLAGS + AC_LANG_POP([C++]) + fi +-- +2.44.0 + diff --git a/app-office/libreoffice/files/libreoffice-7.6-unused-qt5network.patch b/app-office/libreoffice/files/libreoffice-7.6-unused-qt5network.patch new file mode 100644 index 000000000000..edeb38854994 --- /dev/null +++ b/app-office/libreoffice/files/libreoffice-7.6-unused-qt5network.patch @@ -0,0 +1,58 @@ +From d4287704f9e2ea07e0750b114ec0761c2732d03e Mon Sep 17 00:00:00 2001 +From: Andreas Sturmlechner +Date: Tue, 12 Mar 2024 21:40:25 +0100 +Subject: [PATCH] Drop unused QtNetwork dependency, fix KDE terminology + +'KDE version' -> 'KDE Frameworks version' + +Change-Id: I2e6a912be93d79b251dcf32c20796374c9ca9cf2 +Signed-off-by: Andreas Sturmlechner +--- + configure.ac | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 6d56df8625f1..9d6b35b747e5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -13213,7 +13213,7 @@ then + + QT5_CFLAGS="-I$qt5_incdir -DQT_CLEAN_NAMESPACE -DQT_THREAD_SUPPORT -DQT_NO_VERSION_TAGGING" + QT5_CFLAGS=$(printf '%s' "$QT5_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g") +- QT5_LIBS="-L$qt5_libdir -lQt5Core -lQt5Gui -lQt5Widgets -lQt5Network" ++ QT5_LIBS="-L$qt5_libdir -lQt5Core -lQt5Gui -lQt5Widgets" + if test "$_os" = "Emscripten"; then + QT5_LIBS="$QT5_LIBS -lqtpcre2 -lQt5EventDispatcherSupport -lQt5FontDatabaseSupport -L${qt5_platformsdir} -lqwasm" + fi +@@ -13442,8 +13442,8 @@ then + AC_MSG_ERROR([KF5 libraries not found. Please specify the root of your KF5 installation by exporting KF5DIR before running "configure".]) + fi + +- KF5_CFLAGS="-I$kf5_incdir -I$kf5_incdir/KCoreAddons -I$kf5_incdir/KI18n -I$kf5_incdir/KConfigCore -I$kf5_incdir/KWindowSystem -I$kf5_incdir/KIOCore -I$kf5_incdir/KIOWidgets -I$kf5_incdir/KIOFileWidgets -I$qt5_incdir -I$qt5_incdir/QtCore -I$qt5_incdir/QtGui -I$qt5_incdir/QtWidgets -I$qt5_incdir/QtNetwork -DQT_CLEAN_NAMESPACE -DQT_THREAD_SUPPORT -DQT_NO_VERSION_TAGGING" +- KF5_LIBS="-L$kf5_libdir -lKF5CoreAddons -lKF5I18n -lKF5ConfigCore -lKF5WindowSystem -lKF5KIOCore -lKF5KIOWidgets -lKF5KIOFileWidgets -L$qt5_libdir -lQt5Core -lQt5Gui -lQt5Widgets -lQt5Network" ++ KF5_CFLAGS="-I$kf5_incdir -I$kf5_incdir/KCoreAddons -I$kf5_incdir/KI18n -I$kf5_incdir/KConfigCore -I$kf5_incdir/KWindowSystem -I$kf5_incdir/KIOCore -I$kf5_incdir/KIOWidgets -I$kf5_incdir/KIOFileWidgets -I$qt5_incdir -I$qt5_incdir/QtCore -I$qt5_incdir/QtGui -I$qt5_incdir/QtWidgets -DQT_CLEAN_NAMESPACE -DQT_THREAD_SUPPORT -DQT_NO_VERSION_TAGGING" ++ KF5_LIBS="-L$kf5_libdir -lKF5CoreAddons -lKF5I18n -lKF5ConfigCore -lKF5WindowSystem -lKF5KIOCore -lKF5KIOWidgets -lKF5KIOFileWidgets -L$qt5_libdir -lQt5Core -lQt5Gui -lQt5Widgets" + KF5_CFLAGS=$(printf '%s' "$KF5_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g") + + if test "$USING_X11" = TRUE; then +@@ -13453,7 +13453,7 @@ then + AC_LANG_PUSH([C++]) + save_CXXFLAGS=$CXXFLAGS + CXXFLAGS="$CXXFLAGS $KF5_CFLAGS" +- AC_MSG_CHECKING([whether KDE is >= 5.0]) ++ AC_MSG_CHECKING([whether KDE Frameworks is >= 5.0]) + AC_RUN_IFELSE([AC_LANG_SOURCE([[ + #include + +@@ -13461,7 +13461,7 @@ int main(int argc, char **argv) { + if (KCOREADDONS_VERSION_MAJOR == 5 && KCOREADDONS_VERSION_MINOR >= 0) return 0; + else return 1; + } +- ]])],[AC_MSG_RESULT([yes])],[AC_MSG_ERROR([KDE version too old])],[]) ++ ]])],[AC_MSG_RESULT([yes])],[AC_MSG_ERROR([KDE Frameworks version too old])],[]) + CXXFLAGS=$save_CXXFLAGS + AC_LANG_POP([C++]) + fi +-- +2.44.0 + diff --git a/app-office/libreoffice/files/libreoffice-7.6.6.1-detect-plasma6.patch b/app-office/libreoffice/files/libreoffice-7.6.6.1-detect-plasma6.patch deleted file mode 100644 index 9a4553db3447..000000000000 --- a/app-office/libreoffice/files/libreoffice-7.6.6.1-detect-plasma6.patch +++ /dev/null @@ -1,153 +0,0 @@ -From 4c836645eb0556a496c80e4604b63b47085020dd Mon Sep 17 00:00:00 2001 -From: Michael Weghorn -Date: Thu, 22 Jun 2023 08:40:56 +0200 -Subject: [PATCH] Detect Plasma 6 desktop - -Add detection for Plasma 6, which is currently in development stage. -With the following plasma-workspace commit [1] in place, -KDE_SESSION_VERSION is set to 6, so use that to detect it: - - commit 4c2242d7dfafac161baec3ec316af24d7b48ef8b - Author: Michael Weghorn - Date: Thu Jun 22 07:47:31 2023 +0200 - - Set KDE_SESSION_VERSION to 6 - - Since the master branch is based on Qt6/KF6 and will - become Plasma 6, set KDE_SESSION_VERSION to "6". - - This will allow other applications to detect they're - running in a (preview of a) Plasma 6 session and react - accordingly. - (E.g. LibreOffice can use this to choose to - use its upcoming kf6 integration by default instead of the - kf5 one.) - -[1] https://invent.kde.org/plasma/plasma-workspace/-/commit/4c2242d7dfafac161baec3ec316af24d7b48ef8b - -Change-Id: I5a15ad1fb177721fbfa016139c56a08b228f2e1f -Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153437 -Tested-by: Jenkins -Reviewed-by: Michael Weghorn -(cherry picked from commit 8b0e1f2a914d672182d585d8cb2d4a815e88977e) -Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164700 -Reviewed-by: Adolfo Jayme Barrientos ---- - vcl/inc/unx/desktops.hxx | 1 + - vcl/source/app/IconThemeSelector.cxx | 1 + - vcl/source/app/salplug.cxx | 4 ++-- - vcl/unx/generic/desktopdetect/desktopdetector.cxx | 11 +++++++++++ - vcl/unx/kf5/KF5SalInstance.cxx | 8 +++++--- - 5 files changed, 20 insertions(+), 5 deletions(-) - -diff --git a/vcl/inc/unx/desktops.hxx b/vcl/inc/unx/desktops.hxx -index 0abb6aa71339..2056c2c37928 100644 ---- a/vcl/inc/unx/desktops.hxx -+++ b/vcl/inc/unx/desktops.hxx -@@ -33,6 +33,7 @@ enum SAL_DLLPUBLIC_RTTI DesktopType - DESKTOP_XFCE, - DESKTOP_MATE, - DESKTOP_PLASMA5, -+ DESKTOP_PLASMA6, - DESKTOP_LXQT - }; // keep in sync with desktop_strings[] in salplug.cxx - -diff --git a/vcl/source/app/IconThemeSelector.cxx b/vcl/source/app/IconThemeSelector.cxx -index 6b8dfc0f42c7..15eb4b7768fc 100644 ---- a/vcl/source/app/IconThemeSelector.cxx -+++ b/vcl/source/app/IconThemeSelector.cxx -@@ -70,6 +70,7 @@ IconThemeSelector::GetIconThemeForDesktopEnvironment(const OUString& desktopEnvi - #else - OUString r; - if ( desktopEnvironment.equalsIgnoreAsciiCase("plasma5") || -+ desktopEnvironment.equalsIgnoreAsciiCase("plasma6") || - desktopEnvironment.equalsIgnoreAsciiCase("lxqt") ) { - if (!bPreferDarkIconTheme) - r = "breeze"; -diff --git a/vcl/source/app/salplug.cxx b/vcl/source/app/salplug.cxx -index e51375b94ae5..fee5b7e33e6d 100644 ---- a/vcl/source/app/salplug.cxx -+++ b/vcl/source/app/salplug.cxx -@@ -249,7 +249,7 @@ const char* const* autodetect_plugin_list() - desktop == DESKTOP_XFCE || - desktop == DESKTOP_MATE ) - pList = pStandardFallbackList; -- else if (desktop == DESKTOP_PLASMA5 || desktop == DESKTOP_LXQT) -+ else if (desktop == DESKTOP_PLASMA5 || desktop == DESKTOP_PLASMA6 || desktop == DESKTOP_LXQT) - pList = pKDEFallbackList; - - return pList; -@@ -426,7 +426,7 @@ const OUString& SalGetDesktopEnvironment() - // Order to match desktops.hxx' DesktopType - static const char * const desktop_strings[] = { - "none", "unknown", "GNOME", "UNITY", -- "XFCE", "MATE", "PLASMA5", "LXQT" }; -+ "XFCE", "MATE", "PLASMA5", "PLASMA6", "LXQT" }; - static OUString aDesktopEnvironment; - if( aDesktopEnvironment.isEmpty()) - { -diff --git a/vcl/unx/generic/desktopdetect/desktopdetector.cxx b/vcl/unx/generic/desktopdetect/desktopdetector.cxx -index bad134fbdafd..8baeb303feed 100644 ---- a/vcl/unx/generic/desktopdetect/desktopdetector.cxx -+++ b/vcl/unx/generic/desktopdetect/desktopdetector.cxx -@@ -117,6 +117,13 @@ static bool is_plasma5_desktop() - return pFullVersion && pSessionVersion && (0 == strcmp(pSessionVersion, "5")); - } - -+static bool is_plasma6_desktop() -+{ -+ static const char* pFullVersion = getenv("KDE_FULL_SESSION"); -+ static const char* pSessionVersion = getenv("KDE_SESSION_VERSION"); -+ return pFullVersion && pSessionVersion && (0 == strcmp(pSessionVersion, "6")); -+} -+ - extern "C" - { - -@@ -132,6 +139,8 @@ DESKTOP_DETECTOR_PUBLIC DesktopType get_desktop_environment() - return DESKTOP_LXQT; - if (aOver.equalsIgnoreAsciiCase("plasma5") || aOver.equalsIgnoreAsciiCase("plasma")) - return DESKTOP_PLASMA5; -+ if (aOver.equalsIgnoreAsciiCase("plasma6")) -+ return DESKTOP_PLASMA6; - if ( aOver.equalsIgnoreAsciiCase( "gnome" ) ) - return DESKTOP_GNOME; - if ( aOver.equalsIgnoreAsciiCase( "gnome-wayland" ) ) -@@ -190,6 +199,8 @@ DESKTOP_DETECTOR_PUBLIC DesktopType get_desktop_environment() - - if (is_plasma5_desktop()) - return DESKTOP_PLASMA5; -+ if (is_plasma6_desktop()) -+ return DESKTOP_PLASMA6; - - // tdf#121275 if we still can't tell, and WAYLAND_DISPLAY - // is set, default to gtk3 -diff --git a/vcl/unx/kf5/KF5SalInstance.cxx b/vcl/unx/kf5/KF5SalInstance.cxx -index df5108e147a1..05f555f356f5 100644 ---- a/vcl/unx/kf5/KF5SalInstance.cxx -+++ b/vcl/unx/kf5/KF5SalInstance.cxx -@@ -41,7 +41,8 @@ KF5SalInstance::KF5SalInstance(std::unique_ptr& pQApp, bool bUseCa - - bool KF5SalInstance::hasNativeFileSelection() const - { -- if (Application::GetDesktopEnvironment() == "PLASMA5") -+ const OUString sDesktop = Application::GetDesktopEnvironment(); -+ if (sDesktop == "PLASMA5" || sDesktop == "PLASMA6") - return true; - return QtInstance::hasNativeFileSelection(); - } -@@ -61,8 +62,9 @@ KF5SalInstance::createPicker(css::uno::Reference co - - // In order to insert custom controls, KF5FilePicker currently relies on KFileWidget - // being used in the native file picker, which is only the case for KDE Plasma. -- // Therefore, return the plain qt5 one in order to not lose custom controls. -- if (Application::GetDesktopEnvironment() == "PLASMA5") -+ // Therefore, return the plain qt5/qt6 one in order to not lose custom controls otherwise. -+ const OUString sDesktop = Application::GetDesktopEnvironment(); -+ if (sDesktop == "PLASMA5" || sDesktop == "PLASMA6") - return new KF5FilePicker(context, eMode); - return QtInstance::createPicker(context, eMode); - } --- -2.44.0 - diff --git a/app-office/libreoffice/libreoffice-24.2.2.1.ebuild b/app-office/libreoffice/libreoffice-24.2.2.1.ebuild deleted file mode 100644 index 6790640974f2..000000000000 --- a/app-office/libreoffice/libreoffice-24.2.2.1.ebuild +++ /dev/null @@ -1,693 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..12} ) -PYTHON_REQ_USE="threads(+),xml(+)" - -MY_PV="${PV/_alpha/.alpha}" -MY_PV="${MY_PV/_beta/.beta}" -# experimental ; release ; old -# Usually the tarballs are moved a lot so this should make everyone happy. -DEV_URI=" - https://dev-builds.libreoffice.org/pre-releases/src - https://download.documentfoundation.org/libreoffice/src/${MY_PV:0:5}/ - https://downloadarchive.documentfoundation.org/libreoffice/old/${MY_PV}/src -" -ADDONS_URI="https://dev-www.libreoffice.org/src/" - -BRANDING="${PN}-branding-gentoo-0.8.tar.xz" -# PATCHSET="${P}-patchset-01.tar.xz" - -[[ ${MY_PV} == *9999* ]] && inherit git-r3 -inherit autotools bash-completion-r1 check-reqs flag-o-matic java-pkg-opt-2 multiprocessing python-single-r1 qmake-utils toolchain-funcs xdg-utils - -DESCRIPTION="A full office productivity suite" -HOMEPAGE="https://www.libreoffice.org" -SRC_URI="branding? ( https://dev.gentoo.org/~dilfridge/distfiles/${BRANDING} )" -[[ -n ${PATCHSET} ]] && SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${PATCHSET}" - -# Split modules following git/tarballs; Core MUST be first! -# Help is used for the image generator -# Only release has the tarballs -if [[ ${MY_PV} != *9999* ]]; then - for i in ${DEV_URI}; do - SRC_URI+=" ${i}/${PN}-${MY_PV}.tar.xz" - SRC_URI+=" ${i}/${PN}-help-${MY_PV}.tar.xz" - done - unset i -fi -unset DEV_URI - -# Really required addons -# These are bundles that can't be removed for now due to huge patchsets. -# If you want them gone, patches are welcome. -ADDONS_SRC=( - # not packaged in Gentoo - "${ADDONS_URI}/dragonbox-1.1.3.tar.gz" - # not packaged in Gentoo, https://www.netlib.org/fp/dtoa.c - "${ADDONS_URI}/dtoa-20180411.tgz" - # not packaged in Gentoo, https://github.com/serge-sans-paille/frozen - "${ADDONS_URI}/frozen-1.1.1.tar.gz" - # not packaged in Gentoo, https://skia.org/ - "${ADDONS_URI}/skia-m116-2ddcf183eb260f63698aa74d1bb380f247ad7ccd.tar.xz" - # not packaged in Gentoo, https://github.com/tsyrogit/zxcvbn-c - "${ADDONS_URI}/zxcvbn-c-2.5.tar.gz" - "base? ( - ${ADDONS_URI}/commons-logging-1.2-src.tar.gz - ${ADDONS_URI}/ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip - ${ADDONS_URI}/d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip - ${ADDONS_URI}/eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip - ${ADDONS_URI}/3bdf40c0d199af31923e900d082ca2dd-libfonts-1.1.6.zip - ${ADDONS_URI}/3404ab6b1792ae5f16bbd603bd1e1d03-libformula-1.1.7.zip - ${ADDONS_URI}/db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip - ${ADDONS_URI}/97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip - ${ADDONS_URI}/8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip - ${ADDONS_URI}/f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip - ${ADDONS_URI}/ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip - ${ADDONS_URI}/39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip - )" - # Java-WebSocket: not packaged in Gentoo, https://github.com/TooTallNate/Java-WebSocket - "java? ( - ${ADDONS_URI}/Java-WebSocket-1.5.4.tar.gz - ${ADDONS_URI}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip - )" - # no release for 8 years, should we package it? - "libreoffice_extensions_wiki-publisher? ( ${ADDONS_URI}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip )" - # Does not build with 1.6 rhino at all - "libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip )" - # requirement of rhino - "libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip )" - # not packageable - "odk? ( http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll )" -) -SRC_URI+=" ${ADDONS_SRC[*]}" - -unset ADDONS_URI -unset ADDONS_SRC - -# Extensions that need extra work: -LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher" - -IUSE="accessibility base bluetooth +branding clang coinmp +cups custom-cflags +dbus debug eds firebird -googledrive gstreamer +gtk kde ldap +mariadb odk pdfimport postgres qt5 qt6 test valgrind vulkan -$(printf 'libreoffice_extensions_%s ' ${LO_EXTS})" - -REQUIRED_USE="${PYTHON_REQUIRED_USE} - base? ( java ) - bluetooth? ( dbus ) - kde? ( || ( qt5 qt6 ) ) - libreoffice_extensions_nlpsolver? ( java ) - libreoffice_extensions_scripting-beanshell? ( java ) - libreoffice_extensions_scripting-javascript? ( java ) - libreoffice_extensions_wiki-publisher? ( java ) -" - -RESTRICT="!test? ( test )" - -LICENSE="|| ( LGPL-3 MPL-1.1 )" -SLOT="0" - -#[[ ${MY_PV} == *9999* ]] || \ -#KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux" - -COMMON_DEPEND="${PYTHON_DEPS} - app-arch/unzip - app-arch/zip - app-crypt/argon2:= - app-crypt/gpgme:=[cxx] - app-text/hunspell:= - >=app-text/libabw-0.1.0 - >=app-text/libebook-0.1 - app-text/libepubgen - >=app-text/libetonyek-0.1 - app-text/libexttextcat - app-text/liblangtag - >=app-text/libmspub-0.1.0 - >=app-text/libmwaw-0.3.21 - >=app-text/libnumbertext-1.0.6 - >=app-text/libodfgen-0.1.0 - app-text/libqxp - app-text/libstaroffice - app-text/libwpd:0.10[tools] - app-text/libwpg:0.3 - >=app-text/libwps-0.4 - app-text/mythes - >=dev-cpp/clucene-2.3.3.4-r2 - >=dev-cpp/libcmis-0.6.2:0= - dev-db/unixODBC - dev-lang/perl - dev-libs/boost:=[nls] - dev-libs/expat - dev-libs/hyphen - dev-libs/icu:= - dev-libs/libassuan - dev-libs/libgpg-error - >=dev-libs/liborcus-0.18.0:0/0.18 - dev-libs/librevenge - dev-libs/libxml2 - dev-libs/libxslt - dev-libs/nspr - dev-libs/nss - >=dev-libs/redland-1.0.16 - >=dev-libs/xmlsec-1.2.35:=[nss] - >=games-engines/box2d-2.4.1:0 - media-gfx/fontforge - media-gfx/graphite2 - media-libs/fontconfig - >=media-libs/freetype-2.11.0-r1:2 - >=media-libs/harfbuzz-5.1.0:=[graphite,icu] - media-libs/lcms:2 - >=media-libs/libcdr-0.1.0 - >=media-libs/libepoxy-1.3.1[X] - >=media-libs/libfreehand-0.1.0 - media-libs/libjpeg-turbo:= - media-libs/libpagemaker - >=media-libs/libpng-1.4:0= - >=media-libs/libvisio-0.1.0 - media-libs/libwebp:= - media-libs/libzmf - media-libs/openjpeg:= - media-libs/tiff:= - media-libs/zxing-cpp:= - net-misc/curl - sci-mathematics/lpsolve:= - sys-libs/zlib - virtual/opengl - x11-libs/cairo[X] - x11-libs/libXinerama - x11-libs/libXrandr - x11-libs/libXrender - accessibility? ( - $(python_gen_cond_dep 'dev-python/lxml[${PYTHON_USEDEP}]') - ) - bluetooth? ( - dev-libs/glib:2 - net-wireless/bluez - ) - coinmp? ( sci-libs/coinor-mp ) - cups? ( net-print/cups ) - dbus? ( sys-apps/dbus ) - eds? ( - dev-libs/glib:2 - >=gnome-base/dconf-0.40.0 - gnome-extra/evolution-data-server - ) - firebird? ( >=dev-db/firebird-3.0.2.32703.0-r1[server] ) - gstreamer? ( - media-libs/gstreamer:1.0 - media-libs/gst-plugins-base:1.0 - ) - gtk? ( - app-accessibility/at-spi2-core:2 - dev-libs/glib:2 - dev-libs/gobject-introspection - gnome-base/dconf - media-libs/mesa[egl(+)] - x11-libs/gtk+:3[X] - x11-libs/pango - ) - kde? ( - qt5? ( - kde-frameworks/kconfig:5 - kde-frameworks/kcoreaddons:5 - kde-frameworks/ki18n:5 - kde-frameworks/kio:5 - kde-frameworks/kwindowsystem:5 - ) - qt6? ( - kde-frameworks/kconfig:6 - kde-frameworks/kcoreaddons:6 - kde-frameworks/ki18n:6 - kde-frameworks/kio:6 - kde-frameworks/kwindowsystem:6 - ) - ) - ldap? ( net-nds/openldap:= ) - libreoffice_extensions_scripting-beanshell? ( dev-java/bsh ) - libreoffice_extensions_scripting-javascript? ( >=dev-java/rhino-1.7.14:1.6 ) - mariadb? ( dev-db/mariadb-connector-c:= ) - !mariadb? ( dev-db/mysql-connector-c:= ) - pdfimport? ( >=app-text/poppler-22.06:=[cxx] ) - postgres? ( >=dev-db/postgresql-9.0:*[kerberos] ) - qt5? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtwidgets:5 - dev-qt/qtx11extras:5 - ) - qt6? ( dev-qt/qtbase:6[gui,widgets] ) -" -# FIXME: cppunit should be moved to test conditional -# after everything upstream is under gbuild -# as dmake execute tests right away -# tests apparently also need google-carlito-fonts (not packaged) -DEPEND="${COMMON_DEPEND} - >=dev-libs/libatomic_ops-7.2d - dev-perl/Archive-Zip - >=dev-util/cppunit-1.14.0 - >=dev-util/gperf-3.1 - dev-util/mdds:1/2.1 - media-libs/glm - x11-base/xorg-proto - x11-libs/libXt - x11-libs/libXtst - java? ( - dev-java/ant-core - >=virtual/jdk-17 - ) - test? ( - app-crypt/gnupg - dev-util/cppunit - media-fonts/dejavu - media-fonts/liberation-fonts - ) - valgrind? ( dev-debug/valgrind ) -" -RDEPEND="${COMMON_DEPEND} - acct-group/libreoffice - acct-user/libreoffice - !app-office/libreoffice-bin - !app-office/libreoffice-bin-debug - media-fonts/liberation-fonts - || ( x11-misc/xdg-utils kde-plasma/kde-cli-tools:* ) - java? ( >=virtual/jre-11 ) - kde? ( kde-frameworks/breeze-icons:* ) -" -BDEPEND=" - dev-util/intltool - sys-apps/which - app-alternatives/yacc - app-alternatives/lex - sys-devel/gettext - virtual/pkgconfig - clang? ( - || ( - ( sys-devel/clang:18 - sys-devel/llvm:18 - =sys-devel/lld-18* ) - ( sys-devel/clang:17 - sys-devel/llvm:17 - =sys-devel/lld-17* ) - ( sys-devel/clang:16 - sys-devel/llvm:16 - =sys-devel/lld-16* ) - ( sys-devel/clang:15 - sys-devel/llvm:15 - =sys-devel/lld-15* ) - ) - ) - odk? ( >=app-text/doxygen-1.8.4 ) -" -if [[ ${MY_PV} != *9999* ]] && [[ ${PV} != *_* ]]; then - PDEPEND="=app-office/libreoffice-l10n-$(ver_cut 1-2)*" -else - # Translations are not reliable on live ebuilds - # rather force people to use english only. - RDEPEND+=" !app-office/libreoffice-l10n" -fi - -PATCHES=( - # "${WORKDIR}"/${PATCHSET/.tar.xz/} - - # not upstreamable stuff - "${FILESDIR}/${PN}-5.3.4.2-kioclient5.patch" - "${FILESDIR}/${PN}-6.1-nomancompress.patch" - "${FILESDIR}/${PN}-24.2-qtdetect.patch" - - # maybe upstreamable - "${FILESDIR}/${PN}-7.5.8.2-icu-74-compatibility.patch" -) - -S="${WORKDIR}/${PN}-${MY_PV}" - -_check_reqs() { - CHECKREQS_MEMORY="512M" - if is-flagq "-g*" && ! is-flagq "-g*0" ; then - CHECKREQS_DISK_BUILD="22G" - else - CHECKREQS_DISK_BUILD="6G" - fi - check-reqs_$1 -} - -pkg_pretend() { - use base || - ewarn "If you plan to use Base application you must enable USE base." - use java || - ewarn "Without USE java, several wizards are not going to be available." - - [[ ${MERGE_TYPE} != binary ]] && _check_reqs pkg_pretend -} - -pkg_setup() { - java-pkg-opt-2_pkg_setup - python-single-r1_pkg_setup - xdg_environment_reset - - [[ ${MERGE_TYPE} != binary ]] && _check_reqs pkg_setup -} - -src_unpack() { - default - - if [[ ${MY_PV} = *9999* ]]; then - local base_uri branch mypv - base_uri="https://anongit.freedesktop.org/git" - branch="master" - mypv=${MY_PV/.9999} - [[ ${mypv} != ${MY_PV} ]] && branch="${PN}-${mypv/./-}" - git-r3_fetch "${base_uri}/${PN}/core" "refs/heads/${branch}" - git-r3_checkout "${base_uri}/${PN}/core" - LOCOREGIT_VERSION=${EGIT_VERSION} - - git-r3_fetch "${base_uri}/${PN}/help" "refs/heads/master" - git-r3_checkout "${base_uri}/${PN}/help" "helpcontent2" # doesn't match on help - fi -} - -src_prepare() { - default - - # sandbox violations on many systems, we don't need it. Bug #646406 - sed -i \ - -e "/KF5_CONFIG/s/kf5-config/no/" \ - configure.ac || die "Failed to disable kf5-config" - - AT_M4DIR="m4" eautoreconf - # hack in the autogen.sh - touch autogen.lastrun - - # sed in the tests - sed -i \ - -e "s#all : build unitcheck#all : build#g" \ - solenv/gbuild/Module.mk || die - sed -i \ - -e "s#check: dev-install subsequentcheck#check: unitcheck slowcheck dev-install subsequentcheck#g" \ - -e "s#Makefile.gbuild all slowcheck#Makefile.gbuild all#g" \ - Makefile.in || die - - sed -i \ - -e "s,/usr/share/bash-completion/completions,$(get_bashcompdir)," \ - -e "s,\$INSTALLDIRNAME.sh,${PN}," \ - bin/distro-install-desktop-integration || die - - if use branding; then - # hack... - mv -v "${WORKDIR}/branding-intro.png" "icon-themes/colibre/brand/intro.png" || die - fi - - # Don't list pdfimport support in desktop when built with none, bug # 605464 - if ! use pdfimport; then - sed -i \ - -e ":MimeType: s:application/pdf;::" \ - -e ":Keywords: s:pdf;::" \ - sysui/desktop/menus/draw.desktop || die - fi -} - -src_configure() { - # Set up Google API keys, see https://www.chromium.org/developers/how-tos/api-keys - # Note: these are for Gentoo use ONLY. For your own distribution, please get - # your own set of keys. Feel free to contact chromium@gentoo.org for more info. - local google_default_client_id="329227923882.apps.googleusercontent.com" - local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu" - - # Show flags set at the beginning - einfo "Preset CFLAGS: ${CFLAGS}" - einfo "Preset LDFLAGS: ${LDFLAGS}" - - # Workaround for bug #915067 - append-ldflags $(test-flags-CCLD -Wl,--undefined-version) - - if use clang ; then - # Force clang - einfo "Enforcing the use of clang due to USE=clang ..." - AR=llvm-ar - CC=${CHOST}-clang - CXX=${CHOST}-clang++ - NM=llvm-nm - RANLIB=llvm-ranlib - LDFLAGS+=" -fuse-ld=lld" - - # Workaround for bug #907905 - filter-lto - - # Not implemented by Clang, bug #903889 - filter-flags -Wlto-type-mismatch -Werror=lto-type-mismatch - else - # Force gcc - 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 - - # Apparently the Clang flags get used even for GCC builds sometimes. - # bug #838115 - sed -i -e "s/-flto=thin/-flto/" solenv/gbuild/platform/com_GCC_defs.mk || die - fi - - if use custom-cflags ; then - elog "USE=custom-cflags has been selected. You are on your own to make sure that" - elog "the build succeeds. Good luck!" - else - strip-flags - fi - - export LO_CLANG_CC=${CC} - export LO_CLANG_CXX=${CXX} - - # Show flags set at the end - einfo " Used CFLAGS: ${CFLAGS}" - einfo " Used LDFLAGS: ${LDFLAGS}" - - # Ensure we use correct toolchain - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG - - # optimization flags - export GMAKE_OPTIONS="${MAKEOPTS}" - # System python enablement: - export PYTHON_CFLAGS=$(python_get_CFLAGS) - export PYTHON_LIBS=$(python_get_LIBS) - - if use qt5; then - export QT5DIR="$(qt5_get_bindir)/.." - fi - if use qt6; then - export QT6DIR="$(qt6_get_bindir)/.." - fi - - local gentoo_buildid="Gentoo official package" - if [[ -n ${LOCOREGIT_VERSION} ]]; then - gentoo_buildid+=" (from git: ${LOCOREGIT_VERSION})" - fi - - # system headers/libs/...: enforce using system packages - # --disable-breakpad: requires not-yet-in-tree dev-utils/breakpad - # --enable-cairo: ensure that cairo is always required - # --enable-*-link: link to the library rather than just dlopen on runtime - # --enable-release-build: build the libreoffice as release - # --disable-fetch-external: prevent dowloading during compile phase - # --enable-extension-integration: enable any extension integration support - # --without-{fonts,myspell-dicts,ppsd}: prevent install of sys pkgs - # --disable-report-builder: too much java packages pulled in without pkgs - # --without-system-sane: just sane.h header that is used for scan in writer, - # not linked or anything else, worthless to depend on - # --disable-pdfium: not yet packaged - local myeconfargs=( - --with-system-dicts - --with-system-epoxy - --with-system-headers - --with-system-jars - --with-system-libs - --enable-build-opensymbol - --enable-cairo-canvas - --enable-largefile - --enable-mergelibs=more - --enable-python=system - --enable-randr - --enable-release-build - --disable-breakpad - --disable-bundle-mariadb - --disable-ccache - --disable-epm - --disable-fetch-external - --disable-gtk3-kde5 - --disable-online-update - --disable-openssl - --disable-pdfium - --with-extra-buildid="${gentoo_buildid}" - --enable-extension-integration - --with-external-dict-dir="${EPREFIX}/usr/share/myspell" - --with-external-hyph-dir="${EPREFIX}/usr/share/myspell" - --with-external-thes-dir="${EPREFIX}/usr/share/myspell" - --with-external-tar="${DISTDIR}" - --with-lang="" - --with-parallelism=$(makeopts_jobs) - --with-system-openjpeg - --with-tls=nss - --with-vendor="Gentoo Foundation" - --with-x - --without-fonts - --without-myspell-dicts - --with-help="html" - --without-helppack-integration - --with-system-gpgmepp - --without-system-abseil - --without-system-dragonbox - --without-system-frozen - --without-system-jfreereport - --without-system-libfixmath - --without-system-sane - --without-system-zxcvbn - $(use_enable base report-builder) - $(use_enable bluetooth sdremote-bluetooth) - $(use_enable coinmp) - $(use_enable cups) - $(use_enable dbus) - $(use_enable debug) - $(use_enable eds evolution2) - $(use_enable firebird firebird-sdbc) - $(use_enable gstreamer gstreamer-1-0) - $(use_enable gtk gtk3) - $(use_enable ldap) - $(use_enable odk) - $(use_enable pdfimport) - $(use_enable postgres postgresql-sdbc) - $(use_enable qt5) - $(use_enable qt6) - $(use_enable vulkan skia) - $(use_with accessibility lxml) - $(use_with coinmp system-coinmp) - $(use_with googledrive gdrive-client-id ${google_default_client_id}) - $(use_with googledrive gdrive-client-secret ${google_default_client_secret}) - $(use_with java) - $(use_with odk doxygen) - $(use_with valgrind) - ) - - use qt5 && myeconfargs+=( $(use_enable kde kf5) ) - use qt6 && myeconfargs+=( $(use_enable kde kf6) ) - - if use eds || use gtk; then - myeconfargs+=( --enable-dconf --enable-gio ) - else - myeconfargs+=( --disable-dconf --disable-gio ) - fi - - # libreoffice extensions handling - for lo_xt in ${LO_EXTS}; do - if [[ "${lo_xt}" == "scripting-beanshell" || "${lo_xt}" == "scripting-javascript" ]]; then - myeconfargs+=( $(use_enable libreoffice_extensions_${lo_xt} ${lo_xt}) ) - else - myeconfargs+=( $(use_enable libreoffice_extensions_${lo_xt} ext-${lo_xt}) ) - fi - done - - if use java; then - # hsqldb: system one is too new - myeconfargs+=( - --without-junit - --without-system-hsqldb - --with-ant-home="${ANT_HOME}" - --with-jdk-home="${JAVA_HOME}" - ) - - use libreoffice_extensions_scripting-beanshell && \ - myeconfargs+=( --with-beanshell-jar=$(java-pkg_getjar bsh bsh.jar) ) - - use libreoffice_extensions_scripting-javascript && \ - myeconfargs+=( --with-rhino-jar=$(java-pkg_getjar rhino-1.6 rhino.jar) ) - fi - - tc-is-lto && myeconfargs+=( --enable-lto ) - - MARIADBCONFIG="$(type -p $(usex mariadb mariadb mysql)_config)" \ - econf "${myeconfargs[@]}" -} - -src_compile() { - # more and more LO stuff tries to use OpenGL, including tests during build - # bug 501508, bug 540624, bug 545974 and probably more - addpredict /dev/dri - addpredict /dev/ati - addpredict /dev/nvidiactl - - default -} - -src_test() { - emake unitcheck - emake slowcheck -} - -src_install() { - emake DESTDIR="${D}" distro-pack-install -o build -o check - - # bug 593514 - if use gtk; then - dosym libreoffice/program/liblibreofficekitgtk.so \ - /usr/$(get_libdir)/liblibreofficekitgtk.so - fi - - # bash completion aliases - bashcomp_alias \ - libreoffice \ - unopkg loimpress lobase localc lodraw lomath lowriter lofromtemplate loweb loffice - - if use branding; then - insinto /usr/$(get_libdir)/${PN}/program - newins "${WORKDIR}/branding-sofficerc" sofficerc - dodir /etc/env.d - echo "CONFIG_PROTECT=/usr/$(get_libdir)/${PN}/program/sofficerc" > "${ED}"/etc/env.d/99${PN} || die - fi - - # bug 703474 - insinto /usr/include - doins -r include/LibreOfficeKit - - local lodir=/usr/$(get_libdir)/libreoffice - # patching this would break tests - cat <<-EOF > "${T}"/uno.py -import sys, os -sys.path.append('${EPREFIX}${lodir}/program') -os.putenv('URE_BOOTSTRAP', 'vnd.sun.star.pathname:${EPREFIX}${lodir}/program/fundamentalrc') -EOF - sed -e "/^import sys/d" -e "/^import os/d" \ - -i "${D}"${lodir}/program/uno.py || die "cleanup dupl imports failed" - cat "${D}"${lodir}/program/uno.py >> "${T}"/uno.py || die - cp "${T}"/uno.py "${D}"${lodir}/program/uno.py || die - - # more system pyuno mess - sed -e "/sOffice = \"\" # lets hope for the best/s:\"\":\"${EPREFIX}${lodir}/program\":" \ - -i "${D}"${lodir}/program/officehelper.py || die - - python_optimize "${D}"${lodir}/program - # link python bridge in site-packages, bug 667802 - local py pyc loprogdir=/usr/$(get_libdir)/libreoffice/program - for py in uno.py unohelper.py officehelper.py; do - dosym -r ${loprogdir}/${py} $(python_get_sitedir)/${py} - while IFS="" read -d $'\0' -r pyc; do - pyc=${pyc//*\/} - dosym -r ${loprogdir}/__pycache__/${pyc} $(python_get_sitedir)/__pycache__/${pyc} - done < <(find "${D}"${lodir}/program -type f -name ${py/.py/*.pyc} -print0) - done - - newinitd "${FILESDIR}/libreoffice.initd" libreoffice - newconfd "${FILESDIR}/libreoffice.confd" libreoffice -} - -pkg_postinst() { - xdg_icon_cache_update - xdg_desktop_database_update - xdg_mimeinfo_database_update -} - -pkg_postrm() { - xdg_icon_cache_update - xdg_desktop_database_update - xdg_mimeinfo_database_update -} diff --git a/app-office/libreoffice/libreoffice-24.2.2.2.ebuild b/app-office/libreoffice/libreoffice-24.2.2.2.ebuild new file mode 100644 index 000000000000..b2b4c6c66ef4 --- /dev/null +++ b/app-office/libreoffice/libreoffice-24.2.2.2.ebuild @@ -0,0 +1,697 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="threads(+),xml(+)" + +MY_PV="${PV/_alpha/.alpha}" +MY_PV="${MY_PV/_beta/.beta}" +# experimental ; release ; old +# Usually the tarballs are moved a lot so this should make everyone happy. +DEV_URI=" + https://dev-builds.libreoffice.org/pre-releases/src + https://download.documentfoundation.org/libreoffice/src/${MY_PV:0:5}/ + https://downloadarchive.documentfoundation.org/libreoffice/old/${MY_PV}/src +" +ADDONS_URI="https://dev-www.libreoffice.org/src/" + +BRANDING="${PN}-branding-gentoo-0.8.tar.xz" +# PATCHSET="${P}-patchset-01.tar.xz" + +[[ ${MY_PV} == *9999* ]] && inherit git-r3 +inherit autotools bash-completion-r1 check-reqs flag-o-matic java-pkg-opt-2 multiprocessing python-single-r1 qmake-utils toolchain-funcs xdg-utils + +DESCRIPTION="A full office productivity suite" +HOMEPAGE="https://www.libreoffice.org" +SRC_URI="branding? ( https://dev.gentoo.org/~dilfridge/distfiles/${BRANDING} )" +[[ -n ${PATCHSET} ]] && SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${PATCHSET}" + +# Split modules following git/tarballs; Core MUST be first! +# Help is used for the image generator +# Only release has the tarballs +if [[ ${MY_PV} != *9999* ]]; then + for i in ${DEV_URI}; do + SRC_URI+=" ${i}/${PN}-${MY_PV}.tar.xz" + SRC_URI+=" ${i}/${PN}-help-${MY_PV}.tar.xz" + done + unset i +fi +unset DEV_URI + +# Really required addons +# These are bundles that can't be removed for now due to huge patchsets. +# If you want them gone, patches are welcome. +ADDONS_SRC=( + # not packaged in Gentoo + "${ADDONS_URI}/dragonbox-1.1.3.tar.gz" + # not packaged in Gentoo, https://www.netlib.org/fp/dtoa.c + "${ADDONS_URI}/dtoa-20180411.tgz" + # not packaged in Gentoo, https://github.com/serge-sans-paille/frozen + "${ADDONS_URI}/frozen-1.1.1.tar.gz" + # not packaged in Gentoo, https://skia.org/ + "${ADDONS_URI}/skia-m116-2ddcf183eb260f63698aa74d1bb380f247ad7ccd.tar.xz" + # not packaged in Gentoo, https://github.com/tsyrogit/zxcvbn-c + "${ADDONS_URI}/zxcvbn-c-2.5.tar.gz" + "base? ( + ${ADDONS_URI}/commons-logging-1.2-src.tar.gz + ${ADDONS_URI}/ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip + ${ADDONS_URI}/d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip + ${ADDONS_URI}/eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip + ${ADDONS_URI}/3bdf40c0d199af31923e900d082ca2dd-libfonts-1.1.6.zip + ${ADDONS_URI}/3404ab6b1792ae5f16bbd603bd1e1d03-libformula-1.1.7.zip + ${ADDONS_URI}/db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip + ${ADDONS_URI}/97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip + ${ADDONS_URI}/8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip + ${ADDONS_URI}/f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip + ${ADDONS_URI}/ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip + ${ADDONS_URI}/39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip + )" + # Java-WebSocket: not packaged in Gentoo, https://github.com/TooTallNate/Java-WebSocket + "java? ( + ${ADDONS_URI}/Java-WebSocket-1.5.4.tar.gz + ${ADDONS_URI}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip + )" + # no release for 8 years, should we package it? + "libreoffice_extensions_wiki-publisher? ( ${ADDONS_URI}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip )" + # Does not build with 1.6 rhino at all + "libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip )" + # requirement of rhino + "libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip )" + # not packageable + "odk? ( http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll )" +) +SRC_URI+=" ${ADDONS_SRC[*]}" + +unset ADDONS_URI +unset ADDONS_SRC + +# Extensions that need extra work: +LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher" + +IUSE="accessibility base bluetooth +branding clang coinmp +cups custom-cflags +dbus debug eds firebird +googledrive gstreamer +gtk kde ldap +mariadb odk pdfimport postgres qt5 qt6 test valgrind vulkan +$(printf 'libreoffice_extensions_%s ' ${LO_EXTS})" + +REQUIRED_USE="${PYTHON_REQUIRED_USE} + base? ( java ) + bluetooth? ( dbus ) + kde? ( || ( qt5 qt6 ) ) + libreoffice_extensions_nlpsolver? ( java ) + libreoffice_extensions_scripting-beanshell? ( java ) + libreoffice_extensions_scripting-javascript? ( java ) + libreoffice_extensions_wiki-publisher? ( java ) +" + +RESTRICT="!test? ( test )" + +LICENSE="|| ( LGPL-3 MPL-1.1 )" +SLOT="0" + +#[[ ${MY_PV} == *9999* ]] || \ +#KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux" + +COMMON_DEPEND="${PYTHON_DEPS} + app-arch/unzip + app-arch/zip + app-crypt/argon2:= + app-crypt/gpgme:=[cxx] + app-text/hunspell:= + >=app-text/libabw-0.1.0 + >=app-text/libebook-0.1 + app-text/libepubgen + >=app-text/libetonyek-0.1 + app-text/libexttextcat + app-text/liblangtag + >=app-text/libmspub-0.1.0 + >=app-text/libmwaw-0.3.21 + >=app-text/libnumbertext-1.0.6 + >=app-text/libodfgen-0.1.0 + app-text/libqxp + app-text/libstaroffice + app-text/libwpd:0.10[tools] + app-text/libwpg:0.3 + >=app-text/libwps-0.4 + app-text/mythes + >=dev-cpp/clucene-2.3.3.4-r2 + >=dev-cpp/libcmis-0.6.2:0= + dev-db/unixODBC + dev-lang/perl + dev-libs/boost:=[nls] + dev-libs/expat + dev-libs/hyphen + dev-libs/icu:= + dev-libs/libassuan + dev-libs/libgpg-error + >=dev-libs/liborcus-0.18.0:0/0.18 + dev-libs/librevenge + dev-libs/libxml2 + dev-libs/libxslt + dev-libs/nspr + dev-libs/nss + >=dev-libs/redland-1.0.16 + >=dev-libs/xmlsec-1.2.35:=[nss] + >=games-engines/box2d-2.4.1:0 + media-gfx/fontforge + media-gfx/graphite2 + media-libs/fontconfig + >=media-libs/freetype-2.11.0-r1:2 + >=media-libs/harfbuzz-5.1.0:=[graphite,icu] + media-libs/lcms:2 + >=media-libs/libcdr-0.1.0 + >=media-libs/libepoxy-1.3.1[X] + >=media-libs/libfreehand-0.1.0 + media-libs/libjpeg-turbo:= + media-libs/libpagemaker + >=media-libs/libpng-1.4:0= + >=media-libs/libvisio-0.1.0 + media-libs/libwebp:= + media-libs/libzmf + media-libs/openjpeg:= + media-libs/tiff:= + media-libs/zxing-cpp:= + net-misc/curl + sci-mathematics/lpsolve:= + sys-libs/zlib + virtual/opengl + x11-libs/cairo[X] + x11-libs/libXinerama + x11-libs/libXrandr + x11-libs/libXrender + accessibility? ( + $(python_gen_cond_dep 'dev-python/lxml[${PYTHON_USEDEP}]') + ) + bluetooth? ( + dev-libs/glib:2 + net-wireless/bluez + ) + coinmp? ( sci-libs/coinor-mp ) + cups? ( net-print/cups ) + dbus? ( sys-apps/dbus ) + eds? ( + dev-libs/glib:2 + >=gnome-base/dconf-0.40.0 + gnome-extra/evolution-data-server + ) + firebird? ( >=dev-db/firebird-3.0.2.32703.0-r1[server] ) + gstreamer? ( + media-libs/gstreamer:1.0 + media-libs/gst-plugins-base:1.0 + ) + gtk? ( + app-accessibility/at-spi2-core:2 + dev-libs/glib:2 + dev-libs/gobject-introspection + gnome-base/dconf + media-libs/mesa[egl(+)] + x11-libs/gtk+:3[X] + x11-libs/pango + ) + kde? ( + qt5? ( + kde-frameworks/kconfig:5 + kde-frameworks/kcoreaddons:5 + kde-frameworks/ki18n:5 + kde-frameworks/kio:5 + kde-frameworks/kwindowsystem:5 + ) + qt6? ( + kde-frameworks/kconfig:6 + kde-frameworks/kcoreaddons:6 + kde-frameworks/ki18n:6 + kde-frameworks/kio:6 + kde-frameworks/kwindowsystem:6 + ) + ) + ldap? ( net-nds/openldap:= ) + libreoffice_extensions_scripting-beanshell? ( dev-java/bsh ) + libreoffice_extensions_scripting-javascript? ( >=dev-java/rhino-1.7.14:1.6 ) + mariadb? ( dev-db/mariadb-connector-c:= ) + !mariadb? ( dev-db/mysql-connector-c:= ) + pdfimport? ( >=app-text/poppler-22.06:=[cxx] ) + postgres? ( >=dev-db/postgresql-9.0:*[kerberos] ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + dev-qt/qtx11extras:5 + ) + qt6? ( dev-qt/qtbase:6[gui,widgets] ) +" +# FIXME: cppunit should be moved to test conditional +# after everything upstream is under gbuild +# as dmake execute tests right away +# tests apparently also need google-carlito-fonts (not packaged) +DEPEND="${COMMON_DEPEND} + >=dev-libs/libatomic_ops-7.2d + dev-perl/Archive-Zip + >=dev-util/cppunit-1.14.0 + >=dev-util/gperf-3.1 + dev-util/mdds:1/2.1 + media-libs/glm + x11-base/xorg-proto + x11-libs/libXt + x11-libs/libXtst + java? ( + dev-java/ant:0 + >=virtual/jdk-17 + ) + test? ( + app-crypt/gnupg + dev-util/cppunit + media-fonts/dejavu + media-fonts/liberation-fonts + ) + valgrind? ( dev-debug/valgrind ) +" +RDEPEND="${COMMON_DEPEND} + acct-group/libreoffice + acct-user/libreoffice + !app-office/libreoffice-bin + !app-office/libreoffice-bin-debug + media-fonts/liberation-fonts + || ( x11-misc/xdg-utils kde-plasma/kde-cli-tools:* ) + java? ( >=virtual/jre-11 ) + kde? ( kde-frameworks/breeze-icons:* ) +" +BDEPEND=" + dev-util/intltool + sys-apps/which + app-alternatives/yacc + app-alternatives/lex + sys-devel/gettext + virtual/pkgconfig + clang? ( + || ( + ( sys-devel/clang:18 + sys-devel/llvm:18 + =sys-devel/lld-18* ) + ( sys-devel/clang:17 + sys-devel/llvm:17 + =sys-devel/lld-17* ) + ( sys-devel/clang:16 + sys-devel/llvm:16 + =sys-devel/lld-16* ) + ( sys-devel/clang:15 + sys-devel/llvm:15 + =sys-devel/lld-15* ) + ) + ) + odk? ( >=app-text/doxygen-1.8.4 ) +" +if [[ ${MY_PV} != *9999* ]] && [[ ${PV} != *_* ]]; then + PDEPEND="=app-office/libreoffice-l10n-$(ver_cut 1-2)*" +else + # Translations are not reliable on live ebuilds + # rather force people to use english only. + RDEPEND+=" !app-office/libreoffice-l10n" +fi + +PATCHES=( + # "${WORKDIR}"/${PATCHSET/.tar.xz/} + + # not upstreamable stuff + "${FILESDIR}/${PN}-5.3.4.2-kioclient5.patch" + "${FILESDIR}/${PN}-6.1-nomancompress.patch" + "${FILESDIR}/${PN}-24.2-qtdetect.patch" + + # maybe upstreamable + "${FILESDIR}/${PN}-7.5.8.2-icu-74-compatibility.patch" + + # TODO: upstream + "${FILESDIR}/${PN}-7.6-unused-qt5network.patch" + "${FILESDIR}/${PN}-24.2-unused-qt6network.patch" +) + +S="${WORKDIR}/${PN}-${MY_PV}" + +_check_reqs() { + CHECKREQS_MEMORY="512M" + if is-flagq "-g*" && ! is-flagq "-g*0" ; then + CHECKREQS_DISK_BUILD="22G" + else + CHECKREQS_DISK_BUILD="6G" + fi + check-reqs_$1 +} + +pkg_pretend() { + use base || + ewarn "If you plan to use Base application you must enable USE base." + use java || + ewarn "Without USE java, several wizards are not going to be available." + + [[ ${MERGE_TYPE} != binary ]] && _check_reqs pkg_pretend +} + +pkg_setup() { + java-pkg-opt-2_pkg_setup + python-single-r1_pkg_setup + xdg_environment_reset + + [[ ${MERGE_TYPE} != binary ]] && _check_reqs pkg_setup +} + +src_unpack() { + default + + if [[ ${MY_PV} = *9999* ]]; then + local base_uri branch mypv + base_uri="https://anongit.freedesktop.org/git" + branch="master" + mypv=${MY_PV/.9999} + [[ ${mypv} != ${MY_PV} ]] && branch="${PN}-${mypv/./-}" + git-r3_fetch "${base_uri}/${PN}/core" "refs/heads/${branch}" + git-r3_checkout "${base_uri}/${PN}/core" + LOCOREGIT_VERSION=${EGIT_VERSION} + + git-r3_fetch "${base_uri}/${PN}/help" "refs/heads/master" + git-r3_checkout "${base_uri}/${PN}/help" "helpcontent2" # doesn't match on help + fi +} + +src_prepare() { + default + + # sandbox violations on many systems, we don't need it. Bug #646406 + sed -i \ + -e "/KF5_CONFIG/s/kf5-config/no/" \ + configure.ac || die "Failed to disable kf5-config" + + AT_M4DIR="m4" eautoreconf + # hack in the autogen.sh + touch autogen.lastrun + + # sed in the tests + sed -i \ + -e "s#all : build unitcheck#all : build#g" \ + solenv/gbuild/Module.mk || die + sed -i \ + -e "s#check: dev-install subsequentcheck#check: unitcheck slowcheck dev-install subsequentcheck#g" \ + -e "s#Makefile.gbuild all slowcheck#Makefile.gbuild all#g" \ + Makefile.in || die + + sed -i \ + -e "s,/usr/share/bash-completion/completions,$(get_bashcompdir)," \ + -e "s,\$INSTALLDIRNAME.sh,${PN}," \ + bin/distro-install-desktop-integration || die + + if use branding; then + # hack... + mv -v "${WORKDIR}/branding-intro.png" "icon-themes/colibre/brand/intro.png" || die + fi + + # Don't list pdfimport support in desktop when built with none, bug # 605464 + if ! use pdfimport; then + sed -i \ + -e ":MimeType: s:application/pdf;::" \ + -e ":Keywords: s:pdf;::" \ + sysui/desktop/menus/draw.desktop || die + fi +} + +src_configure() { + # Set up Google API keys, see https://www.chromium.org/developers/how-tos/api-keys + # Note: these are for Gentoo use ONLY. For your own distribution, please get + # your own set of keys. Feel free to contact chromium@gentoo.org for more info. + local google_default_client_id="329227923882.apps.googleusercontent.com" + local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu" + + # Show flags set at the beginning + einfo "Preset CFLAGS: ${CFLAGS}" + einfo "Preset LDFLAGS: ${LDFLAGS}" + + # Workaround for bug #915067 + append-ldflags $(test-flags-CCLD -Wl,--undefined-version) + + if use clang ; then + # Force clang + einfo "Enforcing the use of clang due to USE=clang ..." + AR=llvm-ar + CC=${CHOST}-clang + CXX=${CHOST}-clang++ + NM=llvm-nm + RANLIB=llvm-ranlib + LDFLAGS+=" -fuse-ld=lld" + + # Workaround for bug #907905 + filter-lto + + # Not implemented by Clang, bug #903889 + filter-flags -Wlto-type-mismatch -Werror=lto-type-mismatch + else + # Force gcc + 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 + + # Apparently the Clang flags get used even for GCC builds sometimes. + # bug #838115 + sed -i -e "s/-flto=thin/-flto/" solenv/gbuild/platform/com_GCC_defs.mk || die + fi + + if use custom-cflags ; then + elog "USE=custom-cflags has been selected. You are on your own to make sure that" + elog "the build succeeds. Good luck!" + else + strip-flags + fi + + export LO_CLANG_CC=${CC} + export LO_CLANG_CXX=${CXX} + + # Show flags set at the end + einfo " Used CFLAGS: ${CFLAGS}" + einfo " Used LDFLAGS: ${LDFLAGS}" + + # Ensure we use correct toolchain + tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG + + # optimization flags + export GMAKE_OPTIONS="${MAKEOPTS}" + # System python enablement: + export PYTHON_CFLAGS=$(python_get_CFLAGS) + export PYTHON_LIBS=$(python_get_LIBS) + + if use qt5; then + export QT5DIR="$(qt5_get_bindir)/.." + fi + if use qt6; then + export QT6DIR="$(qt6_get_bindir)/.." + fi + + local gentoo_buildid="Gentoo official package" + if [[ -n ${LOCOREGIT_VERSION} ]]; then + gentoo_buildid+=" (from git: ${LOCOREGIT_VERSION})" + fi + + # system headers/libs/...: enforce using system packages + # --disable-breakpad: requires not-yet-in-tree dev-utils/breakpad + # --enable-cairo: ensure that cairo is always required + # --enable-*-link: link to the library rather than just dlopen on runtime + # --enable-release-build: build the libreoffice as release + # --disable-fetch-external: prevent dowloading during compile phase + # --enable-extension-integration: enable any extension integration support + # --without-{fonts,myspell-dicts,ppsd}: prevent install of sys pkgs + # --disable-report-builder: too much java packages pulled in without pkgs + # --without-system-sane: just sane.h header that is used for scan in writer, + # not linked or anything else, worthless to depend on + # --disable-pdfium: not yet packaged + local myeconfargs=( + --with-system-dicts + --with-system-epoxy + --with-system-headers + --with-system-jars + --with-system-libs + --enable-build-opensymbol + --enable-cairo-canvas + --enable-largefile + --enable-mergelibs=more + --enable-python=system + --enable-randr + --enable-release-build + --disable-breakpad + --disable-bundle-mariadb + --disable-ccache + --disable-epm + --disable-fetch-external + --disable-gtk3-kde5 + --disable-online-update + --disable-openssl + --disable-pdfium + --with-extra-buildid="${gentoo_buildid}" + --enable-extension-integration + --with-external-dict-dir="${EPREFIX}/usr/share/myspell" + --with-external-hyph-dir="${EPREFIX}/usr/share/myspell" + --with-external-thes-dir="${EPREFIX}/usr/share/myspell" + --with-external-tar="${DISTDIR}" + --with-lang="" + --with-parallelism=$(makeopts_jobs) + --with-system-openjpeg + --with-tls=nss + --with-vendor="Gentoo Foundation" + --with-x + --without-fonts + --without-myspell-dicts + --with-help="html" + --without-helppack-integration + --with-system-gpgmepp + --without-system-abseil + --without-system-dragonbox + --without-system-frozen + --without-system-jfreereport + --without-system-libfixmath + --without-system-sane + --without-system-zxcvbn + $(use_enable base report-builder) + $(use_enable bluetooth sdremote-bluetooth) + $(use_enable coinmp) + $(use_enable cups) + $(use_enable dbus) + $(use_enable debug) + $(use_enable eds evolution2) + $(use_enable firebird firebird-sdbc) + $(use_enable gstreamer gstreamer-1-0) + $(use_enable gtk gtk3) + $(use_enable ldap) + $(use_enable odk) + $(use_enable pdfimport) + $(use_enable postgres postgresql-sdbc) + $(use_enable qt5) + $(use_enable qt6) + $(use_enable vulkan skia) + $(use_with accessibility lxml) + $(use_with coinmp system-coinmp) + $(use_with googledrive gdrive-client-id ${google_default_client_id}) + $(use_with googledrive gdrive-client-secret ${google_default_client_secret}) + $(use_with java) + $(use_with odk doxygen) + $(use_with valgrind) + ) + + use qt5 && myeconfargs+=( $(use_enable kde kf5) ) + use qt6 && myeconfargs+=( $(use_enable kde kf6) ) + + if use eds || use gtk; then + myeconfargs+=( --enable-dconf --enable-gio ) + else + myeconfargs+=( --disable-dconf --disable-gio ) + fi + + # libreoffice extensions handling + for lo_xt in ${LO_EXTS}; do + if [[ "${lo_xt}" == "scripting-beanshell" || "${lo_xt}" == "scripting-javascript" ]]; then + myeconfargs+=( $(use_enable libreoffice_extensions_${lo_xt} ${lo_xt}) ) + else + myeconfargs+=( $(use_enable libreoffice_extensions_${lo_xt} ext-${lo_xt}) ) + fi + done + + if use java; then + # hsqldb: system one is too new + myeconfargs+=( + --without-junit + --without-system-hsqldb + --with-ant-home="${ANT_HOME}" + --with-jdk-home="${JAVA_HOME}" + ) + + use libreoffice_extensions_scripting-beanshell && \ + myeconfargs+=( --with-beanshell-jar=$(java-pkg_getjar bsh bsh.jar) ) + + use libreoffice_extensions_scripting-javascript && \ + myeconfargs+=( --with-rhino-jar=$(java-pkg_getjar rhino-1.6 rhino.jar) ) + fi + + tc-is-lto && myeconfargs+=( --enable-lto ) + + MARIADBCONFIG="$(type -p $(usex mariadb mariadb mysql)_config)" \ + econf "${myeconfargs[@]}" +} + +src_compile() { + # more and more LO stuff tries to use OpenGL, including tests during build + # bug 501508, bug 540624, bug 545974 and probably more + addpredict /dev/dri + addpredict /dev/ati + addpredict /dev/nvidiactl + + default +} + +src_test() { + emake unitcheck + emake slowcheck +} + +src_install() { + emake DESTDIR="${D}" distro-pack-install -o build -o check + + # bug 593514 + if use gtk; then + dosym libreoffice/program/liblibreofficekitgtk.so \ + /usr/$(get_libdir)/liblibreofficekitgtk.so + fi + + # bash completion aliases + bashcomp_alias \ + libreoffice \ + unopkg loimpress lobase localc lodraw lomath lowriter lofromtemplate loweb loffice + + if use branding; then + insinto /usr/$(get_libdir)/${PN}/program + newins "${WORKDIR}/branding-sofficerc" sofficerc + dodir /etc/env.d + echo "CONFIG_PROTECT=/usr/$(get_libdir)/${PN}/program/sofficerc" > "${ED}"/etc/env.d/99${PN} || die + fi + + # bug 703474 + insinto /usr/include + doins -r include/LibreOfficeKit + + local lodir=/usr/$(get_libdir)/libreoffice + # patching this would break tests + cat <<-EOF > "${T}"/uno.py +import sys, os +sys.path.append('${EPREFIX}${lodir}/program') +os.putenv('URE_BOOTSTRAP', 'vnd.sun.star.pathname:${EPREFIX}${lodir}/program/fundamentalrc') +EOF + sed -e "/^import sys/d" -e "/^import os/d" \ + -i "${D}"${lodir}/program/uno.py || die "cleanup dupl imports failed" + cat "${D}"${lodir}/program/uno.py >> "${T}"/uno.py || die + cp "${T}"/uno.py "${D}"${lodir}/program/uno.py || die + + # more system pyuno mess + sed -e "/sOffice = \"\" # lets hope for the best/s:\"\":\"${EPREFIX}${lodir}/program\":" \ + -i "${D}"${lodir}/program/officehelper.py || die + + python_optimize "${D}"${lodir}/program + # link python bridge in site-packages, bug 667802 + local py pyc loprogdir=/usr/$(get_libdir)/libreoffice/program + for py in uno.py unohelper.py officehelper.py; do + dosym -r ${loprogdir}/${py} $(python_get_sitedir)/${py} + while IFS="" read -d $'\0' -r pyc; do + pyc=${pyc//*\/} + dosym -r ${loprogdir}/__pycache__/${pyc} $(python_get_sitedir)/__pycache__/${pyc} + done < <(find "${D}"${lodir}/program -type f -name ${py/.py/*.pyc} -print0) + done + + newinitd "${FILESDIR}/libreoffice.initd" libreoffice + newconfd "${FILESDIR}/libreoffice.confd" libreoffice +} + +pkg_postinst() { + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update +} + +pkg_postrm() { + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update +} diff --git a/app-office/libreoffice/libreoffice-24.2.9999.ebuild b/app-office/libreoffice/libreoffice-24.2.9999.ebuild index 7e6c19c6cac2..1d2cd2085e48 100644 --- a/app-office/libreoffice/libreoffice-24.2.9999.ebuild +++ b/app-office/libreoffice/libreoffice-24.2.9999.ebuild @@ -315,6 +315,10 @@ PATCHES=( "${FILESDIR}/${PN}-5.3.4.2-kioclient5.patch" "${FILESDIR}/${PN}-6.1-nomancompress.patch" "${FILESDIR}/${PN}-24.2-qtdetect.patch" + + # TODO: upstream + "${FILESDIR}/${PN}-7.6-unused-qt5network.patch" + "${FILESDIR}/${PN}-24.2-unused-qt6network.patch" ) S="${WORKDIR}/${PN}-${MY_PV}" diff --git a/app-office/libreoffice/libreoffice-7.6.6.1.ebuild b/app-office/libreoffice/libreoffice-7.6.6.1.ebuild deleted file mode 100644 index 0876e72c14a8..000000000000 --- a/app-office/libreoffice/libreoffice-7.6.6.1.ebuild +++ /dev/null @@ -1,668 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..12} ) -PYTHON_REQ_USE="threads(+),xml(+)" - -MY_PV="${PV/_alpha/.alpha}" -MY_PV="${MY_PV/_beta/.beta}" -# experimental ; release ; old -# Usually the tarballs are moved a lot so this should make everyone happy. -DEV_URI=" - https://dev-builds.libreoffice.org/pre-releases/src - https://download.documentfoundation.org/libreoffice/src/${MY_PV:0:5}/ - https://downloadarchive.documentfoundation.org/libreoffice/old/${MY_PV}/src -" -ADDONS_URI="https://dev-www.libreoffice.org/src/" - -BRANDING="${PN}-branding-gentoo-0.8.tar.xz" -# PATCHSET="${P}-patchset-01.tar.xz" - -[[ ${MY_PV} == *9999* ]] && inherit git-r3 -inherit autotools bash-completion-r1 check-reqs flag-o-matic java-pkg-opt-2 multiprocessing python-single-r1 qmake-utils toolchain-funcs xdg-utils - -DESCRIPTION="A full office productivity suite" -HOMEPAGE="https://www.libreoffice.org" -SRC_URI="branding? ( https://dev.gentoo.org/~dilfridge/distfiles/${BRANDING} )" -[[ -n ${PATCHSET} ]] && SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${PATCHSET}" - -# Split modules following git/tarballs; Core MUST be first! -# Help is used for the image generator -# Only release has the tarballs -if [[ ${MY_PV} != *9999* ]]; then - for i in ${DEV_URI}; do - SRC_URI+=" ${i}/${PN}-${MY_PV}.tar.xz" - SRC_URI+=" ${i}/${PN}-help-${MY_PV}.tar.xz" - done - unset i -fi -unset DEV_URI - -# Really required addons -# These are bundles that can't be removed for now due to huge patchsets. -# If you want them gone, patches are welcome. -ADDONS_SRC=( - # not packaged in Gentoo - "${ADDONS_URI}/dragonbox-1.1.3.tar.gz" - # not packaged in Gentoo, https://www.netlib.org/fp/dtoa.c - "${ADDONS_URI}/dtoa-20180411.tgz" - # not packaged in Gentoo, https://github.com/serge-sans-paille/frozen - "${ADDONS_URI}/frozen-1.1.1.tar.gz" - # not packaged in Gentoo, https://skia.org/ - "${ADDONS_URI}/skia-m111-a31e897fb3dcbc96b2b40999751611d029bf5404.tar.xz" - "base? ( - ${ADDONS_URI}/commons-logging-1.2-src.tar.gz - ${ADDONS_URI}/ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip - ${ADDONS_URI}/d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip - ${ADDONS_URI}/eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip - ${ADDONS_URI}/3bdf40c0d199af31923e900d082ca2dd-libfonts-1.1.6.zip - ${ADDONS_URI}/3404ab6b1792ae5f16bbd603bd1e1d03-libformula-1.1.7.zip - ${ADDONS_URI}/db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip - ${ADDONS_URI}/97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip - ${ADDONS_URI}/8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip - ${ADDONS_URI}/f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip - ${ADDONS_URI}/ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip - ${ADDONS_URI}/39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip - )" - "java? ( ${ADDONS_URI}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip )" - # no release for 8 years, should we package it? - "libreoffice_extensions_wiki-publisher? ( ${ADDONS_URI}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip )" - # Does not build with 1.6 rhino at all - "libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip )" - # requirement of rhino - "libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip )" - # not packageable - "odk? ( http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll )" -) -SRC_URI+=" ${ADDONS_SRC[*]}" - -unset ADDONS_URI -unset ADDONS_SRC - -# Extensions that need extra work: -LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher" - -IUSE="accessibility base bluetooth +branding clang coinmp +cups custom-cflags +dbus debug eds firebird -googledrive gstreamer +gtk kde ldap +mariadb odk pdfimport postgres test valgrind vulkan -$(printf 'libreoffice_extensions_%s ' ${LO_EXTS})" - -REQUIRED_USE="${PYTHON_REQUIRED_USE} - base? ( java ) - bluetooth? ( dbus ) - libreoffice_extensions_nlpsolver? ( java ) - libreoffice_extensions_scripting-beanshell? ( java ) - libreoffice_extensions_scripting-javascript? ( java ) - libreoffice_extensions_wiki-publisher? ( java ) -" - -RESTRICT="!test? ( test )" - -LICENSE="|| ( LGPL-3 MPL-1.1 )" -SLOT="0" - -# [[ ${MY_PV} == *9999* ]] || \ -# KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux" - -COMMON_DEPEND="${PYTHON_DEPS} - app-arch/unzip - app-arch/zip - app-crypt/gpgme:=[cxx] - app-text/hunspell:= - >=app-text/libabw-0.1.0 - >=app-text/libebook-0.1 - app-text/libepubgen - >=app-text/libetonyek-0.1 - app-text/libexttextcat - app-text/liblangtag - >=app-text/libmspub-0.1.0 - >=app-text/libmwaw-0.3.21 - >=app-text/libnumbertext-1.0.6 - >=app-text/libodfgen-0.1.0 - app-text/libqxp - app-text/libstaroffice - app-text/libwpd:0.10[tools] - app-text/libwpg:0.3 - >=app-text/libwps-0.4 - app-text/mythes - >=dev-cpp/clucene-2.3.3.4-r2 - >=dev-cpp/libcmis-0.6.2:0= - dev-db/unixODBC - dev-lang/perl - dev-libs/boost:=[nls] - dev-libs/expat - dev-libs/hyphen - dev-libs/icu:= - dev-libs/libassuan - dev-libs/libgpg-error - >=dev-libs/liborcus-0.18.0:0/0.18 - dev-libs/librevenge - dev-libs/libxml2 - dev-libs/libxslt - dev-libs/nspr - dev-libs/nss - >=dev-libs/redland-1.0.16 - >=dev-libs/xmlsec-1.2.35:=[nss] - >=games-engines/box2d-2.4.1:0 - media-gfx/fontforge - media-gfx/graphite2 - media-libs/fontconfig - >=media-libs/freetype-2.11.0-r1:2 - >=media-libs/harfbuzz-5.1.0:=[graphite,icu] - media-libs/lcms:2 - >=media-libs/libcdr-0.1.0 - >=media-libs/libepoxy-1.3.1[X] - >=media-libs/libfreehand-0.1.0 - media-libs/libjpeg-turbo:= - media-libs/libpagemaker - >=media-libs/libpng-1.4:0= - >=media-libs/libvisio-0.1.0 - media-libs/libwebp:= - media-libs/libzmf - media-libs/openjpeg:= - media-libs/tiff:= - media-libs/zxing-cpp:= - net-misc/curl - sci-mathematics/lpsolve:= - sys-libs/zlib - virtual/opengl - x11-libs/cairo[X] - x11-libs/libXinerama - x11-libs/libXrandr - x11-libs/libXrender - accessibility? ( - $(python_gen_cond_dep 'dev-python/lxml[${PYTHON_USEDEP}]') - ) - bluetooth? ( - dev-libs/glib:2 - net-wireless/bluez - ) - coinmp? ( sci-libs/coinor-mp ) - cups? ( net-print/cups ) - dbus? ( sys-apps/dbus ) - eds? ( - dev-libs/glib:2 - >=gnome-base/dconf-0.40.0 - gnome-extra/evolution-data-server - ) - firebird? ( >=dev-db/firebird-3.0.2.32703.0-r1[server] ) - gstreamer? ( - media-libs/gstreamer:1.0 - media-libs/gst-plugins-base:1.0 - ) - gtk? ( - app-accessibility/at-spi2-core:2 - dev-libs/glib:2 - dev-libs/gobject-introspection - gnome-base/dconf - media-libs/mesa[egl(+)] - x11-libs/gtk+:3[X] - x11-libs/pango - ) - kde? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtwidgets:5 - dev-qt/qtx11extras:5 - kde-frameworks/kconfig:5 - kde-frameworks/kcoreaddons:5 - kde-frameworks/ki18n:5 - kde-frameworks/kio:5 - kde-frameworks/kwindowsystem:5 - ) - ldap? ( net-nds/openldap:= ) - libreoffice_extensions_scripting-beanshell? ( dev-java/bsh ) - libreoffice_extensions_scripting-javascript? ( >=dev-java/rhino-1.7.14:1.6 ) - mariadb? ( dev-db/mariadb-connector-c:= ) - !mariadb? ( dev-db/mysql-connector-c:= ) - pdfimport? ( >=app-text/poppler-22.06:=[cxx] ) - postgres? ( >=dev-db/postgresql-9.0:*[kerberos] ) -" -# FIXME: cppunit should be moved to test conditional -# after everything upstream is under gbuild -# as dmake execute tests right away -# tests apparently also need google-carlito-fonts (not packaged) -DEPEND="${COMMON_DEPEND} - >=dev-libs/libatomic_ops-7.2d - dev-perl/Archive-Zip - >=dev-util/cppunit-1.14.0 - >=dev-util/gperf-3.1 - dev-util/mdds:1/2.1 - media-libs/glm - x11-base/xorg-proto - x11-libs/libXt - x11-libs/libXtst - java? ( - dev-java/ant:0 - >=virtual/jdk-11 - ) - test? ( - app-crypt/gnupg - dev-util/cppunit - media-fonts/dejavu - media-fonts/liberation-fonts - ) - valgrind? ( dev-debug/valgrind ) -" -RDEPEND="${COMMON_DEPEND} - acct-group/libreoffice - acct-user/libreoffice - !app-office/libreoffice-bin - !app-office/libreoffice-bin-debug - media-fonts/liberation-fonts - || ( x11-misc/xdg-utils kde-plasma/kde-cli-tools ) - java? ( >=virtual/jre-11 ) - kde? ( kde-frameworks/breeze-icons:* ) -" -BDEPEND=" - dev-util/intltool - sys-apps/which - app-alternatives/yacc - app-alternatives/lex - sys-devel/gettext - virtual/pkgconfig - clang? ( - || ( - ( sys-devel/clang:18 - sys-devel/llvm:18 - =sys-devel/lld-18* ) - ( sys-devel/clang:17 - sys-devel/llvm:17 - =sys-devel/lld-17* ) - ( sys-devel/clang:16 - sys-devel/llvm:16 - =sys-devel/lld-16* ) - ( sys-devel/clang:15 - sys-devel/llvm:15 - =sys-devel/lld-15* ) - ) - ) - odk? ( >=app-text/doxygen-1.8.4 ) -" -if [[ ${MY_PV} != *9999* ]] && [[ ${PV} != *_* ]]; then - PDEPEND="=app-office/libreoffice-l10n-$(ver_cut 1-2)*" -else - # Translations are not reliable on live ebuilds - # rather force people to use english only. - RDEPEND+=" !app-office/libreoffice-l10n" -fi - -PATCHES=( - # "${WORKDIR}"/${PATCHSET/.tar.xz/} - - # not upstreamable stuff - "${FILESDIR}/${PN}-5.3.4.2-kioclient5.patch" - "${FILESDIR}/${PN}-6.1-nomancompress.patch" - "${FILESDIR}/${PN}-7.2.0.4-qt5detect.patch" - - # 7.6 branch: - "${FILESDIR}/${PN}-7.6.6.1-detect-plasma6.patch" # bug 926227 - - # maybe upstreamable - "${FILESDIR}/${PN}-7.5.8.2-icu-74-compatibility.patch" -) - -S="${WORKDIR}/${PN}-${MY_PV}" - -_check_reqs() { - CHECKREQS_MEMORY="512M" - if is-flagq "-g*" && ! is-flagq "-g*0" ; then - CHECKREQS_DISK_BUILD="22G" - else - CHECKREQS_DISK_BUILD="6G" - fi - check-reqs_$1 -} - -pkg_pretend() { - use base || - ewarn "If you plan to use Base application you must enable USE base." - use java || - ewarn "Without USE java, several wizards are not going to be available." - - [[ ${MERGE_TYPE} != binary ]] && _check_reqs pkg_pretend -} - -pkg_setup() { - java-pkg-opt-2_pkg_setup - python-single-r1_pkg_setup - xdg_environment_reset - - [[ ${MERGE_TYPE} != binary ]] && _check_reqs pkg_setup -} - -src_unpack() { - default - - if [[ ${MY_PV} = *9999* ]]; then - local base_uri branch mypv - base_uri="https://anongit.freedesktop.org/git" - branch="master" - mypv=${MY_PV/.9999} - [[ ${mypv} != ${MY_PV} ]] && branch="${PN}-${mypv/./-}" - git-r3_fetch "${base_uri}/${PN}/core" "refs/heads/${branch}" - git-r3_checkout "${base_uri}/${PN}/core" - LOCOREGIT_VERSION=${EGIT_VERSION} - - git-r3_fetch "${base_uri}/${PN}/help" "refs/heads/master" - git-r3_checkout "${base_uri}/${PN}/help" "helpcontent2" # doesn't match on help - fi -} - -src_prepare() { - default - - # sandbox violations on many systems, we don't need it. Bug #646406 - sed -i \ - -e "/KF5_CONFIG/s/kf5-config/no/" \ - configure.ac || die "Failed to disable kf5-config" - - AT_M4DIR="m4" eautoreconf - # hack in the autogen.sh - touch autogen.lastrun - - # sed in the tests - sed -i \ - -e "s#all : build unitcheck#all : build#g" \ - solenv/gbuild/Module.mk || die - sed -i \ - -e "s#check: dev-install subsequentcheck#check: unitcheck slowcheck dev-install subsequentcheck#g" \ - -e "s#Makefile.gbuild all slowcheck#Makefile.gbuild all#g" \ - Makefile.in || die - - sed -i \ - -e "s,/usr/share/bash-completion/completions,$(get_bashcompdir)," \ - -e "s,\$INSTALLDIRNAME.sh,${PN}," \ - bin/distro-install-desktop-integration || die - - if use branding; then - # hack... - mv -v "${WORKDIR}/branding-intro.png" "icon-themes/colibre/brand/intro.png" || die - fi - - # Don't list pdfimport support in desktop when built with none, bug # 605464 - if ! use pdfimport; then - sed -i \ - -e ":MimeType: s:application/pdf;::" \ - -e ":Keywords: s:pdf;::" \ - sysui/desktop/menus/draw.desktop || die - fi -} - -src_configure() { - # Set up Google API keys, see https://www.chromium.org/developers/how-tos/api-keys - # Note: these are for Gentoo use ONLY. For your own distribution, please get - # your own set of keys. Feel free to contact chromium@gentoo.org for more info. - local google_default_client_id="329227923882.apps.googleusercontent.com" - local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu" - - # Show flags set at the beginning - einfo "Preset CFLAGS: ${CFLAGS}" - einfo "Preset LDFLAGS: ${LDFLAGS}" - - # Workaround for bug #915067 - append-ldflags $(test-flags-CCLD -Wl,--undefined-version) - - if use clang ; then - # Force clang - einfo "Enforcing the use of clang due to USE=clang ..." - AR=llvm-ar - CC=${CHOST}-clang - CXX=${CHOST}-clang++ - NM=llvm-nm - RANLIB=llvm-ranlib - LDFLAGS+=" -fuse-ld=lld" - - # Workaround for bug #907905 - filter-lto - - # Not implemented by Clang, bug #903889 - filter-flags -Wlto-type-mismatch -Werror=lto-type-mismatch - else - # Force gcc - 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 - - # Apparently the Clang flags get used even for GCC builds sometimes. - # bug #838115 - sed -i -e "s/-flto=thin/-flto/" solenv/gbuild/platform/com_GCC_defs.mk || die - fi - - if use custom-cflags ; then - elog "USE=custom-cflags has been selected. You are on your own to make sure that" - elog "the build succeeds. Good luck!" - else - strip-flags - fi - - export LO_CLANG_CC=${CC} - export LO_CLANG_CXX=${CXX} - - # Show flags set at the end - einfo " Used CFLAGS: ${CFLAGS}" - einfo " Used LDFLAGS: ${LDFLAGS}" - - # Ensure we use correct toolchain - tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG - - # optimization flags - export GMAKE_OPTIONS="${MAKEOPTS}" - # System python enablement: - export PYTHON_CFLAGS=$(python_get_CFLAGS) - export PYTHON_LIBS=$(python_get_LIBS) - - use kde && export QT5DIR="$(qt5_get_bindir)/.." - - local gentoo_buildid="Gentoo official package" - if [[ -n ${LOCOREGIT_VERSION} ]]; then - gentoo_buildid+=" (from git: ${LOCOREGIT_VERSION})" - fi - - # system headers/libs/...: enforce using system packages - # --disable-breakpad: requires not-yet-in-tree dev-utils/breakpad - # --enable-cairo: ensure that cairo is always required - # --enable-*-link: link to the library rather than just dlopen on runtime - # --enable-release-build: build the libreoffice as release - # --disable-fetch-external: prevent dowloading during compile phase - # --enable-extension-integration: enable any extension integration support - # --without-{fonts,myspell-dicts,ppsd}: prevent install of sys pkgs - # --disable-report-builder: too much java packages pulled in without pkgs - # --without-system-sane: just sane.h header that is used for scan in writer, - # not linked or anything else, worthless to depend on - # --disable-pdfium: not yet packaged - local myeconfargs=( - --with-system-dicts - --with-system-epoxy - --with-system-headers - --with-system-jars - --with-system-libs - --enable-build-opensymbol - --enable-cairo-canvas - --enable-largefile - --enable-mergelibs - --enable-python=system - --enable-randr - --enable-release-build - --disable-breakpad - --disable-bundle-mariadb - --disable-ccache - --disable-epm - --disable-fetch-external - --disable-gtk3-kde5 - --disable-online-update - --disable-openssl - --disable-pdfium - --disable-qt6 - --with-extra-buildid="${gentoo_buildid}" - --enable-extension-integration - --with-external-dict-dir="${EPREFIX}/usr/share/myspell" - --with-external-hyph-dir="${EPREFIX}/usr/share/myspell" - --with-external-thes-dir="${EPREFIX}/usr/share/myspell" - --with-external-tar="${DISTDIR}" - --with-lang="" - --with-parallelism=$(makeopts_jobs) - --with-system-openjpeg - --with-tls=nss - --with-vendor="Gentoo Foundation" - --with-x - --without-fonts - --without-myspell-dicts - --with-help="html" - --without-helppack-integration - --with-system-gpgmepp - --without-system-abseil - --without-system-dragonbox - --without-system-frozen - --without-system-jfreereport - --without-system-libfixmath - --without-system-sane - $(use_enable base report-builder) - $(use_enable bluetooth sdremote-bluetooth) - $(use_enable coinmp) - $(use_enable cups) - $(use_enable dbus) - $(use_enable debug) - $(use_enable eds evolution2) - $(use_enable firebird firebird-sdbc) - $(use_enable gstreamer gstreamer-1-0) - $(use_enable gtk gtk3) - $(use_enable kde kf5) - $(use_enable kde qt5) - $(use_enable ldap) - $(use_enable odk) - $(use_enable pdfimport) - $(use_enable postgres postgresql-sdbc) - $(use_enable vulkan skia) - $(use_with accessibility lxml) - $(use_with coinmp system-coinmp) - $(use_with googledrive gdrive-client-id ${google_default_client_id}) - $(use_with googledrive gdrive-client-secret ${google_default_client_secret}) - $(use_with java) - $(use_with odk doxygen) - $(use_with valgrind) - ) - - if use eds || use gtk; then - myeconfargs+=( --enable-dconf --enable-gio ) - else - myeconfargs+=( --disable-dconf --disable-gio ) - fi - - # libreoffice extensions handling - for lo_xt in ${LO_EXTS}; do - if [[ "${lo_xt}" == "scripting-beanshell" || "${lo_xt}" == "scripting-javascript" ]]; then - myeconfargs+=( $(use_enable libreoffice_extensions_${lo_xt} ${lo_xt}) ) - else - myeconfargs+=( $(use_enable libreoffice_extensions_${lo_xt} ext-${lo_xt}) ) - fi - done - - if use java; then - # hsqldb: system one is too new - myeconfargs+=( - --without-junit - --without-system-hsqldb - --with-ant-home="${ANT_HOME}" - --with-jdk-home="${JAVA_HOME}" - ) - - use libreoffice_extensions_scripting-beanshell && \ - myeconfargs+=( --with-beanshell-jar=$(java-pkg_getjar bsh bsh.jar) ) - - use libreoffice_extensions_scripting-javascript && \ - myeconfargs+=( --with-rhino-jar=$(java-pkg_getjar rhino-1.6 rhino.jar) ) - fi - - tc-is-lto && myeconfargs+=( --enable-lto ) - - MARIADBCONFIG="$(type -p $(usex mariadb mariadb mysql)_config)" \ - econf "${myeconfargs[@]}" -} - -src_compile() { - # more and more LO stuff tries to use OpenGL, including tests during build - # bug 501508, bug 540624, bug 545974 and probably more - addpredict /dev/dri - addpredict /dev/ati - addpredict /dev/nvidiactl - - default -} - -src_test() { - emake unitcheck - emake slowcheck -} - -src_install() { - emake DESTDIR="${D}" distro-pack-install -o build -o check - - # bug 593514 - if use gtk; then - dosym libreoffice/program/liblibreofficekitgtk.so \ - /usr/$(get_libdir)/liblibreofficekitgtk.so - fi - - # bash completion aliases - bashcomp_alias \ - libreoffice \ - unopkg loimpress lobase localc lodraw lomath lowriter lofromtemplate loweb loffice - - if use branding; then - insinto /usr/$(get_libdir)/${PN}/program - newins "${WORKDIR}/branding-sofficerc" sofficerc - dodir /etc/env.d - echo "CONFIG_PROTECT=/usr/$(get_libdir)/${PN}/program/sofficerc" > "${ED}"/etc/env.d/99${PN} || die - fi - - # bug 703474 - insinto /usr/include - doins -r include/LibreOfficeKit - - local lodir=/usr/$(get_libdir)/libreoffice - # patching this would break tests - cat <<-EOF > "${T}"/uno.py -import sys, os -sys.path.append('${EPREFIX}${lodir}/program') -os.putenv('URE_BOOTSTRAP', 'vnd.sun.star.pathname:${EPREFIX}${lodir}/program/fundamentalrc') -EOF - sed -e "/^import sys/d" -e "/^import os/d" \ - -i "${D}"${lodir}/program/uno.py || die "cleanup dupl imports failed" - cat "${D}"${lodir}/program/uno.py >> "${T}"/uno.py || die - cp "${T}"/uno.py "${D}"${lodir}/program/uno.py || die - - # more system pyuno mess - sed -e "/sOffice = \"\" # lets hope for the best/s:\"\":\"${EPREFIX}${lodir}/program\":" \ - -i "${D}"${lodir}/program/officehelper.py || die - - python_optimize "${D}"${lodir}/program - # link python bridge in site-packages, bug 667802 - local py pyc loprogdir=/usr/$(get_libdir)/libreoffice/program - for py in uno.py unohelper.py officehelper.py; do - dosym -r ${loprogdir}/${py} $(python_get_sitedir)/${py} - while IFS="" read -d $'\0' -r pyc; do - pyc=${pyc//*\/} - dosym -r ${loprogdir}/__pycache__/${pyc} $(python_get_sitedir)/__pycache__/${pyc} - done < <(find "${D}"${lodir}/program -type f -name ${py/.py/*.pyc} -print0) - done - - newinitd "${FILESDIR}/libreoffice.initd" libreoffice - newconfd "${FILESDIR}/libreoffice.confd" libreoffice -} - -pkg_postinst() { - xdg_icon_cache_update - xdg_desktop_database_update - xdg_mimeinfo_database_update -} - -pkg_postrm() { - xdg_icon_cache_update - xdg_desktop_database_update - xdg_mimeinfo_database_update -} diff --git a/app-office/libreoffice/libreoffice-7.6.6.3.ebuild b/app-office/libreoffice/libreoffice-7.6.6.3.ebuild new file mode 100644 index 000000000000..c46991a279eb --- /dev/null +++ b/app-office/libreoffice/libreoffice-7.6.6.3.ebuild @@ -0,0 +1,668 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="threads(+),xml(+)" + +MY_PV="${PV/_alpha/.alpha}" +MY_PV="${MY_PV/_beta/.beta}" +# experimental ; release ; old +# Usually the tarballs are moved a lot so this should make everyone happy. +DEV_URI=" + https://dev-builds.libreoffice.org/pre-releases/src + https://download.documentfoundation.org/libreoffice/src/${MY_PV:0:5}/ + https://downloadarchive.documentfoundation.org/libreoffice/old/${MY_PV}/src +" +ADDONS_URI="https://dev-www.libreoffice.org/src/" + +BRANDING="${PN}-branding-gentoo-0.8.tar.xz" +# PATCHSET="${P}-patchset-01.tar.xz" + +[[ ${MY_PV} == *9999* ]] && inherit git-r3 +inherit autotools bash-completion-r1 check-reqs flag-o-matic java-pkg-opt-2 multiprocessing python-single-r1 qmake-utils toolchain-funcs xdg-utils + +DESCRIPTION="A full office productivity suite" +HOMEPAGE="https://www.libreoffice.org" +SRC_URI="branding? ( https://dev.gentoo.org/~dilfridge/distfiles/${BRANDING} )" +[[ -n ${PATCHSET} ]] && SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${PATCHSET}" + +# Split modules following git/tarballs; Core MUST be first! +# Help is used for the image generator +# Only release has the tarballs +if [[ ${MY_PV} != *9999* ]]; then + for i in ${DEV_URI}; do + SRC_URI+=" ${i}/${PN}-${MY_PV}.tar.xz" + SRC_URI+=" ${i}/${PN}-help-${MY_PV}.tar.xz" + done + unset i +fi +unset DEV_URI + +# Really required addons +# These are bundles that can't be removed for now due to huge patchsets. +# If you want them gone, patches are welcome. +ADDONS_SRC=( + # not packaged in Gentoo + "${ADDONS_URI}/dragonbox-1.1.3.tar.gz" + # not packaged in Gentoo, https://www.netlib.org/fp/dtoa.c + "${ADDONS_URI}/dtoa-20180411.tgz" + # not packaged in Gentoo, https://github.com/serge-sans-paille/frozen + "${ADDONS_URI}/frozen-1.1.1.tar.gz" + # not packaged in Gentoo, https://skia.org/ + "${ADDONS_URI}/skia-m111-a31e897fb3dcbc96b2b40999751611d029bf5404.tar.xz" + "base? ( + ${ADDONS_URI}/commons-logging-1.2-src.tar.gz + ${ADDONS_URI}/ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip + ${ADDONS_URI}/d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip + ${ADDONS_URI}/eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip + ${ADDONS_URI}/3bdf40c0d199af31923e900d082ca2dd-libfonts-1.1.6.zip + ${ADDONS_URI}/3404ab6b1792ae5f16bbd603bd1e1d03-libformula-1.1.7.zip + ${ADDONS_URI}/db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip + ${ADDONS_URI}/97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip + ${ADDONS_URI}/8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip + ${ADDONS_URI}/f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip + ${ADDONS_URI}/ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip + ${ADDONS_URI}/39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip + )" + "java? ( ${ADDONS_URI}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip )" + # no release for 8 years, should we package it? + "libreoffice_extensions_wiki-publisher? ( ${ADDONS_URI}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip )" + # Does not build with 1.6 rhino at all + "libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip )" + # requirement of rhino + "libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip )" + # not packageable + "odk? ( http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll )" +) +SRC_URI+=" ${ADDONS_SRC[*]}" + +unset ADDONS_URI +unset ADDONS_SRC + +# Extensions that need extra work: +LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher" + +IUSE="accessibility base bluetooth +branding clang coinmp +cups custom-cflags +dbus debug eds firebird +googledrive gstreamer +gtk kde ldap +mariadb odk pdfimport postgres test valgrind vulkan +$(printf 'libreoffice_extensions_%s ' ${LO_EXTS})" + +REQUIRED_USE="${PYTHON_REQUIRED_USE} + base? ( java ) + bluetooth? ( dbus ) + libreoffice_extensions_nlpsolver? ( java ) + libreoffice_extensions_scripting-beanshell? ( java ) + libreoffice_extensions_scripting-javascript? ( java ) + libreoffice_extensions_wiki-publisher? ( java ) +" + +RESTRICT="!test? ( test )" + +LICENSE="|| ( LGPL-3 MPL-1.1 )" +SLOT="0" + +# [[ ${MY_PV} == *9999* ]] || \ +# KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux" + +COMMON_DEPEND="${PYTHON_DEPS} + app-arch/unzip + app-arch/zip + app-crypt/gpgme:=[cxx] + app-text/hunspell:= + >=app-text/libabw-0.1.0 + >=app-text/libebook-0.1 + app-text/libepubgen + >=app-text/libetonyek-0.1 + app-text/libexttextcat + app-text/liblangtag + >=app-text/libmspub-0.1.0 + >=app-text/libmwaw-0.3.21 + >=app-text/libnumbertext-1.0.6 + >=app-text/libodfgen-0.1.0 + app-text/libqxp + app-text/libstaroffice + app-text/libwpd:0.10[tools] + app-text/libwpg:0.3 + >=app-text/libwps-0.4 + app-text/mythes + >=dev-cpp/clucene-2.3.3.4-r2 + >=dev-cpp/libcmis-0.6.2:0= + dev-db/unixODBC + dev-lang/perl + dev-libs/boost:=[nls] + dev-libs/expat + dev-libs/hyphen + dev-libs/icu:= + dev-libs/libassuan + dev-libs/libgpg-error + >=dev-libs/liborcus-0.18.0:0/0.18 + dev-libs/librevenge + dev-libs/libxml2 + dev-libs/libxslt + dev-libs/nspr + dev-libs/nss + >=dev-libs/redland-1.0.16 + >=dev-libs/xmlsec-1.2.35:=[nss] + >=games-engines/box2d-2.4.1:0 + media-gfx/fontforge + media-gfx/graphite2 + media-libs/fontconfig + >=media-libs/freetype-2.11.0-r1:2 + >=media-libs/harfbuzz-5.1.0:=[graphite,icu] + media-libs/lcms:2 + >=media-libs/libcdr-0.1.0 + >=media-libs/libepoxy-1.3.1[X] + >=media-libs/libfreehand-0.1.0 + media-libs/libjpeg-turbo:= + media-libs/libpagemaker + >=media-libs/libpng-1.4:0= + >=media-libs/libvisio-0.1.0 + media-libs/libwebp:= + media-libs/libzmf + media-libs/openjpeg:= + media-libs/tiff:= + media-libs/zxing-cpp:= + net-misc/curl + sci-mathematics/lpsolve:= + sys-libs/zlib + virtual/opengl + x11-libs/cairo[X] + x11-libs/libXinerama + x11-libs/libXrandr + x11-libs/libXrender + accessibility? ( + $(python_gen_cond_dep 'dev-python/lxml[${PYTHON_USEDEP}]') + ) + bluetooth? ( + dev-libs/glib:2 + net-wireless/bluez + ) + coinmp? ( sci-libs/coinor-mp ) + cups? ( net-print/cups ) + dbus? ( sys-apps/dbus ) + eds? ( + dev-libs/glib:2 + >=gnome-base/dconf-0.40.0 + gnome-extra/evolution-data-server + ) + firebird? ( >=dev-db/firebird-3.0.2.32703.0-r1[server] ) + gstreamer? ( + media-libs/gstreamer:1.0 + media-libs/gst-plugins-base:1.0 + ) + gtk? ( + app-accessibility/at-spi2-core:2 + dev-libs/glib:2 + dev-libs/gobject-introspection + gnome-base/dconf + media-libs/mesa[egl(+)] + x11-libs/gtk+:3[X] + x11-libs/pango + ) + kde? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + dev-qt/qtx11extras:5 + kde-frameworks/kconfig:5 + kde-frameworks/kcoreaddons:5 + kde-frameworks/ki18n:5 + kde-frameworks/kio:5 + kde-frameworks/kwindowsystem:5 + ) + ldap? ( net-nds/openldap:= ) + libreoffice_extensions_scripting-beanshell? ( dev-java/bsh ) + libreoffice_extensions_scripting-javascript? ( >=dev-java/rhino-1.7.14:1.6 ) + mariadb? ( dev-db/mariadb-connector-c:= ) + !mariadb? ( dev-db/mysql-connector-c:= ) + pdfimport? ( >=app-text/poppler-22.06:=[cxx] ) + postgres? ( >=dev-db/postgresql-9.0:*[kerberos] ) +" +# FIXME: cppunit should be moved to test conditional +# after everything upstream is under gbuild +# as dmake execute tests right away +# tests apparently also need google-carlito-fonts (not packaged) +DEPEND="${COMMON_DEPEND} + >=dev-libs/libatomic_ops-7.2d + dev-perl/Archive-Zip + >=dev-util/cppunit-1.14.0 + >=dev-util/gperf-3.1 + dev-util/mdds:1/2.1 + media-libs/glm + x11-base/xorg-proto + x11-libs/libXt + x11-libs/libXtst + java? ( + dev-java/ant:0 + >=virtual/jdk-11 + ) + test? ( + app-crypt/gnupg + dev-util/cppunit + media-fonts/dejavu + media-fonts/liberation-fonts + ) + valgrind? ( dev-debug/valgrind ) +" +RDEPEND="${COMMON_DEPEND} + acct-group/libreoffice + acct-user/libreoffice + !app-office/libreoffice-bin + !app-office/libreoffice-bin-debug + media-fonts/liberation-fonts + || ( x11-misc/xdg-utils kde-plasma/kde-cli-tools ) + java? ( >=virtual/jre-11 ) + kde? ( kde-frameworks/breeze-icons:* ) +" +BDEPEND=" + dev-util/intltool + sys-apps/which + app-alternatives/yacc + app-alternatives/lex + sys-devel/gettext + virtual/pkgconfig + clang? ( + || ( + ( sys-devel/clang:18 + sys-devel/llvm:18 + =sys-devel/lld-18* ) + ( sys-devel/clang:17 + sys-devel/llvm:17 + =sys-devel/lld-17* ) + ( sys-devel/clang:16 + sys-devel/llvm:16 + =sys-devel/lld-16* ) + ( sys-devel/clang:15 + sys-devel/llvm:15 + =sys-devel/lld-15* ) + ) + ) + odk? ( >=app-text/doxygen-1.8.4 ) +" +if [[ ${MY_PV} != *9999* ]] && [[ ${PV} != *_* ]]; then + PDEPEND="=app-office/libreoffice-l10n-$(ver_cut 1-2)*" +else + # Translations are not reliable on live ebuilds + # rather force people to use english only. + RDEPEND+=" !app-office/libreoffice-l10n" +fi + +PATCHES=( + # "${WORKDIR}"/${PATCHSET/.tar.xz/} + + # not upstreamable stuff + "${FILESDIR}/${PN}-5.3.4.2-kioclient5.patch" + "${FILESDIR}/${PN}-6.1-nomancompress.patch" + "${FILESDIR}/${PN}-7.2.0.4-qt5detect.patch" + + # TODO: upstream + "${FILESDIR}/${PN}-7.6-unused-qt5network.patch" + + # maybe upstreamable + "${FILESDIR}/${PN}-7.5.8.2-icu-74-compatibility.patch" +) + +S="${WORKDIR}/${PN}-${MY_PV}" + +_check_reqs() { + CHECKREQS_MEMORY="512M" + if is-flagq "-g*" && ! is-flagq "-g*0" ; then + CHECKREQS_DISK_BUILD="22G" + else + CHECKREQS_DISK_BUILD="6G" + fi + check-reqs_$1 +} + +pkg_pretend() { + use base || + ewarn "If you plan to use Base application you must enable USE base." + use java || + ewarn "Without USE java, several wizards are not going to be available." + + [[ ${MERGE_TYPE} != binary ]] && _check_reqs pkg_pretend +} + +pkg_setup() { + java-pkg-opt-2_pkg_setup + python-single-r1_pkg_setup + xdg_environment_reset + + [[ ${MERGE_TYPE} != binary ]] && _check_reqs pkg_setup +} + +src_unpack() { + default + + if [[ ${MY_PV} = *9999* ]]; then + local base_uri branch mypv + base_uri="https://anongit.freedesktop.org/git" + branch="master" + mypv=${MY_PV/.9999} + [[ ${mypv} != ${MY_PV} ]] && branch="${PN}-${mypv/./-}" + git-r3_fetch "${base_uri}/${PN}/core" "refs/heads/${branch}" + git-r3_checkout "${base_uri}/${PN}/core" + LOCOREGIT_VERSION=${EGIT_VERSION} + + git-r3_fetch "${base_uri}/${PN}/help" "refs/heads/master" + git-r3_checkout "${base_uri}/${PN}/help" "helpcontent2" # doesn't match on help + fi +} + +src_prepare() { + default + + # sandbox violations on many systems, we don't need it. Bug #646406 + sed -i \ + -e "/KF5_CONFIG/s/kf5-config/no/" \ + configure.ac || die "Failed to disable kf5-config" + + AT_M4DIR="m4" eautoreconf + # hack in the autogen.sh + touch autogen.lastrun + + # sed in the tests + sed -i \ + -e "s#all : build unitcheck#all : build#g" \ + solenv/gbuild/Module.mk || die + sed -i \ + -e "s#check: dev-install subsequentcheck#check: unitcheck slowcheck dev-install subsequentcheck#g" \ + -e "s#Makefile.gbuild all slowcheck#Makefile.gbuild all#g" \ + Makefile.in || die + + sed -i \ + -e "s,/usr/share/bash-completion/completions,$(get_bashcompdir)," \ + -e "s,\$INSTALLDIRNAME.sh,${PN}," \ + bin/distro-install-desktop-integration || die + + if use branding; then + # hack... + mv -v "${WORKDIR}/branding-intro.png" "icon-themes/colibre/brand/intro.png" || die + fi + + # Don't list pdfimport support in desktop when built with none, bug # 605464 + if ! use pdfimport; then + sed -i \ + -e ":MimeType: s:application/pdf;::" \ + -e ":Keywords: s:pdf;::" \ + sysui/desktop/menus/draw.desktop || die + fi +} + +src_configure() { + # Set up Google API keys, see https://www.chromium.org/developers/how-tos/api-keys + # Note: these are for Gentoo use ONLY. For your own distribution, please get + # your own set of keys. Feel free to contact chromium@gentoo.org for more info. + local google_default_client_id="329227923882.apps.googleusercontent.com" + local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu" + + # Show flags set at the beginning + einfo "Preset CFLAGS: ${CFLAGS}" + einfo "Preset LDFLAGS: ${LDFLAGS}" + + # Workaround for bug #915067 + append-ldflags $(test-flags-CCLD -Wl,--undefined-version) + + if use clang ; then + # Force clang + einfo "Enforcing the use of clang due to USE=clang ..." + AR=llvm-ar + CC=${CHOST}-clang + CXX=${CHOST}-clang++ + NM=llvm-nm + RANLIB=llvm-ranlib + LDFLAGS+=" -fuse-ld=lld" + + # Workaround for bug #907905 + filter-lto + + # Not implemented by Clang, bug #903889 + filter-flags -Wlto-type-mismatch -Werror=lto-type-mismatch + else + # Force gcc + 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 + + # Apparently the Clang flags get used even for GCC builds sometimes. + # bug #838115 + sed -i -e "s/-flto=thin/-flto/" solenv/gbuild/platform/com_GCC_defs.mk || die + fi + + if use custom-cflags ; then + elog "USE=custom-cflags has been selected. You are on your own to make sure that" + elog "the build succeeds. Good luck!" + else + strip-flags + fi + + export LO_CLANG_CC=${CC} + export LO_CLANG_CXX=${CXX} + + # Show flags set at the end + einfo " Used CFLAGS: ${CFLAGS}" + einfo " Used LDFLAGS: ${LDFLAGS}" + + # Ensure we use correct toolchain + tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG + + # optimization flags + export GMAKE_OPTIONS="${MAKEOPTS}" + # System python enablement: + export PYTHON_CFLAGS=$(python_get_CFLAGS) + export PYTHON_LIBS=$(python_get_LIBS) + + use kde && export QT5DIR="$(qt5_get_bindir)/.." + + local gentoo_buildid="Gentoo official package" + if [[ -n ${LOCOREGIT_VERSION} ]]; then + gentoo_buildid+=" (from git: ${LOCOREGIT_VERSION})" + fi + + # system headers/libs/...: enforce using system packages + # --disable-breakpad: requires not-yet-in-tree dev-utils/breakpad + # --enable-cairo: ensure that cairo is always required + # --enable-*-link: link to the library rather than just dlopen on runtime + # --enable-release-build: build the libreoffice as release + # --disable-fetch-external: prevent dowloading during compile phase + # --enable-extension-integration: enable any extension integration support + # --without-{fonts,myspell-dicts,ppsd}: prevent install of sys pkgs + # --disable-report-builder: too much java packages pulled in without pkgs + # --without-system-sane: just sane.h header that is used for scan in writer, + # not linked or anything else, worthless to depend on + # --disable-pdfium: not yet packaged + local myeconfargs=( + --with-system-dicts + --with-system-epoxy + --with-system-headers + --with-system-jars + --with-system-libs + --enable-build-opensymbol + --enable-cairo-canvas + --enable-largefile + --enable-mergelibs + --enable-python=system + --enable-randr + --enable-release-build + --disable-breakpad + --disable-bundle-mariadb + --disable-ccache + --disable-epm + --disable-fetch-external + --disable-gtk3-kde5 + --disable-online-update + --disable-openssl + --disable-pdfium + --disable-qt6 + --with-extra-buildid="${gentoo_buildid}" + --enable-extension-integration + --with-external-dict-dir="${EPREFIX}/usr/share/myspell" + --with-external-hyph-dir="${EPREFIX}/usr/share/myspell" + --with-external-thes-dir="${EPREFIX}/usr/share/myspell" + --with-external-tar="${DISTDIR}" + --with-lang="" + --with-parallelism=$(makeopts_jobs) + --with-system-openjpeg + --with-tls=nss + --with-vendor="Gentoo Foundation" + --with-x + --without-fonts + --without-myspell-dicts + --with-help="html" + --without-helppack-integration + --with-system-gpgmepp + --without-system-abseil + --without-system-dragonbox + --without-system-frozen + --without-system-jfreereport + --without-system-libfixmath + --without-system-sane + $(use_enable base report-builder) + $(use_enable bluetooth sdremote-bluetooth) + $(use_enable coinmp) + $(use_enable cups) + $(use_enable dbus) + $(use_enable debug) + $(use_enable eds evolution2) + $(use_enable firebird firebird-sdbc) + $(use_enable gstreamer gstreamer-1-0) + $(use_enable gtk gtk3) + $(use_enable kde kf5) + $(use_enable kde qt5) + $(use_enable ldap) + $(use_enable odk) + $(use_enable pdfimport) + $(use_enable postgres postgresql-sdbc) + $(use_enable vulkan skia) + $(use_with accessibility lxml) + $(use_with coinmp system-coinmp) + $(use_with googledrive gdrive-client-id ${google_default_client_id}) + $(use_with googledrive gdrive-client-secret ${google_default_client_secret}) + $(use_with java) + $(use_with odk doxygen) + $(use_with valgrind) + ) + + if use eds || use gtk; then + myeconfargs+=( --enable-dconf --enable-gio ) + else + myeconfargs+=( --disable-dconf --disable-gio ) + fi + + # libreoffice extensions handling + for lo_xt in ${LO_EXTS}; do + if [[ "${lo_xt}" == "scripting-beanshell" || "${lo_xt}" == "scripting-javascript" ]]; then + myeconfargs+=( $(use_enable libreoffice_extensions_${lo_xt} ${lo_xt}) ) + else + myeconfargs+=( $(use_enable libreoffice_extensions_${lo_xt} ext-${lo_xt}) ) + fi + done + + if use java; then + # hsqldb: system one is too new + myeconfargs+=( + --without-junit + --without-system-hsqldb + --with-ant-home="${ANT_HOME}" + --with-jdk-home="${JAVA_HOME}" + ) + + use libreoffice_extensions_scripting-beanshell && \ + myeconfargs+=( --with-beanshell-jar=$(java-pkg_getjar bsh bsh.jar) ) + + use libreoffice_extensions_scripting-javascript && \ + myeconfargs+=( --with-rhino-jar=$(java-pkg_getjar rhino-1.6 rhino.jar) ) + fi + + tc-is-lto && myeconfargs+=( --enable-lto ) + + MARIADBCONFIG="$(type -p $(usex mariadb mariadb mysql)_config)" \ + econf "${myeconfargs[@]}" +} + +src_compile() { + # more and more LO stuff tries to use OpenGL, including tests during build + # bug 501508, bug 540624, bug 545974 and probably more + addpredict /dev/dri + addpredict /dev/ati + addpredict /dev/nvidiactl + + default +} + +src_test() { + emake unitcheck + emake slowcheck +} + +src_install() { + emake DESTDIR="${D}" distro-pack-install -o build -o check + + # bug 593514 + if use gtk; then + dosym libreoffice/program/liblibreofficekitgtk.so \ + /usr/$(get_libdir)/liblibreofficekitgtk.so + fi + + # bash completion aliases + bashcomp_alias \ + libreoffice \ + unopkg loimpress lobase localc lodraw lomath lowriter lofromtemplate loweb loffice + + if use branding; then + insinto /usr/$(get_libdir)/${PN}/program + newins "${WORKDIR}/branding-sofficerc" sofficerc + dodir /etc/env.d + echo "CONFIG_PROTECT=/usr/$(get_libdir)/${PN}/program/sofficerc" > "${ED}"/etc/env.d/99${PN} || die + fi + + # bug 703474 + insinto /usr/include + doins -r include/LibreOfficeKit + + local lodir=/usr/$(get_libdir)/libreoffice + # patching this would break tests + cat <<-EOF > "${T}"/uno.py +import sys, os +sys.path.append('${EPREFIX}${lodir}/program') +os.putenv('URE_BOOTSTRAP', 'vnd.sun.star.pathname:${EPREFIX}${lodir}/program/fundamentalrc') +EOF + sed -e "/^import sys/d" -e "/^import os/d" \ + -i "${D}"${lodir}/program/uno.py || die "cleanup dupl imports failed" + cat "${D}"${lodir}/program/uno.py >> "${T}"/uno.py || die + cp "${T}"/uno.py "${D}"${lodir}/program/uno.py || die + + # more system pyuno mess + sed -e "/sOffice = \"\" # lets hope for the best/s:\"\":\"${EPREFIX}${lodir}/program\":" \ + -i "${D}"${lodir}/program/officehelper.py || die + + python_optimize "${D}"${lodir}/program + # link python bridge in site-packages, bug 667802 + local py pyc loprogdir=/usr/$(get_libdir)/libreoffice/program + for py in uno.py unohelper.py officehelper.py; do + dosym -r ${loprogdir}/${py} $(python_get_sitedir)/${py} + while IFS="" read -d $'\0' -r pyc; do + pyc=${pyc//*\/} + dosym -r ${loprogdir}/__pycache__/${pyc} $(python_get_sitedir)/__pycache__/${pyc} + done < <(find "${D}"${lodir}/program -type f -name ${py/.py/*.pyc} -print0) + done + + newinitd "${FILESDIR}/libreoffice.initd" libreoffice + newconfd "${FILESDIR}/libreoffice.confd" libreoffice +} + +pkg_postinst() { + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update +} + +pkg_postrm() { + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update +} diff --git a/app-office/libreoffice/libreoffice-7.6.9999.ebuild b/app-office/libreoffice/libreoffice-7.6.9999.ebuild index 37c26c171771..968f3b9be2f7 100644 --- a/app-office/libreoffice/libreoffice-7.6.9999.ebuild +++ b/app-office/libreoffice/libreoffice-7.6.9999.ebuild @@ -296,6 +296,9 @@ PATCHES=( "${FILESDIR}/${PN}-6.1-nomancompress.patch" "${FILESDIR}/${PN}-7.2.0.4-qt5detect.patch" + # TODO: upstream + "${FILESDIR}/${PN}-7.6-unused-qt5network.patch" + # maybe upstreamable "${FILESDIR}/${PN}-7.5.8.2-icu-74-compatibility.patch" ) diff --git a/app-office/libreoffice/libreoffice-9999.ebuild b/app-office/libreoffice/libreoffice-9999.ebuild index 7e6c19c6cac2..1d2cd2085e48 100644 --- a/app-office/libreoffice/libreoffice-9999.ebuild +++ b/app-office/libreoffice/libreoffice-9999.ebuild @@ -315,6 +315,10 @@ PATCHES=( "${FILESDIR}/${PN}-5.3.4.2-kioclient5.patch" "${FILESDIR}/${PN}-6.1-nomancompress.patch" "${FILESDIR}/${PN}-24.2-qtdetect.patch" + + # TODO: upstream + "${FILESDIR}/${PN}-7.6-unused-qt5network.patch" + "${FILESDIR}/${PN}-24.2-unused-qt6network.patch" ) S="${WORKDIR}/${PN}-${MY_PV}" -- cgit v1.2.3