v0.2.0: clang + import std; isolated Windows cross-build (llvm-mingw + SDL3)

This commit is contained in:
EnderTheCoder
2026-09-12 02:04:25 +08:00
parent b35372da52
commit 1d12e4e099
23 changed files with 393 additions and 267 deletions
+14
View File
@@ -0,0 +1,14 @@
#!/usr/bin/env bash
# Build the Linux target inside its own isolated image (Dockerfile).
set -euo pipefail
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
IMAGE="${OPENRA3_LINUX_IMAGE:-openra3-linux:local}"
BUILD_DIR="${1:-build/linux}"
docker build --target dev -t "$IMAGE" "$ROOT"
docker run --rm -v "$ROOT:/work" -w /work "$IMAGE" cmake -S . -B "$BUILD_DIR" -G Ninja -DCMAKE_BUILD_TYPE=Release
docker run --rm -v "$ROOT:/work" -w /work "$IMAGE" cmake --build "$BUILD_DIR" -j
docker run --rm -v "$ROOT:/work" -w /work "$IMAGE" ctest --test-dir "$BUILD_DIR" --output-on-failure
echo "Linux build: $ROOT/$BUILD_DIR/bin/openra3"
+16
View File
@@ -0,0 +1,16 @@
#!/usr/bin/env bash
# Build the Windows x86_64 target inside its own isolated image (Dockerfile.win).
set -euo pipefail
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
IMAGE="${OPENRA3_WINDOWS_IMAGE:-openra3-windows:local}"
BUILD_DIR="${1:-build/windows}"
docker build --target dev -f "$ROOT/Dockerfile.win" -t "$IMAGE" "$ROOT"
docker run --rm -v "$ROOT:/work" -w /work "$IMAGE" \
cmake -S . -B "$BUILD_DIR" -G Ninja \
-DCMAKE_TOOLCHAIN_FILE=cmake/toolchains/llvm-mingw-x86_64.cmake \
-DCMAKE_BUILD_TYPE=Release
docker run --rm -v "$ROOT:/work" -w /work "$IMAGE" cmake --build "$BUILD_DIR" -j
echo "Windows build: $ROOT/$BUILD_DIR/bin/openra3.exe (+ SDL3.dll)"