tools/vtable_scanner/Makefile
author Nicholas Hastings <skamonkey@gmail.com>
Mon Jul 29 10:03:18 2013 -0400 (2013-07-29)
changeset 3960 d50b36dc6821
parent 2250 f1bcab0f4b6c
permissions -rw-r--r--
Updated for latest hl2sdk-dota changes.
     1 # (C)2004-2008 SourceMod Development Team
     2 # Makefile written by David "BAILOPAN" Anderson
     3 
     4 
     5 #####################################
     6 ### EDIT BELOW FOR OTHER PROJECTS ###
     7 #####################################
     8 
     9 OBJECTS = main.cpp
    10 
    11 ##############################################
    12 ### CONFIGURE ANY OTHER FLAGS/OPTIONS HERE ###
    13 ##############################################
    14 
    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
    19 CPP = gcc-4.1
    20 
    21 BINARY = vtablecheck
    22 
    23 LINK += -L. -liberty -ldl
    24 
    25 INCLUDE += -I.
    26 
    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
    31 
    32 ################################################
    33 ### DO NOT EDIT BELOW HERE FOR MOST PROJECTS ###
    34 ################################################
    35 
    36 ifeq "$(DEBUG)" "true"
    37 	BIN_DIR = Debug
    38 	CFLAGS += $(C_DEBUG_FLAGS)
    39 else
    40 	BIN_DIR = Release
    41 	CFLAGS += $(C_OPT_FLAGS)
    42 endif
    43 
    44 GCC_VERSION := $(shell $(CPP) -dumpversion >&1 | cut -b1)
    45 ifeq "$(GCC_VERSION)" "4"
    46 	CFLAGS += $(C_GCC4_FLAGS)
    47 	CPPFLAGS += $(CPP_GCC4_FLAGS)
    48 endif
    49 
    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)
    53 
    54 $(BIN_DIR)/%vm_engine.o: %vm_engine.cpp
    55 	$(CPP) $(CFLAGS) $(CPPFLAGS) -o $@ -c $<
    56 
    57 $(BIN_DIR)/%.o: %.cpp
    58 	$(CPP) $(INCLUDE) $(CFLAGS) $(CPPFLAGS) -o $@ -c $<
    59 
    60 $(BIN_DIR)/%.o: %.c
    61 	$(CPP) $(INCLUDE) $(CFLAGS) -o $@ -c $<
    62 
    63 all:
    64 	mkdir -p $(BIN_DIR)
    65 	$(MAKE) -f Makefile sourcemod
    66 
    67 sourcemod: $(OBJ_LINUX)
    68 	$(CPP) $(INCLUDE) $(OBJ_LINUX) $(LINK) -m32 -o$(BIN_DIR)/$(BINARY)
    69 
    70 debug:
    71 	$(MAKE) -f Makefile all DEBUG=true
    72 
    73 default: all
    74 
    75 clean:
    76 	rm -rf $(BIN_DIR)/$(BINARY)