From 3108ce8586e6da41676fd6bed4101da8f4af8e31 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 16 Oct 2022 19:53:15 +0100 Subject: gentoo auto-resync : 16:10:2022 - 19:53:15 --- games-roguelike/Manifest.gz | Bin 3052 -> 3054 bytes games-roguelike/nethack/Manifest | 3 +- .../nethack/files/nethack-3.6.6-clang16.patch | 10 ++ games-roguelike/nethack/nethack-3.6.6-r1.ebuild | 149 +++++++++++++++++++++ games-roguelike/nethack/nethack-3.6.6.ebuild | 137 ------------------- 5 files changed, 161 insertions(+), 138 deletions(-) create mode 100644 games-roguelike/nethack/files/nethack-3.6.6-clang16.patch create mode 100644 games-roguelike/nethack/nethack-3.6.6-r1.ebuild delete mode 100644 games-roguelike/nethack/nethack-3.6.6.ebuild (limited to 'games-roguelike') diff --git a/games-roguelike/Manifest.gz b/games-roguelike/Manifest.gz index 669f936a5afc..e05f45f3be84 100644 Binary files a/games-roguelike/Manifest.gz and b/games-roguelike/Manifest.gz differ diff --git a/games-roguelike/nethack/Manifest b/games-roguelike/nethack/Manifest index 50f72f4fdd19..d4135074a9f4 100644 --- a/games-roguelike/nethack/Manifest +++ b/games-roguelike/nethack/Manifest @@ -2,7 +2,8 @@ AUX nethack-3.6.0-nethackrc 2458 BLAKE2B a051f476ffed8fb1598c65f243df3aa412a4bb3 AUX nethack-3.6.3-hint-tty 266 BLAKE2B b9c3babf39ec3e7a8c5bfaa0efc9da9f91d7a6d31702100de04d93878563d07e8dded475a5f044e251b47404b22a00744f4e28d83e71743013cfe823dd699fe1 SHA512 7aa224680622a1c86ca2fe14aaf48dd202a0104aae108767494a822b29ae110c2b8489234622b1da8e9eafca30b2ccbbec7a8b2dec5d53f44ef21b303daa8c89 AUX nethack-3.6.3-hint-x11 420 BLAKE2B 42d2681cd36a0bdb81a1d4c61c7be69c4fe85b43daf9e3ad28ed0a867a8e4dcb684fafe4125d4e9d4f7176274bc2def4e83bc086a523ab2d99ed89699b494dcb SHA512 44f48a5f7b5302b9e1deaf5449b3dc67ee59b1eaca14cace5f699cffa17b92f1dbf0d1793ae31dfa0d1ebc77c65ab04d67b3988fd1f934d3ed5620ae2aaeaf21 AUX nethack-3.6.3-recover.patch 3795 BLAKE2B b00102072a9f23b7b736d1d18bc6cdc0a77f156ca963bd14bd86dadd92f5f77baee8f518f26f9dfa36fee64df39afab88ebe026da7fff3a8a9602a271e94851c SHA512 7ec01f9485efe679c734b1b8cf0292212bac38a9fdf0622b34262fe88f197c46f09d62679f362b37b36b4cea7b5c89373f32b5277949ebe72c7cf34b7941c007 +AUX nethack-3.6.6-clang16.patch 163 BLAKE2B fdd43fdb812cc54772c926ea060e100cc810fda5095fdf5de7fd9736b42306a3f55880430d80c96167805228b270b18bdc24e34a70aba5e0b54563a9866c6996 SHA512 0b4a0fe2547be421527c67f6c348069cbf2f4def34a935f77731ddc0c6d4d031866ff8f49c990b6b2f23967217242e21f0b78711885453f930adfb9270360814 AUX nethack-3.6.6-wunused-result.patch 1279 BLAKE2B dc8e6c157746b8ecc4233be370d0674d0d45606cdd4b5e95d6be3d8a882d053c77fe85560f73a3e8e93137552cc1bba0a0849c8a12297b5370ab2e1bbecd811f SHA512 38219bf7c9dac9af90aa18f83aab80cbe4f033a2c0ff33c8434d9dd68afdd34463a183a04794938d3a507e1682b645f696e7fa5c8e99eed0b87be2f72696f5fd DIST nethack-3.6.6.tar.gz 5577633 BLAKE2B 7b4b12f3a711785c86208dab83f9de725c33470e056ee57e6d96c3a68f06c1d0d98343ed82eca669986361d0663ddbe56d9a74d9cb45b42bf005c2f323b3cd79 SHA512 579fde93a37a1b5df637d5bac2601194beeb455c175fbe3ef89342122c8567bb8221ce60d8a6168e6b45c67ade7d7b09c86bf202c8cbe2d6294d276be3e53055 -EBUILD nethack-3.6.6.ebuild 4477 BLAKE2B c51366442b4d77137195dfd29cba31e7065f2941d7f7247b9a5befd7598df9476936c99837b23927c711af1b151a1e096c9c88736ea9198ca5d499b9f3a894be SHA512 d681b8e9d3e1d787ed6e0eb437db6be25adae2edebeeb1fc81113db708dd0889f69076a2d9a6a73a35687bf0354db9a7d82914a342fb372caf0f5a3090ec7dc4 +EBUILD nethack-3.6.6-r1.ebuild 4868 BLAKE2B 39f2e3484b2a4d27c7d9d605d1f4447b11db22c2539509995591aa28550909c82a887a086880d25da5f5a1974266587bb72c28f79be7c0043c19e9a890569229 SHA512 9f0f45b888c739ec28a4971be5d4e02956b0d78fda4c299a01f9ee419c223374eae93a2d523aeecda1b7f4a011ed850e7aca32440f738917672e1b6dccacb3cf MISC metadata.xml 331 BLAKE2B c3337002e52be30db0c37c49e1eb7b68db924b124bd354cfee11c8d103a6f3af7743ea0e02dbba63447cf5c085b9685349dc4913600f3a3fbd5201766c8d44b5 SHA512 2dfca1aa8269956f622061051c8254f2de2bb8fe08bd309c40354825149e0c5b9208b44a004ee8d546df07d1256ecc0f5d966aa40baa28a9da606633030b9ea4 diff --git a/games-roguelike/nethack/files/nethack-3.6.6-clang16.patch b/games-roguelike/nethack/files/nethack-3.6.6-clang16.patch new file mode 100644 index 000000000000..b8a67644b80e --- /dev/null +++ b/games-roguelike/nethack/files/nethack-3.6.6-clang16.patch @@ -0,0 +1,10 @@ +https://bugs.gentoo.org/874462 +--- a/win/tty/wintty.c ++++ b/win/tty/wintty.c +@@ -26,2 +26,6 @@ + ++#ifdef DEF_PAGER ++#include ++#endif ++ + #ifndef NO_TERMS diff --git a/games-roguelike/nethack/nethack-3.6.6-r1.ebuild b/games-roguelike/nethack/nethack-3.6.6-r1.ebuild new file mode 100644 index 000000000000..7c457f11ab98 --- /dev/null +++ b/games-roguelike/nethack/nethack-3.6.6-r1.ebuild @@ -0,0 +1,149 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit desktop flag-o-matic toolchain-funcs + +DESCRIPTION="The ultimate old-school single player dungeon exploration game" +HOMEPAGE="https://www.nethack.org/" +SRC_URI="https://nethack.org/download/${PV}/nethack-${PV//.}-src.tgz -> ${P}.tar.gz" +S="${WORKDIR}/NetHack-NetHack-${PV}_Released" + +LICENSE="nethack" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86" +IUSE="X" + +RDEPEND=" + acct-group/gamestat + sys-libs/ncurses:0= + X? ( + x11-libs/libX11 + x11-libs/libXaw + x11-libs/libXpm + x11-libs/libXt + ) +" +DEPEND=" + ${RDEPEND} + X? ( x11-base/xorg-proto ) +" +BDEPEND=" + virtual/pkgconfig + virtual/yacc + X? ( + x11-apps/bdftopcf + x11-apps/mkfontscale + ) +" + +PATCHES=( + "${FILESDIR}/${PN}-3.6.3-recover.patch" + "${FILESDIR}/${PN}-3.6.6-wunused-result.patch" # bug 830556 + "${FILESDIR}/${PN}-3.6.6-clang16.patch" +) + +src_prepare() { + default + + cp "${FILESDIR}/${PN}-3.6.3-hint-$(usex X x11 tty)" hint || die "Failed to copy hint file" + sys/unix/setup.sh hint || die "Failed to run setup.sh" +} + +src_compile() { + append-cflags -std=gnu89 # old codebase, incompatible with c2x + append-cflags -I../include -DDLB -DSECURE -DTIMED_DELAY -DVISION_TABLES -DDUMPLOG -DSCORE_ON_BOTL + append-cflags '-DCOMPRESS=\"${EPREFIX}/bin/gzip\"' '-DCOMPRESS_EXTENSION=\".gz\"' + append-cflags "-DHACKDIR=\\\"${EPREFIX}/usr/$(get_libdir)/nethack\\\"" "-DVAR_PLAYGROUND=\\\"${EPREFIX}/var/games/nethack\\\"" + append-cflags "-DDEF_PAGER=\\\"${PAGER}\\\"" + append-cflags -DSYSCF "-DSYSCF_FILE=\\\"${EPREFIX}/etc/nethack.sysconf\\\"" + + if use X; then + append-cflags -DX11_GRAPHICS -DUSE_XPM + + # XtErrorHandler usage seems right, but headers "may" add ((noreturn)) + # giving an incompatible type error with clang-16 (could alternatively + # use private _X_NORETURN but this may be fragile) + append-cflags -Wno-error=incompatible-pointer-types #874462 + fi + + LOCAL_MAKEOPTS=( + CC="$(tc-getCC)" CFLAGS="${CFLAGS}" LFLAGS="${LDFLAGS}" + WINTTYLIB="$($(tc-getPKG_CONFIG) --libs ncurses)" + HACKDIR="${EPREFIX}/usr/$(get_libdir)/nethack" INSTDIR="${ED}/usr/$(get_libdir)/nethack" + SHELLDIR="${ED}/usr/bin" VARDIR="${ED}/var/games/nethack" + ) + + emake "${LOCAL_MAKEOPTS[@]}" nethack recover Guidebook spec_levs + + # Upstream still has some parallel compilation bugs + emake -j1 "${LOCAL_MAKEOPTS[@]}" all +} + +src_install() { + emake "${LOCAL_MAKEOPTS[@]}" install + + mv "${ED}/usr/$(get_libdir)/nethack/recover" "${ED}/usr/bin/recover-nethack" || die "Failed to move recover-nethack" + + doman doc/nethack.6 + newman doc/recover.6 recover-nethack.6 + dodoc doc/Guidebook.txt + + insinto /etc + newins sys/unix/sysconf nethack.sysconf + + insinto /etc/skel + newins "${FILESDIR}/${PN}-3.6.0-nethackrc" .nethackrc + + if use X ; then + cd "${S}/win/X11" || die "Failed to enter win/X11 directory" + + mkdir -p "${ED}/etc/X11/app-defaults/" || die "Failed to make app-defaults directory" + mv "${ED}/usr/$(get_libdir)/nethack/NetHack.ad" "${ED}/etc/X11/app-defaults/" || die "Failed to move NetHack.ad" + + newicon nh_icon.xpm nethack.xpm + make_desktop_entry ${PN} Nethack + + # install nethack fonts + bdftopcf -o nh10.pcf nh10.bdf || die "Converting fonts failed" + bdftopcf -o ibm.pcf ibm.bdf || die "Converting fonts failed" + insinto "/usr/$(get_libdir)/nethack/fonts" + doins *.pcf + mkfontdir "${ED}/usr/$(get_libdir)/nethack/fonts" || die "mkfontdir failed" + fi + + rm -r "${ED}/var/games/nethack" || die "Failed to clean var/games/nethack" + keepdir /var/games/nethack/save +} + +pkg_preinst() { + fowners root:gamestat /var/games/nethack /var/games/nethack/save + fperms 2770 /var/games/nethack /var/games/nethack/save + + fowners root:gamestat "/usr/$(get_libdir)/nethack/nethack" + fperms g+s "/usr/$(get_libdir)/nethack/nethack" +} + +pkg_postinst() { + cd "${EROOT}/var/games/nethack" || die "Failed to enter ${EROOT}/var/games/nethack directory" + + # Transition mechanism for