all: build

reset:
	powershell -executionpolicy bypass .\scripts\reset_build.ps1

build:
	meson compile -j 4 -C builddir

release_build:
	meson --wipe builddir -Db_ndebug=true --buildtype release
	meson compile -j 4 -C builddir

debug_build:
	meson setup --wipe builddir -Db_ndebug=true --buildtype debugoptimized
	meson compile -j 4 -C builddir

run: build
	./builddir/b8rk.exe 1 1 ./roms/test_opcode.ch8

debug: build
	gdb --nx -x .gdbinit --ex run --args builddir/runtests.exe

debug_run: build
	gdb --nx -x .gdbinit --batch --ex run --ex bt --ex q --args builddir/b8rk.exe 1 1 ./roms/test_opcode.ch8

clean:
	meson compile --clean -C builddir
