Index: tools/build/distcc_hash
===================================================================
--- tools/build/distcc_hash	(revision 6716d7836e0b9ad9ef228067f20cf7f185f2532f)
+++ tools/build/distcc_hash	(revision 6716d7836e0b9ad9ef228067f20cf7f185f2532f)
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+tools=$( dirname "${BASH_SOURCE[0]}" )
+path=$(readlink -f ${tools}/../../$1)
+
+hash=$(openssl dgst -sha256 <<< $path)
+echo "${hash: -10}"
Index: tools/build/push2dist.sh
===================================================================
--- tools/build/push2dist.sh	(revision 6716d7836e0b9ad9ef228067f20cf7f185f2532f)
+++ tools/build/push2dist.sh	(revision 6716d7836e0b9ad9ef228067f20cf7f185f2532f)
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+hash="$1"
+valid=$(distcc -j 2> /dev/null)
+# if test "${valid}" != 0
+
+hosts_long=$(distcc --show-hosts 2> /dev/null)
+hosts="localhost"
+while read -r host; do
+	if [[ "${host}" =~ @?([A-Za-z0-9.\-]+)/.* ]]
+	then
+		hosts="${BASH_REMATCH[1]} ${hosts}"
+	else
+		>&2 echo "Could not parse host '${host}' (must use ssh hosts)"
+		exit 1
+	fi
+done <<< "${hosts_long}"
+
+# echo "Copying to machines : ${hosts} (hash=${hash})"
+
+files="../../../driver/cfa ../../../driver/cfa-cpp ../../../driver/cc1 ../../../driver/as $(find . -name '*.c*' | tr '\n' ' ')"
+# echo "Files ${files}"
+
+function push() {
+	ssh ${host} "mkdir -p ~/.cfadistcc/${hash}/"
+	rsync -a ${dV} ${files} ${host}:~/.cfadistcc/${hash}/.
+}
+
+for host in ${hosts}
+do
+	push &
+done
+
+wait
