diff options
Diffstat (limited to 'configure')
-rwxr-xr-x | configure | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/configure b/configure index d59e7ba..07e3245 100755 --- a/configure +++ b/configure @@ -1,23 +1,25 @@ #!/bin/sh set -eu +: ${PKG_CONFIG:=pkg-config} + cflags() { echo "CFLAGS += $*" } -ldlibs() { - echo "LDLIBS ${o:-}= $*" - o=+ -} -config() { - pkg-config --print-errors "$@" - cflags $(pkg-config --cflags "$@") - ldlibs $(pkg-config --libs "$@") -} defstr() { cflags "-D'$1=\"$2\"'" } defvar() { - defstr "$1" "$(pkg-config --variable=$3 $2)${4:-}" + defstr "$1" "$(${PKG_CONFIG} --variable=$3 $2)${4:-}" +} +ldadd() { + lib=$1; shift + echo "LDADD.${lib} = $*" +} +config() { + ${PKG_CONFIG} --print-errors "$@" + cflags $(${PKG_CONFIG} --cflags "$@") + for lib; do ldadd $lib $(${PKG_CONFIG} --libs $lib); done } exec >config.mk @@ -25,25 +27,26 @@ exec >config.mk for opt; do case "${opt}" in (--prefix=*) echo "PREFIX = ${opt#*=}" ;; + (--bindir=*) echo "BINDIR = ${opt#*=}" ;; (--mandir=*) echo "MANDIR = ${opt#*=}" ;; + (--enable-sandman) echo 'BINS += sandman' ;; (*) echo "warning: unsupported option ${opt}" >&2 ;; esac done case "$(uname)" in (FreeBSD) - ldlibs -lncursesw config libtls - defvar OPENSSL_BIN openssl exec_prefix /bin/openssl + defstr OPENSSL_BIN /usr/bin/openssl ;; (OpenBSD) - ldlibs -lncursesw -ltls defstr OPENSSL_BIN /usr/bin/openssl ;; (Linux) cflags -Wno-pedantic -D_GNU_SOURCE config libtls ncursesw defvar OPENSSL_BIN openssl exec_prefix /bin/openssl + echo 'OBJS += compat_readpassphrase.o' ;; (Darwin) cflags -D__STDC_WANT_LIB_EXT1__=1 |