about summary refs log tree commit diff
path: root/configure
blob: b0f818f227d75efc711c557e46bede7e9b82b77c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/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