blob: c424031ce4e19873b3f21f5d9de376b3f87a9e24 (
plain)
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
56
57
58
59
60
61
62
63
64
|
# Carbs Packaging Tools
include config.mk
INSTALL_SH = ./tools/install.sh
CONTRIB = `find contrib -name 'cpt*' ! -name '*.*'`
SRC = `find src -name 'cpt*' ! -name '*.*'`
BIN = ${SRC} ${CONTRIB}
all: src/cpt-lib
@test "${DOCS}" != yes || ${MAKE} -C docs all
src/cpt-lib: src/cpt-lib.in
sed -n '/^Copyright/{s,^, ",;s,$$," \\,;p}' LICENSE | \
sed -e '/@LICENSE@/r /dev/stdin' \
-e '/@LICENSE@/d' \
-e "s|@VERSION@|${VERSION}|g" \
-e "s|@DOCSTRING@|Call functions from the library|g" src/cpt-lib.in > $@
chmod 755 $@
shellspec: all tests/etc/cpt-hook
shellspec
shellcheck: all
cd src; find . ../contrib -name 'cpt*' ! -name '*.*' -exec shellcheck -e 2119 -x -f gcc {} +
test: shellspec shellcheck
tests/etc/cpt-hook:
ln -s ../hook-file $@
dist: docs/cpt.info
./tools/mkdist.sh "${VERSION}"
install: all
test "${DOCS}" != yes || ${MAKE} -C docs install
[ -f docs/cpt.info ] && \
${INSTALL_SH} -Dm644 docs/cpt.info ${DESTDIR}${INFODIR}/cpt.info
[ -f docs/cpt.txt ] && \
${INSTALL_SH} -Dm644 docs/cpt.txt ${DESTDIR}${DOCDIR}/cpt.txt
${INSTALL_SH} -Dm644 CHANGELOG.md ${DESTDIR}${DOCDIR}/CHANGELOG
${INSTALL_SH} -Dm755 -t ${DESTDIR}${BINDIR} ${BIN}
${INSTALL_SH} -Dm644 -t ${DESTDIR}${MAN1} man/*.1
for man in ${CONTRIB}; do \
./tools/tool2man.sh $$man > "${DESTDIR}${MAN1}/$${man##*/}.1"; \
chmod 644 "${DESTDIR}${MAN1}/$${man##*/}.1"; \
done
uninstall:
for bin in ${BIN}; do \
rm -f ${DESTDIR}${BINDIR}/$${bin##*/}; done
for man in man/*.1; do rm -f ${DESTDIR}${MAN1}/$${man##*/}; done
for man in ${CONTRIB}; do rm -f ${DESTDIR}${MAN1}/$${man##*/}.1; done
rm -rf ${DESTDIR}${DOCDIR}
rm -f ${DESTDIR}${INFODIR}/cpt.info
clean:
${MAKE} -C docs clean
rm -rf src/cpt-lib "cpt-${VERSION}.tar.xz" coverage report
rm -f tests/etc/cpt-hook
allclean: clean
rm -f config.mk
.PHONY: all dist allclean clean install uninstall shellspec shellcheck test
|