Makefile
changeset 28 e944453ca924
parent 25 99a41f48e29b
child 29 5de62ca9a5aa
equal deleted inserted replaced
27:461be4cd34a3 28:e944453ca924
     3 
     3 
     4 LIBRARY_PATHS = -L${LIBEVENT_PATH}/lib -L${LIBFUSE_PATH}/lib
     4 LIBRARY_PATHS = -L${LIBEVENT_PATH}/lib -L${LIBFUSE_PATH}/lib
     5 INCLUDE_PATHS = -I${LIBEVENT_PATH}/include -I${LIBFUSE_PATH}/include
     5 INCLUDE_PATHS = -I${LIBEVENT_PATH}/include -I${LIBFUSE_PATH}/include
     6 LDLIBS = -levent -lfuse -lpq
     6 LDLIBS = -levent -lfuse -lpq
     7 
     7 
       
     8 ifdef DEBUG
       
     9 DEBUG_FLAGS = -DDEBUG_ENABLED
       
    10 else
       
    11 DEBUG_FLAGS = 
       
    12 endif
       
    13 
     8 # XXX: ugh... use `pkg-config fuse`
    14 # XXX: ugh... use `pkg-config fuse`
     9 DEFINES = -D_FILE_OFFSET_BITS=64
    15 DEFINES = -D_FILE_OFFSET_BITS=64 ${DEBUG_FLAGS}
    10 MY_CFLAGS = -Wall -g -std=gnu99
    16 MY_CFLAGS = -Wall -g -std=gnu99
    11 
    17 
    12 BIN_NAMES = helloworld hello simple_hello evpq_test url_test dbfs
    18 BIN_NAMES = helloworld hello simple_hello evpq_test url_test dbfs
    13 BIN_PATHS = $(addprefix bin/,$(BIN_NAMES))
    19 BIN_PATHS = $(addprefix bin/,$(BIN_NAMES))
       
    20 
       
    21 # complex modules
       
    22 EVSQL_OBJS = obj/evsql.o obj/evsql_util.o obj/evpq.o
       
    23 DBFS_OBJS = obj/dbfs/dbfs.o obj/dbfs/common.o obj/dbfs/core.o obj/dbfs/dirop.o obj/dirbuf.o
    14 
    24 
    15 # first target
    25 # first target
    16 all: ${BIN_PATHS}
    26 all: ${BIN_PATHS}
    17 
    27 
    18 # binaries
    28 # binaries
    19 bin/helloworld: 
    29 bin/helloworld: 
    20 bin/hello: obj/evfuse.o obj/dirbuf.o obj/lib/log.o obj/lib/signals.o
    30 bin/hello: obj/evfuse.o obj/dirbuf.o obj/lib/log.o obj/lib/signals.o
    21 bin/simple_hello: obj/evfuse.o obj/dirbuf.o obj/lib/log.o obj/lib/signals.o obj/simple.o
    31 bin/simple_hello: obj/evfuse.o obj/dirbuf.o obj/lib/log.o obj/lib/signals.o obj/simple.o
    22 bin/evpq_test: obj/evpq.o obj/lib/log.o
    32 bin/evpq_test: obj/evpq.o obj/lib/log.o
    23 bin/url_test: obj/lib/url.o obj/lib/lex.o obj/lib/log.o
    33 bin/url_test: obj/lib/url.o obj/lib/lex.o obj/lib/log.o
    24 bin/dbfs: obj/evsql.o obj/evsql_util.o obj/evpq.o obj/evfuse.o obj/dirbuf.o obj/lib/log.o obj/lib/signals.o
    34 bin/dbfs: ${DBFS_OBJS} ${EVSQL_OBJS} obj/evfuse.o obj/lib/log.o obj/lib/signals.o
    25 
    35 
    26 # computed
    36 # computed
    27 LDFLAGS = ${LIBRARY_PATHS} ${LIBRARY_LIST}
    37 LDFLAGS = ${LIBRARY_PATHS} ${LIBRARY_LIST}
    28 CFLAGSX = ${DEFINES} ${MY_CFLAGS}
    38 CFLAGSX = ${DEFINES} ${MY_CFLAGS}
    29 CFLAGS = ${INCLUDE_PATHS} ${CFLAGSX}
    39 CFLAGS = ${INCLUDE_PATHS} ${CFLAGSX}