Makefile - webdump - HTML to plain-text converter for webpages | |
git clone git://git.codemadness.org/webdump | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
Makefile (2131B) | |
--- | |
1 .POSIX: | |
2 | |
3 NAME = webdump | |
4 VERSION = 0.1 | |
5 | |
6 # paths | |
7 PREFIX = /usr/local | |
8 MANPREFIX = ${PREFIX}/man | |
9 DOCPREFIX = ${PREFIX}/share/doc/${NAME} | |
10 | |
11 RANLIB = ranlib | |
12 | |
13 # use system flags. | |
14 WEBDUMP_CFLAGS = ${CFLAGS} | |
15 WEBDUMP_LDFLAGS = ${LDFLAGS} | |
16 WEBDUMP_CPPFLAGS = -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=700 -D_BSD_SOURCE | |
17 | |
18 BIN = ${NAME} | |
19 SCRIPTS = | |
20 | |
21 SRC = ${BIN:=.c} | |
22 HDR = arg.h namedentities.h tree.h xml.h | |
23 | |
24 LIBXML = libxml.a | |
25 LIBXMLSRC = \ | |
26 xml.c | |
27 LIBXMLOBJ = ${LIBXMLSRC:.c=.o} | |
28 | |
29 COMPATSRC = \ | |
30 strlcat.c\ | |
31 strlcpy.c | |
32 COMPATOBJ =\ | |
33 strlcat.o\ | |
34 strlcpy.o | |
35 | |
36 LIB = ${LIBXML} ${COMPATOBJ} | |
37 | |
38 MAN1 = ${BIN:=.1}\ | |
39 ${SCRIPTS:=.1} | |
40 | |
41 DOC = \ | |
42 LICENSE\ | |
43 README | |
44 | |
45 all: ${BIN} | |
46 | |
47 ${BIN}: ${LIB} ${@:=.o} | |
48 | |
49 OBJ = ${SRC:.c=.o} ${LIBXMLOBJ} ${COMPATOBJ} | |
50 | |
51 ${OBJ}: ${HDR} | |
52 | |
53 .o: | |
54 ${CC} ${WEBDUMP_LDFLAGS} -o $@ $< ${LIB} | |
55 | |
56 .c.o: | |
57 ${CC} ${WEBDUMP_CFLAGS} ${WEBDUMP_CPPFLAGS} -o $@ -c $< | |
58 | |
59 ${LIBXML}: ${LIBXMLOBJ} | |
60 ${AR} rc $@ $? | |
61 ${RANLIB} $@ | |
62 | |
63 dist: | |
64 rm -rf "${NAME}-${VERSION}" | |
65 mkdir -p "${NAME}-${VERSION}" | |
66 cp -f ${MAN1} ${DOC} ${HDR} \ | |
67 ${SRC} ${LIBXMLSRC} ${COMPATSRC} ${SCRIPTS} \ | |
68 Makefile \ | |
69 "${NAME}-${VERSION}" | |
70 # make tarball | |
71 tar -cf - "${NAME}-${VERSION}" | \ | |
72 gzip -c > "${NAME}-${VERSION}.tar.gz" | |
73 rm -rf "${NAME}-${VERSION}" | |
74 | |
75 clean: | |
76 rm -f ${BIN} ${OBJ} ${LIB} | |
77 | |
78 install: all | |
79 # installing executable files and scripts. | |
80 mkdir -p "${DESTDIR}${PREFIX}/bin" | |
81 cp -f ${BIN} ${SCRIPTS} "${DESTDIR}${PREFIX}/bin" | |
82 for f in ${BIN} ${SCRIPTS}; do chmod 755 "${DESTDIR}${PREFIX}/bi… | |
83 # installing example files. | |
84 mkdir -p "${DESTDIR}${DOCPREFIX}" | |
85 cp -f README "${DESTDIR}${DOCPREFIX}" | |
86 # installing manual pages for general commands: section 1. | |
87 mkdir -p "${DESTDIR}${MANPREFIX}/man1" | |
88 cp -f ${MAN1} "${DESTDIR}${MANPREFIX}/man1" | |
89 for m in ${MAN1}; do chmod 644 "${DESTDIR}${MANPREFIX}/man1/$$m"… | |
90 | |
91 uninstall: | |
92 # removing executable files and scripts. | |
93 for f in ${BIN} ${SCRIPTS}; do rm -f "${DESTDIR}${PREFIX}/bin/$$… | |
94 # removing example files. | |
95 rm -f "${DESTDIR}${DOCPREFIX}/README" | |
96 -rmdir "${DESTDIR}${DOCPREFIX}" | |
97 # removing manual pages. | |
98 for m in ${MAN1}; do rm -f "${DESTDIR}${MANPREFIX}/man1/$$m"; do… | |
99 | |
100 .PHONY: all clean dist install uninstall |