#!/bin/sh
set -eu

case "$(uname)" in
	(FreeBSD)
		if ! pkg info -e libressl; then
			echo 'LibreSSL required'
			exit 1
		fi
		prefix=$(pkg query '%p' libressl)
		cat >config.mk <<-EOF
		CFLAGS += -I${prefix}/include
		CFLAGS += -D'OPENSSL_BIN="${prefix}/bin/openssl"'
		LDFLAGS += -L${prefix}/lib
		EOF
		exit
		;;
esac

libs='libcrypto libtls ncursesw'
pkg-config --print-errors $libs

cat >config.mk <<EOF
CFLAGS += $(pkg-config --cflags $libs)
CFLAGS += -D'OPENSSL_BIN="$(pkg-config --variable=prefix openssl)/bin/openssl"'
LDFLAGS += $(pkg-config --libs-only-L $libs)
LDLIBS = $(pkg-config --libs-only-l $libs)
EOF

case "$(uname)" in
	(Linux)
		if ! grep -q -e '-D_GNU_SOURCE' config.mk; then
			echo 'CFLAGS += -D_GNU_SOURCE' >> config.mk
		fi
		;;
esac