initial seed of Half-Life 1 SDK

This commit is contained in:
Alfred Reynolds 2013-08-30 13:34:05 -07:00
parent 384f877412
commit de70fada50
1077 changed files with 416347 additions and 0 deletions

170
linux/Makefile Normal file
View file

@ -0,0 +1,170 @@
#
# Half-life Makefile for x86 Linux
#
#
OS:=$(shell uname)
HOSTNAME:=$(shell hostname)
ifeq "$(CFG)" ""
CFG=release
endif
SOURCE_DIR=..
BUILD_DIR=$(CFG)
ENGINE_SRC_DIR=$(SOURCE_DIR)/engine
COMMON_SRC_DIR=$(SOURCE_DIR)/common
PM_SRC_DIR=$(SOURCE_DIR)/pm_shared
GAME_SHARED_SRC_DIR=$(SOURCE_DIR)/game_shared
GAMEDB_SRC_DIR=$(COMMON_SRC_DIR)/gamedb
PUBLIC_SRC_DIR=$(SOURCE_DIR)/public
DBG_SRC_DIR=$(SOURCE_DIR)/dbg
BUILD_OBJ_DIR=$(BUILD_DIR)/obj
ARCH=i386
ELF-GC-DYNSTR=./elf-gc-dynstr
ifeq ($(OS),Linux)
CC="/valve/bin/gcc-4.6 -m32"
CPLUS="/valve/bin/g++-4.6 -m32"
CPP_LIB:=-L$(shell /valve/bin/g++-4.6 -m32 -print-file-name=libstdc++.so | xargs dirname) -lstdc++ -ldl -lpthread
endif
ifeq ($(OS),Darwin)
OSXVER := $(shell sw_vers -productVersion)
DEVELOPER_DIR := $(shell /usr/bin/xcode-select -print-path)
ifeq (,$(findstring 10.7, $(OSXVER)))
BUILDING_ON_LION := 0
COMPILER_BIN_DIR := $(DEVELOPER_DIR)/usr/bin
SDK_DIR := $(DEVELOPER_DIR)/SDKs
else
BUILDING_ON_LION := 1
COMPILER_BIN_DIR := $(DEVELOPER_DIR)/Toolchains/XcodeDefault.xctoolchain/usr/bin
SDK_DIR := $(DEVELOPER_DIR)/Platforms/MacOSX.platform/Developer/SDKs
endif
#SDKROOT ?= $(SDK_DIR)/MacOSX10.6.sdk
SDKROOT ?= $(SDK_DIR)/MacOSX10.8.sdk
ARCH_FLAGS ?= -arch i386 -m32 -march=prescott -gdwarf-2 -g2 -Wno-typedef-redefinition -momit-leaf-frame-pointer -mtune=core2
CPP_LIB=-lstdc++ -lpthread
ifeq ($(origin AR), default)
AR = libtool -static -o
endif
ifeq ($(origin CC), default)
CC ="$(COMPILER_BIN_DIR)/clang -Qunused-arguments -isysroot $(SDKROOT) -mmacosx-version-min=10.5 -fasm-blocks -I$(SDKROOT)/usr/include/malloc $(ARCH_FLAGS)"
endif
ifeq ($(origin CXX), default)
CPLUS ="$(COMPILER_BIN_DIR)/clang++ -Qunused-arguments -isysroot $(SDKROOT) -mmacosx-version-min=10.5 -fasm-blocks -I$(SDKROOT)/usr/include/malloc $(ARCH_FLAGS)"
endif
LINK ?= $(CXX)
endif
CLINK=$(CC)
ifeq "$(CFG)" "release"
ARCH_CFLAGS_I486=-O3 -gdwarf-2 -g2
ARCH_CFLAGS_I686=-O3 -gdwarf-2 -g2
ARCH_CFLAGS_AMD=-O3 -gdwarf-2 -g2
ARCH_CFLAGS_AMD64=-m64 -O3 -gdwarf-2 -g2
else
ARCH_CFLAGS_I486=-gdwarf-2 -g2
ARCH_CFLAGS_I686=-gdwarf-2 -g2
ARCH_CFLAGS_AMD=-gdwarf-2 -g2
ARCH_CFLAGS_AMD64=-m64 -gdwarf-2 -g2
endif
ifeq ($(OS),Linux)
ARCH_CFLAGS_I486+=-march=pentium-m -mfpmath=387
ARCH_CFLAGS_I686+=-march=pentium-m -mfpmath=387
ARCH_CFLAGS_AMD+=-march=k6 -mfpmath=387
endif
ifeq ($(OS),Darwin)
# force 387 for FP math so the precision between win32 and linux and osx match
ARCH_CFLAGS_I486+=-march=pentium-m -mfpmath=387
ARCH_CFLAGS_I686+=-march=pentium-m -mfpmath=387
ARCH_CFLAGS_AMD+=-mfpmath=387
endif
ARCH_CFLAGS="$(ARCH_CFLAGS_I486)"
BASE_CFLAGS=-fpermissive -fno-strict-aliasing -DNDEBUG -DPOSIX -D_POSIX -DLINUX -D_LINUX -DGNUC -DHL1 -Dstricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp -D_snprintf=snprintf -DQUIVER -DQUAKE2 -DVALVE_DLL -D_alloca=alloca -fno-exceptions -fexpensive-optimizations -D_vsnprintf=vsnprintf -DNO_MALLOC_OVERRIDE -Werror=return-type
BASE_CFLAGS+=-w
ifeq ($(OS),Darwin)
BASE_CFLAGS += -DOSX -D_OSX -fvisibility=hidden
else
BASE_CFLAGS+= -DLINUX -D_LINUX
endif
DEDICATED_CFLAGS="-DDEDICATED -DSWDS"
ifeq ($(OS),Darwin)
SHLIBEXT=dylib
SHLIBCFLAGS=
SHLIBLDFLAGS="-shared -gdwarf-2 -g2"
else
SHLIBEXT=so
SHLIBCFLAGS=
SHLIBLDFLAGS="-shared -gdwarf-2 -g2 -Wl,-Map,$@_map.txt"
endif
AR=ar
LIBEXT=a
MAKE+= -j8
MAKE_HL_LIB=$(MAKE) -f Makefile.hldll
MAKE_DMC_LIB=$(MAKE) -f Makefile.dmcdll
MAKE_RICOCHET_LIB=$(MAKE) -f Makefile.ricochetdll
MAKE_HL_CDLL=$(MAKE) -f Makefile.hl_cdll
MAKE_DMC_CDLL=$(MAKE) -f Makefile.dmc_cdll
MAKE_RICOCHET_CDLL=$(MAKE) -f Makefile.ricochet_cdll
#############################################################################
# SETUP AND BUILD
#############################################################################
all: build_dir targets
TARGETS=
TARGETS+= \
hl \
dmc \
ricochet \
hl_cdll \
dmc_cdll \
ricochet_cdll \
build_dir:
-mkdir $(BUILD_DIR);
cd $(BUILD_DIR)
targets: $(TARGETS)
hl_cdll: build_dir
$(MAKE_HL_CDLL) ARCH=i686 CC=$(CC) CPLUS=$(CPLUS) CPP_LIB="$(CPP_LIB)" BUILD_DIR=$(BUILD_DIR) BUILD_OBJ_DIR=$(BUILD_OBJ_DIR) SOURCE_DIR=$(SOURCE_DIR) ENGINE_SRC_DIR=$(ENGINE_SRC_DIR) COMMON_SRC_DIR=$(COMMON_SRC_DIR) BASE_CFLAGS="$(BASE_CFLAGS)" PUBLIC_SRC_DIR=$(PUBLIC_SRC_DIR) DBG_SRC_DIR=$(DBG_SRC_DIR) ARCH_CFLAGS="$(ARCH_CFLAGS_I686)" GAME_SHARED_SRC_DIR=$(GAME_SHARED_SRC_DIR) CLINK=$(CLINK) PM_SRC_DIR=$(PM_SRC_DIR) SHLIBEXT=$(SHLIBEXT) SHLIBCFLAGS=$(SHLIBCFLAGS) SHLIBLDFLAGS=$(SHLIBLDFLAGS) CFG=$(CFG) OS=$(OS)
dmc_cdll: build_dir
$(MAKE_DMC_CDLL) ARCH=i686 CC=$(CC) CPLUS=$(CPLUS) CPP_LIB="$(CPP_LIB)" BUILD_DIR=$(BUILD_DIR) BUILD_OBJ_DIR=$(BUILD_OBJ_DIR) SOURCE_DIR=$(SOURCE_DIR) ENGINE_SRC_DIR=$(ENGINE_SRC_DIR) COMMON_SRC_DIR=$(COMMON_SRC_DIR) BASE_CFLAGS="$(BASE_CFLAGS)" PUBLIC_SRC_DIR=$(PUBLIC_SRC_DIR) DBG_SRC_DIR=$(DBG_SRC_DIR) ARCH_CFLAGS="$(ARCH_CFLAGS_I686)" GAME_SHARED_SRC_DIR=$(GAME_SHARED_SRC_DIR) CLINK=$(CLINK) PM_SRC_DIR=$(PM_SRC_DIR) SHLIBEXT=$(SHLIBEXT) SHLIBCFLAGS=$(SHLIBCFLAGS) SHLIBLDFLAGS=$(SHLIBLDFLAGS) CFG=$(CFG) OS=$(OS)
ricochet_cdll: build_dir
$(MAKE_RICOCHET_CDLL) ARCH=i686 CC=$(CC) CPLUS=$(CPLUS) CPP_LIB="$(CPP_LIB)" BUILD_DIR=$(BUILD_DIR) BUILD_OBJ_DIR=$(BUILD_OBJ_DIR) SOURCE_DIR=$(SOURCE_DIR) ENGINE_SRC_DIR=$(ENGINE_SRC_DIR) COMMON_SRC_DIR=$(COMMON_SRC_DIR) BASE_CFLAGS="$(BASE_CFLAGS)" PUBLIC_SRC_DIR=$(PUBLIC_SRC_DIR) DBG_SRC_DIR=$(DBG_SRC_DIR) ARCH_CFLAGS="$(ARCH_CFLAGS_I686)" GAME_SHARED_SRC_DIR=$(GAME_SHARED_SRC_DIR) CLINK=$(CLINK) PM_SRC_DIR=$(PM_SRC_DIR) SHLIBEXT=$(SHLIBEXT) SHLIBCFLAGS=$(SHLIBCFLAGS) SHLIBLDFLAGS=$(SHLIBLDFLAGS) CFG=$(CFG) OS=$(OS)
hl: build_dir
$(MAKE_HL_LIB) CC=$(CC) ARCH=$(ARCH) CPP_LIB="$(CPP_LIB)" BUILD_DIR=$(BUILD_DIR) BUILD_OBJ_DIR=$(BUILD_OBJ_DIR) SOURCE_DIR=$(SOURCE_DIR) ENGINE_SRC_DIR=$(ENGINE_SRC_DIR) COMMON_SRC_DIR=$(COMMON_SRC_DIR) PM_SRC_DIR=$(PM_SRC_DIR) GAME_SHARED_SRC_DIR=$(GAME_SHARED_SRC_DIR) GAMEDB_SRC_DIR=$(GAMEDB_SRC_DIR) BASE_CFLAGS="$(BASE_CFLAGS)" SHLIBEXT=$(SHLIBEXT) SHLIBCFLAGS=$(SHLIBCFLAGS) SHLIBLDFLAGS=$(SHLIBLDFLAGS) PUBLIC_SRC_DIR=$(PUBLIC_SRC_DIR) CFG=$(CFG) OS=$(OS) ARCH_CFLAGS="$(ARCH_CFLAGS_I686)"
dmc: build_dir
$(MAKE_DMC_LIB) CC=$(CC) CPLUS=$(CPLUS) CPP_LIB="$(CPP_LIB)" ARCH=$(ARCH) BUILD_DIR=$(BUILD_DIR) BUILD_OBJ_DIR=$(BUILD_OBJ_DIR) SOURCE_DIR=$(SOURCE_DIR) ENGINE_SRC_DIR=$(ENGINE_SRC_DIR) COMMON_SRC_DIR=$(COMMON_SRC_DIR) GAME_SHARED_SRC_DIR=$(GAME_SHARED_SRC_DIR) BASE_CFLAGS="$(BASE_CFLAGS)" SHLIBEXT=$(SHLIBEXT) SHLIBCFLAGS=$(SHLIBCFLAGS) SHLIBLDFLAGS=$(SHLIBLDFLAGS) PUBLIC_SRC_DIR=$(PUBLIC_SRC_DIR) CFG=$(CFG) OS=$(OS) CLINK=$(CLINK) ARCH_CFLAGS="$(ARCH_CFLAGS_I686)"
ricochet: build_dir
$(MAKE_RICOCHET_LIB) CC=$(CC) CPLUS=$(CPLUS) CPP_LIB="$(CPP_LIB)" ARCH=$(ARCH) BUILD_DIR=$(BUILD_DIR) BUILD_OBJ_DIR=$(BUILD_OBJ_DIR) SOURCE_DIR=$(SOURCE_DIR) ENGINE_SRC_DIR=$(ENGINE_SRC_DIR) COMMON_SRC_DIR=$(COMMON_SRC_DIR) GAME_SHARED_SRC_DIR=$(GAME_SHARED_SRC_DIR) BASE_CFLAGS="$(BASE_CFLAGS)" SHLIBEXT=$(SHLIBEXT) SHLIBCFLAGS=$(SHLIBCFLAGS) SHLIBLDFLAGS=$(SHLIBLDFLAGS) PUBLIC_SRC_DIR=$(PUBLIC_SRC_DIR) CFG=$(CFG) OS=$(OS) CLINK=$(CLINK) ARCH_CFLAGS="$(ARCH_CFLAGS_I686)"
clean:
-rm -rf $(BUILD_OBJ_DIR)

164
linux/Makefile.dmc_cdll Normal file
View file

@ -0,0 +1,164 @@
#
# dmc client Makefile for x86 Linux
#
#
DMC_SRC_DIR=$(SOURCE_DIR)/dmc/cl_dll
GAME_SHARED_SRC_DIR=$(SOURCE_DIR)/game_shared
PM_SHARED_SRC_DIR=$(DMC_SRC_DIR)/../pm_shared
DMC_OBJ_DIR=$(BUILD_OBJ_DIR)/dmc_client
PUBLIC_OBJ_DIR=$(DMC_OBJ_DIR)/public
COMMON_OBJ_DIR=$(DMC_OBJ_DIR)/common
GAME_SHARED_OBJ_DIR=$(DMC_OBJ_DIR)/game_shared
PM_SHARED_OBJ_DIR=$(DMC_OBJ_DIR)/pm_shared
CFLAGS=$(BASE_CFLAGS) $(ARCH_CFLAGS) -DCLIENT_DLL -DDMC_BUILD -I/usr/include/malloc -D_snwprintf=swprintf \
-DDISABLE_JUMP_ORIGIN -DDISABLE_VEC_ORIGIN -D_MAX_PATH=PATH_MAX
INCLUDEDIRS=-I$(PUBLIC_SRC_DIR) -I../utils/vgui/include -I$(DMC_SRC_DIR)/../dlls \
-I../engine -I$(COMMON_SRC_DIR) -I../utils/common -I$(DMC_SRC_DIR)/../pm_shared -I$(DMC_SRC_DIR) -I../game_shared -I../external
ifeq ($(OS),Darwin)
LDFLAGS=$(SHLIBLDFLAGS) $(CPP_LIB) -framework Carbon $(CFG)/vgui.dylib -L. -lSDL2-2.0.0
else
LDFLAGS=$(SHLIBLDFLAGS) $(CPP_LIB) vgui.so -L. libSDL2-2.0.so.0
endif
DO_CC=$(CPLUS) $(INCLUDEDIRS) $(CFLAGS) -o $@ -c $<
DO_PUBLIC_CC=$(CPLUS) $(COMMON_INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
DO_COMMON_CC=$(CPLUS) $(INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
DO_PM_SHARED_CC=$(CC) $(INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
#####################################################################
DMC_OBJS = \
$(DMC_OBJ_DIR)/ev_common.o \
$(DMC_OBJ_DIR)/CTF_FlagStatus.o \
$(DMC_OBJ_DIR)/CTF_HudMessage.o \
$(DMC_OBJ_DIR)/DMC_Teleporters.o \
$(DMC_OBJ_DIR)/ev_hldm.o \
$(DMC_OBJ_DIR)/quake/quake_baseentity.o \
$(DMC_OBJ_DIR)/quake/quake_events.o \
$(DMC_OBJ_DIR)/quake/quake_objects.o \
$(DMC_OBJ_DIR)/quake/quake_weapons.o \
$(DMC_OBJ_DIR)/studio_util.o \
$(DMC_OBJ_DIR)/vgui_SpectatorPanel.o \
$(DMC_OBJ_DIR)/ammo.o \
$(DMC_OBJ_DIR)/ammo_secondary.o \
$(DMC_OBJ_DIR)/ammohistory.o \
$(DMC_OBJ_DIR)/battery.o \
$(DMC_OBJ_DIR)/cdll_int.o \
$(DMC_OBJ_DIR)/com_weapons.o \
$(DMC_OBJ_DIR)/death.o \
$(DMC_OBJ_DIR)/demo.o \
$(DMC_OBJ_DIR)/entity.o \
$(DMC_OBJ_DIR)/events.o \
$(DMC_OBJ_DIR)/GameStudioModelRenderer.o \
$(DMC_OBJ_DIR)/geiger.o \
$(DMC_OBJ_DIR)/health.o \
$(DMC_OBJ_DIR)/hud.o \
$(DMC_OBJ_DIR)/hud_msg.o \
$(DMC_OBJ_DIR)/hud_redraw.o \
$(DMC_OBJ_DIR)/hud_spectator.o \
$(DMC_OBJ_DIR)/hud_update.o \
$(DMC_OBJ_DIR)/hud_servers.o \
$(DMC_OBJ_DIR)/in_camera.o \
$(DMC_OBJ_DIR)/input.o \
$(DMC_OBJ_DIR)/inputw32.o \
$(DMC_OBJ_DIR)/menu.o \
$(DMC_OBJ_DIR)/message.o \
$(DMC_OBJ_DIR)/saytext.o \
$(DMC_OBJ_DIR)/status_icons.o \
$(DMC_OBJ_DIR)/statusbar.o \
$(DMC_OBJ_DIR)/StudioModelRenderer.o \
$(DMC_OBJ_DIR)/text_message.o \
$(DMC_OBJ_DIR)/train.o \
$(DMC_OBJ_DIR)/tri.o \
$(DMC_OBJ_DIR)/util.o \
$(DMC_OBJ_DIR)/view.o \
$(DMC_OBJ_DIR)/voice_status.o \
$(DMC_OBJ_DIR)/vgui_int.o \
$(DMC_OBJ_DIR)/vgui_ScorePanel.o \
$(DMC_OBJ_DIR)/vgui_ServerBrowser.o \
$(DMC_OBJ_DIR)/vgui_viewport.o \
$(DMC_OBJ_DIR)/vgui_CustomObjects.o \
$(DMC_OBJ_DIR)/vgui_MOTDWindow.o \
$(DMC_OBJ_DIR)/vgui_SchemeManager.o \
$(DMC_OBJ_DIR)/dlls/quake_weapons_all.o \
$(DMC_OBJ_DIR)/dlls/quake_gun.o \
PUBLIC_OBJS = \
$(PUBLIC_OBJ_DIR)/interface.o \
COMMON_OBJS = \
$(COMMON_OBJ_DIR)/parsemsg.o \
GAME_SHARED_OBJS = \
$(GAME_SHARED_OBJ_DIR)/voice_banmgr.o \
$(GAME_SHARED_OBJ_DIR)/vgui_checkbutton2.o \
$(GAME_SHARED_OBJ_DIR)/vgui_grid.o \
$(GAME_SHARED_OBJ_DIR)/vgui_helpers.o \
$(GAME_SHARED_OBJ_DIR)/vgui_listbox.o \
$(GAME_SHARED_OBJ_DIR)/vgui_loadtga.o \
$(GAME_SHARED_OBJ_DIR)/vgui_scrollbar2.o \
$(GAME_SHARED_OBJ_DIR)/vgui_slider2.o \
PM_SHARED_OBJS = \
$(PM_SHARED_OBJ_DIR)/pm_debug.o \
$(PM_SHARED_OBJ_DIR)/pm_shared.o \
$(PM_SHARED_OBJ_DIR)/pm_math.o \
all: client_dmc.$(SHLIBEXT)
client_dmc.$(SHLIBEXT): $(DMC_OBJS) $(PUBLIC_OBJS) $(COMMON_OBJS) $(GAME_SHARED_OBJS) $(PM_SHARED_OBJS)
$(CLINK) -o $(BUILD_DIR)/$@ $(DMC_OBJS) $(PUBLIC_OBJS) $(COMMON_OBJS) $(GAME_SHARED_OBJS) $(PM_SHARED_OBJS) $(LDFLAGS) $(CPP_LIB)
p4 edit ../../game/mod/cl_dlls/client.$(SHLIBEXT)
cp $(BUILD_DIR)/$@ ../../game/mod/cl_dlls/client.$(SHLIBEXT)
./gendbg.sh ../../game/mod/cl_dlls/client.$(SHLIBEXT)
$(DMC_OBJ_DIR):
mkdir -p $(DMC_OBJ_DIR)
mkdir -p $(DMC_OBJ_DIR)/dlls
mkdir -p $(DMC_OBJ_DIR)/quake
$(PUBLIC_OBJ_DIR):
mkdir -p $(PUBLIC_OBJ_DIR)
$(COMMON_OBJ_DIR):
mkdir -p $(COMMON_OBJ_DIR)
$(GAME_SHARED_OBJ_DIR):
mkdir -p $(GAME_SHARED_OBJ_DIR)
$(PM_SHARED_OBJ_DIR):
mkdir -p $(PM_SHARED_OBJ_DIR)
$(DMC_OBJ_DIR)/%.o: $(DMC_SRC_DIR)/%.cpp $(filter-out $(wildcard $(DMC_OBJ_DIR)), $(DMC_OBJ_DIR))
$(DO_CC)
$(DMC_OBJ_DIR)/%.o: $(DMC_SRC_DIR)/../%.cpp $(filter-out $(wildcard $(DMC_OBJ_DIR)), $(DMC_OBJ_DIR))
$(DO_CC)
$(DMC_OBJ_DIR)/%.o: $(DMC_SRC_DIR)/quake/%.cpp $(filter-out $(wildcard $(DMC_OBJ_DIR)), $(DMC_OBJ_DIR))
$(DO_CC)
$(PUBLIC_OBJ_DIR)/%.o : $(PUBLIC_SRC_DIR)/%.cpp $(filter-out $(wildcard $(PUBLIC_OBJ_DIR)), $(PUBLIC_OBJ_DIR))
$(DO_PUBLIC_CC)
$(COMMON_OBJ_DIR)/%.o : $(COMMON_SRC_DIR)/%.cpp $(filter-out $(wildcard $(COMMON_OBJ_DIR)), $(COMMON_OBJ_DIR))
$(DO_COMMON_CC)
$(GAME_SHARED_OBJ_DIR)/%.o : $(GAME_SHARED_SRC_DIR)/%.cpp $(filter-out $(wildcard $(GAME_SHARED_OBJ_DIR)), $(GAME_SHARED_OBJ_DIR))
$(DO_COMMON_CC)
$(PM_SHARED_OBJ_DIR)/%.o : $(PM_SHARED_SRC_DIR)/%.c $(filter-out $(wildcard $(PM_SHARED_OBJ_DIR)), $(PM_SHARED_OBJ_DIR))
$(DO_PM_SHARED_CC)
clean:
-rm -rf $(DMC_OBJ_DIR)
-rm -f client.$(SHLIBEXT)

114
linux/Makefile.dmcdll Normal file
View file

@ -0,0 +1,114 @@
#
# DMC game library Makefile for x86 Linux
#
# May 2001 by Leon Hartwig (hartwig@valvesoftware.com)
#
OS:=$(shell uname)
DMCDLL_SRC_DIR=$(SOURCE_DIR)/dmc/dlls
PM_SRC_DIR=$(SOURCE_DIR)/dmc/pm_shared
DMCDLL_OBJ_DIR=$(BUILD_OBJ_DIR)/dmcdll
PM_OBJ_DIR=$(DMCDLL_OBJ_DIR)/pm_shared
GAME_SHARED_OBJ_DIR=$(DMCDLL_OBJ_DIR)/game_shared
#full optimization
CFLAGS=$(BASE_CFLAGS) $(ARCH_CFLAGS)
DMCDLL_INCLUDEDIRS=-I$(ENGINE_SRC_DIR) -I$(COMMON_SRC_DIR) -I$(PM_SRC_DIR) -I$(GAME_SHARED_SRC_DIR) -I$(PUBLIC_SRC_DIR)
PM_INCLUDEDIRS=-I$(COMMON_SRC_DIR) -I$(PUBLIC_SRC_DIR)
GAME_SHARED_INCLUDEDIRS=-I$(DMCDLL_SRC_DIR) -I$(ENGINE_SRC_DIR) -I$(COMMON_SRC_DIR) -I$(PUBLIC_SRC_DIR)
LDFLAGS=
DO_DMCDLL_CC=$(CC) $(DMCDLL_INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
DO_PM_CC=$(CC) $(PM_INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
DO_GAME_SHARED_CC=$(CC) $(GAME_SHARED_INCLUDEDIRS) $(CFLAGS) $(SHLIBFLAGS) -o $@ -c $<
#############################################################################
DMCDLL_OBJS = \
$(DMCDLL_OBJ_DIR)/animating.o \
$(DMCDLL_OBJ_DIR)/animation.o \
$(DMCDLL_OBJ_DIR)/bmodels.o \
$(DMCDLL_OBJ_DIR)/buttons.o \
$(DMCDLL_OBJ_DIR)/cbase.o \
$(DMCDLL_OBJ_DIR)/client.o \
$(DMCDLL_OBJ_DIR)/combat.o \
$(DMCDLL_OBJ_DIR)/doors.o \
$(DMCDLL_OBJ_DIR)/effects.o \
$(DMCDLL_OBJ_DIR)/explode.o \
$(DMCDLL_OBJ_DIR)/func_break.o \
$(DMCDLL_OBJ_DIR)/func_tank.o \
$(DMCDLL_OBJ_DIR)/game.o \
$(DMCDLL_OBJ_DIR)/gamerules.o \
$(DMCDLL_OBJ_DIR)/globals.o \
$(DMCDLL_OBJ_DIR)/h_ai.o \
$(DMCDLL_OBJ_DIR)/h_export.o \
$(DMCDLL_OBJ_DIR)/lights.o \
$(DMCDLL_OBJ_DIR)/maprules.o \
$(DMCDLL_OBJ_DIR)/monsters.o \
$(DMCDLL_OBJ_DIR)/monsterstate.o \
$(DMCDLL_OBJ_DIR)/multiplay_gamerules.o \
$(DMCDLL_OBJ_DIR)/nodes.o \
$(DMCDLL_OBJ_DIR)/observer.o \
$(DMCDLL_OBJ_DIR)/pathcorner.o \
$(DMCDLL_OBJ_DIR)/plane.o \
$(DMCDLL_OBJ_DIR)/plats.o \
$(DMCDLL_OBJ_DIR)/player.o \
$(DMCDLL_OBJ_DIR)/quake_gun.o \
$(DMCDLL_OBJ_DIR)/quake_items.o \
$(DMCDLL_OBJ_DIR)/quake_nail.o \
$(DMCDLL_OBJ_DIR)/quake_player.o \
$(DMCDLL_OBJ_DIR)/quake_rocket.o \
$(DMCDLL_OBJ_DIR)/quake_weapons_all.o \
$(DMCDLL_OBJ_DIR)/schedule.o \
$(DMCDLL_OBJ_DIR)/singleplay_gamerules.o \
$(DMCDLL_OBJ_DIR)/skill.o \
$(DMCDLL_OBJ_DIR)/sound.o \
$(DMCDLL_OBJ_DIR)/spectator.o \
$(DMCDLL_OBJ_DIR)/subs.o \
$(DMCDLL_OBJ_DIR)/teamplay_gamerules.o \
$(DMCDLL_OBJ_DIR)/threewave_gamerules.o \
$(DMCDLL_OBJ_DIR)/triggers.o \
$(DMCDLL_OBJ_DIR)/util.o \
$(DMCDLL_OBJ_DIR)/weapons.o \
$(DMCDLL_OBJ_DIR)/world.o
PM_OBJS = \
$(PM_OBJ_DIR)/pm_shared.o \
$(PM_OBJ_DIR)/pm_math.o \
$(PM_OBJ_DIR)/pm_debug.o
GAME_SHARED_OBJS = \
$(GAME_SHARED_OBJ_DIR)/voice_gamemgr.o
all: dirs dmc.$(SHLIBEXT)
dirs:
-mkdir $(BUILD_OBJ_DIR)
-mkdir $(DMCDLL_OBJ_DIR)
-mkdir $(PM_OBJ_DIR)
-mkdir $(GAME_SHARED_OBJ_DIR)
dmc.$(SHLIBEXT): $(DMCDLL_OBJS) $(PM_OBJS) $(GAME_SHARED_OBJS)
$(CLINK) $(SHLIBLDFLAGS) -o $(BUILD_DIR)/$@ $(DMCDLL_OBJS) $(PM_OBJS) $(GAME_SHARED_OBJS) $(LDFLAGS) $(CPP_LIB)
p4 edit ../../game/mod/dlls/$@
cp $(BUILD_DIR)/$@ ../../game/mod/dlls
./gendbg.sh ../../game/dmc/mod/dmc.$(SHLIBEXT)
$(DMCDLL_OBJ_DIR)/%.o : $(DMCDLL_SRC_DIR)/%.cpp
$(DO_DMCDLL_CC)
$(PM_OBJ_DIR)/%.o : $(PM_SRC_DIR)/%.c
$(DO_PM_CC)
$(GAME_SHARED_OBJ_DIR)/%.o : $(GAME_SHARED_SRC_DIR)/%.cpp
$(DO_GAME_SHARED_CC)
clean:
-rm -rf $(GAME_SHARED_OBJ_DIR)
-rm -rf $(PM_OBJ_DIR)
-rm -rf $(DMCDLL_OBJ_DIR)
-rm -f dmc_$(ARCH).$(SHLIBEXT)

195
linux/Makefile.hl_cdll Normal file
View file

@ -0,0 +1,195 @@
#
# launcher Makefile for x86 Linux
#
#
HL_SRC_DIR=$(SOURCE_DIR)/cl_dll
HL_SERVER_SRC_DIR=$(SOURCE_DIR)/dlls
GAME_SHARED_SRC_DIR=$(SOURCE_DIR)/game_shared
PM_SHARED_SRC_DIR=$(SOURCE_DIR)/pm_shared
HL1_OBJ_DIR=$(BUILD_OBJ_DIR)/hl1_client
PUBLIC_OBJ_DIR=$(HL1_OBJ_DIR)/public
COMMON_OBJ_DIR=$(HL1_OBJ_DIR)/common
GAME_SHARED_OBJ_DIR=$(HL1_OBJ_DIR)/game_shared
HL1_SERVER_OBJ_DIR=$(HL1_OBJ_DIR)/server
PM_SHARED_OBJ_DIR=$(HL1_OBJ_DIR)/pm_shared
CFLAGS=$(BASE_CFLAGS) $(ARCH_CFLAGS) -DCLIENT_DLL -DCLIENT_WEAPONS -DHL_DLL -I/usr/include/malloc -D_snwprintf=swprintf \
-DDISABLE_JUMP_ORIGIN -DDISABLE_VEC_ORIGIN
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
ifeq ($(OS),Darwin)
LDFLAGS=$(SHLIBLDFLAGS) $(CPP_LIB) -framework Carbon $(CFG)/vgui.dylib -L. -lSDL2-2.0.0
else
LDFLAGS=$(SHLIBLDFLAGS) $(CPP_LIB) -L$(CFG) vgui.so -L. libSDL2-2.0.so.0
endif
DO_CC=$(CPLUS) $(INCLUDEDIRS) $(CFLAGS) -o $@ -c $<
DO_PUBLIC_CC=$(CPLUS) $(COMMON_INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
DO_COMMON_CC=$(CPLUS) $(INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
DO_PM_SHARED_CC=$(CC) $(INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
#####################################################################
HL1_OBJS = \
$(HL1_OBJ_DIR)/hud_spectator.o \
$(HL1_OBJ_DIR)/ev_hldm.o \
$(HL1_OBJ_DIR)/hl/hl_baseentity.o \
$(HL1_OBJ_DIR)/hl/hl_events.o \
$(HL1_OBJ_DIR)/hl/hl_objects.o \
$(HL1_OBJ_DIR)/hl/hl_weapons.o \
$(HL1_OBJ_DIR)/hud.o \
$(HL1_OBJ_DIR)/inputw32.o \
$(HL1_OBJ_DIR)/ammo.o \
$(HL1_OBJ_DIR)/ammo_secondary.o \
$(HL1_OBJ_DIR)/ammohistory.o \
$(HL1_OBJ_DIR)/battery.o \
$(HL1_OBJ_DIR)/cdll_int.o \
$(HL1_OBJ_DIR)/com_weapons.o \
$(HL1_OBJ_DIR)/death.o \
$(HL1_OBJ_DIR)/demo.o \
$(HL1_OBJ_DIR)/entity.o \
$(HL1_OBJ_DIR)/ev_common.o \
$(HL1_OBJ_DIR)/events.o \
$(HL1_OBJ_DIR)/flashlight.o \
$(HL1_OBJ_DIR)/GameStudioModelRenderer.o \
$(HL1_OBJ_DIR)/geiger.o \
$(HL1_OBJ_DIR)/health.o \
$(HL1_OBJ_DIR)/hud_bench.o \
$(HL1_OBJ_DIR)/hud_benchtrace.o \
$(HL1_OBJ_DIR)/hud_msg.o \
$(HL1_OBJ_DIR)/hud_redraw.o \
$(HL1_OBJ_DIR)/hud_update.o \
$(HL1_OBJ_DIR)/in_camera.o \
$(HL1_OBJ_DIR)/input.o \
$(HL1_OBJ_DIR)/interpolation.o \
$(HL1_OBJ_DIR)/menu.o \
$(HL1_OBJ_DIR)/message.o \
$(HL1_OBJ_DIR)/saytext.o \
$(HL1_OBJ_DIR)/status_icons.o \
$(HL1_OBJ_DIR)/statusbar.o \
$(HL1_OBJ_DIR)/studio_util.o \
$(HL1_OBJ_DIR)/StudioModelRenderer.o \
$(HL1_OBJ_DIR)/text_message.o \
$(HL1_OBJ_DIR)/train.o \
$(HL1_OBJ_DIR)/tri.o \
$(HL1_OBJ_DIR)/util.o \
$(HL1_OBJ_DIR)/view.o \
$(HL1_OBJ_DIR)/vgui_int.o \
$(HL1_OBJ_DIR)/vgui_ClassMenu.o \
$(HL1_OBJ_DIR)/vgui_ConsolePanel.o \
$(HL1_OBJ_DIR)/vgui_ControlConfigPanel.o \
$(HL1_OBJ_DIR)/vgui_CustomObjects.o \
$(HL1_OBJ_DIR)/vgui_MOTDWindow.o \
$(HL1_OBJ_DIR)/vgui_SchemeManager.o \
$(HL1_OBJ_DIR)/vgui_ScorePanel.o \
$(HL1_OBJ_DIR)/vgui_ServerBrowser.o \
$(HL1_OBJ_DIR)/vgui_TeamFortressViewport.o \
$(HL1_OBJ_DIR)/vgui_SpectatorPanel.o \
$(HL1_OBJ_DIR)/vgui_teammenu.o \
$(HL1_OBJ_DIR)/voice_status.o \
$(HL1_OBJ_DIR)/hud_servers.o \
DLL_OBJS = \
$(HL1_SERVER_OBJ_DIR)/crossbow.o \
$(HL1_SERVER_OBJ_DIR)/crowbar.o \
$(HL1_SERVER_OBJ_DIR)/egon.o \
$(HL1_SERVER_OBJ_DIR)/gauss.o \
$(HL1_SERVER_OBJ_DIR)/handgrenade.o \
$(HL1_SERVER_OBJ_DIR)/hornetgun.o \
$(HL1_SERVER_OBJ_DIR)/mp5.o \
$(HL1_SERVER_OBJ_DIR)/python.o \
$(HL1_SERVER_OBJ_DIR)/rpg.o \
$(HL1_SERVER_OBJ_DIR)/satchel.o \
$(HL1_SERVER_OBJ_DIR)/shotgun.o \
$(HL1_SERVER_OBJ_DIR)/squeakgrenade.o \
$(HL1_SERVER_OBJ_DIR)/tripmine.o \
$(HL1_SERVER_OBJ_DIR)/wpn_shared/hl_wpn_glock.o \
PUBLIC_OBJS = \
$(PUBLIC_OBJ_DIR)/interface.o \
COMMON_OBJS = \
$(COMMON_OBJ_DIR)/parsemsg.o \
GAME_SHARED_OBJS = \
$(GAME_SHARED_OBJ_DIR)/vgui_checkbutton2.o \
$(GAME_SHARED_OBJ_DIR)/vgui_grid.o \
$(GAME_SHARED_OBJ_DIR)/vgui_helpers.o \
$(GAME_SHARED_OBJ_DIR)/vgui_listbox.o \
$(GAME_SHARED_OBJ_DIR)/vgui_loadtga.o \
$(GAME_SHARED_OBJ_DIR)/vgui_scrollbar2.o \
$(GAME_SHARED_OBJ_DIR)/vgui_slider2.o \
$(GAME_SHARED_OBJ_DIR)/voice_banmgr.o \
PM_SHARED_OBJS = \
$(PM_SHARED_OBJ_DIR)/pm_debug.o \
$(PM_SHARED_OBJ_DIR)/pm_shared.o \
$(PM_SHARED_OBJ_DIR)/pm_math.o \
all: client.$(SHLIBEXT)
client.$(SHLIBEXT): $(HL1_OBJS) $(PUBLIC_OBJS) $(COMMON_OBJS) $(GAME_SHARED_OBJS) $(DLL_OBJS) $(PM_SHARED_OBJS)
$(CLINK) -o $(BUILD_DIR)/$@ $(HL1_OBJS) $(PUBLIC_OBJS) $(COMMON_OBJS) $(GAME_SHARED_OBJS) $(DLL_OBJS) $(PM_SHARED_OBJS) $(LDFLAGS) $(CPP_LIB)
p4 edit ../../game/mod/cl_dlls/$@
cp $(BUILD_DIR)/$@ ../../game/mod/cl_dlls
./gendbg.sh ../../game/mod/cl_dlls/client.$(SHLIBEXT)
$(HL1_OBJ_DIR):
mkdir -p $(HL1_OBJ_DIR)
mkdir -p $(HL1_OBJ_DIR)/hl
mkdir -p $(HL1_OBJ_DIR)/dlls/wpn_shared
mkdir -p $(HL1_OBJ_DIR)/VGUI
$(HL1_SERVER_OBJ_DIR):
mkdir -p $(HL1_SERVER_OBJ_DIR)
mkdir -p $(HL1_SERVER_OBJ_DIR)/wpn_shared
$(PUBLIC_OBJ_DIR):
mkdir -p $(PUBLIC_OBJ_DIR)
$(COMMON_OBJ_DIR):
mkdir -p $(COMMON_OBJ_DIR)
$(GAME_SHARED_OBJ_DIR):
mkdir -p $(GAME_SHARED_OBJ_DIR)
$(PM_SHARED_OBJ_DIR):
mkdir -p $(PM_SHARED_OBJ_DIR)
$(HL1_OBJ_DIR)/%.o: $(HL_SRC_DIR)/%.cpp $(filter-out $(wildcard $(HL1_OBJ_DIR)), $(HL1_OBJ_DIR))
$(DO_CC)
$(HL1_SERVER_OBJ_DIR)/%.o: $(HL_SERVER_SRC_DIR)/%.cpp $(filter-out $(wildcard $(HL1_SERVER_OBJ_DIR)), $(HL1_SERVER_OBJ_DIR))
$(DO_CC)
$(HL1_OBJ_DIR)/%.o: $(HL_SRC_DIR)/hl/%.cpp $(filter-out $(wildcard $(HL1_OBJ_DIR)), $(HL1_OBJ_DIR))
$(DO_CC)
$(HL1_OBJ_DIR)/%.o: $(HL_SRC_DIR)/dlls/wpn_shared/%.cpp $(filter-out $(wildcard $(HL1_OBJ_DIR)), $(HL1_OBJ_DIR))
$(DO_CC)
$(HL1_OBJ_DIR)/%.o: $(HL_SRC_DIR)/VGUI/%.cpp $(filter-out $(wildcard $(HL1_OBJ_DIR)), $(HL1_OBJ_DIR))
$(DO_CC)
$(PUBLIC_OBJ_DIR)/%.o : $(PUBLIC_SRC_DIR)/%.cpp $(filter-out $(wildcard $(PUBLIC_OBJ_DIR)), $(PUBLIC_OBJ_DIR))
$(DO_PUBLIC_CC)
$(COMMON_OBJ_DIR)/%.o : $(COMMON_SRC_DIR)/%.cpp $(filter-out $(wildcard $(COMMON_OBJ_DIR)), $(COMMON_OBJ_DIR))
$(DO_COMMON_CC)
$(GAME_SHARED_OBJ_DIR)/%.o : $(GAME_SHARED_SRC_DIR)/%.cpp $(filter-out $(wildcard $(GAME_SHARED_OBJ_DIR)), $(GAME_SHARED_OBJ_DIR))
$(DO_COMMON_CC)
$(PM_SHARED_OBJ_DIR)/%.o : $(PM_SHARED_SRC_DIR)/%.c $(filter-out $(wildcard $(PM_SHARED_OBJ_DIR)), $(PM_SHARED_OBJ_DIR))
$(DO_PM_SHARED_CC)
clean:
-rm -rf $(HL1_OBJ_DIR)
-rm -f client.$(SHLIBEXT)

175
linux/Makefile.hldll Normal file
View file

@ -0,0 +1,175 @@
#
# HL game library Makefile for x86 Linux
#
# Feb 2001 by Leon Hartwig (hartwig@valvesoftware.com)
#
HLDLL_SRC_DIR=$(SOURCE_DIR)/dlls
HLWPN_SRC_DIR=$(HLDLL_SRC_DIR)/wpn_shared
HLDLL_OBJ_DIR=$(BUILD_OBJ_DIR)/hldll
HLWPN_OBJ_DIR=$(HLDLL_OBJ_DIR)/wpn_shared
PM_OBJ_DIR=$(HLDLL_OBJ_DIR)/pm_shared
GAME_SHARED_OBJ_DIR=$(HLDLL_OBJ_DIR)/game_shared
#CFLAGS=$(BASE_CFLAGS) $(ARCH_CFLAGS) $(SHLIBCFLAGS) -DCLIENT_WEAPONS
CFLAGS=$(BASE_CFLAGS) $(ARCH_CFLAGS) -DCLIENT_WEAPONS
#-O3 -ffast-math -fno-strength-reduce
HLDLL_INCLUDEDIRS=-I$(ENGINE_SRC_DIR) -I$(COMMON_SRC_DIR) -I$(PM_SRC_DIR) -I$(GAME_SHARED_SRC_DIR) -I$(PUBLIC_SRC_DIR)
HLWPN_INCLUDEDIRS=-I$(HLDLL_SRC_DIR) -I$(ENGINE_SRC_DIR) -I$(COMMON_SRC_DIR) -I$(PM_SRC_DIR) -I$(PUBLIC_SRC_DIR)
PM_INCLUDEDIRS=-I$(COMMON_SRC_DIR) -I$(PUBLIC_SRC_DIR)
GAME_SHARED_INCLUDEDIRS=-I$(HLDLL_SRC_DIR) -I$(ENGINE_SRC_DIR) -I$(COMMON_SRC_DIR) -I$(PM_SRC_DIR) -I$(PUBLIC_SRC_DIR)
LDFLAGS= -lm -lstdc++
DO_HLDLL_CC=$(CC) $(HLDLL_INCLUDEDIRS) $(CFLAGS) -o $@ -c $<
DO_HLWPN_CC=$(CC) $(HLWPN_INCLUDEDIRS) $(CFLAGS) -o $@ -c $<
DO_PM_CC=$(CC) $(PM_INCLUDEDIRS) $(CFLAGS) -o $@ -c $<
DO_GAME_SHARED_CC=$(CC) $(GAME_SHARED_INCLUDEDIRS) $(CFLAGS) -o $@ -c $<
#####################################################################
HLDLL_OBJS = \
$(HLDLL_OBJ_DIR)/aflock.o \
$(HLDLL_OBJ_DIR)/agrunt.o \
$(HLDLL_OBJ_DIR)/airtank.o \
$(HLDLL_OBJ_DIR)/animating.o \
$(HLDLL_OBJ_DIR)/animation.o \
$(HLDLL_OBJ_DIR)/apache.o \
$(HLDLL_OBJ_DIR)/barnacle.o \
$(HLDLL_OBJ_DIR)/barney.o \
$(HLDLL_OBJ_DIR)/bigmomma.o \
$(HLDLL_OBJ_DIR)/bloater.o \
$(HLDLL_OBJ_DIR)/bmodels.o \
$(HLDLL_OBJ_DIR)/bullsquid.o \
$(HLDLL_OBJ_DIR)/buttons.o \
$(HLDLL_OBJ_DIR)/cbase.o \
$(HLDLL_OBJ_DIR)/client.o \
$(HLDLL_OBJ_DIR)/combat.o \
$(HLDLL_OBJ_DIR)/controller.o \
$(HLDLL_OBJ_DIR)/crossbow.o \
$(HLDLL_OBJ_DIR)/crowbar.o \
$(HLDLL_OBJ_DIR)/defaultai.o \
$(HLDLL_OBJ_DIR)/doors.o \
$(HLDLL_OBJ_DIR)/effects.o \
$(HLDLL_OBJ_DIR)/egon.o \
$(HLDLL_OBJ_DIR)/explode.o \
$(HLDLL_OBJ_DIR)/flyingmonster.o \
$(HLDLL_OBJ_DIR)/func_break.o \
$(HLDLL_OBJ_DIR)/func_tank.o \
$(HLDLL_OBJ_DIR)/game.o \
$(HLDLL_OBJ_DIR)/gamerules.o \
$(HLDLL_OBJ_DIR)/gargantua.o \
$(HLDLL_OBJ_DIR)/gauss.o \
$(HLDLL_OBJ_DIR)/genericmonster.o \
$(HLDLL_OBJ_DIR)/ggrenade.o \
$(HLDLL_OBJ_DIR)/globals.o \
$(HLDLL_OBJ_DIR)/gman.o \
$(HLDLL_OBJ_DIR)/h_ai.o \
$(HLDLL_OBJ_DIR)/h_battery.o \
$(HLDLL_OBJ_DIR)/h_cine.o \
$(HLDLL_OBJ_DIR)/h_cycler.o \
$(HLDLL_OBJ_DIR)/h_export.o \
$(HLDLL_OBJ_DIR)/handgrenade.o \
$(HLDLL_OBJ_DIR)/hassassin.o \
$(HLDLL_OBJ_DIR)/headcrab.o \
$(HLDLL_OBJ_DIR)/healthkit.o \
$(HLDLL_OBJ_DIR)/hgrunt.o \
$(HLDLL_OBJ_DIR)/hornet.o \
$(HLDLL_OBJ_DIR)/hornetgun.o \
$(HLDLL_OBJ_DIR)/houndeye.o \
$(HLDLL_OBJ_DIR)/ichthyosaur.o \
$(HLDLL_OBJ_DIR)/islave.o \
$(HLDLL_OBJ_DIR)/items.o \
$(HLDLL_OBJ_DIR)/leech.o \
$(HLDLL_OBJ_DIR)/lights.o \
$(HLDLL_OBJ_DIR)/maprules.o \
$(HLDLL_OBJ_DIR)/monstermaker.o \
$(HLDLL_OBJ_DIR)/monsters.o \
$(HLDLL_OBJ_DIR)/monsterstate.o \
$(HLDLL_OBJ_DIR)/mortar.o \
$(HLDLL_OBJ_DIR)/mp5.o \
$(HLDLL_OBJ_DIR)/nihilanth.o \
$(HLDLL_OBJ_DIR)/nodes.o \
$(HLDLL_OBJ_DIR)/observer.o \
$(HLDLL_OBJ_DIR)/osprey.o \
$(HLDLL_OBJ_DIR)/pathcorner.o \
$(HLDLL_OBJ_DIR)/plane.o \
$(HLDLL_OBJ_DIR)/plats.o \
$(HLDLL_OBJ_DIR)/player.o \
$(HLDLL_OBJ_DIR)/python.o \
$(HLDLL_OBJ_DIR)/rat.o \
$(HLDLL_OBJ_DIR)/roach.o \
$(HLDLL_OBJ_DIR)/rpg.o \
$(HLDLL_OBJ_DIR)/satchel.o \
$(HLDLL_OBJ_DIR)/schedule.o \
$(HLDLL_OBJ_DIR)/scientist.o \
$(HLDLL_OBJ_DIR)/scripted.o \
$(HLDLL_OBJ_DIR)/shotgun.o \
$(HLDLL_OBJ_DIR)/skill.o \
$(HLDLL_OBJ_DIR)/sound.o \
$(HLDLL_OBJ_DIR)/soundent.o \
$(HLDLL_OBJ_DIR)/spectator.o \
$(HLDLL_OBJ_DIR)/squadmonster.o \
$(HLDLL_OBJ_DIR)/squeakgrenade.o \
$(HLDLL_OBJ_DIR)/subs.o \
$(HLDLL_OBJ_DIR)/talkmonster.o \
$(HLDLL_OBJ_DIR)/teamplay_gamerules.o \
$(HLDLL_OBJ_DIR)/multiplay_gamerules.o \
$(HLDLL_OBJ_DIR)/singleplay_gamerules.o \
$(HLDLL_OBJ_DIR)/tempmonster.o \
$(HLDLL_OBJ_DIR)/tentacle.o \
$(HLDLL_OBJ_DIR)/triggers.o \
$(HLDLL_OBJ_DIR)/tripmine.o \
$(HLDLL_OBJ_DIR)/turret.o \
$(HLDLL_OBJ_DIR)/util.o \
$(HLDLL_OBJ_DIR)/weapons.o \
$(HLDLL_OBJ_DIR)/world.o \
$(HLDLL_OBJ_DIR)/xen.o \
$(HLDLL_OBJ_DIR)/zombie.o
HLWPN_OBJS = \
$(HLWPN_OBJ_DIR)/hl_wpn_glock.o
PM_OBJS = \
$(PM_OBJ_DIR)/pm_shared.o \
$(PM_OBJ_DIR)/pm_math.o \
$(PM_OBJ_DIR)/pm_debug.o
GAME_SHARED_OBJS = \
$(GAME_SHARED_OBJ_DIR)/voice_gamemgr.o
all: dirs hl.$(SHLIBEXT)
dirs:
-mkdir $(BUILD_OBJ_DIR)
-mkdir $(HLDLL_OBJ_DIR)
-mkdir $(HLWPN_OBJ_DIR)
-mkdir $(PM_OBJ_DIR)
-mkdir $(GAME_SHARED_OBJ_DIR)
hl.$(SHLIBEXT): $(HLDLL_OBJS) $(HLWPN_OBJS) $(PM_OBJS) $(GAME_SHARED_OBJS)
$(CC) $(LDFLAGS) $(SHLIBLDFLAGS) -o $(BUILD_DIR)/$@ $(HLDLL_OBJS) $(HLWPN_OBJS) $(PM_OBJS) $(GAME_SHARED_OBJS)
p4 edit ../../game/mod/dlls/hl.$(SHLIBEXT)
cp $(BUILD_DIR)/$@ ../../game/mod/dlls/hl.$(SHLIBEXT)
./gendbg.sh ../../game/mod/dlls/hl.$(SHLIBEXT)
$(HLWPN_OBJ_DIR)/%.o : $(HLWPN_SRC_DIR)/%.cpp
$(DO_HLWPN_CC)
$(HLDLL_OBJ_DIR)/%.o : $(HLDLL_SRC_DIR)/%.cpp
$(DO_HLDLL_CC)
$(PM_OBJ_DIR)/%.o : $(PM_SRC_DIR)/%.c
$(DO_PM_CC)
$(GAME_SHARED_OBJ_DIR)/%.o : $(GAME_SHARED_SRC_DIR)/%.cpp
$(DO_GAME_SHARED_CC)
clean:
-rm -rf $(GAME_SHARED_OBJ_DIR)
-rm -rf $(PM_OBJ_DIR)
-rm -rf $(HLWPN_OBJ_DIR)
-rm -rf $(HLDLL_OBJ_DIR)
-rm -f hl_$(ARCH).$(SHLIBEXT)

View file

@ -0,0 +1,163 @@
#
# ricochet client Makefile for x86 Linux
#
#
RICOCHET_SRC_DIR=$(SOURCE_DIR)/ricochet/cl_dll
GAME_SHARED_SRC_DIR=$(SOURCE_DIR)/game_shared
PM_SHARED_SRC_DIR=$(RICOCHET_SRC_DIR)/../pm_shared
RICOCHET_OBJ_DIR=$(BUILD_OBJ_DIR)/ricochet_client
PUBLIC_OBJ_DIR=$(RICOCHET_OBJ_DIR)/public
COMMON_OBJ_DIR=$(RICOCHET_OBJ_DIR)/common
GAME_SHARED_OBJ_DIR=$(RICOCHET_OBJ_DIR)/game_shared
PM_SHARED_OBJ_DIR=$(RICOCHET_OBJ_DIR)/pm_shared
CFLAGS=$(BASE_CFLAGS) $(ARCH_CFLAGS) -DCLIENT_DLL -I/usr/include/malloc -D_snwprintf=swprintf \
-DDISABLE_JUMP_ORIGIN -DDISABLE_VEC_ORIGIN -D_MAX_PATH=PATH_MAX
INCLUDEDIRS=-I$(RICOCHET_SRC_DIR) -I$(RICOCHET_SRC_DIR)/../dlls -I../engine -I$(PUBLIC_SRC_DIR) -I$(COMMON_SRC_DIR) \
-I../game_shared -I$(RICOCHET_SRC_DIR)/../pm_shared -I../utils/vgui/include -I../utils/common -I../external
ifeq ($(OS),Darwin)
LDFLAGS=$(SHLIBLDFLAGS) $(CPP_LIB) -framework Carbon $(CFG)/vgui.dylib -L. -lSDL2-2.0.0
else
LDFLAGS=$(SHLIBLDFLAGS) $(CPP_LIB) vgui.so -L. libSDL2-2.0.so.0
endif
DO_CC=$(CPLUS) $(INCLUDEDIRS) $(CFLAGS) -o $@ -c $<
DO_PUBLIC_CC=$(CPLUS) $(COMMON_INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
DO_COMMON_CC=$(CPLUS) $(INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
DO_PM_SHARED_CC=$(CC) $(INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
#####################################################################
RICOCHET_OBJS = \
$(RICOCHET_OBJ_DIR)/ev_common.o \
$(RICOCHET_OBJ_DIR)/ev_hldm.o \
$(RICOCHET_OBJ_DIR)/hl/hl_baseentity.o \
$(RICOCHET_OBJ_DIR)/hl/hl_events.o \
$(RICOCHET_OBJ_DIR)/hl/hl_objects.o \
$(RICOCHET_OBJ_DIR)/hl/hl_weapons.o \
$(RICOCHET_OBJ_DIR)/disc_weapon_disc.o \
$(RICOCHET_OBJ_DIR)/Ricochet_JumpPads.o \
$(RICOCHET_OBJ_DIR)/ammo.o \
$(RICOCHET_OBJ_DIR)/ammo_secondary.o \
$(RICOCHET_OBJ_DIR)/ammohistory.o \
$(RICOCHET_OBJ_DIR)/battery.o \
$(RICOCHET_OBJ_DIR)/cdll_int.o \
$(RICOCHET_OBJ_DIR)/com_weapons.o \
$(RICOCHET_OBJ_DIR)/death.o \
$(RICOCHET_OBJ_DIR)/demo.o \
$(RICOCHET_OBJ_DIR)/entity.o \
$(RICOCHET_OBJ_DIR)/events.o \
$(RICOCHET_OBJ_DIR)/flashlight.o \
$(RICOCHET_OBJ_DIR)/GameStudioModelRenderer.o \
$(RICOCHET_OBJ_DIR)/geiger.o \
$(RICOCHET_OBJ_DIR)/health.o \
$(RICOCHET_OBJ_DIR)/hud.o \
$(RICOCHET_OBJ_DIR)/hud_msg.o \
$(RICOCHET_OBJ_DIR)/hud_redraw.o \
$(RICOCHET_OBJ_DIR)/hud_servers.o \
$(RICOCHET_OBJ_DIR)/hud_update.o \
$(RICOCHET_OBJ_DIR)/in_camera.o \
$(RICOCHET_OBJ_DIR)/input.o \
$(RICOCHET_OBJ_DIR)/inputw32.o \
$(RICOCHET_OBJ_DIR)/menu.o \
$(RICOCHET_OBJ_DIR)/message.o \
$(RICOCHET_OBJ_DIR)/saytext.o \
$(RICOCHET_OBJ_DIR)/status_icons.o \
$(RICOCHET_OBJ_DIR)/statusbar.o \
$(RICOCHET_OBJ_DIR)/StudioModelRenderer.o \
$(RICOCHET_OBJ_DIR)/text_message.o \
$(RICOCHET_OBJ_DIR)/train.o \
$(RICOCHET_OBJ_DIR)/tri.o \
$(RICOCHET_OBJ_DIR)/util.o \
$(RICOCHET_OBJ_DIR)/view.o \
$(RICOCHET_OBJ_DIR)/vgui_int.o \
$(RICOCHET_OBJ_DIR)/vgui_ConsolePanel.o \
$(RICOCHET_OBJ_DIR)/vgui_ControlConfigPanel.o \
$(RICOCHET_OBJ_DIR)/vgui_CustomObjects.o \
$(RICOCHET_OBJ_DIR)/vgui_discobjects.o \
$(RICOCHET_OBJ_DIR)/vgui_MOTDWindow.o \
$(RICOCHET_OBJ_DIR)/vgui_ScorePanel.o \
$(RICOCHET_OBJ_DIR)/vgui_ServerBrowser.o \
$(RICOCHET_OBJ_DIR)/vgui_TeamFortressViewport.o \
$(RICOCHET_OBJ_DIR)/vgui_SchemeManager.o \
$(RICOCHET_OBJ_DIR)/studio_util.o \
$(RICOCHET_OBJ_DIR)/voice_status.o \
PUBLIC_OBJS = \
$(PUBLIC_OBJ_DIR)/interface.o \
COMMON_OBJS = \
$(COMMON_OBJ_DIR)/parsemsg.o \
GAME_SHARED_OBJS = \
$(GAME_SHARED_OBJ_DIR)/voice_banmgr.o \
$(GAME_SHARED_OBJ_DIR)/vgui_checkbutton2.o \
$(GAME_SHARED_OBJ_DIR)/vgui_grid.o \
$(GAME_SHARED_OBJ_DIR)/vgui_helpers.o \
$(GAME_SHARED_OBJ_DIR)/vgui_listbox.o \
$(GAME_SHARED_OBJ_DIR)/vgui_loadtga.o \
$(GAME_SHARED_OBJ_DIR)/vgui_scrollbar2.o \
$(GAME_SHARED_OBJ_DIR)/vgui_slider2.o \
# $(GAME_SHARED_OBJ_DIR)/voice_status.o \
PM_SHARED_OBJS = \
$(PM_SHARED_OBJ_DIR)/pm_debug.o \
$(PM_SHARED_OBJ_DIR)/pm_shared.o \
$(PM_SHARED_OBJ_DIR)/pm_math.o \
all: client_ricochet.$(SHLIBEXT)
client_ricochet.$(SHLIBEXT): $(RICOCHET_OBJS) $(PUBLIC_OBJS) $(COMMON_OBJS) $(GAME_SHARED_OBJS) $(PM_SHARED_OBJS)
$(CLINK) -o $(BUILD_DIR)/$@ $(RICOCHET_OBJS) $(PUBLIC_OBJS) $(COMMON_OBJS) $(GAME_SHARED_OBJS) $(PM_SHARED_OBJS) $(LDFLAGS) $(CPP_LIB)
p4 edit ../../game/mod/cl_dlls/client.$(SHLIBEXT)
cp $(BUILD_DIR)/$@ ../../game/mod/cl_dlls/client.$(SHLIBEXT)
./gendbg.sh ../../game/mod/cl_dlls/client.$(SHLIBEXT)
$(RICOCHET_OBJ_DIR):
mkdir -p $(RICOCHET_OBJ_DIR)
mkdir -p $(RICOCHET_OBJ_DIR)/dlls
mkdir -p $(RICOCHET_OBJ_DIR)/dlls/wpn_shared
mkdir -p $(RICOCHET_OBJ_DIR)/hl
$(PUBLIC_OBJ_DIR):
mkdir -p $(PUBLIC_OBJ_DIR)
$(COMMON_OBJ_DIR):
mkdir -p $(COMMON_OBJ_DIR)
$(GAME_SHARED_OBJ_DIR):
mkdir -p $(GAME_SHARED_OBJ_DIR)
$(PM_SHARED_OBJ_DIR):
mkdir -p $(PM_SHARED_OBJ_DIR)
$(RICOCHET_OBJ_DIR)/%.o: $(RICOCHET_SRC_DIR)/%.cpp $(filter-out $(wildcard $(RICOCHET_OBJ_DIR)), $(RICOCHET_OBJ_DIR))
$(DO_CC)
$(RICOCHET_OBJ_DIR)/%.o: $(RICOCHET_SRC_DIR)/hl/%.cpp $(filter-out $(wildcard $(RICOCHET_OBJ_DIR)), $(RICOCHET_OBJ_DIR))
$(DO_CC)
$(RICOCHET_OBJ_DIR)/%.o: $(RICOCHET_SRC_DIR)/../dlls/wpn_shared/%.cpp $(filter-out $(wildcard $(RICOCHET_OBJ_DIR)), $(RICOCHET_OBJ_DIR))
$(DO_CC)
$(PUBLIC_OBJ_DIR)/%.o : $(PUBLIC_SRC_DIR)/%.cpp $(filter-out $(wildcard $(PUBLIC_OBJ_DIR)), $(PUBLIC_OBJ_DIR))
$(DO_PUBLIC_CC)
$(COMMON_OBJ_DIR)/%.o : $(COMMON_SRC_DIR)/%.cpp $(filter-out $(wildcard $(COMMON_OBJ_DIR)), $(COMMON_OBJ_DIR))
$(DO_COMMON_CC)
$(GAME_SHARED_OBJ_DIR)/%.o : $(GAME_SHARED_SRC_DIR)/%.cpp $(filter-out $(wildcard $(GAME_SHARED_OBJ_DIR)), $(GAME_SHARED_OBJ_DIR))
$(DO_COMMON_CC)
$(PM_SHARED_OBJ_DIR)/%.o : $(PM_SHARED_SRC_DIR)/%.c $(filter-out $(wildcard $(PM_SHARED_OBJ_DIR)), $(PM_SHARED_OBJ_DIR))
$(DO_PM_SHARED_CC)
clean:
-rm -rf $(RICOCHET_OBJ_DIR)
-rm -f client_ricochet.$(SHLIBEXT)

128
linux/Makefile.ricochetdll Normal file
View file

@ -0,0 +1,128 @@
#
# Ricochet game library Makefile for x86 Linux
#
# June 2001 by Leon Hartwig (hartwig@valvesoftware.com)
#
OS:=$(shell uname)
RICOCHETDLL_SRC_DIR=$(SOURCE_DIR)/ricochet/dlls
RICOCHETWPN_SRC_DIR=$(RICOCHETDLL_SRC_DIR)/wpn_shared
PM_SRC_DIR=$(SOURCE_DIR)/ricochet/pm_shared
RICOCHETDLL_OBJ_DIR=$(BUILD_OBJ_DIR)/ricochetdll
RICOCHETWPN_OBJ_DIR=$(RICOCHETDLL_OBJ_DIR)/wpn_shared
PM_OBJ_DIR=$(RICOCHETDLL_OBJ_DIR)/pm_shared
GAME_SHARED_OBJ_DIR=$(RICOCHETDLL_OBJ_DIR)/game_shared
#CFLAGS=$(BASE_CFLAGS) -g
CFLAGS=$(BASE_CFLAGS) -O3 -ffast-math -fno-strength-reduce
RICOCHETDLL_INCLUDEDIRS=-I$(ENGINE_SRC_DIR) -I$(COMMON_SRC_DIR) -I$(PM_SRC_DIR) -I$(GAME_SHARED_SRC_DIR) -I$(PUBLIC_SRC_DIR)
RICOCHETWPN_INCLUDEDIRS=-I$(RICOCHETDLL_SRC_DIR) -I$(ENGINE_SRC_DIR) -I$(COMMON_SRC_DIR) -I$(PM_SRC_DIR) -I$(PUBLIC_SRC_DIR)
PM_INCLUDEDIRS=-I$(COMMON_SRC_DIR) -I$(PUBLIC_SRC_DIR)
GAME_SHARED_INCLUDEDIRS=-I$(RICOCHETDLL_SRC_DIR) -I$(ENGINE_SRC_DIR) -I$(COMMON_SRC_DIR) -I$(PUBLIC_SRC_DIR)
LDFLAGS=
DO_RICOCHETDLL_CC=$(CC) $(RICOCHETDLL_INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
DO_RICOCHETWPN_CC=$(CC) $(RICOCHETWPN_INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
DO_PM_CC=$(CC) $(PM_INCLUDEDIRS) $(CFLAGS) $(SHLIBCFLAGS) -o $@ -c $<
DO_GAME_SHARED_CC=$(CC) $(GAME_SHARED_INCLUDEDIRS) $(CFLAGS) $(SHLIBFLAGS) -o $@ -c $<
#####################################################################
RICOCHETDLL_OBJS = \
$(RICOCHETDLL_OBJ_DIR)/airtank.o \
$(RICOCHETDLL_OBJ_DIR)/animating.o \
$(RICOCHETDLL_OBJ_DIR)/animation.o \
$(RICOCHETDLL_OBJ_DIR)/bmodels.o \
$(RICOCHETDLL_OBJ_DIR)/buttons.o \
$(RICOCHETDLL_OBJ_DIR)/cbase.o \
$(RICOCHETDLL_OBJ_DIR)/client.o \
$(RICOCHETDLL_OBJ_DIR)/combat.o \
$(RICOCHETDLL_OBJ_DIR)/disc_arena.o \
$(RICOCHETDLL_OBJ_DIR)/disc_powerups.o \
$(RICOCHETDLL_OBJ_DIR)/doors.o \
$(RICOCHETDLL_OBJ_DIR)/effects.o \
$(RICOCHETDLL_OBJ_DIR)/explode.o \
$(RICOCHETDLL_OBJ_DIR)/func_break.o \
$(RICOCHETDLL_OBJ_DIR)/func_tank.o \
$(RICOCHETDLL_OBJ_DIR)/game.o \
$(RICOCHETDLL_OBJ_DIR)/gamerules.o \
$(RICOCHETDLL_OBJ_DIR)/ggrenade.o \
$(RICOCHETDLL_OBJ_DIR)/globals.o \
$(RICOCHETDLL_OBJ_DIR)/h_ai.o \
$(RICOCHETDLL_OBJ_DIR)/h_battery.o \
$(RICOCHETDLL_OBJ_DIR)/h_cycler.o \
$(RICOCHETDLL_OBJ_DIR)/h_export.o \
$(RICOCHETDLL_OBJ_DIR)/healthkit.o \
$(RICOCHETDLL_OBJ_DIR)/items.o \
$(RICOCHETDLL_OBJ_DIR)/lights.o \
$(RICOCHETDLL_OBJ_DIR)/maprules.o \
$(RICOCHETDLL_OBJ_DIR)/mortar.o \
$(RICOCHETDLL_OBJ_DIR)/mpstubb.o \
$(RICOCHETDLL_OBJ_DIR)/multiplay_gamerules.o \
$(RICOCHETDLL_OBJ_DIR)/observer.o \
$(RICOCHETDLL_OBJ_DIR)/pathcorner.o \
$(RICOCHETDLL_OBJ_DIR)/plane.o \
$(RICOCHETDLL_OBJ_DIR)/plats.o \
$(RICOCHETDLL_OBJ_DIR)/player.o \
$(RICOCHETDLL_OBJ_DIR)/singleplay_gamerules.o \
$(RICOCHETDLL_OBJ_DIR)/skill.o \
$(RICOCHETDLL_OBJ_DIR)/sound.o \
$(RICOCHETDLL_OBJ_DIR)/soundent.o \
$(RICOCHETDLL_OBJ_DIR)/spectator.o \
$(RICOCHETDLL_OBJ_DIR)/subs.o \
$(RICOCHETDLL_OBJ_DIR)/teamplay_gamerules.o \
$(RICOCHETDLL_OBJ_DIR)/triggers.o \
$(RICOCHETDLL_OBJ_DIR)/util.o \
$(RICOCHETDLL_OBJ_DIR)/weapons.o \
$(RICOCHETDLL_OBJ_DIR)/world.o \
$(RICOCHETDLL_OBJ_DIR)/xen.o
RICOCHETWPN_OBJS = \
$(RICOCHETWPN_OBJ_DIR)/disc_weapon_disc.o
PM_OBJS = \
$(PM_OBJ_DIR)/pm_shared.o \
$(PM_OBJ_DIR)/pm_math.o \
$(PM_OBJ_DIR)/pm_debug.o
GAME_SHARED_OBJS = \
$(GAME_SHARED_OBJ_DIR)/voice_gamemgr.o
all: dirs ricochet.$(SHLIBEXT)
dirs:
-mkdir $(BUILD_OBJ_DIR)
-mkdir $(RICOCHETDLL_OBJ_DIR)
-mkdir $(RICOCHETWPN_OBJ_DIR)
-mkdir $(PM_OBJ_DIR)
-mkdir $(GAME_SHARED_OBJ_DIR)
ricochet.$(SHLIBEXT): $(RICOCHETDLL_OBJS) $(RICOCHETWPN_OBJS) $(PM_OBJS) $(GAME_SHARED_OBJS)
$(CLINK) $(SHLIBLDFLAGS) -o $(BUILD_DIR)/$@ $(RICOCHETDLL_OBJS) $(RICOCHETWPN_OBJS) $(PM_OBJS) $(GAME_SHARED_OBJS) $(LDFLAGS) $(CPP_LIB)
p4 edit ../../game/mod/dlls/$@
cp $(BUILD_DIR)/$@ ../../game/mod/dlls
./gendbg.sh ../../game/mod/dlls/$@
$(RICOCHETWPN_OBJ_DIR)/%.o : $(RICOCHETWPN_SRC_DIR)/%.cpp
$(DO_RICOCHETWPN_CC)
$(RICOCHETDLL_OBJ_DIR)/%.o : $(RICOCHETDLL_SRC_DIR)/%.cpp
$(DO_RICOCHETDLL_CC)
$(PM_OBJ_DIR)/%.o : $(PM_SRC_DIR)/%.c
$(DO_PM_CC)
$(GAME_SHARED_OBJ_DIR)/%.o : $(GAME_SHARED_SRC_DIR)/%.cpp
$(DO_GAME_SHARED_CC)
clean:
-rm -rf $(GAME_SHARED_OBJ_DIR)
-rm -rf $(PM_OBJ_DIR)
-rm -rf $(RICOCHETWPN_OBJ_DIR)
-rm -rf $(RICOCHETDLL_OBJ_DIR)
-rm -f ricochet_$(ARCH).$(SHLIBEXT)
-rm -f ricochet.$(SHLIBEXT)

53
linux/gendbg.sh Executable file
View file

@ -0,0 +1,53 @@
#!/bin/bash
UNAME=`uname`
if [ "$UNAME" == "Darwin" ]; then
p4 edit $1.dSYM/...
dsymutil $1
p4 revert -a $1.dSYM/...
exit 0;
fi
OBJCOPY=/valve/bin/objcopy
function usage {
echo "$0 /path/to/input/file [-o /path/to/output/file ]"
echo ""
}
if [ $# == 0 ]; then
usage
exit 2
fi
if [ $(basename $1) == $1 ]; then
INFILEDIR=$PWD
else
INFILEDIR=$(cd ${1%/*} && echo $PWD)
fi
INFILE=$(basename $1)
OUTFILEDIR=$INFILEDIR
OUTFILE=$INFILE.dbg
while getopts "o:" opt; do
case $opt in
o)
OUTFILEDIR=$(cd ${OPTARG%/*} && echo $PWD)
OUTFILE=$(basename $OPTARG)
;;
esac
done
if [ "$OUTFILEDIR" != "$INFILEDIR" ]; then
INFILE=${INFILEDIR}/${INFILE}
OUTFILE=${OUTFILEDIR}/${OUTFILE}
fi
pushd "$INFILEDIR"
p4 edit "$OUTFILE"
$OBJCOPY "$INFILE" "$OUTFILE"
$OBJCOPY --add-gnu-debuglink="$OUTFILE" "$INFILE"
p4 revert -a "$OUTFILE"
popd

BIN
linux/libSDL2-2.0.0.dylib Normal file

Binary file not shown.

View file

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleIdentifier</key>
<string>com.apple.xcode.dsym.libSDL2-2.0.0.dylib</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>dSYM</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleVersion</key>
<string>1</string>
</dict>
</plist>

BIN
linux/libSDL2-2.0.so.0 Executable file

Binary file not shown.

BIN
linux/libSDL2-2.0.so.0.dbg Executable file

Binary file not shown.

1
linux/libSDL2.dylib Symbolic link
View file

@ -0,0 +1 @@
libSDL2-2.0.0.dylib

1
linux/libSDL2.so Symbolic link
View file

@ -0,0 +1 @@
libSDL2-2.0.so.0

BIN
linux/release/vgui.dylib Executable file

Binary file not shown.

BIN
linux/release/vgui.so Executable file

Binary file not shown.