source: cheroxy/trunk/src/makefile@ 19

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

#1 fix error on linux for r18

File size: 1.5 KB
Line 
1
2#----------------------------------------------------------
3# platform
4#----------------------------------------------------------
5OS = 64
6
7ifeq ($(OS), 64)
8 PLATFORM = -m64
9else
10 PLATFORM = -m32
11endif
12
13#----------------------------------------------------------
14# env
15#----------------------------------------------------------
16FILES = \
17 CRXException \
18 CRXHttpMessage \
19 CRXHttpRequest \
20 CRXHttpResponse \
21 CRXSocket \
22 CRXMutex \
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)/cheroxy.ex
37SRCS = $(addsuffix .$(SOURCE_TYPE),$(FILES))
38OBJS = $(addprefix $(OBJ_PATH)/,$(addsuffix .o,$(FILES)))
39
40INCLUDES = -I../include
41LIBS = -lpthread
42
43#----------------------------------------------------------
44# label
45#----------------------------------------------------------
46all: $(OBJ_PATH) $(TARGET_PATH) $(TARGET)
47 @echo ========== Complete CHEROXY compilation ==========
48$(TARGET_PATH): dummy
49 @if [ ! -d $@ ] ; then mkdir $@ ; fi
50$(OBJ_PATH): dummy
51 @if [ ! -d $@ ] ; then mkdir $@ ; fi
52
53# link
54$(TARGET): $(OBJS)
55 $(LD) $(LDFLAGS) -o $@ $? $(LIBS)
56
57# compile
58$(OBJ_PATH)/%.o: %.$(SOURCE_TYPE)
59 $(CXX) $(CXXFLAGS) $(CXXDEFS) $(INCLUDES) -o $@ $?
60
61clean: dummy
62 rm -rf $(TARGET_PATH) $(OBJ_PATH)
63
64dummy:
65
66test: all
67 $(TARGET)
68
Note: See TracBrowser for help on using the repository browser.