Xinqi Bao's Git

d208dbbd13e6a20d26fbc2b822c455c65579ceda
[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
11 options:
12 @echo dmenu build options:
13 @echo "CFLAGS = ${CFLAGS}"
14 @echo "LDFLAGS = ${LDFLAGS}"
15 @echo "CC = ${CC}"
16 @echo "LD = ${LD}"
17
18 .c.o:
19 @echo CC $<
20 @${CC} -c ${CFLAGS} $<
21
22 ${OBJ}: dmenu.h config.mk
23
24 dmenu: ${OBJ}
25 @echo LD $@
26 @${LD} -o $@ ${OBJ} ${LDFLAGS}
27 @strip $@
28
29 clean:
30 @echo cleaning
31 @rm -f dmenu ${OBJ} dmenu-${VERSION}.tar.gz
32
33 dist: clean
34 @echo creating dist tarball
35 @mkdir -p dmenu-${VERSION}
36 @cp -R LICENSE Makefile README config.mk dmenu.1 dmenu.h ${SRC} dmenu-${VERSION}
37 @tar -cf dmenu-${VERSION}.tar dmenu-${VERSION}
38 @gzip dmenu-${VERSION}.tar
39 @rm -rf dmenu-${VERSION}
40
41 install: all
42 @echo installing executable file to ${DESTDIR}${PREFIX}/bin
43 @mkdir -p ${DESTDIR}${PREFIX}/bin
44 @cp -f dmenu ${DESTDIR}${PREFIX}/bin
45 @chmod 755 ${DESTDIR}${PREFIX}/bin/dmenu
46 @echo installing manual page to ${DESTDIR}${MANPREFIX}/man1
47 @mkdir -p ${DESTDIR}${MANPREFIX}/man1
48 @sed 's/VERSION/${VERSION}/g' < dmenu.1 > ${DESTDIR}${MANPREFIX}/man1/dmenu.1
49 @chmod 644 ${DESTDIR}${MANPREFIX}/man1/dmenu.1
50
51 uninstall:
52 @echo removing executable file from ${DESTDIR}${PREFIX}/bin
53 @rm -f ${DESTDIR}${PREFIX}/bin/dmenu
54 @echo removing manual page from ${DESTDIR}${MANPREFIX}/man1
55 @rm -f ${DESTDIR}${MANPREFIX}/man1/dmenu.1
56
57 .PHONY: all options clean dist install uninstall