X-Git-Url: https://git.xinqibao.xyz/dwm.git/blobdiff_plain/eccd02def292e56decfe125bcfdae35326006889..646b351cc79845f4cc77415dfff474b9ae0053d9:/Makefile?ds=sidebyside

diff --git a/Makefile b/Makefile
index da0d71c..fd07d59 100644
--- a/Makefile
+++ b/Makefile
@@ -1,19 +1,15 @@
 # dwm - dynamic window manager
-#   (C)opyright MMVI Anselm R. Garbe
+# See LICENSE file for copyright and license details.
 
 include config.mk
 
-SRC = client.c draw.c event.c main.c tag.c util.c
+SRC = drw.c dwm.c util.c
 OBJ = ${SRC:.c=.o}
-MAN1 = dwm.1 
-BIN = dwm
 
 all: options dwm
-	@echo finished
 
 options:
 	@echo dwm build options:
-	@echo "LIBS     = ${LIBS}"
 	@echo "CFLAGS   = ${CFLAGS}"
 	@echo "LDFLAGS  = ${LDFLAGS}"
 	@echo "CC       = ${CC}"
@@ -22,40 +18,43 @@ options:
 	@echo CC $<
 	@${CC} -c ${CFLAGS} $<
 
-${OBJ}: dwm.h
+${OBJ}: config.h config.mk
+
+config.h:
+	@echo creating $@ from config.def.h
+	@cp config.def.h $@
 
 dwm: ${OBJ}
-	@echo LD $@
+	@echo CC -o $@
 	@${CC} -o $@ ${OBJ} ${LDFLAGS}
 
 clean:
-	rm -f dwm *.o core dwm-${VERSION}.tar.gz
+	@echo cleaning
+	@rm -f dwm ${OBJ} dwm-${VERSION}.tar.gz
 
 dist: clean
-	mkdir -p dwm-${VERSION}
-	cp -R Makefile README LICENSE config.mk *.h *.c ${MAN1} dwm-${VERSION}
-	tar -cf dwm-${VERSION}.tar dwm-${VERSION}
-	gzip dwm-${VERSION}.tar
-	rm -rf dwm-${VERSION}
+	@echo creating dist tarball
+	@mkdir -p dwm-${VERSION}
+	@cp -R LICENSE Makefile README config.def.h config.mk \
+		dwm.1 ${SRC} dwm-${VERSION}
+	@tar -cf dwm-${VERSION}.tar dwm-${VERSION}
+	@gzip dwm-${VERSION}.tar
+	@rm -rf dwm-${VERSION}
 
 install: all
+	@echo installing executable file to ${DESTDIR}${PREFIX}/bin
 	@mkdir -p ${DESTDIR}${PREFIX}/bin
-	@cp -f ${BIN} ${DESTDIR}${PREFIX}/bin
-	@for i in ${BIN}; do \
-		chmod 755 ${DESTDIR}${PREFIX}/bin/`basename $$i`; \
-	done
-	@echo installed executable files to ${DESTDIR}${PREFIX}/bin
+	@cp -f dwm ${DESTDIR}${PREFIX}/bin
+	@chmod 755 ${DESTDIR}${PREFIX}/bin/dwm
+	@echo installing manual page to ${DESTDIR}${MANPREFIX}/man1
 	@mkdir -p ${DESTDIR}${MANPREFIX}/man1
-	@cp -f ${MAN1} ${DESTDIR}${MANPREFIX}/man1
-	@for i in ${MAN1}; do \
-		chmod 444 ${DESTDIR}${MANPREFIX}/man1/`basename $$i`; \
-	done
-	@echo installed manual pages to ${DESTDIR}${MANPREFIX}/man1
+	@sed "s/VERSION/${VERSION}/g" < dwm.1 > ${DESTDIR}${MANPREFIX}/man1/dwm.1
+	@chmod 644 ${DESTDIR}${MANPREFIX}/man1/dwm.1
 
 uninstall:
-	for i in ${BIN}; do \
-		rm -f ${DESTDIR}${PREFIX}/bin/`basename $$i`; \
-	done
-	for i in ${MAN1}; do \
-		rm -f ${DESTDIR}${MANPREFIX}/man1/`basename $$i`; \
-	done
+	@echo removing executable file from ${DESTDIR}${PREFIX}/bin
+	@rm -f ${DESTDIR}${PREFIX}/bin/dwm
+	@echo removing manual page from ${DESTDIR}${MANPREFIX}/man1
+	@rm -f ${DESTDIR}${MANPREFIX}/man1/dwm.1
+
+.PHONY: all options clean dist install uninstall