Makefile
changeset 57 527d23bf6441
parent 56 9dfc861273e5
child 58 02e539965ef4
--- a/Makefile	Sun Mar 08 00:19:12 2009 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,84 +0,0 @@
-LIBEVENT_PATH = ../libs/libevent-dev
-LIBFUSE_PATH = ../libs/libfuse-2.7.4
-
-LIBRARY_PATHS = -L${LIBEVENT_PATH}/lib -L${LIBFUSE_PATH}/lib
-INCLUDE_PATHS = -I${LIBEVENT_PATH}/include -I${LIBFUSE_PATH}/include
-LDLIBS = -levent -lfuse -lpq
-
-# default is test
-ifndef MODE
-MODE = test
-endif
-
-ifeq ($(MODE), debug)
-MODE_CFLAGS = -g -DDEBUG_ENABLED
-else ifeq ($(MODE), dev)
-MODE_CFLAGS = -g
-else ifeq ($(MODE), test)
-MODE_CFLAGS = -g -DINFO_DISABLED
-else ifeq ($(MODE), release)
-MODE_CFLAGS = -DINFO_DISABLED -O2
-endif
-
-# XXX: ugh... use `pkg-config fuse`
-DEFINES = -D_FILE_OFFSET_BITS=64
-FIXED_CFLAGS = -Wall -std=gnu99
-
-BIN_NAMES = helloworld hello simple_hello evpq_test url_test dbfs
-BIN_PATHS = $(addprefix bin/,$(BIN_NAMES))
-
-# modules
-module_objs = $(patsubst src/%.c,obj/%.o,$(wildcard src/$(1)/*.c))
-
-# complex modules
-EVSQL_OBJS = $(call module_objs,evsql) obj/evpq.o
-DBFS_OBJS = $(call module_objs,dbfs) obj/dirbuf.o 
-
-# first target
-all: ${BIN_PATHS}
-
-# binaries
-bin/helloworld: 
-bin/hello: obj/evfuse.o obj/dirbuf.o obj/lib/log.o obj/lib/signals.o
-bin/simple_hello: obj/evfuse.o obj/dirbuf.o obj/lib/log.o obj/lib/signals.o obj/simple.o
-bin/evpq_test: obj/evpq.o obj/lib/log.o
-bin/url_test: obj/lib/url.o obj/lib/lex.o obj/lib/log.o
-bin/dbfs: ${DBFS_OBJS} ${EVSQL_OBJS} obj/evfuse.o obj/lib/log.o obj/lib/signals.o
-
-# computed
-LDFLAGS = ${LIBRARY_PATHS}
-
-CPPFLAGS = ${INCLUDE_PATHS} ${DEFINES}
-CFLAGS = ${MODE_CFLAGS} ${FIXED_CFLAGS}
-
-SRC_PATHS = $(wildcard src/*.c) $(wildcard src/*/*.c)
-SRC_NAMES = $(patsubst src/%,%,$(SRC_PATHS))
-SRC_DIRS = $(dir $(SRC_NAMES))
-
-# other targets
-clean :
-	-rm obj/*.o obj/*/*.o
-	-rm bin/* 
-	-rm build/deps/*.d build/deps/*/*.d
-
-clean-deps:
-	-rm build/deps/*/*.d 
-	-rm build/deps/*.d
-
-#obj-dirs: 
-#	python build/make_obj_dirs.py $(BIN_PATHS)
-
-build/deps/%.d : src/%.c
-	@set -e; rm -f $@; \
-	 $(CC) -MM -MT __ $(CPPFLAGS) $< > $@.$$$$; \
-	 sed 's,__[ :]*,obj/$*.o $@ : ,g' < $@.$$$$ > $@; \
-	 rm -f $@.$$$$
-
-include $(SRC_NAMES:%.c=build/deps/%.d)
-
-obj/%.o : src/%.c
-	$(CC) -c $(CPPFLAGS) $(CFLAGS) $< -o $@
-
-bin/% : obj/%.o
-	$(CC) $(LDFLAGS) $+ $(LOADLIBES) $(LDLIBS) -o $@
-