source: libcf/trunk/src/makefile@ 151

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

#1 fix interface and add util module

File size: 1.8 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
34
35#----------------------------------------------------------
36# label
37#----------------------------------------------------------
[132]38all: $(OBJ_PATH) $(TARGET_PATH) $(TARGET) $(DOXYGEN_OUTPUT_PATH)
[74]39 @echo ========== Complete LIBCF compilation ==========
[132]40$(TARGET_PATH):
41 @echo make target path
[4]42 @if [ ! -d $@ ] ; then mkdir $@ ; fi
[132]43$(OBJ_PATH):
44 @echo make obj path
[4]45 @if [ ! -d $@ ] ; then mkdir $@ ; fi
46
47# link
48$(TARGET_PATH)/%.$(EXT_SHARED): $(OBJS)
[151]49 $(LD) $(SHARED_FLAGS) -o $@ $(LIBS) $?
[4]50
51$(TARGET_PATH)/%.$(EXT_STATIC): $(OBJS)
[146]52 $(AR) $(ARFLAGS) $@ $?
[4]53
54# compile
55$(OBJ_PATH)/%.o: %.$(SOURCE_TYPE)
[151]56 $(CC) $(CFLAGS) -c $(CDEFS) $(INCLUDES) -o $@ $?
[4]57
[119]58# doxygen
[132]59$(DOXYGEN_OUTPUT_PATH):
[151]60ifeq ($(DOXYGEN_CREATE),yes)
[119]61ifeq ($(DOXYGEN),)
62 @echo "doxygen was not found."
63else
64 @echo "========== DOXYGEN DOCUMENTATION =========="
[132]65 @if [ ! -d $@ ] ; then mkdir $@ ; fi
[119]66 cd $(DOXYGEN_PATH); $(DOXYGEN) $(DOXYGEN_FILE); cat warning.log;
67endif
68endif
69
[132]70clean:
[4]71 rm -rf $(TARGET_PATH) $(OBJ_PATH)
[151]72ifeq ($(DOXYGEN_CREATE),yes)
[132]73 rm -rf $(DOXYGEN_OUTPUT_PATH)
[119]74endif
Note: See TracBrowser for help on using the repository browser.