54 lines
1.2 KiB
Makefile
54 lines
1.2 KiB
Makefile
|
|
CC = gcc
|
|
CFLAGS = -g -DJEMALLOC_NO_DEMANGLE
|
|
|
|
NET_SRCS = ntyco.c proactor.c reactor.c kvstore.c
|
|
KV_SRCS = kvs_array_bin.c kvs_rbtree_bin.c kvs_hash_bin.c kvs_rw_tools.c kvs_protocol_resp.c kvs_slave.c
|
|
MEM_SRCS = ./memory/mempool.c ./memory/alloc_dispatch.c
|
|
COMMON_SRCS = ./common/config.c ./diskuring/diskuring.c
|
|
DUMP_SRCS = ./dump/kvs_snapshot.c ./dump/kvs_oplog.c
|
|
|
|
SRCS = $(NET_SRCS) $(KV_SRCS) $(MEM_SRCS) $(COMMON_SRCS) $(DUMP_SRCS)
|
|
|
|
INC = -I./NtyCo/core/ -I/usr/include/libxml2 -I./
|
|
LIBDIRS = -L./NtyCo/
|
|
# LIBS = -lntyco -lpthread -luring -ldl -lxml2 -ljemalloc
|
|
LIBS = -lntyco -lpthread -luring -ldl -lxml2
|
|
|
|
TARGET = kvstore
|
|
SUBDIR = ./NtyCo/
|
|
|
|
|
|
TEST_REDIS = ./test-redis/testcase
|
|
TEST_REDIS_SRCS = ./test-redis/test.c
|
|
TEST_REDIS_LDFLAGS = -lhiredis
|
|
|
|
OBJS = $(SRCS:.c=.o)
|
|
|
|
|
|
all: $(SUBDIR) $(TARGET) $(TEST_REDIS)
|
|
|
|
$(SUBDIR): ECHO
|
|
make -C $@
|
|
|
|
ECHO:
|
|
@echo $(SUBDIR)
|
|
|
|
$(TARGET): $(OBJS)
|
|
$(CC) $(CFLAGS) -o $@ $^ $(LIBDIRS) $(LIBS)
|
|
|
|
$(TEST_REDIS): $(TEST_REDIS_SRCS)
|
|
$(CC) -g -o $@ $^ $(TEST_REDIS_LDFLAGS)
|
|
|
|
%.o: %.c
|
|
$(CC) $(CFLAGS) $(INC) -c $^ -g -o $@
|
|
|
|
clean: clmem cldata
|
|
rm -rf $(OBJS) $(TARGET) $(TEST_REDIS)
|
|
|
|
clmem:
|
|
rm -rf mem_leak/*
|
|
|
|
cldata:
|
|
rm -rf data/*
|