source: cheroxy/trunk/src/makefile@ 46

Last change on this file since 46 was 46, checked in by cheese, 11 years ago

#1 rename http message to http header and change way to process response content as binary

File size: 1.7 KB
Line 
1#----------------------------------------------------------
2# platform
3#----------------------------------------------------------
4OS = 64
5
6ifeq ($(OS), 64)
7 PLATFORM = -m64
8else
9 PLATFORM = -m32
10endif
11
12#----------------------------------------------------------
13# env
14#----------------------------------------------------------
15FILES = \
16 CRXException \
17 CRXHttpHeader \
18 CRXHttpRequest \
19 CRXHttpResponse \
20 CRXSocket \
21 CRXMutex \
22 CRXFilter \
23 CRXProxy \
24 main \
25
26CXX = g++
27LD = g++
28CXXDEFS = -D_DEBUG
29CXXFLAGS = $(PLATFORM) -fPIC -Wall -Wcast-align -c -g
30LDFLAGS = $(PLATFORM)
31SHARED_FLAGS = $(PLATFORM) -shared
32
33SOURCE_TYPE = cpp
34TARGET_PATH = ../_build
35OBJ_PATH = ../_obj
36TARGET = $(TARGET_PATH)/libcheroxy.so
37SRCS = $(addsuffix .$(SOURCE_TYPE),$(FILES))
38OBJS = $(addprefix $(OBJ_PATH)/,$(addsuffix .o,$(FILES)))
39
40INCLUDES = -I../include
41LIBS = -lpthread
42
43# test
44TARGET_TEST = $(TARGET_PATH)/cheroxy.ex
45
46#----------------------------------------------------------
47# label
48#----------------------------------------------------------
49all: $(OBJ_PATH) $(TARGET_PATH) $(TARGET)
50 @echo ========== Complete CHEROXY compilation ==========
51$(TARGET_PATH): dummy
52 @if [ ! -d $@ ] ; then mkdir $@ ; fi
53$(OBJ_PATH): dummy
54 @if [ ! -d $@ ] ; then mkdir $@ ; fi
55
56# link
57$(TARGET): $(OBJS)
58 $(LD) $(SHARED_FLAGS) -o $@ $? $(LIBS)
59
60# compile
61$(OBJ_PATH)/%.o: %.$(SOURCE_TYPE)
62 $(CXX) $(CXXFLAGS) $(CXXDEFS) $(INCLUDES) -o $@ $?
63
64clean: dummy
65 rm -rf $(TARGET_PATH) $(OBJ_PATH)
66
67dummy:
68
69# test
70test: all
71 $(LD) $(LDFLAGS) -o $(TARGET_TEST) -L$(TARGET_PATH) -lcheroxy $(LIBS)
72 cd $(TARGET_PATH); LD_LIBRARY_PATH=. $(TARGET_TEST)
73
Note: See TracBrowser for help on using the repository browser.