Makefile - webdump - HTML to plain-text converter for webpages
 (HTM) git clone git://git.codemadness.org/webdump
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) 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}/bin/$$f"; done
           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"; done
           90 
           91 uninstall:
           92         # removing executable files and scripts.
           93         for f in ${BIN} ${SCRIPTS}; do rm -f "${DESTDIR}${PREFIX}/bin/$$f"; done
           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"; done
           99 
          100 .PHONY: all clean dist install uninstall