summaryrefslogtreecommitdiff
path: root/extra/rust/watcher.sh
diff options
context:
space:
mode:
Diffstat (limited to 'extra/rust/watcher.sh')
-rwxr-xr-xextra/rust/watcher.sh25
1 files changed, 25 insertions, 0 deletions
diff --git a/extra/rust/watcher.sh b/extra/rust/watcher.sh
new file mode 100755
index 00000000..544c3712
--- /dev/null
+++ b/extra/rust/watcher.sh
@@ -0,0 +1,25 @@
+#!/bin/sh
+
+term() {
+ echo "--> Got SIGTERM"
+ echo "--> killing inotifywait with PID $inotifywait"
+ kill -TERM "$inotifywait"
+}
+
+srcdir="$1"
+
+trap term SIGTERM
+
+inotifywait -mr -e close_write --format %w%f $srcdir | while read -r FILE; do
+ case "$FILE" in
+ *consts.rs)
+ echo "--> patching $FILE"
+ sed -i '/pub type U1024/d;/pub type P1024/d' $FILE
+ echo "--> finished patching $FILE"
+ ;;
+ esac
+done &
+inotifywait=$(ps -ef | grep inotifywait | grep -v grep | tr -s ' ' | cut -d ' ' -f2)
+echo "--> waiting for inotifywait $inotifywait"
+wait "$inotifywait"
+echo "--> watcher terminated"