tools/gamedata_md5/Makefile
author David Anderson <dvander@alliedmods.net>
Wed Feb 25 20:07:12 2009 -0500 (2009-02-25)
changeset 2607 f3b8bbe17f85
parent 2471 194be299b700
permissions -rw-r--r--
Backed out changeset fa286305bd3f
pred@2125
     1
# (C)2004-2008 SourceMod Development Team
pred@2125
     2
# Makefile written by David "BAILOPAN" Anderson
pred@2125
     3
pred@2125
     4
pred@2125
     5
#####################################
pred@2125
     6
### EDIT BELOW FOR OTHER PROJECTS ###
pred@2125
     7
#####################################
pred@2125
     8
pred@2125
     9
OBJECTS = main.cpp TextParsers.cpp sm_memtable.cpp md5.cpp
pred@2125
    10
pred@2125
    11
##############################################
pred@2125
    12
### CONFIGURE ANY OTHER FLAGS/OPTIONS HERE ###
pred@2125
    13
##############################################
pred@2125
    14
pred@2125
    15
C_OPT_FLAGS = -DNDEBUG -O3 -funroll-loops -pipe -fno-strict-aliasing
pred@2125
    16
C_DEBUG_FLAGS = -D_DEBUG -DDEBUG -g -ggdb3
pred@2125
    17
C_GCC4_FLAGS = -fvisibility=hidden
pred@2125
    18
CPP_GCC4_FLAGS = -fvisibility-inlines-hidden
dvander@2471
    19
CPP = gcc
pred@2125
    20
pred@2125
    21
BINARY = gamedatamd5
pred@2125
    22
pred@2125
    23
INCLUDE += -I. -I../../public -I../../public/sourcepawn
pred@2125
    24
pred@2125
    25
CFLAGS += -D_LINUX -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp \
pred@2125
    26
	-D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca -Dstrcmpi=strcasecmp -Wall -Werror \
pred@2125
    27
	-Wno-uninitialized -mfpmath=sse -msse -DHAVE_STDINT_H -DSM_DEFAULT_THREADER -m32
pred@2125
    28
CPPFLAGS += -Wno-non-virtual-dtor -fno-exceptions -fno-rtti
pred@2125
    29
pred@2125
    30
################################################
pred@2125
    31
### DO NOT EDIT BELOW HERE FOR MOST PROJECTS ###
pred@2125
    32
################################################
pred@2125
    33
pred@2125
    34
ifeq "$(DEBUG)" "true"
pred@2125
    35
	BIN_DIR = Debug
pred@2125
    36
	CFLAGS += $(C_DEBUG_FLAGS)
pred@2125
    37
else
pred@2125
    38
	BIN_DIR = Release
pred@2125
    39
	CFLAGS += $(C_OPT_FLAGS)
pred@2125
    40
endif
pred@2125
    41
pred@2125
    42
GCC_VERSION := $(shell $(CPP) -dumpversion >&1 | cut -b1)
pred@2125
    43
ifeq "$(GCC_VERSION)" "4"
pred@2125
    44
	CFLAGS += $(C_GCC4_FLAGS)
pred@2125
    45
	CPPFLAGS += $(CPP_GCC4_FLAGS)
pred@2125
    46
endif
pred@2125
    47
pred@2125
    48
OBJ_LINUX := $(OBJECTS:%vm_engine.cpp=$(BIN_DIR)/%vm_engine.o)
pred@2125
    49
OBJ_LINUX := $(OBJ_LINUX:%.cpp=$(BIN_DIR)/%.o)
pred@2125
    50
OBJ_LINUX := $(OBJ_LINUX:%.c=$(BIN_DIR)/%.o)
pred@2125
    51
pred@2125
    52
$(BIN_DIR)/%vm_engine.o: %vm_engine.cpp
pred@2125
    53
	$(CPP) $(CFLAGS) $(CPPFLAGS) -o $@ -c $<
pred@2125
    54
pred@2125
    55
$(BIN_DIR)/%.o: %.cpp
pred@2125
    56
	$(CPP) $(INCLUDE) $(CFLAGS) $(CPPFLAGS) -o $@ -c $<
pred@2125
    57
pred@2125
    58
$(BIN_DIR)/%.o: %.c
pred@2125
    59
	$(CPP) $(INCLUDE) $(CFLAGS) -o $@ -c $<
pred@2125
    60
pred@2125
    61
all:
pred@2125
    62
	mkdir -p $(BIN_DIR)
pred@2125
    63
	$(MAKE) -f Makefile sourcemod
pred@2125
    64
pred@2125
    65
sourcemod: $(OBJ_LINUX)
dvander@2471
    66
	$(CPP) $(INCLUDE) $(OBJ_LINUX) $(LINK) -m32 -lstdc++ -o $(BIN_DIR)/$(BINARY)
pred@2125
    67
pred@2125
    68
debug:
pred@2125
    69
	$(MAKE) -f Makefile all DEBUG=true
pred@2125
    70
pred@2125
    71
default: all
pred@2125
    72
pred@2125
    73
clean:
pred@2125
    74
	rm -rf $(BIN_DIR)/$(BINARY)