X-Git-Url: https://git.xinqibao.xyz/slstatus.git/blobdiff_plain/09c3ffe33bb128c184f40ad80860ce98867e5f9b..HEAD:/Makefile diff --git a/Makefile b/Makefile index 0a41a93..2f93b87 100644 --- a/Makefile +++ b/Makefile @@ -1,30 +1,68 @@ -# See LICENSE file for copyright and license details. +# See LICENSE file for copyright and license details +# slstatus - suckless status monitor +.POSIX: include config.mk -NAME=slstatus +REQ = util +COM =\ + components/battery\ + components/cpu\ + components/datetime\ + components/disk\ + components/entropy\ + components/hostname\ + components/ip\ + components/kernel_release\ + components/keyboard_indicators\ + components/keymap\ + components/load_avg\ + components/netspeeds\ + components/num_files\ + components/ram\ + components/run_command\ + components/separator\ + components/swap\ + components/temperature\ + components/uptime\ + components/user\ + components/volume\ + components/wifi -all: ${NAME} +all: slstatus -${NAME}: config.h config.mk - ${CC} ${CFLAGS} -o $@ ${NAME}.c ${LDFLAGS} +$(COM:=.o): config.mk $(REQ:=.h) +slstatus.o: slstatus.c slstatus.h arg.h config.h config.mk $(REQ:=.h) + +.c.o: + $(CC) -o $@ -c $(CPPFLAGS) $(CFLAGS) $< config.h: cp config.def.h $@ +slstatus: slstatus.o $(COM:=.o) $(REQ:=.o) + $(CC) -o $@ $(LDFLAGS) $(COM:=.o) $(REQ:=.o) slstatus.o $(LDLIBS) + clean: - rm -f ${NAME} + rm -f slstatus slstatus.o $(COM:=.o) $(REQ:=.o) + +dist: + rm -rf "slstatus-$(VERSION)" + mkdir -p "slstatus-$(VERSION)/components" + cp -R LICENSE Makefile README config.mk config.def.h \ + arg.h slstatus.c $(COM:=.c) $(REQ:=.c) $(REQ:=.h) \ + slstatus.1 "slstatus-$(VERSION)" + tar -cf - "slstatus-$(VERSION)" | gzip -c > "slstatus-$(VERSION).tar.gz" + rm -rf "slstatus-$(VERSION)" install: all - mkdir -p ${DESTDIR}${PREFIX}/bin - cp -f ${NAME} ${DESTDIR}${PREFIX}/bin - chmod 755 ${DESTDIR}${PREFIX}/bin/${NAME} - mkdir -p ${DESTDIR}${MANPREFIX}/man1 - cp -f ${NAME}.1 ${DESTDIR}${MANPREFIX}/man1 - chmod 644 ${DESTDIR}${MANPREFIX}/man1/${NAME}.1 + mkdir -p "$(DESTDIR)$(PREFIX)/bin" + cp -f slstatus "$(DESTDIR)$(PREFIX)/bin" + chmod 755 "$(DESTDIR)$(PREFIX)/bin/slstatus" + mkdir -p "$(DESTDIR)$(MANPREFIX)/man1" + cp -f slstatus.1 "$(DESTDIR)$(MANPREFIX)/man1" + chmod 644 "$(DESTDIR)$(MANPREFIX)/man1/slstatus.1" uninstall: - rm -f ${DESTDIR}${PREFIX}/bin/${NAME} - rm -f ${DESTDIR}${MANPREFIX}/man1/${NAME}.1 - -.PHONY: all clean install uninstall + rm -f "$(DESTDIR)$(PREFIX)/bin/slstatus" + rm -f "$(DESTDIR)$(MANPREFIX)/man1/slstatus.1"