about summary refs log tree commit diff
path: root/Makefile
blob: 2add9f13a7ebb21ba482b09dc3e42ec8e0401ef9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
PREFIX = /usr/local
SHAREDIR = ${PREFIX}/share
MANDIR = ${SHAREDIR}/man

CURL ?= curl
TAR ?= tar

SYSTEMS += freebsd
SYSTEMS += linux
SYSTEMS += netbsd
SYSTEMS += openbsd
SYSTEMS += posix

all: exman ${SYSTEMS}

.SUFFIXES: .tar .url

.url.tar:
	${CURL} -f -o $@ "$$(cat $<)"

.tar:
	mkdir -p $@
	${TAR} -x -f $< -C $@ --strip-components ${STRIP.$@} ${FILES.$@}

netbsd: netbsd-man.tar netbsd-comp.tar
	mkdir -p $@
	${TAR} -x -f netbsd-man.tar -C $@ --strip-components ${STRIP.$@} ${FILES.$@}
	${TAR} -x -f netbsd-comp.tar -C $@ --strip-components ${STRIP.$@} ${FILES.$@}

openbsd: openbsd-man.tar openbsd-comp.tar
	mkdir -p $@
	${TAR} -x -f openbsd-man.tar -C $@ --strip-components ${STRIP.$@} ${FILES.$@}
	${TAR} -x -f openbsd-comp.tar -C $@ --strip-components ${STRIP.$@} ${FILES.$@}

FILES.freebsd = ./usr/share/man/
FILES.netbsd = ./usr/share/man/
FILES.openbsd = ./usr/share/man/

STRIP.freebsd = 4
STRIP.linux = 1
STRIP.netbsd = 4
STRIP.openbsd = 4
STRIP.posix = 1

clean:
	rm -fr ${SYSTEMS} *.tar

install: exman exman.1 ${SYSTEMS}
	install -d ${PREFIX}/bin ${MANDIR}/man1 ${SHAREDIR}/exman
	install exman ${PREFIX}/bin
	gzip -c exman.1 > ${MANDIR}/man1/exman.1.gz
	${TAR} -c -f - ${SYSTEMS} | ${TAR} -xo -f - -C ${SHAREDIR}/exman

uninstall:
	rm -fr ${PREFIX}/bin/exman ${MANDIR}/man1/exman.1.gz ${SHAREDIR}/exman