[4] | 1 | #----------------------------------------------------------
|
---|
| 2 | # platform
|
---|
| 3 | #----------------------------------------------------------
|
---|
[73] | 4 | include ../makeinclude/userdefine.mk
|
---|
[133] | 5 | include ../makeinclude/platform.mk
|
---|
[4] | 6 |
|
---|
| 7 | #----------------------------------------------------------
|
---|
| 8 | # env
|
---|
| 9 | #----------------------------------------------------------
|
---|
| 10 | FILES = \
|
---|
| 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] | 24 | TARGET_NAME = cf
|
---|
[4] | 25 |
|
---|
| 26 | SOURCE_TYPE = c
|
---|
| 27 | TARGET_PATH = ../_build
|
---|
| 28 | OBJ_PATH = ../_obj
|
---|
[14] | 29 | TARGET = $(TARGET_PATH)/lib$(TARGET_NAME).$(EXT_SHARED)
|
---|
[4] | 30 | SRCS = $(addsuffix .$(SOURCE_TYPE),$(FILES))
|
---|
| 31 | OBJS = $(addprefix $(OBJ_PATH)/,$(addsuffix .o,$(FILES)))
|
---|
| 32 |
|
---|
| 33 | INCLUDES = -I../include
|
---|
| 34 |
|
---|
| 35 | #----------------------------------------------------------
|
---|
| 36 | # label
|
---|
| 37 | #----------------------------------------------------------
|
---|
[132] | 38 | all: $(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] | 60 | ifeq ($(DOXYGEN_CREATE),yes)
|
---|
[119] | 61 | ifeq ($(DOXYGEN),)
|
---|
| 62 | @echo "doxygen was not found."
|
---|
| 63 | else
|
---|
| 64 | @echo "========== DOXYGEN DOCUMENTATION =========="
|
---|
[132] | 65 | @if [ ! -d $@ ] ; then mkdir $@ ; fi
|
---|
[119] | 66 | cd $(DOXYGEN_PATH); $(DOXYGEN) $(DOXYGEN_FILE); cat warning.log;
|
---|
| 67 | endif
|
---|
| 68 | endif
|
---|
| 69 |
|
---|
[132] | 70 | clean:
|
---|
[4] | 71 | rm -rf $(TARGET_PATH) $(OBJ_PATH)
|
---|
[151] | 72 | ifeq ($(DOXYGEN_CREATE),yes)
|
---|
[132] | 73 | rm -rf $(DOXYGEN_OUTPUT_PATH)
|
---|
[119] | 74 | endif
|
---|