#!/bin/sh -ex
pkg=seqan3
if [ "$AUTOPKGTEST_TMP" = "" ] ; then
  AUTOPKGTEST_TMP=$(mktemp -d /tmp/${pkg}-test.XXXXXX)
fi

QUILT_PATCHES="debian/patches" quilt push -a || /bin/true
ROOT=${PWD}
cd "${AUTOPKGTEST_TMP}"
export HOME=${PWD}
export SEQAN3_NO_VERSION_CHECK=1
cp --recursive ${ROOT}/test/unit ./
cp --recursive ${ROOT}/test/include ./
cp --recursive ${ROOT}/test/snippet ./
cp --recursive ${ROOT}/test/header ./
cp ${ROOT}/LICENSE.md ./
cp ${ROOT}/test/seqan3-test.cmake ./
export CFLAGS=$(dpkg-buildflags --get CFLAGS) -O3
export CXXFLAGS=$(dpkg-buildflags --get CXXFLAGS) -DNDEBUG -O3 -std=c++2a
export CPPFLAGS=$(dpkg-buildflags --get CPPFLAGS)

mkdir build_unit
cd build_unit
CMAKE_PREFIX_PATH=/usr/share/cmake \
	cmake ../unit -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_BUILD_TYPE=Release \
	-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON
make -j$(nproc)
ctest --parallel $(nproc) --output-on-failure -E version_check_
mkdir ../build_snippet
cd ../build_snippet
CMAKE_PREFIX_PATH=/usr/share/cmake \
	cmake ../snippet -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_BUILD_TYPE=Release \
	-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON
make -j$(nproc)
make -j$(nproc) test
mkdir ../build_header
cd ../build_header
CMAKE_PREFIX_PATH=/usr/share/cmake \
	cmake ../header -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_BUILD_TYPE=Release \
	-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON
make -j$(nproc)
make -j$(nproc) test
cd ${ROOT}
QUILT_PATCHES="debian/patches" quilt pop -a || /bin/true
