source: libcf/trunk/src/makefile@ 128

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

#1 add bitwise util from ARIA of chevalier

File size: 1.8 KB
Line 
1#----------------------------------------------------------
2# platform
3#----------------------------------------------------------
4include ../makeinclude/userdefine.mk
5include ../makeinclude/platform.mk
6
7#----------------------------------------------------------
8# env
9#----------------------------------------------------------
10FILES = \
11 cf_file \
12 cf_socket \
13 cf_thread \
14 cf_mutex \
15 cf_debug \
16 cf_log \
17 cf_codec \
18 cf_list \
19 cf_queue \
20 cf_stack \
21 cf_bitwise \
22
23TARGET_NAME = cf
24
25SOURCE_TYPE = c
26TARGET_PATH = ../_build
27OBJ_PATH = ../_obj
28TARGET = $(TARGET_PATH)/lib$(TARGET_NAME).$(EXT_SHARED)
29SRCS = $(addsuffix .$(SOURCE_TYPE),$(FILES))
30OBJS = $(addprefix $(OBJ_PATH)/,$(addsuffix .o,$(FILES)))
31DOXYGEN_PATH = ../docs
32DOXYGEN_FILE = $(DOXYGEN_PATH)/doxyfile
33
34INCLUDES = -I../include
35
36#----------------------------------------------------------
37# label
38#----------------------------------------------------------
39all: $(OBJ_PATH) $(TARGET_PATH) $(TARGET) doxygen
40 @echo ========== Complete LIBCF compilation ==========
41$(TARGET_PATH): dummy
42 @if [ ! -d $@ ] ; then mkdir $@ ; fi
43$(OBJ_PATH): dummy
44 @if [ ! -d $@ ] ; then mkdir $@ ; fi
45
46# link
47$(TARGET_PATH)/%.$(EXT_SHARED): $(OBJS)
48 $(LD) $(SHARED_FLAGS) -o $@ $? $(LIBS)
49
50$(TARGET_PATH)/%.$(EXT_STATIC): $(OBJS)
51 $(AR) $(ARFLAGS) -o $@ $?
52
53# compile
54$(OBJ_PATH)/%.o: %.$(SOURCE_TYPE)
55 $(CC) $(CFLAGS) $(CDEFS) $(INCLUDES) -o $@ -c $?
56
57# doxygen
58doxygen: dummy
59ifeq ($(DOXYGEN_CREATE),YES)
60ifeq ($(DOXYGEN),)
61 @echo "doxygen was not found."
62else
63 @echo "========== DOXYGEN DOCUMENTATION =========="
64 cd $(DOXYGEN_PATH); $(DOXYGEN) $(DOXYGEN_FILE); cat warning.log;
65endif
66endif
67
68clean: dummy
69 rm -rf $(TARGET_PATH) $(OBJ_PATH)
70ifeq ($(DOXYGEN_CREATE),YES)
71 rm -rf ../documentation
72endif
73
74dummy:
Note: See TracBrowser for help on using the repository browser.