fabapp/justfile
2023-10-24 14:12:19 +02:00

48 lines
1.5 KiB
Makefile

cpp_build_dir := justfile_directory() / "build"
alias b := build
alias r := run
alias t := test
alias fmt := format
pre-build:
git submodule update --init --recursive
raylib: pre-build
mkdir -p {{ cpp_build_dir }}
cmake -B {{ cpp_build_dir }} -S {{ justfile_directory() }}/3rd-party/raylib \
-DUSE_WAYLAND=ON -DBUILD_EXAMPLES=OFF
cmake --build {{ cpp_build_dir }}
raygui: raylib
tup
build: raylib raygui
zig build -Doptimize=Debug
# zig build -Doptimize=Debug -Dtarget=x86_64-linux-gnu.2.30
# zig build -Doptimize=Debug -Dtarget=native-native-musl #--search-prefix /nix/store/n12a68qch9s85k6ni4m4r4xxr8lwys1i-sqlite-3.41.2/lib
web-build: pre-build
# zig build-lib src/main.zig -target wasm32-freestanding -dynamic -rdynamic
zig build -Dtarget=wasm32-emscripten --sysroot /nix/store/lszbak7w3k1jmx3cm3qb2qzillsib71v-emscripten-3.1.24/bin/emcc
# zig build -Dtarget=wasm32-emscripten
run:
nixGL zig build run
test:
zig build test
format:
fd -e zig -X zig fmt {}
fd -e nix -X nix fmt {}
# update-deps:
# # We cannot easily add header-only C library with package manager
# curl https://raw.githubusercontent.com/raysan5/raygui/master/src/raygui.h --remote-name --output-dir 3rd-party/
# curl https://raw.githubusercontent.com/raysan5/raygui/master/examples/custom_file_dialog/gui_window_file_dialog.h --remote-name --output-dir 3rd-party/
envrc:
echo "use flake ."
echo "export CMAKE_GENERATOR=Ninja"