#! /usr/bin/env bash

set -e
script_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"

# Prime so that Postgres is always there
if [ ! -d "${script_dir}/../.pg" ]; then
  rm -rf "build/_"
  cmake -S "${script_dir}/.." -B "build/_"
  rm -rf "build/_"
fi

for dir in "${script_dir}/../extensions"/*; do
  if [ -f "$dir/CMakeLists.txt" ]; then
        build_dir="build/_$(basename ${dir})"
       	rm -rf "${build_dir}"
       	{
       	  cmake -S "${dir}" -B "${build_dir}"
       	  cmake --build "${build_dir}" --parallel --target all --target package_extensions
       	} || exit 1
  fi
done