Makefile (3233B)
1 # 2 # dotless (pdpmake / POSIX make) 3 # 4 # cowmonk <cowmonk@based.pt> 5 # 6 7 .POSIX: 8 SHELL = /bin/sh 9 10 USR ?= $(whoami) 11 HOME_DIR = /home/$(USR)/ 12 13 include config.mk 14 15 .PHONY: all build pull extract install clean distclean 16 17 all: build 18 19 $(SRCDIR)/$(NAME_dwm).tar.gz: 20 @[ -d "$(SRCDIR)" ] || mkdir -p "$(SRCDIR)" 21 @echo "pulling ${NAME_dwm}" 22 @curl -fLo "${SRCDIR}/${NAME_dwm}.tar.gz" "${URL_dwm}" 23 24 $(SRCDIR)/$(NAME_st).tar.gz: 25 @echo "pulling ${NAME_st}" 26 @curl -fLo "${SRCDIR}/${NAME_st}.tar.gz" "${URL_st}" 27 28 $(SRCDIR)/$(NAME_dmenu).tar.gz: 29 @echo "pulling ${NAME_dmenu}" 30 @curl -fLo "${SRCDIR}/${NAME_dmenu}.tar.gz" "${URL_dmenu}" 31 32 $(SRCDIR)/$(NAME_slstatus).tar.gz: 33 @echo "pulling ${NAME_slstatus}" 34 @curl -fLo "${SRCDIR}/${NAME_slstatus}.tar.gz" "${URL_slstatus}" 35 36 $(EXTDIR)/$(NAME_dwm): $(SRCDIR)/$(NAME_dwm).tar.gz 37 @[ -d "$(EXTDIR)" ] || mkdir -p "$(EXTDIR)" 38 @echo "extracting $(NAME_dwm).tar.gz..." 39 @tar -xzf "$(SRCDIR)/$(NAME_dwm).tar.gz" -C "$(EXTDIR)" 40 41 $(EXTDIR)/$(NAME_st): $(SRCDIR)/$(NAME_st).tar.gz 42 @echo "extracting $(NAME_st).tar.gz..." 43 @tar -xzf "$(SRCDIR)/$(NAME_st).tar.gz" -C "$(EXTDIR)" 44 45 $(EXTDIR)/$(NAME_dmenu): $(SRCDIR)/$(NAME_dmenu).tar.gz 46 @echo "extracting $(NAME_dmenu).tar.gz..." 47 @tar -xzf "$(SRCDIR)/$(NAME_dmenu).tar.gz" -C "$(EXTDIR)" 48 49 $(EXTDIR)/$(NAME_slstatus): $(SRCDIR)/$(NAME_slstatus).tar.gz 50 @echo "extracting $(NAME_slstatus).tar.gz..." 51 @tar -xzf "$(SRCDIR)/$(NAME_slstatus).tar.gz" -C "$(EXTDIR)" 52 53 pull: $(SRCDIR)/$(NAME_dwm).tar.gz $(SRCDIR)/$(NAME_st).tar.gz $(SRCDIR)/$(NAME_dmenu).tar.gz $(SRCDIR)/$(NAME_slstatus).tar.gz 54 @printf "\033[1mpulled all sources!\n\033[0m" 55 56 extract: pull $(EXTDIR)/$(NAME_dwm) $(EXTDIR)/$(NAME_st) $(EXTDIR)/$(NAME_dmenu) $(EXTDIR)/$(NAME_slstatus) 57 @printf "\033[1mextracted all sources!\n\033[0m" 58 59 .user: 60 @sh -c "echo $(whoami) > .user" 61 62 build: extract .user 63 @if [ ${NOUSR} -eq 1 ] && [ ${BSD} -eq 0 ]; then \ 64 find $(EXTDIR) -name config.mk -exec sed -i 's|/usr/|/|g' {} +; \ 65 elif [] 66 fi 67 @(cd $(EXTDIR)/$(NAME_dwm) && CC="$(CC)" $(MAKE)) 68 @(cd $(EXTDIR)/$(NAME_st) && CC="$(CC)" $(MAKE)) 69 @(cd $(EXTDIR)/$(NAME_dmenu) && CC="$(CC)" $(MAKE)) 70 @(cd $(EXTDIR)/$(NAME_slstatus) && CC="$(CC)" $(MAKE)) 71 72 install: build 73 #@(cd $(EXTDIR)/$(NAME_dwm) && CC="$(CC)" PREFIX="$(PREFIX)" $(MAKE) install) 74 #@(cd $(EXTDIR)/$(NAME_st) && CC="$(CC)" PREFIX="$(PREFIX)" $(MAKE) install) 75 #@(cd $(EXTDIR)/$(NAME_dmenu) && CC="$(CC)" PREFIX="$(PREFIX)" $(MAKE) install) 76 #@(cd $(EXTDIR)/$(NAME_slstatus) && CC="$(CC)" PREFIX="$(PREFIX)" $(MAKE) install) 77 @if [ ${YASH} -eq 1 ]; then \ 78 #install -d -m 0755 "$(HOME_DIR)/.config/yash"; \ 79 #cp -av $(TOP)/files/config/yash/* $(HOME_DIR)/.config/yash/; \ 80 #chown -R $(USR):$(USR) $(HOME_DIR)/.config/; 81 echo $(USR); \ 82 echo $(HOME_DIR); \ 83 fi 84 85 clean: build 86 @(cd $(EXTDIR)/$(NAME_dwm) && CC="$(CC)" $(MAKE) clean) 87 @(cd $(EXTDIR)/$(NAME_st) && CC="$(CC)" $(MAKE) clean) 88 @(cd $(EXTDIR)/$(NAME_dmenu) && CC="$(CC)" $(MAKE) clean) 89 @(cd $(EXTDIR)/$(NAME_slstatus) && CC="$(CC)" $(MAKE) clean) 90 91 distclean: clean 92 @echo "cleaning $(SRCDIR)" 93 @rm -r "$(SRCDIR)" 94 @echo "cleaning $(EXTDIR)" 95 @rm -r "$(EXTDIR)" 96 @echo "removing .user" 97 @rm .user