diff --git a/services/wolf.sh b/services/wolf.sh index fcf2f9a..e06049f 100644 --- a/services/wolf.sh +++ b/services/wolf.sh @@ -1003,12 +1003,32 @@ XMLEOF # it (copies to /opt/ti99sim/bin, symlinks into # /usr/local/bin), so use that instead of guessing the exact # build subpath. + # ti99sim's own Makefile.linux calls the old SDL 1.x `sdl-config` + # tool, which no longer exists — modern libsdl2-dev ships only + # pkg-config .pc files (and sometimes sdl2-config, itself already + # a thin wrapper over pkg-config). Confirmed live: without this, + # every sdl-config call silently returns nothing, so the compile + # gets no -I/-L flags at all and fails on "SDL.h: No such file or + # directory" — not a real incompatibility, just a stale tool + # name. A tiny shim mapping the handful of flags this build + # actually uses (--cflags/--libs/--version) onto pkg-config sdl2 + # fixes it without patching the project's own Makefiles. if docker run --rm -u root --entrypoint /bin/bash \ -v "$GAME_STORAGE_DIR/emulators:/output" \ ghcr.io/games-on-whales/es-de:edge -c ' set -e apt-get update -qq - apt-get install -y -qq git build-essential libsdl2-dev ca-certificates + apt-get install -y -qq git build-essential libsdl2-dev pkgconf ca-certificates + cat > /usr/local/bin/sdl-config << "SDLCFG" +#!/bin/sh +case "$1" in + --cflags) exec pkg-config sdl2 --cflags ;; + --libs) exec pkg-config sdl2 --libs ;; + --version) exec pkg-config sdl2 --modversion ;; + *) exec pkg-config sdl2 --cflags --libs ;; +esac +SDLCFG + chmod +x /usr/local/bin/sdl-config git clone -q https://github.com/billzajac/ti99sim.git /tmp/ti99sim cd /tmp/ti99sim make