CC ?= gcc SOURCES := $(wildcard src/*.c) RELEASE ?= false CFLAGS ?= -Wall ifeq ($(RELEASE),true) CFLAGS += -O3 endif .PHONY: clean release-$(RELEASE) all: dist/msh dist/msh: $(SOURCES) dist release-$(RELEASE) $(CC) -o $@ $(SOURCES) $(CFLAGS) dist: mkdir -p dist clean: rm -rf dist