commit:     9596b736667d8625ffb8f8d2c02a7dc75408d83e
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 27 18:31:43 2022 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Tue Dec 27 18:31:43 2022 +0000
URL:        https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=9596b736

dev-libs/glib: sync with gx86, forced due to EAPI support drop

Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>

 dev-libs/glib/Manifest                             |  11 +-
 .../files/glib-2.74.4-implicit-func-decl.patch     |  24 ++
 dev-libs/glib/glib-2.56.2-r1.ebuild                | 350 ---------------------
 .../{glib-2.66.2-r1.ebuild => glib-2.74.4.ebuild}  |  77 +++--
 4 files changed, 68 insertions(+), 394 deletions(-)

diff --git a/dev-libs/glib/Manifest b/dev-libs/glib/Manifest
index 08fe290e6c..b5b199a67d 100644
--- a/dev-libs/glib/Manifest
+++ b/dev-libs/glib/Manifest
@@ -1,10 +1 @@
-AUX 2.56-gmodule-cygwin.patch 3482 BLAKE2B 
094036560ed444e050858ff52a4c5f25e13c4988069898e78417def247dae78145d337ff8a6265c7d23fa91f26a48c255b5562de2e9634c5262b90b36a5677f4
 SHA512 
b5faedf2a484c70c16abf3e4a3557ce5b6939995b93fa46644ee4ae7527bdd6a47cced5ae6837b79d1f74836ace0de14d568358a31125ccb9d4d4273219ca0e7
-AUX glib-2.54.3-external-gdbus-codegen.patch 3233 BLAKE2B 
6b96851b7485164ef6c94da1847152a87064eb5c9f9b0ae6996eca84e89c7807bea5cb7c58b8d42dee07eee96647d2439b8c62af023b37849d4465e0c013eca6
 SHA512 
70d942086f6181532b5f95c5a3e0d8bfc7d204ca2d4ee68850af82062b572cc146ac4a5516547011ef39386e10bc291deea32a19fe518e649f4f8ac60271b69c
-AUX glib-2.64.1-mark-gdbus-server-auth-test-flaky.patch 842 BLAKE2B 
6b2eb57b8923c8bb54ead80d829aeb7a5c8a42c62e960e7305bc3fad69c67fd21e1c9f20b5c9002c0319cf3d77992b9cb71912c9b813b723e0a56aaea38330ad
 SHA512 
ccd92d2f1fd495618ac788ffe6b69acec05a521a0ee8ff2bacb1dce6e283a04bbc2a10e61b37fc29f3893003fa154fa0d30bc37ed266b3f813200cd8ed17c116
-DIST glib-2.56.2.tar.xz 8041756 BLAKE2B 
1af5bb37378856e959602bcb9299266bba46b990839c923f6b9881624aed306af0779005281b3e3a46b5994c54812edc86aade9cb782c596fd63b6fd91baba51
 SHA512 
8201ea82d3613d2e879284abe01520b766da30957c5a1a22f3e6019b0cce6bf95d25beae78867b6a133401c4165153c0c92974dd459ab12f9e0e9dd0c95df5d4
-DIST glib-2.66.2.tar.xz 4836456 BLAKE2B 
5484a7fe497dbe06df7ce11dbc8836c95dbb01e6e309516b82158f2915eeee36ccbe6e904cb6ae9a5a0223ccc0b52f6e64d61a418bf790538bc90388430977b2
 SHA512 
30278c066c6b209f45fcfdb9ffc4732236451464506b93c0fff0964ff8aac58c15be85c3793c686d4740d9d97857984bc0ab71e38d5da11c5fd860e569fb6cb9
-DIST glib-cygwinports-3a873fdd1b9a9e649563fe8e6b8ae6951b0dd3be.zip 13038 
BLAKE2B 
08f217e204c8518137722dcd535c100cbdc56e43dcf3d16a339c93353c594287670215c130b2c7f83235145632fad6d30903ae099f5999bf72ec070a12da4484
 SHA512 
fd4925d6a2380c5ff551e812a182de20f7b59e5d134a2c54b985efe85ab334499b0050097ca5c3271f14e2c3c5e89650e134a01e4c5be06bad05a12eaaf9fe53
-DIST pkg-config-0.28.tar.gz 1931203 BLAKE2B 
bafdd4e838623965c6bd454421ddd9051fc43fc29948e1615b49fef463c3c3a18807aabe6416f96cfdf58d6b1c9e114d77f97bd985facee7c14284a8a64a768b
 SHA512 
6eafa5ca77c5d44cd15f48457a5e96fcea2555b66d8e35ada5ab59864a0aa03d441e15f54ab9c6343693867b3b490f392c75b7d9312f024c9b7ec6a0194d8320
-EBUILD glib-2.56.2-r1.ebuild 11695 BLAKE2B 
f0f846b08805b59dda01de904738ef78d9ee9c6483b51c592858117fc07d11322194ae209d396691f25fbb4d09d02b233548350986cc0fb003d04a9c98591407
 SHA512 
515997880fdd4f99d53a4883aaab7e1647d60c5a51f300d741f22bef395338adf4cda8790308032775d251a3c93b73b7010aa71c072691e4527899705a11258f
-EBUILD glib-2.66.2-r1.ebuild 10805 BLAKE2B 
fdf2468b6db411f5014442b3595eb59cb9df86ede91dd3dff49e54232585a0c23bbbff6ffed1c0681fcfbd52223465b4ae26474538bc95fb371deea426a9ee7d
 SHA512 
426d81d96283664d41fef2e2fa7ee16453d10c6f434f502a0fd52d43477c3080bad1b1e4ddfaa79e02b03b6fc981f4a36f77cf3d398b36df97c83b02138b4ac8
-MISC metadata.xml 1098 BLAKE2B 
f2bd17f50d68c553b9040e954c0ef91edd29a3f1f7731bc7f45e3a936f702209985d111ad376ca0b51bdb4736d9ee508151fbb57b273a32beb1148aa027226c6
 SHA512 
2745b70b29ba0517144343f5d3f4b7c3389200b1ecbd2830e29bd9a90ca59ebeedf4d66b26a3241e3d3a3066f9a26ae223d075b9b2b82d67e4642e784f236c20
+DIST glib-2.74.4.tar.xz 5208484 BLAKE2B 
01a2818e63469019abcd1215fa85521b9a2e55644040e8fe2797f68cabe897a191ae2c1cc2ab75d5ba9980d63adbfc00636b295ee942d70579e7eba1e1f49502
 SHA512 
912f6b0559fcb5ad55fa36837a348228b8e2498c490271204ced9f2e4a9eab804de4745f3ec439a198eb275d7263f18bc670f45460e2be55a2cbe45466b02fc6

diff --git a/dev-libs/glib/files/glib-2.74.4-implicit-func-decl.patch 
b/dev-libs/glib/files/glib-2.74.4-implicit-func-decl.patch
new file mode 100644
index 0000000000..9cd48a2645
--- /dev/null
+++ b/dev-libs/glib/files/glib-2.74.4-implicit-func-decl.patch
@@ -0,0 +1,24 @@
+https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3165
+
+From 6626765a79f125cf0ec9cdaefa51ceef718d41e7 Mon Sep 17 00:00:00 2001
+From: Michael Catanzaro <[email protected]>
+Date: Tue, 20 Dec 2022 17:10:41 -0600
+Subject: [PATCH] gthread-posix: need to #include <errno.h>
+
+a79c6af23eff5ee978db62e048828c9a992a1261 uses errno without the required
+header.
+
+
+(cherry picked from commit 03cb4261e00cf505790f4fd4e69f97b2ef4fcccd)
+--- a/glib/gthreadprivate.h
++++ b/glib/gthreadprivate.h
+@@ -41,6 +41,7 @@ struct  _GRealThread
+ /* system thread implementation (gthread-posix.c, gthread-win32.c) */
+ 
+ #if defined(HAVE_FUTEX) || defined(HAVE_FUTEX_TIME64)
++#include <errno.h>
+ #include <linux/futex.h>
+ #include <sys/syscall.h>
+ #include <unistd.h>
+-- 
+GitLab

diff --git a/dev-libs/glib/glib-2.56.2-r1.ebuild 
b/dev-libs/glib/glib-2.56.2-r1.ebuild
deleted file mode 100644
index b160eea0a1..0000000000
--- a/dev-libs/glib/glib-2.56.2-r1.ebuild
+++ /dev/null
@@ -1,350 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-PYTHON_COMPAT=( python{2_7,3_5,3_6,3_7,3_8,3_9} ) # only for tests
-GNOME2_EAUTORECONF=yes
-
-inherit autotools bash-completion-r1 flag-o-matic gnome2 libtool linux-info \
-       multilib multilib-minimal pax-utils python-any-r1 toolchain-funcs 
virtualx
-
-# Until bug #537330 glib is a reverse dependency of pkgconfig and, then
-# adding new dependencies end up making stage3 to grow. Every addition needs
-# then to be think very closely.
-
-DESCRIPTION="The GLib library of C routines"
-HOMEPAGE="https://www.gtk.org/";
-SRC_URI="${SRC_URI}
-       https://pkgconfig.freedesktop.org/releases/pkg-config-0.28.tar.gz"; # 
pkg.m4 for eautoreconf
-CYGWINPORTS_GITREV="3a873fdd1b9a9e649563fe8e6b8ae6951b0dd3be"
-
-[[ -n ${CYGWINPORTS_GITREV} ]] &&
-SRC_URI+=" elibc_Cygwin? (
-       https://github.com/cygwinports/glib2.0/archive/${CYGWINPORTS_GITREV}.zip
-       -> ${PN}-cygwinports-${CYGWINPORTS_GITREV}.zip )"
-
-LICENSE="LGPL-2.1+"
-SLOT="2"
-IUSE="dbus debug fam kernel_linux +mime selinux static-libs systemtap test 
utils xattr"
-
-KEYWORDS="~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos 
~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
-
-# Added util-linux multilib dependency to have libmount support (which
-# is always turned on on linux systems, unless explicitly disabled, but
-# this ebuild does not do that anyway) (bug #599586)
-
-RDEPEND="
-       !<dev-util/gdbus-codegen-${PV}
-       >=dev-libs/libpcre-8.13:3[${MULTILIB_USEDEP},static-libs?]
-       >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
-       dev-libs/libffi:=[${MULTILIB_USEDEP}]
-       >=virtual/libintl-0-r2[${MULTILIB_USEDEP}]
-       >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
-       !prefix-stack? ( kernel_linux? ( 
sys-apps/util-linux[${MULTILIB_USEDEP}] ) )
-       selinux? ( >=sys-libs/libselinux-2.2.2-r5[${MULTILIB_USEDEP}] )
-       xattr? ( >=sys-apps/attr-2.4.47-r1[${MULTILIB_USEDEP}] )
-       fam? ( >=virtual/fam-0-r1[${MULTILIB_USEDEP}] )
-       utils? (
-               >=dev-util/gdbus-codegen-${PV}
-               virtual/libelf:0=
-       )
-"
-DEPEND="${RDEPEND}
-       app-text/docbook-xml-dtd:4.1.2
-       >=dev-libs/libxslt-1.0
-       >=sys-devel/gettext-0.11
-       >=dev-util/gtk-doc-am-1.20
-       systemtap? ( >=dev-util/systemtap-1.3 )
-       ${PYTHON_DEPS}
-       test? (
-               sys-devel/gdb
-               >=dev-util/gdbus-codegen-${PV}
-               >=sys-apps/dbus-1.2.14 )
-       !<dev-util/gtk-doc-1.15-r2
-"
-# Migration of glib-genmarshal, glib-mkenums and gtester-report to a separate
-# python depending package, which can be buildtime depended in packages that
-# need these tools, without pulling in python at runtime.
-RDEPEND="${RDEPEND}
-       !prefix-stack? ( >=dev-util/glib-utils-${PV} )"
-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)
-)
-
-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() {
-       # Prevent build failure in stage3 where pkgconfig is not available, bug 
#481056
-       mv -f "${WORKDIR}"/pkg-config-*/pkg.m4 "${S}"/m4macros/ || die
-
-       if use test; then
-               # 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"
-                       sed -i -e "/appinfo\/launch/d" gio/tests/appinfo.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/Makefile.am || die
-       else
-               # Don't build tests, also prevents extra deps, bug #512022
-               sed -i -e 's/ tests//' {.,gio,glib}/Makefile.am || die
-       fi
-
-       # gdbus-codegen is a separate package
-       eapply "${FILESDIR}"/${PN}-2.54.3-external-gdbus-codegen.patch
-
-       if [[ -n ${CYGWINPORTS_GITREV} ]] && use elibc_Cygwin; then
-               local p d="${WORKDIR}/glib2.0-${CYGWINPORTS_GITREV}"
-               for p in $(
-                       sed -ne '/PATCH_URI="/,/"/{s/.*="//;s/".*//;p}' \
-                               < "${d}"/glib2.0.cygport
-               ); do
-                       if [[ ${p} == 2.50-gmodule-cygwin.patch ]]; then
-                               # Cygwinports has not upgraded to 2.56 yet
-                               epatch "${FILESDIR}"/2.56-gmodule-cygwin.patch
-                               continue
-                       fi
-                       epatch "${d}/${p}"
-               done
-       fi
-
-       # 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\)\>/\1_DISABLED/' \
-                       -e '/\<_XOPEN_SOURCE\>/s/  2,/600,/' \
-                       configure.ac || die
-               sed -i -e '/#define\s\+_POSIX_SOURCE/d' \
-                       glib/giounix.c || die
-       fi
-
-       # disable native macOS integrations
-       sed -i -e '/glib_have_\(carbon\|cocoa\)=yes/s/yes/no/' \
-               configure{.ac,} || die
-
-       gnome2_src_prepare
-}
-
-multilib_src_configure() {
-       # Avoid circular depend with dev-util/pkgconfig and
-       # native builds (cross-compiles won't need pkg-config
-       # in the target ROOT to work here)
-       if ! tc-is-cross-compiler && ! $(tc-getPKG_CONFIG) --version >& 
/dev/null; then
-               if has_version sys-apps/dbus; then
-                       export DBUS1_CFLAGS="-I${EPREFIX}/usr/include/dbus-1.0 
-I${EPREFIX}/usr/$(get_libdir)/dbus-1.0/include"
-                       export DBUS1_LIBS="-ldbus-1"
-               fi
-               export LIBFFI_CFLAGS="-I$(echo 
${EPREFIX}/usr/$(get_libdir)/libffi-*/include)"
-               export LIBFFI_LIBS="-lffi"
-               export PCRE_CFLAGS=" " # test -n "$PCRE_CFLAGS" needs to pass
-               export PCRE_LIBS="-lpcre"
-       fi
-
-       # These configure tests don't work when cross-compiling.
-       if tc-is-cross-compiler ; then
-               # https://bugzilla.gnome.org/show_bug.cgi?id=756473
-               case ${CHOST} in
-               hppa*|metag*) export glib_cv_stack_grows=yes ;;
-               *)            export glib_cv_stack_grows=no ;;
-               esac
-               # https://bugzilla.gnome.org/show_bug.cgi?id=756474
-               export glib_cv_uscore=no
-               # https://bugzilla.gnome.org/show_bug.cgi?id=756475
-               export ac_cv_func_posix_get{pwuid,grgid}_r=yes
-       fi
-
-       local myconf
-
-       case "${CHOST}" in
-               *-mingw*) myconf="${myconf} --with-threads=win32" ;;
-               *)        myconf="${myconf} --with-threads=posix" ;;
-       esac
-
-       # non-glibc platforms use GNU libiconv, but configure needs to know 
about
-       # that not to get confused when it finds something outside the prefix 
too
-       if use !elibc_glibc ; then
-               myconf="${myconf} --with-libiconv=gnu"
-               # add the libdir for libtool, otherwise it'll make love with 
system
-               # installed libiconv. Automake passes LDFLAGS before local libs,
-               # add this to LIBS instead to come after local lib dirs.
-               append-libs "-L${EPREFIX}/usr/$(get_libdir)"
-       fi
-
-       local xmlcatalog="${EPREFIX}/etc/xml/catalog"
-       grep -q catalog= "${xmlcatalog}" ||
-       grep -q catalog= "${BROOT-${PORTAGE_OVERRIDE_EPREFIX}}/etc/xml/catalog" 
&&
-       xmlcatalog="${BROOT-${PORTAGE_OVERRIDE_EPREFIX}}/etc/xml/catalog"
-
-       # libelf used only by the gresource bin
-       ECONF_SOURCE="${S}" gnome2_src_configure ${myconf} \
-               $(usex debug --enable-debug=yes ' ') \
-               $(use_enable xattr) \
-               $(use_enable fam) \
-               $(use_enable kernel_linux libmount) \
-               $(use_enable selinux) \
-               $(use_enable static-libs static) \
-               $(use_enable systemtap dtrace) \
-               $(use_enable systemtap systemtap) \
-               $(multilib_native_use_enable utils libelf) \
-               --with-python=${EPYTHON} \
-               --disable-compile-warnings \
-               --enable-man \
-               --with-pcre=system \
-               --with-xml-catalog="${xmlcatalog}"
-
-       if multilib_is_native_abi; then
-               local d
-               for d in glib gio gobject; do
-                       ln -s "${S}"/docs/reference/${d}/html 
docs/reference/${d}/html || die
-               done
-       fi
-}
-
-multilib_src_test() {
-       export XDG_CONFIG_DIRS="${EPREFIX}"/etc/xdg
-       export XDG_DATA_DIRS="${EPREFIX}"/usr/local/share:/usr/share
-       export G_DBUS_COOKIE_SHA1_KEYRING_DIR="${T}/temp"
-       export LC_TIME=C # bug #411967
-       unset GSETTINGS_BACKEND # bug #596380
-       python_setup
-
-       # Related test is a bit nitpicking
-       mkdir "$G_DBUS_COOKIE_SHA1_KEYRING_DIR"
-       chmod 0700 "$G_DBUS_COOKIE_SHA1_KEYRING_DIR"
-
-       # Hardened: gdb needs this, bug #338891
-       if host-is-pax ; then
-               pax-mark -mr "${BUILD_DIR}"/tests/.libs/assert-msg-test \
-                       || die "Hardened adjustment failed"
-       fi
-
-       # Need X for dbus-launch session X11 initialization
-       virtx emake check
-}
-
-multilib_src_install() {
-       emake DESTDIR="${D}" completiondir="$(get_bashcompdir)" install
-       keepdir /usr/$(get_libdir)/gio/modules
-}
-
-multilib_src_install_all() {
-       einstalldocs
-
-       # 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 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
-
-       # Do not install charset.alias even if generated, leave it to libiconv
-       rm -f "${ED}/usr/$(get_libdir)/charset.alias"
-
-       # Don't install gdb python macros, bug 291328
-       rm -rf "${ED}/usr/share/gdb/" "${ED}/usr/share/glib-2.0/gdb/"
-
-       # Completely useless with or without USE static-libs, people need to 
use pkg-config
-       find "${ED}" -name '*.la' -delete || die
-}
-
-pkg_preinst() {
-       gnome2_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() {
-       # force (re)generation of gschemas.compiled
-       GNOME2_ECLASS_GLIB_SCHEMAS="force"
-
-       gnome2_pkg_postinst
-
-       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
-}
-
-pkg_postrm() {
-       gnome2_pkg_postrm
-
-       if [[ -z ${REPLACED_BY_VERSION} ]]; then
-               multilib_pkg_postrm() {
-                       rm -f 
"${EROOT}"usr/$(get_libdir)/gio/modules/giomodule.cache
-               }
-               multilib_foreach_abi multilib_pkg_postrm
-               rm -f "${EROOT}"usr/share/glib-2.0/schemas/gschemas.compiled
-       fi
-}

diff --git a/dev-libs/glib/glib-2.66.2-r1.ebuild 
b/dev-libs/glib/glib-2.74.4.ebuild
similarity index 84%
rename from dev-libs/glib/glib-2.66.2-r1.ebuild
rename to dev-libs/glib/glib-2.74.4.ebuild
index 9621a46221..26772b2746 100644
--- a/dev-libs/glib/glib-2.66.2-r1.ebuild
+++ b/dev-libs/glib/glib-2.74.4.ebuild
@@ -1,27 +1,23 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8,9} )
+EAPI=8
+PYTHON_REQ_USE="xml(+)"
+PYTHON_COMPAT=( python3_{8..11} )
 
-inherit flag-o-matic gnome.org gnome2-utils linux-info meson multilib 
multilib-minimal python-any-r1 toolchain-funcs xdg
+inherit flag-o-matic 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"
-IUSE="dbus debug elibc_glibc fam gtk-doc kernel_linux +mime selinux 
static-libs sysprof systemtap test utils xattr"
+IUSE="dbus debug +elf gtk-doc +mime selinux static-libs sysprof systemtap test 
utils xattr"
 RESTRICT="!test? ( test )"
+#REQUIRED_USE="gtk-doc? ( test )" # Bug #777636
 
-# meson/ninja buildsystem, breaks of course (at least on Solaris), most
-# likely will introduce problems during bootstrap too
-#KEYWORDS="~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris 
~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
+KEYWORDS="~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris 
~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
 
-# * libelf isn't strictly necessary, but makes gresource tool more useful, and
-# the check is automagic in gio/meson.build. gresource is not a multilib tool
-# right now, thus it doesn't matter if non-native ABI libelf exists or not
-# (non-native binary is overwritten, it doesn't matter if libelf was linked 
to).
 # * 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.
@@ -32,27 +28,25 @@ RESTRICT="!test? ( test )"
 # them or just put the (build) deps in that rare consumer instead of recursive
 # RDEPEND here (due to lack of recursive DEPEND).
 RDEPEND="
-       !<dev-util/gdbus-codegen-2.66.0
+       !<dev-util/gdbus-codegen-${PV}
        >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}]
-       >=dev-libs/libpcre-8.31:3[${MULTILIB_USEDEP},static-libs?]
-       dev-libs/libffi:=[${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}]
-       !prefix-stack? ( kernel_linux? ( 
>=sys-apps/util-linux-2.23[${MULTILIB_USEDEP}] ) )
+       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}] 
) )
-       kernel_linux? ( virtual/libelf:0= )
-       fam? ( >=virtual/fam-0-r1[${MULTILIB_USEDEP}] )
-"
-DEPEND="${RDEPEND}
-       sysprof? ( >=dev-util/sysprof-capture-3.38:4[${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
-       gtk-doc? ( >=dev-util/gtk-doc-1.32-r2
+       gtk-doc? ( >=dev-util/gtk-doc-1.33
                app-text/docbook-xml-dtd:4.2
                app-text/docbook-xml-dtd:4.5 )
        systemtap? ( >=dev-util/systemtap-1.3 )
@@ -75,6 +69,7 @@ MULTILIB_CHOST_TOOLS=(
 
 PATCHES=(
        "${FILESDIR}"/${PN}-2.64.1-mark-gdbus-server-auth-test-flaky.patch
+       "${FILESDIR}"/${P}-implicit-func-decl.patch
 )
 
 pkg_setup() {
@@ -148,7 +143,21 @@ src_prepare() {
                export PERL=perl
        fi
 
-       xdg_src_prepare
+       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
+
+       default
        gnome2_environment_reset
        # TODO: python_name sedding for correct python shebang? Might be 
relevant mainly for glib-utils only
 }
@@ -175,32 +184,34 @@ multilib_src_configure() {
                $(meson_feature selinux)
                $(meson_use xattr)
                -Dlibmount=enabled # only used if host_system == 'linux'
-               -Dinternal_pcre=false
                -Dman=true
                $(meson_use systemtap dtrace)
                $(meson_use systemtap)
                $(meson_feature sysprof)
-               -Dgtk_doc=$(multilib_native_usex gtk-doc true false)
-               $(meson_use fam)
+               $(meson_native_use_bool gtk-doc gtk_doc)
+               $(meson_use test tests)
                -Dinstalled_tests=false
                -Dnls=enabled
                -Doss_fuzz=disabled
+               $(meson_native_use_feature elf libelf)
+               -Dmultiarch=false
        )
        meson_src_configure
 }
 
-multilib_src_compile() {
-       meson_src_compile
-}
-
 multilib_src_test() {
-       export XDG_CONFIG_DIRS="${EPREFIX}"/etc/xdg
-       export XDG_DATA_DIRS="${EPREFIX}"/usr/local/share:/usr/share
+       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"
        chmod 0700 "$G_DBUS_COOKIE_SHA1_KEYRING_DIR"
@@ -214,8 +225,6 @@ multilib_src_install() {
 }
 
 multilib_src_install_all() {
-       einstalldocs
-
        # 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

Reply via email to