Files
selfcare/proxy_c/third-lib/json-c/Makefile
2025-03-03 11:40:37 +08:00

45 lines
812 B
Makefile

release = no
cover = no
CC = gcc
CPP = g++
LD = ld
AR = ar
CP = cp
ifeq ($(release), no)
CFLAGS += -Wall -Werror -g -fPIC
else
CFLAGS += -Wall -Werror -O3 -fPIC
endif
LIB_DIR = ./lib
CSRC_DIR = ./src
OBJ_DIR = ./obj
CSRCS = $(wildcard $(CSRC_DIR)/*.c)
COBJS := $(patsubst %.c, $(OBJ_DIR)/%.o, $(notdir $(CSRCS)))
TARGET_LIB = $(OBJ_DIR)/libjson.a
all : chkobjdir $(TARGET_LIB)
chkobjdir:
@if test ! -d $(OBJ_DIR); \
then \
mkdir $(OBJ_DIR);\
fi
$(OBJ_DIR)/%.o : $(CSRC_DIR)/%.c
@echo "COMPILE $<"
@$(CC) -fPIC $(CFLAGS) -c $< -o $@
$(TARGET_LIB) : $(COBJS)
@echo "AR $(TARGET_LIB)"
@$(AR) cr $(TARGET_LIB) $(COBJS)
@$(CP) $(TARGET_LIB) $(LIB_DIR)
.PHONY:clean
clean:
@echo "CLEAN $(TARGET_LIB)"
@rm -rf $(TARGET_LIB) $(OBJ_DIR)