home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / games / nethack2.3 / part12 / Makefile.pc < prev    next >
Makefile  |  1988-10-17  |  4KB  |  185 lines

  1. #    SCCS Id: @(#)Makefile.pc    2.2    87/11/11
  2. #     Makefile for NetHack (PC) version 1.0 written using
  3. #    Microsoft(tm) "C" v3.0 or better.
  4. # Large memory model, register bug, remove stack probes:
  5. WIZARD=
  6. V = 35
  7. CFLAGS = -A$(MODEL) -DREGBUG -DLINT_ARGS -DVER=$V $(WIZARD) -Ot -Gs -Gt100
  8.  
  9. LIBS =
  10. LFLAGS =
  11. MODEL = L
  12. SETARGV = $(LIB)\$(MODEL)SETARGV
  13. .SUFFIXES: .exe .obj .c
  14. .c.obj:; cl $(CFLAGS) -c $*.c
  15. .c.exe:;
  16.     cl $(CFLAGS) -c $*.c
  17.     link $*.obj $(SETARGV), $@,, $(LIBS) $(LFLAGS);
  18.  
  19. # The game name
  20. GAME = hack.exe
  21.  
  22. # The game directory
  23. GAMEDIR = \h
  24.  
  25. # All object modules
  26. OBJS = decl.obj apply.obj bones.obj cmd.obj do.obj dothrow.obj\
  27.     do_name.obj do_wear.obj dog.obj dogmove.obj eat.obj end.obj \
  28.     engrave.obj fight.obj fountain.obj hack.obj invent.obj \
  29.     lev.obj main.obj makemon.obj mhitu.obj mklev.obj \
  30.     mkmaze.obj mkobj.obj mkshop.obj mon.obj monmove.obj\
  31.     monst.obj o_init.obj objnam.obj options.obj \
  32.     pager.obj polyself.obj potion.obj pray.obj pri.obj prisym.obj\
  33.     read.obj rip.obj rumors.obj save.obj \
  34.     search.obj shk.obj shknam.obj sit.obj spell.obj steal.obj \
  35.     termcap.obj timeout.obj topl.obj topten.obj track.obj trap.obj \
  36.     tty.obj unix.obj u_init.obj vault.obj wield.obj \
  37.     wizard.obj worm.obj worn.obj write.obj zap.obj \
  38.     version.obj rnd.obj alloc.obj msdos.obj
  39.  
  40. # The main target - you may want to try both of these alternatives.
  41. #
  42. $(GAME) : $(OBJS)
  43. #    link $(OBJS), $(GAME) /NOIG /STACK:4000 /CP:1;
  44. #    link $(OBJS), $(GAME) /NOIG /STACK:0xa00 /CP:1;
  45.  
  46.  
  47. #    variable auxilary files.
  48. #
  49. VARAUX = data rumors
  50.  
  51. install : $(GAME) $(VARAUX)
  52.     - exepack $(GAME) $(GAMEDIR)\$(GAME)
  53.     - exemod $(GAMEDIR)\$(GAME) /max 1
  54.  
  55. clean :
  56.     erase $(GAME)
  57.  
  58. spotless: clean
  59.     erase *.obj
  60.     erase main.c
  61.     erase tty.c
  62.     erase unix.c
  63.  
  64. srcs :
  65.     copy makefile \tmp
  66.     copy *.c \tmp
  67.     copy *.h \tmp
  68.     copy \local\make\make.doc \tmp
  69.     copy \local\make\make.ini \tmp
  70.     copy \bin\make.exe \tmp
  71.     cd \tmp
  72.     time
  73.     touch *.*
  74.     arc m hack$Vs * *.*
  75.     cd $(CWD)
  76.  
  77.  
  78. #    Other dependencies
  79. #
  80. RUMORFILES= rumors.bas rumors.kaa rumors.mrx
  81.  
  82. makedefs.exe:    makedefs.c alloc.obj config.h
  83.     cl -AL makedefs.c alloc.obj
  84.  
  85.  
  86. rumors :  config.h $(RUMORFILES) makedefs.exe
  87.     makedefs.exe -r
  88.  
  89. data :  config.h data.bas makedefs.exe
  90.     makedefs.exe -d
  91.  
  92. onames.h :  config.h objects.h makedefs.exe
  93.     makedefs.exe -o
  94.  
  95. #    Below is a kluge.  date.h should actually depend on any source
  96. #    module being changed. (but hack.h is close enough for most).
  97. #
  98. date.h :  hack.h makedefs.exe
  99.     makedefs.exe -D
  100.  
  101. trap.h :  config.h makedefs.exe
  102.     makedefs.exe -t
  103.  
  104. main.obj :  pcmain.c hack.h
  105.     $(CC) $(CFLAGS) -Fo$@ -c pcmain.c
  106.  
  107. tty.obj :  pctty.c hack.h msdos.h
  108.     $(CC) $(CFLAGS) -Fo$@ -c pctty.c
  109.  
  110. unix.obj :  pcunix.c hack.h mkroom.h
  111.     $(CC) $(CFLAGS) -Fo$@ -c pcunix.c
  112.  
  113. decl.obj :  hack.h mkroom.h
  114. apply.obj :  hack.h edog.h mkroom.h
  115. bones.obj :  hack.h
  116. hack.obj :  hack.h
  117. cmd.obj :  hack.h func_tab.h
  118. do.obj :  hack.h
  119. do_name.obj :  hack.h
  120. do_wear.obj :  hack.h
  121. dog.obj :  hack.h edog.h mkroom.h
  122. dogmove.obj :  hack.h mfndpos.h edog.h mkroom.h
  123. dothrow.obj :  hack.h
  124. eat.obj :  hack.h
  125. end.obj :  hack.h
  126. engrave.obj :  hack.h
  127. fight.obj :  hack.h
  128. fountain.obj :  hack.h mkroom.h
  129. invent.obj :  hack.h wseg.h
  130. ioctl.obj :  config.h
  131. lev.obj :  hack.h mkroom.h wseg.h
  132. makemon.obj :  hack.h
  133. mhitu.obj :  hack.h
  134. mklev.obj :  hack.h mkroom.h
  135. mkmaze.obj :  hack.h mkroom.h
  136. mkobj.obj :  hack.h
  137. mkshop.obj :  hack.h mkroom.h eshk.h
  138. mon.obj :  hack.h mfndpos.h
  139. monmove.obj :  hack.h mfndpos.h
  140. monst.obj :  hack.h eshk.h
  141. msdos.obj : msdos.h
  142. o_init.obj :  config.h objects.h onames.h
  143. objnam.obj :  hack.h
  144. options.obj :  hack.h
  145. pager.obj :  hack.h
  146. polyself.obj : hack.h
  147. potion.obj :  hack.h
  148. pray.obj :  hack.h
  149. pri.obj :  hack.h
  150. prisym.obj :  hack.h wseg.h
  151. read.obj :  hack.h
  152. rip.obj :  hack.h
  153. rumors.obj :  hack.h
  154. save.obj :  hack.h
  155. search.obj :  hack.h
  156. shk.obj :  hack.h mfndpos.h mkroom.h eshk.h
  157. shknam.obj :  hack.h
  158. sit.obj : hack.h
  159. spell.obj :  hack.h
  160. steal.obj :  hack.h
  161. termcap.obj :  hack.h
  162. timeout.obj :  hack.h
  163. topl.obj :  hack.h
  164. topten.obj :  hack.h
  165. track.obj :  hack.h
  166. trap.obj :  hack.h edog.h mkroom.h
  167. u_init.obj :  hack.h
  168. vault.obj :  hack.h mkroom.h
  169. wield.obj :  hack.h
  170. wizard.obj :  hack.h
  171. worm.obj :  hack.h wseg.h
  172. worn.obj :  hack.h
  173. write.obj :  hack.h
  174. zap.obj :  hack.h
  175. version.obj :  hack.h date.h
  176. extern.h: config.h spell.h obj.h
  177.     touch extern.h
  178. hack.h: extern.h flag.h gold.h monst.h objclass.h rm.h trap.h you.h 
  179.     touch hack.h
  180. objects.h:  config.h objclass.h
  181.     touch objects.h
  182. you.h: config.h onames.h permonst.h 
  183.     touch you.h
  184.