wolf: fix ti99sim-sdl build failing on missing sdl-config
Confirmed live: the containerized ti99sim-sdl build (previous commit) failed with "SDL.h: No such file or directory" — not a real compatibility problem, ti99sim's own Makefile.linux calls the old SDL 1.x sdl-config tool, which doesn't exist in modern libsdl2-dev packaging at all (only pkg-config .pc files). Every sdl-config invocation was silently returning nothing, so the compile got no -I/-L flags whatsoever. Adds a small shim mapping the handful of flags this build actually uses (--cflags/--libs/--version, tested standalone against a fake pkg-config before pushing) onto `pkg-config sdl2`, rather than patching the project's own Makefiles. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VLX1yYKJExGSXmgUhxKQG6
This commit is contained in:
+21
-1
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user