26 lines
672 B
Makefile
26 lines
672 B
Makefile
include ./../../../linux.mk
|
|
L := $(notdir $(realpath $(CURDIR)/..))
|
|
M := libcJSON
|
|
O := $(LIB_REL)/$(M).a
|
|
S := $(SRC_ROOT_DIR)/$(L)/libcJSON/src
|
|
I := -I$(SRC_ROOT_DIR)/$(L)/libcJSON/inc
|
|
B := $(CURDIR)/$(M)/obj
|
|
SRCS := $(wildcard $(S)/*.c)
|
|
OBJS := $(patsubst $(S)/%.c,$(B)/%.o,$(SRCS))
|
|
F := $(C_FLAGS) $(I) -I$(SRC_ROOT_DIR)/public/liblog/inc
|
|
all:
|
|
@mkdir -p $(ROOT_DIR)/release/inc
|
|
@cp -f $(S:src=inc)/*.h $(ROOT_DIR)/release/inc/ 2>/dev/null; true
|
|
@$(MAKE) $(O)
|
|
$(O): $(OBJS)
|
|
@mkdir -p $(dir $@)
|
|
$(AR) rcs $@ $^
|
|
@echo "[$(M)] built"
|
|
$(B)/%.o: $(S)/%.c
|
|
@mkdir -p $(dir $@)
|
|
$(CC) $(F) -c $< -o $@
|
|
clean:
|
|
rm -rf $(B) $(O)
|
|
rebuild: clean all
|
|
.PHONY: all clean rebuild
|