summaryrefslogtreecommitdiff
path: root/dev-libs
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/Manifest.gzbin101338 -> 101346 bytes
-rw-r--r--dev-libs/blake3/Manifest3
-rw-r--r--dev-libs/blake3/blake3-1.5.3.ebuild18
-rw-r--r--dev-libs/blake3/files/blake3-1.5.3-backport-pr405.patch57
-rw-r--r--dev-libs/gjs/Manifest2
-rw-r--r--dev-libs/gjs/gjs-1.80.2.ebuild68
-rw-r--r--dev-libs/glib/Manifest4
-rw-r--r--dev-libs/glib/glib-2.80.4.ebuild320
-rw-r--r--dev-libs/glib/metadata.xml3
-rw-r--r--dev-libs/gobject-introspection-common/Manifest2
-rw-r--r--dev-libs/gobject-introspection-common/gobject-introspection-common-1.80.1.ebuild30
-rw-r--r--dev-libs/gobject-introspection/Manifest2
-rw-r--r--dev-libs/gobject-introspection/gobject-introspection-1.80.1.ebuild82
-rw-r--r--dev-libs/kopeninghours/Manifest2
-rw-r--r--dev-libs/kopeninghours/kopeninghours-23.08.5.ebuild64
-rw-r--r--dev-libs/kosmindoormap/Manifest4
-rw-r--r--dev-libs/kosmindoormap/kosmindoormap-23.08.5.ebuild47
-rw-r--r--dev-libs/kosmindoormap/metadata.xml3
-rw-r--r--dev-libs/kpublictransport/Manifest2
-rw-r--r--dev-libs/kpublictransport/kpublictransport-23.08.5.ebuild40
-rw-r--r--dev-libs/liblouis/Manifest2
-rw-r--r--dev-libs/liblouis/liblouis-3.30.0.ebuild106
-rw-r--r--dev-libs/libportal/Manifest5
-rw-r--r--dev-libs/libportal/files/6cd7c2ab82575b76f876ee2bd2d31f6cb77f022f.patch47
-rw-r--r--dev-libs/libportal/libportal-0.7.1-r1.ebuild7
-rw-r--r--dev-libs/libportal/libportal-0.7.1.ebuild5
-rw-r--r--dev-libs/protobuf/Manifest2
-rw-r--r--dev-libs/protobuf/protobuf-27.2.ebuild2
-rw-r--r--dev-libs/yyjson/Manifest2
-rw-r--r--dev-libs/yyjson/yyjson-0.10.0.ebuild2
30 files changed, 762 insertions, 171 deletions
diff --git a/dev-libs/Manifest.gz b/dev-libs/Manifest.gz
index ac9a482cbe58..d433a444288f 100644
--- a/dev-libs/Manifest.gz
+++ b/dev-libs/Manifest.gz
Binary files differ
diff --git a/dev-libs/blake3/Manifest b/dev-libs/blake3/Manifest
index 6d539b6eeb9c..f9d9e1b0730a 100644
--- a/dev-libs/blake3/Manifest
+++ b/dev-libs/blake3/Manifest
@@ -1,7 +1,8 @@
+AUX blake3-1.5.3-backport-pr405.patch 1813 BLAKE2B f409eaf440dfbc16c8418a966852c6702dfe0e084c71d100da4c5eb21036350eefc6f4b4977a6c1df06c242e6fcb6dbbc01b08b9dc3878fba499c345de853231 SHA512 4ab4ca568ec6dd62146ad8825d772e81ab812c0493b596bd5cfac8d7c8de2bfcd29d6a6f14ee3ab89c7277b77bd8b0a604bdc6dcd5cb1715deec59d8a5badc49
DIST blake3-1.5.0.tar.gz 228053 BLAKE2B 04405b0bea5e0a5a774c84e712f36c61fd695c4cbe203a327741db7138af38fc4deda7c75a149f1850a1ca01a519897fb8e84c2cbe38f9cc084357c5ed61a1ed SHA512 eb782d48240cf2fa8cc3cddd699dce3a362eb480b3ca58a97d54cd3595a0c969e51fe14374b91136036e8e29c8f745efbd5a4d1aaed2c17f23cb89fb756645d0
DIST blake3-1.5.1.tar.gz 242161 BLAKE2B 12712bcc6413f90bd9d79ee87d73b45ee611032ccfa3f9e73b2c41b080c2a9451db028c9ff32efa546bef19b85e4aa9fc5ecd9fc6b76c34fd347cbc5fe337649 SHA512 a2ac662b0e45d1f4c4ee01a5e556a47c49ab5407a6057034033ce6fd0fc6b88f66dd428d80f5e7c4a8413356cb4b5ab655924d96138213499893e0204d7c8d24
DIST blake3-1.5.3.tar.gz 244775 BLAKE2B 8d6cfd9b4829d1b0aed790b3e27a5dc8e4e4eb19d9b635faf07bd89bfc99545e9a4c2c362c7a55b44e6ff6d1dad0dc166ba34baf488ed094ed5cff56df21b6ff SHA512 5e8f9ef523735819e9def19911fce906d62d000b4146e7b7a28896f68c925715dbf42da369b1630929b0d2012abb972f0611ffac6184b49c157641bf5b5b1362
EBUILD blake3-1.5.0.ebuild 480 BLAKE2B f0662530d0ab585a6b2edd863b7dc9c1acc6215d3c2b7f0e92cdb866d92b3ca09a77c1e3b6a522b1f7a7b7613ef5f7d0fe09cc64ec0038bccfcfb2771424b28c SHA512 8efb675b88b3cf0c9c999bda8910c3ec75e2be8bbf45261b46d9602dacc6b8c09ac08297600a1d2dde079ee8b1d70457a020ea48a6a85fb36c920e143314cba7
EBUILD blake3-1.5.1.ebuild 483 BLAKE2B d70bb68f98b9aa79fb2b6f30c49f4ab0c85a3d9dbc4012ce830b0fcac73ec517faf579d96724f9b78facf56445f0cd23e1a2e7ea385d4b3e140233b14a1ae5ba SHA512 9be2b2e24e8a25e28295c86a2ae8c4137d08420da2011f685eb178b8e4c135e2ffedb623c3c75d133034f48c9b40122c9c519e23b8ccfd809bd73ca6c96c349c
-EBUILD blake3-1.5.3.ebuild 484 BLAKE2B e5b6b6e5188b06434bc65a41d0ba402668a2bc48415822ba90ee01308c3e37abfa061fbc03c782d9acc52848eda7d5151dbe8adf4f19171fd1cb3083160aac99 SHA512 6a8e918e9591771aa7341c768ae3a92537c63286726d9eb1c20c13dbfc422f14acab3c2b02190dd97cbc7e1d3dab146c092a9e01c533e1999eaaec041d5a0ccd
+EBUILD blake3-1.5.3.ebuild 826 BLAKE2B 9b7c1eb08288b5b680786d2460ace584e2e3f4587ed7d0764dde6670b654c54a0c345fab75aab5b12e9bd7d05be9c5807c24110916447135ebfab20a6f29fdd9 SHA512 5786d94a4f81417f28f0b1f483ca34863d1721650e86acaa67259327cf9a450d0f614497b2c4af85ec73a638e7b31296454602255053e8b859f0d346e2014613
MISC metadata.xml 331 BLAKE2B 04a0d860646b72b60fbc082a4f28fa681e122d6f53dadb858777c4054b1bedb9eb33929758ba0693c72f56b69abe3ae88a69e3fc4460d4e1acc0a9c82f26239f SHA512 849d76599dcbdf00b4fbd501eb2b3cb123dc930418e36ea65701fed34e82d8353624122018b0f1e759a583c38285b14f92b6c89a615512e6646af908efb079cf
diff --git a/dev-libs/blake3/blake3-1.5.3.ebuild b/dev-libs/blake3/blake3-1.5.3.ebuild
index 073d73e0061b..0e7f9fe25cc9 100644
--- a/dev-libs/blake3/blake3-1.5.3.ebuild
+++ b/dev-libs/blake3/blake3-1.5.3.ebuild
@@ -3,7 +3,8 @@
EAPI=8
-inherit cmake
+PYTHON_COMPAT=( python3_{11..13} )
+inherit cmake python-any-r1
DESCRIPTION="a fast cryptographic hash function"
HOMEPAGE="https://github.com/BLAKE3-team/BLAKE3"
@@ -13,3 +14,18 @@ S="${WORKDIR}/BLAKE3-${PV}/c"
LICENSE="|| ( CC0-1.0 Apache-2.0 )"
SLOT="0/0"
KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+PATCHES=( "${FILESDIR}/${PN}-1.5.3-backport-pr405.patch" )
+BDEPEND="test? ( ${PYTHON_DEPS} )"
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBLAKE3_BUILD_TESTING="$(usex test)"
+ )
+ cmake_src_configure
+}
diff --git a/dev-libs/blake3/files/blake3-1.5.3-backport-pr405.patch b/dev-libs/blake3/files/blake3-1.5.3-backport-pr405.patch
new file mode 100644
index 000000000000..53db4816a859
--- /dev/null
+++ b/dev-libs/blake3/files/blake3-1.5.3-backport-pr405.patch
@@ -0,0 +1,57 @@
+https://bugs.gentoo.org/935370
+https://github.com/BLAKE3-team/BLAKE3/pull/405
+
+From aad68f7f009b7e0607b3eee3b8b8e3021fa38bd7 Mon Sep 17 00:00:00 2001
+From: matoro <matoro@users.noreply.github.com>
+Date: Tue, 2 Jul 2024 19:36:45 -0400
+Subject: [PATCH] build(CMake): support running tests with ctest
+
+---
+ CMakeLists.txt | 11 +++++++++++
+ test.py | 4 ++--
+ 2 files changed, 13 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 3a3b232d..e778e3d7 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -168,6 +168,17 @@ else()
+ BLAKE3_DISABLE_SIMD()
+ endif()
+
++# cmake test support
++if (BLAKE3_BUILD_TESTING)
++ find_package(Python3 REQUIRED)
++ get_target_property(BLAKE3_SOURCES blake3 SOURCES)
++ add_executable(blake3-testing ${BLAKE3_SOURCES} main.c)
++ set_property(TARGET blake3-testing PROPERTY OUTPUT_NAME blake3)
++ target_compile_definitions(blake3-testing PRIVATE BLAKE3_TESTING=1)
++ enable_testing()
++ add_test(test_vectors "${Python3_EXECUTABLE}" "${CMAKE_CURRENT_SOURCE_DIR}/test.py" WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}")
++endif()
++
+ # cmake install support
+ install(FILES blake3.h DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
+ install(TARGETS blake3 EXPORT blake3-targets)
+diff --git a/test.py b/test.py
+index 98b1c3df..2eb1f07e 100755
+--- a/test.py
++++ b/test.py
+@@ -2,7 +2,7 @@
+
+ from binascii import hexlify
+ import json
+-from os import path
++from os import getcwd, path
+ import subprocess
+
+ HERE = path.dirname(__file__)
+@@ -11,7 +11,7 @@
+
+
+ def run_blake3(args, input):
+- output = subprocess.run([path.join(HERE, "blake3")] + args,
++ output = subprocess.run([path.join(getcwd(), "blake3")] + args,
+ input=input,
+ stdout=subprocess.PIPE,
+ check=True)
diff --git a/dev-libs/gjs/Manifest b/dev-libs/gjs/Manifest
index cce9cac0120f..77d3e2f391cc 100644
--- a/dev-libs/gjs/Manifest
+++ b/dev-libs/gjs/Manifest
@@ -1,3 +1,5 @@
DIST gjs-1.78.5.tar.xz 656168 BLAKE2B e1458d000998b66fda90e448ca487e591729e003c3e11a939dc474958b6de55783d41db8de5b243a329361f12acc15a8e84f4131650705becb046b68c54a24a2 SHA512 bb25e52dff53bfbde6d2329027d4ff68849740cf753da58f9bdf5a19ea7b029e2517d67978f461f16660dd1aa48b223798e9c0a24cde0ccb62060e4a0c83a02e
+DIST gjs-1.80.2.tar.xz 663256 BLAKE2B d5c8dd85acc0ee1fa8da9450b1d9427da0f835b695d5c6877ea166d41751dcf4449bb00ee0068ac98abed245d6dc1d67504432db368b9fcd8d81e0f37e72e952 SHA512 cc9a9073f741ee60eff2d2ce808cca7f40e97798f9ffa9197ebc3780a8a5df6e174ba76293bf7547fc8fa7e82be6a828a633a5aa8ba27d551dec72d635b6c5bd
EBUILD gjs-1.78.5.ebuild 1958 BLAKE2B 28917b22ebc65380e8e451bbfaf0ff9163da52ca693ccd129bd8ac12bdc974f0bc1e4e097320dc6281e20e9ed34b2fc8f1d45a53c5455065f4067b801365b16b SHA512 d9540bb0617590e398e34b6a37cc9624dd11f54395133442237fb3dc4dd8b3f186cfcf8d4e63dc5b5b1d85c938363e5ecaefbae09a1936c740a7d01b133eb691
+EBUILD gjs-1.80.2.ebuild 1927 BLAKE2B b0af1d14cfbb917a4245d29dfc54727ab4ee400679230a9f8e77f8c6893969ba594e52f5bc56ed961ee5a0c4d052b572baba4cea540b624682bca06622426ca5 SHA512 d1afe0841410e829e3c39f337cbb6a243bf5a44d36f6166eb7d38cd87ab9057170d7902babd2aa2abffe2382652cc5323e76c85aba2e4aaa00e6a7458246bc47
MISC metadata.xml 473 BLAKE2B 0d57ec402b3daaa00af170335374e711150ecccd019aea100484079a055015f36119c4564ae2d95e82e4ac8d6de6d84b83379aedfdcbfb7aaabaa752b51d8203 SHA512 a4f99ef450b30c381845a774865b4e82b2a554cc7f0a2edba7002096563943b58b290f704210cc00ca0508cf6e81a11be2fa0c6402117d2b05f0e4eb2e03a0c2
diff --git a/dev-libs/gjs/gjs-1.80.2.ebuild b/dev-libs/gjs/gjs-1.80.2.ebuild
new file mode 100644
index 000000000000..13f066ff2ada
--- /dev/null
+++ b/dev-libs/gjs/gjs-1.80.2.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic gnome.org meson virtualx
+
+DESCRIPTION="Javascript bindings for GNOME"
+HOMEPAGE="https://gitlab.gnome.org/GNOME/gjs"
+
+LICENSE="MIT || ( MPL-1.1 LGPL-2+ GPL-2+ )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+cairo examples readline sysprof test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/glib-2.66.0:2
+ dev-libs/libffi:=
+ >=dev-libs/gobject-introspection-1.71.1:=
+ dev-lang/spidermonkey:115
+ cairo? ( x11-libs/cairo[X,glib] )
+ readline? ( sys-libs/readline:0= )
+"
+DEPEND="${RDEPEND}
+ sysprof? ( >=dev-util/sysprof-capture-3.40.1:4 )
+ test? (
+ sys-apps/dbus
+ >=x11-libs/gtk+-3.20:3[introspection]
+ )
+"
+BDEPEND="
+ virtual/pkgconfig
+"
+
+src_configure() {
+ append-cppflags -DG_DISABLE_CAST_CHECKS
+
+ # On musl, it's required that either gjs, pixman or gnome-shell to be built
+ # with a larger stack otherwise librsvg fails to render a particular SVG, as
+ # a result we fail to get gdm or gnome-shell running (greeted with a fail
+ # whale screen). The bug has been reported to librsvg. This is ideally just
+ # a temporary workaround until we understand what exactly needs a larger
+ # stack size, as it's not sufficient to do just librsvg.
+ #
+ # Please refer to:
+ # https://gitlab.gnome.org/GNOME/librsvg/-/issues/686
+ # https://gitlab.gnome.org/GNOME/librsvg/-/issues/874
+ #
+ # TODO: Find an actual fix instead of increasing the stack
+ use elibc_musl && append-ldflags -Wl,-z,stack-size=2097152
+
+ # FIXME: add systemtap/dtrace support, like in glib:2
+ local emesonargs=(
+ $(meson_feature cairo)
+ $(meson_feature readline)
+ $(meson_feature sysprof profiler)
+ -Dinstalled_tests=false
+ $(meson_use !test skip_dbus_tests)
+ $(meson_use !test skip_gtk_tests)
+ -Db_pch=True # TODO this has to go
+ )
+ meson_src_configure
+}
+
+src_test() {
+ virtx meson_src_test
+}
diff --git a/dev-libs/glib/Manifest b/dev-libs/glib/Manifest
index 64fb95feb993..cae2b82e4423 100644
--- a/dev-libs/glib/Manifest
+++ b/dev-libs/glib/Manifest
@@ -5,8 +5,10 @@ DIST glib-2.76.4.tar.xz 5274356 BLAKE2B c9ceb514ea81e1e6ab2d0efc82c48c0d8ae6c997
DIST glib-2.78.3.tar.xz 5321388 BLAKE2B 6ef754b15e1ce4377eafdfc317025ac65c3d8010a8816a0cef786cec9da2af9f7d7d1da735c971ab8c848b2dcec050330e5b0fdceb156a36d739848e6160cd19 SHA512 9c1af75fb973d23ce0286d5b7836eea45f9628c148ced5ac10e10abceda05024ae4c57f01439824d3287d986527500b7b959828b630b6e4a3314b5224f4d7246
DIST glib-2.78.4.tar.xz 5331892 BLAKE2B ada7134597d7d863e581a2bb1097ac07a63b27b53309aadab5b1d3686327ee718ad8c5c07af3fce5cc12328e728fc2c4df5fd9e69f431fa00dc634062ef7f926 SHA512 6f3a06e10e7373a2dbf0688512de4126472fb73cbec488b7983b5ffecff09c64d7e1ca462f892e8f215d3d277d103ca802bad7ef0bd0f91edf26fc6ce67187b6
DIST glib-2.78.6.tar.xz 5344808 BLAKE2B d16173794c4aa019459cf8c8c84d4107fb8393828f41ec6c631b9452890f34f9022ed848a543ed134fdb8a575faef6b941cea3e05de512eb1b7a99f7601a2485 SHA512 8d75f8fd77b6309215ca86a0c7648878efe11051f18b279840c137669017ea4066388f8682367e4ea3f154333d833c9dc28ccd4a66a91f0c3854a40a2838f8da
+DIST glib-2.80.4.tar.xz 5535760 BLAKE2B 1d2b301703b27a5c2def370e1d44b4f7b08a940969563ce9d8d7c38e5f0a32163b95523e09cedc4a57b2af84a57d63dc545abcb31b61a8066ef62ba396fb4f3c SHA512 efdc7dd1e0609b0f2d988a8cc8fd4a3fda96e8450832f905f7686f9063b727cb996e0e4e638aca62f60b76f9f04be62e089a615413e64cf298c7eef26e074570
EBUILD glib-2.76.4.ebuild 10852 BLAKE2B fd5ef68de939553ae5523bc11fef106c720853175147746845b9c7171e01b2c8a56626c657ea1a1f98154f89d11a1f75c483123a958265251fee431b60ad736f SHA512 7fe4fe4f7742a1a2d12ba4ff030cc9a409ab8de45b8361e49b780f0a8865ccea2cdc9395f81ad67b07bc552a4b4bd04009c51b832d69197d8305991461806d56
EBUILD glib-2.78.3.ebuild 10852 BLAKE2B fd5ef68de939553ae5523bc11fef106c720853175147746845b9c7171e01b2c8a56626c657ea1a1f98154f89d11a1f75c483123a958265251fee431b60ad736f SHA512 7fe4fe4f7742a1a2d12ba4ff030cc9a409ab8de45b8361e49b780f0a8865ccea2cdc9395f81ad67b07bc552a4b4bd04009c51b832d69197d8305991461806d56
EBUILD glib-2.78.4-r1.ebuild 11097 BLAKE2B 36e0cfd571bf729138f97b4f59385942b41cc35383a52be2c2e6fbc72734edd1e48e7b74b153b0f828186f6b603e2d07e4f8e7a57429dbe5743eed6bed046db3 SHA512 19c6665c651ab8f6d264574b37b3e10f159c41484d967193a5914a3ec98af909595941c151f11466bbf425bd2931803552a75abe2711b74c7811b2eb3d30700e
EBUILD glib-2.78.6.ebuild 11047 BLAKE2B d3e840ea6dc22e98a0f822376204e104947590be784662020d3555a70bd38b57863935a52d896d50915cc914305a112c36a1fb45f72a5cd33ba9343049d3aa95 SHA512 98ab1e9071ff41193143abee19903da0f811441a77ba1a74ab0c2b1cbb936211eb019e7bf3ebb087ad0e14db54606beb3e254cba410f124d9a14097d1117c5df
-MISC metadata.xml 1358 BLAKE2B ca4bb1facd33c64aa2d8c2197c97a68e08425bf3bb7cc66b3867e208a8032029cbf3d9bf3b23d38c8268228553d80d0334eacfb61cee82e19f5a7604de26d76d SHA512 d89242c1102b798d82631c4179c362461cf19d12e33cb30afcc3551f2c9b2970ad5f3a594fae504b444de294659693fc76ea560c54794692e492d4eebe23b7b9
+EBUILD glib-2.80.4.ebuild 11173 BLAKE2B 32c46e7ee2a9654a23dc7336c299dd12f34ab48281234cbf0b571ceca3d0e5d06505ccabcdda6b6865e5833f07c8e194c9488440fcd7a5318fe85fc8cb538e99 SHA512 a19ddc9e9a79ceda5871f93fa7c2d5e442fe3aaed3417dae435cafd8973de96cd18612249aea4369665aa105a6937cd52dff2d6400b1330a6962f9bf358ba7c3
+MISC metadata.xml 1499 BLAKE2B 5a75e3b360e4656fe9127f2dc3ba7e90df3eae0586a025b4eefc2317398e53815c98a8014ea6f0dd69ae8afdafa066eec61c18e9fa86d24c78a3f11404c2a7a8 SHA512 2b12c409bf16cf9e01e80c30a6707aac5b48ca4cdeac3852028c003c6cb2d50b5e82be73adeefb8341fd4f157e0f7d22505cebfc2ee0f6d64ca77a7d3cfa8271
diff --git a/dev-libs/glib/glib-2.80.4.ebuild b/dev-libs/glib/glib-2.80.4.ebuild
new file mode 100644
index 000000000000..1a20959666c2
--- /dev/null
+++ b/dev-libs/glib/glib-2.80.4.ebuild
@@ -0,0 +1,320 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_REQ_USE="xml(+)"
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit gnome.org gnome2-utils linux-info meson-multilib multilib python-any-r1 toolchain-funcs xdg
+
+DESCRIPTION="The GLib library of C routines"
+HOMEPAGE="https://www.gtk.org/"
+
+LICENSE="LGPL-2.1+"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="dbus debug +elf doc +introspection +mime selinux static-libs sysprof systemtap test utils xattr"
+RESTRICT="!test? ( test )"
+
+# * elfutils (via libelf) does not build on Windows. gresources are not embedded
+# within ELF binaries on that platform anyway and inspecting ELF binaries from
+# other platforms is not that useful so exclude the dependency in this case.
+# * Technically static-libs is needed on zlib, util-linux and perhaps more, but
+# these are used by GIO, which glib[static-libs] consumers don't really seem
+# to need at all, thus not imposing the deps for now and once some consumers
+# are actually found to static link libgio-2.0.a, we can revisit and either add
+# them or just put the (build) deps in that rare consumer instead of recursive
+# RDEPEND here (due to lack of recursive DEPEND).
+RDEPEND="
+ !<dev-libs/gobject-introspection-1.80.1
+ !<dev-util/gdbus-codegen-${PV}
+ >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
+ >=dev-libs/libpcre2-10.32:0=[${MULTILIB_USEDEP},unicode(+),static-libs?]
+ >=dev-libs/libffi-3.0.13-r1:=[${MULTILIB_USEDEP}]
+ >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
+ >=virtual/libintl-0-r2[${MULTILIB_USEDEP}]
+ introspection? ( >=dev-libs/gobject-introspection-1.80.1 )
+ kernel_linux? ( >=sys-apps/util-linux-2.23[${MULTILIB_USEDEP}] )
+ selinux? ( >=sys-libs/libselinux-2.2.2-r5[${MULTILIB_USEDEP}] )
+ xattr? ( !elibc_glibc? ( >=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}] ) )
+ elf? ( virtual/libelf:0= )
+ sysprof? ( >=dev-util/sysprof-capture-3.40.1:4[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}"
+# libxml2 used for optional tests that get automatically skipped
+BDEPEND="
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt
+ >=sys-devel/gettext-0.19.8
+ doc? ( >=dev-util/gi-docgen-2023.1 )
+ dev-python/docutils
+ systemtap? ( >=dev-debug/systemtap-1.3 )
+ ${PYTHON_DEPS}
+ $(python_gen_any_dep '
+ dev-python/packaging[${PYTHON_USEDEP}]
+ ')
+ test? ( >=sys-apps/dbus-1.2.14 )
+ virtual/pkgconfig
+"
+# TODO: >=dev-util/gdbus-codegen-${PV} test dep once we modify gio/tests/meson.build to use external gdbus-codegen
+
+PDEPEND="
+ dbus? ( gnome-base/dconf )
+ mime? ( x11-misc/shared-mime-info )
+"
+# shared-mime-info needed for gio/xdgmime, bug #409481
+# dconf is needed to be able to save settings, bug #498436
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/gio-querymodules$(get_exeext)
+)
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.64.1-mark-gdbus-server-auth-test-flaky.patch
+)
+
+python_check_deps() {
+ python_has_version "dev-python/packaging[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ if use kernel_linux ; then
+ CONFIG_CHECK="~INOTIFY_USER"
+ if use test ; then
+ CONFIG_CHECK="~IPV6"
+ WARNING_IPV6="Your kernel needs IPV6 support for running some tests, skipping them."
+ fi
+ linux-info_pkg_setup
+ fi
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ if use test; then
+ # TODO: Review the test exclusions, especially now with meson
+ # Disable tests requiring dev-util/desktop-file-utils when not installed, bug #286629, upstream bug #629163
+ if ! has_version dev-util/desktop-file-utils ; then
+ ewarn "Some tests will be skipped due dev-util/desktop-file-utils not being present on your system,"
+ ewarn "think on installing it to get these tests run."
+ sed -i -e "/appinfo\/associations/d" gio/tests/appinfo.c || die
+ sed -i -e "/g_test_add_func/d" gio/tests/desktop-app-info.c || die
+ fi
+
+ # gdesktopappinfo requires existing terminal (gnome-terminal or any
+ # other), falling back to xterm if one doesn't exist
+ #if ! has_version x11-terms/xterm && ! has_version x11-terms/gnome-terminal ; then
+ # ewarn "Some tests will be skipped due to missing terminal program"
+ # These tests seem to sometimes fail even with a terminal; skip for now and reevulate with meson
+ # Also try https://gitlab.gnome.org/GNOME/glib/issues/1601 once ready
+ # for backport (or in a bump) and file new issue if still fails
+ sed -i -e "/appinfo\/launch/d" gio/tests/appinfo.c || die
+ # desktop-app-info/launch* might fail similarly
+ sed -i -e "/desktop-app-info\/launch-as-manager/d" gio/tests/desktop-app-info.c || die
+ #fi
+
+ # https://bugzilla.gnome.org/show_bug.cgi?id=722604
+ sed -i -e "/timer\/stop/d" glib/tests/timer.c || die
+ sed -i -e "/timer\/basic/d" glib/tests/timer.c || die
+
+ ewarn "Tests for search-utils have been skipped"
+ sed -i -e "/search-utils/d" glib/tests/meson.build || die
+
+ # Play nice with network-sandbox, but this approach would defeat the purpose of the test
+ #sed -i -e "s/localhost/127.0.0.1/g" gio/tests/gsocketclient-slow.c || die
+ else
+ # Don't build tests, also prevents extra deps, bug #512022
+ sed -i -e '/subdir.*tests/d' {.,gio,glib}/meson.build || die
+ fi
+
+ # Don't build fuzzing binaries - not used
+ sed -i -e '/subdir.*fuzzing/d' meson.build || die
+
+ # gdbus-codegen is a separate package
+ sed -i -e '/install_dir/d' gio/gdbus-2.0/codegen/meson.build || die
+ sed -i -e '/install : true/d' gio/gdbus-2.0/codegen/meson.build || die
+
+ # Same kind of meson-0.50 issue with some installed-tests files; will likely be fixed upstream soon
+ sed -i -e '/install_dir/d' gio/tests/meson.build || die
+
+ cat > "${T}/glib-test-ld-wrapper" <<-EOF
+ #!/usr/bin/env sh
+ exec \${LD:-ld} "\$@"
+ EOF
+ chmod a+x "${T}/glib-test-ld-wrapper" || die
+ sed -i -e "s|'ld'|'${T}/glib-test-ld-wrapper'|g" gio/tests/meson.build || die
+
+ # make default sane for us
+ if use prefix ; then
+ sed -i -e "s:/usr/local:${EPREFIX}/usr:" gio/xdgmime/xdgmime.c || die
+ # bug #308609, without path, bug #314057
+ export PERL=perl
+ fi
+
+ if [[ ${CHOST} == *-solaris* ]] ; then
+ # fix standards conflicts
+ sed -i \
+ -e 's/\<\(_XOPEN_SOURCE_EXTENDED\)\>/_POSIX_PTHREAD_SEMANTICS/' \
+ -e '/\<_XOPEN_SOURCE\>/s/\<2\>/600/' \
+ meson.build || die
+ sed -i -e '/#define\s\+_POSIX_SOURCE/d' \
+ glib/giounix.c || die
+ fi
+
+ # disable native macOS integrations
+ sed -i -e '/glib_conf.set(.HAVE_\(CARBON\|COCOA\).,/s/true/false/' \
+ meson.build || die
+ sed -i \
+ -e '/AvailabilityMacros.h/d' \
+ gio/giomodule.c || die
+
+ default
+ gnome2_environment_reset
+ # TODO: python_name sedding for correct python shebang? Might be relevant mainly for glib-utils only
+}
+
+multilib_src_configure() {
+ # TODO: figure a way to pass appropriate values for all cross properties
+ # that glib uses (search for get_cross_property)
+ #if tc-is-cross-compiler ; then
+ # https://bugzilla.gnome.org/show_bug.cgi?id=756473
+ # TODO-meson: This should be in meson cross file as 'growing_stack'
+ # property; and more, look at get_cross_property
+ #case ${CHOST} in
+ #hppa*|metag*) export glib_cv_stack_grows=yes ;;
+ #*) export glib_cv_stack_grows=no ;;
+ #esac
+ #fi
+
+ use debug && EMESON_BUILD_TYPE=debug
+ local emesonargs=(
+ -Ddefault_library=$(usex static-libs both shared)
+ -Druntime_dir="${EPREFIX}"/run
+ $(meson_feature selinux)
+ $(meson_use xattr)
+ -Dlibmount=enabled # only used if host_system == 'linux'
+ -Dman-pages=enabled
+ $(meson_use systemtap dtrace)
+ $(meson_use systemtap)
+ $(meson_feature sysprof)
+ $(meson_use doc documentation)
+ $(meson_use test tests)
+ -Dinstalled_tests=false
+ -Dnls=enabled
+ -Doss_fuzz=disabled
+ $(meson_native_use_feature elf libelf)
+ -Dmultiarch=false
+ $(meson_native_use_feature introspection)
+ )
+ meson_src_configure
+}
+
+multilib_src_test() {
+ export XDG_CONFIG_DIRS=/etc/xdg
+ export XDG_DATA_DIRS=/usr/local/share:/usr/share
+ export G_DBUS_COOKIE_SHA1_KEYRING_DIR="${T}/temp"
+ export LC_TIME=C # bug #411967
+ export TZ=UTC
+ unset GSETTINGS_BACKEND # bug #596380
+ python_setup
+
+ # https://bugs.gentoo.org/839807
+ local -x SANDBOX_PREDICT=${SANDBOX_PREDICT}
+ addpredict /usr/b
+
+ # Related test is a bit nitpicking
+ mkdir "$G_DBUS_COOKIE_SHA1_KEYRING_DIR" || die
+ chmod 0700 "$G_DBUS_COOKIE_SHA1_KEYRING_DIR" || die
+
+ meson_src_test --timeout-multiplier 20 --no-suite flaky
+}
+
+multilib_src_install() {
+ meson_src_install
+ keepdir /usr/$(get_libdir)/gio/modules
+}
+
+multilib_src_install_all() {
+ # These are installed by dev-util/glib-utils
+ # TODO: With patching we might be able to get rid of the python-any deps
+ # and removals, and test depend on glib-utils instead; revisit now with
+ # meson
+ rm "${ED}/usr/bin/glib-genmarshal" || die
+ rm "${ED}/usr/share/man/man1/glib-genmarshal.1" || die
+ rm "${ED}/usr/bin/glib-mkenums" || die
+ rm "${ED}/usr/share/man/man1/glib-mkenums.1" || die
+ rm "${ED}/usr/bin/gtester-report" || die
+ rm "${ED}/usr/share/man/man1/gtester-report.1" || die
+ # gdbus-codegen manpage installed by dev-util/gdbus-codegen
+ rm "${ED}/usr/share/man/man1/gdbus-codegen.1" || die
+}
+
+pkg_preinst() {
+ xdg_pkg_preinst
+
+ # Make gschemas.compiled belong to glib alone
+ local cache="/usr/share/glib-2.0/schemas/gschemas.compiled"
+
+ if [[ -e ${EROOT}${cache} ]]; then
+ cp "${EROOT}"${cache} "${ED}"/${cache} || die
+ else
+ touch "${ED}"${cache} || die
+ fi
+
+ multilib_pkg_preinst() {
+ # Make giomodule.cache belong to glib alone
+ local cache="/usr/$(get_libdir)/gio/modules/giomodule.cache"
+
+ if [[ -e ${EROOT}${cache} ]]; then
+ cp "${EROOT}"${cache} "${ED}"${cache} || die
+ else
+ touch "${ED}"${cache} || die
+ fi
+ }
+
+ # Don't run the cache ownership when cross-compiling, as it would end up with an empty cache
+ # file due to inability to create it and GIO might not look at any of the modules there
+ if ! tc-is-cross-compiler ; then
+ multilib_foreach_abi multilib_pkg_preinst
+ fi
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ # glib installs no schemas itself, but we force update for fresh install in case
+ # something has dropped in a schemas file without direct glib dep; and for upgrades
+ # in case the compiled schema format could have changed
+ gnome2_schemas_update
+
+ multilib_pkg_postinst() {
+ gnome2_giomodule_cache_update \
+ || die "Update GIO modules cache failed (for ${ABI})"
+ }
+ if ! tc-is-cross-compiler ; then
+ multilib_foreach_abi multilib_pkg_postinst
+ else
+ ewarn "Updating of GIO modules cache skipped due to cross-compilation."
+ ewarn "You might want to run gio-querymodules manually on the target for"
+ ewarn "your final image for performance reasons and re-run it when packages"
+ ewarn "installing GIO modules get upgraded or added to the image."
+ fi
+
+ for v in ${REPLACING_VERSIONS}; do
+ if ver_test "$v" "-lt" "2.63.6"; then
+ ewarn "glib no longer installs the gio-launch-desktop binary. You may need"
+ ewarn "to restart your session for \"Open With\" dialogs to work."
+ fi
+ done
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ gnome2_schemas_update
+
+ if [[ -z ${REPLACED_BY_VERSION} ]]; then
+ multilib_pkg_postrm() {
+ rm -f "${EROOT}"/usr/$(get_libdir)/gio/modules/giomodule.cache || die
+ }
+ multilib_foreach_abi multilib_pkg_postrm
+ rm -f "${EROOT}"/usr/share/glib-2.0/schemas/gschemas.compiled || die
+ fi
+}
diff --git a/dev-libs/glib/metadata.xml b/dev-libs/glib/metadata.xml
index 30120d5d64c7..2566d0dec213 100644
--- a/dev-libs/glib/metadata.xml
+++ b/dev-libs/glib/metadata.xml
@@ -14,6 +14,9 @@
Enable support for listing and extracting from
ELF resource files with gresource tool
</flag>
+ <flag name="introspection">
+ Enable generating introspection data (requires <pkg>dev-libs/gobject-introspection</pkg> )
+ </flag>
<flag name="mime">
Pull in shared MIME database that many glib-based
applications require at runtime to detect or open files. Warning:
diff --git a/dev-libs/gobject-introspection-common/Manifest b/dev-libs/gobject-introspection-common/Manifest
index 4fb1ed481484..229989d13974 100644
--- a/dev-libs/gobject-introspection-common/Manifest
+++ b/dev-libs/gobject-introspection-common/Manifest
@@ -1,5 +1,7 @@
DIST gobject-introspection-1.76.1.tar.xz 1055416 BLAKE2B 2251c34b543c95f95bdec6853c8234db1b2e6271e729eaa5abf28e39c7718b326e0813a1214c62fb4634fd11218c4c856e6651de09081b01c9fcf8f73b8cf316 SHA512 84331a30f8854d2259609650c21aadd6363ea1417a75828bd395f8f4346da1c6d6550cff5f2c9f5f6fd6fbf2a9d27b5880c2ee1616fa905c5f362384d481a916
DIST gobject-introspection-1.78.1.tar.xz 1060296 BLAKE2B 115cf9ea27cec2d8d3a84081c909b72144fd1568bc316677c26f49652dc93b34fba10701678ad4977dcf97a89f7608545fbd2d73c2503c87635b2102e66ae024 SHA512 a3081882995a762645b04faa71082dbd523bee845519007e48b13235aad8a4cd4c74f0d042a6c17710125f945bd970e4b76e95a559274e294d595e04725a4e97
+DIST gobject-introspection-1.80.1.tar.xz 1040228 BLAKE2B 7a8c1da9bc8aef293deedde1eed97536fa2f42f79a9761ac8ededb0676e46b636545a69e20e63d812844aeb626fa4fb7ce3c7922e51554fdc79560f16443acd9 SHA512 f45c2c1b105086488d974c6134db9910746df8edb187772f2ecd249656a1047c8ac88ba51f5bf7393c3d99c3ace143ecd09be256c2f4d0ceee110c9ad51a839a
EBUILD gobject-introspection-common-1.76.1.ebuild 901 BLAKE2B efa7e6830895288f3c933c037577dc13212fe3a6547e9794689cdbd8b52eecf4eedb461af85db71539a16b92cefcf9487a892cdbdb70dc46158295b92fd5e0b5 SHA512 89018fc4b94c67be73471d2571f8f421131d3455b92337fcd732f64df9fd6fe194f5148d8cdaccf1fe592d308389887ec63ed1d8ad3d01740003af7dbf7b99a4
EBUILD gobject-introspection-common-1.78.1.ebuild 901 BLAKE2B 025ecfa7e46ea0ed60e10d27064250052848b957e853802cfb7b77b4522104495b7dc49fdffe7663d77d7f933792b12c5184667c275257f92771695ff1bbc29d SHA512 39dffbcfc14f78e845906e5553de423f1f97fdb8114465a595416ab8e4370dd75eb7bc07f1a0f572b4c4c84fd1792c4479495152a9f9db88cf8137fc93d67478
+EBUILD gobject-introspection-common-1.80.1.ebuild 883 BLAKE2B 69a4e519b9b8496c14f96d0573849801519baa2c9966fa940e3115965094952e10447cf171ab1e3b411766ac5ea080eaae36c4643307811f7577a5eee6ad60a2 SHA512 1966c3e3d614bb327cf827c8aa3b5c40424bf1d6772044bbe4646857c5120621c6ea3df83e2d2c5e0eb3526593885af1351c841d021ded40f9ec241210006b81
MISC metadata.xml 387 BLAKE2B 53c8885e0d64951fab2ea24063b41dd75c1c2f1e2a8038ff760175126c3597dcfc8ed8e7ca98bcfd47c6e303b68cc7473f283193cdce010292e4a4c9d0f60bb8 SHA512 57c817a11ca62240745f69a12685d0ab11ceaa960acf2e6cdf7b47361239a3b29c23b696a24f4314eae80fc7dd9974860d5c422e9f6fd31ea54476fe74f0ebd4
diff --git a/dev-libs/gobject-introspection-common/gobject-introspection-common-1.80.1.ebuild b/dev-libs/gobject-introspection-common/gobject-introspection-common-1.80.1.ebuild
new file mode 100644
index 000000000000..af171bc1cfe7
--- /dev/null
+++ b/dev-libs/gobject-introspection-common/gobject-introspection-common-1.80.1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+GNOME_ORG_MODULE="gobject-introspection"
+
+inherit gnome.org
+
+DESCRIPTION="Build infrastructure for GObject Introspection"
+HOMEPAGE="https://gi.readthedocs.io/"
+
+LICENSE="HPND"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+RDEPEND="!<${CATEGORY}/${GNOME_ORG_MODULE}-${PV}"
+# Use !<${PV} because mixing gobject-introspection with different version of -common can cause issues like:
+# https://forums.gentoo.org/viewtopic-p-7421930.html
+
+src_configure() { :; }
+
+src_compile() { :; }
+
+src_install() {
+ insinto /usr/share/aclocal
+ doins m4/introspection.m4
+
+ insinto /usr/share/gobject-introspection-1.0
+ doins Makefile.introspection
+}
diff --git a/dev-libs/gobject-introspection/Manifest b/dev-libs/gobject-introspection/Manifest
index 9599ea048fe4..a59931cc6d9d 100644
--- a/dev-libs/gobject-introspection/Manifest
+++ b/dev-libs/gobject-introspection/Manifest
@@ -1,6 +1,8 @@
AUX gobject-introspection-1.78.1-tests-py312.patch 2770 BLAKE2B 18e74962bddd40e754225b14eac1a631a6aaf4ec2be81a172119438b9cf3adc248c71153d98d069af464366896eb67dae7aaa80cea5592d88f2d5c6f5a1a4f28 SHA512 c0d9c020b0506966d7a98f9d708464128721c9bd8ff23ed74f4fbe82e1b4c7d7aa19c960ebf39cd1c58836ece14b56284f64ccbf678a017181c48eaade904272
DIST gobject-introspection-1.76.1.tar.xz 1055416 BLAKE2B 2251c34b543c95f95bdec6853c8234db1b2e6271e729eaa5abf28e39c7718b326e0813a1214c62fb4634fd11218c4c856e6651de09081b01c9fcf8f73b8cf316 SHA512 84331a30f8854d2259609650c21aadd6363ea1417a75828bd395f8f4346da1c6d6550cff5f2c9f5f6fd6fbf2a9d27b5880c2ee1616fa905c5f362384d481a916
DIST gobject-introspection-1.78.1.tar.xz 1060296 BLAKE2B 115cf9ea27cec2d8d3a84081c909b72144fd1568bc316677c26f49652dc93b34fba10701678ad4977dcf97a89f7608545fbd2d73c2503c87635b2102e66ae024 SHA512 a3081882995a762645b04faa71082dbd523bee845519007e48b13235aad8a4cd4c74f0d042a6c17710125f945bd970e4b76e95a559274e294d595e04725a4e97
+DIST gobject-introspection-1.80.1.tar.xz 1040228 BLAKE2B 7a8c1da9bc8aef293deedde1eed97536fa2f42f79a9761ac8ededb0676e46b636545a69e20e63d812844aeb626fa4fb7ce3c7922e51554fdc79560f16443acd9 SHA512 f45c2c1b105086488d974c6134db9910746df8edb187772f2ecd249656a1047c8ac88ba51f5bf7393c3d99c3ace143ecd09be256c2f4d0ceee110c9ad51a839a
EBUILD gobject-introspection-1.76.1.ebuild 1960 BLAKE2B c399a1996b2f45bf4dbab33e5d2a5e1773066eb7e2d6761102733c4cbc2ac4ac42e4aaa21fa8eeee172f07e1307d737e33b065482e8007b4517af305bd923c44 SHA512 dd66aaa7dbb68ac507800fb1b7f07f08944120c6bc394461f6ec5f35d84ded3bc65ef722744363f96806f713fa66fd1815152af795661f5b3583cde8cd68dd03
EBUILD gobject-introspection-1.78.1.ebuild 2079 BLAKE2B b2474e1d98196407e1b9de23948e03b7760746636fc7008bfd7684b4845285033f93b77588b2b22259077d7451ab706e065213a0835ce9c09f8d3e5d81d9283e SHA512 5884026cf73b3f852a0404f8a1b4cbd6d11618584ff4155577ae6558e18923fd5c521c04c2e5c60790beb296eb597ffb9d10ce344bca3db14b97d5aafd35f260
+EBUILD gobject-introspection-1.80.1.ebuild 1973 BLAKE2B 67a8f20a5617c02db0a77dc271ac192cebfa740d02c9835f322939e85bf880bddd0ab29fe3877adae1547b38e40d828d2528e91d91198dd038cae3950b6a4ed1 SHA512 db36a121352af6d8e87cb584e4daa7d075ec28fa08abd59a95f074c9329d239ac3e0b0fa01d6640765154c90f0dc65e0e6b95425554b9996f26bcb3e717c716b
MISC metadata.xml 485 BLAKE2B 6ecc9396bcb29a8365be4058592c307ddcb0cc16ab56723ca32a378b5608b86378ab291345a6a3ccbe8225c6ffc91b6ba1e2996b5b0d1f4271d0757bf376ef8e SHA512 43a479854b1d5783c028ecfd8357a632db089f95de9e703608de7f229a37beee5e43781ff3f68b2dfa9bceac1355597373d31d209fdea0301917be5fbe7e7fbe
diff --git a/dev-libs/gobject-introspection/gobject-introspection-1.80.1.ebuild b/dev-libs/gobject-introspection/gobject-introspection-1.80.1.ebuild
new file mode 100644
index 000000000000..a6d1be4002fe
--- /dev/null
+++ b/dev-libs/gobject-introspection/gobject-introspection-1.80.1.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+PYTHON_REQ_USE="xml(+)"
+inherit gnome.org meson python-single-r1 xdg
+
+DESCRIPTION="Introspection system for GObject-based libraries"
+HOMEPAGE="https://gi.readthedocs.io/"
+
+LICENSE="LGPL-2+ GPL-2+"
+SLOT="0"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+IUSE="doctool gtk-doc test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# virtual/pkgconfig needed at runtime, bug #505408
+RDEPEND="
+ >=dev-libs/gobject-introspection-common-${PV}
+ >=dev-libs/glib-2.79.0:2
+ dev-libs/libffi:=
+ doctool? (
+ $(python_gen_cond_dep '
+ dev-python/mako[${PYTHON_USEDEP}]
+ dev-python/markdown[${PYTHON_USEDEP}]
+ ')
+ )
+ virtual/pkgconfig
+ ${PYTHON_DEPS}
+"
+# Wants real bison, not app-alternatives/yacc
+DEPEND="${RDEPEND}"
+BDEPEND="
+ gtk-doc? (
+ >=dev-util/gtk-doc-1.19
+ app-text/docbook-xml-dtd:4.3
+ app-text/docbook-xml-dtd:4.5
+ )
+ sys-devel/bison
+ app-alternatives/lex
+ test? (
+ x11-libs/cairo[glib]
+ $(python_gen_cond_dep '
+ dev-python/mako[${PYTHON_USEDEP}]
+ dev-python/markdown[${PYTHON_USEDEP}]
+ ')
+ )
+"
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+}
+
+src_configure() {
+ local emesonargs=(
+ $(meson_feature test cairo)
+ $(meson_feature doctool)
+ #-Dglib_src_dir
+ $(meson_use gtk-doc gtk_doc)
+ #-Dcairo_libname
+ -Dpython="${EPYTHON}"
+ -Dbuild_introspection_data=true
+ #-Dgir_dir_prefix
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+ python_fix_shebang "${ED}"/usr/bin/
+ python_optimize "${ED}"/usr/$(get_libdir)/gobject-introspection/giscanner
+
+ # Prevent collision with gobject-introspection-common
+ rm -v "${ED}"/usr/share/aclocal/introspection.m4 \
+ "${ED}"/usr/share/gobject-introspection-1.0/Makefile.introspection || die
+ rmdir "${ED}"/usr/share/aclocal || die
+}
diff --git a/dev-libs/kopeninghours/Manifest b/dev-libs/kopeninghours/Manifest
index ebb159de5f34..80080c7dcf58 100644
--- a/dev-libs/kopeninghours/Manifest
+++ b/dev-libs/kopeninghours/Manifest
@@ -1,6 +1,4 @@
AUX kopeninghours-22.04.0-boostpython.patch 3555 BLAKE2B 1d22b48e5574ffada0b89a0828bf5258321b57161061534939e95256ab3501a887a026231568e09b1d20499238284107c34c6835d33853096be62e1345356cde SHA512 562b30fe66a9e8904e79c95496c4b06e50dbbb8d328db93a655ffa7f8829ff70bc8a6b0ee7beb7840e7046b74d4d858265ec67703c6317c3fe4c87b54b40a349
-DIST kopeninghours-23.08.5.tar.xz 72568 BLAKE2B 84e418d95f4a7261786a101882000bed0ca721931cc419e0330edb0f659e38459063d49c75ca643d169e9326ed66694130cfeebef51183c89e02efd02f6f3133 SHA512 a95cd3c446699d8bd95f2f746cb8b4187c7d2027067e5c731afe371a3313a5569780110e8acbf52d125da673aff4b2567da9f2b8c07a4412cf1d7540baad7a14
DIST kopeninghours-24.05.2.tar.xz 74584 BLAKE2B 54ec52b2f59f714794f35d2e4b131beeb931b4a9d248afbcc49b0d0708c98c91501e782433cd4bcffd61b81a4d0bfd551b216c4886f8ec72cf79321840b7b5d2 SHA512 72f2276d9e48836dda32320695ab35e333336c8204d8bc84f8c777a81ebf5ff0a4a83e87375b5af9458ab46755a2456a54451fd2f50cfe4ff3d7d4067d30297a
-EBUILD kopeninghours-23.08.5.ebuild 1286 BLAKE2B 042fb48f66466d7194e1e79a4897a8a0f0e52f446156d79398f16ece6d7081d56d6c9b3e5cc55b71abe2da7458adfd06ea690776dfc07de73098cc48657f0aa5 SHA512 eb91c624af5630ecb1c5ef7e3018cf9878255f1af193328706f33ec012b7f0329416b1a8717178b9037f44b8e3724c5bf5eeb162f337d01591f6f9a8fcd1f87a
EBUILD kopeninghours-24.05.2.ebuild 1252 BLAKE2B 11e727b8be959d82dc24b387987077cd482930b3fedb75c41e1e0240f104a431a3c64cfb6e023668f39ece3812961426ada58808f7b030ecd744e4b302520c40 SHA512 9159b346376246f43a91e40485558f3b10d062b4d328cf09494ed82a50be72637098e9894c6df7222396c9c55e86b25b589f43fd671b6d8117ffd834ccca1e96
MISC metadata.xml 385 BLAKE2B b4e1572a93c2fd0cda349614b40efe3cb8c08921fb3f98ca07d7fb03b0cb1f94b7d7c163e63252b191f9e4655d7a0e56604efa61f3f2555e04db4182c128af01 SHA512 a67020858217bd47ebab751b5a96b475b9d1becbca7b06c963c058c65fd4eb6436dd24a4703902386e0fc9fb7893953764f6d43381a908cde568fad687b0d67b
diff --git a/dev-libs/kopeninghours/kopeninghours-23.08.5.ebuild b/dev-libs/kopeninghours/kopeninghours-23.08.5.ebuild
deleted file mode 100644
index 0ced49ce9bd3..000000000000
--- a/dev-libs/kopeninghours/kopeninghours-23.08.5.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-ECM_QTHELP="true"
-ECM_TEST="true"
-PVCUT=$(ver_cut 1-3)
-KFMIN=5.106.0
-QTMIN=5.15.9
-PYTHON_COMPAT=( python3_{10..12} )
-inherit ecm gear.kde.org python-single-r1
-
-DESCRIPTION="Library for parsing and evaluating OSM opening hours expressions"
-HOMEPAGE="https://api.kde.org/kopeninghours/html/index.html
-https://invent.kde.org/libraries/kopeninghours"
-
-LICENSE="LGPL-2+"
-SLOT="5"
-KEYWORDS="~amd64"
-IUSE="python"
-
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-DEPEND="
- >=dev-libs/kpublictransport-${PVCUT}:5
- >=dev-qt/qtdeclarative-${QTMIN}:5
- >=kde-frameworks/kholidays-${KFMIN}:5
- >=kde-frameworks/ki18n-${KFMIN}:5
- sys-libs/zlib
- python? (
- $(python_gen_cond_dep '
- >=dev-libs/boost-1.70:=[python,${PYTHON_USEDEP}]
- ')
- )
-"
-RDEPEND="${DEPEND}
- ${PYTHON_DEPS}
- >=dev-qt/qtquickcontrols2-${QTMIN}:5
-"
-BDEPEND="
- app-alternatives/lex
- app-alternatives/yacc
-"
-
-PATCHES=( "${FILESDIR}"/${PN}-22.04.0-boostpython.patch )
-
-pkg_setup() {
- ecm_pkg_setup
- python_setup
-}
-
-src_configure() {
- local mycmakeargs=(
- -DBOOSTPYTHON_VERSION_MAJOR_MINOR=${EPYTHON}
- $(cmake_use_find_package python Boost)
- )
- ecm_src_configure
-}
-
-src_install() {
- ecm_src_install
- python_optimize
-}
diff --git a/dev-libs/kosmindoormap/Manifest b/dev-libs/kosmindoormap/Manifest
index c7e00fd7a6eb..3202cab8eff5 100644
--- a/dev-libs/kosmindoormap/Manifest
+++ b/dev-libs/kosmindoormap/Manifest
@@ -1,6 +1,4 @@
AUX kosmindoormap-24.05.1-cmake.patch 2566 BLAKE2B 0002710f3130df5b5e0c61489ec86a73ba4b422a2bf2e1ac2bf39aacefeb14342baa7748cd562016bf93cf57a7805242660bbadd6fd5db38d9778c3f131e54d0 SHA512 e24f5b4d0705818d23632a43ef95fdc813bec4f00a44eb92b5cc53496d9319efb8f7972b06cba0c375ae3bccd79563f2ac182511f4fb425314c4812e12bbab14
-DIST kosmindoormap-23.08.5.tar.xz 384948 BLAKE2B 0936fe42b0c370dc0c57d475aa771784c75e8350e2d563140c027d047514840f99d6697e36fde027da11e22a92239b6403cf1b18a37aa8e09a3f8814cb6931c8 SHA512 9128cccbd56f51b1e8ad7f7151db0de8952a8348fb74afe3eefeb085979b26d95d1699f260d744c4f3ea5d815109f998829625db480194a8539e782e8c32537c
DIST kosmindoormap-24.05.2.tar.xz 647752 BLAKE2B 9464b424669a412b4b32958ced91c0dae9980e9387cc97b823bcdaecffca850d29f25e9b437fc1d3b4d8b0d8022c6fc7b0a8e176a20f72ee2714da1691207838 SHA512 2bf2998be61893d651dbd1a9a0e509c6cf83a122e9ee95c265bf0507706c77b20b7e64d462840d76c7b1aa6f9d884305812e32dc4058c09a0f724994d2e073b1
-EBUILD kosmindoormap-23.08.5.ebuild 1065 BLAKE2B 63fa69636fc24a5f6d9c81fd8751f1932ad96dd88e5b26a77c47d95bda6cd181f25e061ff215b36231979873c580f46e8e4141cf98d17920f52acf2cbc685fa4 SHA512 6932f6c69a5536aca67470eaab9b2a36a274f906a7d5f3934077211696d18d5677185d7308d6c9c893fa549c29e4a56adc3d3e27770ec15ccdfceb16db57ec03
EBUILD kosmindoormap-24.05.2.ebuild 1219 BLAKE2B 002be95cf7f44f2238a7a533135d9168ece08a88b7b246670f0db8bb676384d903a8226fd28f654c7c10767937cdd6b9cee6b0599c9f05ba03e335275f3770e9 SHA512 9707c175b3b078c1bafcc39859243b98983340782002d796b25a441cbb280f61cc719af54d684fbe5624a9f17d3d1668c85d5792f004cfb447700ac7e1122d4a
-MISC metadata.xml 503 BLAKE2B f01510925e1ee73762bc7568ecf8667e428d454329426253875917175fbbc3311490b7639c3113d0826f2cdecb8abb2aa7020de159e7a8cdfc93bd74a0503023 SHA512 63ece480304c55a91352b8f9029ceffa9a5a0d28a4c6b4ae8cb8c0ff5973b834a884d425e9139b446fc7e4d823c57a653bc7eae6549c121b62f94472dfd6bbc3
+MISC metadata.xml 385 BLAKE2B 09cdfbec2c328805a9fb4f3c1b6860ae6be84c1bed50bf905bdc6233c69a6af7fa983844629ed60cc5224181b7e27df9da845ed11aadb33a71387028062f76d7 SHA512 e85e6da9c667c7587a9ec0e2854bbeb5a6e3d07fbecd7e0fb83eac52030f5c07da7c16ab89208d1d7117ef64d8a63f8d28167dd2a7d592d7f36cd26dae711254
diff --git a/dev-libs/kosmindoormap/kosmindoormap-23.08.5.ebuild b/dev-libs/kosmindoormap/kosmindoormap-23.08.5.ebuild
deleted file mode 100644
index 132e337c3522..000000000000
--- a/dev-libs/kosmindoormap/kosmindoormap-23.08.5.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-ECM_TEST="true"
-PVCUT=$(ver_cut 1-3)
-KFMIN=5.106.0
-QTMIN=5.15.9
-inherit ecm gear.kde.org
-
-DESCRIPTION="Data Model and Extraction System for Travel Reservation information"
-HOMEPAGE="https://invent.kde.org/libraries/kosmindoormap"
-
-LICENSE="LGPL-2+"
-SLOT="5"
-KEYWORDS="~amd64"
-IUSE="+openinghours"
-
-COMMON_DEPEND="
- >=dev-libs/kpublictransport-${PVCUT}:5
- dev-libs/protobuf:=
- >=dev-qt/qtdeclarative-${QTMIN}:5
- >=dev-qt/qtgui-${QTMIN}:5
- >=dev-qt/qtnetwork-${QTMIN}:5
- >=kde-frameworks/ki18n-${KFMIN}:5
- sys-libs/zlib
- openinghours? ( >=dev-libs/kopeninghours-${PVCUT}:5 )
-"
-DEPEND="${COMMON_DEPEND}
- test? ( >=dev-qt/qtwidgets-${QTMIN}:5 )
-"
-RDEPEND="${COMMON_DEPEND}
- >=dev-qt/qtquickcontrols2-${QTMIN}:5
-"
-BDEPEND="
- app-alternatives/lex
- app-alternatives/yacc
-"
-
-src_configure() {
- local mycmakeargs=(
- -DCMAKE_DISABLE_FIND_PACKAGE_OsmTools=ON # we have no use for it
- $(cmake_use_find_package openinghours KOpeningHours)
- )
- ecm_src_configure
-}
diff --git a/dev-libs/kosmindoormap/metadata.xml b/dev-libs/kosmindoormap/metadata.xml
index 51bb95c924f5..4963db4002f5 100644
--- a/dev-libs/kosmindoormap/metadata.xml
+++ b/dev-libs/kosmindoormap/metadata.xml
@@ -9,7 +9,4 @@
<bugs-to>https://bugs.kde.org/</bugs-to>
<remote-id type="kde-invent">libraries/kosmindoormap</remote-id>
</upstream>
- <use>
- <flag name="openinghours">Enable support for highlighting currently open amenities/shops/etc.</flag>
- </use>
</pkgmetadata>
diff --git a/dev-libs/kpublictransport/Manifest b/dev-libs/kpublictransport/Manifest
index 39784bcd25a4..df9e35e4ac24 100644
--- a/dev-libs/kpublictransport/Manifest
+++ b/dev-libs/kpublictransport/Manifest
@@ -1,5 +1,3 @@
-DIST kpublictransport-23.08.5.tar.xz 572952 BLAKE2B 9628dfba5f73b76594b3bb97b7e4996267f9bb7f9acc024de003e28dd9754bf1c7226eb85aeae27784752356688abe28ec85b93b028c863f2c8edf9d645fd54d SHA512 43c58c14ee5827579ffcf97c42c4ac844f49c05f5e68f441c6d3d2a32bf074de08f7daf14b3ca32b25101215943601204837e5ad4e7841cd9984745769b4008f
DIST kpublictransport-24.05.2.tar.xz 662684 BLAKE2B eb331cfa35f41992182df54e051de18608ccb6b6650f83c5c2ed8382dc5f945579b237a6c64bc1ba820d1906715b42493258f8f7f2006bd49734a9aa303c5561 SHA512 5bb89da0039e372ae8b6b6dfb33850517ca9d71bc32540e5b4dc19ce89b5910a57aff6f4f7182544f90ad89da4eceaad0bc9438bc1958887158fe8f0afabaf59
-EBUILD kpublictransport-23.08.5.ebuild 995 BLAKE2B efa6f1b249d735f724fd8a568d149240f4f62062ae044cb67cb4965c77a1b61ce55efeb5fd39227d5e523230694da0464be5dc0e9738592e0c4134afd7b7e0c6 SHA512 2e9406f3caf422d513bea0992027049c21009c067450bcae58c7e25ac7760c45abe63f1ef2e93689521417e38729cda2d5d36549bc55966f8047d019bb214d0d
EBUILD kpublictransport-24.05.2.ebuild 987 BLAKE2B bd5bf4ff4b41f22de39037d1f62d5d8c7b12787c89f1fcb8f41ab9c228dccbcf15ed106eb79f437541a1b25655b59c424fa820571cc48ce298da254f790b40ec SHA512 c7f2ab3522510f291c3d44c49d844ef1ce3b05ea9f64bda1ad05ebe841fd1993921dd6dadc0ed21b87e088badf73d2abc3c209290f7ff49f25aa049912b8cae3
MISC metadata.xml 388 BLAKE2B a5ab7966c17200f79bad40dffdce29d2077a122179e8afa69d7e381d018062c563f309d57b2d409eaee5e271a64961aea1d11a7733739c51211219ab97892061 SHA512 ea7dc1d0206f82d54a1cdb18ba8225287ef2b28a97d302d4e239dd16358db2a4ef33f890c1e080a34d4211a92dab91fbb7bfb067865164afbeb5b49a637cf4a4
diff --git a/dev-libs/kpublictransport/kpublictransport-23.08.5.ebuild b/dev-libs/kpublictransport/kpublictransport-23.08.5.ebuild
deleted file mode 100644
index b769c4eea8e6..000000000000
--- a/dev-libs/kpublictransport/kpublictransport-23.08.5.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-ECM_QTHELP="true"
-ECM_TEST="true"
-KFMIN=5.106.0
-QTMIN=5.15.9
-inherit ecm gear.kde.org
-
-DESCRIPTION="Library for accessing public transport timetables and other information"
-HOMEPAGE="https://invent.kde.org/libraries/kpublictransport
- https://www.volkerkrause.eu/2019/03/02/kpublictransport-introduction.html"
-
-LICENSE="LGPL-2+"
-SLOT="5"
-KEYWORDS="~amd64"
-IUSE="networkmanager"
-
-RDEPEND="
- dev-libs/protobuf:=
- >=dev-qt/qtdeclarative-${QTMIN}:5
- >=dev-qt/qtgui-${QTMIN}:5
- >=dev-qt/qtnetwork-${QTMIN}:5[ssl]
- >=kde-frameworks/ki18n-${KFMIN}:5
- sys-libs/zlib
- networkmanager? ( >=kde-frameworks/networkmanager-qt-${KFMIN}:5 )
-"
-DEPEND="${RDEPEND}
- test? ( >=dev-qt/qtwidgets-${QTMIN}:5 )
-"
-
-src_configure() {
- local mycmakeargs=(
- -DCMAKE_DISABLE_FIND_PACKAGE_OsmTools=ON # we have no use for it
- $(cmake_use_find_package networkmanager KF5NetworkManagerQt)
- )
- ecm_src_configure
-}
diff --git a/dev-libs/liblouis/Manifest b/dev-libs/liblouis/Manifest
index 114b0de3b081..fb058a1cee85 100644
--- a/dev-libs/liblouis/Manifest
+++ b/dev-libs/liblouis/Manifest
@@ -1,7 +1,9 @@
DIST liblouis-3.23.0.tar.gz 16738612 BLAKE2B b4508d27eaa9669bb2a1fbaac55edb3a85d3d2df18a8b26f4c9c396579b04614da3b3bcd6af45459d9129d2b81a920262dcb8fef7bee4290752174411fd66109 SHA512 25819758fc987ed378c439c5d40efd2692247a6020a40e5909320021e518e0518f5b022dda4ea5c7006a0f1ce2a4225d4ee1404560987bb2dd83504d58aa09db
DIST liblouis-3.25.0.tar.gz 16939419 BLAKE2B f67dc1ee3aa9eb32fcf0693b3a31d40c56f048b393785011ec2b4c61611a3ab67d181d1e76148c489e443e3b0c4d5f7846ac1b4810ffa2c6a6e1d081cceab6ae SHA512 4e6456f30e845b955e98346cb94bdd4eaa6aff30f3e29fbd4e91c5bb58d1182c679fbf8afa27d7031c80d5755ae8567b830fa57c175522a038ef18d1bdc0707d
DIST liblouis-3.29.0.tar.gz 17073843 BLAKE2B b7735f4c59c46cef55f4748b54395b95f4f3623be37bd42bbed4249232d5ab4ad966e4f08945f91516be30f19735ed774411cfe4bc8e1c7822f04af2d0b0db27 SHA512 c2f51686e869921658a95a58102799ebcf45da9b73f7d81912462451236134be7c148b78f35a1e0586cd349bbcb62238218c9ae547092bed9303238c22963589
+DIST liblouis-3.30.0.tar.gz 17150643 BLAKE2B db2ba6c251afa7f142b3c4c4457b3ec17ed8294bdfd8af4eeb2157416c0192bb06448ff13b1f8d82fc47613c595529337175b78e563551e1a1ebb221121f50f3 SHA512 c98ad99db2b44a1ccddaddf0f475a6b9e7d6a331a20f79e1bf05fbe4c613e5726be1f5aafffa3ef67d0b3bbb107e372e3147e28daa6da1efe1db77d942b28283
EBUILD liblouis-3.23.0.ebuild 1759 BLAKE2B 912ab7776d3d0e4dad6906c993f4bc3dc47466ebb286705edac8205ec188187897769881181026839c2057ea6c11cc433d6a648fa99af5fd8a58c305ce177b58 SHA512 c2e7c1ff3ad718f1ebc651dcc87c516a96599468f9d3f3605a4715fccc2e6bc0353e77c409b6c5355ad6080fa5a9523a12a9e69040b52ac621e07d4c95a5e3d4
EBUILD liblouis-3.25.0.ebuild 2418 BLAKE2B d91afdba655494c4e8c7f350ae675d6a4647b52d2732d418b9cd2bc3279dae85726d472b9d0d3d1c4190975eda3f3dc2362e4136f1a3f5b5035b6341ccf93592 SHA512 cb5ff4d9424be649235e31cf3af3e84a5386bcd293dd87b60a7d24d06360a44687ad5444b0dcd435dc27b39f2fbfe6de49fead1dc000edae850825813d6a6a95
EBUILD liblouis-3.29.0.ebuild 2832 BLAKE2B 4a2e7aafbae058e88ec2ff02435eaaf75bad7e836f93abc4b3e714925ddf7dedf25ca7b307a5da063236cf8774514a0a327ad1ebddc24f5a77f3ffcf71ddf26e SHA512 8e4361236ca0a2b53fe5403017560ffa64a1b09e51c28780612d17bf09c73856cc989e5038a895277671a2dd323d4d52b8c6bf8d7d6fee42bffb2f848912e1c3
+EBUILD liblouis-3.30.0.ebuild 2836 BLAKE2B 116a70679950f694f132df8a9cbd64e97a4b7795107b7cb65aba516ccd19e0a19a10a85142075e02393c10b82a3e244624a39ef890621c485b5f69307bd262d6 SHA512 bd8ec8938709b5a0dff2d9a221f5ca086be6cc13b77078757baba9e4f9b89fb001b230b4c5712085e87c6696c2c52ffac28ee53ed69bdda1619687189e4bbf3e
MISC metadata.xml 352 BLAKE2B 5c562663af1cb8a830ef585416cd7dbd4977393310fb2216ac6fb5bbaa594ad4fb144bac1a49d161e5946978cbc28acdbaf5d59e781da5438d7116f34c259290 SHA512 23c7fd40c40c8e574d995d0fdbe56242e9b1874d576ba8a34cee80e3c3e41785e782ca37fb3f89665c24d5857cb956b70c9219dc3dc35cb209f947f0b267c4be
diff --git a/dev-libs/liblouis/liblouis-3.30.0.ebuild b/dev-libs/liblouis/liblouis-3.30.0.ebuild
new file mode 100644
index 000000000000..fdd585cad1e6
--- /dev/null
+++ b/dev-libs/liblouis/liblouis-3.30.0.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+DISTUTILS_SINGLE_IMPL=1
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="An open-source braille translator and back-translator"
+HOMEPAGE="https://github.com/liblouis/liblouis"
+SRC_URI="https://github.com/liblouis/liblouis/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0/20" # follows LIBLOUIS_CURRENT in configure.ac
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+RESTRICT="!test? ( test )"
+
+# texlive-core for patgen which is required by lou_maketable
+RDEPEND="
+ ${PYTHON_DEPS}
+ app-text/texlive-core
+ test? ( dev-libs/libyaml )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ ${DISTUTILS_DEPS}
+ ${PYTHON_DEPS}
+ sys-apps/help2man
+"
+
+src_prepare() {
+ default
+
+ #1. bug #913705
+ #2. Use correct python version
+ sed -i \
+ -e "s|\$CURDIR/lou_maketable.d|${EPREFIX}/usr/libexec/lou_maketable|" \
+ -e "s|python3|${EPYTHON}|" \
+ tools/lou_maketable.d/lou_maketable.in || die
+
+ pushd python > /dev/null || die
+ distutils-r1_src_prepare
+ popd > /dev/null || die
+}
+
+src_configure() {
+ # -fanalyzer substantially slows down the build and isn't useful for
+ # us. It's useful for upstream as it's static analysis, but it's not
+ # useful when just getting something built.
+ export gl_cv_warn_c__fanalyzer=no
+
+ econf --enable-ucs4 $(use_with test yaml)
+}
+
+src_compile() {
+ default
+
+ pushd python > /dev/null || die
+ # setup.py imports liblouis to get the version number,
+ # and this causes the shared library to be dlopened
+ # at build-time. Hack around it with LD_PRELOAD.
+ # Thanks ArchLinux.
+ LD_PRELOAD+=":${S}/liblouis/.libs/liblouis.so" distutils-r1_src_compile
+ popd > /dev/null || die
+}
+
+src_test() {
+ default
+
+ pushd python > /dev/null || die
+ LD_PRELOAD+=":${S}/liblouis/.libs/liblouis.so" distutils-r1_src_test
+ popd > /dev/null || die
+}
+
+python_test() {
+ local -x LOUIS_TABLEPATH="${S}"/tables
+ "${EPYTHON}" tests/test_louis.py || die
+}
+
+python_install() {
+ distutils-r1_python_install
+ python_scriptinto /usr/libexec/lou_maketable
+ python_doexe ../tools/lou_maketable.d/*.py
+}
+
+src_install() {
+ pushd python > /dev/null || die
+ LD_PRELOAD+=":${S}/liblouis/.libs/liblouis.so" distutils-r1_src_install
+ popd > /dev/null || die
+
+ # These need to be after distutils src_install, or it'll try to install them from under python/ as well
+ DOCS=( README AUTHORS NEWS ChangeLog doc/liblouis.txt )
+ HTML_DOCS=( doc/liblouis.html )
+ default
+
+ # bug #913705
+ mkdir -p "${ED}"/usr/libexec/lou_maketable || die
+ mv "${ED}"/usr/bin/lou_maketable.d/*.{mk,pl,sh} "${ED}"/usr/libexec/lou_maketable/ || die
+ rm -r "${ED}"/usr/bin/lou_maketable.d || die
+
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/dev-libs/libportal/Manifest b/dev-libs/libportal/Manifest
index 5f9c717174be..d971313a424e 100644
--- a/dev-libs/libportal/Manifest
+++ b/dev-libs/libportal/Manifest
@@ -1,4 +1,5 @@
+AUX 6cd7c2ab82575b76f876ee2bd2d31f6cb77f022f.patch 1981 BLAKE2B ce69f3b2b95b94df487c1cb46a7a50949bdc721d93bb7039ae196fa52941db7383a1e49aa4560a87a35f83f1794ff50e8a2af39fa6d0eed285e03b64b8d911a0 SHA512 7d7106c258d0dfa96d9daf678883a9a60cc61e8fed189f74bae99d2d0dbea1e2b2b9d6fd6d00a2d97c225df30a1fe53ca007a48543b4c686ccd9d49bd5ebae5c
DIST libportal-0.7.1.tar.xz 74268 BLAKE2B b519fa88735d640a74e18cc791ec69862f136b793a7c855b1f3873cf6b15626d69088747f1a7ff54f8cd96f79e82e3df31e5349e3da57906e769b8f809f4ba34 SHA512 cbc50bfd86787fffc975fc53835acc6c3c0fd54b7ee02fce1983f1bd0fc40b15a0537780cd5e943ecedcf951840080a0f55a23a96e706223e52a6144ee70332c
-EBUILD libportal-0.7.1-r1.ebuild 2454 BLAKE2B a8a720fb91ec521cc31bc5262abdc1a935d575e8aaea1888e3a704b19038af1c240670b20cf0773d7f5b96591af2b2745be97cd8f07861ebd7ce22e8d035d2ff SHA512 330ac6729cdb42ca255c272733e73cc732cb064c85141eff52a4eb621d7a5067e0d2ad48d3caf15b10c00fed6dfecab434b3167585995a26e19356d798fd704c
-EBUILD libportal-0.7.1.ebuild 2241 BLAKE2B 4b3afb6a818448ed61ba47cd4bfe57a3ce209cb8e1ec30223b08b0c2d9784d7976f6b4755fbffe269018181faeadbedc1011f2b7e700386b164b9864e1ef9327 SHA512 5b5b82a51981025253255548e017c3442dde465f3a2fd5ca5fc7d3fc34f118b672b3b33709aa0e113f345570d659d2c167278f14545363d83df283099656fd9a
+EBUILD libportal-0.7.1-r1.ebuild 2589 BLAKE2B 20f5354a536ca366fa26d8d83b91ee7518e5bd52ad7e1e70cbcc993c7fe786ed00a95e21665fc6ae97fc2f4091d028a9beefb88865a79a840c4847551a0f3552 SHA512 fcb113dc85aad599eb08412553ad0305a72a6cff406658c6b52fe13cd7a047a3e8c0fc763562bc9e330cb9c066c60da5dc771164b7ef59c0bbfa9db8199d1ce9
+EBUILD libportal-0.7.1.ebuild 2379 BLAKE2B df03f92a4cdfa7bc58265767aafc6247dadf45125f492c37115057eab285d30d3709ee40309f82ab504fe10d4f65de176b37ae5af4241ebb9c4e438067bd243a SHA512 ef635e2939355f3cb4ac4679be407da0b50eb6f24b08b98a10fef221460aa6c10715498794b5373342c2492e70fea5fe5cd7cdfee4d364ce4446205a82277b40
MISC metadata.xml 346 BLAKE2B 36d7ac5ecd2e44a96508cd386bf9cdde323bcf70778bddde22780302958f79c57d337439d11629ea85d52c4990cc85b78aadf500241423ddfd31bd66cc6fbc7a SHA512 dc36f454412fca9a812721598d9e279ab33b83399388ca8722d6ab5dfadb7f54a5702b7dee3f5af29549cded85d8effe1b282cf6911eefafff7d9b848420d8b8
diff --git a/dev-libs/libportal/files/6cd7c2ab82575b76f876ee2bd2d31f6cb77f022f.patch b/dev-libs/libportal/files/6cd7c2ab82575b76f876ee2bd2d31f6cb77f022f.patch
new file mode 100644
index 000000000000..ea055c832dc8
--- /dev/null
+++ b/dev-libs/libportal/files/6cd7c2ab82575b76f876ee2bd2d31f6cb77f022f.patch
@@ -0,0 +1,47 @@
+From 6cd7c2ab82575b76f876ee2bd2d31f6cb77f022f Mon Sep 17 00:00:00 2001
+From: Simon McVittie <smcv@debian.org>
+Date: Tue, 26 Dec 2023 14:35:46 +0000
+Subject: [PATCH] pyportaltest: Only create one session bus per DBusTestCase
+ subclass
+
+DBusTestCase.start_session_bus() is a class method, and can only be
+called once per class, because DBusTestCase.tearDownClass() will only
+clean up one session bus. In older versions of dbusmock, calling it more
+than once will result in dbus-daemon processes being leaked; since
+0.30.0, calling it more than once will result in an assertion failure.
+
+Resolves: https://github.com/flatpak/libportal/issues/136
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1058245
+Signed-off-by: Simon McVittie <smcv@debian.org>
+---
+ tests/pyportaltest/__init__.py | 10 +++++++++-
+ 1 file changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/tests/pyportaltest/__init__.py b/tests/pyportaltest/__init__.py
+index af053c2a..80f04a91 100644
+--- a/tests/pyportaltest/__init__.py
++++ b/tests/pyportaltest/__init__.py
+@@ -83,6 +83,14 @@ def setUpClass(cls):
+ except AttributeError:
+ pytest.skip("Updated version of dbusmock required")
+
++ cls.__have_session_bus = False
++
++ @classmethod
++ def ensure_session_bus(cls):
++ if not cls.__have_session_bus:
++ cls.__have_session_bus = True
++ cls.start_session_bus()
++
+ def setUp(self):
+ self.p_mock = None
+ self._mainloop = None
+@@ -96,7 +104,7 @@ def setup_daemon(self, params=None, extra_templates: List[Tuple[str, Dict]] = []
+ portal name as first value and the param dict to be passed to that
+ template as second value, e.g. ("ScreenCast", {...}).
+ """
+- self.start_session_bus()
++ self.ensure_session_bus()
+ self.p_mock, self.obj_portal = self.spawn_server_template(
+ template=f"pyportaltest/templates/{self.PORTAL_NAME.lower()}.py",
+ parameters=params,
diff --git a/dev-libs/libportal/libportal-0.7.1-r1.ebuild b/dev-libs/libportal/libportal-0.7.1-r1.ebuild
index ee06945d14a1..dd7b33562a34 100644
--- a/dev-libs/libportal/libportal-0.7.1-r1.ebuild
+++ b/dev-libs/libportal/libportal-0.7.1-r1.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://github.com/flatpak/libportal/releases/download/${PV}/${P}.tar.x
LICENSE="LGPL-3"
SLOT="0/1-1-1-1" # soname of libportal{,-gtk3,-gtk4,-qt5}.so
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc x86"
IUSE="gtk gtk-doc +introspection qt5 test +vala wayland X"
RESTRICT="!test? ( test )"
REQUIRED_USE="
@@ -57,6 +57,11 @@ BDEPEND="
vala? ( $(vala_depend) )
"
+PATCHES=(
+ # backport fix for tests incompatibility with dbusmock 0.30.0
+ "${FILESDIR}"/6cd7c2ab82575b76f876ee2bd2d31f6cb77f022f.patch
+)
+
python_check_deps() {
python_has_version \
"dev-python/pytest[${PYTHON_USEDEP}]" \
diff --git a/dev-libs/libportal/libportal-0.7.1.ebuild b/dev-libs/libportal/libportal-0.7.1.ebuild
index 38a05311150b..5d36d44b83ea 100644
--- a/dev-libs/libportal/libportal-0.7.1.ebuild
+++ b/dev-libs/libportal/libportal-0.7.1.ebuild
@@ -57,6 +57,11 @@ BDEPEND="
vala? ( $(vala_depend) )
"
+PATCHES=(
+ # backport fix for tests incompatibility with dbusmock 0.30.0
+ "${FILESDIR}"/6cd7c2ab82575b76f876ee2bd2d31f6cb77f022f.patch
+)
+
python_check_deps() {
python_has_version \
"dev-python/pytest[${PYTHON_USEDEP}]" \
diff --git a/dev-libs/protobuf/Manifest b/dev-libs/protobuf/Manifest
index 7c132b6fb832..e10572d92d05 100644
--- a/dev-libs/protobuf/Manifest
+++ b/dev-libs/protobuf/Manifest
@@ -29,6 +29,6 @@ EBUILD protobuf-24.4.ebuild 2915 BLAKE2B 2fd3f84bf7e86b64393fd39962080809ef4d65b
EBUILD protobuf-25.3.ebuild 2915 BLAKE2B 75df59e6ca105a529cf582cda4371c26f0b9bf1df94fb11c3b409e1b01fcde43e0705e05212ea630839446aba819c4b8132514383f94fa2aa455b232a3f64eae SHA512 8daaf04ef736d389f634f2366e833e7c6ce40a9e60b022a31df31868b01a282f948d583270827b1714cc7cfacac4cdd0e9971944dc5b3dd823afa4696c4cf1c7
EBUILD protobuf-26.1-r1.ebuild 2722 BLAKE2B 2b4a648933fe23621fdbc67d5a6a7783d7716c1f4cbf72eec5292c3f87006a426a7444744a83d77700e94c2b411c0b5c1983cb1bb1dedd4fe8e4b3ea58b8452b SHA512 7b8cfc2fa64f4dd633ad93da7428ffaeae2cef9aea78f7032c5506abad91ab8f2da91a5598eab47f065419210686afc2a54bc49b3edbaa2801d419857de810e4
EBUILD protobuf-26.1-r2.ebuild 2915 BLAKE2B 75df59e6ca105a529cf582cda4371c26f0b9bf1df94fb11c3b409e1b01fcde43e0705e05212ea630839446aba819c4b8132514383f94fa2aa455b232a3f64eae SHA512 8daaf04ef736d389f634f2366e833e7c6ce40a9e60b022a31df31868b01a282f948d583270827b1714cc7cfacac4cdd0e9971944dc5b3dd823afa4696c4cf1c7
-EBUILD protobuf-27.2.ebuild 3693 BLAKE2B 2b069ca4cc38b05606192e9b70065bfb0eee9f2e90259ba0e86b60ceff5252f2699da233408d41d55ae1835c9b82806c6f5228da2196deb2126a33f69b913fbb SHA512 451a13a957a2629aa6c4cdc01bd673189ed52b4019b5b08b4f70c4683be161b6ac139c7aecef0bb42b9b5c56d167b58b8439d8d010987c9499cb44e9cd8c12f4
+EBUILD protobuf-27.2.ebuild 3699 BLAKE2B 03234f91b5cfe5aa855992e64e1789abb1d0de3417f2fcc5e02610654cd364addcb2bfb3cb77a8c4f7754652bad65b5d6c73275735a5aa9b81f6d655052d1476 SHA512 71131957f60c7aef844b6d1766423303599908ca93e56eea65427ff57ea33c4dfa18d7ee6eb04d30b9700c3af635be6bb08a534e52f9bca670c7ab233d0c9254
EBUILD protobuf-9999.ebuild 3693 BLAKE2B 8afae42032a489c92a8c4c1accd66b8e43a023d431ce0f4e280f05803bcab2bb313e242507284df0cfcc6dd9756a02d78b543dec66891a4165cefb09842cb7b3 SHA512 971352e81516941cbbd7287834cc06d885d358845622ebc69521d76bae82128aec25d207c9a52a97642ea623ff22ea90f67408d0b3ccc4ecf7550a999df1eb36
MISC metadata.xml 917 BLAKE2B c25c810e47e764843ad71be5eb5ebe617d881e7363ce3206401eb59c6df12969bc22bbedc34f08b0a2fbcf955de5b85aa8e4d3a964c1349f07ed1d0eb344a915 SHA512 baa5737981669f1b28ce32884698a4d91e0f1fbdde6056779307e1a6c85dde8ca36ee47ca3ce8794b996934dfafc5482afbe9532a7f3e17c833c3aef0a330376
diff --git a/dev-libs/protobuf/protobuf-27.2.ebuild b/dev-libs/protobuf/protobuf-27.2.ebuild
index d9b11f9f0d6a..e6c26cbfee3a 100644
--- a/dev-libs/protobuf/protobuf-27.2.ebuild
+++ b/dev-libs/protobuf/protobuf-27.2.ebuild
@@ -18,7 +18,7 @@ if [[ "${PV}" == *9999 ]]; then
inherit git-r3
else
SRC_URI="https://github.com/protocolbuffers/protobuf/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
MY_SLOT=$(ver_cut 1-2)
fi
diff --git a/dev-libs/yyjson/Manifest b/dev-libs/yyjson/Manifest
index 548509b67325..2483b24864df 100644
--- a/dev-libs/yyjson/Manifest
+++ b/dev-libs/yyjson/Manifest
@@ -1,6 +1,6 @@
AUX yyjson-0.7.0-disable-werror.patch 303 BLAKE2B 18a7ed6a7a054be4a89a42597926ff7ed5bd1f0ed0e5cb51287d1e43b507f7d7781f9ba78d4942fc1381b8f2dc0bbeac9ec106a9b8e8a2e461d6a6993af52056 SHA512 59e91c71eb214c0e2579a0c170199ed26f6f9bbce3cf110653fafbfe059743033948108d3d895b11bd4d43d05881d13e446981a6711b22107909e3d4647be739
DIST yyjson-0.10.0.tar.gz 1538409 BLAKE2B 84dbed32579a56a6051b7360d2ddec5b1d8991d1b6e818dcca943ee2a3b26d534c1a911995ae1b0c13fc1cdbfd45aab52e36327529405aa3d39622caa0eb75a9 SHA512 d0274bfdae6291cc54d7c306f7f9064333d3e0fd8d235428148fa5695e151e0fdd0982247a5e82fe60b27e9182ba27d5704aca4546a8dc9545117bd3a017bfb5
DIST yyjson-0.9.0.tar.gz 1531794 BLAKE2B 070b9921dbe897d345bae4fa653b48ec38a0d7a0b27a7dba476b7c62d18f0d0b79484d7a66e1fb80b0885a6ebf78a9e3a21240407736ae5106cbbc5a9bc5a677 SHA512 4b9ca85096ccfe2f513a5869eb63b175f44c67785940e02414f6a586d7dd7b772fed77a1775d9416a5f1bf17f20e18a31f0dc4e65be263019d9b95bf95366219
-EBUILD yyjson-0.10.0.ebuild 863 BLAKE2B ee20b1c59d7f7ce50eff2b1788cebac41afb74130aa9ec8314135cdb3799b131f0ce09a19ea909d2d71308dde67e8344b5d7dc7f9e80c5b873ccce7c60b55b39 SHA512 7db686d7b9e9a2ffacb83b0059fc9908faebbee5928b42eea7d7c2bcb8cf9ca4b7b7ad29a3f556339a5e7d0ccf706b4a6faab21ce4f59f667d5dd4663297c310
+EBUILD yyjson-0.10.0.ebuild 862 BLAKE2B 01b7726a21f4080c6287266db1ce11d4b9fa4c5883d1475b50508e14bb3a22077c9140759cf181b66fc533df280fe1f1b00ebee1358b1e28ed8ee1c0230acfa4 SHA512 cd5733c1d7d70476235cce44beab839ccbb7c914751659c7879f1b67a5915b788e750f587f4f58aa5b06b27a123e3cb14b3a730384486a6bda88eb29ce48d030
EBUILD yyjson-0.9.0.ebuild 860 BLAKE2B c07355accd4ea5c98027f793115fbb5d357ae64e5e2fb8643e9c2aea972b6611b6feb83a5ca80f802ba0f786b77b7806486afcbdde120364f91a21c6980c9c94 SHA512 f373cf22f5751845bf52c1fc0c67c3f0dece8a30858c7dfb33dee01998fa0a226db342fd262bd5630e87c8e54790b119f706419144031dfc1d0b2c693c051567
MISC metadata.xml 297 BLAKE2B a5ac4375cfb73215475fbcdc7dcfd5edde21a0696761230679afa8ca7cbd520a684b6b96641d8c61104dc3dbde5d9ac9fd66a24c217aced8a6bcce79fd9926c6 SHA512 2c347d6f55a7e970387ca0e30c2064e53e64eb64ef2e7b615bca747fd83834064fd7ae1566a9353f5eedc32c606aca1f425b13573b8fe5c519c6cca2c4b4e495
diff --git a/dev-libs/yyjson/yyjson-0.10.0.ebuild b/dev-libs/yyjson/yyjson-0.10.0.ebuild
index d9b3e44def4d..b3b0afdc6dce 100644
--- a/dev-libs/yyjson/yyjson-0.10.0.ebuild
+++ b/dev-libs/yyjson/yyjson-0.10.0.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/ibireme/yyjson/archive/refs/tags/${PV}.tar.gz -> ${P
LICENSE="MIT test? ( BSD )"
SLOT="0/0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~amd64 ~arm arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
IUSE="doc test"