Home | History | Annotate | Line # | Download | only in hack
      1  1.2  cgd #	$NetBSD: Makequest,v 1.2 1995/03/23 08:29:08 cgd Exp $
      2  1.2  cgd #
      3  1.1  cgd # Hack or Quest Makefile.
      4  1.1  cgd 
      5  1.1  cgd # on some systems the termcap library is in -ltermcap
      6  1.1  cgd TERMLIB = -ltermlib
      7  1.1  cgd 
      8  1.1  cgd 
      9  1.1  cgd # make hack
     10  1.1  cgd GAME = quest
     11  1.1  cgd GAMEDIR = /usr/games/lib/questdir
     12  1.1  cgd CFLAGS = -g -DQUEST
     13  1.1  cgd HACKCSRC = hack.Decl.c\
     14  1.1  cgd 	hack.apply.c hack.bones.c hack.c hack.cmd.c hack.do.c\
     15  1.1  cgd 	hack.do_name.c hack.do_wear.c hack.dog.c hack.eat.c hack.end.c\
     16  1.1  cgd 	hack.engrave.c hack.fight.c hack.invent.c hack.ioctl.c\
     17  1.1  cgd 	hack.lev.c hack.main.c hack.makemon.c hack.mhitu.c\
     18  1.1  cgd 	hack.mklev.c hack.mkmaze.c hack.mkobj.c hack.mkshop.c\
     19  1.1  cgd 	hack.mon.c hack.monst.c hack.o_init.c hack.objnam.c\
     20  1.1  cgd 	hack.options.c hack.pager.c hack.potion.c hack.pri.c\
     21  1.1  cgd 	hack.read.c hack.rip.c hack.rumors.c hack.save.c\
     22  1.1  cgd 	hack.search.c hack.shk.c hack.shknam.c hack.steal.c\
     23  1.1  cgd 	hack.termcap.c hack.timeout.c hack.topl.c\
     24  1.1  cgd 	hack.track.c hack.trap.c hack.tty.c hack.unix.c\
     25  1.1  cgd 	hack.u_init.c hack.vault.c\
     26  1.1  cgd 	hack.wield.c hack.wizard.c hack.worm.c hack.worn.c hack.zap.c\
     27  1.1  cgd 	hack.version.c rnd.c alloc.c
     28  1.1  cgd 
     29  1.1  cgd CSOURCES = $(HACKCSRC) makedefs.c
     30  1.1  cgd 
     31  1.1  cgd HSOURCES = hack.h hack.mfndpos.h config.h\
     32  1.1  cgd 	def.edog.h def.eshk.h def.flag.h def.func_tab.h def.gold.h\
     33  1.1  cgd 	def.mkroom.h\
     34  1.1  cgd 	def.monst.h def.obj.h def.objclass.h def.objects.h\
     35  1.1  cgd 	def.permonst.h def.rm.h def.trap.h def.wseg.h
     36  1.1  cgd 
     37  1.1  cgd SOURCES = $(CSOURCES) $(HSOURCES)
     38  1.1  cgd 
     39  1.1  cgd AUX = data help hh rumors hack.6 hack.sh
     40  1.1  cgd 
     41  1.1  cgd DISTR = $(SOURCES) $(AUX) READ_ME Makefile date.h hack.onames.h
     42  1.1  cgd 
     43  1.1  cgd HOBJ = hack.Decl.o hack.apply.o hack.bones.o hack.o hack.cmd.o hack.do.o\
     44  1.1  cgd 	hack.do_name.o hack.do_wear.o hack.dog.o hack.eat.o hack.end.o\
     45  1.1  cgd 	hack.engrave.o hack.fight.o hack.invent.o hack.ioctl.o\
     46  1.1  cgd 	hack.lev.o hack.main.o hack.makemon.o hack.mhitu.o hack.mklev.o\
     47  1.1  cgd 	hack.mkmaze.o hack.mkobj.o hack.mkshop.o hack.mon.o\
     48  1.1  cgd 	hack.monst.o hack.o_init.o hack.objnam.o hack.options.o\
     49  1.1  cgd 	hack.pager.o hack.potion.o hack.pri.o\
     50  1.1  cgd 	hack.read.o hack.rip.o hack.rumors.o hack.save.o\
     51  1.1  cgd 	hack.search.o hack.shk.o hack.shknam.o hack.steal.o\
     52  1.1  cgd 	hack.termcap.o hack.timeout.o hack.topl.o\
     53  1.1  cgd 	hack.track.o hack.trap.o\
     54  1.1  cgd 	hack.tty.o hack.unix.o hack.u_init.o hack.vault.o hack.wield.o\
     55  1.1  cgd 	hack.wizard.o hack.worm.o hack.worn.o hack.zap.o\
     56  1.1  cgd 	hack.version.o rnd.o alloc.o
     57  1.1  cgd 
     58  1.1  cgd $(GAME):	$(HOBJ) Makefile
     59  1.1  cgd 	@echo "Loading ..."
     60  1.1  cgd 	@ld -X -o $(GAME) /lib/crt0.o $(HOBJ) $(TERMLIB) -lc
     61  1.1  cgd 
     62  1.1  cgd all:	$(GAME) lint
     63  1.1  cgd 	@echo "Done."
     64  1.1  cgd 
     65  1.1  cgd makedefs:	makedefs.c
     66  1.1  cgd 	cc -o makedefs makedefs.c
     67  1.1  cgd 
     68  1.1  cgd 
     69  1.1  cgd hack.onames.h:	makedefs def.objects.h
     70  1.1  cgd 	makedefs > hack.onames.h
     71  1.1  cgd 
     72  1.1  cgd lint:
     73  1.1  cgd # lint cannot have -p here because (i) capitals are meaningful:
     74  1.1  cgd # [Ww]izard, (ii) identifiers may coincide in the first six places:
     75  1.1  cgd # doweararm() versus dowearring().
     76  1.1  cgd # _flsbuf comes from <stdio.h>, a bug in the system libraries.
     77  1.1  cgd 	@echo lint -axbh -DLINT ...
     78  1.1  cgd 	@lint -axbh -DLINT $(HACKCSRC) | sed '/_flsbuf/d'
     79  1.1  cgd 
     80  1.1  cgd 
     81  1.1  cgd diff:
     82  1.1  cgd 	@- for i in $(SOURCES) $(AUX) ; do \
     83  1.1  cgd 		cmp -s $$i $D/$$i || \
     84  1.1  cgd 		( echo diff $D/$$i $$i ; diff $D/$$i $$i ; echo ) ; done
     85  1.1  cgd 
     86  1.1  cgd distribution: Makefile
     87  1.1  cgd 	@- for i in READ_ME $(SOURCES) $(AUX) Makefile date.h hack.onames.h\
     88  1.1  cgd 		; do \
     89  1.1  cgd 		cmp -s $$i $D/$$i || \
     90  1.1  cgd 		( echo cp $$i $D ; cp $$i $D ) ; done
     91  1.1  cgd # the distribution directory also contains the empty files perm and record.
     92  1.1  cgd 
     93  1.1  cgd 
     94  1.1  cgd install:
     95  1.1  cgd 	rm -f $(GAMEDIR)/$(GAME)
     96  1.1  cgd 	cp $(GAME) $(GAMEDIR)/$(GAME)
     97  1.1  cgd 	chmod 04511 $(GAMEDIR)/$(GAME)
     98  1.1  cgd 	rm -f $(GAMEDIR)/bones*
     99  1.1  cgd #	cp hack.6 /usr/man/man6
    100  1.1  cgd 
    101  1.1  cgd clean:
    102  1.1  cgd 	rm -f *.o
    103  1.1  cgd 
    104  1.1  cgd 
    105  1.1  cgd depend:
    106  1.1  cgd # For the moment we are lazy and disregard /usr/include files because
    107  1.1  cgd # the sources contain them conditionally. Perhaps we should use cpp.
    108  1.1  cgd #		( /bin/grep '^#[ 	]*include' $$i | sed -n \
    109  1.1  cgd #			-e 's,<\(.*\)>,"/usr/include/\1",' \
    110  1.1  cgd #
    111  1.1  cgd 	for i in ${CSOURCES}; do \
    112  1.1  cgd 		( /bin/grep '^#[ 	]*include[ 	]*"' $$i | sed -n \
    113  1.1  cgd 			-e 's/[^"]*"\([^"]*\)".*/\1/' \
    114  1.1  cgd 			-e H -e '$$g' -e '$$s/\n/ /g' \
    115  1.1  cgd 			-e '$$s/.*/'$$i': &/' -e '$$s/\.c:/.o:/p' \
    116  1.1  cgd 			>> makedep); done
    117  1.1  cgd 	for i in ${HSOURCES}; do \
    118  1.1  cgd 		( /bin/grep '^#[ 	]*include[ 	]*"' $$i | sed -n \
    119  1.1  cgd 			-e 's/[^"]*"\([^"]*\)".*/\1/' \
    120  1.1  cgd 			-e H -e '$$g' -e '$$s/\n/ /g' \
    121  1.1  cgd 			-e '$$s/.*/'$$i': &\
    122  1.1  cgd 				touch '$$i/p \
    123  1.1  cgd 			>> makedep); done
    124  1.1  cgd 	@echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep
    125  1.1  cgd 	@echo '$$r makedep' >>eddep
    126  1.1  cgd 	@echo 'w' >>eddep
    127  1.1  cgd 	@cp Makefile Makefile.bak
    128  1.1  cgd 	ed - Makefile < eddep
    129  1.1  cgd 	@rm -f eddep makedep
    130  1.1  cgd 	@echo '# DEPENDENCIES MUST END AT END OF FILE' >> Makefile
    131  1.1  cgd 	@echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> Makefile
    132  1.1  cgd 	@echo '# see make depend above' >> Makefile
    133  1.1  cgd 	- diff Makefile Makefile.bak
    134  1.1  cgd 	@rm -f Makefile.bak
    135  1.1  cgd 
    136  1.1  cgd # DO NOT DELETE THIS LINE
    137  1.1  cgd 
    138  1.1  cgd hack.Decl.o:  hack.h def.mkroom.h
    139  1.1  cgd hack.apply.o:  hack.h def.edog.h def.mkroom.h
    140  1.1  cgd hack.bones.o:  hack.h
    141  1.1  cgd hack.o:  hack.h
    142  1.1  cgd hack.cmd.o:  hack.h def.func_tab.h
    143  1.1  cgd hack.do.o:  hack.h
    144  1.1  cgd hack.do_name.o:  hack.h
    145  1.1  cgd hack.do_wear.o:  hack.h
    146  1.1  cgd hack.dog.o:  hack.h hack.mfndpos.h def.edog.h def.mkroom.h
    147  1.1  cgd hack.eat.o:  hack.h
    148  1.1  cgd hack.end.o:  hack.h
    149  1.1  cgd hack.engrave.o:  hack.h
    150  1.1  cgd hack.fight.o:  hack.h
    151  1.1  cgd hack.invent.o:  hack.h def.wseg.h
    152  1.1  cgd hack.ioctl.o:  config.h
    153  1.1  cgd hack.lev.o:  hack.h def.mkroom.h def.wseg.h
    154  1.1  cgd hack.main.o:  hack.h
    155  1.1  cgd hack.makemon.o:  hack.h
    156  1.1  cgd hack.mhitu.o:  hack.h
    157  1.1  cgd hack.mklev.o:  hack.h def.mkroom.h
    158  1.1  cgd hack.mkmaze.o:  hack.h def.mkroom.h
    159  1.1  cgd hack.mkobj.o:  hack.h
    160  1.1  cgd hack.mkshop.o:  hack.h def.mkroom.h def.eshk.h
    161  1.1  cgd hack.mon.o:  hack.h hack.mfndpos.h
    162  1.1  cgd hack.monst.o:  hack.h def.eshk.h
    163  1.1  cgd hack.o_init.o:  config.h def.objects.h hack.onames.h
    164  1.1  cgd hack.objnam.o:  hack.h
    165  1.1  cgd hack.options.o:  config.h hack.h
    166  1.1  cgd hack.pager.o:  hack.h
    167  1.1  cgd hack.potion.o:  hack.h
    168  1.1  cgd hack.pri.o:  hack.h def.wseg.h
    169  1.1  cgd hack.read.o:  hack.h
    170  1.1  cgd hack.rip.o:  hack.h
    171  1.1  cgd hack.rumors.o:  hack.h
    172  1.1  cgd hack.save.o:  hack.h
    173  1.1  cgd hack.search.o:  hack.h
    174  1.1  cgd hack.shk.o:  hack.h hack.mfndpos.h def.mkroom.h def.eshk.h
    175  1.1  cgd hack.shknam.o:  hack.h
    176  1.1  cgd hack.steal.o:  hack.h
    177  1.1  cgd hack.termcap.o:  config.h def.flag.h
    178  1.1  cgd hack.timeout.o:  hack.h
    179  1.1  cgd hack.topl.o:  hack.h
    180  1.1  cgd hack.track.o:  hack.h
    181  1.1  cgd hack.trap.o:  hack.h def.mkroom.h
    182  1.1  cgd hack.tty.o:  hack.h
    183  1.1  cgd hack.unix.o:  hack.h def.mkroom.h
    184  1.1  cgd hack.u_init.o:  hack.h
    185  1.1  cgd hack.vault.o:  hack.h def.mkroom.h
    186  1.1  cgd hack.wield.o:  hack.h
    187  1.1  cgd hack.wizard.o:  hack.h
    188  1.1  cgd hack.worm.o:  hack.h def.wseg.h
    189  1.1  cgd hack.worn.o:  hack.h
    190  1.1  cgd hack.zap.o:  hack.h
    191  1.1  cgd hack.version.o:  date.h
    192  1.1  cgd hack.h:  config.h def.objclass.h def.monst.h def.gold.h def.trap.h def.obj.h def.flag.h def.rm.h def.permonst.h hack.onames.h
    193  1.1  cgd 			touch hack.h
    194  1.1  cgd def.objects.h:  config.h def.objclass.h
    195  1.1  cgd 			touch def.objects.h
    196  1.1  cgd # DEPENDENCIES MUST END AT END OF FILE
    197  1.1  cgd # IF YOU PUT STUFF HERE IT WILL GO AWAY
    198  1.1  cgd # see make depend above
    199