home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / msdn_vcb / samples / vc98 / sdk / graphics / directx / foxbear / makefile < prev    next >
Makefile  |  1997-07-31  |  3KB  |  91 lines

  1. !include <win32.mak>
  2.  
  3. !if "$(nodebug)" == "1"
  4. OBJ_DIR = Retail
  5. makeflag = "nodebug=1"
  6. !else
  7. OBJ_DIR = Debug
  8.  
  9. !endif
  10.  
  11. proj=foxbear
  12.  
  13. mycflag=/I "..\misc" /I "..\fastfile"
  14.  
  15. OBJ_LIST = $(OBJ_DIR)\$(proj).obj $(OBJ_DIR)\gameproc.obj \
  16.            $(OBJ_DIR)\tile.obj $(OBJ_DIR)\plane.obj $(OBJ_DIR)\sprite.obj \
  17.            $(OBJ_DIR)\gfx.obj $(OBJ_DIR)\bmp.obj $(OBJ_DIR)\ddraw.obj \
  18.            $(OBJ_DIR)\fbsound.obj ..\misc\$(OBJ_DIR)\dsutil.obj
  19.  
  20. all: mkdir $(OBJ_DIR)\$(proj).exe
  21.  
  22. $(OBJ_DIR)\$(proj).obj:  $(proj).c
  23.     $(cc) $(cdebug) $(cflags) -Fo$(OBJ_DIR)\$(proj).obj $(mycflag) \
  24.     $(cvars) $(proj).c
  25.  
  26. $(OBJ_DIR)\gameproc.obj:  gameproc.c gameproc.h
  27.     $(cc) $(cdebug) $(cflags) -Fo$(OBJ_DIR)\gameproc.obj $(mycflag) \
  28.     $(cvars) gameproc.c
  29.  
  30. $(OBJ_DIR)\tile.obj:  tile.c tile.h
  31.     $(cc) $(cdebug) $(cflags) -Fo$(OBJ_DIR)\tile.obj $(mycflag) \
  32.     $(cvars) tile.c
  33.  
  34. $(OBJ_DIR)\plane.obj:  plane.c plane.h
  35.     $(cc) $(cdebug) $(cflags) -Fo$(OBJ_DIR)\plane.obj $(mycflag) \
  36.     $(cvars) plane.c
  37.  
  38. $(OBJ_DIR)\sprite.obj:  sprite.c sprite.h
  39.     $(cc) $(cdebug) $(cflags) -Fo$(OBJ_DIR)\sprite.obj $(mycflag) \
  40.     $(cvars) sprite.c
  41.  
  42. $(OBJ_DIR)\gfx.obj:  gfx.c gfx.h
  43.     $(cc) $(cdebug) $(cflags) -Fo$(OBJ_DIR)\gfx.obj $(mycflag) \
  44.     $(cvars) gfx.c
  45.  
  46. $(OBJ_DIR)\bmp.obj:  bmp.c
  47.     $(cc) $(cdebug) $(cflags) -Fo$(OBJ_DIR)\bmp.obj $(mycflag) \
  48.     $(cvars) bmp.c
  49.  
  50. $(OBJ_DIR)\ddraw.obj:  ddraw.c
  51.     $(cc) $(cdebug) $(cflags) -Fo$(OBJ_DIR)\ddraw.obj $(mycflag) \
  52.     $(cvars) ddraw.c
  53.  
  54. $(OBJ_DIR)\fbsound.obj:  fbsound.c fbsound.h
  55.     $(cc) $(cdebug) $(cflags) -Fo$(OBJ_DIR)\fbsound.obj $(mycflag) \
  56.     $(cvars) fbsound.c
  57.  
  58. ..\misc\$(OBJ_DIR)\dsutil.obj:  ..\misc\dsutil.c ..\misc\dsutil.h
  59.     $(cc) $(cdebug) $(cflags) -Fo..\misc\$(OBJ_DIR)\dsutil.obj $(mycflag) \
  60.     $(cvars) ..\misc\dsutil.c
  61.  
  62. $(OBJ_DIR)\$(proj).res: $(proj).rc
  63.    rc -r -fo $(OBJ_DIR)\$(proj).res $(proj).rc
  64.  
  65. $(OBJ_DIR)\$(proj).exe: $(OBJ_LIST) $(OBJ_DIR)\$(proj).res $(proj).def  
  66.      -cd ..\fastfile
  67.      -nmake -i $(makeflag)
  68.      -cd ..\foxbear
  69.      $(link) $(linkdebug) $(guiflags) -out:$(OBJ_DIR)\$(proj).exe \
  70.            $(OBJ_LIST) $(OBJ_DIR)\$(proj).res \
  71.            $(guilibs) ddraw.lib  dsound.lib winmm.lib dxguid.lib \
  72.            ..\fastfile\$(OBJ_DIR)\fastfile.lib
  73.  
  74. mkdir:
  75.     if not exist $(OBJ_DIR)\NUL md $(OBJ_DIR)
  76.     if not exist ..\misc\$(OBJ_DIR)\NUL md ..\misc\$(OBJ_DIR)
  77.     
  78. # Rules for cleaning out those old files
  79. clean:
  80.     -echo y | del Retail
  81.     -echo y | del Debug
  82.     -echo y | del ..\misc\Retail
  83.     -echo y | del ..\misc\Debug
  84.     -rd Retail
  85.     -rd Debug
  86.     -rd ..\misc\Retail
  87.     -rd ..\misc\Debug
  88.     -cd ..\fastfile
  89.     -nmake -i clean
  90.     -cd ..\foxbear
  91.