source: libcf/trunk/src/makefile@ 119

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

#1 fix and arrange doxygen configuration file and doxygen comments

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