BINARY := $(notdir $(patsubst %/,%,$(dir $(abspath $(lastword $(MAKEFILE_LIST)))))) MAINFILE := SOURCEDIR := . SOURCES := $(shell find $(SOURCEDIR) -name '*.go') all: build run build: $(BINARY) $(BINARY): $(SOURCES) go build -o $(BINARY) run: build ./$(BINARY) clean: $(RM) $(RMFLAGS) $(BINARY) edit: $(EDITOR) $(MAINFILE) *.go