Add support for BINDIR, fix default MANDIR, use LDADD vars

I avoided defaulting MANDIR to /usr/local/man because I thought it
didn't work on GNU/Linux and users would be confused, but it turns
out man-db's default configuration includes both /usr/local/man and
/usr/man, so ${PREFIX}/man is a sensical default.
master
C. McEnroe 2021-05-04 12:09:46 -04:00
parent 94f79e889f
commit ff87d561bd
2 changed files with 25 additions and 22 deletions

View File

@ -1,12 +1,16 @@
PREFIX ?= /usr/local
MANDIR ?= ${PREFIX}/share/man
BINDIR ?= ${PREFIX}/bin
MANDIR ?= ${PREFIX}/man
CEXTS = gnu-case-range gnu-conditional-omitted-operand
CFLAGS += -std=c11 -Wall -Wextra -Wpedantic ${CEXTS:%=-Wno-%}
LDLIBS = -lncursesw -ltls
LDADD.libtls = -ltls
LDADD.ncursesw = -lncursesw
-include config.mk
LDLIBS = ${LDADD.libtls} ${LDADD.ncursesw}
OBJS += buffer.o
OBJS += chat.o
OBJS += command.o
@ -30,30 +34,30 @@ catgirl: ${OBJS}
${OBJS}: chat.h
tags: *.h *.c
ctags -w *.h *.c
tags: *.[ch]
ctags -w *.[ch]
clean:
rm -f tags catgirl ${OBJS}
rm -f catgirl ${OBJS} tags
install: catgirl catgirl.1
install -d ${DESTDIR}${PREFIX}/bin ${DESTDIR}${MANDIR}/man1
install catgirl ${DESTDIR}${PREFIX}/bin
install -d ${DESTDIR}${BINDIR} ${DESTDIR}${MANDIR}/man1
install catgirl ${DESTDIR}${BINDIR}
install -m 644 catgirl.1 ${DESTDIR}${MANDIR}/man1
uninstall:
rm -f ${DESTDIR}${PREFIX}/bin/catgirl ${DESTDIR}${MANDIR}/man1/catgirl.1
rm -f ${DESTDIR}${BINDIR}/catgirl ${DESTDIR}${MANDIR}/man1/catgirl.1
scripts/sandman: scripts/sandman.o
${CC} ${LDFLAGS} scripts/sandman.o -framework Cocoa -o $@
install-sandman: scripts/sandman scripts/sandman.1
install -d ${DESTDIR}${PREFIX}/bin ${DESTDIR}${MANDIR}/man1
install scripts/sandman ${DESTDIR}${PREFIX}/bin
install -d ${DESTDIR}${BINDIR} ${DESTDIR}${MANDIR}/man1
install scripts/sandman ${DESTDIR}${BINDIR}
install -m 644 scripts/sandman.1 ${DESTDIR}${MANDIR}/man1
uninstall-sandman:
rm -f ${DESTDIR}${PREFIX}/bin/sandman ${DESTDIR}${MANDIR}/man1/sandman.1
rm -f ${DESTDIR}${BINDIR}/sandman ${DESTDIR}${MANDIR}/man1/sandman.1
CHROOT_USER = chat
CHROOT_GROUP = ${CHROOT_USER}

21
configure vendored
View File

@ -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,12 +33,10 @@ done
case "$(uname)" in
(FreeBSD)
ldlibs -lncursesw
config libtls
defstr OPENSSL_BIN /usr/bin/openssl
;;
(OpenBSD)
ldlibs -lncursesw -ltls
defstr OPENSSL_BIN /usr/bin/openssl
;;
(Linux)