From 8d27209e1872046eb1eba24a7ff85488f6c28ed4 Mon Sep 17 00:00:00 2001 From: "C. McEnroe" Date: Sun, 2 May 2021 20:35:48 -0400 Subject: Clean up Makefiles, configure scripts Default MANDIR to ${PREFIX}/man since it turns out man-db includes /usr/local/man by default. Add support for BINDIR. Separate libs out into LDADD variables. --- extra/notify/Makefile | 12 +++++++----- extra/notify/configure | 20 ++++++++++---------- extra/palaver/Makefile | 14 +++++++++----- extra/palaver/configure | 20 ++++++++++---------- 4 files changed, 36 insertions(+), 30 deletions(-) (limited to 'extra') diff --git a/extra/notify/Makefile b/extra/notify/Makefile index b82094f..5e8ed93 100644 --- a/extra/notify/Makefile +++ b/extra/notify/Makefile @@ -1,11 +1,13 @@ PREFIX ?= /usr/local -MANDIR ?= ${PREFIX}/share/man +BINDIR ?= ${PREFIX}/bin +MANDIR ?= ${PREFIX}/man CFLAGS += -std=c11 -Wall -Wextra -Wpedantic -LDLIBS = -ltls +LDADD.libtls = -ltls -include config.mk +LDLIBS = ${LDADD.libtls} OBJS = notify.o all: pounce-notify @@ -17,10 +19,10 @@ clean: rm -f ${OBJS} pounce-notify install: pounce-notify pounce-notify.1 - install -d ${DESTDIR}${PREFIX}/bin ${DESTDIR}${MANDIR}/man1 - install pounce-notify ${DESTDIR}${PREFIX}/bin + install -d ${DESTDIR}${BINDIR} ${DESTDIR}${MANDIR}/man1 + install pounce-notify ${DESTDIR}${BINDIR} install -m 644 pounce-notify.1 ${DESTDIR}${MANDIR}/man1 uninstall: - rm -f ${DESTDIR}${PREFIX}/bin/pounce-notify + rm -f ${DESTDIR}${BINDIR}/pounce-notify rm -f ${DESTDIR}${MANDIR}/man1/pounce-notify.1 diff --git a/extra/notify/configure b/extra/notify/configure index 5a4ec45..e180aa5 100755 --- a/extra/notify/configure +++ b/extra/notify/configure @@ -4,27 +4,28 @@ set -eu 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:-}" } +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 for opt; do case "${opt}" in (--prefix=*) echo "PREFIX = ${opt#*=}" ;; + (--bindir=*) echo "BINDIR = ${opt#*=}" ;; (--mandir=*) echo "MANDIR = ${opt#*=}" ;; (*) echo "warning: unsupported option ${opt}" >&2 ;; esac @@ -32,7 +33,6 @@ done case "$(uname)" in (OpenBSD) - ldlibs -ltls ;; (Linux) cflags -D_GNU_SOURCE diff --git a/extra/palaver/Makefile b/extra/palaver/Makefile index 457e592..fbf10df 100644 --- a/extra/palaver/Makefile +++ b/extra/palaver/Makefile @@ -1,11 +1,15 @@ PREFIX ?= /usr/local -MANDIR ?= ${PREFIX}/share/man +BINDIR ?= ${PREFIX}/bin +MANDIR ?= ${PREFIX}/man CFLAGS += -std=c11 -Wall -Wextra -Wpedantic -LDLIBS = -lcurl -lsqlite3 -ltls +LDADD.libcurl = -lcurl +LDADD.libtls = -ltls +LDADD.sqlite3 = -lsqlite3 -include config.mk +LDLIBS = ${LDADD.libcurl} ${LDADD.libtls} ${LDADD.sqlite3} OBJS = notify.o all: pounce-palaver @@ -17,10 +21,10 @@ clean: rm -f ${OBJS} pounce-palaver install: pounce-palaver pounce-palaver.1 - install -d ${DESTDIR}${PREFIX}/bin ${DESTDIR}${MANDIR}/man1 - install pounce-palaver ${DESTDIR}${PREFIX}/bin + install -d ${DESTDIR}${BINDIR} ${DESTDIR}${MANDIR}/man1 + install pounce-palaver ${DESTDIR}${BINDIR} install -m 644 pounce-palaver.1 ${DESTDIR}${MANDIR}/man1 uninstall: - rm -f ${DESTDIR}${PREFIX}/bin/pounce-palaver + rm -f ${DESTDIR}${BINDIR}/pounce-palaver rm -f ${DESTDIR}${MANDIR}/man1/pounce-palaver.1 diff --git a/extra/palaver/configure b/extra/palaver/configure index 65c82fe..bce92be 100755 --- a/extra/palaver/configure +++ b/extra/palaver/configure @@ -4,27 +4,28 @@ set -eu 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:-}" } +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 for opt; do case "${opt}" in (--prefix=*) echo "PREFIX = ${opt#*=}" ;; + (--bindir=*) echo "BINDIR = ${opt#*=}" ;; (--mandir=*) echo "MANDIR = ${opt#*=}" ;; (*) echo "warning: unsupported option ${opt}" >&2 ;; esac @@ -32,7 +33,6 @@ done case "$(uname)" in (OpenBSD) - ldlibs -ltls config libcurl sqlite3 ;; (Linux) -- cgit 1.4.1