Stop patching vendored jerboa-shell

ober

a983ee4436b6aa5d2d650cedc2bff6f5c26cff5d

diff --git a/Makefile b/Makefile
index 129f550..487f738 100644
--- a/Makefile
+++ b/Makefile
@@ -296,9 +296,8 @@ vendor-deps:
 	    echo "  cloning $$repo"; \
 	    sh support/fetch-locked-dependency.sh "$$url" "$$rev" "$$dest"; \
 		  fi; \
-		done
+	done
 	@sh scripts/patch-jerboa-std-compat.sh "$(abspath $(JERBOA)/lib)"
-	@sh scripts/patch-jerboa-shell-compat.sh "$(CURDIR)"
 	@scripts/patch-jerboa-aws-compat.sh "$(CURDIR)"
 	@echo "=== Transpiling vendored jerboa-qt ==="
 	@$(MAKE) -C "$(CQT_ROOT)" JERBUILD="$(abspath $(VENDORED_JERBUILD))" transpile
@@ -330,7 +329,6 @@ check-pcre2-system-deps:
 	  rm -f "$$tmp.c" "$$tmp"
 
 deps: check-pcre2-system-deps vendor-deps ensure-vendor-jerboa-tools
-	sh scripts/patch-jerboa-shell-compat.sh "$(CURDIR)"
 	$(MAKE) -C $(JSH_ROOT) JERBUILD="$(VENDORED_JERBUILD)" $(JSH_MAKE_ARGS) stage-jsqlite
 	$(MAKE) -C $(JSH_ROOT) JERBUILD="$(VENDORED_JERBUILD)" SCHEME="$(SCHEME)" $(JSH_MAKE_ARGS) jerboa
 	$(MAKE) -C $(JSH_ROOT) JERBUILD="$(VENDORED_JERBUILD)" $(JSH_MAKE_ARGS) gen-embed </dev/null
@@ -1457,7 +1455,6 @@ linux-tui-local: vendor-deps
 	echo '(import (chezscheme)) (compile-imported-libraries #t) (generate-wpo-files #t) (import (jerboa core)) (import (jerboa prelude))' \
 	  | $(MUSL_SCHEME_CLEAN) --libdirs $(MUSL_JERBOA)/lib -q
 	$(MUSL_SCHEME_CLEAN) --libdirs $(MUSL_JERBOA)/lib --script $(MUSL_JERBOA)/jerbuild.ss src/ lib/
-	sh scripts/patch-jerboa-shell-compat.sh "$(CURDIR)"
 	rm -rf $(MUSL_JSQLITE_STAGE)/jsqlite
 	mkdir -p $(MUSL_JSQLITE_STAGE)/jsqlite
 	cp -a $(MUSL_DEPS)/jerboa-sqlite/src/jsqlite/. $(MUSL_JSQLITE_STAGE)/jsqlite/
@@ -1602,7 +1599,6 @@ linux-qt-local: vendor-deps
 	echo '(import (chezscheme)) (compile-imported-libraries #t) (generate-wpo-files #t) (import (jerboa core)) (import (jerboa prelude))' \
 	  | $(MUSL_SCHEME_CLEAN) --libdirs $(MUSL_JERBOA)/lib -q
 	$(MUSL_SCHEME_CLEAN) --libdirs $(MUSL_JERBOA)/lib --script $(MUSL_JERBOA)/jerbuild.ss src/ lib/
-	sh scripts/patch-jerboa-shell-compat.sh "$(CURDIR)"
 	rm -rf $(MUSL_JSQLITE_STAGE)/jsqlite
 	mkdir -p $(MUSL_JSQLITE_STAGE)/jsqlite
 	cp -a $(MUSL_DEPS)/jerboa-sqlite/src/jsqlite/. $(MUSL_JSQLITE_STAGE)/jsqlite/
diff --git a/scripts/patch-jerboa-shell-compat.sh b/scripts/patch-jerboa-shell-compat.sh
deleted file mode 100644
index 28ece25..0000000
--- a/scripts/patch-jerboa-shell-compat.sh
+++ /dev/null
@@ -1,118 +0,0 @@
-#!/bin/sh
-set -eu
-
-root="${1:-$(cd "$(dirname "$0")/.." && pwd)}"
-jsh="$root/vendor/jerboa-shell"
-
-patch_util() {
-  file="$1"
-  if [ ! -f "$file" ] || grep -q "(def (validate-file-path" "$file"; then
-    return 0
-  fi
-
-  tmp="$file.tmp.$$"
-  awk '
-    /;; Search PATH for a regular file/ && !done {
-      print ";; Validate a file path before passing it to C-level file operations."
-      print "(def (validate-file-path path who)"
-      print "  (let loop ((i 0))"
-      print "    (when (< i (string-length path))"
-      print "      (when (char=? (string-ref path i) #\\nul)"
-      print "        (error who (string-append path \": path contains null byte\")))"
-      print "      (loop (+ i 1))))"
-      print "  path)"
-      print ""
-      done=1
-    }
-    { print }
-  ' "$file" > "$tmp"
-  mv "$tmp" "$file"
-}
-
-patch_redirect() {
-  file="$1"
-  if [ ! -f "$file" ] || grep -q "validate-file-path filename" "$file"; then
-    return 0
-  fi
-
-  tmp="$file.tmp.$$"
-  awk '
-    {
-      print
-      if ($0 == "(def (redirect-fd-to-file! fd filename flags mode)") {
-        getline
-        if ($0 == "  (let ((raw-fd (ffi-open-raw filename flags mode)))") {
-          print "  (validate-file-path filename (quote redirect))"
-        }
-        print
-      }
-    }
-  ' "$file" > "$tmp"
-  mv "$tmp" "$file"
-}
-
-patch_main() {
-  file="$1"
-  if [ ! -f "$file" ] || grep -q "validate-file-path (car args)" "$file"; then
-    return 0
-  fi
-
-  tmp="$file.tmp.$$"
-  sed 's/\[filename (car args)\]/[filename (validate-file-path (car args) (quote source))]/' "$file" > "$tmp"
-  mv "$tmp" "$file"
-}
-
-patch_awk_regex_cache_order() {
-  file="$jsh/vendor/jerboa-awk/lib/jerboa-awk/runtime.sls"
-  [ -f "$file" ] || return 0
-
-  if awk '
-    /define \(make-regex-cache/ { make_line = NR }
-    /define \*regex-cache\*/ { cache_line = NR }
-    END { exit !(make_line && cache_line && make_line < cache_line) }
-  ' "$file"; then
-    return 0
-  fi
-
-  tmp="$file.tmp.$$"
-  awk '
-    $0 == "  (define *regex-cache* (make-regex-cache))" {
-      cache_define = $0
-      next
-    }
-    cache_define != "" && $0 == "" {
-      next
-    }
-    {
-      print
-      if ($0 == "  (define (make-regex-cache)") {
-        in_make = 1
-      } else if (in_make && $0 == "    (make-hashtable equal-hash equal?))") {
-        print ""
-        print cache_define
-        cache_define = ""
-        in_make = 0
-      }
-    }
-    END {
-      if (cache_define != "") {
-        print cache_define
-      }
-    }
-  ' "$file" > "$tmp"
-  mv "$tmp" "$file"
-}
-
-patch_util "$jsh/util.ss"
-patch_util "$jsh/jerboa-shell/util.ss"
-patch_util "$jsh/jsh-src/jsh/util.ss"
-
-patch_redirect "$jsh/redirect.ss"
-patch_redirect "$jsh/jerboa-shell/redirect.ss"
-patch_redirect "$jsh/jsh-src/jsh/redirect.ss"
-
-patch_main "$jsh/main.ss"
-patch_main "$jsh/jerboa-shell/main.ss"
-patch_main "$jsh/jsh-src/jsh/main.ss"
-
-patch_awk_regex_cache_order
diff --git a/support/stage-for-jerbuild.sh b/support/stage-for-jerbuild.sh
index 9c8d24b..e6f68e3 100755
--- a/support/stage-for-jerbuild.sh
+++ b/support/stage-for-jerbuild.sh
@@ -43,7 +43,6 @@ for required in \
 done
 
 echo "==> Applying compatibility patches"
-sh scripts/patch-jerboa-shell-compat.sh "$REPO_ROOT"
 scripts/patch-jerboa-aws-compat.sh "$REPO_ROOT"
 sh scripts/patch-jerboa-qt-compat.sh "$REPO_ROOT"