A test build log follows
$ make
pipe set default [.src] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 LUA_VERSION=5.4.6 nethack \
&& set def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.src]'
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]hacklib.c /OBJECT=hacklib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /obj=[-.util]panic.obj [-.util]panic.c
if f$search("hacklib.olb").eqs."" then -
library/create hacklib.olb/object
library/insert/replace hacklib.olb hacklib.obj,[-.util]panic.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lapi.c /OBJECT=lapi.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lauxlib.c /OBJECT=lauxlib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lbaselib.c /OBJECT=lbaselib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lcode.c /OBJECT=lcode.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lcorolib.c /OBJECT=lcorolib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lctype.c /OBJECT=lctype.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]ldblib.c /OBJECT=ldblib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]ldebug.c /OBJECT=ldebug.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]ldo.c /OBJECT=ldo.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]ldump.c /OBJECT=ldump.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lfunc.c /OBJECT=lfunc.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lgc.c /OBJECT=lgc.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]linit.c /OBJECT=linit.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]liolib.c /OBJECT=liolib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]llex.c /OBJECT=llex.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lmathlib.c /OBJECT=lmathlib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lmem.c /OBJECT=lmem.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]loadlib.c /OBJECT=loadlib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lobject.c /OBJECT=lobject.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lopcodes.c /OBJECT=lopcodes.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]loslib.c /OBJECT=loslib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lparser.c /OBJECT=lparser.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lstate.c /OBJECT=lstate.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lstring.c /OBJECT=lstring.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lstrlib.c /OBJECT=lstrlib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]ltable.c /OBJECT=ltable.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]ltablib.c /OBJECT=ltablib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]ltm.c /OBJECT=ltm.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lundump.c /OBJECT=lundump.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lutf8lib.c /OBJECT=lutf8lib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lvm.c /OBJECT=lvm.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lzio.c /OBJECT=lzio.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) luaplaceholder.
c /OBJECT=luaplaceholder.obj
if f$search("[-.lib.lua]lua546.olb").eqs."" then library/create/obj [-.lib.lua]l
ua546.olb
library/insert/replace [-.lib.lua]lua546.olb lapi.obj, lauxlib.obj, lbaselib.obj
, lcode.obj, lcorolib.obj, lctype.obj, ldblib.obj, ldebug.obj, ldo.obj, ldump.ob
j, lfunc.obj, lgc.obj, linit.obj, liolib.obj, llex.obj, lmathlib.obj, lmem.obj,
loadlib.obj, lobject.obj, lopcodes.obj, loslib.obj, lparser.obj, lstate.obj, lst
ring.obj, lstrlib.obj, ltable.obj, ltablib.obj, ltm.obj, lundump.obj, lutf8lib.o
bj, lvm.obj, lzio.obj, luaplaceholder.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.sys.vms]vmsmain.c /OBJECT=vmsmain.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]allmain.c /OBJECT=allmain.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]alloc.c/OBJECT=alloc.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]apply.c/OBJECT=apply.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]artifact.c /OBJECT=artifact.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]attrib.c /OBJECT=attrib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]ball.c /OBJECT=ball.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]bones.c/OBJECT=bones.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]botl.c /OBJECT=botl.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]calendar.c /OBJECT=calendar.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]cmd.c /OBJECT=cmd.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]coloratt.c /OBJECT=coloratt.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]dbridge.c /OBJECT=dbridge.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]decl.c /OBJECT=decl.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]detect.c /OBJECT=detect.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]dig.c /OBJECT=dig.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]display.c /OBJECT=display.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]dlb.c /OBJECT=dlb.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]do.c /OBJECT=do.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]do_name.c /OBJECT=do_name.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]do_wear.c /OBJECT=do_wear.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]dog.c /OBJECT=dog.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]dogmove.c /OBJECT=dogmove.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]dokick.c /OBJECT=dokick.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]dothrow.c /OBJECT=dothrow.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]drawing.c /OBJECT=drawing.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]dungeon.c /OBJECT=dungeon.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]eat.c /OBJECT=eat.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]end.c /OBJECT=end.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]engrave.c /OBJECT=engrave.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]exper.c/OBJECT=exper.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]explode.c /OBJECT=explode.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]extralev.c /OBJECT=extralev.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]files.c/OBJECT=files.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]fountain.c /OBJECT=fountain.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]getpos.c /OBJECT=getpos.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]hack.c /OBJECT=hack.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]insight.c /OBJECT=insight.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]invent.c /OBJECT=invent.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]isaac64.c /OBJECT=isaac64.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]light.c/OBJECT=light.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]lock.c /OBJECT=lock.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]mail.c /OBJECT=mail.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]makemon.c /OBJECT=makemon.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]mcastu.c /OBJECT=mcastu.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]mdlib.c /OBJECT=mdlib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]mhitm.c /OBJECT=mhitm.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]mhitu.c /OBJECT=mhitu.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]minion.c /OBJECT=minion.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]mklev.c /OBJECT=mklev.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]mkmap.c /OBJECT=mkmap.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]mkmaze.c /OBJECT=mkmaze.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]mkobj.c /OBJECT=mkobj.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]mkroom.c /OBJECT=mkroom.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]mon.c /OBJECT=mon.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]mondata.c /OBJECT=mondata.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]monmove.c /OBJECT=monmove.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]monst.c /OBJECT=monst.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]mplayer.c /OBJECT=mplayer.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]mthrowu.c /OBJECT=mthrowu.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]muse.c /OBJECT=muse.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]music.c /OBJECT=music.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]nhlua.c /OBJECT=nhlua.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]nhlsel.c /OBJECT=nhlsel.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]nhlobj.c /OBJECT=nhlobj.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]objnam.c /OBJECT=objnam.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]o_init.c /OBJECT=o_init.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]objects.c /OBJECT=objects.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]options.c /OBJECT=options.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]pager.c /OBJECT=pager.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]pickup.c /OBJECT=pickup.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]pline.c /OBJECT=pline.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]polyself.c /OBJECT=polyself.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]potion.c /OBJECT=potion.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]pray.c /OBJECT=pray.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]priest.c /OBJECT=priest.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]quest.c /OBJECT=quest.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]questpgr.c /OBJECT=questpgr.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]read.c /OBJECT=read.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]rect.c /OBJECT=rect.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]region.c /OBJECT=region.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]report.c /OBJECT=report.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]restore.c /OBJECT=restore.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]rip.c /OBJECT=rip.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]rnd.c /OBJECT=rnd.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]role.c /OBJECT=role.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]rumors.c /OBJECT=rumors.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]save.c /OBJECT=save.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]selvar.c /OBJECT=selvar.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]sfstruct.c /OBJECT=sfstruct.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]shk.c /OBJECT=shk.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]shknam.c /OBJECT=shknam.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]sit.c /OBJECT=sit.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]sounds.c /OBJECT=sounds.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]sp_lev.c /OBJECT=sp_lev.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]spell.c /OBJECT=spell.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]stairs.c /OBJECT=stairs.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]steal.c /OBJECT=steal.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]steed.c /OBJECT=steed.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]strutil.c /OBJECT=strutil.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]symbols.c /OBJECT=symbols.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]sys.c /OBJECT=sys.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]teleport.c /OBJECT=teleport.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]timeout.c /OBJECT=timeout.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]topten.c /OBJECT=topten.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]track.c /OBJECT=track.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]trap.c /OBJECT=trap.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]u_init.c /OBJECT=u_init.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]utf8map.c /OBJECT=utf8map.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]uhitm.c/OBJECT=uhitm.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]vault.c/OBJECT=vault.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]version.c /OBJECT=version.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]vision.c /OBJECT=vision.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]weapon.c /OBJECT=weapon.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]were.c /OBJECT=were.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]wield.c /OBJECT=wield.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]windows.c /OBJECT=windows.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]wizard.c /OBJECT=wizard.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]wizcmds.c /OBJECT=wizcmds.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]worm.c /OBJECT=worm.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]worn.c /OBJECT=worn.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]write.c/OBJECT=write.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]zap.c /OBJECT=zap.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.sys.vms]vmsfiles.c /OBJECT=vmsfiles.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.sys.vms]vmsmail.c /OBJECT=vmsmail.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.sys.vms]vmsmisc.c /OBJECT=vmsmisc.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.sys.vms]vmstty.c /OBJECT=vmstty.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.sys.vms]vmsunix.c /OBJECT=vmsunix.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /OBJECT=getline.obj [-.win.tty]getline.c
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /OBJECT=termcap.obj [-.win.tty]termcap.c
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /OBJECT=topl.obj [-.win.tty]topl.c
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /OBJECT=wintty.obj [-.win.tty]wintty.c
cxx /INCLUDE_DIR=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /OBJECT=cppregex.obj [-.sys.share]cppregex.cpp
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) [-.src]tclib.c /OBJECT=tclib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) \
/OBJECT=date.obj [-.src]date.c
Linking nethack.
link vmsmain.obj, \
allmain.obj, alloc.obj, apply.obj, artifact.obj, attrib.obj, ball.obj, b
ones.obj, botl.obj, calendar.obj, cmd.obj, coloratt.obj, dbridge.obj, decl.obj,
detect.obj, dig.obj, display.obj, dlb.obj, do.obj, do_name.obj, do_wear.obj, dog
.obj, dogmove.obj, dokick.obj, dothrow.obj, drawing.obj, dungeon.obj, eat.obj, e
nd.obj, engrave.obj, exper.obj, explode.obj, extralev.obj, files.obj, fountain.o
bj, getpos.obj, hack.obj, hacklib.obj, insight.obj, invent.obj, isaac64.obj, lig
ht.obj, lock.obj, mail.obj, makemon.obj, mcastu.obj, mdlib.obj, mhitm.obj, mhitu
.obj, minion.obj, mklev.obj, mkmap.obj, mkmaze.obj, mkobj.obj, mkroom.obj, mon.o
bj, mondata.obj, monmove.obj, monst.obj, mplayer.obj, mthrowu.obj, muse.obj, mus
ic.obj, nhlua.obj, nhlsel.obj, nhlobj.obj, objnam.obj, o_init.obj, objects.obj,
options.obj, pager.obj, pickup.obj, pline.obj, polyself.obj, potion.obj, pray.ob
j, priest.obj, quest.obj, questpgr.obj, read.obj, rect.obj, region.obj, report.o
bj, restore.obj, rip.obj, rnd.obj, role.obj, rumors.obj, save.obj, selvar.obj, s
fstruct.obj, shk.obj, shknam.obj, sit.obj, sounds.obj, sp_lev.obj, spell.obj, st
airs.obj, steal.obj, steed.obj, strutil.obj, symbols.obj, sys.obj, teleport.obj,
timeout.obj, topten.obj, track.obj, trap.obj, u_init.obj, utf8map.obj, uhitm.ob
j, vault.obj, version.obj, vision.obj, weapon.obj, were.obj, wield.obj, windows.
obj, wizard.obj, wizcmds.obj, worm.obj, worn.obj, write.obj, zap.obj, vmsfiles.o
bj, vmsmail.obj, vmsmisc.obj, vmstty.obj, vmsunix.obj, getline.obj, termcap.obj,
topl.obj, wintty.obj, cppregex.obj, tclib.obj, date.obj \
/EXECUTABLE=nethack.exe\
+[-.lib.lua]lua546.olb/library
nethack is up to date.
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.src]'
pipe set def [.util] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 recover && s
et def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.util]'
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) recover.c /OB
J=recover.obj
link /EXE=recover.exe recover.obj
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.util]'
pipe set def [.doc] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 Guidebook &&
set def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.doc]'
pipe set def [-.util] && make makedefs && set def [-.doc]
make[2]: Entering directory 'DKA100:[DEVEL.NetHack370.util]'
LIBRARY/CREATE hacklib.olb/object
LIBRARY/INSERT hacklib.olb [-.src]hacklib.obj,[-.util]panic.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) makedefs.c /OB
J=makedefs.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /obj=placehol
der.obj placeholder.c
link /EXE=makedefs.exe \
[]makedefs.obj, [-.src]monst.obj, [-.src]objects.obj, [-.src]date.obj, [
-.src]alloc.obj, []panic.obj, placeholder.obj, \
hacklib.olb/lib
make[2]: Leaving directory 'DKA100:[DEVEL.NetHack370.util]'
disabled Guidebook on vms
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.do
c]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 bogusmon &&
set def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
mcr [-.util]makedefs.exe -s
about to Sprintf epitaph sizeof filename 600.filename = "../dat/epitaph.txt".RDT
MODE = "r".just did Sprintf filename="../dat/epitaph".about to Sprintf engrave s
izeof filename 600.filename = "../dat/engrave.txt".RDTMODE = "r".just did Sprint
f filename="../dat/engrave".about to Sprintf bogusmon sizeof filename 600.filena
me = "../dat/bogusmon.txt".RDTMODE = "r".just did Sprintf filename="../dat/bogus
mon".
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 data && set d
ef [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
mcr [-.util]makedefs.exe -d
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 engrave && se
t def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
make[1]: 'engrave' is up to date.
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 epitaph && se
t def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
make[1]: 'epitaph' is up to date.
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 oracles && se
t def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
mcr [-.util]makedefs.exe -h
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 options && se
t def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
mcr [-.util]makedefs.exe -v
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 rumors && set
def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
mcr [-.util]makedefs.exe -r
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 spec_levs &&
set def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
make[1]: 'spec_levs' is up to date.
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 quest_levs &&
set def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
make[1]: 'quest_levs' is up to date.
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
echo disabled check-dlb
disabled check-dlb
pipe true
Done.
439 lines
14 KiB
Plaintext
439 lines
14 KiB
Plaintext
# NetHack Top-level Makefile.
|
|
# NetHack 3.7 Makefile.vms $NHDT-Date: 1642630921 2022/01/19 22:22:01 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.72 $
|
|
# Copyright (c) 2015 by Kenneth Lorber, Kensington, Maryland
|
|
# NetHack may be freely redistributed. See license for details.
|
|
|
|
# Root of source tree: (Note: dot is after setup.sh has been used
|
|
# to create the active Makefiles from sys/unix/Makefile.*.
|
|
# It isn't sys/unix/ where you might happen to be reading this.)
|
|
NHSROOT=[]
|
|
|
|
# Newer makes predefine $(MAKE) to 'make' and do smarter processing
|
|
# of recursive make calls if $(MAKE) is used.
|
|
# These makes allow $(MAKE) to be overridden by the environment if
|
|
# someone wants to (or has to) use something other than the standard
|
|
# make, so we do not want to unconditionally set $(MAKE) here.
|
|
#
|
|
# Unfortunately, some older makes do not predefine $(MAKE); if you
|
|
# have one of these, uncomment the following line.
|
|
# (You will know that you have one if you get complaints about unable
|
|
# to execute things like 'data' and 'rumors'.)
|
|
# MAKE = make
|
|
|
|
|
|
# NetHack 3.7 Makefile.vms $NHDT-Date: 1654287121 2022/06/03 20:12:01 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.145 $
|
|
# Copyright (c) 2023 by Michael Allison
|
|
# NetHack may be freely redistributed. See license for details.
|
|
#
|
|
# OpenVMS GNU Makefile for OpenVMS 9.x and VSI C
|
|
# with GNU Make V4.1 (or greater).
|
|
#
|
|
# Tested on x86_64 version of OpenVMS V9.2-1.
|
|
#
|
|
|
|
# Root of source tree:
|
|
NHSROOT=
|
|
|
|
# relative directories from top
|
|
DOC=[.doc]
|
|
DAT=[.dat]
|
|
INCL=[.include]
|
|
SRC=[.src]
|
|
UTIL=[.util]
|
|
LIB=[.lib]
|
|
SYSVMS=[.sys.vms]
|
|
SYSSHR=[.sys.share]
|
|
SYSUNIX=[.sys.unix]
|
|
WINTTY=[.win.tty]
|
|
WINSHR=[.win.share]
|
|
WINTTY=[.win.tty]
|
|
WINCURS=[.win.curses]
|
|
WINX11=[.win.X11]
|
|
WINQT=[.win.Qt]
|
|
WINSHIM=[.win.shim]
|
|
WINCHAIN=[.win.chain]
|
|
|
|
# Lua macros
|
|
LUAVER=546
|
|
LUADOTVER=5.4.6
|
|
LUAUNDERVER=5_4_6
|
|
LUAINC=[.lib.lua.lua$(LUAVER).src]
|
|
LUALIB=[.lib.lua]lua$(LUAVER).olb
|
|
LUASRCDIR =[.lib.lua.lua$(LUAVER).src]
|
|
LUASRCINCDIR=$(LUASRCDIR)
|
|
LUATESTTARGET = $(LUAINC)lua.h
|
|
LUABASELIB = liblua-$(LUADOTVER).olb
|
|
|
|
# make NetHack (as opposite to variants or such)
|
|
#PREFIX = /usr
|
|
GAME = nethack
|
|
# GAME = nethack.exe
|
|
# GAME = nethack.prg
|
|
#GAMEUID = games
|
|
#GAMEGRP = bin
|
|
|
|
# Permissions - some places use setgid instead of setuid, for instance.
|
|
# See also the option "SECURE" in include/config.h.
|
|
#GAMEPERM = 04755
|
|
FILEPERM = 0644
|
|
# VARFILEPERM = 0644
|
|
EXEPERM = 0755
|
|
DIRPERM = 0755
|
|
# VARDIRPERM = 0755
|
|
|
|
# VARDIR may also appear in unixconf.h as "VAR_PLAYGROUND" else HACKDIR
|
|
#
|
|
# Note well! 'make install' believes in creating a nice tidy HACKDIR
|
|
# for installation, free of debris from previous NetHack versions --
|
|
# therefore there should not be anything in HACKDIR that you want to
|
|
# keep (if there is, you'll have to do the installation by hand or
|
|
# modify the install commands below).
|
|
#HACKDIR = $(PREFIX)/games/lib/$(GAME)dir
|
|
#VARDIR = $(HACKDIR)
|
|
# Where nethack.sh is installed (as 'nethack').
|
|
# If this is not defined, the shell wrapper script is not used.
|
|
#SHELLDIR = $(PREFIX)/games
|
|
|
|
# Extra data files depending upon the interface(s) built into nethack.
|
|
# per discussion in Install.X11 and Install.Qt
|
|
# Qt prefers nhtiles.bmp but can use x11tiles, and it ignores NetHack.ad.
|
|
# X11 uses those last two.
|
|
# Both can display a convential text map instead of tiles.
|
|
# tty and/or curses (no extra data files outside of the dlb container):
|
|
#VARDATND =
|
|
# All X11 and/or Qt variations may also include tty or curses or both):
|
|
# X11 without Qt:
|
|
# VARDATND = x11tiles NetHack.ad pet_mark.xbm pilemark.xbm
|
|
# X11 with GRAPHIC_TOMBSTONE (requires 'xpm'):
|
|
# VARDATND = x11tiles NetHack.ad pet_mark.xbm pilemark.xbm rip.xpm
|
|
# both X11 and Qt:
|
|
# VARDATND = x11tiles nhtiles.bmp NetHack.ad pet_mark.xbm pilemark.xbm rip.xpm
|
|
# Qt without X11; assumes GRAPHIC_TOMBSTONE:
|
|
# VARDATND = nhtiles.bmp pet_mark.xbm pilemark.xbm rip.xpm
|
|
|
|
VARDATD = bogusmon data engrave epitaph oracles options quest.lua rumors
|
|
VARDAT = $(VARDATD) $(VARDATND)
|
|
|
|
# Some versions of make use the SHELL environment variable as the
|
|
# shell for running commands. We need this to be a Bourne shell.
|
|
# SHELL = /bin/sh
|
|
# for Atari (obsolete)
|
|
# SHELL=E:/GEMINI2/MUPFEL.TTP
|
|
|
|
# Commands for setting the owner and group on files during installation.
|
|
# Some systems fail with one or the other when installing over NFS or for
|
|
# other permission-related reasons. If that happens, you may want to set the
|
|
# command to "true", which is a no-op. Note that disabling chown or chgrp
|
|
# will only work if setuid (or setgid) behavior is not desired or required.
|
|
#CHOWN = chown
|
|
#CHGRP = chgrp
|
|
|
|
#
|
|
# end of configuration
|
|
#
|
|
|
|
DATHELP = help hh cmdhelp keyhelp history opthelp optmenu usagehlp wizhelp
|
|
|
|
SPEC_LEVS = asmodeus.lua baalz.lua bigrm-*.lua castle.lua fakewiz?.lua \
|
|
juiblex.lua knox.lua medusa-?.lua minend-?.lua minefill.lua \
|
|
minetn-?.lua oracle.lua orcus.lua sanctum.lua soko?-?.lua \
|
|
tower?.lua valley.lua wizard?.lua nhcore.lua nhlib.lua themerms.lua \
|
|
astral.lua air.lua earth.lua fire.lua water.lua hellfill.lua tut-?.lua
|
|
QUEST_LEVS = ???-goal.lua ???-fil?.lua ???-loca.lua ???-strt.lua
|
|
|
|
DATNODLB = $(VARDATND) license symbols
|
|
DATDLB = $(DATHELP) dungeon.lua tribute $(SPEC_LEVS) $(QUEST_LEVS) $(VARDATD)
|
|
DODAT = $(DATNODLB) $(DATDLB)
|
|
|
|
ALLDEP = $(GAME) recover Guidebook $(VARDAT) spec_levs check-dlb
|
|
|
|
# first target is also the default target for 'make' without any arguments
|
|
all: $(ALLDEP)
|
|
pipe true
|
|
@echo "Done."
|
|
|
|
$(GAME): lua_support
|
|
pipe set default $(SRC) && $(MAKE) LUA_VERSION=$(LUADOTVER) $(GAME) \
|
|
&& set def [-]
|
|
|
|
lua_support: [.include]nhlua.h
|
|
@true
|
|
|
|
# Note: many of the dependencies below are here to allow parallel make
|
|
# to generate valid output
|
|
|
|
Guidebook:
|
|
pipe set def $(DOC) && $(MAKE) Guidebook && set def [-]
|
|
|
|
Guidebook.txt:
|
|
pipe set def $(DOC) && $(MAKE) Guidebook.txt && set def [-]
|
|
|
|
Guidebook.pdf:
|
|
pipe set def $(DOC) && $(MAKE) Guidebook.pdf && set def [-]
|
|
|
|
manpages:
|
|
pipe set def $(DOC) && $(MAKE) manpages && set def [-]
|
|
|
|
data: $(GAME)
|
|
pipe set def $(DAT) && $(MAKE) data && set def [-]
|
|
|
|
engrave: $(GAME)
|
|
pipe set def $(DAT) && $(MAKE) engrave && set def [-]
|
|
|
|
bogusmon: $(GAME)
|
|
pipe set def $(DAT) && $(MAKE) bogusmon && set def [-]
|
|
|
|
epitaph: $(GAME)
|
|
pipe set def $(DAT) && $(MAKE) epitaph && set def [-]
|
|
|
|
rumors: $(GAME)
|
|
pipe set def $(DAT) && $(MAKE) rumors && set def [-]
|
|
|
|
oracles: $(GAME)
|
|
pipe set def $(DAT) && $(MAKE) oracles && set def [-]
|
|
|
|
# Note: options should have already been made with make, but...
|
|
options: $(GAME)
|
|
pipe set def $(DAT) && $(MAKE) options && set def [-]
|
|
|
|
quest.lua: $(GAME)
|
|
|
|
spec_levs:
|
|
pipe set def $(DAT) && $(MAKE) spec_levs && set def [-]
|
|
pipe set def $(DAT) && $(MAKE) quest_levs && set def [-]
|
|
|
|
nhtiles.bmp: $(GAME)
|
|
pipe set def $(UTIL) && $(MAKE) tile2bmp && set def [-]
|
|
pipe set def $(DAT) && $(MAKE) nhtiles.bmp && set def [-]
|
|
|
|
x11tiles: $(GAME)
|
|
pipe set def $(UTIL) && $(MAKE) tile2x11 && set def [-]
|
|
pipe set def $(DAT) && $(MAKE) x11tiles && set def [-]
|
|
|
|
NetHack.ad: $(GAME)
|
|
pipe set def $(DAT) && $(MAKE) NetHack.ad && set def [-]
|
|
|
|
pet_mark.xbm:
|
|
pipe set def $(DAT) && $(MAKE) pet_mark.xbm && set def [-]
|
|
|
|
pilemark.xbm:
|
|
pipe set def $(DAT) && $(MAKE) pilemark.xbm && set def [-]
|
|
|
|
rip.xpm:
|
|
pipe set def $(DAT) && $(MAKE) rip.xpm && set def [-]
|
|
|
|
mapbg.xpm:
|
|
pipe set def $(DAT) && $(MAKE) mapbg.xpm && set def [-]
|
|
|
|
nhsplash.xpm:
|
|
pipe set def $(DAT) && $(MAKE) nhsplash.xpm && set def [-]
|
|
|
|
nh16.img: $(GAME)
|
|
pipe set def $(UTIL) && $(MAKE) tile2img.ttp && set def [-]
|
|
pipe set def $(DAT) && $(MAKE) nh16.img && set def [-]
|
|
|
|
rip.img:
|
|
pip set def $(UTIL) && $(MAKE) xpm2img.ttp && set def [-]
|
|
pipe set def $(DAT) && $(MAKE) rip.img && set def [-]
|
|
GEM_RSC.RSC:
|
|
pipe set def $(DAT) && $(MAKE) GEM_RSC.RSC && set def [-]
|
|
|
|
title.img:
|
|
pipe set def $(DAT) && $(MAKE) title.img && set def [-]
|
|
|
|
check-dlb: options
|
|
echo disabled $@
|
|
# @if egrep -s librarian dat/options ; then $(MAKE) dlb ; else true ; fi
|
|
|
|
dlb:
|
|
pipe set def $(UTIL) && $(MAKE) dlb && set def [-]
|
|
pipe set def $(DAT) && LC_ALL=C && mcr [-.util]dlb cf nhdat $(DATDLB) \
|
|
&& set def [-]
|
|
|
|
wasm:
|
|
pipe set def $(SRC) && \
|
|
$(MAKE) CROSS_TO_WASM=1 [-.targets.wasm]nethack.js && \
|
|
set def [-]
|
|
|
|
package: $(GAME) recover $(VARDAT) spec_levs
|
|
pipe set def $(SRC) && $(MAKE) $(PACKAGE) && set def [-]
|
|
|
|
# recover can be used when INSURANCE is defined in include/config.h
|
|
# and the checkpoint option is true
|
|
recover: $(GAME)
|
|
pipe set def $(UTIL) && $(MAKE) recover && set def [-]
|
|
|
|
dofiles:
|
|
echo disabled $@
|
|
# target=`sed -n \
|
|
# -e '/librarian/{' \
|
|
# -e 's/.*/dlb/p' \
|
|
# -e 'q' \
|
|
# -e '}' \
|
|
# -e '$$s/.*/nodlb/p' < dat/options` ; \
|
|
# $(MAKE) dofiles-$${target-nodlb}
|
|
# cp src/$(GAME) $(INSTDIR)
|
|
# cp util/recover $(INSTDIR)
|
|
# -if test -n '$(SHELLDIR)'; then rm -f $(SHELLDIR)/$(GAME); fi
|
|
# if test -n '$(SHELLDIR)'; then \
|
|
# sed -e 's;/usr/games/lib/nethackdir;$(HACKDIR);' \
|
|
# -e 's;HACKDIR/nethack;HACKDIR/$(GAME);' \
|
|
# < sys/unix/nethack.sh \
|
|
# > $(SHELLDIR)/$(GAME) ; fi
|
|
# set up their permissions
|
|
# -( cd $(INSTDIR) ; $(CHOWN) $(GAMEUID) $(GAME) recover ; \
|
|
# $(CHGRP) $(GAMEGRP) $(GAME) recover )
|
|
# chmod $(GAMEPERM) $(INSTDIR)/$(GAME)
|
|
# chmod $(EXEPERM) $(INSTDIR)/recover
|
|
# -if test -n '$(SHELLDIR)'; then \
|
|
# $(CHOWN) $(GAMEUID) $(SHELLDIR)/$(GAME); fi
|
|
# if test -n '$(SHELLDIR)'; then \
|
|
# $(CHGRP) $(GAMEGRP) $(SHELLDIR)/$(GAME); \
|
|
# chmod $(EXEPERM) $(SHELLDIR)/$(GAME); fi
|
|
|
|
dofiles-dlb: check-dlb
|
|
pipe set def $(DAT) && copy nhdat $(DATNODLB) $(INSTDIR) && \
|
|
set def [-]
|
|
# set up their permissions
|
|
# -( cd $(INSTDIR) ; $(CHOWN) $(GAMEUID) nhdat $(DATNODLB) ; \
|
|
# $(CHGRP) $(GAMEGRP) nhdat $(DATNODLB) ; \
|
|
# chmod $(FILEPERM) nhdat $(DATNODLB) )
|
|
|
|
dofiles-nodlb:
|
|
# copy over the game files
|
|
pipe set def $(DAT) && copy $(DAT) $(INSTDIR) && \
|
|
set def [-]
|
|
# set up their permissions
|
|
# -( cd $(INSTDIR) ; $(CHOWN) $(GAMEUID) $(DAT) ; \
|
|
# $(CHGRP) $(GAMEGRP) $(DAT) ; \
|
|
# chmod $(FILEPERM) $(DAT) )
|
|
#
|
|
# This is not part of the dependency build hierarchy.
|
|
# It requires an explicit "make fetch-Lua".
|
|
|
|
$(INCL)nhlua.h:
|
|
echo "/* nhlua.h - generated by top-level Makefile.vms */" > $@
|
|
@echo \#"include ""lua.h""" >> $@
|
|
@echo "LUA_API int (lua_error) (lua_State *L) NORETURN;" >>$@
|
|
@echo \#"include ""lualib.h""" >> $@
|
|
@echo \#"include ""lauxlib.h""" >> $@
|
|
@echo "/*nhlua.h*/" >> $@
|
|
|
|
[.lib]lua.dir:
|
|
create/directory [.lib.lua]
|
|
|
|
[]lib.dir:
|
|
create/directory [.lib]
|
|
|
|
[.lib.lua]lua$(LUAVER).dir:
|
|
@echo You need to make fetch-lua
|
|
false
|
|
|
|
fetch-lua: []lib.dir [.lib]lua.dir
|
|
if f$$search("[.lib.lua]lua$(LUAVER).tgz").eqs."" then \
|
|
curl http://www.lua.org/ftp/lua-$(LUADOTVER).tar.gz \
|
|
--output [.lib.lua]lua$(LUAVER).tgz
|
|
if f$$search("[.lib.lua]lua$(LUAVER).tgz").nes."" then \
|
|
gzip --force -d [.lib.lua]lua$(LUAVER).tgz
|
|
if f$$search("[.lib.lua]lua$(LUAVER).tar").nes."" then \
|
|
pipe set def [.lib.lua] && \
|
|
tar -xf lua$(LUAVER).tar && \
|
|
set def [--]
|
|
if (f$$search("[.lib.lua]lua-$(LUAUNDERVER).DIR;1").nes."" \
|
|
.AND. f$$search("[.lib.lua]lua$(LUAVER).dir;1").eqs."") then \
|
|
rename [.lib.lua]lua-$(LUAUNDERVER).DIR;1 \
|
|
[.lib.lua]lua$(LUAVER).dir;1
|
|
# remove [.include]nhlua.h in case it was created for some other Lua version
|
|
@pipe if f$$search("[.include]nhlua.h").nes."" then \
|
|
delete [.include]nhlua.h;* && echo 'delete [.include]nhlua.h;*'
|
|
|
|
# 'make update' can be used to install a revised version after making
|
|
# customizations or such. Unlike 'make install', it doesn't delete everything
|
|
# from the target directory to have a clean start.
|
|
update: $(GAME) recover $(VARDAT) spec_levs
|
|
echo disabled $@
|
|
# (don't yank the old version out from under people who're playing it)
|
|
# -mv $(INSTDIR)/$(GAME) $(INSTDIR)/$(GAME).old
|
|
# -mv $(INSTDIR)/nhdat $(INSTDIR)/nhdat.old
|
|
# set up new versions of the game files
|
|
# ( $(MAKE) dofiles )
|
|
# should already be present, but make sure
|
|
# touch $(VARDIR)/perm $(VARDIR)/record
|
|
# and a reminder
|
|
# @echo You may also want to install the man pages via the doc Makefile.
|
|
|
|
rootcheck:
|
|
@true; $(ROOTCHECK)
|
|
|
|
install: rootcheck $(GAME) recover $(VARDAT) spec_levs
|
|
true; $(PREINSTALL)
|
|
echo disabled $@
|
|
# set up the directories
|
|
# not all mkdirs have -p; those that don't will create a -p directory
|
|
# -if test -n '$(SHELLDIR)'; then \
|
|
# mkdir -p $(SHELLDIR); fi
|
|
# rm -rf $(INSTDIR) $(VARDIR)
|
|
# -mkdir -p $(INSTDIR) $(VARDIR) $(VARDIR)/save
|
|
# if test -d ./-p; then rmdir ./-p; fi
|
|
# -$(CHOWN) $(GAMEUID) $(INSTDIR) $(VARDIR) $(VARDIR)/save
|
|
# $(CHGRP) $(GAMEGRP) $(INSTDIR) $(VARDIR) $(VARDIR)/save
|
|
# order counts here:
|
|
# chmod $(DIRPERM) $(INSTDIR)
|
|
# chmod $(VARDIRPERM) $(VARDIR) $(VARDIR)/save
|
|
# set up the game files
|
|
# ( $(MAKE) dofiles )
|
|
# set up some additional files
|
|
# touch $(VARDIR)/perm $(VARDIR)/record $(VARDIR)/logfile $(VARDIR)/xlogfile \
|
|
# $(VARDIR)/livelog
|
|
# -( cd $(VARDIR) ; $(CHOWN) $(GAMEUID) perm record logfile xlogfile livelog ; \
|
|
# $(CHGRP) $(GAMEGRP) perm record logfile xlogfile livelog ; \
|
|
# chmod $(VARFILEPERM) perm record logfile xlogfile livelog )
|
|
# true; $(POSTINSTALL)
|
|
# and a reminder
|
|
# @echo You may also want to reinstall the man pages via the doc Makefile.
|
|
|
|
|
|
# 'make clean' removes all the .o files, but leaves around all the executables
|
|
# and compiled data files
|
|
#clean: clean-lib clean-keep-lib
|
|
# @true
|
|
|
|
clean-lib:
|
|
# -pipe set def $(LUASRCDIR) && $(MAKE) clean && set def [--.util]
|
|
|
|
clean-keep-lib:
|
|
# ( cd src ; $(MAKE) clean )
|
|
# ( cd util ; $(MAKE) clean )
|
|
# pipe set def $(DAT) $(MAKE) clean && set def [-.util]
|
|
# ( cd doc ; $(MAKE) clean )
|
|
|
|
spotless-lib:: clean-lib
|
|
-( cd lib/lua && rm $(LUABASELIB) )
|
|
|
|
spotless-keep-lib: clean-keep-lib
|
|
# ( cd src ; $(MAKE) spotless )
|
|
# ( cd util ; $(MAKE) spotless )
|
|
# pipe set def $(DAT) && $(MAKE) spotless && set def [-]
|
|
# ( cd doc ; $(MAKE) spotless )
|
|
spotless-clean-submodule:
|
|
@( if test -f submodules/lua/lua.h ; then \
|
|
git submodule deinit submodules/lua ; fi )
|
|
|
|
clean:
|
|
pipe set def $(DAT) && $(MAKE) clean && set def [-]
|
|
pipe set def $(SRC) && $(MAKE) clean && set def [-]
|
|
pipe set def $(UTIL) && $(MAKE) clean && set def [-]
|
|
pipe set def $(DOC) && $(MAKE) clean && set def [-]
|
|
|
|
# -delete/log $(CLEANFILES)
|
|
|
|
spotless: clean
|
|
pipe set def $(DAT) && $(MAKE) spotless && set def [-]
|
|
pipe set def $(SRC) && $(MAKE) spotless && set def [-]
|
|
pipe set def $(UTIL) && $(MAKE) spotless && set def [-]
|
|
pipe set def $(DOC) && $(MAKE) spotless && set def [-]
|
|
-delete/log $(SPOTLESSFILES) $(INCL)nhlua.h;*
|
|
|
|
# pipe set def $(DAT) && $(MAKE) spotless && set def [-]
|
|
# -$(RM) $(GAMEBIN);*
|