SUCK IT GARRY!!!!!111!!!
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

196 lines
6.2KB

  1. #
  2. # launcher Makefile for x86 Linux
  3. #
  4. #
  5. HL_SRC_DIR=$(SOURCE_DIR)/cl_dll
  6. HL_SERVER_SRC_DIR=$(SOURCE_DIR)/dlls
  7. GAME_SHARED_SRC_DIR=$(SOURCE_DIR)/game_shared
  8. PM_SHARED_SRC_DIR=$(SOURCE_DIR)/pm_shared
  9. HL1_OBJ_DIR=$(BUILD_OBJ_DIR)/hl1_client
  10. PUBLIC_OBJ_DIR=$(HL1_OBJ_DIR)/public
  11. COMMON_OBJ_DIR=$(HL1_OBJ_DIR)/common
  12. GAME_SHARED_OBJ_DIR=$(HL1_OBJ_DIR)/game_shared
  13. HL1_SERVER_OBJ_DIR=$(HL1_OBJ_DIR)/server
  14. PM_SHARED_OBJ_DIR=$(HL1_OBJ_DIR)/pm_shared
  15. CFLAGS=$(BASE_CFLAGS) $(ARCH_CFLAGS) -DCLIENT_DLL -DCLIENT_WEAPONS -DHL_DLL -I/usr/include/malloc -D_snwprintf=swprintf \
  16. -DDISABLE_JUMP_ORIGIN -DDISABLE_VEC_ORIGIN
  17. INCLUDEDIRS=-I$(HL_SRC_DIR) -I../dlls -I../tfc -I$(COMMON_SRC_DIR) -I$(PUBLIC_SRC_DIR) -I../pm_shared -I../engine -I../utils/vgui/include -I ../game_shared -I../external
  18. ifeq ($(OS),Darwin)
  19. LDFLAGS=$(SHLIBLDFLAGS) $(CPP_LIB) -framework Carbon $(CFG)/vgui.dylib -L. -lSDL2-2.0.0
  20. else
  21. LDFLAGS=$(SHLIBLDFLAGS) $(CPP_LIB) -L$(CFG) vgui.so -L. libSDL2-2.0.so.0
  22. endif
  23. DO_CC=$(CPLUS) $(INCLUDEDIRS) $(CFLAGS) -o $@ -c $<
  24. DO_PUBLIC_CC=$(CPLUS) $(COMMON_INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
  25. DO_COMMON_CC=$(CPLUS) $(INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
  26. DO_PM_SHARED_CC=$(CC) $(INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
  27. #####################################################################
  28. HL1_OBJS = \
  29. $(HL1_OBJ_DIR)/hud_spectator.o \
  30. $(HL1_OBJ_DIR)/ev_hldm.o \
  31. $(HL1_OBJ_DIR)/hl/hl_baseentity.o \
  32. $(HL1_OBJ_DIR)/hl/hl_events.o \
  33. $(HL1_OBJ_DIR)/hl/hl_objects.o \
  34. $(HL1_OBJ_DIR)/hl/hl_weapons.o \
  35. $(HL1_OBJ_DIR)/hud.o \
  36. $(HL1_OBJ_DIR)/inputw32.o \
  37. $(HL1_OBJ_DIR)/ammo.o \
  38. $(HL1_OBJ_DIR)/ammo_secondary.o \
  39. $(HL1_OBJ_DIR)/ammohistory.o \
  40. $(HL1_OBJ_DIR)/battery.o \
  41. $(HL1_OBJ_DIR)/cdll_int.o \
  42. $(HL1_OBJ_DIR)/com_weapons.o \
  43. $(HL1_OBJ_DIR)/death.o \
  44. $(HL1_OBJ_DIR)/demo.o \
  45. $(HL1_OBJ_DIR)/entity.o \
  46. $(HL1_OBJ_DIR)/ev_common.o \
  47. $(HL1_OBJ_DIR)/events.o \
  48. $(HL1_OBJ_DIR)/flashlight.o \
  49. $(HL1_OBJ_DIR)/GameStudioModelRenderer.o \
  50. $(HL1_OBJ_DIR)/geiger.o \
  51. $(HL1_OBJ_DIR)/health.o \
  52. $(HL1_OBJ_DIR)/hud_bench.o \
  53. $(HL1_OBJ_DIR)/hud_benchtrace.o \
  54. $(HL1_OBJ_DIR)/hud_msg.o \
  55. $(HL1_OBJ_DIR)/hud_redraw.o \
  56. $(HL1_OBJ_DIR)/hud_update.o \
  57. $(HL1_OBJ_DIR)/in_camera.o \
  58. $(HL1_OBJ_DIR)/input.o \
  59. $(HL1_OBJ_DIR)/interpolation.o \
  60. $(HL1_OBJ_DIR)/menu.o \
  61. $(HL1_OBJ_DIR)/message.o \
  62. $(HL1_OBJ_DIR)/saytext.o \
  63. $(HL1_OBJ_DIR)/status_icons.o \
  64. $(HL1_OBJ_DIR)/statusbar.o \
  65. $(HL1_OBJ_DIR)/studio_util.o \
  66. $(HL1_OBJ_DIR)/StudioModelRenderer.o \
  67. $(HL1_OBJ_DIR)/text_message.o \
  68. $(HL1_OBJ_DIR)/train.o \
  69. $(HL1_OBJ_DIR)/tri.o \
  70. $(HL1_OBJ_DIR)/util.o \
  71. $(HL1_OBJ_DIR)/view.o \
  72. $(HL1_OBJ_DIR)/vgui_int.o \
  73. $(HL1_OBJ_DIR)/vgui_ClassMenu.o \
  74. $(HL1_OBJ_DIR)/vgui_ConsolePanel.o \
  75. $(HL1_OBJ_DIR)/vgui_ControlConfigPanel.o \
  76. $(HL1_OBJ_DIR)/vgui_CustomObjects.o \
  77. $(HL1_OBJ_DIR)/vgui_MOTDWindow.o \
  78. $(HL1_OBJ_DIR)/vgui_SchemeManager.o \
  79. $(HL1_OBJ_DIR)/vgui_ScorePanel.o \
  80. $(HL1_OBJ_DIR)/vgui_ServerBrowser.o \
  81. $(HL1_OBJ_DIR)/vgui_TeamFortressViewport.o \
  82. $(HL1_OBJ_DIR)/vgui_SpectatorPanel.o \
  83. $(HL1_OBJ_DIR)/vgui_teammenu.o \
  84. $(HL1_OBJ_DIR)/voice_status.o \
  85. $(HL1_OBJ_DIR)/hud_servers.o \
  86. DLL_OBJS = \
  87. $(HL1_SERVER_OBJ_DIR)/crossbow.o \
  88. $(HL1_SERVER_OBJ_DIR)/crowbar.o \
  89. $(HL1_SERVER_OBJ_DIR)/egon.o \
  90. $(HL1_SERVER_OBJ_DIR)/gauss.o \
  91. $(HL1_SERVER_OBJ_DIR)/handgrenade.o \
  92. $(HL1_SERVER_OBJ_DIR)/hornetgun.o \
  93. $(HL1_SERVER_OBJ_DIR)/mp5.o \
  94. $(HL1_SERVER_OBJ_DIR)/python.o \
  95. $(HL1_SERVER_OBJ_DIR)/rpg.o \
  96. $(HL1_SERVER_OBJ_DIR)/satchel.o \
  97. $(HL1_SERVER_OBJ_DIR)/shotgun.o \
  98. $(HL1_SERVER_OBJ_DIR)/squeakgrenade.o \
  99. $(HL1_SERVER_OBJ_DIR)/tripmine.o \
  100. $(HL1_SERVER_OBJ_DIR)/wpn_shared/hl_wpn_glock.o \
  101. PUBLIC_OBJS = \
  102. $(PUBLIC_OBJ_DIR)/interface.o \
  103. COMMON_OBJS = \
  104. $(COMMON_OBJ_DIR)/parsemsg.o \
  105. GAME_SHARED_OBJS = \
  106. $(GAME_SHARED_OBJ_DIR)/vgui_checkbutton2.o \
  107. $(GAME_SHARED_OBJ_DIR)/vgui_grid.o \
  108. $(GAME_SHARED_OBJ_DIR)/vgui_helpers.o \
  109. $(GAME_SHARED_OBJ_DIR)/vgui_listbox.o \
  110. $(GAME_SHARED_OBJ_DIR)/vgui_loadtga.o \
  111. $(GAME_SHARED_OBJ_DIR)/vgui_scrollbar2.o \
  112. $(GAME_SHARED_OBJ_DIR)/vgui_slider2.o \
  113. $(GAME_SHARED_OBJ_DIR)/voice_banmgr.o \
  114. PM_SHARED_OBJS = \
  115. $(PM_SHARED_OBJ_DIR)/pm_debug.o \
  116. $(PM_SHARED_OBJ_DIR)/pm_shared.o \
  117. $(PM_SHARED_OBJ_DIR)/pm_math.o \
  118. all: client.$(SHLIBEXT)
  119. client.$(SHLIBEXT): $(HL1_OBJS) $(PUBLIC_OBJS) $(COMMON_OBJS) $(GAME_SHARED_OBJS) $(DLL_OBJS) $(PM_SHARED_OBJS)
  120. $(CLINK) -o $(BUILD_DIR)/$@ $(HL1_OBJS) $(PUBLIC_OBJS) $(COMMON_OBJS) $(GAME_SHARED_OBJS) $(DLL_OBJS) $(PM_SHARED_OBJS) $(LDFLAGS) $(CPP_LIB)
  121. p4 edit ../../game/mod/cl_dlls/$@
  122. cp $(BUILD_DIR)/$@ ../../game/mod/cl_dlls
  123. ./gendbg.sh ../../game/mod/cl_dlls/client.$(SHLIBEXT)
  124. $(HL1_OBJ_DIR):
  125. mkdir -p $(HL1_OBJ_DIR)
  126. mkdir -p $(HL1_OBJ_DIR)/hl
  127. mkdir -p $(HL1_OBJ_DIR)/dlls/wpn_shared
  128. mkdir -p $(HL1_OBJ_DIR)/VGUI
  129. $(HL1_SERVER_OBJ_DIR):
  130. mkdir -p $(HL1_SERVER_OBJ_DIR)
  131. mkdir -p $(HL1_SERVER_OBJ_DIR)/wpn_shared
  132. $(PUBLIC_OBJ_DIR):
  133. mkdir -p $(PUBLIC_OBJ_DIR)
  134. $(COMMON_OBJ_DIR):
  135. mkdir -p $(COMMON_OBJ_DIR)
  136. $(GAME_SHARED_OBJ_DIR):
  137. mkdir -p $(GAME_SHARED_OBJ_DIR)
  138. $(PM_SHARED_OBJ_DIR):
  139. mkdir -p $(PM_SHARED_OBJ_DIR)
  140. $(HL1_OBJ_DIR)/%.o: $(HL_SRC_DIR)/%.cpp $(filter-out $(wildcard $(HL1_OBJ_DIR)), $(HL1_OBJ_DIR))
  141. $(DO_CC)
  142. $(HL1_SERVER_OBJ_DIR)/%.o: $(HL_SERVER_SRC_DIR)/%.cpp $(filter-out $(wildcard $(HL1_SERVER_OBJ_DIR)), $(HL1_SERVER_OBJ_DIR))
  143. $(DO_CC)
  144. $(HL1_OBJ_DIR)/%.o: $(HL_SRC_DIR)/hl/%.cpp $(filter-out $(wildcard $(HL1_OBJ_DIR)), $(HL1_OBJ_DIR))
  145. $(DO_CC)
  146. $(HL1_OBJ_DIR)/%.o: $(HL_SRC_DIR)/dlls/wpn_shared/%.cpp $(filter-out $(wildcard $(HL1_OBJ_DIR)), $(HL1_OBJ_DIR))
  147. $(DO_CC)
  148. $(HL1_OBJ_DIR)/%.o: $(HL_SRC_DIR)/VGUI/%.cpp $(filter-out $(wildcard $(HL1_OBJ_DIR)), $(HL1_OBJ_DIR))
  149. $(DO_CC)
  150. $(PUBLIC_OBJ_DIR)/%.o : $(PUBLIC_SRC_DIR)/%.cpp $(filter-out $(wildcard $(PUBLIC_OBJ_DIR)), $(PUBLIC_OBJ_DIR))
  151. $(DO_PUBLIC_CC)
  152. $(COMMON_OBJ_DIR)/%.o : $(COMMON_SRC_DIR)/%.cpp $(filter-out $(wildcard $(COMMON_OBJ_DIR)), $(COMMON_OBJ_DIR))
  153. $(DO_COMMON_CC)
  154. $(GAME_SHARED_OBJ_DIR)/%.o : $(GAME_SHARED_SRC_DIR)/%.cpp $(filter-out $(wildcard $(GAME_SHARED_OBJ_DIR)), $(GAME_SHARED_OBJ_DIR))
  155. $(DO_COMMON_CC)
  156. $(PM_SHARED_OBJ_DIR)/%.o : $(PM_SHARED_SRC_DIR)/%.c $(filter-out $(wildcard $(PM_SHARED_OBJ_DIR)), $(PM_SHARED_OBJ_DIR))
  157. $(DO_PM_SHARED_CC)
  158. clean:
  159. -rm -rf $(HL1_OBJ_DIR)
  160. -rm -f client.$(SHLIBEXT)