DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: M T

⟦2ec05280b⟧ TextFile

    Length: 7004 (0x1b5c)
    Types: TextFile
    Names: »Makefile.att«

Derivation

└─⟦b20c6495f⟧ Bits:30007238 EUUGD18: Wien-båndet, efterår 1987
    └─⟦this⟧ »EUUGD18/General/Nethack/Makefile.att« 

TextFile

#	Hack or Quest Makefile.
#	SCCS Id: @(#)Makefile.att	2.2	87/11/11

include $(MAKEINC)/Makepre.h

# 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
TERMLIB =

# make NetHack
GAME = nethack
GAMEUID = games
GAMEGRP = bin
#	GAMEDIR also appears in config.h as "HACKDIR".
GAMEDIR = /usr/games/lib/$(GAME)dir
SHELLDIR = /usr/games
MANDIR  = /usr/man/man6
CFLAGS = -O
LFLAGS =

HACKCSRC = alloc.c apply.c bones.c cmd.c decl.c do.c do_name.c do_wear.c\
	dog.c dogmove.c dothrow.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 rnd.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 u_init.c unix.c vault.c version.c wield.c wizard.c\
	worm.c worn.c write.c zap.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 Makefile.pc Make.ini

HOBJ = alloc.o apply.o bones.o cmd.o decl.o do.o do_name.o do_wear.o\
	dog.o dogmove.o dothrow.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 rnd.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 u_init.o unix.o vault.o version.o wield.o wizard.o\
	worm.o worn.o write.o zap.o

$(GAME):	$(SPECIFICS) $(HOBJ) Makefile
	@echo "Loading ..."
	@ld $(LFLAGS) $(SHAREDLIB) -o $(GAME) $(HOBJ) $(TERMLIB)

all:	$(GAME) lint
	@echo "Done."

makedefs:	makedefs.c alloc.o config.h
	cc -o makedefs alloc.o makedefs.c

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:	unixmain.c hack.h
	cp $(MAIN) main.c

tty.o:

tty.c:	unixtty.c extern.h
	cp $(TTY) tty.c

unix.o:

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)
	-rm -f $(GAMEDIR)/$(GAME)
	-rm -f $(GAMEDIR)/bones*
	-rm -f $(GAMEDIR)/save/*
	cp help hh rumors data $(GAMEDIR)
	cp $(GAME).sh $(SHELLDIR)/$(GAME)
	cp $(GAME) $(GAMEDIR)/$(GAME)
	chown $(GAMEUID) $(SHELLDIR)/$(GAME) $(GAMEDIR)/*
	chgrp $(GAMEGRP) $(SHELLDIR)/$(GAME) $(GAMEDIR)/*
	chmod 0755 $(SHELLDIR)/$(GAME)
	chmod 04755 $(GAMEDIR)/$(GAME)
	-cp nethack.6 $(MANDIR)

clean:
	rm -f *.o

spotless: clean
	rm -f a.out core $(GAME) makedefs
	rm -f Makefile $(VARAUX) main.c tty.c unix.c

depend:
# For the moment we are lazy and disregard /usr/include files because
# the sources contain them conditionally. Perhaps we should use cpp.
#		( /bin/grep '^#[ 	]*include' $$i | sed -n \
#			-e 's,<\(.*\)>,"/usr/include/\1",' \
#
	for i in ${CSOURCES}; do \
		( /bin/grep '^#[ 	]*include[ 	]*"' $$i | sed -n \
			-e 's/[^"]*"\([^"]*\)".*/\1/' \
			-e H -e '$$g' -e '$$s/\n/ /g' \
			-e '$$s/.*/'$$i': &/' -e '$$s/\.c:/.o:/p' \
			>> makedep); done
	for i in ${HSOURCES}; do \
		( /bin/grep '^#[ 	]*include[ 	]*"' $$i | sed -n \
			-e 's/[^"]*"\([^"]*\)".*/\1/' \
			-e H -e '$$g' -e '$$s/\n/ /g' \
			-e '$$s/.*/'$$i': &\
				touch '$$i/p \
			>> makedep); done
	@echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep
	@echo '$$r makedep' >>eddep
	@echo 'w' >>eddep
	@cp Makefile Makefile.bak
	ed - Makefile < eddep
	@rm -f eddep makedep
	@echo '# DEPENDENCIES MUST END AT END OF FILE' >> Makefile
	@echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> Makefile
	@echo '# see make depend above' >> Makefile
	- diff Makefile Makefile.bak
	@rm -f Makefile.bak

# DO NOT DELETE THIS LINE

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
# DEPENDENCIES MUST END AT END OF FILE
# IF YOU PUT STUFF HERE IT WILL GO AWAY
# see make depend above