Makefile (view raw)
1# dwm - dynamic window manager
2# (C)opyright MMVI Anselm R. Garbe
3
4include config.mk
5
6SRC = client.c draw.c event.c main.c tag.c util.c
7OBJ = ${SRC:.c=.o}
8CONFIG ?= config.default.h
9
10all: options dwm
11 @echo finished
12
13options:
14 @echo dwm build options:
15 @echo "CFLAGS = ${CFLAGS}"
16 @echo "LDFLAGS = ${LDFLAGS}"
17 @echo "CC = ${CC}"
18
19.c.o:
20 @echo CC $<
21 @${CC} -c ${CFLAGS} $<
22
23${OBJ}: dwm.h config.h
24
25config.h: ${CONFIG}
26 @echo creating $@ from ${CONFIG}
27 @cp ${CONFIG} $@
28
29dwm: ${OBJ}
30 @echo LD $@
31 @${CC} -o $@ ${OBJ} ${LDFLAGS}
32
33clean:
34 @echo cleaning
35 @rm -f dwm ${OBJ} dwm-${VERSION}.tar.gz
36
37dist: 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
46install: 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 @cp -f dwm.1 ${DESTDIR}${MANPREFIX}/man1
54 @chmod 644 ${DESTDIR}${MANPREFIX}/man1/dwm.1
55
56uninstall:
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