| author | David Anderson <dvander@alliedmods.net> |
| Mon Mar 17 01:09:28 2008 +0000 (2008-03-17) | |
| changeset 1941 | 54539fa4e51f |
| parent 1868 | 33f4a6629b49 |
| child 1947 | e73a1e51833b |
| permissions | -rw-r--r-- |
| dvander@353 | 1 |
#(C)2004-2007 SourceMod Development Team |
| dvander@353 | 2 |
# Makefile written by David "BAILOPAN" Anderson |
| dvander@353 | 3 |
|
| dvander@353 | 4 |
SMSDK = ../.. |
| dvander@353 | 5 |
|
| dvander@353 | 6 |
### EDIT BELOW FOR OTHER PROJECTS ### |
| dvander@353 | 7 |
|
| dvander@353 | 8 |
OPT_C_FLAGS = -O3 -funroll-loops -s -pipe -fno-strict-aliasing -fomit-frame-pointer |
| dvander@353 | 9 |
OPT_CPP_FLAGS = |
| dvander@353 | 10 |
DEBUG_C_FLAGS = -g -ggdb3 |
| dvander@353 | 11 |
CPP = gcc-4.1 |
| dvander@353 | 12 |
BINARY = spcomp |
| dvander@353 | 13 |
|
| dvander@353 | 14 |
OBJECTS = libpawnc.c lstring.c memfile.c pawncc.c sc1.c sc2.c sc3.c sc4.c sc5.c \ |
| dvander@353 | 15 |
sc6.c sc7.c scexpand.c sci18n.c sclist.c scmemfil.c scstate.c sctracker.c \ |
| dvander@353 | 16 |
scvars.c sp_file.c binreloc.c zlib/adler32.c zlib/crc32.c zlib/deflate.c \ |
| dvander@353 | 17 |
zlib/gzio.c zlib/infback.c zlib/inffast.c zlib/inflate.c zlib/inftrees.c \ |
| dvander@353 | 18 |
zlib/trees.c zlib/uncompr.c zlib/zutil.c zlib/compress.c |
| dvander@353 | 19 |
|
| dvander@353 | 20 |
LINK = -lgcc -static-libgcc |
| dvander@353 | 21 |
|
| dvander@353 | 22 |
INCLUDE = -I. -I$(SMSDK)/public/sourcepawn |
| dvander@353 | 23 |
|
| dvander@353 | 24 |
GCC_VERSION := $(shell $(CPP) -dumpversion >&1 | cut -b1) |
| dvander@353 | 25 |
|
| dvander@353 | 26 |
ifeq "$(GCC_VERSION)" "4" |
| dvander@353 | 27 |
OPT_CPP_FLAGS += -fvisibility=hidden -fvisibility-inlines-hidden |
| dvander@353 | 28 |
endif |
| dvander@353 | 29 |
|
| dvander@353 | 30 |
ifeq "$(DEBUG)" "true" |
| dvander@353 | 31 |
BIN_DIR = Debug |
| dvander@353 | 32 |
CFLAGS = $(DEBUG_C_FLAGS) |
| dvander@353 | 33 |
else |
| dvander@353 | 34 |
BIN_DIR = Release |
| dvander@353 | 35 |
CFLAGS = $(OPT_C_FLAGS) |
| dvander@353 | 36 |
CPPFLAGS += $(OPT_CPP_FLAGS) |
| dvander@353 | 37 |
endif |
| dvander@353 | 38 |
|
| dvander@1868 | 39 |
CFLAGS += -DLINUX -DNDEBUG -DHAVE_STDINT_H -DAMX_ANSIONLY -DENABLE_BINRELOC -m32 |
| dvander@353 | 40 |
CPPFLAGS += -Wno-deprecated -fno-exceptions -fno-rtti |
| dvander@353 | 41 |
|
| dvander@353 | 42 |
OBJ_LINUX := $(OBJECTS:%.cpp=$(BIN_DIR)/%.o) |
| dvander@353 | 43 |
OBJ_LINUX := $(OBJECTS:%.c=$(BIN_DIR)/%.o) |
| dvander@353 | 44 |
|
| dvander@353 | 45 |
$(BIN_DIR)/%.o: %.cpp |
| dvander@353 | 46 |
$(CPP) $(INCLUDE) $(CFLAGS) $(CPPFLAGS) -o $@ -c $< |
| dvander@353 | 47 |
|
| dvander@353 | 48 |
$(BIN_DIR)/%.o: %.c |
| dvander@353 | 49 |
$(CPP) $(INCLUDE) $(CFLAGS) -o $@ -c $< |
| dvander@353 | 50 |
|
| dvander@353 | 51 |
all: |
| dvander@353 | 52 |
mkdir -p $(BIN_DIR)/zlib |
| dvander@353 | 53 |
$(MAKE) spcomp |
| dvander@353 | 54 |
|
| dvander@353 | 55 |
spcomp: $(OBJ_LINUX) |
| dvander@1868 | 56 |
$(CPP) $(INCLUDE) $(CFLAGS) $(CPPFLAGS) $(OBJ_LINUX) $(LINK) -m32 -ldl -lm -o$(BIN_DIR)/$(BINARY) |
| dvander@353 | 57 |
|
| dvander@630 | 58 |
debug: |
| dvander@630 | 59 |
$(MAKE) all DEBUG=true |
| dvander@630 | 60 |
|
| dvander@353 | 61 |
default: all |
| dvander@353 | 62 |
|
| dvander@353 | 63 |
clean: |
| dvander@353 | 64 |
rm -rf Release/*.o |
| dvander@353 | 65 |
rm -rf Release/$(BINARY) |
| dvander@353 | 66 |
rm -rf Debug/*.o |
| dvander@353 | 67 |
rm -rf Debug/$(BINARY) |
| dvander@353 | 68 |