JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
applied Sanders tiny patches
[dwm.git] / Makefile
1 # dwm - dynamic window manager
2 #   (C)opyright MMVI Anselm R. Garbe
3
4 include config.mk
5
6 SRC = client.c draw.c event.c main.c tag.c util.c
7 OBJ = ${SRC:.c=.o}
8
9 all: options dwm
10         @echo finished
11
12 options:
13         @echo dwm 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}: dwm.h config.h config.mk
23
24 config.h:
25         @echo creating $@ from config.default.h
26         @cp config.default.h $@
27
28 dwm: ${OBJ}
29         @echo LD $@
30         @${CC} -o $@ ${OBJ} ${LDFLAGS}
31         @strip $@
32
33 clean:
34         @echo cleaning
35         @rm -f dwm ${OBJ} dwm-${VERSION}.tar.gz
36
37 dist: clean
38         @echo creating dist tarball
39         @mkdir -p dwm-${VERSION}
40         @cp -R LICENSE Makefile README config.*.h config.mk \
41                 dwm.1 dwm.h ${SRC} dwm-${VERSION}
42         @tar -cf dwm-${VERSION}.tar dwm-${VERSION}
43         @gzip dwm-${VERSION}.tar
44         @rm -rf dwm-${VERSION}
45
46 install: all
47         @echo installing executable file to ${DESTDIR}${PREFIX}/bin
48         @mkdir -p ${DESTDIR}${PREFIX}/bin
49         @cp -f dwm ${DESTDIR}${PREFIX}/bin
50         @chmod 755 ${DESTDIR}${PREFIX}/bin/dwm
51         @echo installing manual page to ${DESTDIR}${MANPREFIX}/man1
52         @mkdir -p ${DESTDIR}${MANPREFIX}/man1
53         @sed 's/VERSION/${VERSION}/g' < dwm.1 > ${DESTDIR}${MANPREFIX}/man1/dwm.1
54         @chmod 644 ${DESTDIR}${MANPREFIX}/man1/dwm.1
55
56 uninstall:
57         @echo removing executable file from ${DESTDIR}${PREFIX}/bin
58         @rm -f ${DESTDIR}${PREFIX}/bin/dwm
59         @echo removing manual page from ${DESTDIR}${MANPREFIX}/man1
60         @rm -f ${DESTDIR}${MANPREFIX}/man1/dwm.1
61
62 .PHONY: all options clean dist install uninstall