GO := $(shell which go) ANTLR := $(shell which antlr4) BINARY_NAME := jdr-server ANTLRDIR := antlr ANTLRGRAM := JdrScript.g4 ANTLRFILE := $(ANTLRDIR)/$(shell echo $(basename $(ANTLRGRAM)) | tr A-Z a-z)_parser.go GOFILES = $(shell find . -type f -name '*.go' -not -path '*/$(ANTLRDIR)/*') .PHONY: all run clean all: $(BINARY_NAME) $(BINARY_NAME): $(ANTLRFILE) $(GOFILES) $(GO) get $(GO) build -o $@ -v $(ANTLRFILE): $(ANTLRGRAM) $(ANTLR) -Dlanguage=Go -o $(ANTLRDIR) $< run: $(BINARY_NAME) ./$(BINARY_NAME) clean: