diff --git a/community/mongodb/0001-mozjs-platform-support-for-ARM.patch b/community/mongodb/0001-mozjs-platform-support-for-ARM.patch new file mode 100644 index 000000000..fbb21d949 --- /dev/null +++ b/community/mongodb/0001-mozjs-platform-support-for-ARM.patch @@ -0,0 +1,2062 @@ +From 4650273f5da1d94527cbe3017b1bcb6c7e612a2a Mon Sep 17 00:00:00 2001 +From: Kevin Mihelich +Date: Tue, 15 Dec 2015 17:34:20 -0700 +Subject: [PATCH 1/5] mozjs platform support for ARM + +--- + .../arm/linux/build/Unified_cpp_js_src0.cpp | 145 +++++++++++++++++++++ + .../arm/linux/build/Unified_cpp_js_src1.cpp | 145 +++++++++++++++++++++ + .../arm/linux/build/Unified_cpp_js_src10.cpp | 145 +++++++++++++++++++++ + .../arm/linux/build/Unified_cpp_js_src11.cpp | 145 +++++++++++++++++++++ + .../arm/linux/build/Unified_cpp_js_src12.cpp | 28 ++++ + .../arm/linux/build/Unified_cpp_js_src2.cpp | 145 +++++++++++++++++++++ + .../arm/linux/build/Unified_cpp_js_src3.cpp | 145 +++++++++++++++++++++ + .../arm/linux/build/Unified_cpp_js_src4.cpp | 145 +++++++++++++++++++++ + .../arm/linux/build/Unified_cpp_js_src5.cpp | 145 +++++++++++++++++++++ + .../arm/linux/build/Unified_cpp_js_src6.cpp | 145 +++++++++++++++++++++ + .../arm/linux/build/Unified_cpp_js_src7.cpp | 145 +++++++++++++++++++++ + .../arm/linux/build/Unified_cpp_js_src8.cpp | 145 +++++++++++++++++++++ + .../arm/linux/build/Unified_cpp_js_src9.cpp | 145 +++++++++++++++++++++ + .../platform/arm/linux/build/js-confdefs.h | 91 +++++++++++++ + .../platform/arm/linux/include/js-config.h | 59 +++++++++ + 15 files changed, 1918 insertions(+) + create mode 100644 src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src0.cpp + create mode 100644 src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src1.cpp + create mode 100644 src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src10.cpp + create mode 100644 src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src11.cpp + create mode 100644 src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src12.cpp + create mode 100644 src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src2.cpp + create mode 100644 src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src3.cpp + create mode 100644 src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src4.cpp + create mode 100644 src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src5.cpp + create mode 100644 src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src6.cpp + create mode 100644 src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src7.cpp + create mode 100644 src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src8.cpp + create mode 100644 src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src9.cpp + create mode 100644 src/third_party/mozjs-38/platform/arm/linux/build/js-confdefs.h + create mode 100644 src/third_party/mozjs-38/platform/arm/linux/include/js-config.h + +diff --git a/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src0.cpp b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src0.cpp +new file mode 100644 +index 0000000..a99a42b +--- /dev/null ++++ b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src0.cpp +@@ -0,0 +1,145 @@ ++#define MOZ_UNIFIED_BUILD ++#include "asmjs/AsmJSFrameIterator.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "asmjs/AsmJSFrameIterator.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "asmjs/AsmJSFrameIterator.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "asmjs/AsmJSLink.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "asmjs/AsmJSLink.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "asmjs/AsmJSLink.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "asmjs/AsmJSModule.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "asmjs/AsmJSModule.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "asmjs/AsmJSModule.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "asmjs/AsmJSSignalHandlers.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "asmjs/AsmJSSignalHandlers.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "asmjs/AsmJSSignalHandlers.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "asmjs/AsmJSValidate.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "asmjs/AsmJSValidate.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "asmjs/AsmJSValidate.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "builtin/AtomicsObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "builtin/AtomicsObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "builtin/AtomicsObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "builtin/Eval.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "builtin/Eval.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "builtin/Eval.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "builtin/Intl.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "builtin/Intl.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "builtin/Intl.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "builtin/MapObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "builtin/MapObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "builtin/MapObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "builtin/Object.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "builtin/Object.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "builtin/Object.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "builtin/Profilers.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "builtin/Profilers.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "builtin/Profilers.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "builtin/SIMD.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "builtin/SIMD.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "builtin/SIMD.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "builtin/SymbolObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "builtin/SymbolObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "builtin/SymbolObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "builtin/TestingFunctions.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "builtin/TestingFunctions.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "builtin/TestingFunctions.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "builtin/TypedObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "builtin/TypedObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "builtin/TypedObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "builtin/WeakSetObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "builtin/WeakSetObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "builtin/WeakSetObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif +\ No newline at end of file +diff --git a/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src1.cpp b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src1.cpp +new file mode 100644 +index 0000000..b4987b9 +--- /dev/null ++++ b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src1.cpp +@@ -0,0 +1,145 @@ ++#define MOZ_UNIFIED_BUILD ++#include "devtools/sharkctl.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "devtools/sharkctl.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "devtools/sharkctl.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "ds/LifoAlloc.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "ds/LifoAlloc.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "ds/LifoAlloc.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "frontend/BytecodeCompiler.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "frontend/BytecodeCompiler.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "frontend/BytecodeCompiler.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "frontend/BytecodeEmitter.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "frontend/BytecodeEmitter.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "frontend/BytecodeEmitter.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "frontend/FoldConstants.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "frontend/FoldConstants.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "frontend/FoldConstants.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "frontend/NameFunctions.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "frontend/NameFunctions.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "frontend/NameFunctions.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "frontend/ParseMaps.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "frontend/ParseMaps.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "frontend/ParseMaps.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "frontend/ParseNode.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "frontend/ParseNode.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "frontend/ParseNode.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "frontend/TokenStream.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "frontend/TokenStream.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "frontend/TokenStream.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "gc/Barrier.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "gc/Barrier.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "gc/Barrier.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "gc/GCTrace.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "gc/GCTrace.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "gc/GCTrace.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "gc/Iteration.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "gc/Iteration.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "gc/Iteration.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "gc/Marking.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "gc/Marking.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "gc/Marking.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "gc/Memory.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "gc/Memory.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "gc/Memory.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "gc/Nursery.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "gc/Nursery.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "gc/Nursery.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "gc/RootMarking.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "gc/RootMarking.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "gc/RootMarking.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif +\ No newline at end of file +diff --git a/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src10.cpp b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src10.cpp +new file mode 100644 +index 0000000..18a9d68 +--- /dev/null ++++ b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src10.cpp +@@ -0,0 +1,145 @@ ++#define MOZ_UNIFIED_BUILD ++#include "vm/HelperThreads.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/HelperThreads.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/HelperThreads.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/Id.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/Id.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/Id.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/Interpreter.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/Interpreter.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/Interpreter.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/JSONParser.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/JSONParser.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/JSONParser.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/MemoryMetrics.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/MemoryMetrics.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/MemoryMetrics.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/Monitor.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/Monitor.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/Monitor.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/NativeObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/NativeObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/NativeObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/ObjectGroup.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/ObjectGroup.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/ObjectGroup.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/PIC.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/PIC.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/PIC.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/PosixNSPR.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/PosixNSPR.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/PosixNSPR.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/Probes.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/Probes.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/Probes.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/ProxyObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/ProxyObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/ProxyObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/RegExpObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/RegExpObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/RegExpObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/RegExpStatics.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/RegExpStatics.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/RegExpStatics.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/Runtime.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/Runtime.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/Runtime.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/SPSProfiler.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/SPSProfiler.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/SPSProfiler.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif +\ No newline at end of file +diff --git a/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src11.cpp b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src11.cpp +new file mode 100644 +index 0000000..d0c2794 +--- /dev/null ++++ b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src11.cpp +@@ -0,0 +1,145 @@ ++#define MOZ_UNIFIED_BUILD ++#include "vm/SavedStacks.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/SavedStacks.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/SavedStacks.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/ScopeObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/ScopeObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/ScopeObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/SelfHosting.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/SelfHosting.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/SelfHosting.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/Shape.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/Shape.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/Shape.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/SharedArrayObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/SharedArrayObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/SharedArrayObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/SharedTypedArrayObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/SharedTypedArrayObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/SharedTypedArrayObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/Stack.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/Stack.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/Stack.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/String.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/String.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/String.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/StringBuffer.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/StringBuffer.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/StringBuffer.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/StructuredClone.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/StructuredClone.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/StructuredClone.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/Symbol.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/Symbol.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/Symbol.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/TypeInference.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/TypeInference.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/TypeInference.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/TypedArrayObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/TypedArrayObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/TypedArrayObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/UbiNode.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/UbiNode.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/UbiNode.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/UnboxedObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/UnboxedObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/UnboxedObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/Unicode.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/Unicode.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/Unicode.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif +\ No newline at end of file +diff --git a/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src12.cpp b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src12.cpp +new file mode 100644 +index 0000000..e976e6b +--- /dev/null ++++ b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src12.cpp +@@ -0,0 +1,28 @@ ++#define MOZ_UNIFIED_BUILD ++#include "vm/Value.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/Value.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/Value.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/WeakMapPtr.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/WeakMapPtr.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/WeakMapPtr.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/Xdr.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/Xdr.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/Xdr.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif +\ No newline at end of file +diff --git a/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src2.cpp b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src2.cpp +new file mode 100644 +index 0000000..49a7d4b +--- /dev/null ++++ b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src2.cpp +@@ -0,0 +1,145 @@ ++#define MOZ_UNIFIED_BUILD ++#include "gc/Statistics.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "gc/Statistics.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "gc/Statistics.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "gc/StoreBuffer.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "gc/StoreBuffer.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "gc/StoreBuffer.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "gc/Tracer.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "gc/Tracer.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "gc/Tracer.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "gc/Verifier.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "gc/Verifier.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "gc/Verifier.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "gc/Zone.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "gc/Zone.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "gc/Zone.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "irregexp/NativeRegExpMacroAssembler.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "irregexp/NativeRegExpMacroAssembler.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "irregexp/NativeRegExpMacroAssembler.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "irregexp/RegExpAST.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "irregexp/RegExpAST.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "irregexp/RegExpAST.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "irregexp/RegExpEngine.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "irregexp/RegExpEngine.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "irregexp/RegExpEngine.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "irregexp/RegExpInterpreter.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "irregexp/RegExpInterpreter.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "irregexp/RegExpInterpreter.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "irregexp/RegExpMacroAssembler.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "irregexp/RegExpMacroAssembler.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "irregexp/RegExpMacroAssembler.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "irregexp/RegExpParser.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "irregexp/RegExpParser.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "irregexp/RegExpParser.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "irregexp/RegExpStack.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "irregexp/RegExpStack.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "irregexp/RegExpStack.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/AliasAnalysis.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/AliasAnalysis.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/AliasAnalysis.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/BacktrackingAllocator.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/BacktrackingAllocator.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/BacktrackingAllocator.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/Bailouts.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/Bailouts.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/Bailouts.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/BaselineBailouts.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/BaselineBailouts.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/BaselineBailouts.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif +\ No newline at end of file +diff --git a/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src3.cpp b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src3.cpp +new file mode 100644 +index 0000000..ef7b514 +--- /dev/null ++++ b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src3.cpp +@@ -0,0 +1,145 @@ ++#define MOZ_UNIFIED_BUILD ++#include "jit/BaselineCompiler.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/BaselineCompiler.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/BaselineCompiler.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/BaselineDebugModeOSR.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/BaselineDebugModeOSR.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/BaselineDebugModeOSR.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/BaselineFrame.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/BaselineFrame.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/BaselineFrame.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/BaselineFrameInfo.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/BaselineFrameInfo.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/BaselineFrameInfo.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/BaselineIC.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/BaselineIC.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/BaselineIC.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/BaselineInspector.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/BaselineInspector.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/BaselineInspector.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/BaselineJIT.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/BaselineJIT.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/BaselineJIT.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/BitSet.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/BitSet.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/BitSet.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/BytecodeAnalysis.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/BytecodeAnalysis.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/BytecodeAnalysis.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/C1Spewer.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/C1Spewer.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/C1Spewer.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/CodeGenerator.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/CodeGenerator.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/CodeGenerator.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/CompileWrappers.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/CompileWrappers.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/CompileWrappers.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/Disassembler.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/Disassembler.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/Disassembler.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/EdgeCaseAnalysis.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/EdgeCaseAnalysis.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/EdgeCaseAnalysis.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/EffectiveAddressAnalysis.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/EffectiveAddressAnalysis.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/EffectiveAddressAnalysis.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/ExecutableAllocator.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/ExecutableAllocator.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/ExecutableAllocator.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif +\ No newline at end of file +diff --git a/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src4.cpp b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src4.cpp +new file mode 100644 +index 0000000..6c18e01 +--- /dev/null ++++ b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src4.cpp +@@ -0,0 +1,145 @@ ++#define MOZ_UNIFIED_BUILD ++#include "jit/Ion.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/Ion.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/Ion.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/IonAnalysis.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/IonAnalysis.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/IonAnalysis.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/IonBuilder.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/IonBuilder.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/IonBuilder.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/IonCaches.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/IonCaches.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/IonCaches.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/IonOptimizationLevels.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/IonOptimizationLevels.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/IonOptimizationLevels.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/JSONSpewer.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/JSONSpewer.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/JSONSpewer.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/JitFrames.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/JitFrames.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/JitFrames.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/JitOptions.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/JitOptions.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/JitOptions.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/JitSpewer.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/JitSpewer.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/JitSpewer.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/JitcodeMap.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/JitcodeMap.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/JitcodeMap.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/LICM.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/LICM.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/LICM.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/LIR.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/LIR.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/LIR.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/LinearScan.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/LinearScan.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/LinearScan.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/LiveRangeAllocator.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/LiveRangeAllocator.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/LiveRangeAllocator.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/LoopUnroller.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/LoopUnroller.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/LoopUnroller.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/Lowering.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/Lowering.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/Lowering.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif +\ No newline at end of file +diff --git a/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src5.cpp b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src5.cpp +new file mode 100644 +index 0000000..9f53c22 +--- /dev/null ++++ b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src5.cpp +@@ -0,0 +1,145 @@ ++#define MOZ_UNIFIED_BUILD ++#include "jit/MCallOptimize.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/MCallOptimize.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/MCallOptimize.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/MIR.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/MIR.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/MIR.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/MIRGraph.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/MIRGraph.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/MIRGraph.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/MacroAssembler.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/MacroAssembler.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/MacroAssembler.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/MoveResolver.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/MoveResolver.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/MoveResolver.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/OptimizationTracking.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/OptimizationTracking.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/OptimizationTracking.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/PerfSpewer.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/PerfSpewer.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/PerfSpewer.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/RangeAnalysis.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/RangeAnalysis.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/RangeAnalysis.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/Recover.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/Recover.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/Recover.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/RegisterAllocator.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/RegisterAllocator.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/RegisterAllocator.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/RematerializedFrame.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/RematerializedFrame.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/RematerializedFrame.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/Safepoints.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/Safepoints.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/Safepoints.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/ScalarReplacement.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/ScalarReplacement.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/ScalarReplacement.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/Sink.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/Sink.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/Sink.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/Snapshots.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/Snapshots.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/Snapshots.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/StupidAllocator.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/StupidAllocator.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/StupidAllocator.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif +\ No newline at end of file +diff --git a/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src6.cpp b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src6.cpp +new file mode 100644 +index 0000000..93f0de7 +--- /dev/null ++++ b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src6.cpp +@@ -0,0 +1,145 @@ ++#define MOZ_UNIFIED_BUILD ++#include "jit/TypePolicy.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/TypePolicy.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/TypePolicy.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/TypedObjectPrediction.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/TypedObjectPrediction.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/TypedObjectPrediction.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/VMFunctions.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/VMFunctions.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/VMFunctions.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/ValueNumbering.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/ValueNumbering.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/ValueNumbering.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/arm/Architecture-arm.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/arm/Architecture-arm.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/arm/Architecture-arm.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/arm/Assembler-arm.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/arm/Assembler-arm.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/arm/Assembler-arm.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/arm/Bailouts-arm.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/arm/Bailouts-arm.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/arm/Bailouts-arm.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/arm/BaselineCompiler-arm.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/arm/BaselineCompiler-arm.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/arm/BaselineCompiler-arm.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/arm/BaselineIC-arm.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/arm/BaselineIC-arm.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/arm/BaselineIC-arm.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/arm/CodeGenerator-arm.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/arm/CodeGenerator-arm.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/arm/CodeGenerator-arm.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/arm/Lowering-arm.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/arm/Lowering-arm.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/arm/Lowering-arm.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/arm/MacroAssembler-arm.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/arm/MacroAssembler-arm.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/arm/MacroAssembler-arm.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/arm/MoveEmitter-arm.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/arm/MoveEmitter-arm.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/arm/MoveEmitter-arm.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/arm/Trampoline-arm.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/arm/Trampoline-arm.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/arm/Trampoline-arm.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/shared/BaselineCompiler-shared.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/shared/BaselineCompiler-shared.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/shared/BaselineCompiler-shared.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jit/shared/CodeGenerator-shared.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/shared/CodeGenerator-shared.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/shared/CodeGenerator-shared.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif +\ No newline at end of file +diff --git a/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src7.cpp b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src7.cpp +new file mode 100644 +index 0000000..7608496 +--- /dev/null ++++ b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src7.cpp +@@ -0,0 +1,145 @@ ++#define MOZ_UNIFIED_BUILD ++#include "jit/shared/Lowering-shared.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jit/shared/Lowering-shared.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jit/shared/Lowering-shared.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsalloc.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsalloc.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsalloc.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsapi.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsapi.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsapi.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsbool.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsbool.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsbool.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jscntxt.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jscntxt.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jscntxt.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jscompartment.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jscompartment.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jscompartment.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsdate.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsdate.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsdate.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsdtoa.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsdtoa.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsdtoa.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsexn.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsexn.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsexn.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsfriendapi.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsfriendapi.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsfriendapi.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsfun.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsfun.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsfun.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsgc.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsgc.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsgc.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsiter.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsiter.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsiter.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsnativestack.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsnativestack.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsnativestack.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsnum.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsnum.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsnum.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsobj.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsobj.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsobj.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif +\ No newline at end of file +diff --git a/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src8.cpp b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src8.cpp +new file mode 100644 +index 0000000..b1a326f +--- /dev/null ++++ b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src8.cpp +@@ -0,0 +1,145 @@ ++#define MOZ_UNIFIED_BUILD ++#include "json.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "json.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "json.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsopcode.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsopcode.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsopcode.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsprf.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsprf.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsprf.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jspropertytree.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jspropertytree.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jspropertytree.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsreflect.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsreflect.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsreflect.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsscript.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsscript.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsscript.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsstr.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsstr.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsstr.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jswatchpoint.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jswatchpoint.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jswatchpoint.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "jsweakmap.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "jsweakmap.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "jsweakmap.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "perf/jsperf.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "perf/jsperf.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "perf/jsperf.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "prmjtime.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "prmjtime.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "prmjtime.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "proxy/BaseProxyHandler.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "proxy/BaseProxyHandler.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "proxy/BaseProxyHandler.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "proxy/CrossCompartmentWrapper.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "proxy/CrossCompartmentWrapper.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "proxy/CrossCompartmentWrapper.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "proxy/DeadObjectProxy.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "proxy/DeadObjectProxy.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "proxy/DeadObjectProxy.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "proxy/DirectProxyHandler.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "proxy/DirectProxyHandler.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "proxy/DirectProxyHandler.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "proxy/Proxy.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "proxy/Proxy.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "proxy/Proxy.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif +\ No newline at end of file +diff --git a/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src9.cpp b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src9.cpp +new file mode 100644 +index 0000000..a2ca6f2 +--- /dev/null ++++ b/src/third_party/mozjs-38/platform/arm/linux/build/Unified_cpp_js_src9.cpp +@@ -0,0 +1,145 @@ ++#define MOZ_UNIFIED_BUILD ++#include "proxy/ScriptedDirectProxyHandler.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "proxy/ScriptedDirectProxyHandler.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "proxy/ScriptedDirectProxyHandler.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "proxy/ScriptedIndirectProxyHandler.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "proxy/ScriptedIndirectProxyHandler.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "proxy/ScriptedIndirectProxyHandler.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "proxy/SecurityWrapper.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "proxy/SecurityWrapper.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "proxy/SecurityWrapper.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "proxy/Wrapper.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "proxy/Wrapper.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "proxy/Wrapper.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/ArgumentsObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/ArgumentsObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/ArgumentsObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/ArrayBufferObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/ArrayBufferObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/ArrayBufferObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/CallNonGenericMethod.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/CallNonGenericMethod.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/CallNonGenericMethod.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/CharacterEncoding.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/CharacterEncoding.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/CharacterEncoding.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/Compression.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/Compression.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/Compression.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/DateTime.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/DateTime.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/DateTime.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/Debugger.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/Debugger.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/Debugger.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/DebuggerMemory.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/DebuggerMemory.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/DebuggerMemory.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/ErrorObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/ErrorObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/ErrorObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/ForOfIterator.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/ForOfIterator.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/ForOfIterator.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/GeneratorObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/GeneratorObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/GeneratorObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif ++#include "vm/GlobalObject.cpp" ++#ifdef PL_ARENA_CONST_ALIGN_MASK ++#error "vm/GlobalObject.cpp uses PL_ARENA_CONST_ALIGN_MASK, so it cannot be built in unified mode." ++#undef PL_ARENA_CONST_ALIGN_MASK ++#endif ++#ifdef INITGUID ++#error "vm/GlobalObject.cpp defines INITGUID, so it cannot be built in unified mode." ++#undef INITGUID ++#endif +\ No newline at end of file +diff --git a/src/third_party/mozjs-38/platform/arm/linux/build/js-confdefs.h b/src/third_party/mozjs-38/platform/arm/linux/build/js-confdefs.h +new file mode 100644 +index 0000000..e709ed2 +--- /dev/null ++++ b/src/third_party/mozjs-38/platform/arm/linux/build/js-confdefs.h +@@ -0,0 +1,91 @@ ++/* List of defines generated by configure. Included with preprocessor flag, ++ * -include, to avoid long list of -D defines on the compile command-line. ++ * Do not edit. ++ */ ++ ++#ifndef js_confdefs_h ++#define js_confdefs_h ++ ++#define BUILD_ARM_NEON 1 ++#define CPP_THROW_NEW throw() ++#define D_INO d_ino ++#define EDITLINE 1 ++#define HAVE_ACOSH 1 ++#define HAVE_ARM_NEON 1 ++#define HAVE_ARM_SIMD 1 ++#define HAVE_ASINH 1 ++#define HAVE_ATANH 1 ++#define HAVE_CBRT 1 ++#define HAVE_CPP_AMBIGUITY_RESOLVING_USING 1 ++#define HAVE_CPP_DYNAMIC_CAST_TO_VOID_PTR 1 ++#define HAVE_DIRENT_H 1 ++#define HAVE_DLOPEN 1 ++#define HAVE_ENDIAN_H 1 ++#define HAVE_EXPM1 1 ++#define HAVE_GETC_UNLOCKED 1 ++#define HAVE_GETOPT_H 1 ++#define HAVE_GMTIME_R 1 ++#define HAVE_GNU_LIBC_VERSION_H 1 ++#define HAVE_I18N_LC_MESSAGES 1 ++#define HAVE_LANGINFO_CODESET 1 ++#define HAVE_LIBM 1 ++#define HAVE_LINUX_QUOTA_H 1 ++#define HAVE_LOCALECONV 1 ++#define HAVE_LOCALECONV 1 ++#define HAVE_LOCALTIME_R 1 ++#define HAVE_LOG1P 1 ++#define HAVE_LOG2 1 ++#define HAVE_MALLOC_H 1 ++#define HAVE_MALLOC_USABLE_SIZE 1 ++#define HAVE_MBRTOWC 1 ++#define HAVE_MEMORY_H 1 ++#define HAVE_NL_TYPES_H 1 ++#define HAVE_POSIX_FADVISE 1 ++#define HAVE_POSIX_FALLOCATE 1 ++#define HAVE_RES_NINIT 1 ++#define HAVE_SETLOCALE 1 ++#define HAVE_SSIZE_T 1 ++#define HAVE_SYS_BITYPES_H 1 ++#define HAVE_SYS_CDEFS_H 1 ++#define HAVE_SYS_MOUNT_H 1 ++#define HAVE_SYS_QUOTA_H 1 ++#define HAVE_SYS_STATFS_H 1 ++#define HAVE_SYS_STATVFS_H 1 ++#define HAVE_SYS_VFS_H 1 ++#define HAVE_THREAD_TLS_KEYWORD 1 ++#define HAVE_TM_ZONE_TM_GMTOFF 1 ++#define HAVE_TRUNC 1 ++#define HAVE_UNISTD_H 1 ++#define HAVE_VA_COPY 1 ++#define HAVE_VISIBILITY_ATTRIBUTE 1 ++#define HAVE_VISIBILITY_HIDDEN_ATTRIBUTE 1 ++#define HAVE_WCRTOMB 1 ++#define HAVE___CXA_DEMANGLE 1 ++#define JS_CODEGEN_ARM 1 ++#define JS_CPU_ARM 1 ++#define JS_DEFAULT_JITREPORT_GRANULARITY 3 ++#define JS_HAVE_ENDIAN_H 1 ++#define JS_NUNBOX32 1 ++#define JS_POSIX_NSPR 1 ++#define JS_STANDALONE 1 ++#define MALLOC_H ++#define MOZILLA_UAVERSION "38.0" ++#define MOZILLA_VERSION "38.4.0" ++#define MOZILLA_VERSION_U 38.4.0 ++#define MOZJS_MAJOR_VERSION 38 ++#define MOZJS_MINOR_VERSION 4 ++#define MOZ_DEBUG_SYMBOLS 1 ++#define MOZ_DLL_SUFFIX ".so" ++#define MOZ_UPDATE_CHANNEL default ++#define NS_ATTR_MALLOC __attribute__((malloc)) ++#define NS_WARN_UNUSED_RESULT __attribute__((warn_unused_result)) ++#define RELEASE_BUILD 1 ++#define STDC_HEADERS 1 ++#define VA_COPY va_copy ++#define XP_UNIX 1 ++#define X_DISPLAY_MISSING 1 ++#define _REENTRANT 1 ++ ++#include "js/RequiredDefines.h" ++ ++#endif /* js_confdefs_h */ +diff --git a/src/third_party/mozjs-38/platform/arm/linux/include/js-config.h b/src/third_party/mozjs-38/platform/arm/linux/include/js-config.h +new file mode 100644 +index 0000000..9ab842f +--- /dev/null ++++ b/src/third_party/mozjs-38/platform/arm/linux/include/js-config.h +@@ -0,0 +1,59 @@ ++/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- ++ * vim: set ts=8 sw=4 et tw=78: ++ * ++ * This Source Code Form is subject to the terms of the Mozilla Public ++ * License, v. 2.0. If a copy of the MPL was not distributed with this ++ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ ++ ++#ifndef js_config_h ++#define js_config_h ++ ++/* Definitions set at build time that affect SpiderMonkey's public API. ++ This header file is generated by the SpiderMonkey configure script, ++ and installed along with jsapi.h. */ ++ ++/* Define to 1 if SpiderMonkey is in debug mode. */ ++/* #undef JS_DEBUG */ ++ ++/* Define to 1 if SpiderMonkey should not use struct types in debug builds. */ ++/* #undef JS_NO_JSVAL_JSID_STRUCT_TYPES */ ++ ++/* Define to 1 if SpiderMonkey should support multi-threaded clients. */ ++/* #undef JS_THREADSAFE */ ++ ++/* Define to 1 if SpiderMonkey should include ctypes support. */ ++/* #undef JS_HAS_CTYPES */ ++ ++/* Define to 1 if SpiderMonkey should support the ability to perform ++ entirely too much GC. */ ++/* #undef JS_GC_ZEAL */ ++ ++/* Define to 1 if SpiderMonkey should use small chunks. */ ++/* #undef JS_GC_SMALL_CHUNK_SIZE */ ++ ++/* Define to 1 to perform extra assertions and heap poisoning. */ ++/* #undef JS_CRASH_DIAGNOSTICS */ ++ ++/* Define to 1 if the header is present and ++ useable. See jscpucfg.h. */ ++#define JS_HAVE_ENDIAN_H 1 ++ ++/* Define to 1 if the header is present and ++ useable. See jscpucfg.h. */ ++/* #undef JS_HAVE_MACHINE_ENDIAN_H */ ++ ++/* Define to 1 if the header is present and ++ useable. See jscpucfg.h. */ ++/* #undef JS_HAVE_SYS_ISA_DEFS_H */ ++ ++/* Define to 1 if SpiderMonkey is in NUNBOX32 mode. */ ++#define JS_NUNBOX32 1 ++ ++/* Define to 1 if SpiderMonkey is in PUNBOX64 mode. */ ++/* #undef JS_PUNBOX64 */ ++ ++/* MOZILLA JSAPI version number components */ ++#define MOZJS_MAJOR_VERSION 38 ++#define MOZJS_MINOR_VERSION 4 ++ ++#endif /* js_config_h */ +-- +2.6.4 + diff --git a/community/mongodb/0002-issue-693-convert-sys_futex-to-it-s-6-arg-form.patch b/community/mongodb/0002-issue-693-convert-sys_futex-to-it-s-6-arg-form.patch new file mode 100644 index 000000000..abbf9d33c --- /dev/null +++ b/community/mongodb/0002-issue-693-convert-sys_futex-to-it-s-6-arg-form.patch @@ -0,0 +1,34 @@ +From b54faf431153535ddfa047f3ed45780b7cac5781 Mon Sep 17 00:00:00 2001 +From: Aliaksey Kandratsenka +Date: Sat, 13 Jun 2015 21:28:28 -0700 +Subject: [PATCH 2/5] issue-693: convert sys_futex to it's 6-arg form + +Because sys_futex actually takes 6 args in more recent kernels (even +though last two args are unused for FUTEX_{WAKE,WAIT}. + +This is patch contributed by user spotrh. +--- + src/third_party/gperftools-2.2/src/base/linux_syscall_support.h | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/src/third_party/gperftools-2.2/src/base/linux_syscall_support.h b/src/third_party/gperftools-2.2/src/base/linux_syscall_support.h +index 9b6c35d..c8f8f59 100644 +--- a/src/third_party/gperftools-2.2/src/base/linux_syscall_support.h ++++ b/src/third_party/gperftools-2.2/src/base/linux_syscall_support.h +@@ -2094,9 +2094,11 @@ struct kernel_stat { + int, c, long, a) + LSS_INLINE _syscall2(int, fstat, int, f, + struct kernel_stat*, b) +- LSS_INLINE _syscall4(int, futex, int*, a, ++ LSS_INLINE _syscall6(int, futex, int*, a, + int, o, int, v, +- struct kernel_timespec*, t) ++ struct kernel_timespec*, t, ++ int*, a2, ++ int, v3) + #ifdef __NR_getdents64 + LSS_INLINE _syscall3(int, getdents64, int, f, + struct kernel_dirent64*, d, int, c) +-- +2.6.4 + diff --git a/community/mongodb/0003-issue-693-enable-futex-usage-on-arm.patch b/community/mongodb/0003-issue-693-enable-futex-usage-on-arm.patch new file mode 100644 index 000000000..9d658f82c --- /dev/null +++ b/community/mongodb/0003-issue-693-enable-futex-usage-on-arm.patch @@ -0,0 +1,68 @@ +From 00c5a75b1dd59f27c18fa04ad911b56b9c6ac17e Mon Sep 17 00:00:00 2001 +From: Aliaksey Kandratsenka +Date: Sat, 13 Jun 2015 21:35:06 -0700 +Subject: [PATCH 3/5] issue-693: enable futex usage on arm + +This patch was contributed by user spotrh. +--- + .../gperftools-2.2/src/base/linux_syscall_support.h | 1 - + .../gperftools-2.2/src/base/spinlock_linux-inl.h | 15 ++++++--------- + 2 files changed, 6 insertions(+), 10 deletions(-) + +diff --git a/src/third_party/gperftools-2.2/src/base/linux_syscall_support.h b/src/third_party/gperftools-2.2/src/base/linux_syscall_support.h +index c8f8f59..56b8fac 100644 +--- a/src/third_party/gperftools-2.2/src/base/linux_syscall_support.h ++++ b/src/third_party/gperftools-2.2/src/base/linux_syscall_support.h +@@ -83,7 +83,6 @@ + * sys_fcntl( + * sys_fstat( + * sys_futex( +- * sys_futex1( + * sys_getcpu( + * sys_getdents64( + * sys_getppid( +diff --git a/src/third_party/gperftools-2.2/src/base/spinlock_linux-inl.h b/src/third_party/gperftools-2.2/src/base/spinlock_linux-inl.h +index 86d4d04..aadf62a 100644 +--- a/src/third_party/gperftools-2.2/src/base/spinlock_linux-inl.h ++++ b/src/third_party/gperftools-2.2/src/base/spinlock_linux-inl.h +@@ -51,15 +51,10 @@ static struct InitModule { + int x = 0; + // futexes are ints, so we can use them only when + // that's the same size as the lockword_ in SpinLock. +-#ifdef __arm__ +- // ARM linux doesn't support sys_futex1(void*, int, int, struct timespec*); +- have_futex = 0; +-#else + have_futex = (sizeof (Atomic32) == sizeof (int) && +- sys_futex(&x, FUTEX_WAKE, 1, 0) >= 0); +-#endif ++ sys_futex(&x, FUTEX_WAKE, 1, NULL, NULL, 0) >= 0); + if (have_futex && +- sys_futex(&x, FUTEX_WAKE | futex_private_flag, 1, 0) < 0) { ++ sys_futex(&x, FUTEX_WAKE | futex_private_flag, 1, NULL, NULL, 0) < 0) { + futex_private_flag = 0; + } + } +@@ -85,7 +80,8 @@ void SpinLockDelay(volatile Atomic32 *w, int32 value, int loop) { + tm.tv_nsec *= 16; // increase the delay; we expect explicit wakeups + sys_futex(reinterpret_cast(const_cast(w)), + FUTEX_WAIT | futex_private_flag, +- value, reinterpret_cast(&tm)); ++ value, reinterpret_cast(&tm), ++ NULL, 0); + } else { + nanosleep(&tm, NULL); + } +@@ -96,7 +92,8 @@ void SpinLockDelay(volatile Atomic32 *w, int32 value, int loop) { + void SpinLockWake(volatile Atomic32 *w, bool all) { + if (have_futex) { + sys_futex(reinterpret_cast(const_cast(w)), +- FUTEX_WAKE | futex_private_flag, all? INT_MAX : 1, 0); ++ FUTEX_WAKE | futex_private_flag, all? INT_MAX : 1, ++ NULL, NULL, 0); + } + } + +-- +2.6.4 + diff --git a/community/mongodb/0004-use-gnu-11-instead-of-c-11.patch b/community/mongodb/0004-use-gnu-11-instead-of-c-11.patch new file mode 100644 index 000000000..2b7e779aa --- /dev/null +++ b/community/mongodb/0004-use-gnu-11-instead-of-c-11.patch @@ -0,0 +1,26 @@ +From 4ed0f5103bd25f5bdaca5b11bb69e87cd9746f9f Mon Sep 17 00:00:00 2001 +From: Kevin Mihelich +Date: Sun, 27 Dec 2015 09:13:09 -0700 +Subject: [PATCH 4/5] use gnu++11 instead of c++11 + +--- + src/third_party/gperftools-2.2/SConscript | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/src/third_party/gperftools-2.2/SConscript b/src/third_party/gperftools-2.2/SConscript +index 2948eaa..f6d5c9e 100644 +--- a/src/third_party/gperftools-2.2/SConscript ++++ b/src/third_party/gperftools-2.2/SConscript +@@ -102,6 +102,9 @@ def removeIfPresent(lst, item): + for to_remove in ['-Werror', "-Wsign-compare","-Wall"]: + removeIfPresent(env['CCFLAGS'], to_remove) + ++removeIfPresent(env['CXXFLAGS'], "-std=c++11") ++env.Append( CXXFLAGS=["-std=gnu++11"] ) ++ + env.Library( + target='tcmalloc_minimal', + source=files, +-- +2.6.4 + diff --git a/community/mongodb/0005-fix-options_parser-segfault.patch b/community/mongodb/0005-fix-options_parser-segfault.patch new file mode 100644 index 000000000..6d4c2a107 --- /dev/null +++ b/community/mongodb/0005-fix-options_parser-segfault.patch @@ -0,0 +1,25 @@ +From b552e3b3fa87e3f374d603e065785734c5b36e55 Mon Sep 17 00:00:00 2001 +From: Kevin Mihelich +Date: Mon, 28 Dec 2015 13:39:06 -0700 +Subject: [PATCH 5/5] fix options_parser segfault + +--- + src/mongo/util/options_parser/option_section.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/mongo/util/options_parser/option_section.cpp b/src/mongo/util/options_parser/option_section.cpp +index b499025..d9f5046 100644 +--- a/src/mongo/util/options_parser/option_section.cpp ++++ b/src/mongo/util/options_parser/option_section.cpp +@@ -484,7 +484,7 @@ Status OptionSection::getDefaults(std::map* values) const { + std::list::const_iterator oditerator; + for (oditerator = _options.begin(); oditerator != _options.end(); oditerator++) { + if (!oditerator->_default.isEmpty()) { +- (*values)[oditerator->_dottedName] = oditerator->_default; ++ (*((values->insert(make_pair(oditerator->_dottedName, std::map::mapped_type()))).first)).second = oditerator->_default; + } + } + +-- +2.6.4 + diff --git a/community/mongodb/PKGBUILD b/community/mongodb/PKGBUILD index 8c4eda97f..ec116b6ff 100644 --- a/community/mongodb/PKGBUILD +++ b/community/mongodb/PKGBUILD @@ -7,7 +7,7 @@ # ALARM: Kevin Mihelich # - build -j2 (RAM constraints) -# - use system v8 (older 3.16 package) +# - patches pkgname=mongodb pkgver=3.2.0 @@ -16,7 +16,7 @@ pkgdesc='A high-performance, open source, schema-free document-oriented database arch=('i686' 'x86_64') url='http://www.mongodb.org' license=('AGPL3') -depends=('pcre' 'snappy' 'openssl' 'libsasl' 'boost-libs' 'yaml-cpp' 'v8-3.16') +depends=('pcre' 'snappy' 'openssl' 'libsasl' 'boost-libs' 'yaml-cpp') [[ "$CARCH" == "x86_64" ]] && depends+=('wiredtiger') makedepends=('scons' 'readline' 'ncurses' 'libpcap' 'boost') checkdepends=('python2-pymongo' 'python2-yaml') @@ -26,11 +26,21 @@ backup=('etc/mongodb.conf') install=mongodb.install source=("http://downloads.mongodb.org/src/mongodb-src-r${pkgver}.tar.gz" 'boost160.patch' - 'mongodb.conf' 'mongodb.service') + 'mongodb.conf' 'mongodb.service' + '0001-mozjs-platform-support-for-ARM.patch' + '0002-issue-693-convert-sys_futex-to-it-s-6-arg-form.patch' + '0003-issue-693-enable-futex-usage-on-arm.patch' + '0004-use-gnu-11-instead-of-c-11.patch' + '0005-fix-options_parser-segfault.patch') sha512sums=('4b321b582f5ec2613b869b003a02494c8a9e3b772b1f13898417b1e831c204468309a0e1785acd3b85c8a663cae91e55e44f53f8b74bd3a516b1e1471f606882' '385c82875174caae433a3b381eb10f98a6fed0c8943788ddefff1de80a898e480bdbbf094a7783285cf2ae11ce3fc6878e57d58183d05be2f0837b206aaa4da6' '05dead727d3ea5fe8af1a3c3888693f6b3e2b8cb7f197a5d793352e10d2c524e96c9a5c55ad2e88c1114643a9612ec0b26a2574b48a5260a9b51ec8941461f1c' - '177251404b2e818ae2b546fe8b13cb76e348c99e85c7bef22a04b0f07b600fd515a309ede50214f4198594388a6d2b31f46e945b9dae84aabb4dfa13b1123bb9') + '177251404b2e818ae2b546fe8b13cb76e348c99e85c7bef22a04b0f07b600fd515a309ede50214f4198594388a6d2b31f46e945b9dae84aabb4dfa13b1123bb9' + '9877ef788fd1170337ef6da267d8fb624f74c59eb98533753d4db9ff841f562e81cbb3ee36431ea11cee4f9354876426bc24edaa68dd43ef2b1f5e5111395696' + '12c56405bed46f8d607ea46dfce07d567dfb4cfc16c06b8a3fc07c41d72d377aeba16a5bbc6a53962b24cc5524500b28ff736b59fe7e558ca638ffa2c0fd4a71' + 'c6e50c4b1e59614309ef989bbff102394fd9d424c0f4af16917194662b744fc7a5a05e6b04dcdc56632dc6260d46d286bad7ed0b360cad79ee4c15f4d0e61035' + '787729236ab1dba3c302211a5220995f413fed220eb05e327d2f41612a9ae3f460ea0c141deeb2e887a022b4ddfc8fe1ac5ccbd1cee82fd68a6fb608b1a727f8' + '4a16659dae5154aad09df16bc18f0b103231d402c99d01d67069f7e4b497814241d0891f96f123448d0a60f49c6cbbb7156f38621cf4797ba0c52ab978ca154c') MAKEFLAGS="-j2" @@ -58,6 +68,11 @@ fi prepare() { cd mongodb-src-r${pkgver} patch -Np1 -i ../boost160.patch + patch -p1 -i ../0001-mozjs-platform-support-for-ARM.patch + patch -p1 -i ../0002-issue-693-convert-sys_futex-to-it-s-6-arg-form.patch + patch -p1 -i ../0003-issue-693-enable-futex-usage-on-arm.patch + patch -p1 -i ../0004-use-gnu-11-instead-of-c-11.patch + patch -p1 -i ../0005-fix-options_parser-segfault.patch } build() {