diff --git a/extensions/regex/Makefile b/extensions/regex/Makefile index c5996806..0c0274fa 100644 --- a/extensions/regex/Makefile +++ b/extensions/regex/Makefile @@ -1,8 +1,10 @@ #(C)2004-2008 Metamod:Source Development Team # Makefile written by David "BAILOPAN" Anderson -SOURCEMM = ../../../sourcemm-1.6 SMSDK = ../.. +SRCDS = ~/srcds +SOURCEMM = ../../../sourcemm-1.6 +HL2SDK = ../../../hl2sdk ##################################### ### EDIT BELOW FOR OTHER PROJECTS ### @@ -10,7 +12,10 @@ SMSDK = ../.. PROJECT = regex -OBJECTS = sdk/smsdk_ext.cpp extension.cpp CRegEx.cpp +#Uncomment for SourceMM-enabled extensions +#LINK_HL2 = $(HL2LIB)/tier1_i486.a $(HL2LIB)/mathlib_i486.a vstdlib_i486.so tier0_i486.so + +OBJECTS = extension.cpp CRegEx.cpp sdk/smsdk_ext.cpp ############################################## ### CONFIGURE ANY OTHER FLAGS/OPTIONS HERE ### @@ -21,28 +26,34 @@ C_DEBUG_FLAGS = -g -ggdb3 CPP_GCC4_FLAGS = -fvisibility=hidden -fvisibility-inlines-hidden CPP = gcc-4.1 -LINK = lib_linux/libpcre.a -static-libgcc +HL2PUB = $(HL2SDK)/public +HL2LIB = $(HL2SDK)/linux_sdk -INCLUDE += -I. -I.. -Isdk -I$(HL2PUB) -I$(SOURCEMM)/sourcehook -I$(SMSDK)/public \ - -I$(SMSDK)/public/sourcepawn -I$(SMSDK)/public/extensions +LINK = $(LINK_HL2) lib_linux/libpcre.a -static-libgcc -CFLAGS += -D_LINUX -DNDEBUG -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp \ - -D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca -Dstrcmpi=strcasecmp -Wall -Werror -Wno-switch \ - -Wno-unused -mfpmath=sse -msse -DSOURCEMOD_BUILD -DHAVE_STDINT_H -m32 -CPPFLAGS += -Wno-non-virtual-dtor -fno-exceptions -fno-rtti -fno-threadsafe-statics +INCLUDE = -I. -I.. -Isdk -I$(HL2PUB) -I$(HL2PUB)/dlls -I$(HL2PUB)/engine -I$(HL2PUB)/tier0 -I$(HL2PUB)/tier1 \ + -I$(HL2PUB)/vstdlib -I$(HL2SDK)/tier1 -I$(SOURCEMM) -I$(SOURCEMM)/sourcehook -I$(SOURCEMM)/sourcemm \ + -I$(SMSDK)/public -I$(SMSDK)/public/sourcepawn -I$(SMSDK)/public/extensions \ + +CFLAGS = -D_LINUX -DNDEBUG -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp \ + -Dstrnicmp=strncasecmp -D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca \ + -Dstrcmpi=strcasecmp -Wall -Werror -Wno-switch -Wno-unused -mfpmath=sse -msse \ + -DSOURCEMOD_BUILD -DHAVE_STDINT_H -Wno-uninitialized -m32 +CPPFLAGS = -Wno-non-virtual-dtor -fno-exceptions -fno-rtti -fno-threadsafe-statics ################################################ ### DO NOT EDIT BELOW HERE FOR MOST PROJECTS ### ################################################ ifeq "$(DEBUG)" "true" - BIN_DIR = Debug.$(ENGINE) + BIN_DIR = Debug CFLAGS += $(C_DEBUG_FLAGS) else - BIN_DIR = Release.$(ENGINE) + BIN_DIR = Release CFLAGS += $(C_OPT_FLAGS) endif + GCC_VERSION := $(shell $(CPP) -dumpversion >&1 | cut -b1) ifeq "$(GCC_VERSION)" "4" CPPFLAGS += $(CPP_GCC4_FLAGS) @@ -57,17 +68,22 @@ $(BIN_DIR)/%.o: %.cpp all: mkdir -p $(BIN_DIR)/sdk - $(MAKE) -f Makefile extension + ln -sf $(SRCDS)/bin/vstdlib_i486.so vstdlib_i486.so + ln -sf $(SRCDS)/bin/tier0_i486.so tier0_i486.so + $(MAKE) extension extension: $(OBJ_LINUX) - $(CPP) $(INCLUDE) $(OBJ_LINUX) $(LINK) -m32 -shared -ldl -lm -o$(BIN_DIR)/$(BINARY) + $(CPP) $(INCLUDE) $(CFLAGS) $(CPPFLAGS) $(OBJ_LINUX) $(LINK) -m32 -shared -ldl -lm -o$(BIN_DIR)/$(BINARY) debug: - $(MAKE) -f Makefile all DEBUG=true + $(MAKE) all DEBUG=true default: all clean: - rm -rf $(BIN_DIR)/*.o - rm -rf $(BIN_DIR)/sdk/*.o - rm -rf $(BIN_DIR)/$(BINARY) + rm -rf Release/*.o + rm -rf Release/sdk/*.o + rm -rf Release/$(BINARY) + rm -rf Debug/*.o + rm -rf Debug/sdk/*.o + rm -rf Debug/$(BINARY) diff --git a/extensions/regex/lib_linux/libpcre.a b/extensions/regex/lib_linux/libpcre.a index e8f6fbde..ec8e36be 100644 Binary files a/extensions/regex/lib_linux/libpcre.a and b/extensions/regex/lib_linux/libpcre.a differ diff --git a/extensions/tf2/Makefile b/extensions/tf2/Makefile index af829ccf..bbce9bec 100644 --- a/extensions/tf2/Makefile +++ b/extensions/tf2/Makefile @@ -14,7 +14,7 @@ SMSDK = ../.. PROJECT = game.tf2 -OBJECTS = sdk/smsdk_ext.cpp extension.cpp RegNatives.cpp natives.cpp util.cpp +OBJECTS = extension.cpp natives.cpp RegNatives.cpp util.cpp sdk/smsdk_ext.cpp ############################################## ### CONFIGURE ANY OTHER FLAGS/OPTIONS HERE ### @@ -57,7 +57,8 @@ INCLUDE += -I. -I.. -Isdk -I$(HL2PUB) -I$(HL2PUB)/engine -I$(HL2PUB)/tier0 -I$(H CFLAGS += -D_LINUX -DNDEBUG -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp \ -D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca -Dstrcmpi=strcasecmp -Wall -Werror -Wno-switch \ - -Wno-unused -mfpmath=sse -msse -DSOURCEMOD_BUILD -DHAVE_STDINT_H -m32 -Wno-uninitialized + -Wno-unused -mfpmath=sse -msse -DSOURCEMOD_BUILD -DHAVE_STDINT_H -m32 \ + -Wno-uninitialized CPPFLAGS += -Wno-non-virtual-dtor -fno-exceptions -fno-rtti -fno-threadsafe-statics ################################################ diff --git a/tools/builder/PkgCore.cs b/tools/builder/PkgCore.cs index e0f5439b..984b9ef0 100644 --- a/tools/builder/PkgCore.cs +++ b/tools/builder/PkgCore.cs @@ -260,6 +260,21 @@ namespace builder lib.vcproj_name = "topmenus"; libraries.Add(lib); + lib = new Library(); + lib.package_path = "addons/sourcemod/extensions/auto.2.ep2"; + lib.source_path = "extensions/tf2"; + lib.binary_name = "game.tf2.ext"; + lib.vcproj_name = "tf2"; + lib.build_mode = BuildMode.BuildMode_Episode2; + libraries.Add(lib); + + lib = new Library(); + lib.package_path = "addons/sourcemod/extensions"; + lib.source_path = "extensions/regex"; + lib.binary_name = "regex.ext"; + lib.vcproj_name = "regex"; + libraries.Add(lib); + return (Library [])libraries.ToArray(typeof(Library)); }