tMakefile - stopwatch - simple timer for console or x root window | |
git clone git://src.adamsgaard.dk/stopwatch | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
tMakefile (2131B) | |
--- | |
1 .POSIX: | |
2 | |
3 NAME = stopwatch | |
4 VERSION = 0.2.1 | |
5 | |
6 # paths | |
7 PREFIX = /usr/local | |
8 MANPREFIX = ${PREFIX}/share/man | |
9 DOCPREFIX = ${PREFIX}/share/doc/${NAME} | |
10 | |
11 RANLIB = ranlib | |
12 | |
13 BIN = \ | |
14 stopwatch\ | |
15 timer | |
16 SRC = ${BIN:=.c} | |
17 HDR = timeutil.h | |
18 | |
19 LIBTIMEUTIL = libtimeutil.a | |
20 LIBTIMEUTILSRC = timeutil.c | |
21 LIBTIMEUTILOBJ = ${LIBTIMEUTILSRC:.c=.o} | |
22 | |
23 COMPATSRC =\ | |
24 strlcpy.c\ | |
25 strtonum.c | |
26 COMPATOBJ = ${COMPATSRC:.c=.o} | |
27 | |
28 LIB = ${LIBTIMEUTIL} ${COMPATOBJ} | |
29 | |
30 X11INC = /usr/X11R6/include | |
31 X11LIB = /usr/X11R6/lib | |
32 INCS = -I${X11INC} | |
33 LIBS = -L${X11LIB} -lX11 | |
34 | |
35 STOPWATCHCFLAGS = ${CFLAGS} ${INCS} | |
36 STOPWATCHLDFLAGS = ${LDFLAGS} ${LIBS} | |
37 STOPWATCHCPPFLAGS = ${CPPFLAGS} | |
38 | |
39 MAN1 = ${BIN:=.1} | |
40 DOC = \ | |
41 LICENSE\ | |
42 README | |
43 | |
44 all: ${BIN} | |
45 | |
46 ${BIN}: ${LIB} ${@:=.o} | |
47 | |
48 OBJ = ${SRC:.c=.o} ${LIBTIMEUTILOBJ} ${COMPATOBJ} | |
49 | |
50 ${OBJ}: ${HDR} | |
51 | |
52 .o: | |
53 ${CC} ${STOPWATCHLDFLAGS} -o $@ $< ${LIB} | |
54 | |
55 .c.o: | |
56 ${CC} ${STOPWATCHCFLAGS} ${STOPWATCHCPPFLAGS} -o $@ -c $< | |
57 | |
58 ${LIBTIMEUTIL}: ${LIBTIMEUTILOBJ} | |
59 ${AR} -rc $@ $? | |
60 ${RANLIB} $@ | |
61 | |
62 dist: | |
63 rm -rf "${NAME}-${VERSION}" | |
64 mkdir -p "${NAME}-${VERSION}" | |
65 cp -f ${MAN1} ${DOC} ${SRC} ${LIBTIMEUTILSRC} ${COMPATSRC} Makef… | |
66 tar cf - "${NAME}-${VERSION}" | gzip -c > "${NAME}-${VERSION}.ta… | |
67 rm -rf "${NAME}-${VERSION}" | |
68 | |
69 clean: | |
70 rm -f ${BIN} ${OBJ} ${LIB} | |
71 | |
72 install: | |
73 # installing executable files. | |
74 mkdir -p "${DESTDIR}${PREFIX}/bin" | |
75 cp -f ${BIN} "${DESTDIR}${PREFIX}/bin" | |
76 for f in ${BIN}; do chmod 755 "${DESTDIR}${PREFIX}/bin/$$f"; done | |
77 # installing documentation files. | |
78 mkdir -p "${DESTDIR}${DOCPREFIX}" | |
79 cp -f ${DOC} "${DESTDIR}${DOCPREFIX}" | |
80 # installing manual pages for general commands: section 1. | |
81 mkdir -p "${DESTDIR}${MANPREFIX}/man1" | |
82 cp -f ${MAN1} "${DESTDIR}${MANPREFIX}/man1" | |
83 for m in ${MAN1}; do chmod 644 "${DESTDIR}${MANPREFIX}/man1/$$m"… | |
84 | |
85 uninstall: | |
86 # removing executable files. | |
87 for f in ${BIN}; do rm -f "${DESTDIR}${PREFIX}/bin/$$f"; done | |
88 # removing documentation files. | |
89 for d in ${DOC}; do rm -f "${DESTDIR}${DOCPREFIX}/$$d"; done | |
90 -rmdir "${DESTDIR}${DOCPREFIX}" | |
91 # removing manual pages. | |
92 for m in ${MAN1}; do rm -f "${DESTDIR}${MANPREFIX}/man1/$$m"; do… | |
93 | |
94 .PHONY: all clean dist install uninstall |