#!/usr/bin/env bash
# Linux-only helper: requires GNU nm long options.
set -euo pipefail

if [[ $# -ne 1 ]]; then
  echo "usage: $0 <path-to-libmbgl-core-amalgam.a>" >&2
  exit 1
fi

archive_path="$1"

if [[ ! -f "$archive_path" ]]; then
  echo "archive not found: $archive_path" >&2
  exit 1
fi

unresolved_symbols="$(
  nm -g --undefined-only "$archive_path" \
    | grep -E '(^|[[:space:]])U[[:space:]]+wgpu([A-Z]|_)' \
    || true
)"

if [[ -n "$unresolved_symbols" ]]; then
  echo "found unresolved WebGPU symbols in $archive_path" >&2
  echo "$unresolved_symbols" >&2
  exit 1
fi

echo "no unresolved WebGPU symbols found in $archive_path"
