diff options
author | Matt Jolly <Matt.Jolly@footclan.ninja> | 2023-12-10 05:05:15 +1000 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2023-12-13 02:05:07 +0000 |
commit | 7f70474f00e0250861d24f0230144feb317c4938 (patch) | |
tree | 272fece34cd3c335cedbd3948692d0e1e173a987 /x11-wm/fvwm3 | |
parent | sys-fs/bcachefs-tools: drop 1.2_p20230813-r1 (diff) | |
download | gentoo-7f70474f00e0250861d24f0230144feb317c4938.tar.gz gentoo-7f70474f00e0250861d24f0230144feb317c4938.tar.bz2 gentoo-7f70474f00e0250861d24f0230144feb317c4938.zip |
x11-wm/fvwm3: add 1.0.9
Fix man installation which was unintentionally disabled
alongside htmldoc.
Add pregenerated docs to avoid pulling in
ruby as a bdep.
Closes: https://bugs.gentoo.org/919240
Signed-off-by: Matt Jolly <Matt.Jolly@footclan.ninja>
Closes: https://github.com/gentoo/gentoo/pull/34200
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'x11-wm/fvwm3')
-rw-r--r-- | x11-wm/fvwm3/Manifest | 2 | ||||
-rw-r--r-- | x11-wm/fvwm3/fvwm3-1.0.9.ebuild | 203 | ||||
-rw-r--r-- | x11-wm/fvwm3/fvwm3-9999.ebuild | 51 |
3 files changed, 248 insertions, 8 deletions
diff --git a/x11-wm/fvwm3/Manifest b/x11-wm/fvwm3/Manifest index f7b692de43b2..047a3f4779c0 100644 --- a/x11-wm/fvwm3/Manifest +++ b/x11-wm/fvwm3/Manifest @@ -1 +1,3 @@ DIST fvwm3-1.0.8.tar.gz 5644021 BLAKE2B c2a0a4953f556f86128452c8b42d8f86e2a02c9314cca17688987a51ed91bb3ecccf29e77f2b01c7ed444b54f45e402859ed1cce39714ad6d47860f639509b80 SHA512 fef69b6d97b3533e6722b48336aa8904b399c42437c4adcab756edf55cf839126002255dfa268bf7159d3bb9caf4d44c43a9217c9df5dc6224cef8461ecf2c34 +DIST fvwm3-1.0.9-docs.tar.xz 234884 BLAKE2B f52da9eb2486f7a212ead77ccc190c57076e1d3c73a3997c3a94edcf60dbc72ec5d410a8df1d621ff18b346741b1c94b3f87170db68c3067caa3295782a9bb61 SHA512 e6c33b09b7bac32bd61f1bd2c0216e2c99fef3f0b51b52b229093c25a437828e4bece382284d0c1f0bbbaf5b7459f2c391dfc1d2fa4ba80be22f09094e976b03 +DIST fvwm3-1.0.9.tar.gz 4525552 BLAKE2B cb58181adb42f5b8d491c6413277eb1f4a5d89637d9c6bb323223925c719d808e84ed0f72a1d0ffc822ddb8295ebf2bb89c2351ebd591916b50ebc69728e59fa SHA512 de71d74b76da8e0cf1560d51ef916857e3f825b272d786d9b6b93aef9a82c399f580b9b941a47aff1f327b097d12e1ce05860924e792206e4150ff19a5c39ee3 diff --git a/x11-wm/fvwm3/fvwm3-1.0.9.ebuild b/x11-wm/fvwm3/fvwm3-1.0.9.ebuild new file mode 100644 index 000000000000..343a8c61635c --- /dev/null +++ b/x11-wm/fvwm3/fvwm3-1.0.9.ebuild @@ -0,0 +1,203 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Doc generation requires pulls in asciidoc/ruby, we'll prebuild docs +# for release ebuilds. +# Scripting for this is in sam-gentoo-scripts. +: ${FVWM3_DOCS_PREBUILT:=1} + +PYTHON_COMPAT=( python3_{10..12} ) +GO_OPTIONAL=1 +inherit autotools desktop flag-o-matic go-module python-single-r1 toolchain-funcs + +DESCRIPTION="A multiple large virtual desktop window manager derived from fvwm" +HOMEPAGE="https://www.fvwm.org/" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/fvwmorg/fvwm3.git" + EGIT_BRANCH="main" +else + SRC_URI="https://github.com/fvwmorg/fvwm3/releases/download/${PV}/${P}.tar.gz" + if [[ ${FVWM3_DOCS_PREBUILT} == 1 ]]; then + SRC_URI+=" https://deps.gentoo.zip/x11-wm/fvwm3/${P}-docs.tar.xz" + fi + KEYWORDS="~amd64 ~riscv" +fi + +LICENSE="GPL-2+ FVWM + go? ( Apache-2.0 BSD MIT )" +SLOT="0" +IUSE="bidi debug +go netpbm nls perl readline stroke svg tk lock" +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE}" + +DOCS=( NEWS ) + +if [[ ${PV} == 9999 ]]; then + DOCS+=( + dev-docs/COMMANDS + dev-docs/DEVELOPERS.md + dev-docs/INSTALL.md + dev-docs/PARSING.md + dev-docs/TODO.md + dev-docs/NEW-COMMANDS.md + ) +fi + +BDEPEND=" + virtual/pkgconfig + app-arch/unzip + go? ( >=dev-lang/go-1.14 ) +" + +if [[ ${FVWM3_DOCS_PREBUILT} == 0 ]]; then + BDEPEND+=" + dev-libs/libxslt + dev-ruby/asciidoctor + " +fi + +RDEPEND="${PYTHON_DEPS} + ${COMMON_DEPEND} + !x11-wm/fvwm + dev-lang/perl + dev-libs/glib:2 + dev-libs/libevent:= + media-libs/fontconfig + media-libs/libpng:= + sys-apps/debianutils + 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/libXft + x11-libs/libXpm + x11-libs/libXrandr + x11-libs/libXrender + bidi? ( dev-libs/fribidi ) + lock? ( x11-misc/xlockmore ) + netpbm? ( media-libs/netpbm ) + perl? ( tk? ( + dev-lang/tk + dev-perl/Tk + >=dev-perl/X11-Protocol-0.56 + ) + ) + readline? ( + sys-libs/ncurses:= + sys-libs/readline:= + ) + stroke? ( dev-libs/libstroke ) + svg? ( + gnome-base/librsvg:2 + x11-libs/cairo + )" + +DEPEND="${COMMON_DEPEND} + x11-base/xorg-proto" + +src_prepare() { + default + use go && ( sed -e 's/GOFLAGS=-ldflags="-s -w"/GOFLAGS=/' \ + -i bin/FvwmPrompt/Makefile.am || die ) + + eautoreconf +} + +src_configure() { + # Non-upstream email where bugs should be sent; used in fvwm-bug. + export FVWM_BUGADDR="desktop-wm@nogentoo.org" + + # Recommended by upstream for release. Doesn't really matter for live ebuilds. + append-flags -fno-strict-aliasing + + # Signed chars are required. + for arch in arm arm64 ppc ppc64; do + use $arch && append-flags -fsigned-chars + done + + local myconf=( + --with-imagepath=/usr/include/X11/bitmaps:/usr/include/X11/pixmaps:/usr/share/icons/fvwm + --enable-package-subdirs + $(use_enable bidi) + $(use_enable go golang) + $(use_enable nls) + $(use_enable nls iconv) + $(use_enable perl perllib) + $(use_with readline readline-library) + $(use_enable svg rsvg) + --enable-png + ) + + if [[ ${FVWM3_DOCS_PREBUILT} == 1 ]]; then + myconf+=( + --enable-mandoc + --enable-htmldoc + ) + else + # Probably not required, but let's be safe + myconf+=( + --disable-mandoc + --disable-htmldoc + ) + fi + + use readline && myconf+=( --without-termcap-library ) + + econf "${myconf[@]}" +} + +src_compile() { + PREFIX="${EPREFIX}/usr" emake AR="$(tc-getAR)" +} + +src_install() { + # Since we're manually handling docs installation, let's do that first + # and then install the rest of the files via emake + local HTML_DOCS + if [[ ${FVWM3_DOCS_PREBUILT} == 1 ]] ; then + doman "${WORKDIR}"/${P}-docs/man/**/*.[0-8] + HTML_DOCS="${WORKDIR}"/${P}-docs/html/* + else + HTML_DOCS="${S}"/doc/*.html + doman "${S}"/doc/*.[0-8] + fi + + einstalldocs + + emake DESTDIR="${ED}" prefix="/usr" exec_prefix="/usr" datarootdir="/usr/share" install + + exeinto /etc/X11/Sessions + newexe - ${PN} <<-EOF + #!/bin/sh + ${PN} + EOF + + python_scriptinto "/usr/bin" + python_doscript "${ED}/usr/bin/FvwmCommand" "${ED}/usr/bin/fvwm-menu-desktop" + + make_session_desktop fvwm3 /usr/bin/fvwm3 + +} + +pkg_postinst() { + if use go; then + ewarn "FvwmPrompt has been installed, it provides the functionality of both FvwmCommand and FvwmConsole." + ewarn "For compatibility with the existing fvwm2 configurations, the ebuild will install a FvwmCommand wrapper." + ewarn "If you need FvwmConsole, install ${PN} with USE=\"-go\";" + ewarn "however FvwmPrompt and FvwmCommand will not be installed." + else + ewarn "FvwmConsole has been installed, but FvwmCommand and FvwmPrompt are no longer included in this ebuild." + ewarn "If you need FvwmPrompt or FvwmCommand, install ${PN} with USE=\"go\"." + ewarn "In that case, FvwmPrompt will replace FvwmConsole and provide the same functionality in a more flexible way." + fi +} diff --git a/x11-wm/fvwm3/fvwm3-9999.ebuild b/x11-wm/fvwm3/fvwm3-9999.ebuild index 8bc78a359bc5..343a8c61635c 100644 --- a/x11-wm/fvwm3/fvwm3-9999.ebuild +++ b/x11-wm/fvwm3/fvwm3-9999.ebuild @@ -3,6 +3,11 @@ EAPI=8 +# Doc generation requires pulls in asciidoc/ruby, we'll prebuild docs +# for release ebuilds. +# Scripting for this is in sam-gentoo-scripts. +: ${FVWM3_DOCS_PREBUILT:=1} + PYTHON_COMPAT=( python3_{10..12} ) GO_OPTIONAL=1 inherit autotools desktop flag-o-matic go-module python-single-r1 toolchain-funcs @@ -16,13 +21,16 @@ if [[ ${PV} == 9999 ]]; then EGIT_BRANCH="main" else SRC_URI="https://github.com/fvwmorg/fvwm3/releases/download/${PV}/${P}.tar.gz" + if [[ ${FVWM3_DOCS_PREBUILT} == 1 ]]; then + SRC_URI+=" https://deps.gentoo.zip/x11-wm/fvwm3/${P}-docs.tar.xz" + fi KEYWORDS="~amd64 ~riscv" fi LICENSE="GPL-2+ FVWM go? ( Apache-2.0 BSD MIT )" SLOT="0" -IUSE="bidi debug doc +go netpbm nls perl readline stroke svg tk lock" +IUSE="bidi debug +go netpbm nls perl readline stroke svg tk lock" REQUIRED_USE=" ${PYTHON_REQUIRED_USE}" @@ -41,12 +49,17 @@ fi BDEPEND=" virtual/pkgconfig - doc? ( dev-libs/libxslt - dev-ruby/asciidoctor ) app-arch/unzip go? ( >=dev-lang/go-1.14 ) " +if [[ ${FVWM3_DOCS_PREBUILT} == 0 ]]; then + BDEPEND+=" + dev-libs/libxslt + dev-ruby/asciidoctor + " +fi + RDEPEND="${PYTHON_DEPS} ${COMMON_DEPEND} !x11-wm/fvwm @@ -116,7 +129,6 @@ src_configure() { --with-imagepath=/usr/include/X11/bitmaps:/usr/include/X11/pixmaps:/usr/share/icons/fvwm --enable-package-subdirs $(use_enable bidi) - $(use_enable doc mandoc) $(use_enable go golang) $(use_enable nls) $(use_enable nls iconv) @@ -126,6 +138,19 @@ src_configure() { --enable-png ) + if [[ ${FVWM3_DOCS_PREBUILT} == 1 ]]; then + myconf+=( + --enable-mandoc + --enable-htmldoc + ) + else + # Probably not required, but let's be safe + myconf+=( + --disable-mandoc + --disable-htmldoc + ) + fi + use readline && myconf+=( --without-termcap-library ) econf "${myconf[@]}" @@ -133,12 +158,22 @@ src_configure() { src_compile() { PREFIX="${EPREFIX}/usr" emake AR="$(tc-getAR)" - if [[ ${PV} == *9999 ]]; then - use doc && emake -C doc - fi } src_install() { + # Since we're manually handling docs installation, let's do that first + # and then install the rest of the files via emake + local HTML_DOCS + if [[ ${FVWM3_DOCS_PREBUILT} == 1 ]] ; then + doman "${WORKDIR}"/${P}-docs/man/**/*.[0-8] + HTML_DOCS="${WORKDIR}"/${P}-docs/html/* + else + HTML_DOCS="${S}"/doc/*.html + doman "${S}"/doc/*.[0-8] + fi + + einstalldocs + emake DESTDIR="${ED}" prefix="/usr" exec_prefix="/usr" datarootdir="/usr/share" install exeinto /etc/X11/Sessions @@ -149,9 +184,9 @@ src_install() { python_scriptinto "/usr/bin" python_doscript "${ED}/usr/bin/FvwmCommand" "${ED}/usr/bin/fvwm-menu-desktop" - einstalldocs make_session_desktop fvwm3 /usr/bin/fvwm3 + } pkg_postinst() { |