chiark / gitweb /
local.mk: Introduce new target for testing.
[firewall] / local.mk
1 ### Local configuration makefile.
2
3 MAIN_M4_SOURCES         += local.m4
4
5 HOSTS                   += metalzone
6 HOSTS                   += vampire
7 THISHOST                 = $(shell hostname)
8
9 ROOT                     = sudo
10
11 ## Testing.
12 check: $(THISHOST).sh
13         firewall_script=./$(THISHOST).sh && \
14         firewall_failsafe=/etc/init.d/firewall && \
15         export firewall_script firewall_failsafe && \
16         [ -x $$firewall_failsafe ] && \
17         $(ROOT) ./$$firewall_script
18
19 ## Installation.
20 install: all check
21         for i in $(HOSTS); do \
22           $(ROOT) scp $$i.sh $$i:/etc/init.d/firewall; \
23           if [ "$(SCRIPTS)" ]; then \
24             for j in $(SCRIPTS); do \
25               $(ROOT) ssh $$i <$$j " \
26                   cd /usr/local/sbin && \
27                   rm -f $$j.new && \
28                   cat >$$j.new && \
29                   chmod 755 $$j.new && \
30                   mv $$j.new $$j"; \
31             done; \
32           fi; \
33         done