Updated for latest hl2sdk-dota changes.
1 # (C)2004-2008 SourceMod Development Team
2 # Makefile written by David "BAILOPAN" Anderson
5 #####################################
6 ### EDIT BELOW FOR OTHER PROJECTS ###
7 #####################################
11 ##############################################
12 ### CONFIGURE ANY OTHER FLAGS/OPTIONS HERE ###
13 ##############################################
15 C_OPT_FLAGS = -DNDEBUG -O3 -funroll-loops -pipe -fno-strict-aliasing
16 C_DEBUG_FLAGS = -D_DEBUG -DDEBUG -g -ggdb3
17 C_GCC4_FLAGS = -fvisibility=hidden
18 CPP_GCC4_FLAGS = -fvisibility-inlines-hidden
23 LINK += -L. -liberty -ldl
27 CFLAGS += -D_LINUX -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp \
28 -D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca -Dstrcmpi=strcasecmp -Wall -Werror \
29 -Wno-uninitialized -mfpmath=sse -msse -DHAVE_STDINT_H -DSM_DEFAULT_THREADER -m32
30 CPPFLAGS += -Wno-non-virtual-dtor -fno-exceptions -fno-rtti
32 ################################################
33 ### DO NOT EDIT BELOW HERE FOR MOST PROJECTS ###
34 ################################################
36 ifeq "$(DEBUG)" "true"
38 CFLAGS += $(C_DEBUG_FLAGS)
41 CFLAGS += $(C_OPT_FLAGS)
44 GCC_VERSION := $(shell $(CPP) -dumpversion >&1 | cut -b1)
45 ifeq "$(GCC_VERSION)" "4"
46 CFLAGS += $(C_GCC4_FLAGS)
47 CPPFLAGS += $(CPP_GCC4_FLAGS)
50 OBJ_LINUX := $(OBJECTS:%vm_engine.cpp=$(BIN_DIR)/%vm_engine.o)
51 OBJ_LINUX := $(OBJ_LINUX:%.cpp=$(BIN_DIR)/%.o)
52 OBJ_LINUX := $(OBJ_LINUX:%.c=$(BIN_DIR)/%.o)
54 $(BIN_DIR)/%vm_engine.o: %vm_engine.cpp
55 $(CPP) $(CFLAGS) $(CPPFLAGS) -o $@ -c $<
58 $(CPP) $(INCLUDE) $(CFLAGS) $(CPPFLAGS) -o $@ -c $<
61 $(CPP) $(INCLUDE) $(CFLAGS) -o $@ -c $<
65 $(MAKE) -f Makefile sourcemod
67 sourcemod: $(OBJ_LINUX)
68 $(CPP) $(INCLUDE) $(OBJ_LINUX) $(LINK) -m32 -o$(BIN_DIR)/$(BINARY)
71 $(MAKE) -f Makefile all DEBUG=true
76 rm -rf $(BIN_DIR)/$(BINARY)