export
MODELGOBDIR=model/gobs
MODELDIR=model
STOREGOBDIR=storage/gobs
GOB=gob2
UTILDIR=util
CC=gcc
CFLAGS=-g -Wall -I$(GOBDIR) `pkg-config --cflags glib-2.0 gobject-2.0`
LDFLAGS=-lcheck `pkg-config --libs glib-2.0 gobject-2.0`

default: gobs

modelgobs: $(MODELGOBDIR)/*.gob
	$(MAKE) -C $(MODELGOBDIR) all

storegobs: $(STOREGOBDIR)/*.gob
	$(MAKE) -C $(STOREGOBDIR) all

gobforce:
	$(MAKE) -C $(MODELGOBDIR) all
	$(MAKE) -C $(STOREGOBDIR) all

test: modelgobs storegobs
	#$(CC) -o test $(CFLAGS) test.c $(GOBDIR)/gtodo-todo-item.c $(LDFLAGS)
	$(MAKE) -C tests build

testfence: modelgobs storegobs
	$(MAKE) -C tests buildfence

testnofork: gobs
	$(MAKE) -C tests buildnofork

gobclean:
	$(MAKE) -C $(MODELGOBDIR) clean
	$(MAKE) -C $(STOREGOBDIR) clean

clean:
	rm -f *.o
	rm -f test
	$(MAKE) -C $(MODELGOBDIR) clean
	$(MAKE) -C $(STOREGOBDIR) clean
	$(MAKE) -C tests clean
	$(MAKE) -C util clean

runtest: test
	$(MAKE) -C tests run
