mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-23 16:49:10 -07:00
xfce-base/libxfce4ui: prevent automagically building against gtk[wayland]
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 libxfce4ui 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 regardless of USE flag.
This cannot be expressed with USE flags. We could bind tightly to
whether gtk was built with wayland and arbitrarily restrict
libxfce4ui[-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.
Fixed upstream in:
967359624e
and hence only worked around for 4.18.
Bug: https://bugs.gentoo.org/624960
Closes: https://bugs.gentoo.org/873520
Signed-off-by: Eli Schwartz <eschwartz93@gmail.com>
Signed-off-by: Eli Schwartz <eschwartz@gentoo.org>
This commit is contained in:
committed by
Eli Schwartz
parent
efaf2366ce
commit
cec63c55db
79
xfce-base/libxfce4ui/libxfce4ui-4.18.6-r1.ebuild
Normal file
79
xfce-base/libxfce4ui/libxfce4ui-4.18.6-r1.ebuild
Normal file
@@ -0,0 +1,79 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit flag-o-matic xdg-utils vala
|
||||
|
||||
DESCRIPTION="Unified widget and session management libs for Xfce"
|
||||
HOMEPAGE="
|
||||
https://docs.xfce.org/xfce/libxfce4ui/start
|
||||
https://gitlab.xfce.org/xfce/libxfce4ui/
|
||||
"
|
||||
SRC_URI="https://archive.xfce.org/src/xfce/${PN}/${PV%.*}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="LGPL-2+ GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="glade +introspection startup-notification system-info vala wayland"
|
||||
REQUIRED_USE="vala? ( introspection )"
|
||||
|
||||
DEPEND="
|
||||
>=dev-libs/glib-2.66.0
|
||||
>=x11-libs/gtk+-3.24.41-r1:3[introspection?,wayland?,X]
|
||||
x11-libs/libX11
|
||||
x11-libs/libICE
|
||||
x11-libs/libSM
|
||||
>=xfce-base/libxfce4util-4.17.2:=[introspection?,vala?]
|
||||
>=xfce-base/xfconf-4.12:=
|
||||
glade? ( dev-util/glade:3.10 )
|
||||
introspection? ( >=dev-libs/gobject-introspection-1.66:= )
|
||||
startup-notification? ( x11-libs/startup-notification )
|
||||
system-info? (
|
||||
dev-libs/libgudev
|
||||
gnome-base/libgtop
|
||||
>=media-libs/libepoxy-1.2
|
||||
)
|
||||
"
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
"
|
||||
BDEPEND="
|
||||
dev-lang/perl
|
||||
dev-util/intltool
|
||||
sys-devel/gettext
|
||||
virtual/pkgconfig
|
||||
vala? ( $(vala_depend) )
|
||||
"
|
||||
|
||||
src_configure() {
|
||||
# defang automagic dependencies, bug #873520
|
||||
use wayland || append-cflags -DGENTOO_GTK_HIDE_WAYLAND
|
||||
|
||||
local myconf=(
|
||||
$(use_enable introspection)
|
||||
$(use_enable system-info glibtop)
|
||||
$(use_enable system-info epoxy)
|
||||
$(use_enable system-info gudev)
|
||||
$(use_enable startup-notification)
|
||||
$(use_enable vala)
|
||||
$(use_enable glade gladeui2)
|
||||
--with-vendor-info=Gentoo
|
||||
)
|
||||
|
||||
use vala && vala_setup
|
||||
econf "${myconf[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake -j1 DESTDIR="${D}" install
|
||||
find "${D}" -name '*.la' -delete || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_icon_cache_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_icon_cache_update
|
||||
}
|
||||
Reference in New Issue
Block a user