## The local machine doesn't want the complicated SSH stuff.
THISHOST = $(shell hostname)
+OTHERHOSTS = $(filter-out $(THISHOST), $(HOSTS))
## Testing.
check: $(THISHOST).sh
$(ROOT) ./$(THISHOST).sh replace
## Installation on a remote host.
-install/%: %.sh
+$(addprefix install/, $(OTHERHOSTS)): install/%: %.sh
if [ "x$(SCRIPTS)" != x ]; then \
for i in $(SCRIPTS); do \
$(ROOT) scp $$i root@$*:$(sbindir)/$$i.new && \
done; \
fi
$(ROOT) scp $*.sh root@$*:$(FIREWALL).new
- $(ROOT) ssh root@$* $(FIREWALL) remote-prepare
- $(ROOT) ssh root@$* $(FIREWALL) remote-commit
+ $(ROOT) ssh root@$* $(FIREWALL).new remote-prepare
+ $(ROOT) ssh root@$* $(FIREWALL).new remote-commit
$(ROOT) ssh root@$* rm -f $(FIREWALL).new
## General installation target.
install: all install/$(THISHOST) $(addprefix install/,$(HOSTS))
-.PHONY: install install/$(THISHOST)
+.PHONY: install $(addprefix install/,$(HOSTS))
###----- That's all, folks --------------------------------------------------