#!/bin/sh
# 20210206
# Jan Mojzis
# Public domain.

set -e

dir=`dirname "$0"`

# change directory to $AUTOPKGTEST_TMP
cd "${AUTOPKGTEST_TMP}"

cleanup() {
  ex=$?
  rm -f 01seeder.bin 01seeder.ldd
  exit "${ex}"
}
trap "cleanup" EXIT TERM INT

CC="cc -I/usr/include/bearssl/"

# build the dynamic binary
${CC} -Os -o 01seeder.bin "${dir}/01seeder.c" -lbearssl

# SO check
ldd ./01seeder.bin > 01seeder.ldd
if ! grep -q 'libbearssl.so' < 01seeder.ldd; then
  echo "binary is not linked against dynamic library:" >&2
  cat 01seeder.ldd >&2
  exit 1
fi

# run and remove the binary
./01seeder.bin
rm -f 01seeder.bin 01seeder.ldd


# use compiler without -I/usr/include/bearssl/
CC="cc"

# build the static binary
${CC} -Os -o 01seeder.bin "${dir}/01seeder.c" "/usr/lib/`dpkg-architecture -qDEB_HOST_MULTIARCH`/libbearssl.a"

# SO check
ldd ./01seeder.bin > 01seeder.ldd
if grep -q 'libbearssl.so' < 01seeder.ldd; then
  echo "binary IS linked against dynamic library:" >&2
  cat 01seeder.ldd >&2
  exit 1
fi

# run and remove the binary
./01seeder.bin
rm -f 01seeder.bin 01seeder.ldd

exit 0
