From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 3FF3A159C9B for ; Tue, 6 Aug 2024 00:20:10 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 283ED2BC024; Tue, 6 Aug 2024 00:20:09 +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) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id B81832BC018 for ; Tue, 6 Aug 2024 00:20:08 +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 DECE1343009 for ; Tue, 6 Aug 2024 00:20:07 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 1B0FB1E69 for ; Tue, 6 Aug 2024 00:20:06 +0000 (UTC) From: "Eli Schwartz" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Eli Schwartz" Message-ID: <1722903504.14f4be4038afc5a9ffd1a6693469b930cba8f67c.eschwartz@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: net-libs/gtk-vnc/ X-VCS-Repository: repo/gentoo X-VCS-Files: net-libs/gtk-vnc/gtk-vnc-1.3.1-r1.ebuild X-VCS-Directories: net-libs/gtk-vnc/ X-VCS-Committer: eschwartz X-VCS-Committer-Name: Eli Schwartz X-VCS-Revision: 14f4be4038afc5a9ffd1a6693469b930cba8f67c X-VCS-Branch: master Date: Tue, 6 Aug 2024 00:20:06 +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: 7f0966ef-8ea8-42e2-92ef-deeb66d528e6 X-Archives-Hash: 15e264cd426b1d8248e7dd3a28acfa5b commit: 14f4be4038afc5a9ffd1a6693469b930cba8f67c Author: Eli Schwartz gmail com> AuthorDate: Sun May 5 20:44:33 2024 +0000 Commit: Eli Schwartz gentoo org> CommitDate: Tue Aug 6 00:18:24 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=14f4be40 net-libs/gtk-vnc: prevent automagically building against gtk[X,wayland] e.g. the upstream code checks whether GDK_WINDOWING_WAYLAND is defined by the gtk headers, and if so will compile against the wayland symbols it provides. This means that gtk-vnc built on a system with gtk+[-wayland] will be compatible with anything, but when built on a system with gtk+[wayland], requires that at runtime. This cannot be expressed with USE flags. We could bind tightly to whether gtk was built with wayland (and X), and in the process, arbitrarily restrict gtk-vnc[-wayland] to only build and install on a system with gtk+[-wayland]. But we recently added a hack to gtk itself which allows hiding the automagic macros entirely. Inject this via append-cflags if the USE flags aren't set, to simulate building on a system with more minimal gtk packages. Bug: https://bugs.gentoo.org/624960 Closes: https://bugs.gentoo.org/865659 Signed-off-by: Eli Schwartz gmail.com> Signed-off-by: Eli Schwartz gentoo.org> net-libs/gtk-vnc/gtk-vnc-1.3.1-r1.ebuild | 63 ++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) diff --git a/net-libs/gtk-vnc/gtk-vnc-1.3.1-r1.ebuild b/net-libs/gtk-vnc/gtk-vnc-1.3.1-r1.ebuild new file mode 100644 index 000000000000..f5ac953e4e80 --- /dev/null +++ b/net-libs/gtk-vnc/gtk-vnc-1.3.1-r1.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) + +inherit flag-o-matic gnome.org vala meson python-any-r1 xdg + +DESCRIPTION="VNC viewer widget for GTK" +HOMEPAGE="https://wiki.gnome.org/Projects/gtk-vnc https://gitlab.gnome.org/GNOME/gtk-vnc" + +LICENSE="LGPL-2.1+" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="+introspection pulseaudio sasl +vala wayland X" +REQUIRED_USE="vala? ( introspection )" + +RDEPEND=" + >=dev-libs/glib-2.56.0:2 + >=x11-libs/gdk-pixbuf-2.36.0:2 + >=dev-libs/libgcrypt-1.8.0:0= + >=net-libs/gnutls-3.6.0:0= + >=sys-libs/zlib-1.2.11 + sasl? ( >=dev-libs/cyrus-sasl-2.1.27:2 ) + >=x11-libs/gtk+-3.24.41-r1:3[introspection?,wayland?,X?] + >=x11-libs/cairo-1.15.0 + >=x11-libs/libX11-1.6.5 + pulseaudio? ( media-libs/libpulse ) + introspection? ( >=dev-libs/gobject-introspection-1.56.0:= ) +" +# Keymap databases code is generated with python3; configure picks up $PYTHON exported from python-any-r1_pkg_setup +# perl for pod2man +DEPEND="${RDEPEND}" +BDEPEND=" + ${PYTHON_DEPS} + >=dev-lang/perl-5 + dev-util/glib-utils + >=sys-devel/gettext-0.19.8 + virtual/pkgconfig + vala? ( $(vala_depend) ) +" + +src_prepare() { + default + + use vala & vala_setup +} + +src_configure() { + # defang automagic dependencies, bug #927952 + use wayland || append-cflags -DGENTOO_GTK_HIDE_WAYLAND + use X || append-cflags -DGENTOO_GTK_HIDE_X11 + + local emesonargs=( + $(meson_feature introspection) + $(meson_feature pulseaudio) + $(meson_feature sasl) + -Dwith-coroutine=auto # gthread on windows, libc ucontext elsewhere; neither has extra deps + $(meson_feature vala with-vala) + ) + meson_src_configure +}