diff -r e74c23297b11 -r a4e382d4a22a Makefile --- a/Makefile Sat Sep 27 00:20:47 2008 +0300 +++ b/Makefile Sat Oct 04 17:52:11 2008 +0300 @@ -3,7 +3,7 @@ LIBRARY_PATHS = -L${LIBEVENT_PATH}/lib -L${LIBFUSE_PATH}/lib INCLUDE_PATHS = -I${LIBEVENT_PATH}/include -I${LIBFUSE_PATH}/include -LDLIBS = -levent -lfuse +LDLIBS = -levent -lfuse -lpq # XXX: ugh... use `pkg-config fuse` DEFINES = -D_FILE_OFFSET_BITS=64 @@ -11,13 +11,19 @@ BIN_NAMES = hello helloworld +# 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 # computed LDFLAGS = ${LIBRARY_PATHS} ${LIBRARY_LIST} -CFLAGS = ${INCLUDE_PATHS} ${DEFINES} ${MY_CFLAGS} +CFLAGSX = ${DEFINES} ${MY_CFLAGS} +CFLAGS = ${INCLUDE_PATHS} ${CFLAGSX} SRC_PATHS = $(wildcard src/*.c) SRC_NAMES = $(patsubst src/%,%,$(SRC_PATHS)) @@ -25,24 +31,24 @@ BIN_PATHS = $(addprefix bin/,$(BIN_NAMES)) -# targets -all: depend ${BIN_PATHS} - +# other targets clean : -rm obj/* bin/* -depend: - cd src - makedepend -p../obj/ -Y -- $(CFLAGS) -- $(SRC_NAMES) 2> /dev/null - cd .. +#obj-dirs: +# python build/make_obj_dirs.py $(BIN_PATHS) -obj-dirs: - python build/make_obj_dirs.py $(BIN_PATHS) +build/deps/%.d : src/%.c + @set -e; rm -f $@; \ + $(CC) -MM $(CPPFLAGS) $< > $@.$$$$; \ + sed 's,\($*\)\.o[ :]*,obj/\1.o $@ : ,g' < $@.$$$$ > $@; \ + rm -f $@.$$$$ + +include $(SRC_NAMES:%.c=build/deps/%.d) obj/%.o : src/%.c - $(CC) -c $(CPPFLAGS) $(CFLAGS) $^ -o $@ + $(CC) -c $(CPPFLAGS) $(CFLAGS) $< -o $@ bin/% : obj/%.o $(CC) $(LDFLAGS) $+ $(LOADLIBES) $(LDLIBS) -o $@ -# DO NOT DELETE THIS LINE -- make depend depends on it.