TARGET ?= forge INSTALL_DIR ?= $(HOME)/.local/bin TEST_ARGS ?= SHELL := /bin/bash .PHONY: build clean: @rm -rf build build: @mkdir -p build gcc -v -Wall -Wextra src/*.c src/*.h -Iinclude -lglfw -lGL -lm -ldl -o build/$(TARGET) run: build ./build/forge --hot-reload --frag=./shaders/frag.glsl .PHONY: install install: build cp -f build/$(TARGET) $(INSTALL_DIR)/$(TARGET) .PHONY: valgrind valgrind: build valgrind --leak-check=full -s ./build/$(TARGET) $(TEST_ARGS) .PHONY: clean-release clean-release: @rm -rf \ autom4te.cache \ aclocal.m4 \ compile \ config.* \ configure \ depcomp \ $(TARGET) \ $(TARGET)-*.tar.gz \ install-sh \ Makefile \ Makefile.in \ missing \ src/.* \ src/*.o .PHONY: release release: clean-release aclocal autoconf automake --add-missing ./configure make distcheck .PHONY: release-arch release-arch: clean mkdir -p build cp PKGBUILD build cd build && makepkg