makefile 3.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. #############################################################################
  2. #
  3. # Makefile for AllGuard.exe
  4. #
  5. # Environment variable Requirements:
  6. #
  7. # INCLUDE=foo // can be set to anything, must be set
  8. # PATH= // must have proper nmake on path
  9. # FEDROOT=<path> // MUST point to base of fed src enlistment
  10. # BCBINDIR=<path> // optional, unless using BCHK=
  11. # TTBINDIR=<path> // optional, unless using TRUETIME=
  12. #
  13. # nmake args:
  14. #
  15. # Clean // will delete all files in destination dir
  16. # Full // will Clean, then build all derived files
  17. # debug= // builds a debug build (default)
  18. # retail= // builds a retail build
  19. # test= // retail but with the _DEBUG preprocessor symbol defined
  20. # // NOT valid in combination with BCHK=, TRUETIME=, or ICAP=
  21. # VER= // must have this argument, \\msr\federation\builds\$(VER) is created/needed
  22. # BCHK= // if you want to do a boundschecker build.
  23. # note: you must have BC already installed locally and define BCBINDIR to
  24. # point to the directory where nmcl.exe and nmlink.exe reside.
  25. # You can use the BCOPTS variable to add options to the BC compile.
  26. # TRUETIME= // if you want to instrument the build using Numega TrueTime
  27. # note: you must have TrueTime already installed locally and define TTBINDIR to
  28. # point to the directory where the TrueTime nmcl.exe and nmlink.exe reside.
  29. # You can use the TTOPTS variable to add options to the TT compile.
  30. # VERBOSE= // if you want verbose build mode. (default is non-verbose)
  31. #
  32. # All derived files (temp files, .res, output of midl, *.obj, *.exe/.dll...
  33. # are placed directly into the appropriate tree under $(FEDROOT)\Objs.
  34. #
  35. # The $(FEDROOT)\Objs tree is created on demand.
  36. # Since no derived files are placed in the source tree, multiple builds
  37. # can be run SIMULTANEOUSLY.
  38. #
  39. #############################################################################
  40. # Environment Variables
  41. #
  42. SRCROOT=AllGuard
  43. DESTROOT=AllGuard
  44. MAINTARGROOT=AllGuard
  45. MAINTARGEXT=exe
  46. PROJCLEAN=ProjectClean
  47. ARTPATH=$(FEDROOT)\Objs\Artwork
  48. MACHINEEXE=$(ARTPATH)\machine.exe
  49. #############################################################################
  50. # Rules
  51. #
  52. !include "..\makefile.inc"
  53. #############################################################################
  54. #
  55. # Dependencies
  56. #
  57. !if 0
  58. First: $(MAINTARGFULLPATH) $(ARTPATH)\$(MAINTARGROOT).$(MAINTARGEXT) $(MACHINEEXE)
  59. $(ARTPATH):
  60. @if not exist $(ARTPATH)\. md $(ARTPATH)
  61. !endif
  62. $(MAINTARGFULLPATH): $(DESTDIR) $(DESTDIR)\..\MSRGuard\MSRGuard.exe Allegiance.ini machine.ini
  63. $(DESTDIR)\..\MSRGuard\MSRGuard.exe /s /ini Allegiance.ini /mini machine.ini /bind $(MAINTARGFULLPATH) | more
  64. if exist $(DESTDIR)\..\MSRGuard\MSRGuard.sym copy $(DESTDIR)\..\MSRGuard\MSRGuard.sym $(DESTDIR)\AllGuard.*
  65. if exist $(DESTDIR)\..\MSRGuard\MSRGuard.pdb copy $(DESTDIR)\..\MSRGuard\MSRGuard.pdb $(DESTDIR)\AllGuard.*
  66. if exist $(DESTDIR)\..\MSRGuard\MSRGuard.dbg copy $(DESTDIR)\..\MSRGuard\MSRGuard.dbg $(DESTDIR)\AllGuard.*
  67. if exist $(DESTDIR)\..\MSRGuard\MSRGuard.map copy $(DESTDIR)\..\MSRGuard\MSRGuard.map $(DESTDIR)\AllGuard.*
  68. !if 0
  69. $(ARTPATH)\$(MAINTARGROOT).$(MAINTARGEXT): $(MAINTARGFULLPATH) $(ARTPATH)
  70. @echo Copying $(MAINTARGFULLPATH) to $(ARTPATH)\$(MAINTARGROOT).$(MAINTARGEXT)
  71. copy /Y $(MAINTARGFULLPATH) $(ARTPATH)\$(MAINTARGROOT).$(MAINTARGEXT)
  72. $(MACHINEEXE): $(FEDROOT)\src\tools\build\machine.exe $(ARTPATH)
  73. @echo Copying $(FEDROOT)\src\tools\build\machine.exe to $(ARTPATH)
  74. copy /Y $(FEDROOT)\src\tools\build\machine.exe $(MACHINEEXE)
  75. !endif
  76. $(PROJCLEAN):
  77. $(REMDIR) $(DESTDIR)