From d6e28adaabb7b49c32a64e48f569494521f2384c Mon Sep 17 00:00:00 2001 From: pho Date: Fri, 24 Jan 2020 13:33:32 +0000 Subject: Import hengband-1.6.2 from wip Hengband is a rogue-like game which is a descendant of Moria and Angband, and is a direct derivation of Zangband. In order to win the game by defeating The Serpent of Chaos who lurks in the 100th floor of the Dungeon of Angband, you need to not only obtain a good set of gears, but also acquaint yourself with the game. --- games/hengband/DESCR | 5 + games/hengband/Makefile | 64 ++++++ games/hengband/PLIST | 230 +++++++++++++++++++++ games/hengband/distinfo | 16 ++ games/hengband/options.mk | 39 ++++ games/hengband/patches/patch-lib_Makefile.am | 13 ++ .../patches/patch-lib_xtra_graf_Makefile.am | 15 ++ games/hengband/patches/patch-src_Makefile.am | 16 ++ games/hengband/patches/patch-src_h-type.h | 47 +++++ games/hengband/patches/patch-src_init2.c | 38 ++++ games/hengband/patches/patch-src_main-gcu.c | 25 +++ 11 files changed, 508 insertions(+) create mode 100644 games/hengband/DESCR create mode 100644 games/hengband/Makefile create mode 100644 games/hengband/PLIST create mode 100644 games/hengband/distinfo create mode 100644 games/hengband/options.mk create mode 100644 games/hengband/patches/patch-lib_Makefile.am create mode 100644 games/hengband/patches/patch-lib_xtra_graf_Makefile.am create mode 100644 games/hengband/patches/patch-src_Makefile.am create mode 100644 games/hengband/patches/patch-src_h-type.h create mode 100644 games/hengband/patches/patch-src_init2.c create mode 100644 games/hengband/patches/patch-src_main-gcu.c (limited to 'games') diff --git a/games/hengband/DESCR b/games/hengband/DESCR new file mode 100644 index 00000000000..b1d31f06017 --- /dev/null +++ b/games/hengband/DESCR @@ -0,0 +1,5 @@ +Hengband is a rogue-like game which is a descendant of Moria and +Angband, and is a direct derivation of Zangband. In order to win the +game by defeating The Serpent of Chaos who lurks in the 100th floor of +the Dungeon of Angband, you need to not only obtain a good set of +gears, but also acquaint yourself with the game. diff --git a/games/hengband/Makefile b/games/hengband/Makefile new file mode 100644 index 00000000000..3f00f1d9dc2 --- /dev/null +++ b/games/hengband/Makefile @@ -0,0 +1,64 @@ +# $NetBSD: Makefile,v 1.1 2020/01/24 13:33:32 pho Exp $ + +DISTNAME= hengband-1.6.2 +CATEGORIES= games +MASTER_SITES= ${MASTER_SITE_OSDN:=hengband/10331/} +EXTRACT_SUFX= .tar.bz2 + +MAINTAINER= pho@cielonegro.org +HOMEPAGE= http://hengband.sourceforge.jp/en/index.html +COMMENT= Rogue-like game derived from Zangband +LICENSE= gnu-gpl-v2 + +# Optional 16x16 (large) tile set, only useful for the X11 UI. +HENGBAND_TILE16= heng-graf-16x16.tar.gz +DISTFILES= ${DEFAULT_DISTFILES} ${HENGBAND_TILE16} +SITES.${HENGBAND_TILE16}= ${MASTER_SITE_OSDN:=hengband/5195/} +EXTRACT_DIR.${HENGBAND_TILE16}= ${WRKSRC}/lib/xtra/graf + +GNU_CONFIGURE= yes +CONFIGURE_ARGS+= --with-setgid=${HENGBAND_GROUP} +CONFIGURE_ARGS+= --with-libpath=${HENGBAND_LIBDIR}/ + +HENGBAND_LIBDIR= ${PREFIX}/libdata/${PKGBASE} +HENGBAND_VARDIR= ${VARBASE}/games/${PKGBASE} +HENGBAND_USER= ${GAMES_USER} +HENGBAND_GROUP= ${GAMES_GROUP} +BUILD_DEFS+= VARBASE GAMES_USER GAMES_GROUP + +SUBST_CLASSES+= vardir +SUBST_STAGE.vardir= pre-configure +SUBST_FILES.vardir= src/init2.c +SUBST_VARS.vardir= HENGBAND_VARDIR + +SPECIAL_PERMS+= ${PREFIX}/bin/hengband \ + ${HENGBAND_USER} ${HENGBAND_GROUP} 2555 + +USE_TOOLS+= automake autoreconf +pre-configure: + ${RUN}cd ${WRKSRC} && autoreconf -i + +# Special handling for the score, save, and pref files: we do not want +# to delete them between package installations and deinstallations. +# See "readme_angband" for the details of these directories. +REQD_DIRS_PERMS+= ${HENGBAND_VARDIR} \ + ${HENGBAND_USER} ${HENGBAND_GROUP} 775 +REQD_DIRS_PERMS+= ${HENGBAND_VARDIR}/apex \ + ${HENGBAND_USER} ${HENGBAND_GROUP} 775 +REQD_DIRS_PERMS+= ${HENGBAND_VARDIR}/bone \ + ${HENGBAND_USER} ${HENGBAND_GROUP} 775 +REQD_DIRS_PERMS+= ${HENGBAND_VARDIR}/data \ + ${HENGBAND_USER} ${HENGBAND_GROUP} 775 +REQD_DIRS_PERMS+= ${HENGBAND_VARDIR}/save \ + ${HENGBAND_USER} ${HENGBAND_GROUP} 775 + +INSTALLATION_DIRS+= share/doc/${PKGBASE} +post-install: + ${RUN}for f in autopick.txt autopick_eng.txt readme.txt \ + readme_angband readme_eng.txt; do \ + ${INSTALL_DATA} ${WRKSRC}/$${f} \ + ${DESTDIR}${PREFIX}/share/doc/${PKGBASE}; \ + done + +.include "options.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/games/hengband/PLIST b/games/hengband/PLIST new file mode 100644 index 00000000000..d46a9ad299a --- /dev/null +++ b/games/hengband/PLIST @@ -0,0 +1,230 @@ +@comment $NetBSD: PLIST,v 1.1 2020/01/24 13:33:32 pho Exp $ +bin/hengband +libdata/hengband/edit/a_info.txt +libdata/hengband/edit/d_info.txt +libdata/hengband/edit/e_info.txt +libdata/hengband/edit/f_info.txt +libdata/hengband/edit/k_info.txt +libdata/hengband/edit/m_info.txt +libdata/hengband/edit/misc.txt +libdata/hengband/edit/q0000001.txt +libdata/hengband/edit/q0000002.txt +libdata/hengband/edit/q0000003.txt +libdata/hengband/edit/q0000004.txt +libdata/hengband/edit/q0000005.txt +libdata/hengband/edit/q0000006.txt +libdata/hengband/edit/q0000007.txt +libdata/hengband/edit/q0000019.txt +libdata/hengband/edit/q0000020.txt +libdata/hengband/edit/q0000021.txt +libdata/hengband/edit/q0000022.txt +libdata/hengband/edit/q0000023.txt +libdata/hengband/edit/q0000027.txt +libdata/hengband/edit/q0000028.txt +libdata/hengband/edit/q00000ms.txt +libdata/hengband/edit/q000chao.txt +libdata/hengband/edit/q000dekn.txt +libdata/hengband/edit/q000eric.txt +libdata/hengband/edit/q000lyeh.txt +libdata/hengband/edit/q000natu.txt +libdata/hengband/edit/q000sorc.txt +libdata/hengband/edit/q00water.txt +libdata/hengband/edit/q0clone0.txt +libdata/hengband/edit/q0fields.txt +libdata/hengband/edit/q0thief1.txt +libdata/hengband/edit/q0thief2.txt +libdata/hengband/edit/q0willow.txt +libdata/hengband/edit/q_info.txt +libdata/hengband/edit/q_oberon.txt +libdata/hengband/edit/q_pref.txt +libdata/hengband/edit/q_random.txt +libdata/hengband/edit/q_serpen.txt +libdata/hengband/edit/q_warg.txt +libdata/hengband/edit/qdarkelf.txt +libdata/hengband/edit/qhaunted.txt +libdata/hengband/edit/r_info.txt +libdata/hengband/edit/s_info.txt +libdata/hengband/edit/t0000001.txt +libdata/hengband/edit/t0000002.txt +libdata/hengband/edit/t0000003.txt +libdata/hengband/edit/t0000004.txt +libdata/hengband/edit/t0000005.txt +libdata/hengband/edit/t0000006.txt +libdata/hengband/edit/t_basic.txt +libdata/hengband/edit/t_info.txt +libdata/hengband/edit/t_lite.txt +libdata/hengband/edit/t_pref.txt +libdata/hengband/edit/v_info.txt +libdata/hengband/edit/w_info.txt +libdata/hengband/file/a_cursed.txt +libdata/hengband/file/a_cursed_j.txt +libdata/hengband/file/a_high.txt +libdata/hengband/file/a_high_j.txt +libdata/hengband/file/a_low.txt +libdata/hengband/file/a_low_j.txt +libdata/hengband/file/a_med.txt +libdata/hengband/file/a_med_j.txt +libdata/hengband/file/aname_j.txt +libdata/hengband/file/book-0_jp.txt +libdata/hengband/file/chainswd.txt +libdata/hengband/file/chainswd_j.txt +libdata/hengband/file/dead.txt +libdata/hengband/file/dead_j.txt +libdata/hengband/file/death.txt +libdata/hengband/file/death_j.txt +libdata/hengband/file/elvish.txt +libdata/hengband/file/elvish_j.txt +libdata/hengband/file/error.txt +libdata/hengband/file/error_j.txt +libdata/hengband/file/mondeath.txt +libdata/hengband/file/mondeath_j.txt +libdata/hengband/file/monfear.txt +libdata/hengband/file/monfear_j.txt +libdata/hengband/file/monfrien.txt +libdata/hengband/file/monfrien_j.txt +libdata/hengband/file/monspeak.txt +libdata/hengband/file/monspeak_j.txt +libdata/hengband/file/news.txt +libdata/hengband/file/news_j.txt +libdata/hengband/file/rumors.txt +libdata/hengband/file/rumors_j.txt +libdata/hengband/file/seppuku.txt +libdata/hengband/file/seppuku_j.txt +libdata/hengband/file/silly.txt +libdata/hengband/file/silly_j.txt +libdata/hengband/file/timefun.txt +libdata/hengband/file/timefun_j.txt +libdata/hengband/file/timenorm.txt +libdata/hengband/file/timenorm_j.txt +libdata/hengband/file/w_cursed.txt +libdata/hengband/file/w_cursed_j.txt +libdata/hengband/file/w_high.txt +libdata/hengband/file/w_high_j.txt +libdata/hengband/file/w_low.txt +libdata/hengband/file/w_low_j.txt +libdata/hengband/file/w_med.txt +libdata/hengband/file/w_med_j.txt +libdata/hengband/help/attack.hlp +libdata/hengband/help/attack.txt +libdata/hengband/help/birth.hlp +libdata/hengband/help/birth.txt +libdata/hengband/help/bldg.txt +libdata/hengband/help/command.hlp +libdata/hengband/help/command.txt +libdata/hengband/help/commdesc.hlp +libdata/hengband/help/commdesc.txt +libdata/hengband/help/defend.hlp +libdata/hengband/help/defend.txt +libdata/hengband/help/dungeon.hlp +libdata/hengband/help/dungeon.txt +libdata/hengband/help/gambling.txt +libdata/hengband/help/general.hlp +libdata/hengband/help/general.txt +libdata/hengband/help/help.hlp +libdata/hengband/help/helpinfo.txt +libdata/hengband/help/j_general.txt +libdata/hengband/help/j_item1.txt +libdata/hengband/help/j_item2.txt +libdata/hengband/help/j_trans.txt +libdata/hengband/help/jattack.hlp +libdata/hengband/help/jattack.txt +libdata/hengband/help/jbirth.hlp +libdata/hengband/help/jbirth.txt +libdata/hengband/help/jbldg.txt +libdata/hengband/help/jcommand.hlp +libdata/hengband/help/jcommand.txt +libdata/hengband/help/jcommdesc.hlp +libdata/hengband/help/jcommdesc.txt +libdata/hengband/help/jdefend.hlp +libdata/hengband/help/jdefend.txt +libdata/hengband/help/jdungeon.hlp +libdata/hengband/help/jdungeon.txt +libdata/hengband/help/jgambling.txt +libdata/hengband/help/jgeneral.hlp +libdata/hengband/help/jgeneral.txt +libdata/hengband/help/jhelp.hlp +libdata/hengband/help/jhelpinfo.txt +libdata/hengband/help/jlicense.txt +libdata/hengband/help/jmagic.hlp +libdata/hengband/help/jmagic.txt +libdata/hengband/help/jmonster.hlp +libdata/hengband/help/jmonster.txt +libdata/hengband/help/jobjects.hlp +libdata/hengband/help/jobjects.txt +libdata/hengband/help/joption.hlp +libdata/hengband/help/joption.txt +libdata/hengband/help/jpref.hlp +libdata/hengband/help/jpref.txt +libdata/hengband/help/jraceclas.hlp +libdata/hengband/help/jraceclas.txt +libdata/hengband/help/jspecial.hlp +libdata/hengband/help/jtang.txt +libdata/hengband/help/jtown.hlp +libdata/hengband/help/jtown.txt +libdata/hengband/help/jversion.txt +libdata/hengband/help/magic.hlp +libdata/hengband/help/magic.txt +libdata/hengband/help/monster.hlp +libdata/hengband/help/monster.txt +libdata/hengband/help/objects.hlp +libdata/hengband/help/objects.txt +libdata/hengband/help/option.hlp +libdata/hengband/help/option.txt +libdata/hengband/help/pref.hlp +libdata/hengband/help/pref.txt +libdata/hengband/help/raceclas.hlp +libdata/hengband/help/raceclas.txt +libdata/hengband/help/tang.txt +libdata/hengband/help/town.hlp +libdata/hengband/help/town.txt +libdata/hengband/help/version.txt +libdata/hengband/info/delete.me +libdata/hengband/pref/colors.prf +libdata/hengband/pref/font-ami.prf +libdata/hengband/pref/font-dos.prf +libdata/hengband/pref/font-ibm.prf +libdata/hengband/pref/font-mac.prf +libdata/hengband/pref/font-mon.prf +libdata/hengband/pref/font-win.prf +libdata/hengband/pref/font-x11.prf +libdata/hengband/pref/font-xxx.prf +libdata/hengband/pref/font.prf +libdata/hengband/pref/graf-ami.prf +libdata/hengband/pref/graf-dos.prf +libdata/hengband/pref/graf-gcu.prf +libdata/hengband/pref/graf-ibm.prf +libdata/hengband/pref/graf-mac.prf +libdata/hengband/pref/graf-new.prf +libdata/hengband/pref/graf-win.prf +libdata/hengband/pref/graf-x11.prf +libdata/hengband/pref/graf-xaw.prf +libdata/hengband/pref/graf-xxx.prf +libdata/hengband/pref/graf.prf +libdata/hengband/pref/pickpref.prf +libdata/hengband/pref/picktype.prf +libdata/hengband/pref/pref-acn.prf +libdata/hengband/pref/pref-ami.prf +libdata/hengband/pref/pref-emx.prf +libdata/hengband/pref/pref-gcu.prf +libdata/hengband/pref/pref-key.prf +libdata/hengband/pref/pref-mac.prf +libdata/hengband/pref/pref-opt.prf +libdata/hengband/pref/pref-win.prf +libdata/hengband/pref/pref-x11.prf +libdata/hengband/pref/pref.prf +libdata/hengband/pref/proxy.prf +libdata/hengband/pref/spell-xx.prf +libdata/hengband/pref/user-win.prf +libdata/hengband/pref/user.prf +libdata/hengband/pref/xtra-gcu.prf +libdata/hengband/pref/xtra-new.prf +libdata/hengband/pref/xtra-xxx.prf +libdata/hengband/script/delete.me +libdata/hengband/xtra/graf/16x16.bmp +libdata/hengband/xtra/graf/8x8.bmp +libdata/hengband/xtra/graf/mask.bmp +share/doc/hengband/autopick.txt +share/doc/hengband/autopick_eng.txt +share/doc/hengband/readme.txt +share/doc/hengband/readme_angband +share/doc/hengband/readme_eng.txt diff --git a/games/hengband/distinfo b/games/hengband/distinfo new file mode 100644 index 00000000000..562c096e5c7 --- /dev/null +++ b/games/hengband/distinfo @@ -0,0 +1,16 @@ +$NetBSD: distinfo,v 1.1 2020/01/24 13:33:32 pho Exp $ + +SHA1 (heng-graf-16x16.tar.gz) = 27166a215209f3ec0f2c4a61761fce5d802cddc1 +RMD160 (heng-graf-16x16.tar.gz) = eb2e8034d43709b9b7e06b69eac4b6a84d026cc1 +SHA512 (heng-graf-16x16.tar.gz) = 4641e12122b13015d03f8a7f3dcba72797495451f15c04eab2d6ea1fd57d082e11eea3115056c2a2203032db973bea01476ecb2389a7a730e98e972c41756dfa +Size (heng-graf-16x16.tar.gz) = 381027 bytes +SHA1 (hengband-1.6.2.tar.bz2) = 32156fe9363309ba75273d6c8ebb8f2043c97129 +RMD160 (hengband-1.6.2.tar.bz2) = 59f41666dd1724f03739d5fa078e537467dbf36e +SHA512 (hengband-1.6.2.tar.bz2) = 24c67f00556d7899b4f18f3071c4bd50bc754566c4c4736c18248ced243b1332e6c84381250c1a59358e7a914e5d62db05c47ab0921bcf40fbd6cfe4b6717520 +Size (hengband-1.6.2.tar.bz2) = 2029169 bytes +SHA1 (patch-lib_Makefile.am) = 35a066930834f9ea23c6ce9fb2a088c7ec86c28a +SHA1 (patch-lib_xtra_graf_Makefile.am) = 71d8e17bfc39a689ab30f3a02b5f052687bcf1db +SHA1 (patch-src_Makefile.am) = 57f08de8ecbd8083917fe36436286b7b1aef307c +SHA1 (patch-src_h-type.h) = b9327f3110d831a2b5ce711450fe73e0d093e5ad +SHA1 (patch-src_init2.c) = fe7064f23bce494ced5a524f2a60117ac0ef56ff +SHA1 (patch-src_main-gcu.c) = 8bffb440de8beb18a45b9257a95e33e033260036 diff --git a/games/hengband/options.mk b/games/hengband/options.mk new file mode 100644 index 00000000000..2c5e36646f6 --- /dev/null +++ b/games/hengband/options.mk @@ -0,0 +1,39 @@ +# $NetBSD: options.mk,v 1.1 2020/01/24 13:33:32 pho Exp $ + +PKG_OPTIONS_VAR= PKG_OPTIONS.hengband +PKG_SUPPORTED_OPTIONS= lang-ja +PKG_OPTIONS_NONEMPTY_SETS= ui +PKG_OPTIONS_SET.ui= ncurses curses termcap x11 +PKG_SUGGESTED_OPTIONS= ncurses x11 + +.include "../../mk/bsd.options.mk" + +### +### Language (English or Japanese) +### +.if empty(PKG_OPTIONS:Mlang-ja) +CONFIGURE_ARGS+= --disable-japanese +.endif + +### +### TTY support +### +.if !empty(PKG_OPTIONS:Mncurses) +.include "../../devel/ncurses/buildlink3.mk" +.endif + +.if !empty(PKG_OPTIONS:Mcurses) +.include "../../mk/curses.buildlink3.mk" +.endif + +.if !empty(PKG_OPTIONS:Mtermcap) +.include "../../mk/termcap.buildlink3.mk" +.endif + +### +### X11 support +### +.if !empty(PKG_OPTIONS:Mx11) +.include "../../x11/libX11/buildlink3.mk" +.include "../../x11/libXt/buildlink3.mk" +.endif diff --git a/games/hengband/patches/patch-lib_Makefile.am b/games/hengband/patches/patch-lib_Makefile.am new file mode 100644 index 00000000000..1684aa143c2 --- /dev/null +++ b/games/hengband/patches/patch-lib_Makefile.am @@ -0,0 +1,13 @@ +$NetBSD: patch-lib_Makefile.am,v 1.1 2020/01/24 13:33:33 pho Exp $ + +Don't create directories that need special handling. This is +pkgsrc-specific. + +--- lib/Makefile.am.orig 2020-01-23 15:28:26.780752530 +0000 ++++ lib/Makefile.am +@@ -2,4 +2,4 @@ + + AUTOMAKE_OPTIONS = foreign + +-SUBDIRS = apex bone data edit file help info pref save script user xtra ++SUBDIRS = edit file help info pref script xtra diff --git a/games/hengband/patches/patch-lib_xtra_graf_Makefile.am b/games/hengband/patches/patch-lib_xtra_graf_Makefile.am new file mode 100644 index 00000000000..688db2fcca6 --- /dev/null +++ b/games/hengband/patches/patch-lib_xtra_graf_Makefile.am @@ -0,0 +1,15 @@ +$NetBSD: patch-lib_xtra_graf_Makefile.am,v 1.1 2020/01/24 13:33:33 pho Exp $ + +Install 16x16 tile set too. + +--- lib/xtra/graf/Makefile.am.orig 2020-01-23 17:09:20.857756573 +0000 ++++ lib/xtra/graf/Makefile.am +@@ -1,7 +1,7 @@ + ## Makefile.am -- Process this file with automake to process Makefile.in + + angband_files = \ +- 8x8.bmp ++ 8x8.bmp 16x16.bmp mask.bmp + + EXTRA_DIST = \ + $(angband_files) diff --git a/games/hengband/patches/patch-src_Makefile.am b/games/hengband/patches/patch-src_Makefile.am new file mode 100644 index 00000000000..e735ca58ef9 --- /dev/null +++ b/games/hengband/patches/patch-src_Makefile.am @@ -0,0 +1,16 @@ +$NetBSD: patch-src_Makefile.am,v 1.1 2020/01/24 13:33:33 pho Exp $ + +Support user-destdir build + +--- src/Makefile.am.orig 2003-11-03 02:56:44.000000000 +0000 ++++ src/Makefile.am +@@ -29,9 +29,3 @@ EXTRA_hengband_SOURCES = \ + main-dos.c main-ibm.c \ + makefile.bcc makefile.std makefile.dos makefile.ibm \ + readdib.c wall.bmp +- +-install-exec-hook: +-if SET_GID +- chgrp "@GAMEGROUP@" "$(DESTDIR)$(bindir)/hengband" +- chmod g+s "$(DESTDIR)$(bindir)/hengband" +-endif diff --git a/games/hengband/patches/patch-src_h-type.h b/games/hengband/patches/patch-src_h-type.h new file mode 100644 index 00000000000..1648cd4b605 --- /dev/null +++ b/games/hengband/patches/patch-src_h-type.h @@ -0,0 +1,47 @@ +$NetBSD: patch-src_h-type.h,v 1.1 2020/01/24 13:33:33 pho Exp $ + +Use the correct int types. The original code doesn't work on 64-bits +machines. + +--- src/h-type.h.orig 2017-04-30 13:03:32.000000000 +0000 ++++ src/h-type.h +@@ -3,6 +3,8 @@ + #ifndef INCLUDED_H_TYPE_H + #define INCLUDED_H_TYPE_H + ++#include ++ + /* + * Basic "types". + * +@@ -91,7 +93,7 @@ typedef int errr; + + /* Note that unsigned values can cause math problems */ + /* An unsigned byte of memory */ +-typedef unsigned char byte; ++typedef uint8_t byte; + + /* Note that a bool is smaller than a full "int" */ + /* Simple True/False type */ +@@ -113,17 +115,12 @@ typedef unsigned long huge; + + + /* Signed/Unsigned 16 bit value */ +-typedef signed short s16b; +-typedef unsigned short u16b; ++typedef int16_t s16b; ++typedef uint16_t u16b; + + /* Signed/Unsigned 32 bit value */ +-#ifdef L64 /* 64 bit longs */ +-typedef signed int s32b; +-typedef unsigned int u32b; +-#else +-typedef signed long s32b; +-typedef unsigned long u32b; +-#endif ++typedef int32_t s32b; ++typedef uint32_t u32b; + + + diff --git a/games/hengband/patches/patch-src_init2.c b/games/hengband/patches/patch-src_init2.c new file mode 100644 index 00000000000..5978e275d93 --- /dev/null +++ b/games/hengband/patches/patch-src_init2.c @@ -0,0 +1,38 @@ +$NetBSD: patch-src_init2.c,v 1.1 2020/01/24 13:33:33 pho Exp $ + +Directories that contain things like score files have to be placed +under ${VARBASE}, because ${PREFIX}/libdata is meant to be +read-only. This is pkgsrc-specific. + +--- src/init2.c.orig 2020-01-23 15:49:35.185187295 +0000 ++++ src/init2.c +@@ -139,16 +139,13 @@ void init_file_paths(char *path) + /*** Build the sub-directory names ***/ + + /* Build a path name */ +- strcpy(tail, "apex"); +- ANGBAND_DIR_APEX = string_make(path); ++ ANGBAND_DIR_APEX = string_make("@HENGBAND_VARDIR@/apex"); + + /* Build a path name */ +- strcpy(tail, "bone"); +- ANGBAND_DIR_BONE = string_make(path); ++ ANGBAND_DIR_BONE = string_make("@HENGBAND_VARDIR@/bone"); + + /* Build a path name */ +- strcpy(tail, "data"); +- ANGBAND_DIR_DATA = string_make(path); ++ ANGBAND_DIR_DATA = string_make("@HENGBAND_VARDIR@/data"); + + /* Build a path name */ + strcpy(tail, "edit"); +@@ -175,8 +172,7 @@ void init_file_paths(char *path) + ANGBAND_DIR_PREF = string_make(path); + + /* Build a path name */ +- strcpy(tail, "save"); +- ANGBAND_DIR_SAVE = string_make(path); ++ ANGBAND_DIR_SAVE = string_make("@HENGBAND_VARDIR@/save"); + + #ifdef PRIVATE_USER_PATH + diff --git a/games/hengband/patches/patch-src_main-gcu.c b/games/hengband/patches/patch-src_main-gcu.c new file mode 100644 index 00000000000..c4f4d0e7972 --- /dev/null +++ b/games/hengband/patches/patch-src_main-gcu.c @@ -0,0 +1,25 @@ +$NetBSD: patch-src_main-gcu.c,v 1.1 2020/01/24 13:33:33 pho Exp $ + +A WINDOW object in ncurses is an opaque pointer and thus we cannot +access its members directly. + +--- src/main-gcu.c.orig 2017-04-27 09:55:49.000000000 +0000 ++++ src/main-gcu.c +@@ -600,7 +600,7 @@ static errr Term_xtra_gcu_alive(int v) + mvcur(curscr->cury, curscr->curx, LINES - 1, 0); + #else + /* this moves curses to bottom right corner */ +- mvcur(curscr->_cury, curscr->_curx, LINES - 1, 0); ++ mvcur(getcury(curscr), getcurx(curscr), LINES - 1, 0); + #endif + + /* Exit curses */ +@@ -736,7 +736,7 @@ static void Term_nuke_gcu(term *t) + mvcur(curscr->cury, curscr->curx, LINES - 1, 0); + #else + /* This moves curses to bottom right corner */ +- mvcur(curscr->_cury, curscr->_curx, LINES - 1, 0); ++ mvcur(getcury(curscr), getcurx(curscr), LINES - 1, 0); + #endif + + /* Flush the curses buffer */ -- cgit v1.2.3