HARE=hare DESTDIR= PREFIX=/usr/local SRCDIR=$(PREFIX)/src HARESRCDIR=$(SRCDIR)/hare THIRDPARTYDIR=$(HARESRCDIR)/third-party TB_DIR=vendor/termbox2 TB_OBJ=termbox2.o BUILD_DIR=build DEMO_DIR=demo all: demos install: install -Dm644 termbox2/* $(DESTDIR)$(THIRDPARTYDIR)/termbox2/ uninstall: rm -rf $(DESTDIR)$(THIRDPARTYDIR)/termbox2 demos: $(BUILD_DIR) mkdir -p $(BUILD_DIR)/$(DEMO_DIR) for d in $(DEMO_DIR)/*; \ do $(HARE) build -ltermbox2 -o $(BUILD_DIR)/$$d $$d; \ done local: $(BUILD_DIR) termbox2/$(TB_OBJ) mkdir -p $(BUILD_DIR)/$(DEMO_DIR) for d in $(DEMO_DIR)/*; \ do $(HARE) build -lc -o $(BUILD_DIR)/$$d $$d; \ done $(BUILD_DIR): mkdir -p $(BUILD_DIR) termbox2/$(TB_OBJ): $(TB_DIR)/termbox2.o cp $(TB_DIR)/termbox2.o termbox2/ $(TB_DIR)/termbox2.o: cd $(TB_DIR) && make termbox2.o clean: rm -rf $(BUILD_DIR) termbox2/$(TB_OBJ) [ -d $(TB_DIR) ] && cd $(TB_DIR) && make clean .PHONY: all clean demos install local-demos uninstall