source: libcf/trunk/src/makefile@ 161

Last change on this file since 161 was 161, checked in by cheese, 10 years ago

#1 separate doxygen makefile

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