1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/extensions/sqlite/Makefile Sun Mar 30 07:00:22 2008 +0000
1.3 @@ -0,0 +1,119 @@
1.4 +#(C)2004-2008 Metamod:Source Development Team
1.5 +# Makefile written by David "BAILOPAN" Anderson
1.6 +
1.7 +SMSDK = ../..
1.8 +SRCDS = ~/srcds
1.9 +SOURCEMM = ../../../sourcemm-1.6
1.10 +
1.11 +#####################################
1.12 +### EDIT BELOW FOR OTHER PROJECTS ###
1.13 +#####################################
1.14 +
1.15 +PROJECT = dbi.sqlite
1.16 +
1.17 +#Uncomment for SourceMM-enabled extensions
1.18 +#LINK_HL2 = $(HL2LIB)/tier1_i486.a vstdlib_i486.so tier0_i486.so
1.19 +
1.20 +OBJECTS = sdk/smsdk_ext.cpp extension.cpp sm_memtable.cpp \
1.21 + driver/SqDatabase.cpp driver/SqDriver.cpp driver/SqQuery.cpp \
1.22 + driver/SqResults.cpp
1.23 +
1.24 +OBJECTS += sqlite-source/alter.c sqlite-source/analyze.c \
1.25 + sqlite-source/attach.c sqlite-source/auth.c sqlite-source/btree.c \
1.26 + sqlite-source/build.c sqlite-source/callback.c sqlite-source/complete.c \
1.27 + sqlite-source/date.c sqlite-source/delete.c sqlite-source/expr.c \
1.28 + sqlite-source/func.c sqlite-source/hash.c sqlite-source/insert.c \
1.29 + sqlite-source/legacy.c sqlite-source/main.c sqlite-source/malloc.c \
1.30 + sqlite-source/opcodes.c sqlite-source/os.c sqlite-source/os_unix.c \
1.31 + sqlite-source/pager.c sqlite-source/parse.c sqlite-source/pragma.c \
1.32 + sqlite-source/prepare.c sqlite-source/printf.c sqlite-source/random.c \
1.33 + sqlite-source/select.c sqlite-source/table.c sqlite-source/tokenize.c \
1.34 + sqlite-source/trigger.c sqlite-source/update.c sqlite-source/utf.c \
1.35 + sqlite-source/util.c sqlite-source/vacuum.c sqlite-source/vdbe.c \
1.36 + sqlite-source/vdbeapi.c sqlite-source/vdbeaux.c sqlite-source/vdbeblob.c \
1.37 + sqlite-source/vdbefifo.c sqlite-source/vdbemem.c sqlite-source/vtab.c \
1.38 + sqlite-source/where.c sqlite-source/btmutex.c sqlite-source/journal.c \
1.39 + sqlite-source/mem1.c sqlite-source/mem2.c sqlite-source/mutex.c \
1.40 + sqlite-source/mutex_unix.c
1.41 +
1.42 +##############################################
1.43 +### CONFIGURE ANY OTHER FLAGS/OPTIONS HERE ###
1.44 +##############################################
1.45 +
1.46 +C_OPT_FLAGS = -O3 -funroll-loops -s -pipe -fno-strict-aliasing
1.47 +C_DEBUG_FLAGS = -g -ggdb3
1.48 +CPP_GCC4_FLAGS = -fvisibility=hidden -fvisibility-inlines-hidden
1.49 +CPP = gcc-4.1
1.50 +
1.51 +HL2PUB = $(HL2SDK)/public
1.52 +HL2LIB = $(HL2SDK)/linux_sdk
1.53 +HL2SDK = $(SOURCEMM)/hl2sdk
1.54 +
1.55 +LINK = $(LINK_HL2) -static-libgcc -lpthread
1.56 +
1.57 +INCLUDE = -I. -I.. -Isdk -I$(HL2PUB) -I$(HL2PUB)/dlls -I$(HL2PUB)/engine -I$(HL2PUB)/tier0 -I$(HL2PUB)/tier1 \
1.58 + -I$(HL2PUB)/vstdlib -I$(HL2SDK)/tier1 -I$(SOURCEMM) -I$(SOURCEMM)/sourcehook -I$(SOURCEMM)/sourcemm \
1.59 + -I$(SMSDK)/public -I$(SMSDK)/public/sourcepawn -I$(SMSDK)/public/extensions \
1.60 +
1.61 +CFLAGS = -D_LINUX -DNDEBUG -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp \
1.62 + -Dstrnicmp=strncasecmp -D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca \
1.63 + -Dstrcmpi=strcasecmp -Wall -Werror -mfpmath=sse -msse -DSOURCEMOD_BUILD -Wno-uninitialized \
1.64 + -DSQLITE_THREADSAFE -DSQLITE_OMIT_LOAD_EXTENSION -m32
1.65 +CPPFLAGS = -Wno-non-virtual-dtor -fno-exceptions -fno-rtti
1.66 +
1.67 +################################################
1.68 +### DO NOT EDIT BELOW HERE FOR MOST PROJECTS ###
1.69 +################################################
1.70 +
1.71 +ifeq "$(DEBUG)" "true"
1.72 + BIN_DIR = Debug
1.73 + CFLAGS += $(C_DEBUG_FLAGS)
1.74 +else
1.75 + BIN_DIR = Release
1.76 + CFLAGS += $(C_OPT_FLAGS)
1.77 +endif
1.78 +
1.79 +
1.80 +GCC_VERSION := $(shell $(CPP) -dumpversion >&1 | cut -b1)
1.81 +ifeq "$(GCC_VERSION)" "4"
1.82 + CPPFLAGS += $(CPP_GCC4_FLAGS)
1.83 +endif
1.84 +
1.85 +BINARY = $(PROJECT).ext.so
1.86 +
1.87 +OBJ_LINUX := $(OBJECTS:%.cpp=$(BIN_DIR)/%.o)
1.88 +OBJ_LINUX := $(OBJ_LINUX:%.c=$(BIN_DIR)/%.o)
1.89 +
1.90 +$(BIN_DIR)/%.o: %.cpp
1.91 + $(CPP) $(INCLUDE) $(CFLAGS) $(CPPFLAGS) -o $@ -c $<
1.92 +
1.93 +$(BIN_DIR)/%.o: %.c
1.94 + $(CPP) $(INCLUDE) $(CFLAGS) -o $@ -c $<
1.95 +
1.96 +all:
1.97 + mkdir -p $(BIN_DIR)/sdk
1.98 + mkdir -p $(BIN_DIR)/driver
1.99 + mkdir -p $(BIN_DIR)/sqlite-source
1.100 + ln -sf $(SRCDS)/bin/vstdlib_i486.so vstdlib_i486.so
1.101 + ln -sf $(SRCDS)/bin/tier0_i486.so tier0_i486.so
1.102 + $(MAKE) extension
1.103 +
1.104 +extension: $(OBJ_LINUX)
1.105 + $(CPP) $(INCLUDE) $(CFLAGS) $(CPPFLAGS) $(OBJ_LINUX) $(LINK) -m32 -shared -ldl -lm -o$(BIN_DIR)/$(BINARY)
1.106 +
1.107 +debug:
1.108 + $(MAKE) all DEBUG=true
1.109 +
1.110 +default: all
1.111 +
1.112 +clean:
1.113 + rm -rf Release/*.o
1.114 + rm -rf Release/sdk/*.o
1.115 + rm -rf Release/sqlite-source/*.o
1.116 + rm -rf Release/driver/*.o
1.117 + rm -rf Release/$(BINARY)
1.118 + rm -rf Debug/*.o
1.119 + rm -rf Debug/sdk/*.o
1.120 + rm -rf Debug/sqlite-source/*.o
1.121 + rm -rf Debug/driver/*.o
1.122 + rm -rf Debug/$(BINARY)