summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2024-08-15 20:04:41 +0100
committerSam James <sam@gentoo.org>2024-08-15 20:07:03 +0100
commita7ff4695abec63c8ef91b29d533ec89c80636190 (patch)
tree7693a2e4d5e87791de66b99b69230c7f3f3c4095 /x11-wm/fvwm/fvwm-2.7.0-r5.ebuild
parentnet-mail/dovecot: Stabilize 2.3.21.1 amd64, #937959 (diff)
downloadgentoo-a7ff4695abec63c8ef91b29d533ec89c80636190.tar.gz
gentoo-a7ff4695abec63c8ef91b29d533ec89c80636190.tar.bz2
gentoo-a7ff4695abec63c8ef91b29d533ec89c80636190.zip
x11-wm/fvwm: fix patches
* Use rebased ar, translucent-menus patches from bug #898918, thanks to Gianni Ceccarelli <dakkar@thenautilus.net> * Filter LTO for bug #864957 (fvwm 2.x is EOL) so unlikely to be fixed upstream. If 3.x gets fixed (bug #864959), we can always look at backporting it. Bug: https://bugs.gentoo.org/864959 Closes: https://bugs.gentoo.org/864957 Closes: https://bugs.gentoo.org/898918 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'x11-wm/fvwm/fvwm-2.7.0-r5.ebuild')
-rw-r--r--x11-wm/fvwm/fvwm-2.7.0-r5.ebuild172
1 files changed, 172 insertions, 0 deletions
diff --git a/x11-wm/fvwm/fvwm-2.7.0-r5.ebuild b/x11-wm/fvwm/fvwm-2.7.0-r5.ebuild
new file mode 100644
index 000000000000..56c10d559740
--- /dev/null
+++ b/x11-wm/fvwm/fvwm-2.7.0-r5.ebuild
@@ -0,0 +1,172 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+inherit autotools flag-o-matic python-single-r1 desktop
+
+DESCRIPTION="An extremely powerful ICCCM-compliant multiple virtual desktop window manager"
+HOMEPAGE="https://www.fvwm.org/"
+SRC_URI="https://github.com/fvwmorg/fvwm/releases/download/${PV}/${P}.tar.gz"
+
+LICENSE="GPL-2+ FVWM"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="bidi debug doc netpbm nls perl png readline stroke svg tk truetype +vanilla xinerama lock"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+COMMON_DEPEND="
+ sys-libs/zlib
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXau
+ x11-libs/libxcb
+ x11-libs/libXcursor
+ x11-libs/libXdmcp
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXpm
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ virtual/libiconv
+ $(python_gen_cond_dep '
+ dev-python/pyxdg[${PYTHON_USEDEP}]
+ ')
+ bidi? ( dev-libs/fribidi )
+ nls? ( virtual/libintl )
+ png? ( media-libs/libpng:0= )
+ readline? (
+ sys-libs/ncurses:0=
+ sys-libs/readline:0=
+ )
+ stroke? ( dev-libs/libstroke )
+ svg? ( gnome-base/librsvg )
+ truetype? (
+ media-libs/fontconfig
+ x11-libs/libXft
+ )
+ xinerama? ( x11-libs/libXinerama )
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ ${PYTHON_DEPS}
+ dev-lang/perl
+ perl? ( tk? (
+ dev-lang/tk
+ dev-perl/Tk
+ >=dev-perl/X11-Protocol-0.56
+ )
+ )
+ lock? ( x11-misc/xlockmore )
+ netpbm? ( media-libs/netpbm )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ x11-base/xorg-proto
+"
+BDEPEND="
+ dev-lang/perl
+ dev-libs/libxslt
+ virtual/pkgconfig
+"
+
+src_prepare() {
+ if ! use vanilla; then
+ # Enables fast translucent menus; patch from fvwm-user mailing list.
+ eapply "${FILESDIR}/${PN}-2.7.0-translucent-menus.diff"
+ fi
+
+ eapply "${FILESDIR}"/fvwm-2.7.0-ar.patch # bug #474528
+ eapply "${FILESDIR}"/fvwm-2.7.0-c99.patch
+ eapply "${FILESDIR}"/fvwm-2.7.0-fix-docdir.patch
+
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --libexecdir="${EPREFIX}"/usr/$(get_libdir)
+ --with-imagepath=/usr/include/X11/bitmaps:/usr/include/X11/pixmaps:/usr/share/icons/fvwm
+ --enable-iconv
+ --enable-package-subdirs
+ --enable-mandoc
+ --without-rplay-library
+ $(use_enable bidi)
+ $(use_enable debug debug-msgs)
+ $(use_enable debug command-log)
+ $(use_enable doc htmldoc)
+ $(use_enable nls)
+ $(use_enable perl perllib)
+ $(use_enable png)
+ $(use_with readline readline-library)
+ $(use_with stroke stroke-library)
+ $(use_enable svg rsvg)
+ $(use_enable truetype xft)
+ $(use_enable xinerama)
+ )
+
+ # Non-upstream email where bugs should be sent; used in fvwm-bug.
+ export FVWM_BUGADDR="maintainer-needed@gentoo.org"
+
+ # Recommended by upstream, reference ????
+ append-flags -fno-strict-aliasing
+
+ # bug #864959
+ filter-lto
+
+ # Signed chars are required.
+ use ppc && append-flags -fsigned-char
+
+ use readline && myeconfargs+=( --without-termcap-library )
+
+ export ac_cv_path_PYTHON="${PYTHON}"
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ make_session_desktop fvwm /usr/bin/fvwm
+
+ if ! use lock; then
+ find "${ED}" -name '*fvwm-menu-xlock' -delete || die
+ fi
+
+ if use perl; then
+ if ! use tk; then
+ rm "${ED}"/usr/share/fvwm/perllib/FVWM/Module/Tk.pm || die
+ rm "${ED}"/usr/share/fvwm/perllib/FVWM/Module/Toolkit.pm || die
+ find "${ED}"/usr/share/fvwm/perllib -depth -type d -exec rmdir '{}' \; || die
+ fi
+ else
+ # Completely wipe it if ! use perl
+ rm -r "${ED}"/usr/bin/fvwm-perllib "${ED}"/usr/share/man/man1/fvwm-perllib.1 || die
+ fi
+
+ # Utility for testing FVWM behaviour by creating a simple window with
+ # configurable hints.
+ if use debug; then
+ dobin tests/hints/hints_test
+ newdoc tests/hints/README README.hints
+ fi
+
+ exeinto /etc/X11/Sessions
+ newexe - ${PN} <<-EOF
+ #!/bin/sh
+ ${PN}
+ EOF
+
+ dodoc docs/{COMMANDS,DEVELOPERS.md}
+
+ # README file for translucent menus patch.
+ if ! use vanilla; then
+ dodoc "${FILESDIR}"/README.translucency
+ ewarn "You are using a patched build, so, please, don't"
+ ewarn "report bugs at the fvwm-workers list unless you are"
+ ewarn "also able to reproduce them with a vanilla build (USE=vanilla)."
+ fi
+}