OBJ = adlist.o ae.o anet.o dict.o redis.o sds.o zmalloc.o lzf_c.o lzf_d.o pqsort.o zipmap.o sha1.o ziplist.o release.o networking.o util.o object.o db.o replication.o rdb.o t_string.o t_list.o t_set.o t_zset.o t_hash.o config.o aof.o vm.o pubsub.o multi.o debug.o sort.o intset.o syncio.o
BENCHOBJ = ae.o anet.o redis-benchmark.o sds.o adlist.o zmalloc.o
-CLIOBJ = anet.o sds.o adlist.o redis-cli.o zmalloc.o
+CLIOBJ = anet.o sds.o adlist.o redis-cli.o zmalloc.o release.o
CHECKDUMPOBJ = redis-check-dump.o lzf_c.o lzf_d.o
CHECKAOFOBJ = redis-check-aof.o
CHECKDUMPPRGNAME = redis-check-dump
CHECKAOFPRGNAME = redis-check-aof
-all: redis-server redis-benchmark redis-cli redis-check-dump redis-check-aof
+all: redis-benchmark redis-cli redis-check-dump redis-check-aof redis-server
+ @echo ""
+ @echo "Hint: To run 'make test' is a good idea ;)"
+ @echo ""
# Deps (use make dep to generate this)
adlist.o: adlist.c adlist.h zmalloc.h
zipmap.o: zipmap.c zmalloc.h
zmalloc.o: zmalloc.c config.h
+dependencies:
+ cd ../deps/hiredis && $(MAKE) static ARCH="$(ARCH)"
+ cd ../deps/linenoise && $(MAKE) ARCH="$(ARCH)"
+
redis-server: $(OBJ)
$(CC) -o $(PRGNAME) $(CCOPT) $(DEBUG) $(OBJ)
- @echo ""
- @echo "Hint: To run 'make test' is a good idea ;)"
- @echo ""
-redis-benchmark: $(BENCHOBJ)
- cd ../deps/hiredis && make static
+redis-benchmark: dependencies $(BENCHOBJ)
+ cd ../deps/hiredis && $(MAKE) static
$(CC) -o $(BENCHPRGNAME) $(CCOPT) $(DEBUG) $(BENCHOBJ) ../deps/hiredis/libhiredis.a
redis-benchmark.o:
$(CC) -c $(CFLAGS) -I../deps/hiredis $(DEBUG) $(COMPILE_TIME) $<
-redis-cli: $(CLIOBJ)
- cd ../deps/hiredis && make static ARCH="$(ARCH)"
- cd ../deps/linenoise && make ARCH="$(ARCH)"
+redis-cli: dependencies $(CLIOBJ)
$(CC) -o $(CLIPRGNAME) $(CCOPT) $(DEBUG) $(CLIOBJ) ../deps/hiredis/libhiredis.a ../deps/linenoise/linenoise.o
redis-cli.o:
clean:
rm -rf $(PRGNAME) $(BENCHPRGNAME) $(CLIPRGNAME) $(CHECKDUMPPRGNAME) $(CHECKAOFPRGNAME) *.o *.gcda *.gcno *.gcov
- cd ../deps/hiredis && make clean
- cd ../deps/linenoise && make clean
dep:
$(CC) -MM *.c
-test:
+test: redis-server
(cd ..; tclsh8.5 tests/test_helper.tcl --tags "${TAGS}" --file "${FILE}")
bench:
@echo ""
@echo "WARNING: if it fails under Linux you probably need to install libc6-dev-i386"
@echo ""
- make ARCH="-m32"
+ $(MAKE) ARCH="-m32"
gprof:
- make PROF="-pg"
+ $(MAKE) PROF="-pg"
gcov:
- make PROF="-fprofile-arcs -ftest-coverage"
+ $(MAKE) PROF="-fprofile-arcs -ftest-coverage"
noopt:
- make OPTIMIZATION=""
+ $(MAKE) OPTIMIZATION=""
32bitgprof:
- make PROF="-pg" ARCH="-arch i386"
+ $(MAKE) PROF="-pg" ARCH="-arch i386"
install: all
mkdir -p $(INSTALL_BIN)