1 # SCCS Id: @(#)bootstrp.mak 3.4 2002/03/24
2 # Copyright (c) Michael Allison
4 # NetHack Windows CE bootstrap file for MS Visual C++ V6.x and
10 #==============================================================================
11 # Do not delete the following 3 lines.
18 # Source directories. Makedefs hardcodes these, don't change them.
21 INCL = ..\include # NetHack include files
22 DAT = ..\dat # NetHack data files
23 DOC = ..\doc # NetHack documentation files
24 UTIL = ..\util # Utility source
25 SRC = ..\src # Main source
26 SSYS = ..\sys\share # Shared system files
27 NTSYS = ..\sys\winnt # NT Win32 specific files
28 TTY = ..\win\tty # window port files (tty)
29 WIN32 = ..\win\win32 # window port files (WINCE)
30 WSHR = ..\win\share # Tile support files
31 SWINCE= ..\wince # wince files
32 WINCE = ..\wince # wince build area
36 #==========================================
37 # Setting up the compiler and linker
38 # macros. All builds include the base ones.
39 #==========================================
41 CFLAGSBASE = -c $(cflags) $(cvarsmt) -I$(INCL) -nologo $(cdebug) $(WINPINC) -DDLB
42 LFLAGSBASEC = $(linkdebug) /NODEFAULTLIB /INCREMENTAL:NO /RELEASE /NOLOGO -subsystem:console,4.0 $(conlibsmt)
43 LFLAGSBASEG = $(linkdebug) $(guiflags) $(guilibsmt) comctl32.lib
45 #==========================================
47 #==========================================
49 CFLAGSU = $(CFLAGSBASE) $(WINPFLAG)
50 LFLAGSU = $(LFLAGSBASEC)
52 LEVCFLAGS= -c -nologo -DWINVER=0x0400 -DWIN32 -D_WIN32 \
53 -D_MT -MT -I..\include -nologo -Z7 -Od -DDLB
56 #==========================================
57 #================ RULES ==================
58 #==========================================
60 .SUFFIXES: .exe .o .til .uu .c .y .l
62 #==========================================
63 # Rules for files in src
64 #==========================================
67 # $(cc) $(CFLAGSU) -Fo$@ $<
70 $(CC) $(CFLAGSU) -Fo$@ $<
72 #==========================================
73 # Rules for files in sys\share
74 #==========================================
76 {$(SSYS)}.c{$(OBJ)}.o:
77 $(CC) $(CFLAGSU) -Fo$@ $<
79 #==========================================
80 # Rules for files in sys\winnt
81 #==========================================
83 {$(NTSYS)}.c{$(OBJ)}.o:
84 $(CC) $(CFLAGSU) -Fo$@ $<
86 {$(NTSYS)}.h{$(INCL)}.h:
89 #==========================================
90 # Rules for files in util
91 #==========================================
93 {$(UTIL)}.c{$(OBJ)}.o:
94 $(CC) $(CFLAGSU) -Fo$@ $<
96 #==========================================
97 # Rules for files in win\share
98 #==========================================
100 {$(WSHR)}.c{$(OBJ)}.o:
101 $(CC) $(CFLAGSU) -Fo$@ $<
103 {$(WSHR)}.h{$(INCL)}.h:
106 #{$(WSHR)}.txt{$(DAT)}.txt:
109 #==========================================
110 # Rules for files in win\tty
111 #==========================================
113 {$(TTY)}.c{$(OBJ)}.o:
114 $(CC) $(CFLAGSU) -Fo$@ $<
117 #==========================================
118 # Rules for files in win\win32
119 #==========================================
121 {$(WIN32)}.c{$(OBJ)}.o:
122 $(cc) $(CFLAGSU) -Fo$@ $<
124 #==========================================
125 # Rules for files in sys\wince
126 #==========================================
128 {$(SWINCE)}.c{$(OBJ)}.o:
129 $(cc) $(CFLAGSU) -Fo$@ $<
131 #==========================================
132 #================ MACROS ==================
133 #==========================================
136 # Shorten up the location for some files
147 MAKESRC = $(U)makedefs.c
149 SPLEVSRC = $(U)lev_yacc.c $(U)lev_$(LEX).c $(U)lev_main.c $(U)panic.c
151 DGNCOMPSRC = $(U)dgn_yacc.c $(U)dgn_$(LEX).c $(U)dgn_main.c
153 MAKEOBJS = $(O)makedefs.o $(O)monst.o $(O)objects.o
155 SPLEVOBJS = $(O)lev_yacc.o $(O)lev_$(LEX).o $(O)lev_main.o \
156 $(O)alloc.o $(O)decl.o $(O)drawing.o \
157 $(O)monst.o $(O)objects.o $(O)panic.o
159 DGNCOMPOBJS = $(O)dgn_yacc.o $(O)dgn_$(LEX).o $(O)dgn_main.o \
160 $(O)alloc.o $(O)panic.o
162 TILEFILES = $(WSHR)\monsters.txt $(WSHR)\objects.txt $(WSHR)\other.txt
165 # These are not invoked during a normal game build in 3.4.0
167 TEXT_IO = $(O)tiletext.o $(O)tiletxt.o $(O)drawing.o \
168 $(O)decl.o $(O)monst.o $(O)objects.o
170 TEXT_IO32 = $(O)tilete32.o $(O)tiletx32.o $(O)drawing.o \
171 $(O)decl.o $(O)monst.o $(O)objects.o
173 GIFREADERS = $(O)gifread.o $(O)alloc.o $(O)panic.o
174 GIFREADERS32 = $(O)gifrd32.o $(O)alloc.o $(O)panic.o
176 PPMWRITERS = $(O)ppmwrite.o $(O)alloc.o $(O)panic.o
180 #==========================================
182 #==========================================
184 CONFIG_H = $(INCL)\config.h $(INCL)\config1.h $(INCL)\tradstdc.h \
185 $(INCL)\global.h $(INCL)\coord.h $(INCL)\vmsconf.h \
186 $(INCL)\system.h $(INCL)\unixconf.h $(INCL)\os2conf.h \
187 $(INCL)\micro.h $(INCL)\pcconf.h $(INCL)\tosconf.h \
188 $(INCL)\amiconf.h $(INCL)\macconf.h $(INCL)\beconf.h \
189 $(INCL)\ntconf.h $(INCL)\nhlan.h $(INCL)\wceconf.h
191 HACK_H = $(INCL)\hack.h $(CONFIG_H) $(INCL)\align.h \
192 $(INCL)\dungeon.h $(INCL)\monsym.h $(INCL)\mkroom.h \
193 $(INCL)\objclass.h $(INCL)\youprop.h $(INCL)\prop.h \
194 $(INCL)\permonst.h $(INCL)\monattk.h \
195 $(INCL)\monflag.h $(INCL)\mondata.h $(INCL)\pm.h \
196 $(INCL)\wintype.h $(INCL)\decl.h $(INCL)\quest.h \
197 $(INCL)\spell.h $(INCL)\color.h $(INCL)\obj.h \
198 $(INCL)\you.h $(INCL)\attrib.h $(INCL)\monst.h \
199 $(INCL)\skills.h $(INCL)\onames.h $(INCL)\timeout.h \
200 $(INCL)\trap.h $(INCL)\flag.h $(INCL)\rm.h \
201 $(INCL)\vision.h $(INCL)\display.h $(INCL)\engrave.h \
202 $(INCL)\rect.h $(INCL)\region.h $(INCL)\winprocs.h \
203 $(INCL)\wintty.h $(INCL)\trampoli.h
205 LEV_H = $(INCL)\lev.h
206 DGN_FILE_H = $(INCL)\dgn_file.h
207 LEV_COMP_H = $(INCL)\lev_comp.h
208 SP_LEV_H = $(INCL)\sp_lev.h
209 TILE_H = ..\win\share\tile.h
211 #==========================================
213 #==========================================
215 DATABASE = $(DAT)\data.base
217 #==========================================
218 #=============== TARGETS ==================
219 #==========================================
222 # The default make target (so just typing 'nmake' is useful).
230 all : $(INCL)\date.h $(INCL)\onames.h $(INCL)\pm.h \
231 $(SRC)\monstr.c $(SRC)\vis_tab.c $(U)lev_comp.exe $(INCL)\vis_tab.h \
232 $(U)dgn_comp.exe $(U)uudecode.exe \
233 $(DAT)\data $(DAT)\rumors $(DAT)\dungeon \
234 $(DAT)\oracles $(DAT)\quest.dat $(O)sp_lev.tag $(DLB) $(SRC)\tile.c \
235 $(SWINCE)\nethack.ico $(SWINCE)\tiles.bmp $(SWINCE)\mnsel.bmp \
236 $(SWINCE)\mnunsel.bmp $(SWINCE)\petmark.bmp $(SWINCE)\mnselcnt.bmp \
237 $(SWINCE)\keypad.bmp $(SWINCE)\menubar.bmp
240 $(O)sp_lev.tag: $(DAT)\bigroom.des $(DAT)\castle.des \
241 $(DAT)\endgame.des $(DAT)\gehennom.des $(DAT)\knox.des \
242 $(DAT)\medusa.des $(DAT)\oracle.des $(DAT)\tower.des \
243 $(DAT)\yendor.des $(DAT)\arch.des $(DAT)\barb.des \
244 $(DAT)\caveman.des $(DAT)\healer.des $(DAT)\knight.des \
245 $(DAT)\monk.des $(DAT)\priest.des $(DAT)\ranger.des \
246 $(DAT)\rogue.des $(DAT)\samurai.des $(DAT)\sokoban.des \
247 $(DAT)\tourist.des $(DAT)\valkyrie.des $(DAT)\wizard.des
249 $(U)lev_comp bigroom.des
250 $(U)lev_comp castle.des
251 $(U)lev_comp endgame.des
252 $(U)lev_comp gehennom.des
253 $(U)lev_comp knox.des
254 $(U)lev_comp mines.des
255 $(U)lev_comp medusa.des
256 $(U)lev_comp oracle.des
257 $(U)lev_comp sokoban.des
258 $(U)lev_comp tower.des
259 $(U)lev_comp yendor.des
260 $(U)lev_comp arch.des
261 $(U)lev_comp barb.des
262 $(U)lev_comp caveman.des
263 $(U)lev_comp healer.des
264 $(U)lev_comp knight.des
265 $(U)lev_comp monk.des
266 $(U)lev_comp priest.des
267 $(U)lev_comp ranger.des
268 $(U)lev_comp rogue.des
269 $(U)lev_comp samurai.des
270 $(U)lev_comp tourist.des
271 $(U)lev_comp valkyrie.des
272 $(U)lev_comp wizard.des
274 echo sp_levs done > $(O)sp_lev.tag
276 #$(NHRES): $(TILEBMP16) $(WINCE)\winhack.rc $(WINCE)\mnsel.bmp \
277 # $(WINCE)\mnselcnt.bmp $(WINCE)\mnunsel.bmp \
278 # $(WINCE)\petmark.bmp $(WINCE)\NetHack.ico $(WINCE)\rip.bmp \
279 # $(WINCE)\splash.bmp
280 # $(rc) -r -fo$@ -i$(WINCE) -dNDEBUG $(WINCE)\winhack.rc
286 #==========================================
288 #==========================================
290 $(U)makedefs.exe: $(MAKEOBJS)
291 $(link) $(LFLAGSU) -out:$@ $(MAKEOBJS)
293 $(O)makedefs.o: $(CONFIG_H) $(INCL)\monattk.h $(INCL)\monflag.h $(INCL)\objclass.h \
294 $(INCL)\monsym.h $(INCL)\qtext.h $(INCL)\patchlevel.h \
296 if not exist $(OBJ)\*.* echo creating directory $(OBJ)
297 if not exist $(OBJ)\*.* mkdir $(OBJ)
298 $(CC) $(CFLAGSU) -Fo$@ $(U)makedefs.c
301 # date.h should be remade every time any of the source or include
305 $(INCL)\date.h $(OPTIONS_FILE) : $(U)makedefs.exe
308 $(INCL)\onames.h : $(U)makedefs.exe
311 $(INCL)\pm.h : $(U)makedefs.exe
314 #$(INCL)\trap.h : $(U)makedefs.exe
317 $(SRC)\monstr.c: $(U)makedefs.exe
320 $(INCL)\vis_tab.h: $(U)makedefs.exe
323 $(SRC)\vis_tab.c: $(U)makedefs.exe
326 #==========================================
327 # uudecode utility and uuencoded targets
328 #==========================================
330 $(U)uudecode.exe: $(O)uudecode.o
331 $(link) $(LFLAGSU) -out:$@ $(O)uudecode.o
333 $(O)uudecode.o: $(SSYS)\uudecode.c
335 $(SWINCE)\NetHack.ico : $(U)uudecode.exe $(SWINCE)\nhico.uu
337 ..\util\uudecode.exe nhico.uu
340 $(SWINCE)\mnsel.bmp: $(U)uudecode.exe $(SWINCE)\mnsel.uu
342 ..\util\uudecode.exe mnsel.uu
345 $(SWINCE)\mnselcnt.bmp: $(U)uudecode.exe $(SWINCE)\mnselcnt.uu
347 ..\util\uudecode.exe mnselcnt.uu
350 $(SWINCE)\mnunsel.bmp: $(U)uudecode.exe $(SWINCE)\mnunsel.uu
352 ..\util\uudecode.exe mnunsel.uu
355 $(SWINCE)\petmark.bmp: $(U)uudecode.exe $(SWINCE)\petmark.uu
357 ..\util\uudecode.exe petmark.uu
360 $(SWINCE)\rip.bmp: $(U)uudecode.exe $(SWINCE)\rip.uu
362 ..\util\uudecode.exe rip.uu
365 $(SWINCE)\splash.bmp: $(U)uudecode.exe $(SWINCE)\splash.uu
367 ..\util\uudecode.exe splash.uu
370 $(SWINCE)\keypad.bmp: $(U)uudecode.exe $(SWINCE)\keypad.uu
372 ..\util\uudecode.exe keypad.uu
375 $(SWINCE)\menubar.bmp: $(U)uudecode.exe $(SWINCE)\menubar.uu
377 ..\util\uudecode.exe menubar.uu
380 #==========================================
381 # Level Compiler Stuff
382 #==========================================
384 $(U)lev_comp.exe: $(SPLEVOBJS)
386 $(link) $(LFLAGSU) -out:$@ @<<$(@B).lnk
391 $(O)lev_yacc.o: $(HACK_H) $(SP_LEV_H) $(INCL)\lev_comp.h $(U)lev_yacc.c
392 $(CC) $(LEVCFLAGS) -W0 -Fo$@ $(U)lev_yacc.c
394 $(O)lev_$(LEX).o: $(HACK_H) $(INCL)\lev_comp.h $(SP_LEV_H) \
396 $(CC) $(LEVCFLAGS) -W0 -Fo$@ $(U)lev_$(LEX).c
398 $(O)lev_main.o: $(U)lev_main.c $(HACK_H) $(SP_LEV_H)
399 $(CC) $(LEVCFLAGS) -W0 -Fo$@ $(U)lev_main.c
402 $(U)lev_yacc.c $(INCL)\lev_comp.h : $(U)lev_comp.y
403 @echo We will copy the prebuilt lev_yacc.c and
404 @echo lev_comp.h from $(SSYS) into $(UTIL) and use them.
405 @copy $(SSYS)\lev_yacc.c $(U)lev_yacc.c >nul
406 @copy $(SSYS)\lev_comp.h $(INCL)\lev_comp.h >nul
407 @echo /**/ >>$(U)lev_yacc.c
408 @echo /**/ >>$(INCL)\lev_comp.h
410 $(U)lev_$(LEX).c: $(U)lev_comp.l
411 @echo We will copy the prebuilt lev_lex.c
412 @echo from $(SSYS) into $(UTIL) and use it.
413 @copy $(SSYS)\lev_lex.c $@ >nul
416 #==========================================
417 # Dungeon Compiler Stuff
418 #==========================================
420 $(U)dgn_comp.exe: $(DGNCOMPOBJS)
422 $(link) $(LFLAGSU) -out:$@ @<<$(@B).lnk
427 $(O)dgn_yacc.o: $(HACK_H) $(DGN_FILE_H) $(INCL)\dgn_comp.h $(U)dgn_yacc.c
428 $(CC) $(LEVCFLAGS) -W0 -Fo$@ $(U)dgn_yacc.c
430 $(O)dgn_$(LEX).o: $(HACK_H) $(DGN_FILE_H) $(INCL)\dgn_comp.h \
432 $(CC) $(LEVCFLAGS) -W0 -Fo$@ $(U)dgn_$(LEX).c
434 $(O)dgn_main.o: $(HACK_H) $(U)dgn_main.c
435 $(CC) $(LEVCFLAGS) -W0 -Fo$@ $(U)dgn_main.c
437 $(U)dgn_yacc.c $(INCL)\dgn_comp.h : $(U)dgn_comp.y
438 @echo We will copy the prebuilt $(U)dgn_yacc.c and
439 @echo dgn_comp.h from $(SSYS) into $(UTIL) and use them.
440 @copy $(SSYS)\dgn_yacc.c $(U)dgn_yacc.c >nul
441 @copy $(SSYS)\dgn_comp.h $(INCL)\dgn_comp.h >nul
442 @echo /**/ >>$(U)dgn_yacc.c
443 @echo /**/ >>$(INCL)\dgn_comp.h
445 $(U)dgn_$(LEX).c: $(U)dgn_comp.l
446 @echo We will copy the prebuilt dgn_lex.c
447 @echo from $(SSYS) into $(UTIL) and use it.
448 @copy $(SSYS)\dgn_lex.c $@ >nul
451 #==========================================
452 # Create directory for holding object files
453 #==========================================
456 if not exist $(OBJ)\*.* echo creating directory $(OBJ)
457 if not exist $(OBJ)\*.* mkdir $(OBJ)
458 echo directory created >$@
460 #==========================================
461 # Notify of any CL environment variables
462 # in effect since they change the compiler
464 #==========================================
468 @echo Warning, the CL Environment variable is defined:
472 @echo NOTE: This build will include tile support.
475 #==========================================
476 #=========== SECONDARY TARGETS ============
477 #==========================================
479 #===========================================
480 # Header files NOT distributed in ..\include
481 #===========================================
483 $(INCL)\win32api.h: $(NTSYS)\win32api.h
484 copy $(NTSYS)\win32api.h $@
487 #==========================================
488 # DLB utility and nhdat file creation
489 #==========================================
491 $(U)dlb_main.exe: $(DLBOBJ) $(O)dlb.o
492 $(link) $(LFLAGSU) -out:$@ @<<$(@B).lnk
499 $(O)dlb.o: $(O)dlb_main.o $(O)alloc.o $(O)panic.o $(INCL)\dlb.h
500 $(CC) $(CFLAGSU) /Fo$@ $(SRC)\dlb.c
502 $(O)dlb_main.o: $(UTIL)\dlb_main.c $(INCL)\config.h $(INCL)\dlb.h
503 $(CC) $(CFLAGSU) /Fo$@ $(UTIL)\dlb_main.c
505 #$(DAT)\porthelp: $(NTSYS)\porthelp
506 # copy $(NTSYS)\porthelp $@ >nul
508 $(DAT)\nhdat: $(U)dlb_main.exe $(DAT)\data $(DAT)\oracles $(OPTIONS_FILE) \
509 $(DAT)\quest.dat $(DAT)\rumors $(DAT)\help $(DAT)\hh $(DAT)\cmdhelp \
510 $(DAT)\history $(DAT)\opthelp $(DAT)\wizhelp $(DAT)\dungeon \
511 $(DAT)\license $(O)sp_lev.tag
514 echo oracles >>dlb.lst
515 if exist options echo options >>dlb.lst
516 if exist ttyoptions echo ttyoptions >>dlb.lst
517 if exist guioptions echo guioptions >>dlb.lst
518 if exist porthelp echo porthelp >>dlb.lst
519 echo quest.dat >>dlb.lst
520 echo rumors >>dlb.lst
523 echo cmdhelp >>dlb.lst
524 echo history >>dlb.lst
525 echo opthelp >>dlb.lst
526 echo wizhelp >>dlb.lst
527 echo dungeon >>dlb.lst
528 echo license >>dlb.lst
529 for %%N in (*.lev) do echo %%N >>dlb.lst
530 $(U)dlb_main cIf dlb.lst nhdat
533 #==========================================
535 #==========================================
537 $(SRC)\tile.c: $(U)tilemap.exe
538 echo A new $@ has been created
541 $(U)tilemap.exe: $(O)tilemap.o
542 $(link) $(LFLAGSU) -out:$@ $(O)tilemap.o
544 $(O)tilemap.o: $(WSHR)\tilemap.c $(HACK_H)
545 $(CC) $(CFLAGSU) -Fo$@ $(WSHR)\tilemap.c
547 $(O)tiletx32.o: $(WSHR)\tilemap.c $(HACK_H)
548 $(CC) $(CFLAGSU) /DTILETEXT /DTILE_X=32 /DTILE_Y=32 -Fo$@ $(WSHR)\tilemap.c
550 $(O)tiletxt.o: $(WSHR)\tilemap.c $(HACK_H)
551 $(CC) $(CFLAGSU) /DTILETEXT -Fo$@ $(WSHR)\tilemap.c
553 $(O)gifread.o: $(WSHR)\gifread.c $(CONFIG_H) $(TILE_H)
554 $(CC) $(CFLAGSU) -I$(WSHR) -Fo$@ $(WSHR)\gifread.c
556 $(O)gifrd32.o: $(WSHR)\gifread.c $(CONFIG_H) $(TILE_H)
557 $(CC) $(CFLAGSU) -I$(WSHR) /DTILE_X=32 /DTILE_Y=32 -Fo$@ $(WSHR)\gifread.c
559 $(O)ppmwrite.o: $(WSHR)\ppmwrite.c $(CONFIG_H) $(TILE_H)
560 $(CC) $(CFLAGSU) -I$(WSHR) -Fo$@ $(WSHR)\ppmwrite.c
562 $(O)tiletext.o: $(WSHR)\tiletext.c $(CONFIG_H) $(TILE_H)
563 $(CC) $(CFLAGSU) -I$(WSHR) -Fo$@ $(WSHR)\tiletext.c
565 $(O)tilete32.o: $(WSHR)\tiletext.c $(CONFIG_H) $(TILE_H)
566 $(CC) $(CFLAGSU) -I$(WSHR) /DTILE_X=32 /DTILE_Y=32 -Fo$@ $(WSHR)\tiletext.c
568 $(SWINCE)\tiles.bmp: $(U)tile2bmp.exe $(TILEFILES)
569 echo Creating 16x16 binary tile files (this may take some time)
572 #$(TILEBMP32): $(TILEUTIL32) $(TILEFILES32)
573 # echo Creating 32x32 binary tile files (this may take some time)
574 # $(U)til2bm32 $(TILEBMP32)
577 $(U)tile2bmp.exe: $(O)tile2bmp.o $(TEXT_IO)
579 $(link) $(LFLAGSU) -out:$@ @<<$(@B).lnk
585 $(U)til2bm32.exe: $(O)til2bm32.o $(TEXT_IO32)
587 $(link) $(LFLAGSU) -out:$@ @<<$(@B).lnk
593 $(O)tile2bmp.o: $(WSHR)\tile2bmp.c $(HACK_H) $(TILE_H) $(INCL)\win32api.h
594 $(CC) $(CFLAGSU) -I$(WSHR) /DPACKED_FILE /Fo$@ $(WSHR)\tile2bmp.c
596 $(O)til2bm32.o: $(WSHR)\tile2bmp.c $(HACK_H) $(TILE_H) $(INCL)\win32api.h
597 $(CC) $(CFLAGSU) -I$(WSHR) /DPACKED_FILE /DTILE_X=32 /DTILE_Y=32 /Fo$@ $(WSHR)\tile2bmp.c
599 #===================================================================
601 #===================================================================
607 $(DAT)\data: $(UTIL)\makedefs.exe
610 $(DAT)\rumors: $(UTIL)\makedefs.exe $(DAT)\rumors.tru $(DAT)\rumors.fal
613 $(DAT)\quest.dat: $(UTIL)\makedefs.exe $(DAT)\quest.txt
616 $(DAT)\oracles: $(UTIL)\makedefs.exe $(DAT)\oracles.txt
619 $(DAT)\dungeon: $(UTIL)\makedefs.exe $(DAT)\dungeon.def
622 $(U)dgn_comp dungeon.pdf
629 #$(O)nttty.o: $(HACK_H) $(TILE_H) $(INCL)\win32api.h $(NTSYS)\nttty.c
630 # $(CC) $(CFLAGSU) -I$(WSHR) -Fo$@ $(NTSYS)\nttty.c
631 #$(O)winnt.o: $(HACK_H) $(INCL)\win32api.h $(NTSYS)\winnt.c
632 # $(CC) $(CFLAGSU) -Fo$@ $(NTSYS)\winnt.c
633 #$(O)ntsound.o: $(HACK_H) $(NTSYS)\ntsound.c
634 # $(CC) $(CFLAGSU) -Fo$@ $(NTSYS)\ntsound.c
635 #$(O)mapimail.o: $(HACK_H) $(INCL)\nhlan.h $(NTSYS)\mapimail.c
636 # $(CC) $(CFLAGSU) -DMAPI_VERBOSE -Fo$@ $(NTSYS)\mapimail.c
642 $(O)panic.o: $(U)panic.c $(CONFIG_H)
643 $(CC) $(CFLAGSU) -Fo$@ $(U)panic.c
646 # The rest are stolen from sys/unix/Makefile.src,
647 # with slashes changed to back-slashes
648 # and -c (which is included in CFLAGSU) substituted
649 # with -Fo$@ , but otherwise untouched. That
650 # means that there is some irrelevant stuff
651 # in here, but maintenance should be easier.
653 $(O)tos.o: ..\sys\atari\tos.c $(HACK_H) $(INCL)\tcap.h
654 $(CC) $(CFLAGSU) -Fo$@ ..\sys\atari\tos.c
655 $(O)pcmain.o: ..\sys\share\pcmain.c $(HACK_H) $(INCL)\dlb.h \
657 $(CC) $(CFLAGSU) -Fo$@ ..\sys\share\pcmain.c
658 $(O)pcsys.o: ..\sys\share\pcsys.c $(HACK_H)
659 $(CC) $(CFLAGSU) -Fo$@ ..\sys\share\pcsys.c
660 $(O)pctty.o: ..\sys\share\pctty.c $(HACK_H)
661 $(CC) $(CFLAGSU) -Fo$@ ..\sys\share\pctty.c
662 $(O)pcunix.o: ..\sys\share\pcunix.c $(HACK_H)
663 $(CC) $(CFLAGSU) -Fo$@ ..\sys\share\pcunix.c
664 $(O)random.o: ..\sys\share\random.c $(HACK_H)
665 $(CC) $(CFLAGSU) -Fo$@ ..\sys\share\random.c
666 $(O)ioctl.o: ..\sys\share\ioctl.c $(HACK_H) $(INCL)\tcap.h
667 $(CC) $(CFLAGSU) -Fo$@ ..\sys\share\ioctl.c
668 $(O)unixtty.o: ..\sys\share\unixtty.c $(HACK_H)
669 $(CC) $(CFLAGSU) -Fo$@ ..\sys\share\unixtty.c
670 $(O)unixmain.o: ..\sys\unix\unixmain.c $(HACK_H) $(INCL)\dlb.h
671 $(CC) $(CFLAGSU) -Fo$@ ..\sys\unix\unixmain.c
672 $(O)unixunix.o: ..\sys\unix\unixunix.c $(HACK_H)
673 $(CC) $(CFLAGSU) -Fo$@ ..\sys\unix\unixunix.c
674 $(O)bemain.o: ..\sys\be\bemain.c $(HACK_H) $(INCL)\dlb.h
675 $(CC) $(CFLAGSU) -Fo$@ ..\sys\be\bemain.c
676 $(O)getline.o: ..\win\tty\getline.c $(HACK_H) $(INCL)\func_tab.h
677 $(CC) $(CFLAGSU) -Fo$@ ..\win\tty\getline.c
678 $(O)termcap.o: ..\win\tty\termcap.c $(HACK_H) $(INCL)\tcap.h
679 $(CC) $(CFLAGSU) -Fo$@ ..\win\tty\termcap.c
680 $(O)topl.o: ..\win\tty\topl.c $(HACK_H) $(INCL)\tcap.h
681 $(CC) $(CFLAGSU) -Fo$@ ..\win\tty\topl.c
682 $(O)wintty.o: ..\win\tty\wintty.c $(HACK_H) $(INCL)\dlb.h \
683 $(INCL)\patchlevel.h $(INCL)\tcap.h
684 $(CC) $(CFLAGSU) -Fo$@ ..\win\tty\wintty.c
685 $(O)Window.o: ..\win\X11\Window.c $(INCL)\xwindowp.h $(INCL)\xwindow.h \
687 $(CC) $(CFLAGSU) -Fo$@ ..\win\X11\Window.c
688 $(O)dialogs.o: ..\win\X11\dialogs.c $(CONFIG_H)
689 $(CC) $(CFLAGSU) -Fo$@ ..\win\X11\dialogs.c
690 $(O)winX.o: ..\win\X11\winX.c $(HACK_H) $(INCL)\winX.h $(INCL)\dlb.h \
691 $(INCL)\patchlevel.h ..\win\X11\nh72icon \
692 ..\win\X11\nh56icon ..\win\X11\nh32icon
693 $(CC) $(CFLAGSU) -Fo$@ ..\win\X11\winX.c
694 $(O)winmap.o: ..\win\X11\winmap.c $(INCL)\xwindow.h $(HACK_H) $(INCL)\dlb.h \
695 $(INCL)\winX.h $(INCL)\tile2x11.h
696 $(CC) $(CFLAGSU) -Fo$@ ..\win\X11\winmap.c
697 $(O)winmenu.o: ..\win\X11\winmenu.c $(HACK_H) $(INCL)\winX.h
698 $(CC) $(CFLAGSU) -Fo$@ ..\win\X11\winmenu.c
699 $(O)winmesg.o: ..\win\X11\winmesg.c $(INCL)\xwindow.h $(HACK_H) $(INCL)\winX.h
700 $(CC) $(CFLAGSU) -Fo$@ ..\win\X11\winmesg.c
701 $(O)winmisc.o: ..\win\X11\winmisc.c $(HACK_H) $(INCL)\func_tab.h \
703 $(CC) $(CFLAGSU) -Fo$@ ..\win\X11\winmisc.c
704 $(O)winstat.o: ..\win\X11\winstat.c $(HACK_H) $(INCL)\winX.h
705 $(CC) $(CFLAGSU) -Fo$@ ..\win\X11\winstat.c
706 $(O)wintext.o: ..\win\X11\wintext.c $(HACK_H) $(INCL)\winX.h $(INCL)\xwindow.h
707 $(CC) $(CFLAGSU) -Fo$@ ..\win\X11\wintext.c
708 $(O)winval.o: ..\win\X11\winval.c $(HACK_H) $(INCL)\winX.h
709 $(CC) $(CFLAGSU) -Fo$@ ..\win\X11\winval.c
710 $(O)tile.o: $(SRC)\tile.c $(HACK_H)
711 $(O)gnaskstr.o: ..\win\gnome\gnaskstr.c ..\win\gnome\gnaskstr.h \
712 ..\win\gnome\gnmain.h
713 $(CC) $(CFLAGSU) $(GNOMEINC) -c ..\win\gnome\gnaskstr.c
714 $(O)gnbind.o: ..\win\gnome\gnbind.c ..\win\gnome\gnbind.h ..\win\gnome\gnmain.h \
715 ..\win\gnome\gnaskstr.h ..\win\gnome\gnyesno.h
716 $(CC) $(CFLAGSU) $(GNOMEINC) -c ..\win\gnome\gnbind.c
717 $(O)gnglyph.o: ..\win\gnome\gnglyph.c ..\win\gnome\gnglyph.h
718 $(CC) $(CFLAGSU) $(GNOMEINC) -c ..\win\gnome\gnglyph.c
719 $(O)gnmain.o: ..\win\gnome\gnmain.c ..\win\gnome\gnmain.h ..\win\gnome\gnsignal.h \
720 ..\win\gnome\gnbind.h ..\win\gnome\gnopts.h $(HACK_H) \
722 $(CC) $(CFLAGSU) $(GNOMEINC) -c ..\win\gnome\gnmain.c
723 $(O)gnmap.o: ..\win\gnome\gnmap.c ..\win\gnome\gnmap.h ..\win\gnome\gnglyph.h \
724 ..\win\gnome\gnsignal.h $(HACK_H)
725 $(CC) $(CFLAGSU) $(GNOMEINC) -c ..\win\gnome\gnmap.c
726 $(O)gnmenu.o: ..\win\gnome\gnmenu.c ..\win\gnome\gnmenu.h ..\win\gnome\gnmain.h \
727 ..\win\gnome\gnbind.h
728 $(CC) $(CFLAGSU) $(GNOMEINC) -c ..\win\gnome\gnmenu.c
729 $(O)gnmesg.o: ..\win\gnome\gnmesg.c ..\win\gnome\gnmesg.h ..\win\gnome\gnsignal.h
730 $(CC) $(CFLAGSU) $(GNOMEINC) -c ..\win\gnome\gnmesg.c
731 $(O)gnopts.o: ..\win\gnome\gnopts.c ..\win\gnome\gnopts.h ..\win\gnome\gnglyph.h \
732 ..\win\gnome\gnmain.h ..\win\gnome\gnmap.h $(HACK_H)
733 $(CC) $(CFLAGSU) $(GNOMEINC) -c ..\win\gnome\gnopts.c
734 $(O)gnplayer.o: ..\win\gnome\gnplayer.c ..\win\gnome\gnplayer.h \
735 ..\win\gnome\gnmain.h $(HACK_H)
736 $(CC) $(CFLAGSU) $(GNOMEINC) -c ..\win\gnome\gnplayer.c
737 $(O)gnsignal.o: ..\win\gnome\gnsignal.c ..\win\gnome\gnsignal.h \
738 ..\win\gnome\gnmain.h
739 $(CC) $(CFLAGSU) $(GNOMEINC) -c ..\win\gnome\gnsignal.c
740 $(O)gnstatus.o: ..\win\gnome\gnstatus.c ..\win\gnome\gnstatus.h \
741 ..\win\gnome\gnsignal.h ..\win\gnome\gn_xpms.h \
742 ..\win\gnome\gnomeprv.h
743 $(CC) $(CFLAGSU) $(GNOMEINC) -c ..\win\gnome\gnstatus.c
744 $(O)gntext.o: ..\win\gnome\gntext.c ..\win\gnome\gntext.h ..\win\gnome\gnmain.h \
745 ..\win\gnome\gn_rip.h
746 $(CC) $(CFLAGSU) $(GNOMEINC) -c ..\win\gnome\gntext.c
747 $(O)gnyesno.o: ..\win\gnome\gnyesno.c ..\win\gnome\gnbind.h ..\win\gnome\gnyesno.h
748 $(CC) $(CFLAGSU) $(GNOMEINC) -c ..\win\gnome\gnyesno.c
749 $(O)wingem.o: ..\win\gem\wingem.c $(HACK_H) $(INCL)\func_tab.h $(INCL)\dlb.h \
750 $(INCL)\patchlevel.h $(INCL)\wingem.h
751 $(CC) $(CFLAGSU) -Fo$@ ..\win\gem\wingem.c
752 $(O)wingem1.o: ..\win\gem\wingem1.c $(INCL)\gem_rsc.h $(INCL)\load_img.h \
753 $(INCL)\wintype.h $(INCL)\wingem.h
754 $(CC) $(CFLAGSU) -Fo$@ ..\win\gem\wingem1.c
755 $(O)load_img.o: ..\win\gem\load_img.c $(INCL)\load_img.h
756 $(CC) $(CFLAGSU) -Fo$@ ..\win\gem\load_img.c
757 $(O)tile.o: $(SRC)\tile.c $(HACK_H)
758 $(O)qt_win.o: ..\win\Qt\qt_win.cpp $(HACK_H) $(INCL)\func_tab.h \
759 $(INCL)\dlb.h $(INCL)\patchlevel.h $(INCL)\qt_win.h \
760 $(INCL)\qt_clust.h $(INCL)\qt_kde0.h \
761 $(INCL)\qt_xpms.h qt_win.moc qt_kde0.moc
762 $(CXX) $(CXXFLAGS) -c ..\win\Qt\qt_win.cpp
763 $(O)qt_clust.o: ..\win\Qt\qt_clust.cpp $(INCL)\qt_clust.h
764 $(CXX) $(CXXFLAGS) -c ..\win\Qt\qt_clust.cpp
765 $(O)monstr.o: $(SRC)\monstr.c $(CONFIG_H)
766 $(O)vis_tab.o: $(SRC)\vis_tab.c $(CONFIG_H) $(INCL)\vis_tab.h
767 $(O)allmain.o: $(SRC)\allmain.c $(HACK_H)
768 $(O)alloc.o: $(SRC)\alloc.c $(CONFIG_H)
769 $(O)apply.o: $(SRC)\apply.c $(HACK_H) $(INCL)\edog.h
770 $(O)artifact.o: $(SRC)\artifact.c $(HACK_H) $(INCL)\artifact.h $(INCL)\artilist.h
771 $(O)attrib.o: $(SRC)\attrib.c $(HACK_H) $(INCL)\artifact.h
772 $(O)ball.o: $(SRC)\ball.c $(HACK_H)
773 $(O)bones.o: $(SRC)\bones.c $(HACK_H) $(INCL)\lev.h
774 $(O)botl.o: $(SRC)\botl.c $(HACK_H)
775 $(O)cmd.o: $(SRC)\cmd.c $(HACK_H) $(INCL)\func_tab.h
776 $(O)dbridge.o: $(SRC)\dbridge.c $(HACK_H)
777 $(O)decl.o: $(SRC)\decl.c $(HACK_H)
778 $(O)detect.o: $(SRC)\detect.c $(HACK_H) $(INCL)\artifact.h
779 $(O)dig.o: $(SRC)\dig.c $(HACK_H) $(INCL)\edog.h
780 $(O)display.o: $(SRC)\display.c $(HACK_H)
781 $(O)dlb.o: $(SRC)\dlb.c $(CONFIG_H) $(INCL)\dlb.h
782 $(O)do.o: $(SRC)\do.c $(HACK_H) $(INCL)\lev.h
783 $(O)do_name.o: $(SRC)\do_name.c $(HACK_H)
784 $(O)do_wear.o: $(SRC)\do_wear.c $(HACK_H)
785 $(O)dog.o: $(SRC)\dog.c $(HACK_H) $(INCL)\edog.h
786 $(O)dogmove.o: $(SRC)\dogmove.c $(HACK_H) $(INCL)\mfndpos.h $(INCL)\edog.h
787 $(O)dokick.o: $(SRC)\dokick.c $(HACK_H) $(INCL)\eshk.h
788 $(O)dothrow.o: $(SRC)\dothrow.c $(HACK_H)
789 $(O)drawing.o: $(SRC)\drawing.c $(HACK_H) $(INCL)\tcap.h
790 $(O)dungeon.o: $(SRC)\dungeon.c $(HACK_H) $(INCL)\dgn_file.h $(INCL)\dlb.h
791 $(O)eat.o: $(SRC)\eat.c $(HACK_H)
792 $(O)end.o: $(SRC)\end.c $(HACK_H) $(INCL)\eshk.h $(INCL)\dlb.h
793 $(O)engrave.o: $(SRC)\engrave.c $(HACK_H) $(INCL)\lev.h
794 $(O)exper.o: $(SRC)\exper.c $(HACK_H)
795 $(O)explode.o: $(SRC)\explode.c $(HACK_H)
796 $(O)extralev.o: $(SRC)\extralev.c $(HACK_H)
797 $(O)files.o: $(SRC)\files.c $(HACK_H) $(INCL)\dlb.h
798 $(O)fountain.o: $(SRC)\fountain.c $(HACK_H)
799 $(O)hack.o: $(SRC)\hack.c $(HACK_H)
800 $(O)hacklib.o: $(SRC)\hacklib.c $(HACK_H)
801 $(O)invent.o: $(SRC)\invent.c $(HACK_H) $(INCL)\artifact.h
802 $(O)light.o: $(SRC)\light.c $(HACK_H) $(INCL)\lev.h
803 $(O)lock.o: $(SRC)\lock.c $(HACK_H)
804 $(O)mail.o: $(SRC)\mail.c $(HACK_H) $(INCL)\mail.h
805 $(O)makemon.o: $(SRC)\makemon.c $(HACK_H) $(INCL)\epri.h $(INCL)\emin.h \
807 $(O)mapglyph.o: $(SRC)\mapglyph.c $(HACK_H)
808 $(O)mcastu.o: $(SRC)\mcastu.c $(HACK_H)
809 $(O)mhitm.o: $(SRC)\mhitm.c $(HACK_H) $(INCL)\artifact.h $(INCL)\edog.h
810 $(O)mhitu.o: $(SRC)\mhitu.c $(HACK_H) $(INCL)\artifact.h $(INCL)\edog.h
811 $(O)minion.o: $(SRC)\minion.c $(HACK_H) $(INCL)\emin.h $(INCL)\epri.h
812 $(O)mklev.o: $(SRC)\mklev.c $(HACK_H)
813 $(O)mkmap.o: $(SRC)\mkmap.c $(HACK_H) $(INCL)\sp_lev.h
814 $(O)mkmaze.o: $(SRC)\mkmaze.c $(HACK_H) $(INCL)\sp_lev.h $(INCL)\lev.h
815 $(O)mkobj.o: $(SRC)\mkobj.c $(HACK_H) $(INCL)\artifact.h
816 $(O)mkroom.o: $(SRC)\mkroom.c $(HACK_H)
817 $(O)mon.o: $(SRC)\mon.c $(HACK_H) $(INCL)\mfndpos.h $(INCL)\edog.h
818 $(O)mondata.o: $(SRC)\mondata.c $(HACK_H) $(INCL)\eshk.h $(INCL)\epri.h
819 $(O)monmove.o: $(SRC)\monmove.c $(HACK_H) $(INCL)\mfndpos.h $(INCL)\artifact.h
820 $(O)monst.o: $(SRC)\monst.c $(CONFIG_H) $(INCL)\permonst.h $(INCL)\align.h \
821 $(INCL)\monattk.h $(INCL)\monflag.h $(INCL)\monsym.h \
822 $(INCL)\dungeon.h $(INCL)\eshk.h $(INCL)\vault.h \
823 $(INCL)\epri.h $(INCL)\color.h
824 $(O)mplayer.o: $(SRC)\mplayer.c $(HACK_H)
825 $(O)mthrowu.o: $(SRC)\mthrowu.c $(HACK_H)
826 $(O)muse.o: $(SRC)\muse.c $(HACK_H) $(INCL)\edog.h
827 $(O)music.o: $(SRC)\music.c $(HACK_H) #interp.c
828 $(O)o_init.o: $(SRC)\o_init.c $(HACK_H) $(INCL)\lev.h
829 $(O)objects.o: $(SRC)\objects.c $(CONFIG_H) $(INCL)\obj.h $(INCL)\objclass.h \
830 $(INCL)\prop.h $(INCL)\skills.h $(INCL)\color.h
831 $(O)objnam.o: $(SRC)\objnam.c $(HACK_H)
832 $(O)options.o: $(SRC)\options.c $(CONFIG_H) $(INCL)\objclass.h $(INCL)\flag.h \
833 $(HACK_H) $(INCL)\tcap.h
834 $(O)pager.o: $(SRC)\pager.c $(HACK_H) $(INCL)\dlb.h
835 $(O)pickup.o: $(SRC)\pickup.c $(HACK_H)
836 $(O)pline.o: $(SRC)\pline.c $(HACK_H) $(INCL)\epri.h $(INCL)\edog.h
837 $(O)polyself.o: $(SRC)\polyself.c $(HACK_H)
838 $(O)potion.o: $(SRC)\potion.c $(HACK_H)
839 $(O)pray.o: $(SRC)\pray.c $(HACK_H) $(INCL)\epri.h
840 $(O)priest.o: $(SRC)\priest.c $(HACK_H) $(INCL)\mfndpos.h $(INCL)\eshk.h \
841 $(INCL)\epri.h $(INCL)\emin.h
842 $(O)quest.o: $(SRC)\quest.c $(HACK_H) $(INCL)\qtext.h
843 $(O)questpgr.o: $(SRC)\questpgr.c $(HACK_H) $(INCL)\dlb.h $(INCL)\qtext.h
844 $(O)read.o: $(SRC)\read.c $(HACK_H)
845 $(O)rect.o: $(SRC)\rect.c $(HACK_H)
846 $(O)region.o: $(SRC)\region.c $(HACK_H) $(INCL)\lev.h
847 $(O)restore.o: $(SRC)\restore.c $(HACK_H) $(INCL)\lev.h $(INCL)\tcap.h
848 $(O)rip.o: $(SRC)\rip.c $(HACK_H)
849 $(O)rnd.o: $(SRC)\rnd.c $(HACK_H)
850 $(O)role.o: $(SRC)\role.c $(HACK_H)
851 $(O)rumors.o: $(SRC)\rumors.c $(HACK_H) $(INCL)\lev.h $(INCL)\dlb.h
852 $(O)save.o: $(SRC)\save.c $(HACK_H) $(INCL)\lev.h
853 $(O)shk.o: $(SRC)\shk.c $(HACK_H) $(INCL)\eshk.h
854 $(O)shknam.o: $(SRC)\shknam.c $(HACK_H) $(INCL)\eshk.h
855 $(O)sit.o: $(SRC)\sit.c $(HACK_H) $(INCL)\artifact.h
856 $(O)sounds.o: $(SRC)\sounds.c $(HACK_H) $(INCL)\edog.h
857 $(O)sp_lev.o: $(SRC)\sp_lev.c $(HACK_H) $(INCL)\dlb.h $(INCL)\sp_lev.h
858 $(O)spell.o: $(SRC)\spell.c $(HACK_H)
859 $(O)steal.o: $(SRC)\steal.c $(HACK_H)
860 $(O)steed.o: $(SRC)\steed.c $(HACK_H)
861 $(O)teleport.o: $(SRC)\teleport.c $(HACK_H)
862 $(O)timeout.o: $(SRC)\timeout.c $(HACK_H) $(INCL)\lev.h
863 $(O)topten.o: $(SRC)\topten.c $(HACK_H) $(INCL)\dlb.h $(INCL)\patchlevel.h
864 $(O)track.o: $(SRC)\track.c $(HACK_H)
865 $(O)trap.o: $(SRC)\trap.c $(HACK_H)
866 $(O)u_init.o: $(SRC)\u_init.c $(HACK_H)
867 $(O)uhitm.o: $(SRC)\uhitm.c $(HACK_H)
868 $(O)vault.o: $(SRC)\vault.c $(HACK_H) $(INCL)\vault.h
869 $(O)version.o: $(SRC)\version.c $(HACK_H) $(INCL)\date.h $(INCL)\patchlevel.h
870 $(O)vision.o: $(SRC)\vision.c $(HACK_H) $(INCL)\vis_tab.h
871 $(O)weapon.o: $(SRC)\weapon.c $(HACK_H)
872 $(O)were.o: $(SRC)\were.c $(HACK_H)
873 $(O)wield.o: $(SRC)\wield.c $(HACK_H)
874 $(O)windows.o: $(SRC)\windows.c $(HACK_H) $(INCL)\wingem.h $(INCL)\winGnome.h
875 $(O)wizard.o: $(SRC)\wizard.c $(HACK_H) $(INCL)\qtext.h
876 $(O)worm.o: $(SRC)\worm.c $(HACK_H) $(INCL)\lev.h
877 $(O)worn.o: $(SRC)\worn.c $(HACK_H)
878 $(O)write.o: $(SRC)\write.c $(HACK_H)
879 $(O)zap.o: $(SRC)\zap.c $(HACK_H)