catsit/Makefile

71 lines
1.4 KiB
Makefile

UNAME != uname
PREFIX ?= /usr/local
MANDIR ?= ${PREFIX}/man
RUNDIR ?= /var/run
.if ${UNAME} == FreeBSD
ETCDIR ?= ${PREFIX}/etc
.else
ETCDIR ?= /etc
.endif
CFLAGS += -std=c99 -Wall -Wextra -Wpedantic
CFLAGS += -D'ETCDIR="${ETCDIR}"' -D'RUNDIR="${RUNDIR}"'
RC_SCRIPT = ${UNAME}/catsitd
-include config.mk
BINS = catsit-timer catsit-watch
SBINS = catsit catsitd
MANS = ${BINS:=.1} catsit.conf.5 ${SBINS:=.8}
OBJS = daemon.o service.o
dev: tags all
all: ${BINS} ${SBINS}
catsitd: ${OBJS}
${CC} ${LDFLAGS} ${OBJS} ${LDLIBS} -o $@
${OBJS}: daemon.h
.SUFFIXES: .in
.in:
sed -e 's|%%PREFIX%%|${PREFIX}|g' -e 's|%%RUNDIR%%|${RUNDIR}|g' $< > $@
chmod a+x $@
tags: *.[ch]
ctags -w *.[ch]
clean:
rm -f ${BINS} ${SBINS} ${OBJS} ${RC_SCRIPT} tags
install: ${BINS} ${SBINS} ${MANS} ${RC_SCRIPT}
install -d ${DESTDIR}${PREFIX}/bin
install -d ${DESTDIR}${PREFIX}/sbin
.for sect in 1 5 8
install -d ${DESTDIR}${MANDIR}/man${sect}
.endfor
install -d ${DESTDIR}${ETCDIR}/rc.d
install ${BINS} ${DESTDIR}${PREFIX}/bin
install ${SBINS} ${DESTDIR}${PREFIX}/sbin
.for man in ${MANS}
install -m 444 ${man} ${DESTDIR}${MANDIR}/man${man:E}
.endfor
install ${RC_SCRIPT} ${DESTDIR}${ETCDIR}/rc.d
uninstall:
.for bin in ${BINS}
rm -f ${DESTDIR}${PREFIX}/bin/${bin}
.endfor
.for sbin in ${SBINS}
rm -f ${DESTDIR}${PREFIX}/sbin/${sbin}
.endfor
.for man in ${MANS}
rm -f ${DESTDIR}${MANDIR}/man${man:E}/${man}
.endfor
rm -f ${DESTDIR}${ETCDIR}/rc.d/${RC_SCRIPT:T}