aboutsummaryrefslogtreecommitdiff
path: root/databases
diff options
context:
space:
mode:
authorKurt Jaeger <pi@FreeBSD.org>2019-02-05 22:30:58 +0000
committerKurt Jaeger <pi@FreeBSD.org>2019-02-05 22:30:58 +0000
commit8e653d3111c90a6cb0bb332d293328448e06675c (patch)
tree300e9b5b4f6b1288f957cf672c77a8e4ba17432e /databases
parent493bfdc1b4cffd240196fcc580acec1bdba58a61 (diff)
downloadports-8e653d3111c90a6cb0bb332d293328448e06675c.tar.gz
ports-8e653d3111c90a6cb0bb332d293328448e06675c.zip
Notes
Diffstat (limited to 'databases')
-rw-r--r--databases/mongodb36/Makefile8
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_IntelRDFPMathLib20U1_LIBRARY_src_bid__functions.h20
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_SConscript18
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src0.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src1.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src10.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src11.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src12.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src13.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src14.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src15.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src16.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src17.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src18.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src19.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src2.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src20.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src21.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src22.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src23.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src24.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src25.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src26.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src27.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src28.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src29.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src3.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src30.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src31.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src32.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src33.cpp41
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src4.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src5.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src6.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src7.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src8.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src9.cpp59
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_js-confdefs.h91
-rw-r--r--databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_include_js-config.h62
39 files changed, 2185 insertions, 2 deletions
diff --git a/databases/mongodb36/Makefile b/databases/mongodb36/Makefile
index 0a3cabc76ede..d7579b3deffb 100644
--- a/databases/mongodb36/Makefile
+++ b/databases/mongodb36/Makefile
@@ -17,8 +17,8 @@ COMMENT= Distributed document-oriented "NoSQL" database
LICENSE= AGPLv3 APACHE20
LICENSE_COMB= multi
-ONLY_FOR_ARCHS= amd64
-ONLY_FOR_ARCHS_REASON= "Only supported on amd64 (i386 deprecated in v3)"
+ONLY_FOR_ARCHS= amd64 aarch64
+ONLY_FOR_ARCHS_REASON= "Only supported on amd64 and aarch64 (i386 deprecated in v3)"
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cheetah>=2.4.4:devel/py-cheetah@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}typing>=3.6.2:devel/py-typing@${PY_FLAVOR} \
@@ -63,6 +63,10 @@ SUB_LIST+= LEGACY_LIMITS="@comment " MODERN_LIMITS=""
SUB_LIST+= LEGACY_LIMITS="" MODERN_LIMITS="@comment "
.endif
+.if ${ARCH} == aarch64
+EXTRA_PATCHES= ${FILESDIR}/aarch64
+.endif
+
ALL_TARGET= core
PORTSCOUT= limitw:1,even
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_IntelRDFPMathLib20U1_LIBRARY_src_bid__functions.h b/databases/mongodb36/files/aarch64/patch-src_third__party_IntelRDFPMathLib20U1_LIBRARY_src_bid__functions.h
new file mode 100644
index 000000000000..c0bbc7a702e4
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_IntelRDFPMathLib20U1_LIBRARY_src_bid__functions.h
@@ -0,0 +1,20 @@
+--- src/third_party/IntelRDFPMathLib20U1/LIBRARY/src/bid_functions.h.orig 2018-12-13 15:47:17 UTC
++++ src/third_party/IntelRDFPMathLib20U1/LIBRARY/src/bid_functions.h
+@@ -42,7 +42,7 @@
+ #include <ctype.h>
+
+ // Fix system header issue on Sun solaris and define required type by ourselves
+-#if !defined(_WCHAR_T) && !defined(_WCHAR_T_DEFINED) && !defined(__QNX__)
++#if !defined(_WCHAR_T) && !defined(_WCHAR_T_DEFINED) && !defined(__QNX__) && !defined(_WCHAR_T_DECLARED)
+ typedef int wchar_t;
+ #endif
+
+@@ -150,7 +150,7 @@ typedef BID_UINT128 _Quad;
+ ///////////////////////////////////////////////////////
+ // This section may move to fenv_support.h
+
+-#if !defined(__FENV_H_INCLUDED) && !defined (_FENV_H) && !defined(_FENV_INCLUDED) /* Otherwise we already defined fexcept_t type */
++#if !defined(__FENV_H_INCLUDED) && !defined (_FENV_H) && !defined(_FENV_INCLUDED) && !defined (_FENV_H_) /* Otherwise we already defined fexcept_t type */
+ #if defined(__ECL) || defined(__ECC) /* Intel(R) Itanium(R) architecture */
+ /* Default 64-bit Floating Point Status Register */
+ #if defined(__linux__)
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_SConscript b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_SConscript
new file mode 100644
index 000000000000..5a19c5616a34
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_SConscript
@@ -0,0 +1,18 @@
+--- src/third_party/mozjs-45/SConscript.orig 2019-01-18 20:35:17 UTC
++++ src/third_party/mozjs-45/SConscript
+@@ -97,7 +97,6 @@ env.Prepend(CPPPATH=[
+ sources = [
+ "extract/js/src/builtin/RegExp.cpp",
+ "extract/js/src/frontend/Parser.cpp",
+- "extract/js/src/jit/ProcessExecutableMemory.cpp",
+ "extract/js/src/jsarray.cpp",
+ "extract/js/src/jsatom.cpp",
+ "extract/js/src/jsmath.cpp",
+@@ -112,6 +111,7 @@ sources = [
+
+ if env['TARGET_ARCH'] == 'x86_64' and not env.TargetOSIs('solaris'):
+ sources.extend([
++ "extract/js/src/jit/ProcessExecutableMemory.cpp",
+ "extract/js/src/jit/x86-shared/Disassembler-x86-shared.cpp",
+ ])
+
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src0.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src0.cpp
new file mode 100644
index 000000000000..7447e35fc0e6
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src0.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src0.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src0.cpp
+@@ -0,0 +1,55 @@
++#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 "asmjs/WasmGenerator.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "asmjs/WasmGenerator.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/WasmGenerator.cpp defines INITGUID, so it cannot be built in unified mode."
++#undef INITGUID
++#endif
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src1.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src1.cpp
new file mode 100644
index 000000000000..3bc2df08b0be
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src1.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src1.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src1.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#include "asmjs/WasmIonCompile.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "asmjs/WasmIonCompile.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/WasmIonCompile.cpp defines INITGUID, so it cannot be built in unified mode."
++#undef INITGUID
++#endif
++#include "asmjs/WasmStubs.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "asmjs/WasmStubs.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/WasmStubs.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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src10.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src10.cpp
new file mode 100644
index 000000000000..9dd333c2b0a5
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src10.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src10.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src10.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src11.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src11.cpp
new file mode 100644
index 000000000000..b9474a34514b
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src11.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src11.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src11.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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/EagerSimdUnbox.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "jit/EagerSimdUnbox.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/EagerSimdUnbox.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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src12.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src12.cpp
new file mode 100644
index 000000000000..963d167804d9
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src12.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src12.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src12.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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
++#include "jit/InstructionReordering.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "jit/InstructionReordering.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/InstructionReordering.cpp defines INITGUID, so it cannot be built in unified mode."
++#undef INITGUID
++#endif
++#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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src13.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src13.cpp
new file mode 100644
index 000000000000..b65b58bcc20a
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src13.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src13.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src13.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src14.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src14.cpp
new file mode 100644
index 000000000000..3c06d8f9dcfb
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src14.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src14.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src14.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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/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
++#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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src15.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src15.cpp
new file mode 100644
index 000000000000..816eb4adc1a6
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src15.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src15.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src15.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src16.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src16.cpp
new file mode 100644
index 000000000000..26fe3aa060dc
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src16.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src16.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src16.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#include "jit/ProcessExecutableMemory.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "jit/ProcessExecutableMemory.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/ProcessExecutableMemory.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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src17.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src17.cpp
new file mode 100644
index 000000000000..2038f8cd00ac
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src17.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src17.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src17.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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/SharedIC.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "jit/SharedIC.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/SharedIC.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
++#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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src18.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src18.cpp
new file mode 100644
index 000000000000..1ada547bd5b6
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src18.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src18.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src18.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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/none/Trampoline-none.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "jit/none/Trampoline-none.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/none/Trampoline-none.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/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src19.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src19.cpp
new file mode 100644
index 000000000000..cbd28046fca1
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src19.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src19.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src19.cpp
+@@ -0,0 +1,55 @@
++#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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src2.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src2.cpp
new file mode 100644
index 000000000000..81ea41928119
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src2.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src2.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src2.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#include "builtin/ModuleObject.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "builtin/ModuleObject.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/ModuleObject.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/Reflect.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "builtin/Reflect.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/Reflect.cpp defines INITGUID, so it cannot be built in unified mode."
++#undef INITGUID
++#endif
++#include "builtin/ReflectParse.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "builtin/ReflectParse.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/ReflectParse.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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src20.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src20.cpp
new file mode 100644
index 000000000000..742426e01211
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src20.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src20.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src20.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src21.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src21.cpp
new file mode 100644
index 000000000000..2d7e591192e7
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src21.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src21.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src21.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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
++#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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src22.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src22.cpp
new file mode 100644
index 000000000000..d5575e9cf371
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src22.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src22.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src22.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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 "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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src23.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src23.cpp
new file mode 100644
index 000000000000..e4f39b8ae2bb
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src23.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src23.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src23.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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 "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/OpaqueCrossCompartmentWrapper.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "proxy/OpaqueCrossCompartmentWrapper.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/OpaqueCrossCompartmentWrapper.cpp defines INITGUID, so it cannot be built in unified mode."
++#undef INITGUID
++#endif
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src24.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src24.cpp
new file mode 100644
index 000000000000..09aa08d66d26
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src24.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src24.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src24.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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
++#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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src25.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src25.cpp
new file mode 100644
index 000000000000..a495f144a4bd
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src25.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src25.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src25.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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/CodeCoverage.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "vm/CodeCoverage.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/CodeCoverage.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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src26.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src26.cpp
new file mode 100644
index 000000000000..a48c7b4354ba
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src26.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src26.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src26.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src27.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src27.cpp
new file mode 100644
index 000000000000..3c86bb4e4860
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src27.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src27.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src27.cpp
+@@ -0,0 +1,55 @@
++#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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src28.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src28.cpp
new file mode 100644
index 000000000000..9c71115c00c0
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src28.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src28.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src28.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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/Printer.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "vm/Printer.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/Printer.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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src29.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src29.cpp
new file mode 100644
index 000000000000..fa188e4bbe64
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src29.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src29.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src29.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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/ReceiverGuard.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "vm/ReceiverGuard.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/ReceiverGuard.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/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src3.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src3.cpp
new file mode 100644
index 000000000000..ac11b2e77a32
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src3.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src3.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src3.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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/WeakMapObject.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "builtin/WeakMapObject.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/WeakMapObject.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
++#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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src30.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src30.cpp
new file mode 100644
index 000000000000..31b1a180bd26
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src30.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src30.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src30.cpp
+@@ -0,0 +1,55 @@
++#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/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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src31.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src31.cpp
new file mode 100644
index 000000000000..6dedacb8aa84
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src31.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src31.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src31.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#include "vm/Stopwatch.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "vm/Stopwatch.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/Stopwatch.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/TaggedProto.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "vm/TaggedProto.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/TaggedProto.cpp defines INITGUID, so it cannot be built in unified mode."
++#undef INITGUID
++#endif
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src32.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src32.cpp
new file mode 100644
index 000000000000..cf2c9a3453c5
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src32.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src32.cpp.orig 2019-01-18 22:48:17 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src32.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#include "vm/Time.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "vm/Time.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/Time.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/UbiNodeCensus.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "vm/UbiNodeCensus.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/UbiNodeCensus.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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src33.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src33.cpp
new file mode 100644
index 000000000000..e3be88056d29
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src33.cpp
@@ -0,0 +1,41 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src33.cpp.orig 2019-01-18 22:48:18 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src33.cpp
+@@ -0,0 +1,37 @@
++#define MOZ_UNIFIED_BUILD
++#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
++#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/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src4.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src4.cpp
new file mode 100644
index 000000000000..76228a440849
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src4.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src4.cpp.orig 2019-01-18 22:48:18 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src4.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src5.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src5.cpp
new file mode 100644
index 000000000000..857e9272b201
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src5.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src5.cpp.orig 2019-01-18 22:48:18 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src5.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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/Allocator.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "gc/Allocator.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/Allocator.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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src6.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src6.cpp
new file mode 100644
index 000000000000..ca87a387e54a
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src6.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src6.cpp.orig 2019-01-18 22:48:18 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src6.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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/MemoryProfiler.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "gc/MemoryProfiler.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/MemoryProfiler.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
++#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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src7.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src7.cpp
new file mode 100644
index 000000000000..7a98bfe58b7f
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src7.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src7.cpp.orig 2019-01-18 22:48:18 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src7.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src8.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src8.cpp
new file mode 100644
index 000000000000..7afdd362289e
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src8.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src8.cpp.orig 2019-01-18 22:48:18 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src8.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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/AlignmentMaskAnalysis.cpp"
++#ifdef PL_ARENA_CONST_ALIGN_MASK
++#error "jit/AlignmentMaskAnalysis.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/AlignmentMaskAnalysis.cpp defines INITGUID, so it cannot be built in unified mode."
++#undef INITGUID
++#endif
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src9.cpp b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src9.cpp
new file mode 100644
index 000000000000..20f11700164f
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_Unified__cpp__js__src9.cpp
@@ -0,0 +1,59 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src9.cpp.orig 2019-01-18 22:48:18 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/Unified_cpp_js_src9.cpp
+@@ -0,0 +1,55 @@
++#define MOZ_UNIFIED_BUILD
++#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
++#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
+\ No newline at end of file
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_js-confdefs.h b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_js-confdefs.h
new file mode 100644
index 000000000000..a24659c5a145
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_build_js-confdefs.h
@@ -0,0 +1,91 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/build/js-confdefs.h.orig 2019-01-18 22:48:18 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/build/js-confdefs.h
+@@ -0,0 +1,88 @@
++/* 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 CPP_THROW_NEW throw()
++#define D_INO d_ino
++#define EDITLINE 1
++#define HAVE_64BIT_BUILD 1
++#define HAVE_ACOSH 1
++#define HAVE_ASINH 1
++#define HAVE_ATANH 1
++#define HAVE_CBRT 1
++#define HAVE_CLOCK_MONOTONIC 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_EXPM1 1
++#define HAVE_GETC_UNLOCKED 1
++#define HAVE_GETOPT_H 1
++#define HAVE_GMTIME_R 1
++#define HAVE_I18N_LC_MESSAGES 1
++#define HAVE_LANGINFO_CODESET 1
++#define HAVE_LIBM 1
++#define HAVE_LOCALECONV 1
++#define HAVE_LOCALECONV 1
++#define HAVE_LOCALTIME_R 1
++#define HAVE_LOG1P 1
++#define HAVE_LOG2 1
++#define HAVE_MACHINE_ENDIAN_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_POSIX_MEMALIGN 1
++#define HAVE_RES_NINIT 1
++#define HAVE_SETLOCALE 1
++#define HAVE_SSIZE_T 1
++#define HAVE_STRNDUP 1
++#define HAVE_SYS_CDEFS_H 1
++#define HAVE_SYS_MOUNT_H 1
++#define HAVE_SYS_STATVFS_H 1
++#define HAVE_THREAD_TLS_KEYWORD 1
++#define HAVE_TM_ZONE_TM_GMTOFF 1
++#define HAVE_UNISTD_H 1
++#define HAVE_VALLOC 1
++#define HAVE_VA_COPY 1
++#define HAVE_VISIBILITY_ATTRIBUTE 1
++#define HAVE_VISIBILITY_HIDDEN_ATTRIBUTE 1
++#define HAVE_WCRTOMB 1
++#define HAVE_X11_XKBLIB_H 1
++#define HAVE___CXA_DEMANGLE 1
++#define JS_CODEGEN_NONE 1
++#define JS_DEFAULT_JITREPORT_GRANULARITY 3
++#define JS_HAVE_MACHINE_ENDIAN_H 1
++#define JS_POSIX_NSPR 1
++#define JS_PUNBOX64 1
++#define JS_STANDALONE 1
++#define MALLOC_H <malloc_np.h>
++#define MALLOC_USABLE_SIZE_CONST_PTR const
++#define MOZILLA_UAVERSION "45.0"
++#define MOZILLA_VERSION "45.9.0"
++#define MOZILLA_VERSION_U 45.9.0
++#define MOZJS_MAJOR_VERSION 45
++#define MOZJS_MINOR_VERSION 9
++#define MOZ_DEBUG_SYMBOLS 1
++#define MOZ_DLL_SUFFIX ".so"
++#define MOZ_GLUE_IN_PROGRAM 1
++#define MOZ_MEMORY 1
++#define MOZ_MEMORY_BSD 1
++#define MOZ_UPDATE_CHANNEL default
++#define NO_NSPR_10_SUPPORT 1
++#define RELEASE_BUILD 1
++#define STDC_HEADERS 1
++#define VA_COPY va_copy
++#define XP_UNIX 1
++#define _REENTRANT 1
++#define _THREAD_SAFE 1
++
++#include "js/RequiredDefines.h"
++
++#endif /* js_confdefs_h */
diff --git a/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_include_js-config.h b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_include_js-config.h
new file mode 100644
index 000000000000..c11f55644c87
--- /dev/null
+++ b/databases/mongodb36/files/aarch64/patch-src_third__party_mozjs-45_platform_aarch64_freebsd_include_js-config.h
@@ -0,0 +1,62 @@
+--- src/third_party/mozjs-45/platform/aarch64/freebsd/include/js-config.h.orig 2019-01-18 22:48:29 UTC
++++ src/third_party/mozjs-45/platform/aarch64/freebsd/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 <endian.h> header is present and
++ useable. See jscpucfg.h. */
++/* #undef JS_HAVE_ENDIAN_H */
++
++/* Define to 1 if the <machine/endian.h> header is present and
++ useable. See jscpucfg.h. */
++#define JS_HAVE_MACHINE_ENDIAN_H 1
++
++/* Define to 1 if the <sys/isa_defs.h> header is present and
++ useable. See jscpucfg.h. */
++/* #undef JS_HAVE_SYS_ISA_DEFS_H */
++
++/* Define to 1 if SpiderMonkey is in NUNBOX32 mode. */
++/* #undef JS_NUNBOX32 */
++
++/* Define to 1 if SpiderMonkey is in PUNBOX64 mode. */
++#define JS_PUNBOX64 1
++
++/* MOZILLA JSAPI version number components */
++#define MOZJS_MAJOR_VERSION 45
++#define MOZJS_MINOR_VERSION 9
++
++#endif /* js_config_h */