-CFLAGS = -g -Ilibmicrohttpd-0.9.3/src/include -Iyajl/build/yajl-1.0.11/include
-LDFLAGS = -Llibmicrohttpd-0.9.3/src/daemon/.libs -Lyajl/build/yajl-1.0.11/lib
+CFLAGS ?= -g
+INCLUDES = -I. -Idatabase -Imisc -Ilibmicrohttpd-0.9.3/src/include -Iyajl/build/yajl-1.0.11/include
+LDFLAGS ?=
+LIBDIRS = -Llibmicrohttpd-0.9.3/src/daemon/.libs -Lyajl/build/yajl-1.0.11/lib
targets = blerg.a blergtool http_blerg
-blerg_a_objects = database.o tags.o
-blergtool_objects = blergtool.o blerg.a
-http_blerg_objects = http_blerg.o auth.o blerg.a
+blerg_a_objects = database/database.o database/tags.o
+blergtool_objects = tools/blergtool.o blerg.a
+http_blerg_objects = http/http_blerg.o http/canned_responses.o misc/auth.o blerg.a
all: $(targets)
ar rcu $@ $(blerg_a_objects)
blergtool: $(blergtool_objects)
- gcc $^ -o $@
+ gcc $(LDFLAGS) $^ -o $@
http_blerg: $(http_blerg_objects)
- gcc $(LDFLAGS) $(http_blerg_objects) -lpthread -lmicrohttpd -lyajl_s -o $@
+ gcc $(LIBDIRS) $(LDFLAGS) $(http_blerg_objects) -lpthread -lmicrohttpd -lyajl_s -o $@
%.o: %.c
- gcc $(CFLAGS) $(LIBS) -c $< -o $@
+ gcc $(INCLUDES) $(CFLAGS) -c $< -o $@