Files
nethack/sys/unix/nethack.sh
keni 59e64a1d40 First pass at a hints-based build system to augment (not replace) the existing
build system.

Anyone who wants to do a build from sys/unix and doesn't want to figure this
out just needs to do:
	sh setup.sh hints/unix
instead of:
	sh setup.sh
and then continue on as usual.

New files:
sys/unix/NewInstall.unx - the new directions
sys/unix/hints/* - the hints files.  There will be more later.
sys/unix/mkmkfile.sh - helper for setup.sh

Summary of changes:
see NewInstall.unx for info on the new build system
introduction of various preprocessor symbols to turn options off that
 are defaulted on historically
comment out nethackrc (and similar) entries that still use the old symbol
 syntax.
commenting out of Makefile.* lines that now come from hints/unix
GAMEDIR is replaced with HACKDIR so the Makefiles and the C source agree.
  Note that I have NOT changed the docs and/or Makefiles for be, msdos, os2,
  vms, or winnt.  If port maintainers don't then I will, but I can't test
  those ports.
nethack.sh now handles the font path automatically
2007-12-13 20:17:11 +00:00

75 lines
1.5 KiB
Bash

#!/bin/sh
# SCCS Id: @(#)nethack.sh 3.5 2007/12/12
HACKDIR=/usr/games/lib/nethackdir
export HACKDIR
HACK=$HACKDIR/nethack
MAXNROFPLAYERS=4
# Since Nethack.ad is installed in HACKDIR, add it to XUSERFILESEARCHPATH
case "x$XUSERFILESEARCHPATH" in
x) XUSERFILESEARCHPATH="$HACKDIR/%N.ad"
;;
*) XUSERFILESEARCHPATH="$XUSERFILESEARCHPATH:$HACKDIR/%N.ad"
;;
esac
export XUSERFILESEARCHPATH
# Get font dir added, but only once (and only if there's an xset to be found).
xset p >/dev/null 2>&1 && (
xset fp- $HACKDIR >/dev/null 2>&1;
xset fp+ $HACKDIR
)
# see if we can find the full path name of PAGER, so help files work properly
# assume that if someone sets up a special variable (HACKPAGER) for NetHack,
# it will already be in a form acceptable to NetHack
# ideas from brian@radio.astro.utoronto.ca
if test \( "xxx$PAGER" != xxx \) -a \( "xxx$HACKPAGER" = xxx \)
then
HACKPAGER=$PAGER
# use only the first word of the pager variable
# this prevents problems when looking for file names with trailing
# options, but also makes the options unavailable for later use from
# NetHack
for i in $HACKPAGER
do
HACKPAGER=$i
break
done
if test ! -f $HACKPAGER
then
IFS=:
for i in $PATH
do
if test -f $i/$HACKPAGER
then
HACKPAGER=$i/$HACKPAGER
export HACKPAGER
break
fi
done
IFS=' '
fi
if test ! -f $HACKPAGER
then
echo Cannot find $PAGER -- unsetting PAGER.
unset HACKPAGER
unset PAGER
fi
fi
cd $HACKDIR
case $1 in
-s*)
exec $HACK "$@"
;;
*)
exec $HACK "$@" $MAXNROFPLAYERS
;;
esac