-WGCFLAGS=-Wall -Wextra -Wno-unused-parameter
+WGCFLAGS=-Wall -Wextra -Wmissing-prototypes -Wno-unused-parameter -Wno-sign-compare `pkg-config --cflags goocanvas`
+FANCYLIBS=`pkg-config --libs goocanvas`
-PROGRAMS=grid
+PROGRAMS=grid4 grid5 drill2 rack rack-fancy
all: $(PROGRAMS)
-LIBRARY=dict.o
+LIBRARY=bag.o dict.o grid.o subanagram.o word-game.o
+FANCYLIBRARY=demo-item.o
-grid: grid.o $(LIBRARY)
+%: %.o $(LIBRARY)
$(CC) $(CFLAGS) $(WGCFLAGS) $(LDFLAGS) -lreadline -lm -o $@ $^
+%-fancy: %-fancy.o $(LIBRARY) $(FANCYLIBRARY)
+ $(CC) $(CFLAGS) $(WGCFLAGS) $(LDFLAGS) $(FANCYLIBS) -lreadline -lm -o $@ $^
+
%.o: %.c
$(CC) $(CFLAGS) $(WGCFLAGS) -c -o $@ $<
Makefile.dep: *.c
- $(CC) -M $(CPPFLAGS) $^ > $@
+ $(CC) -M $(CPPFLAGS) $(WGCFLAGS) $^ > $@
-include Makefile.dep
.PHONY: clean