include config.mk STREAM=bin/stream STREAM_OBJ_FILES=obj/stream.o SIMPLE=bin/simple SIMPLE_OBJ_FILES=obj/simple.o GZIP=bin/gzip GZIP_OBJ_FILES=obj/gzip.o release: $(STREAM) $(SIMPLE) $(GZIP) release: CFLAGS+=-DNDEBUG -O2 debug: $(STREAM) $(SIMPLE) $(GZIP) debug: CFLAGS+=-g $(STREAM): $(STREAM_OBJ_FILES) | bin cc $(LDFLAGS) $^ -o $@ $(SIMPLE): $(SIMPLE_OBJ_FILES) | bin cc $(LDFLAGS) $^ -o $@ $(GZIP): $(GZIP_OBJ_FILES) | bin cc $(LDFLAGS) $^ -o $@ obj/%.o: src/%.c | obj cc $(CFLAGS) -c $< -o $@ bin obj: mkdir -p $@ clean: rm -rf bin obj .PHONY: release debug clean