makefile 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. #
  2. # Makefile for Lobby.exe
  3. #
  4. # Environment variable Requirements:
  5. #
  6. # INCLUDE=foo // can be set to anything, must be set
  7. # PATH= // must have proper nmake on path
  8. # FEDROOT=<path> // MUST point to base of fed src enlistment
  9. #
  10. # nmake args: // order of arguments is not relevent
  11. #
  12. # Clean // will delete all files in destination dir
  13. # Full // will Clean, then build all derived files
  14. # Shell // opens os-specific cmd/command shell (helps to debug build)
  15. # RETAIL= // builds a retail build (default is DEBUG)
  16. # // no argument is used for debug builds
  17. #
  18. #
  19. # All derived files (temp files, .res, output of midl, *.obj, *.exe/.dll...
  20. # are placed directly into the appropriate tree under $(FEDROOT)\Objs.
  21. # The $(FEDROOT)\Objs tree is created on demand.
  22. # Since no derived files are placed in the source tree, multiple builds
  23. # can be run SIMULTANEOUSLY.
  24. # use _BCHK=1 if you want to do a boundschecker build.
  25. # note: you must have BC already installed locally and define BCBINDIR to
  26. # point to the directory where nmcl.exe and nmlink.exe reside. You
  27. # can use the BCOPTS variable to add options to the BC compile.
  28. SRCROOT=Lobby
  29. MAINTARGROOT=AllLobby
  30. MAINTARGEXT=exe
  31. SUBSYSTEM=CONSOLE
  32. CARGSLOCAL=/D"LOBBY" /D _WIN32_WINNT=0x0400 /D _ATL_STATIC_REGISTRY
  33. INCLUDELOCAL=$(FEDSRC)\ZLib;$(FEDSRC)\_Utility;$(FEDSRC)\inc\*.h;$(FEDROOT)\extern\vc\atl\inc;$(FEDROOT)\src\test\inc;$(DESTDIR)
  34. PCHROOT=pch
  35. PCHINC=$(FEDSRC)\ZLib\*.h $(FEDSRC)\_Utility\*.h $(FEDSRC)\inc\*.h $(FEDSRC)\Zone\*.h $(FEDSRC)\lobby\*.h
  36. MSGFILE=LobbyMsg
  37. SPLITSYMBOLS=1
  38. #IDLOUTPUT=LobbyModuleIDL
  39. !include "..\makefile.inc"
  40. RARGS = /l 0x409 /d"LOBBY" $(RARGSFLAVOR)
  41. OBJSCNST= $(DESTDIR)\lobby.obj \
  42. $(DESTDIR)\lobbyapp.obj \
  43. $(DESTDIR)\server.obj \
  44. $(DESTDIR)\client.obj \
  45. $(DESTDIR)\mission.obj \
  46. $(DESTDIR)\AutoUpdate.obj \
  47. $(DESTDIR)\broadcast.obj \
  48. $(DESTDIR)\zgameinfo.obj \
  49. $(DESTDIR)\LobbyEvents.obj \
  50. $(DESTDIR)\LobQGuids.obj
  51. OBJS=$(OBJSCNST) $(OBJSFLAVOR)
  52. LIBS= $(LIBSFLAVOR) \
  53. dplayx.lib kernel32.lib user32.lib gdi32.lib winspool.lib \
  54. comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib \
  55. uuid.lib odbc32.lib odbccp32.lib ws2_32.lib comctl32.lib \
  56. urlmon.lib winmm.lib version.lib zticket.lib zticketc.lib
  57. USERLIBS= \
  58. $(DESTDIR)\..\_utility\Utility.lib \
  59. $(DESTDIR)\..\zlib\zlib.lib \
  60. $(DESTDIR)\..\test\TCLib\TCLib.lib \
  61. $(DESTDIR)\..\sharemem\sharemem.lib
  62. RESFILE= $(DESTDIR)\$(MAINTARGROOT).res
  63. DLLFLAGS = /def:lobby.def
  64. LARGS=/LIBPATH:$(DXROOT)\lib \
  65. /LIBPATH:$(FEDEXT)\Vc\lib \
  66. /LIBPATH:$(FEDEXT)\Zone \
  67. /OUT:$(MAINTARGFULLPATH) /SUBSYSTEM:CONSOLE \
  68. $(LARGSFLAVOR) /PDB:$(PDB) $(NOLOGO) \
  69. /MACHINE:I386
  70. !include "../makeexe.inc"
  71. $(DESTDIR)\Lobby.obj : $(PCHFILE)
  72. $(DESTDIR)\LobbyApp.obj : $(PCHFILE)
  73. $(DESTDIR)\Server.obj : $(PCHFILE)
  74. $(DESTDIR)\Client.obj : $(PCHFILE)
  75. $(DESTDIR)\Mission.obj : $(PCHFILE)
  76. $(DESTDIR)\AutoUpdate.obj : $(PCHFILE)
  77. $(DESTDIR)\broadcast.obj : $(PCHFILE)
  78. $(DESTDIR)\zgameinfo.obj : $(PCHFILE)
  79. $(DESTDIR)\LobbyEvents.obj : $(PCHFILE)
  80. $(DESTDIR)\LobQGuids.obj : $(PCHFILE)
  81. $(RESFILE): $(DESTDIR)\$(MSGFILE).rc $(FEDSRC)\Inc\VerRes.rc $(MAINTARGROOT).rc
  82. @copy $(FEDSRC)\$(SRCROOT)\$(MAINTARGROOT).rc $(DESTDIR)
  83. @type $(DESTDIR)\$(MSGFILE).rc >>$(DESTDIR)\$(MAINTARGROOT).rc
  84. @echo #define FLAVOR "$(FLAVOR)" >>$(DESTDIR)\$(MAINTARGROOT).rc
  85. @type $(FEDSRC)\Inc\VerRes.rc >>$(DESTDIR)\$(MAINTARGROOT).rc
  86. @$(RC) $(RARGS) /Fo$(RESFILE) $(DESTDIR)\$(MAINTARGROOT).rc