# shellcheck shell=bash

BASE_DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)

# ── PostgreSQL ────────────────────────────────────────────────────────────────
# Set PG_CONFIG to an existing pg_config binary to skip building PostgreSQL.
# If PG_CONFIG is unset, install_postgres.sh will build it from source.
PGSQL_REPO=https://github.com/postgres/postgres.git
PGSQL_VERSION=REL_18_1
PGSQL_SRC_DIR=${BASE_DIR}/postgres
PGSQL_INSTALL_DIR=${BASE_DIR}/pgsql_install
PG_CONFIG=${PGSQL_INSTALL_DIR}/bin/pg_config

# ── SVS library ───────────────────────────────────────────────────────────────
# SVS has shipped its C API as a ready-to-use prebuilt release asset
# (svs-c-api.tar.gz, containing lib/ and include/svs/c/) since v0.5.0;
# build_svs.sh just downloads and extracts it — no compiler involved.
# SVS_TAG picks the release; SVS_URL is derived from it and only needs
# overriding directly for a one-off, non-tagged asset.
SVS_TAG=${SVS_TAG:-"v0.5.0"}
SVS_URL=${SVS_URL:-"https://github.com/intel/ScalableVectorSearch/releases/download/${SVS_TAG}/svs-c-api.tar.gz"}
SVS_INSTALL_DIR=${BASE_DIR}/svs_install

# ── vanilla pgvector (provides vector/halfvec types) ─────────────────────────
PGV_VANILLA_REPO=https://github.com/pgvector/pgvector.git
PGV_VANILLA_TAG=v0.8.2
PGV_VANILLA_DIR=${BASE_DIR}/pgvector-vanilla

# ── svs extension ─────────────────────────────────────────────────────────────
# Defaults to the repository root (two levels above this config file).
# Set SVS_EXT_REPO and SVS_EXT_BRANCH to clone a fresh copy elsewhere.
SVS_EXT_DIR=${BASE_DIR}/../..
SVS_EXT_REPO=
SVS_EXT_BRANCH=
