| 1 | MASTER = root@ibanez |
| 2 | |
| 3 | all:: |
| 4 | |
| 5 | TARGETS += update-slaves |
| 6 | update-slaves: |
| 7 | scp $(MASTER):/usr/local/sbin/update-slaves $@.new && mv $@.new $@ |
| 8 | |
| 9 | CLEAN += transcript |
| 10 | transcript: |
| 11 | ssh $(MASTER) update-slaves -n >$@.new && mv $@.new $@ |
| 12 | |
| 13 | TARGETS += files |
| 14 | files: transcript |
| 15 | while read op opts src dest; do \ |
| 16 | case $$op in install) echo "$$src" ;; esac; \ |
| 17 | done <$< | sort -u >$@.new && mv $@.new $@ |
| 18 | |
| 19 | TARGETS += files.mk |
| 20 | files.mk: files |
| 21 | sed -e '1i\' \ |
| 22 | -e 'FILES = \\' \ |
| 23 | -e '$$ { s/^/ /p; d; }' \ |
| 24 | -e 's/^.*$$/ & \\/' \ |
| 25 | <$< >$@.new && mv $@.new $@ |
| 26 | #' |
| 27 | include files.mk |
| 28 | |
| 29 | FSTREE = $(addprefix fs, $(FILES)) |
| 30 | $(FSTREE): fs/%: files.mk |
| 31 | mkdir -p $(dir $@) |
| 32 | rsync -a $(MASTER):/$* $@.new && mv $@.new $@ |
| 33 | |
| 34 | all:: $(FSTREE) |
| 35 | clean::; rm -rf fs |
| 36 | |
| 37 | CLEAN += $(TARGETS) |
| 38 | all:: $(TARGETS) |
| 39 | clean::; rm -f $(CLEAN) |