BUILD_MODE ?= DEBUG ifeq ($(BUILD_MODE),DEBUG) LISTEN_ADDR = "localhost:9090" else ifeq ($(BUILD_MODE),RELEASE) LISTEN_ADDR = "0.0.0.0:4000" else $(error Unknown build mode) endif all: lts watcher lts: ltscleanerd lts.go uuid.go go build -ldflags="-X main.LISTEN_ADDR=$(LISTEN_ADDR)" ltscleanerd: ltscleanerd.c cc -o ltscleanerd ltscleanerd.c watcher: watcher.c cc -o $@ $< clean: go clean rm -f watcher rm -f ltscleanerd watch: all ./watcher . sh -c "make BUILD_MODE=$(BUILD_MODE) && ./lts" run: lts ./lts .PHONY: all clean watch run