58 lines
1.3 KiB
Makefile
58 lines
1.3 KiB
Makefile
ROOT_DIR := $(dir $(realpath $(lastword $(MAKEFILE_LIST))))
|
|
|
|
all: build
|
|
|
|
reset:
|
|
ifeq '$(OS)' 'Windows_NT'
|
|
powershell -executionpolicy bypass .\scripts\reset_build.ps1
|
|
else
|
|
sh -x ./scripts/reset_build.sh
|
|
endif
|
|
|
|
shaders:
|
|
glslangValidator -V gradient.comp -o gradient.comp.spv
|
|
glslangValidator -V sky.comp -o sky.comp.spv
|
|
glslangValidator -V gradient_color.comp -o gradient_color.comp.spv
|
|
|
|
%.cpp : %.rl
|
|
ragel -I $(ROOT_DIR) -G1 -o $@ $<
|
|
|
|
%.dot: %.rl
|
|
ragel -Vp -I $(ROOT_DIR) -o $@ $<
|
|
|
|
%.png: %.dot
|
|
dot -Tpng $< -o $@
|
|
|
|
build:
|
|
meson compile -j 10 -C $(ROOT_DIR)/builddir
|
|
|
|
release_build:
|
|
meson --wipe builddir -Db_ndebug=true --buildtype release
|
|
meson compile -j 10 -C builddir
|
|
|
|
debug_build:
|
|
meson setup --wipe builddir -Db_ndebug=true --buildtype debugoptimized
|
|
meson compile -j 10 -C builddir
|
|
|
|
run: build
|
|
ifeq '$(OS)' 'Windows_NT'
|
|
powershell "cp ./builddir/hellovulk.exe ."
|
|
./hellovulk
|
|
else
|
|
./builddir/hellovulk
|
|
endif
|
|
|
|
debug: build
|
|
gdb --nx -x .gdbinit --ex run --args builddir/hellovulk
|
|
|
|
debug_run: build
|
|
gdb --nx -x .gdbinit --batch --ex run --ex bt --ex q --args builddir/hellovulk
|
|
|
|
clean:
|
|
meson compile --clean -C builddir
|
|
|
|
debug_test: build
|
|
gdb --nx -x .gdbinit --ex run --ex bt --ex q --args builddir/runtests -e "[pathing]"
|
|
|
|
money:
|
|
scc --exclude-dir subprojects
|