From 72578622951ace5ecbb5497256f3281ec79ae02b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Deuc=D0=B5?= <shurd@sasktel.net>
Date: Mon, 5 Feb 2024 03:33:23 -0500
Subject: [PATCH] Don't build the JS shell.

We don't need it (I hope), and it plays fast and loose with the config
options so it won't compile with some sets of them, making it hard
to troubleshoot stuff.
---
 3rdp/build/GNUmakefile            |  4 +++-
 3rdp/build/js-disable-shell.patch | 11 +++++++++++
 2 files changed, 14 insertions(+), 1 deletion(-)
 create mode 100644 3rdp/build/js-disable-shell.patch

diff --git a/3rdp/build/GNUmakefile b/3rdp/build/GNUmakefile
index b7b79c4c4c..6aaf19fb6b 100644
--- a/3rdp/build/GNUmakefile
+++ b/3rdp/build/GNUmakefile
@@ -58,7 +58,8 @@ $(JS_SRC): | $(3RDPSRCDIR)
 $(JS_IDIR): | $(3RDPODIR)
 	$(QUIET)$(IFNOTEXIST) mkdir $(JS_IDIR)
 
-$(JSLIB_BUILD): $(3RDP_ROOT)/dist/libmozjs.tgz $(3RDP_ROOT)/build/js_src_jsnativestack_cpp.patch $(3RDP_ROOT)/build/js-configure.patch $(3RDP_ROOT)/build/js-configure.in.patch $(3RDP_ROOT)/build/imacro-asm-fix.patch $(3RDP_ROOT)/build/js-volatile-outside-functions.patch $(3RDP_ROOT)/build/js-Wno-misleading-indentation.patch $(3RDP_ROOT)/build/js-allow-python3.patch | $(JS_SRC) $(JS_IDIR)
+#	$(QUIET)patch -b -p0 -d $(JS_SRC) < js-no-rwx-pages.patch
+$(JSLIB_BUILD): $(3RDP_ROOT)/dist/libmozjs.tgz $(3RDP_ROOT)/build/js_src_jsnativestack_cpp.patch $(3RDP_ROOT)/build/js-configure.patch $(3RDP_ROOT)/build/js-configure.in.patch $(3RDP_ROOT)/build/imacro-asm-fix.patch $(3RDP_ROOT)/build/js-volatile-outside-functions.patch $(3RDP_ROOT)/build/js-Wno-misleading-indentation.patch $(3RDP_ROOT)/build/js-allow-python3.patch $(3RDP_ROOT)/build/js-no-rwx-pages.patch $(3RDP_ROOT)/build/js-disable-shell.patch | $(JS_SRC) $(JS_IDIR)
 	@echo Creating $@ ...
 	$(QUIET)-rm -rf $(JS_SRC)/*
 	$(QUIET)tar -xzC $(JS_SRC) -f $(3RDPDISTDIR)/libmozjs.tgz
@@ -73,6 +74,7 @@ $(JSLIB_BUILD): $(3RDP_ROOT)/dist/libmozjs.tgz $(3RDP_ROOT)/build/js_src_jsnativ
 	$(QUIET)patch -b -p0 -d $(JS_SRC) < js-config.guess.patch
 	$(QUIET)patch -b -p0 -d $(JS_SRC) < js-makefile.patch
 	$(QUIET)patch -b -p0 -d $(JS_SRC) < js-disable-warnings.patch
+	$(QUIET)patch -b -p0 -d $(JS_SRC) < js-disable-shell.patch
 	-$(QUIET)cd $(JS_SRC)/js-1.8.5/js/src && autoconf-2.13
 	$(QUIET)cd $(JS_SRC)/js-1.8.5/js/src && env $(JS_CONFIGURE_ENV) ./configure $(JS_CONFIGURE_ARGS)
 ifdef VERBOSE
diff --git a/3rdp/build/js-disable-shell.patch b/3rdp/build/js-disable-shell.patch
new file mode 100644
index 0000000000..b80d7e5dfa
--- /dev/null
+++ b/3rdp/build/js-disable-shell.patch
@@ -0,0 +1,11 @@
+--- js-1.8.5/js/src/configure.orig	2024-02-05 01:55:51.182253000 -0500
++++ js-1.8.5/js/src/configure	2024-02-05 01:56:06.239782000 -0500
+@@ -14838,7 +14838,7 @@
+ 
+ JS_NATIVE_EDITLINE=
+ EDITLINE_LIBS=
+-JS_DISABLE_SHELL=
++JS_DISABLE_SHELL=1
+ 
+ case "$target" in
+ *-wince*|*-winmo*|*-mingw*|*-cygwin*|*-msvc*|*-mks*)
-- 
GitLab