Makefile: use envsubst for processing .in files

pull/260/head
Asbjørn Apeland 2018-11-20 09:55:09 +01:00
parent de851955b6
commit e2e1e0addb
2 changed files with 5 additions and 13 deletions

View File

@ -20,16 +20,8 @@ SYSTEMDDIR = $(PREFIX)/lib/systemd/system
MAN1DIR = $(PREFIX)/share/man/man1
MAN5DIR = $(PREFIX)/share/man/man5
replace_vars = sed \
-e "s|@PN@|$(PN)|g" \
-e "s|@CONFDIR@|$(CONFDIR)|g" \
-e "s|@CRONDIR@|$(CRONDIR)|g" \
-e "s|@BINDIR@|$(BINDIR)|g" \
-e "s|@DOCDIR@|$(DOCDIR)|g" \
-e "s|@SCRIPTDIR@|$(SCRIPTDIR)|g" \
-e "s|@SYSTEMDDIR@|$(SYSTEMDDIR)|g" \
-e "s|@MAN1DIR@|$(MAN1DIR)|g" \
-e "s|@MAN5DIR@|$(MAN5DIR)|g"
# make variables accessible to `envsubst`
.EXPORT_ALL_VARIABLES:
all: man
@ -48,8 +40,8 @@ install-etc:
install-systemd:
@echo 'installing systemd service units...'
install -d -m 755 "$(DESTDIR)$(SYSTEMDDIR)"
$(replace_vars) contrib/systemd/btrbk.service.in > contrib/systemd/btrbk.service.tmp
$(replace_vars) contrib/systemd/btrbk.timer.in > contrib/systemd/btrbk.timer.tmp
envsubst < contrib/systemd/btrbk.service.in > contrib/systemd/btrbk.service.tmp
envsubst < contrib/systemd/btrbk.timer.in > contrib/systemd/btrbk.timer.tmp
install -p -m 644 contrib/systemd/btrbk.service.tmp "$(DESTDIR)$(SYSTEMDDIR)/btrbk.service"
install -p -m 644 contrib/systemd/btrbk.timer.tmp "$(DESTDIR)$(SYSTEMDDIR)/btrbk.timer"
rm contrib/systemd/btrbk.service.tmp

View File

@ -4,4 +4,4 @@ Documentation=man:btrbk(1)
[Service]
Type=oneshot
ExecStart=@BINDIR@/btrbk run
ExecStart=${BINDIR}/btrbk run