Blob


1 .PHONY: all clean distclean install
3 VERSION = 0.4
4 PROG = lstun
5 DISTNAME = ${PROG}-${VERSION}
7 HEADERS = log.h
9 SOURCES = compats.c \
10 log.c \
11 lstun.c
13 OBJS = ${SOURCES:.c=.o}
15 DISTFILES = CHANGES \
16 LICENSE \
17 Makefile \
18 README.md \
19 configure \
20 lstun.1 \
21 ${HEADERS} \
22 ${SOURCES}
24 all: ${PROG}
26 Makefile.configure config.h: configure tests.c
27 @echo "$@ is out of date; please run ./configure"
28 @exit 1
30 include Makefile.configure
32 # -- targets --
34 ${PROG}: ${OBJS}
35 ${CC} -o $@ ${OBJS} ${LDFLAGS} ${LDADD}
37 clean:
38 rm -f ${OBJS} ${OBJS:.o=.d} ${PROG}
40 distclean: clean
41 rm -f Makefile.configure config.h config.h.old config.log config.log.old
43 install: ${PROG}
44 mkdir -p ${DESTDIR}${BINDIR}
45 mkdir -p ${DESTDIR}${MANDIR}/man1
46 ${INSTALL_PROGRAM} ${PROG} ${DESTDIR}${BINDIR}
47 ${INSTALL_MAN} lstun.1 ${DESTDIR}${MANDIR}/man1/${PROG.1}
49 install-local: ${PROG}
50 mkdir -p ${HOME}/bin
51 ${INSTALL_PROGRAM} ${PROG} ${HOME}/bin
53 uninstall:
54 rm ${DESTDIR}${BINDIR}/${PROG}
55 rm ${DESTDIR}${MANDIR}/man1/${PROG}.1
57 # --- maintainer targets ---
59 dist: ${DISTNAME}.sha256
61 ${DISTNAME}.sha256: ${DISTNAME}.tar.gz
62 sha256 ${DISTNAME}.tar.gz > $@
64 ${DISTNAME}.tar.gz: ${DISTFILES}
65 mkdir -p .dist/${DISTNAME}
66 ${INSTALL} -m 0644 ${DISTFILES} .dist/${DISTNAME}
67 chmod 755 .dist/${DISTNAME}/configure
68 cd .dist && tar zcf ../$@ ${DISTNAME}
69 rm -rf .dist
71 # -- dependency management ---
73 # these .d files are produced during the first build if the compiler
74 # supports it.
76 -include log.d
77 -include lstun.d