CFLAGS+=-Iinclude -Isrc -O2 all: bin/test bin/string bin/color bin/hello bin/ask bin/snek bin/test: test/test.c bin/tim.a $(CC) $< -Wall $(CFLAGS) bin/tim.a -o $@ bin/string: test/string.c bin/tim.a $(CC) $< -Wall $(CFLAGS) bin/tim.a -o $@ bin/color: test/color.c bin/tim.a $(CC) $< -Wall $(CFLAGS) bin/tim.a -o $@ bin/hello: example/hello.c bin/tim.a $(CC) $< -Wall $(CFLAGS) bin/tim.a -o $@ bin/ask: example/ask.c bin/tim.a $(CC) $< -Wall $(CFLAGS) bin/tim.a -o $@ bin/snek: example/snek.c bin/tim.a $(CC) $< -Wall $(CFLAGS) bin/tim.a -o $@ bin/tim.a: bin \ obj/drawing.c.o obj/edit.c.o obj/event.c.o obj/loop.c.o obj/render.c.o \ obj/scope.c.o obj/string.c.o obj/unix.c.o obj/widgets.c.o obj/windows.c.o ar rcs bin/tim.a \ obj/drawing.c.o obj/edit.c.o obj/event.c.o obj/loop.c.o obj/render.c.o \ obj/scope.c.o obj/string.c.o obj/unix.c.o obj/widgets.c.o obj/windows.c.o obj/drawing.c.o: src/drawing.c obj $(CC) $< -Wall $(CFLAGS) -c -o $@ obj/edit.c.o: src/edit.c obj $(CC) $< -Wall $(CFLAGS) -c -o $@ obj/event.c.o: src/event.c obj $(CC) $< -Wall $(CFLAGS) -c -o $@ obj/loop.c.o: src/loop.c obj $(CC) $< -Wall $(CFLAGS) -c -o $@ obj/render.c.o: src/render.c obj $(CC) $< -Wall $(CFLAGS) -c -o $@ obj/scope.c.o: src/scope.c obj $(CC) $< -Wall $(CFLAGS) -c -o $@ obj/string.c.o: src/string.c obj $(CC) $< -Wall $(CFLAGS) -c -o $@ obj/unix.c.o: src/unix.c obj $(CC) $< -Wall $(CFLAGS) -c -o $@ obj/widgets.c.o: src/widgets.c obj $(CC) $< -Wall $(CFLAGS) -c -o $@ obj/windows.c.o: src/windows.c obj $(CC) $< -Wall $(CFLAGS) -c -o $@ bin: mkdir -p bin obj: mkdir -p obj clean: rm -rf bin obj