56 lines
939 B
Makefile
56 lines
939 B
Makefile
TARGET ?= forge
|
|
INSTALL_DIR ?= $(HOME)/.local/bin
|
|
TEST_ARGS ?=
|
|
SHELL := /bin/bash
|
|
|
|
.PHONY: build
|
|
clean:
|
|
@rm -rf build
|
|
|
|
build:
|
|
@mkdir -p build
|
|
gcc -Wall -Wextra src/*.h src/*.c -Iinclude -lglfw -lGL -lm -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: release
|
|
release: clean
|
|
aclocal
|
|
autoconf
|
|
automake --add-missing
|
|
./configure
|
|
make distcheck
|
|
cp $(TARGET)-*.tar.gz build
|
|
@rm -rf \
|
|
autom4te.cache \
|
|
aclocal.m4 \
|
|
compile \
|
|
config.* \
|
|
configure \
|
|
depcomp \
|
|
$(TARGET) \
|
|
$(TARGET)-*.tar.gz \
|
|
$(TARGET)-*.pkg.tar.zst \
|
|
install-sh \
|
|
Makefile \
|
|
Makefile.in \
|
|
missing \
|
|
src/.* \
|
|
src/*.o \
|
|
|
|
.PHONY: release-arch
|
|
release-arch: clean
|
|
mkdir -p build
|
|
cp PKGBUILD build
|
|
cd build && makepkg
|
|
|