From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 439E5158287 for ; Mon, 12 May 2025 00:08:03 +0000 (UTC) Received: from lists.gentoo.org (bobolink.gentoo.org [140.211.166.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) (Authenticated sender: relay-lists.gentoo.org@gentoo.org) by smtp.gentoo.org (Postfix) with ESMTPSA id 325033431BF for ; Mon, 12 May 2025 00:08:03 +0000 (UTC) Received: from bobolink.gentoo.org (localhost [127.0.0.1]) by bobolink.gentoo.org (Postfix) with ESMTP id 350AA110277; Mon, 12 May 2025 00:08:02 +0000 (UTC) Received: from smtp.gentoo.org (mail.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by bobolink.gentoo.org (Postfix) with ESMTPS id 2A14C110277 for ; Mon, 12 May 2025 00:08:02 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id D2AB43431BF for ; Mon, 12 May 2025 00:08:01 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 3826811F3 for ; Mon, 12 May 2025 00:08:00 +0000 (UTC) From: "Sam James" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" Message-ID: <1747007751.ca7bdcb2d766e34e77adf3e2bc0923314bdca7bd.sam@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/glib/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-libs/glib/glib-2.80.5-r1.ebuild dev-libs/glib/glib-2.82.5.ebuild dev-libs/glib/glib-2.84.0.ebuild dev-libs/glib/glib-2.84.1.ebuild X-VCS-Directories: dev-libs/glib/ X-VCS-Committer: sam X-VCS-Committer-Name: Sam James X-VCS-Revision: ca7bdcb2d766e34e77adf3e2bc0923314bdca7bd X-VCS-Branch: master Date: Mon, 12 May 2025 00:08:00 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: c48e0e22-5cbd-4bdc-b859-0b91af626959 X-Archives-Hash: aed5fae29251a00458920b4daa67c51f commit: ca7bdcb2d766e34e77adf3e2bc0923314bdca7bd Author: Sam James gentoo org> AuthorDate: Sun May 11 23:50:27 2025 +0000 Commit: Sam James gentoo org> CommitDate: Sun May 11 23:55:51 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ca7bdcb2 dev-libs/glib: workaround Portage bug with binpkgs With binpkgs, we seem to sometimes get a new dev-libs/gobject-introspection-1.82 installed which needs >=dev-libs/glib-2.82, but without the new glib. We then try to build glib, we see that we have a gobject-introspection installed that is new enough via `has_version` (=> we don't try to bootstrap it), then when trying to use it via `pkg-config`, it falls off because we don't have the glib that it needs. This is obviously a Portage bug in not ensuring that gobject-introspection's dependencies are satisifed before merging its binpkg, but let's workaround it here: check thoroughly if the available gobject-introspection is usable. If it ain't, just bootstrap as if it weren't installed. (Just closing the bug given we don't have a testcase, not much point in keeping it open and potentially confusing people. It only happens sometimes and requires some bad luck, unfortunately. If it were always the case w/ binpkgs, it'd be far easier to debug.) Closes: https://bugs.gentoo.org/951487 Thanks-to: Artemis Everfree artemis.sh> Signed-off-by: Sam James gentoo.org> dev-libs/glib/glib-2.80.5-r1.ebuild | 12 ++++++++++++ dev-libs/glib/glib-2.82.5.ebuild | 12 ++++++++++++ dev-libs/glib/glib-2.84.0.ebuild | 12 ++++++++++++ dev-libs/glib/glib-2.84.1.ebuild | 12 ++++++++++++ 4 files changed, 48 insertions(+) diff --git a/dev-libs/glib/glib-2.80.5-r1.ebuild b/dev-libs/glib/glib-2.80.5-r1.ebuild index 29b3166bf27a..a9a914f46ba8 100644 --- a/dev-libs/glib/glib-2.80.5-r1.ebuild +++ b/dev-libs/glib/glib-2.80.5-r1.ebuild @@ -242,6 +242,18 @@ multilib_src_configure() { return 0 fi + # Do we somehow have a dev-libs/gobject-introspection installed + # with an unsatisfied dependency? (bug #951487) + if ! $(tc-getPKG_CONFIG) --cflags gobject-introspection-1.0 &> /dev/null ; then + return 0 + fi + + # Make sure has_version didn't lie to us while at it as well, + # given bug #951487. + if ! $(tc-getPKG_CONFIG) --atleast-version=${INTROSPECTION__PV} gobject-introspection-1.0 &> /dev/null ; then + return 0 + fi + return 1 } diff --git a/dev-libs/glib/glib-2.82.5.ebuild b/dev-libs/glib/glib-2.82.5.ebuild index 25e56d954a0a..e27052e7d170 100644 --- a/dev-libs/glib/glib-2.82.5.ebuild +++ b/dev-libs/glib/glib-2.82.5.ebuild @@ -230,6 +230,18 @@ multilib_src_configure() { return 0 fi + # Do we somehow have a dev-libs/gobject-introspection installed + # with an unsatisfied dependency? (bug #951487) + if ! $(tc-getPKG_CONFIG) --cflags gobject-introspection-1.0 &> /dev/null ; then + return 0 + fi + + # Make sure has_version didn't lie to us while at it as well, + # given bug #951487. + if ! $(tc-getPKG_CONFIG) --atleast-version=${INTROSPECTION__PV} gobject-introspection-1.0 &> /dev/null ; then + return 0 + fi + return 1 } diff --git a/dev-libs/glib/glib-2.84.0.ebuild b/dev-libs/glib/glib-2.84.0.ebuild index 0324bbf012be..940fdfbdeabe 100644 --- a/dev-libs/glib/glib-2.84.0.ebuild +++ b/dev-libs/glib/glib-2.84.0.ebuild @@ -234,6 +234,18 @@ multilib_src_configure() { return 0 fi + # Do we somehow have a dev-libs/gobject-introspection installed + # with an unsatisfied dependency? (bug #951487) + if ! $(tc-getPKG_CONFIG) --cflags gobject-introspection-1.0 &> /dev/null ; then + return 0 + fi + + # Make sure has_version didn't lie to us while at it as well, + # given bug #951487. + if ! $(tc-getPKG_CONFIG) --atleast-version=${INTROSPECTION__PV} gobject-introspection-1.0 &> /dev/null ; then + return 0 + fi + return 1 } diff --git a/dev-libs/glib/glib-2.84.1.ebuild b/dev-libs/glib/glib-2.84.1.ebuild index 5584e992e941..dd8cd776ccfb 100644 --- a/dev-libs/glib/glib-2.84.1.ebuild +++ b/dev-libs/glib/glib-2.84.1.ebuild @@ -235,6 +235,18 @@ multilib_src_configure() { return 0 fi + # Do we somehow have a dev-libs/gobject-introspection installed + # with an unsatisfied dependency? (bug #951487) + if ! $(tc-getPKG_CONFIG) --cflags gobject-introspection-1.0 &> /dev/null ; then + return 0 + fi + + # Make sure has_version didn't lie to us while at it as well, + # given bug #951487. + if ! $(tc-getPKG_CONFIG) --atleast-version=${INTROSPECTION__PV} gobject-introspection-1.0 &> /dev/null ; then + return 0 + fi + return 1 }