#!/bin/bash
# virgl_test_server wrapper for non-cx4 GPUs (Moore Threads MTT, Intel, AMD, ...):
# stock GLX path + LD_PRELOAD virgl_gpu_compat.so, a GPU-agnostic compatibility
# shim (version-retry, compat-profile, #version bump, extension softening, GL-error
# suppression -- all no-ops where unneeded).  Also normalises --socket-path.
SELF_DIR="$(cd "$(dirname "$0")" && pwd)"
REAL="${VIRGL_REAL_SERVER:-/usr/bin/virgl_test_server}"
args=()
while [ $# -gt 0 ]; do case "$1" in
  --socket-path) args+=("--socket-path=$2"); shift 2;;
  *) args+=("$1"); shift;; esac; done
export LD_PRELOAD="${LD_PRELOAD:+$LD_PRELOAD:}$SELF_DIR/virgl_gpu_compat.so"
exec "$REAL" "${args[@]}"
