Makefile
branchnew-evsql
changeset 45 424ce5ab82fd
parent 44 9e76ee9729b6
child 52 f5037572c326
equal deleted inserted replaced
44:9e76ee9729b6 45:424ce5ab82fd
    22 
    22 
    23 # XXX: ugh... use `pkg-config fuse`
    23 # XXX: ugh... use `pkg-config fuse`
    24 DEFINES = -D_FILE_OFFSET_BITS=64
    24 DEFINES = -D_FILE_OFFSET_BITS=64
    25 FIXED_CFLAGS = -Wall -std=gnu99
    25 FIXED_CFLAGS = -Wall -std=gnu99
    26 
    26 
    27 BIN_NAMES = helloworld hello simple_hello evpq_test url_test dbfs
    27 BIN_NAMES = helloworld hello simple_hello evpq_test url_test dbfs evsql_test
    28 BIN_PATHS = $(addprefix bin/,$(BIN_NAMES))
    28 BIN_PATHS = $(addprefix bin/,$(BIN_NAMES))
    29 
    29 
    30 # modules
    30 # modules
    31 module_objs = $(patsubst src/%.c,obj/%.o,$(wildcard src/$(1)/*.c))
    31 module_objs = $(patsubst src/%.c,obj/%.o,$(wildcard src/$(1)/*.c))
    32 
    32 
    33 # complex modules
    33 # complex modules
       
    34 CORE_OBJS = obj/lib/log.o obj/lib/signals.o
    34 EVSQL_OBJS = $(call module_objs,evsql) obj/evpq.o
    35 EVSQL_OBJS = $(call module_objs,evsql) obj/evpq.o
    35 DBFS_OBJS = $(call module_objs,dbfs) obj/dirbuf.o 
    36 DBFS_OBJS = $(call module_objs,dbfs) obj/dirbuf.o 
    36 
    37 
    37 # first target
    38 # first target
    38 all: ${BIN_PATHS}
    39 all: ${BIN_PATHS}
    39 
    40 
    40 # binaries
    41 # binaries
    41 bin/helloworld: 
    42 bin/helloworld: 
    42 bin/hello: obj/evfuse.o obj/dirbuf.o obj/lib/log.o obj/lib/signals.o
    43 bin/hello: obj/evfuse.o obj/dirbuf.o ${CORE_OBJS}
    43 bin/simple_hello: obj/evfuse.o obj/dirbuf.o obj/lib/log.o obj/lib/signals.o obj/simple.o
    44 bin/simple_hello: obj/evfuse.o obj/dirbuf.o obj/simple.o ${CORE_OBJS}
    44 bin/evpq_test: obj/evpq.o obj/lib/log.o
    45 bin/evpq_test: obj/evpq.o obj/lib/log.o
    45 bin/url_test: obj/lib/url.o obj/lib/lex.o obj/lib/log.o
    46 bin/url_test: obj/lib/url.o obj/lib/lex.o obj/lib/log.o
    46 bin/dbfs: ${DBFS_OBJS} ${EVSQL_OBJS} obj/evfuse.o obj/lib/log.o obj/lib/signals.o
    47 bin/dbfs: ${DBFS_OBJS} ${EVSQL_OBJS} obj/evfuse.o ${CORE_OBJS}
       
    48 bin/evsql_test: ${EVSQL_OBJS} ${CORE_OBJS}
    47 
    49 
    48 # computed
    50 # computed
    49 LDFLAGS = ${LIBRARY_PATHS}
    51 LDFLAGS = ${LIBRARY_PATHS}
    50 
    52 
    51 CPPFLAGS = ${INCLUDE_PATHS} ${DEFINES}
    53 CPPFLAGS = ${INCLUDE_PATHS} ${DEFINES}