include config.mk SUBSCRIBE=bin/subscribe PUBLISH=bin/publish SUBSCRIBE_OBJ_FILES=obj/subscribe.o obj/mqtt.o PUBLISH_OBJ_FILES=obj/publish.o obj/mqtt.o release: $(SUBSCRIBE) $(PUBLISH) release: CFLAGS+=-DNDEBUG -O2 debug: $(SUBSCRIBE) $(PUBLISH) debug: CFLAGS+=-g $(SUBSCRIBE): $(SUBSCRIBE_OBJ_FILES) | bin cc $(LDFLAGS) $^ -o $@ $(PUBLISH): $(PUBLISH_OBJ_FILES) | bin cc $(LDFLAGS) $^ -o $@ obj/%.o: src/%.c src/config.h | obj cc $(CFLAGS) -c $< -o $@ src/config.h: cp config.h.in $@ bin obj: mkdir -p $@ clean: rm -rf bin obj .PHONY: release debug clean