diff options
author | Florian Schmaus <flow@gentoo.org> | 2023-07-16 18:31:44 +0200 |
---|---|---|
committer | Florian Schmaus <flow@gentoo.org> | 2023-07-16 18:31:57 +0200 |
commit | 1b70343fefee4dd870f4365591c60f98aa299f35 (patch) | |
tree | 8f7c64d8f0bf52f55bdfdc3d00ce6df5a0e97508 /x11-wm/herbstluftwm | |
parent | app-crypt/dehydrated: add 0.7.1 (diff) | |
download | gentoo-1b70343fefee4dd870f4365591c60f98aa299f35.tar.gz gentoo-1b70343fefee4dd870f4365591c60f98aa299f35.tar.bz2 gentoo-1b70343fefee4dd870f4365591c60f98aa299f35.zip |
x11-wm/herbstluftwm: switch to DISTUTILS_USE_PEP517
Bug: https://bugs.gentoo.org/910047
Signed-off-by: Florian Schmaus <flow@gentoo.org>
Diffstat (limited to 'x11-wm/herbstluftwm')
-rw-r--r-- | x11-wm/herbstluftwm/herbstluftwm-0.9.5-r2.ebuild | 147 | ||||
-rw-r--r-- | x11-wm/herbstluftwm/herbstluftwm-9999.ebuild | 3 |
2 files changed, 149 insertions, 1 deletions
diff --git a/x11-wm/herbstluftwm/herbstluftwm-0.9.5-r2.ebuild b/x11-wm/herbstluftwm/herbstluftwm-0.9.5-r2.ebuild new file mode 100644 index 000000000000..31baa0f5fafc --- /dev/null +++ b/x11-wm/herbstluftwm/herbstluftwm-0.9.5-r2.ebuild @@ -0,0 +1,147 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9..11} ) +DISTUTILS_USE_PEP517=setuptools +DISTUTILS_OPTIONAL=1 + +inherit cmake desktop distutils-r1 + +DESCRIPTION="A manual tiling window manager for X" +HOMEPAGE="https://herbstluftwm.org/" + +if [[ "${PV}" == "9999" ]] || [[ -n "${EGIT_COMMIT_ID}" ]]; then + EGIT_REPO_URI="https://github.com/herbstluftwm/herbstluftwm" + inherit git-r3 +else + SRC_URI="https://herbstluftwm.org/tarballs/${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="BSD-2" +SLOT="0" +IUSE="+doc python test" +RESTRICT="!test? ( test )" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +COMMON_DEPEND=" + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXft + x11-libs/libXinerama + x11-libs/libXrandr + x11-libs/libXrender +" +DEPEND=" + ${COMMON_DEPEND} + test? ( + dev-python/ewmh + dev-python/python-xlib + x11-apps/xsetroot + x11-base/xorg-server[xephyr,xvfb] + x11-misc/xdotool + x11-terms/xterm + ) +" +RDEPEND=" + ${COMMON_DEPEND} + app-shells/bash + python? ( ${PYTHON_DEPS} ) +" +BDEPEND=" + ${DISTUTILS_DEPS} + virtual/pkgconfig +" + +if [[ -n "${EGIT_REPO_URI}" ]]; then + # Herbstluftwm tarballs ship with pre-compiled documentation, only + # if we build from git asciidoc is needed. + BDEPEND+=" doc? ( app-text/asciidoc )" +fi + +src_prepare() { + # Do not install LICENSE and respect CMAKE_INSTALL_DOCDIR. + sed -i \ + -e '/^install.*LICENSEDIR/d' \ + -e '/set(DOCDIR / s#.*#set(DOCDIR ${CMAKE_INSTALL_DOCDIR})#' \ + CMakeLists.txt || die + cmake_src_prepare + + if use python; then + pushd "${S}"/python > /dev/null || die + distutils-r1_src_prepare + popd > /dev/null || die + fi +} + +src_configure() { + # Ensure that 'python3' is in PATH. #765118 + python_setup + + local mycmakeargs=( + -DWITH_DOCUMENTATION=$(usex doc) + ) + cmake_src_configure +} + +src_compile() { + cmake_src_compile + + if use python; then + pushd python > /dev/null || die + distutils-r1_src_compile + popd >/dev/null || die + fi +} + +src_install() { + cmake_src_install + + if ! use doc; then + rm -r "${ED}"/usr/share/doc/${PF}/examples || die + fi + + if use python; then + pushd python > /dev/null || die + distutils-r1_src_install + popd > /dev/null || die + fi + + # The man pages exists in src_install either in non-live ebuilds, + # since they are then shipped pre-compiled in herbstluftwm's + # release tarbal. Or they exist in live ebuilds if the 'doc' USE + # flag is enabled. + if [[ "${PV}" != 9999 ]] || use doc; then + local man_pages=( + herbstluftwm.1 + herbstclient.1 + herbstluftwm-tutorial.7 + ) + for man_page in "${man_pages[@]}"; do + doman "doc/${man_page}" + done + fi + + # Do not only install the herbstluftwm.desktop file in xsessions/ but + # also in applications/. This allows herbstluftwm to be used as + # window manager of a Gnome flashback session. + domenu "${ED}"/usr/share/xsessions/herbstluftwm.desktop +} + +distutils_enable_tests pytest + +src_test() { + ln -s "${BUILD_DIR}/herbstclient" || die "Could not symlink herbstclient" + ln -s "${BUILD_DIR}/herbstluftwm" || die "Could not symlink herbstluftwm" + + pushd python > /dev/null || die + distutils_install_for_testing + popd > /dev/null || die + + # Ensure PYTHONPATH is exported, see https://bugs.gentoo.org/801658. + export PYTHONPATH + python_test +} diff --git a/x11-wm/herbstluftwm/herbstluftwm-9999.ebuild b/x11-wm/herbstluftwm/herbstluftwm-9999.ebuild index 051f9ba720c9..7c5b5aaecbda 100644 --- a/x11-wm/herbstluftwm/herbstluftwm-9999.ebuild +++ b/x11-wm/herbstluftwm/herbstluftwm-9999.ebuild @@ -4,6 +4,7 @@ EAPI=8 PYTHON_COMPAT=( python3_{9..11} ) +DISTUTILS_USE_PEP517=setuptools DISTUTILS_OPTIONAL=1 inherit cmake distutils-r1 @@ -51,7 +52,7 @@ RDEPEND=" python? ( ${PYTHON_DEPS} ) " BDEPEND=" - ${PYTHON_DEPS} + ${DISTUTILS_DEPS} virtual/pkgconfig " |