about summary refs log tree commit diff
path: root/configure
diff options
context:
space:
mode:
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure43
1 files changed, 43 insertions, 0 deletions
diff --git a/configure b/configure
new file mode 100755
index 0000000..7d1e424
--- /dev/null
+++ b/configure
@@ -0,0 +1,43 @@
+#!/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
+		MANDIR = \${PREFIX}/man
+		CFLAGS += -I${prefix}/include
+		CFLAGS += -D'OPENSSL_BIN="${prefix}/bin/openssl"'
+		LDFLAGS += -L${prefix}/lib
+		EOF
+		exit
+		;;
+esac
+
+libs='libcrypto libtls'
+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 = -lcrypt $(pkg-config --libs-only-l $libs)
+EOF
+
+case "$(uname)" in
+	(Darwin)
+		echo 'LDLIBS := ${LDLIBS:-lcrypt=}' >>config.mk
+		;;
+	(Linux)
+		cat >>config.mk <<-EOF
+		CFLAGS += -D_GNU_SOURCE -D'CERTBOT_PATH="/etc/letsencrypt"'
+		LDLIBS_calico = $(pkg-config --libs-only-l libcrypto)
+		RCS =
+		DIRS =
+		EOF
+		;;
+esac