Makefile 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. # dwm - dynamic window manager
  2. # (C)opyright MMVI Anselm R. Garbe
  3. include config.mk
  4. SRC = client.c draw.c event.c main.c tag.c util.c
  5. OBJ = ${SRC:.c=.o}
  6. MAN1 = dwm.1
  7. BIN = dwm
  8. all: options dwm
  9. @echo finished
  10. options:
  11. @echo dwm build options:
  12. @echo "CFLAGS = ${CFLAGS}"
  13. @echo "LDFLAGS = ${LDFLAGS}"
  14. @echo "CC = ${CC}"
  15. .c.o:
  16. @echo CC $<
  17. @${CC} -c ${CFLAGS} $<
  18. ${OBJ}: dwm.h config.h
  19. config.h:
  20. @echo missing config.h created
  21. @cp config.default.h $@
  22. dwm: ${OBJ}
  23. @echo LD $@
  24. @${CC} -o $@ ${OBJ} ${LDFLAGS}
  25. clean:
  26. rm -f dwm *.o dwm-${VERSION}.tar.gz
  27. dist: clean
  28. mkdir -p dwm-${VERSION}
  29. cp -R Makefile README LICENSE config.mk dwm.h config.*.h \
  30. ${SRC} ${MAN1} dwm-${VERSION}
  31. tar -cf dwm-${VERSION}.tar dwm-${VERSION}
  32. gzip dwm-${VERSION}.tar
  33. rm -rf dwm-${VERSION}
  34. install: all
  35. @mkdir -p ${DESTDIR}${PREFIX}/bin
  36. @cp -f ${BIN} ${DESTDIR}${PREFIX}/bin
  37. @for i in ${BIN}; do \
  38. chmod 755 ${DESTDIR}${PREFIX}/bin/`basename $$i`; \
  39. done
  40. @echo installed executable files to ${DESTDIR}${PREFIX}/bin
  41. @mkdir -p ${DESTDIR}${MANPREFIX}/man1
  42. @cp -f ${MAN1} ${DESTDIR}${MANPREFIX}/man1
  43. @for i in ${MAN1}; do \
  44. chmod 444 ${DESTDIR}${MANPREFIX}/man1/`basename $$i`; \
  45. done
  46. @echo installed manual pages to ${DESTDIR}${MANPREFIX}/man1
  47. uninstall:
  48. for i in ${BIN}; do \
  49. rm -f ${DESTDIR}${PREFIX}/bin/`basename $$i`; \
  50. done
  51. for i in ${MAN1}; do \
  52. rm -f ${DESTDIR}${MANPREFIX}/man1/`basename $$i`; \
  53. done
  54. .PHONY: all options clean dist install uninstall