VER ?= v4 # or v3 .PHONY: fetch-$(VER) inject-$(VER) build-linux build-mac build-win appimage winexe macapp all fetch-v3: docker compose run --rm fetch-v3 fetch-v4: docker compose run --rm fetch-v4 inject-$(VER): rm -rf server-ui/webroot mkdir -p server-ui/webroot rsync -a apps/$(VER)/Avida-ED-Eco/ server-ui/webroot/Avida-ED-Eco/ # Build binaries natively on each OS runner build-linux: inject-$(VER) cd server-ui && cargo build --release build-mac: inject-$(VER) cd server-ui && cargo build --release build-win: inject-$(VER) cd server-ui && cargo build --release # Package appimage: build-linux bash packaging/linux/make_appimage.sh $(VER) server-ui/target/release/avidaed_onefile winexe: build-win # Example: pass location of WebView2 Fixed runtime and built exe powershell -ExecutionPolicy Bypass -File packaging/windows/make_windows_sfx.ps1 \ -Version $(VER) \ -BinPath $(CURDIR)/server-ui/target/release/avidaed_onefile.exe \ -WV2Fixed "C:\SDKs\WebView2.FixedRuntime" macapp: build-mac bash packaging/mac/make_macos_bundle.sh $(VER) server-ui/target/release/avidaed_onefile all: @echo "Targets:" @echo " make fetch-v3 | fetch-v4" @echo " make build-linux | build-mac | build-win" @echo " make appimage | winexe | macapp"