chiark / gitweb /
Makefile: Zap Zsh's secret `~/.zcompdump' file if `.zshrc' is newer.
[profile] / Makefile
index 4df8c56e5d7561aaaeafc0978df862db06395004..79be3ea6f02d28e083c42de5294843273857a0e7 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -21,10 +21,11 @@ symlink-ok-p                 = $(shell \
 
 ## Silent rules machinery.
 V                       = 0
-v_tag                   = $(call v_tag_$V,$1,$2)
-v_tag_0                         = @printf "  %-8s %s\n" "$1" $(call quote,$@);
 V_AT                    = $(V_AT_$V)
 V_AT_0                  = @
+v_print                         = $(call v_print_$V,$1,$2)
+v_print_0               = printf "  %-8s %s\n" "$1" $(call quote,$2);
+v_tag                   = $(V_AT)$(call v_print_$V,$1,$@)
 
 ## Hack.
 relax                   =
@@ -33,7 +34,7 @@ relax                  =
 ### Configuration.
 
 ## Figure out where I am.
-HERE                    = $(shell pwd)
+HERE                   := $(shell pwd)
 
 ## Decide on how to fetch things from URLs.
 ifeq ($(shell (curl >/dev/null 2>&1 --version || [ $$? -eq 2 ]) && echo t),t)
@@ -46,8 +47,9 @@ endif
 EMACS                  := $(shell \
        emacs=nil; \
        for i in emacs24 emacs23 emacs22 emacs21 emacs; do \
-         if type >/dev/null 2>&1 $$i; then echo $$i; break; fi; \
-       done)
+         if type >/dev/null 2>&1 $$i; then emacs=$$i; break; fi; \
+       done; \
+       echo $$emacs)
 
 ## Whence to obtain externally hosted stuff.
 REPO                    = https://ftp.distorted.org.uk/u/mdw/profile
@@ -160,6 +162,11 @@ DOTLINKS           += .bashrc .inputrc
 .bash_logout_SRC        = shell-logout
 .zlogout_SRC            = shell-logout
 
+all::
+       $(V_AT)if [ $(HOME)/.zcompdump -ot dot/zshrc ]; then \
+         $(call v_print,ZAP,$(HOME)/.zcompdump)rm -f $(HOME)/.zcompdump; \
+       fi
+
 ## The Plan 9 `rc' shell.  This needs special hacking, because the Linux port
 ## and Plan 9 From User Space have incompatible syntax.
 DOTLINKS               += lib/profile
@@ -280,6 +287,8 @@ SCRIPTLINKS         += xinitcmd lock-screen xshutdown
 SCRIPTLINKS            += un-backslashify-selection
 SCRIPTLINKS            += xpra-start-xdummy
 SCRIPTLINKS            += play-rawk
+SCRIPTLINKS            += media-keys
+SCRIPTLINKS            += disorder-notify
 
 DOTCPP                 += .Xdefaults
 Xdefaults_DEFS          = -DEMACSWD=$(call mdw-conf,emacs-width,77)