diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a966eb0bd32b27f35ddc9680e269acf679a83466..69705b2782ad2d0587aae26c600e9aab9146e565 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -72,7 +72,6 @@ include: platform: 'x86' tagname: 'macOS' gnu_make: 'make' - no_javascript: 'yes' build_flags: 'CC="ccache cc" CXX="ccache c++" RELEASE=1' smoketest-jsexec-linux: diff --git a/3rdp/build/GNUmakefile b/3rdp/build/GNUmakefile index 67a7324547345ce108cd649cb1ee8c1b403e226b..36cd3a81df2644f156617f762e4c1a3daf6f5477 100644 --- a/3rdp/build/GNUmakefile +++ b/3rdp/build/GNUmakefile @@ -66,7 +66,7 @@ $(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 $(3RDP_ROOT)/build/js-no-rwx-pages.patch $(3RDP_ROOT)/build/js-disable-shell.patch $(3RDP_ROOT)/build/js-darwin-configure.patch $(3RDP_ROOT)/build/js-keep-ffi-cache.patch $(3RDP_ROOT)/build/js-config.guess-libffi.patch $(3RDP_ROOT)/build/js-support-mingw-cross.patch $(3RDP_ROOT)/build/js-int-main-conf.patch | $(JS_SRC) $(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 $(3RDP_ROOT)/build/js-no-rwx-pages.patch $(3RDP_ROOT)/build/js-disable-shell.patch $(3RDP_ROOT)/build/js-darwin-configure.patch $(3RDP_ROOT)/build/js-keep-ffi-cache.patch $(3RDP_ROOT)/build/js-config.guess-libffi.patch $(3RDP_ROOT)/build/js-support-mingw-cross.patch $(3RDP_ROOT)/build/js-int-main-conf.patch $(3RDP_ROOT)/build/js-include-headers.patch | $(JS_SRC) $(JS_IDIR) @echo Creating $@ ... $(QUIET)-rm -rf $(JS_SRC)/* $(QUIET)tar -xzpC $(JS_SRC) -f $(3RDPDISTDIR)/libmozjs.tgz @@ -88,6 +88,7 @@ $(JSLIB_BUILD): $(3RDP_ROOT)/dist/libmozjs.tgz $(3RDP_ROOT)/build/js_src_jsnativ $(QUIET)patch -b -p0 -d $(JS_SRC) < js-config.guess-libffi.patch $(QUIET)patch -b -p0 -d $(JS_SRC) < js-support-mingw-cross.patch $(QUIET)patch -b -p0 -d $(JS_SRC) < js-int-main-conf.patch + $(QUIET)patch -b -p0 -d $(JS_SRC) < js-include-headers.patch -$(QUIET)cd $(JS_SRC)/js-1.8.5/js/src && autoconf-2.13 -$(QUIET)cd $(JS_SRC)/js-1.8.5/js/src && autoconf2.13 $(QUIET)chmod 0755 $(JS_SRC)/js-1.8.5/js/src/build/hcc diff --git a/3rdp/build/js-include-headers.patch b/3rdp/build/js-include-headers.patch new file mode 100644 index 0000000000000000000000000000000000000000..f2446e7282a8b4fe673a30cbf06fed53590be48e --- /dev/null +++ b/3rdp/build/js-include-headers.patch @@ -0,0 +1,95 @@ +diff -u js-1.8.5/js/src/configure.in.orig js-1.8.5/js/src/configure.in +--- js-1.8.5/js/src/configure.in.orig 2024-09-24 22:14:12 ++++ js-1.8.5/js/src/configure.in 2024-09-24 22:17:58 +@@ -3939,6 +3939,7 @@ + AC_CACHE_VAL(ac_cv_va_copy,[ + AC_TRY_RUN([ + #include <stdarg.h> ++ #include <stdlib.h> + void f (int i, ...) { + va_list args1, args2; + va_start (args1, i); +@@ -3958,6 +3959,7 @@ + AC_CACHE_VAL(ac_cv___va_copy,[ + AC_TRY_RUN([ + #include <stdarg.h> ++ #include <stdlib.h> + void f (int i, ...) { + va_list args1, args2; + va_start (args1, i); +@@ -3977,6 +3979,7 @@ + AC_CACHE_VAL(ac_cv_va_val_copy,[ + AC_TRY_RUN([ + #include <stdarg.h> ++ #include <stdlib.h> + void f (int i, ...) { + va_list args1, args2; + va_start (args1, i); +@@ -5271,6 +5274,7 @@ + AC_MSG_CHECKING([for gcc -pipe support]) + if test -n "$GNU_CC" -a -n "$GNU_CXX" -a -n "$GNU_AS"; then + echo '#include <stdio.h>' > dummy-hello.c ++ echo '#include <stdlib.h>' >> dummy-hello.c + echo 'int main() { printf("Hello World\n"); exit(0); }' >> dummy-hello.c + ${CC} -S dummy-hello.c -o dummy-hello.s 2>&5 + cat dummy-hello.s 2> /dev/null | ${AS_BIN} -o dummy-hello.S - 2>&5 +diff -u js-1.8.5/js/src/configure.orig js-1.8.5/js/src/configure +--- js-1.8.5/js/src/configure.orig 2024-09-24 22:33:47.275117000 -0400 ++++ js-1.8.5/js/src/configure 2024-09-24 22:39:16.459457000 -0400 +@@ -8194,6 +8194,7 @@ + #line 8195 "configure" + #include "confdefs.h" + #include <ctype.h> ++#include <stdlib.h> + #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') + #define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) + #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +@@ -11045,6 +11046,8 @@ + else + cat > conftest.$ac_ext <<EOF + #line 11048 "configure" ++#include <stdlib.h> ++#include <string.h> + #include "confdefs.h" + + int main() +@@ -11638,6 +11641,7 @@ + #include "confdefs.h" + + #include <stdarg.h> ++ #include <stdlib.h> + void f (int i, ...) { + va_list args1, args2; + va_start (args1, i); +@@ -11679,6 +11683,7 @@ + #include "confdefs.h" + + #include <stdarg.h> ++ #include <stdlib.h> + void f (int i, ...) { + va_list args1, args2; + va_start (args1, i); +@@ -11720,6 +11725,7 @@ + #include "confdefs.h" + + #include <stdarg.h> ++ #include <stdlib.h> + void f (int i, ...) { + va_list args1, args2; + va_start (args1, i); +@@ -13592,6 +13598,7 @@ + #line 13593 "configure" + #include "confdefs.h" + #include <stdio.h> ++#include <stdlib.h> + int main() + { + FILE *f=fopen("conftestval", "w"); +@@ -14351,6 +14358,7 @@ + echo "configure:14352: checking for gcc -pipe support" >&5 + if test -n "$GNU_CC" -a -n "$GNU_CXX" -a -n "$GNU_AS"; then + echo '#include <stdio.h>' > dummy-hello.c ++ echo '#include <stdlib.h>' >> dummy-hello.c + echo 'int main() { printf("Hello World\n"); exit(0); }' >> dummy-hello.c + ${CC} -S dummy-hello.c -o dummy-hello.s 2>&5 + cat dummy-hello.s 2> /dev/null | ${AS_BIN} -o dummy-hello.S - 2>&5