#!/bin/bash # Cross-platform build script for Dimma # Builds Odin app + Go updater for all platforms set -e PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" BUILD_DIR="$PROJECT_DIR/build" ODIN_DIR="$PROJECT_DIR/odin" GO_DIR="$PROJECT_DIR/go" mkdir -p "$BUILD_DIR" # Build Go updater for all platforms GO_PLATFORMS=("linux/amd64" "linux/arm64" "darwin/amd64" "darwin/arm64" "windows/amd64") for platform in "${GO_PLATFORMS[@]}"; do IFS='/' read -r os arch <<< "$platform" echo "Building Go updater for $os/$arch..." (cd "$GO_DIR" && GOOS=$os GOARCH=$arch ./build.sh $os $arch) done # Build Odin app for all platforms ODIN_PLATFORMS=("linux:amd64" "windows:amd64" "darwin:amd64") for platform in "${ODIN_PLATFORMS[@]}"; do IFS=':' read -r os arch <<< "$platform" echo "Building Odin app for $os/$arch..." # odin build $ODIN_DIR/main.odin \ # -out:$BUILD_DIR/dimma-$os-$arch \ # -build-mode:exe \ # -target:. \ # -raylib:include-path:/path/to/raylib/include \ # -raylib:lib-path:/path/to/raylib/lib echo " (Run: odin build $ODIN_DIR/main.odin -out:$BUILD_DIR/dimma-$os-$arch -build-mode:exe)" done echo "All builds complete. Output in $BUILD_DIR/"