appliead Sanders manpage/Makefile pacth
[dmenu.git] / Makefile
1 # dmenu - dynamic menu
2 #   (C)opyright MMVI Anselm R. Garbe
3
4 include config.mk
5
6 SRC = draw.c main.c util.c
7 OBJ = ${SRC:.c=.o}
8
9 all: options dmenu
10         @echo finished
11
12 options:
13         @echo dmenu build options:
14         @echo "CFLAGS   = ${CFLAGS}"
15         @echo "LDFLAGS  = ${LDFLAGS}"
16         @echo "CC       = ${CC}"
17
18 .c.o:
19         @echo CC $<
20         @${CC} -c ${CFLAGS} $<
21
22 ${OBJ}: dmenu.h config.h
23
24 config.h:
25         @echo creating $@ from config.default.h
26         @cp config.default.h $@
27
28 dmenu: ${OBJ}
29         @echo LD $@
30         @${CC} -o $@ ${OBJ} ${LDFLAGS}
31         @strip $@
32
33 clean:
34         @echo cleaning
35         @rm -f dmenu ${OBJ} dmenu-${VERSION}.tar.gz
36
37 dist: clean
38         @echo creating dist tarball
39         @mkdir -p dmenu-${VERSION}
40         @cp -R LICENSE Makefile README config.*.h config.mk \
41                 dmenu.1 dmenu.h ${SRC} dmenu-${VERSION}
42         @tar -cf dmenu-${VERSION}.tar dmenu-${VERSION}
43         @gzip dmenu-${VERSION}.tar
44         @rm -rf dmenu-${VERSION}
45
46 install: all
47         @echo installing executable file to ${DESTDIR}${PREFIX}/bin
48         @mkdir -p ${DESTDIR}${PREFIX}/bin
49         @cp -f dmenu ${DESTDIR}${PREFIX}/bin
50         @chmod 755 ${DESTDIR}${PREFIX}/bin/dmenu
51         @echo installing manual page to ${DESTDIR}${MANPREFIX}/man1
52         @mkdir -p ${DESTDIR}${MANPREFIX}/man1
53         @sed 's/VERSION/${VERSION}/g' < dmenu.1 > ${DESTDIR}${MANPREFIX}/man1/dmenu.1
54         @chmod 644 ${DESTDIR}${MANPREFIX}/man1/dmenu.1
55
56 uninstall:
57         @echo removing executable file from ${DESTDIR}${PREFIX}/bin
58         @rm -f ${DESTDIR}${PREFIX}/bin/dmenu
59         @echo removing manual page from ${DESTDIR}${MANPREFIX}/man1
60         @rm -f ${DESTDIR}${MANPREFIX}/man1/dmenu.1
61
62 .PHONY: all options clean dist install uninstall