STOWERS := $(wildcard stowers/*) STOW_TARGET ?= $(HOME) .PHONY = stowers/all $(STOWERS) stowers/all: $(STOWERS) @echo Installed all stowers/uninstall/all: $(foreach stower,$(STOWERS),$(patsubst stowers/%,stowers/uninstall/%,$(stower))) @echo Uninstalled all stowers/uninstall/%: $(STOW) @echo Unstowing $* $(STOW) --delete --dir stowers/ --target $(STOW_TARGET) --dotfiles $* stowers/%: $(STOW) @echo Stowing $* test -d $@ && $(STOW) --stow --dir stowers/ --target $(STOW_TARGET) --dotfiles $*