Files
php-qml/spike/run.sh
magdev 9655b6fef9 Add Phase 0 spike: end-to-end transport verified
Bare PHP behind FrankenPHP plus a Qt/QML host that spawns it. GET /api/ping
publishes a Mercure event; the QML window receives it back over the SSE
stream. Findings (Caddy directive ordering, Mercure transport scalar,
PR_SET_PDEATHSIG for child cleanup, PHP 8.5 curl_close deprecation, port
collision with system FrankenPHP, pure-QML SSE viability) are recorded in
spike/README.md so Phase 1 starts from a known-good baseline.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-02 00:15:50 +02:00

23 lines
652 B
Bash
Executable File

#!/usr/bin/env bash
# Build (if needed) and run the Phase 0 spike.
# Toolchain expected on PATH: cmake, qmake6 (or qmake from qt6-base-devel), g++.
set -euo pipefail
SPIKE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
BUILD_DIR="$SPIKE_DIR/build"
BIN="$BUILD_DIR/spike"
if [ ! -x "$SPIKE_DIR/bin/frankenphp" ]; then
echo "missing $SPIKE_DIR/bin/frankenphp — run download from spike/README.md" >&2
exit 1
fi
if [ ! -x "$BIN" ]; then
echo "==> configuring + building Qt host"
cmake -S "$SPIKE_DIR/qt" -B "$BUILD_DIR" -DCMAKE_BUILD_TYPE=Debug
cmake --build "$BUILD_DIR" --parallel
fi
echo "==> launching spike"
exec "$BIN"