home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 1: Amiga
/
FrozenFish-Apr94.iso
/
bbs
/
alib
/
d1xx
/
d189
/
nethack.lha
/
NetHack
/
eenaux.zoo
/
aux
/
Makefile.xenix
< prev
next >
Wrap
Makefile
|
1988-07-01
|
6KB
|
241 lines
# Hack or Quest Makefile.
# SCCS Id: @(#)Makefile.xenix 2.1 87/10/08
# if you are cross-compiling (eg. from Xenix into a Dos enviornment)
# you will have to redefine these filenames.
MAIN = unixmain.c
TTY = unixtty.c
UNIX = unixunix.c
# on some systems the termcap library is in -ltermcap
TERMLIB = -ltermlib
CRT0 =
LIBS = ${TERMLIB}
# flags may have to be changed as required
CFLAGS = -LARGE -Ml
LFLAGS = -Ml
# make NetHack
GAME = nethack
GAMEUID = games
GAMEGRP = bin
GAMEDIR = /usr/games/lib/$(GAME)dir
SHELLDIR = /usr/games
MANDIR = /usr/man/manl
MANEXT = l
HACKCSRC = apply.c bones.c decl.c\
cmd.c do.c dothrow.c do_name.c do_wear.c dog.c dogmove.c eat.c end.c\
engrave.c fight.c fountain.c hack.c invent.c ioctl.c lev.c main.c\
makemon.c mhitu.c mklev.c mkmaze.c mkobj.c mkshop.c\
mon.c monmove.c monst.c o_init.c objnam.c options.c\
pager.c polyself.c potion.c pray.c pri.c prisym.c read.c rip.c\
rumors.c save.c search.c shk.c shknam.c sit.c spell.c steal.c\
termcap.c timeout.c topl.c topten.c track.c trap.c tty.c unix.c\
u_init.c vault.c wield.c wizard.c worm.c worn.c write.c zap.c\
version.c rnd.c alloc.c
CSOURCES = $(HACKCSRC) makedefs.c
HSOURCES = hack.h mfndpos.h config.h edog.h eshk.h extern.h\
flag.h func_tab.h gold.h mkroom.h monst.h obj.h\
objclass.h objects.h permonst.h rm.h spell.h trap.h wseg.h you.h
SOURCES = $(CSOURCES) $(HSOURCES)
AUX = help hh nethack.6 nethack.sh
VARAUX = data rumors
SPECIFICS = main.o tty.o unix.o
DISTR = $(SOURCES) $(AUX) $(VARAUX) README.OLD README\
Makefile.unix Makefile.xenix Makefile.pc Make.ini
HOBJ = apply.o bones.o decl.o cmd.o do.o dothrow.o do_name.o do_wear.o dog.o\
dogmove.o eat.o end.o engrave.o fight.o fountain.o hack.o\
invent.o ioctl.o lev.o main.o makemon.o mhitu.o mklev.o\
mkmaze.o mkobj.o mkshop.o mon.o monmove.o monst.o\
o_init.o objnam.o options.o pager.o polyself.o potion.o pray.o\
pri.o prisym.o read.o rip.o rumors.o save.o search.o shk.o shknam.o\
sit.o spell.o steal.o termcap.o timeout.o topl.o topten.o track.o\
trap.o tty.o unix.o u_init.o vault.o wield.o wizard.o worm.o worn.o\
write.o zap.o version.o rnd.o alloc.o
.c.o:
cc -O -c -Gt24 ${CFLAGS} $*.c
$(GAME): $(SPECIFICS) $(HOBJ) Makefile
cc $(LFLAGS) -m hack.map -o $(GAME) /lib/Lsignal.o $(CRT0) $(HOBJ) $(LIBS)
-SEG#256
all: $(GAME) lint
@echo "Done."
makedefs: makedefs.c Salloc.o config.h
cc -O -o makedefs Salloc.o makedefs.c
Salloc.o: alloc.c
cp alloc.c Salloc.c
cc -O -c Salloc.c
pc:
cd dos; make
RUMORFILES= rumors.base rumors.kaa rumors.mrx
rumors: config.h $(RUMORFILES) makedefs
./makedefs -r
data: config.h data.base makedefs
./makedefs -d
date.h: $(SOURCES) makedefs
./makedefs -D
trap.h: config.h makedefs
./makedefs -t
onames.h: makedefs objects.h
./makedefs -o
main.o: main.c
main.c: unixmain.c hack.h
cp ${MAIN} main.c
tty.o: tty.c
cc ${CFLAGS} -c tty.c
tty.c: unixtty.c extern.h
cp ${TTY} tty.c
unix.c: unixunix.c hack.h mkroom.h
cp ${UNIX} unix.c
lint:
# lint cannot have -p here because (i) capitals are meaningful:
# [Ww]izard, (ii) identifiers may coincide in the first six places:
# doweararm() versus dowearring().
# _flsbuf comes from <stdio.h>, a bug in the system libraries.
@echo lint -axbh -DLINT ...
@lint -axbh -DLINT $(HACKCSRC) | sed '/_flsbuf/d'
diff:
@- for i in $(SOURCES) $(AUX) ; do \
cmp -s $$i $D/$$i || \
( echo diff $D/$$i $$i ; diff $D/$$i $$i ; echo ) ; done
distribution: Makefile
@- for i in READ_ME $(SOURCES) $(AUX) Makefile date.h onames.h\
; do \
cmp -s $$i $D/$$i || \
( echo cp $$i $D ; cp $$i $D ) ; done
# the distribution directory also contains the empty files perm and record.
initial:
-rm -rf $(GAMEDIR)
-mkdir $(SHELLDIR)
mkdir $(GAMEDIR) $(GAMEDIR)/save
touch $(GAMEDIR)/perm
touch $(GAMEDIR)/record
chown $(GAMEUID) $(GAMEDIR) $(GAMEDIR)/*
chgrp $(GAMEGRP) $(GAMEDIR) $(GAMEDIR)/*
chmod 666 $(GAMEDIR)/*
chmod 777 $(GAMEDIR) $(GAMEDIR)/save
install: $(VARAUX) $(GAME)
-rm -f $(GAMEDIR)/$(GAME)
-rm -f $(GAMEDIR)/bones* $(GAMEDIR)/alock* $(GAMEDIR)/wizard*
-rm -f $(GAMEDIR)/save/*
cp help hh rumors data $(GAMEDIR)
cp $(GAME).sh $(SHELLDIR)/$(GAME)
cp $(GAME) $(GAMEDIR)/$(GAME)
chown $(GAMEUID) $(SHELLDIR)/$(GAME) $(GAMEDIR) $(GAMEDIR)/*
chgrp $(GAMEGRP) $(SHELLDIR)/$(GAME) $(GAMEDIR) $(GAMEDIR)/*
chmod 0755 $(SHELLDIR)/$(GAME)
chmod 04755 $(GAMEDIR)/$(GAME)
-cp nethack.6 $(MANDIR)/$(GAME).$(MANEXT)
debug:
ln $(GAMEDIR)/$(GAME) a.out
ln $(GAMEDIR)/core core
clean:
rm -f *.o
spotless: clean
rm -f a.out core $(GAME) makedefs
rm -f Makefile $(VARAUX) main.c tty.c unix.c
decl.o: hack.h mkroom.h
apply.o: hack.h edog.h mkroom.h
bones.o: hack.h
hack.o: hack.h
cmd.o: hack.h func_tab.h
do.o: hack.h
do_name.o: hack.h
do_wear.o: hack.h
dog.o: hack.h edog.h mkroom.h
dogmove.o: hack.h mfndpos.h edog.h mkroom.h
dothrow.o: hack.h
eat.o: hack.h
end.o: hack.h
engrave.o: hack.h
fight.o: hack.h
fountain.o: hack.h mkroom.h
invent.o: hack.h wseg.h
ioctl.o: config.h
lev.o: hack.h mkroom.h wseg.h
makemon.o: hack.h
mhitu.o: hack.h
mklev.o: hack.h mkroom.h
mkmaze.o: hack.h mkroom.h
mkobj.o: hack.h
mkshop.o: hack.h mkroom.h eshk.h
mon.o: hack.h mfndpos.h
monmove.o: hack.h mfndpos.h
monst.o: hack.h eshk.h
o_init.o: config.h objects.h onames.h
objnam.o: hack.h
options.o: hack.h
pager.o: hack.h
polyself.o: hack.h
potion.o: hack.h
pray.o: hack.h
pri.o: hack.h
prisym.o: hack.h wseg.h
read.o: hack.h
rip.o: hack.h
rumors.o: hack.h
save.o: hack.h
search.o: hack.h
shk.o: hack.h mfndpos.h mkroom.h eshk.h
shknam.o: hack.h
sit.o: hack.h
spell.o: hack.h
steal.o: hack.h
termcap.o: hack.h
timeout.o: hack.h
topl.o: hack.h
topten.o: hack.h
track.o: hack.h
trap.o: hack.h edog.h mkroom.h
u_init.o: hack.h
vault.o: hack.h mkroom.h
wield.o: hack.h
wizard.o: hack.h
worm.o: hack.h wseg.h
worn.o: hack.h
write.o: hack.h
zap.o: hack.h
version.o: hack.h date.h
extern.h: config.h spell.h obj.h
touch extern.h
hack.h: extern.h flag.h gold.h monst.h objclass.h rm.h trap.h you.h
touch hack.h
objects.h: config.h objclass.h
touch objects.h
you.h: config.h onames.h permonst.h
touch you.h