JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
copyright notice is in LICENSE
[dwm.git] / Makefile
1 # dwm - dynamic window manager
2
3 include config.mk
4
5 SRC = dwm.c
6 OBJ = ${SRC:.c=.o}
7
8 all: options dwm
9
10 options:
11         @echo dwm build options:
12         @echo "CFLAGS   = ${CFLAGS}"
13         @echo "LDFLAGS  = ${LDFLAGS}"
14         @echo "CC       = ${CC}"
15
16 .c.o:
17         @echo CC $<
18         @${CC} -c ${CFLAGS} $<
19
20 ${OBJ}: config.h config.mk
21
22 config.h:
23         @echo creating $@ from config.def.h
24         @cp config.def.h $@
25
26 dwm: ${OBJ}
27         @echo CC -o $@
28         @${CC} -o $@ ${OBJ} ${LDFLAGS}
29
30 clean:
31         @echo cleaning
32         @rm -f dwm ${OBJ} dwm-${VERSION}.tar.gz
33
34 dist: clean
35         @echo creating dist tarball
36         @mkdir -p dwm-${VERSION}
37         @cp -R LICENSE Makefile README config.def.h config.mk \
38                 dwm.1 ${SRC} dwm-${VERSION}
39         @tar -cf dwm-${VERSION}.tar dwm-${VERSION}
40         @gzip dwm-${VERSION}.tar
41         @rm -rf dwm-${VERSION}
42
43 install: all
44         @echo installing executable file to ${DESTDIR}${PREFIX}/bin
45         @mkdir -p ${DESTDIR}${PREFIX}/bin
46         @cp -f dwm ${DESTDIR}${PREFIX}/bin
47         @chmod 755 ${DESTDIR}${PREFIX}/bin/dwm
48         @echo installing manual page to ${DESTDIR}${MANPREFIX}/man1
49         @mkdir -p ${DESTDIR}${MANPREFIX}/man1
50         @sed "s/VERSION/${VERSION}/g" < dwm.1 > ${DESTDIR}${MANPREFIX}/man1/dwm.1
51         @chmod 644 ${DESTDIR}${MANPREFIX}/man1/dwm.1
52
53 uninstall:
54         @echo removing executable file from ${DESTDIR}${PREFIX}/bin
55         @rm -f ${DESTDIR}${PREFIX}/bin/dwm
56         @echo removing manual page from ${DESTDIR}${MANPREFIX}/man1
57         @rm -f ${DESTDIR}${MANPREFIX}/man1/dwm.1
58
59 .PHONY: all options clean dist install uninstall