git: 6cb349c57121 - main - lang/spidermonkey91: New port

From: Neel Chauhan <nc_at_FreeBSD.org>
Date: Fri, 15 Apr 2022 18:21:23 UTC
The branch main has been updated by nc:

URL: https://cgit.FreeBSD.org/ports/commit/?id=6cb349c571215c643044850632018caee79f9a29

commit 6cb349c571215c643044850632018caee79f9a29
Author:     Neel Chauhan <nc@FreeBSD.org>
AuthorDate: 2022-04-15 17:44:43 +0000
Commit:     Neel Chauhan <nc@FreeBSD.org>
CommitDate: 2022-04-15 18:21:21 +0000

    lang/spidermonkey91: New port
---
 lang/Makefile                                      |   1 +
 lang/spidermonkey91/Makefile                       |  88 ++++++
 lang/spidermonkey91/distinfo                       |   3 +
 .../files/patch-build_moz.configure_init.configure |  12 +
 .../files/patch-config_gcc__hidden.h               |  17 ++
 lang/spidermonkey91/files/patch-js_moz.configure   |  11 +
 lang/spidermonkey91/files/patch-js_src_Makefile.in |  11 +
 .../files/patch-js_src_jit_ExecutableAllocator.h   |  14 +
 .../patch-js_src_jit_ProcessExecutableMemory.h     |  12 +
 .../files/patch-js_src_wasm_WasmSignalHandlers.cpp |  14 +
 .../files/patch-modules_fdlibm_src_math__private.h |  15 ++
 lang/spidermonkey91/files/patch-moz.configure      |  14 +
 lang/spidermonkey91/pkg-descr                      |   3 +
 lang/spidermonkey91/pkg-plist                      | 300 +++++++++++++++++++++
 14 files changed, 515 insertions(+)

diff --git a/lang/Makefile b/lang/Makefile
index 54b2cdbfb7a2..2e3e639e14e4 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -331,6 +331,7 @@
     SUBDIR += solidity
     SUBDIR += spidermonkey17
     SUBDIR += spidermonkey78
+    SUBDIR += spidermonkey91
     SUBDIR += spl
     SUBDIR += squeak
     SUBDIR += squirrel
diff --git a/lang/spidermonkey91/Makefile b/lang/spidermonkey91/Makefile
new file mode 100644
index 000000000000..4908ce4022b5
--- /dev/null
+++ b/lang/spidermonkey91/Makefile
@@ -0,0 +1,88 @@
+PORTNAME=	spidermonkey
+DISTVERSION=	91.8.0
+CATEGORIES=	lang
+MASTER_SITES=	MOZILLA/firefox/releases/${DISTVERSION}esr/source
+PKGNAMESUFFIX=	${SP_VER}
+DISTNAME=	firefox-${DISTVERSION}esr.source
+
+MAINTAINER=	nc@FreeBSD.org
+COMMENT=	Standalone JavaScript based from Mozilla 91-esr
+
+LICENSE=	MPL20
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	${LOCALBASE}/bin/python${PYTHON3_DEFAULT}:lang/python${PYTHON3_DEFAULT:S/.//g} \
+		${RUST_DEFAULT}>=1.35:lang/${RUST_DEFAULT} \
+		autoconf-2.13:devel/autoconf213 \
+		rust-cbindgen>=0.8.7:devel/rust-cbindgen
+LIB_DEPENDS=	libffi.so:devel/libffi \
+		libicudata.so:devel/icu \
+		libnspr4.so:devel/nspr
+
+USES=		compiler:c++17-lang gmake localbase pathfix pkgconfig \
+		python:build readline tar:xz
+USE_LDCONFIG=	yes
+SP_VER=		91
+HAS_CONFIGURE=	yes
+
+WRKSRC=			${WRKDIR}/firefox-${DISTVERSION}/
+PATCH_WRKSRC=		${WRKDIR}/firefox-${DISTVERSION}/
+CONFIGURE_OUTSOURCE=	yes
+CONFIGURE_SCRIPT=	../firefox-${DISTVERSION}/js/src/configure
+
+CONFIGURE_ARGS=	--disable-debug \
+		--disable-debug-symbols \
+		--disable-gold \
+		--disable-jemalloc \
+		--disable-tests \
+		--enable-optimize \
+		--enable-readline \
+		--enable-shared-js \
+		--prefix=${PREFIX:Q} \
+		--target=${CONFIGURE_TARGET} \
+		--with-intl-api \
+		--with-system-icu \
+		--with-system-nspr \
+		--with-system-zlib
+
+CONFIGURE_ENV=	HOST_CC=${CC} \
+		HOST_CXX=${CXX}
+
+BINARY_ALIAS=	python3=${PYTHON_CMD}
+PLIST_SUB=	SP_VER=${SP_VER}
+
+.include <bsd.port.pre.mk>
+
+.if ${ARCH} == amd64
+CONFIGURE_TARGET=	x86_64-portbld-freebsd${OSREL}
+.endif
+
+# Require newer Clang than what's in base system unless user opted out
+# or the base system is new enough.
+.if ${CHOSEN_COMPILER_TYPE} == gcc
+CONFIGURE_ENV+=	LLVM_CONFIG=llvm-config${LLVM_DEFAULT} \
+		LLVM_OBJDUMP=llvm-objdump${LLVM_DEFAULT}
+BUILD_DEPENDS+=	${LOCALBASE}/bin/llvm-objdump${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT}
+USE_GCC=	yes
+.elif ${CC} == cc && ${CXX} == c++ && exists(/usr/lib/libc++.so) && \
+	${COMPILER_VERSION} < 80
+CPP=		${LOCALBASE}/bin/clang-cpp${LLVM_DEFAULT}
+CC=		${LOCALBASE}/bin/clang${LLVM_DEFAULT}
+CXX=		${LOCALBASE}/bin/clang++${LLVM_DEFAULT}
+CONFIGURE_ENV+=	LLVM_CONFIG=llvm-config${LLVM_DEFAULT} \
+		LLVM_OBJDUMP=llvm-objdump${LLVM_DEFAULT}
+BUILD_DEPENDS+=	${LOCALBASE}/bin/clang${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT}
+.endif
+
+pre-configure:
+	(cd ${WRKSRC}/js/src/ && ${LOCALBASE}/bin/autoconf-2.13)
+
+post-patch:
+	@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/js/moz.configure
+
+post-install:
+	${RM} ${STAGEDIR}${PREFIX}/lib/libjs_static.ajs
+	${LN} -fs libmozjs-${SP_VER}.so ${STAGEDIR}${PREFIX}/lib/libmozjs-${SP_VER}.so.1
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libmozjs-${SP_VER}.*
+
+.include <bsd.port.post.mk>
diff --git a/lang/spidermonkey91/distinfo b/lang/spidermonkey91/distinfo
new file mode 100644
index 000000000000..0959e1cf8dbf
--- /dev/null
+++ b/lang/spidermonkey91/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1650024088
+SHA256 (firefox-91.8.0esr.source.tar.xz) = d483a853cbf5c7f93621093432e3dc0b7ed847f2a5318b964828d19f9f087f3a
+SIZE (firefox-91.8.0esr.source.tar.xz) = 380325092
diff --git a/lang/spidermonkey91/files/patch-build_moz.configure_init.configure b/lang/spidermonkey91/files/patch-build_moz.configure_init.configure
new file mode 100644
index 000000000000..e2105d02928f
--- /dev/null
+++ b/lang/spidermonkey91/files/patch-build_moz.configure_init.configure
@@ -0,0 +1,12 @@
+--- build/moz.configure/init.configure.orig	2022-03-30 19:25:29 UTC
++++ build/moz.configure/init.configure
+@@ -729,6 +729,9 @@ def split_triplet(triplet, allow_msvc=False, allow_was
+     elif cpu in ("x86_64", "ia64"):
+         canonical_cpu = cpu
+         endianness = "little"
++    elif cpu in ("amd64"):
++        canonical_cpu = "x86_64"
++        endianness = "little"
+     elif cpu in ("s390", "s390x"):
+         canonical_cpu = cpu
+         endianness = "big"
diff --git a/lang/spidermonkey91/files/patch-config_gcc__hidden.h b/lang/spidermonkey91/files/patch-config_gcc__hidden.h
new file mode 100644
index 000000000000..d9a2d9be37f5
--- /dev/null
+++ b/lang/spidermonkey91/files/patch-config_gcc__hidden.h
@@ -0,0 +1,17 @@
+Toggle symbol visibility, otherwise certain symbols are marked as local
+which are actually supposed to be used (e.g. by gjs):
+
+void js::UnsafeTraceManuallyBarrieredEdge<jsid>(JSTracer*, jsid*, char const*)
+void JS::TraceEdge<JSObject*>(JSTracer*, JS::Heap<JSObject*>*, char const*)
+void js::UnsafeTraceManuallyBarrieredEdge<JSObject*>(JSTracer*, JSObject**, char const*)
+void js::UnsafeTraceManuallyBarrieredEdge<JS::Value>(JSTracer*, JS::Value*, char const*)
+
+Index: config/gcc_hidden.h
+--- config/gcc_hidden.h.orig	2022-03-30 19:25:29 UTC
++++ config/gcc_hidden.h
+@@ -3,4 +3,4 @@
+  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+ 
+ /* Begin all files as hidden visibility */
+-#pragma GCC visibility push(hidden)
++#pragma GCC visibility push(default)
diff --git a/lang/spidermonkey91/files/patch-js_moz.configure b/lang/spidermonkey91/files/patch-js_moz.configure
new file mode 100644
index 000000000000..ceec1a21abe7
--- /dev/null
+++ b/lang/spidermonkey91/files/patch-js_moz.configure
@@ -0,0 +1,11 @@
+--- js/moz.configure.orig	2022-04-15 17:29:44 UTC
++++ js/moz.configure
+@@ -919,7 +919,7 @@ has_readline = check_symbol(
+ 
+ has_readline = check_symbol(
+     "readline",
+-    flags=["-lreadline"],
++    flags=["-lreadline", "-L%%LOCALBASE%%/lib"],
+     when="--enable-readline",
+     onerror=lambda: die("No system readline library found"),
+ )
diff --git a/lang/spidermonkey91/files/patch-js_src_Makefile.in b/lang/spidermonkey91/files/patch-js_src_Makefile.in
new file mode 100644
index 000000000000..2dca25000935
--- /dev/null
+++ b/lang/spidermonkey91/files/patch-js_src_Makefile.in
@@ -0,0 +1,11 @@
+Index: js/src/Makefile.in
+--- js/src/Makefile.in.orig	2022-03-30 19:25:41 UTC
++++ js/src/Makefile.in
+@@ -106,7 +106,6 @@ install::
+ 
+ install::
+ 	$(MAKE) -C build install
+-	$(MAKE) -C shell install
+ 
+ ifdef HAVE_DTRACE
+ javascript-trace.h: $(srcdir)/devtools/javascript-trace.d
diff --git a/lang/spidermonkey91/files/patch-js_src_jit_ExecutableAllocator.h b/lang/spidermonkey91/files/patch-js_src_jit_ExecutableAllocator.h
new file mode 100644
index 000000000000..421523e23bd9
--- /dev/null
+++ b/lang/spidermonkey91/files/patch-js_src_jit_ExecutableAllocator.h
@@ -0,0 +1,14 @@
+Index: js/src/jit/ExecutableAllocator.h
+--- js/src/jit/ExecutableAllocator.h.orig	2022-03-30 19:25:41 UTC
++++ js/src/jit/ExecutableAllocator.h
+@@ -39,6 +39,10 @@
+ #include "js/TypeDecls.h"
+ #include "js/Vector.h"
+ 
++#if defined(__OpenBSD__) && defined(__mips64__)
++#include <mips64/sysarch.h>
++#endif
++
+ namespace JS {
+ struct CodeSizes;
+ }  // namespace JS
diff --git a/lang/spidermonkey91/files/patch-js_src_jit_ProcessExecutableMemory.h b/lang/spidermonkey91/files/patch-js_src_jit_ProcessExecutableMemory.h
new file mode 100644
index 000000000000..1f4c09b095fb
--- /dev/null
+++ b/lang/spidermonkey91/files/patch-js_src_jit_ProcessExecutableMemory.h
@@ -0,0 +1,12 @@
+Index: js/src/jit/ProcessExecutableMemory.h
+--- js/src/jit/ProcessExecutableMemory.h.orig	2022-03-30 19:25:41 UTC
++++ js/src/jit/ProcessExecutableMemory.h
+@@ -14,7 +14,7 @@ namespace jit {
+ 
+ // Limit on the number of bytes of executable memory to prevent JIT spraying
+ // attacks.
+-#if JS_BITS_PER_WORD == 32
++#if JS_BITS_PER_WORD == 32 || defined(__OpenBSD__)
+ static const size_t MaxCodeBytesPerProcess = 140 * 1024 * 1024;
+ #else
+ // This is the largest number which satisfies various alignment static
diff --git a/lang/spidermonkey91/files/patch-js_src_wasm_WasmSignalHandlers.cpp b/lang/spidermonkey91/files/patch-js_src_wasm_WasmSignalHandlers.cpp
new file mode 100644
index 000000000000..07912e8cc86a
--- /dev/null
+++ b/lang/spidermonkey91/files/patch-js_src_wasm_WasmSignalHandlers.cpp
@@ -0,0 +1,14 @@
+Fully define all the registers needed on mips.
+
+Index: js/src/wasm/WasmSignalHandlers.cpp
+--- js/src/wasm/WasmSignalHandlers.cpp.orig	2022-03-30 19:25:42 UTC
++++ js/src/wasm/WasmSignalHandlers.cpp
+@@ -102,6 +102,8 @@ using mozilla::DebugOnly;
+ #  if defined(__mips__)
+ #    define EPC_sig(p) ((p)->sc_pc)
+ #    define RFP_sig(p) ((p)->sc_regs[30])
++#    define RSP_sig(p) ((p)->sc_regs[29])
++#    define R31_sig(p) ((p)->sc_regs[31])
+ #  endif
+ #  if defined(__ppc64__) || defined(__PPC64__) || defined(__ppc64le__) || \
+       defined(__PPC64LE__)
diff --git a/lang/spidermonkey91/files/patch-modules_fdlibm_src_math__private.h b/lang/spidermonkey91/files/patch-modules_fdlibm_src_math__private.h
new file mode 100644
index 000000000000..db521fc65645
--- /dev/null
+++ b/lang/spidermonkey91/files/patch-modules_fdlibm_src_math__private.h
@@ -0,0 +1,15 @@
+Index: modules/fdlibm/src/math_private.h
+--- modules/fdlibm/src/math_private.h.orig	2022-03-30 19:25:49 UTC
++++ modules/fdlibm/src/math_private.h
+@@ -30,7 +30,11 @@
+  * Adapted from https://github.com/freebsd/freebsd-src/search?q=__double_t
+  */
+ 
++#ifdef __i386__
++typedef long double      __double_t;
++#else
+ typedef double      __double_t;
++#endif
+ typedef __double_t  double_t;
+ 
+ /*
diff --git a/lang/spidermonkey91/files/patch-moz.configure b/lang/spidermonkey91/files/patch-moz.configure
new file mode 100644
index 000000000000..94ae8c5f0b07
--- /dev/null
+++ b/lang/spidermonkey91/files/patch-moz.configure
@@ -0,0 +1,14 @@
+- Fix awk detection
+
+Index: moz.configure
+--- moz.configure.orig	2022-03-30 19:25:49 UTC
++++ moz.configure
+@@ -708,7 +708,7 @@ add_old_configure_assignment("CLANG_PLUGIN", clang_plu
+ 
+ # Awk detection
+ # ==============================================================
+-awk = check_prog("AWK", ("gawk", "mawk", "nawk", "awk"))
++awk = check_prog('AWK', ('awk',))
+ 
+ # Until the AWK variable is not necessary in old-configure
+ 
diff --git a/lang/spidermonkey91/pkg-descr b/lang/spidermonkey91/pkg-descr
new file mode 100644
index 000000000000..271ddb7e1386
--- /dev/null
+++ b/lang/spidermonkey91/pkg-descr
@@ -0,0 +1,3 @@
+Spidermonkey is the JavaScript interpreter from the Mozilla project.
+
+WWW: https://spidermonkey.dev/
diff --git a/lang/spidermonkey91/pkg-plist b/lang/spidermonkey91/pkg-plist
new file mode 100644
index 000000000000..1e66c0b11482
--- /dev/null
+++ b/lang/spidermonkey91/pkg-plist
@@ -0,0 +1,300 @@
+bin/js91-config
+include/mozjs-91/BaseProfiler.h
+include/mozjs-91/BaseProfilingCategory.h
+include/mozjs-91/ProfilingCategoryList.h
+include/mozjs-91/double-conversion/double-conversion.h
+include/mozjs-91/double-conversion/double-to-string.h
+include/mozjs-91/double-conversion/string-to-double.h
+include/mozjs-91/double-conversion/utils.h
+include/mozjs-91/encoding_rs_mem.h
+include/mozjs-91/fdlibm.h
+include/mozjs-91/js-config.h
+include/mozjs-91/js/AllocPolicy.h
+include/mozjs-91/js/AllocationLogging.h
+include/mozjs-91/js/AllocationRecording.h
+include/mozjs-91/js/Array.h
+include/mozjs-91/js/ArrayBuffer.h
+include/mozjs-91/js/ArrayBufferMaybeShared.h
+include/mozjs-91/js/BigInt.h
+include/mozjs-91/js/BuildId.h
+include/mozjs-91/js/CallArgs.h
+include/mozjs-91/js/CallNonGenericMethod.h
+include/mozjs-91/js/CharacterEncoding.h
+include/mozjs-91/js/Class.h
+include/mozjs-91/js/ComparisonOperators.h
+include/mozjs-91/js/CompilationAndEvaluation.h
+include/mozjs-91/js/CompileOptions.h
+include/mozjs-91/js/Context.h
+include/mozjs-91/js/ContextOptions.h
+include/mozjs-91/js/Conversions.h
+include/mozjs-91/js/Date.h
+include/mozjs-91/js/Debug.h
+include/mozjs-91/js/Equality.h
+include/mozjs-91/js/ErrorReport.h
+include/mozjs-91/js/Exception.h
+include/mozjs-91/js/ForOfIterator.h
+include/mozjs-91/js/GCAPI.h
+include/mozjs-91/js/GCAnnotations.h
+include/mozjs-91/js/GCHashTable.h
+include/mozjs-91/js/GCPolicyAPI.h
+include/mozjs-91/js/GCTypeMacros.h
+include/mozjs-91/js/GCVariant.h
+include/mozjs-91/js/GCVector.h
+include/mozjs-91/js/HashTable.h
+include/mozjs-91/js/HeapAPI.h
+include/mozjs-91/js/HelperThreadAPI.h
+include/mozjs-91/js/Id.h
+include/mozjs-91/js/Initialization.h
+include/mozjs-91/js/JSON.h
+include/mozjs-91/js/LocaleSensitive.h
+include/mozjs-91/js/MapAndSet.h
+include/mozjs-91/js/MemoryFunctions.h
+include/mozjs-91/js/MemoryMetrics.h
+include/mozjs-91/js/Modules.h
+include/mozjs-91/js/Object.h
+include/mozjs-91/js/OffThreadScriptCompilation.h
+include/mozjs-91/js/Principals.h
+include/mozjs-91/js/Printf.h
+include/mozjs-91/js/ProfilingCategory.h
+include/mozjs-91/js/ProfilingCategoryList.h
+include/mozjs-91/js/ProfilingFrameIterator.h
+include/mozjs-91/js/ProfilingStack.h
+include/mozjs-91/js/Promise.h
+include/mozjs-91/js/PropertyDescriptor.h
+include/mozjs-91/js/PropertySpec.h
+include/mozjs-91/js/ProtoKey.h
+include/mozjs-91/js/Proxy.h
+include/mozjs-91/js/Realm.h
+include/mozjs-91/js/RealmIterators.h
+include/mozjs-91/js/RealmOptions.h
+include/mozjs-91/js/RefCounted.h
+include/mozjs-91/js/RegExp.h
+include/mozjs-91/js/RegExpFlags.h
+include/mozjs-91/js/Result.h
+include/mozjs-91/js/RootingAPI.h
+include/mozjs-91/js/SavedFrameAPI.h
+include/mozjs-91/js/ScalarType.h
+include/mozjs-91/js/SharedArrayBuffer.h
+include/mozjs-91/js/SliceBudget.h
+include/mozjs-91/js/SourceText.h
+include/mozjs-91/js/StableStringChars.h
+include/mozjs-91/js/Stream.h
+include/mozjs-91/js/String.h
+include/mozjs-91/js/StructuredClone.h
+include/mozjs-91/js/SweepingAPI.h
+include/mozjs-91/js/Symbol.h
+include/mozjs-91/js/TraceKind.h
+include/mozjs-91/js/TraceLoggerAPI.h
+include/mozjs-91/js/TracingAPI.h
+include/mozjs-91/js/Transcoding.h
+include/mozjs-91/js/TypeDecls.h
+include/mozjs-91/js/UbiNode.h
+include/mozjs-91/js/UbiNodeBreadthFirst.h
+include/mozjs-91/js/UbiNodeCensus.h
+include/mozjs-91/js/UbiNodeDominatorTree.h
+include/mozjs-91/js/UbiNodePostOrder.h
+include/mozjs-91/js/UbiNodeShortestPaths.h
+include/mozjs-91/js/UbiNodeUtils.h
+include/mozjs-91/js/UniquePtr.h
+include/mozjs-91/js/Utility.h
+include/mozjs-91/js/Value.h
+include/mozjs-91/js/ValueArray.h
+include/mozjs-91/js/Vector.h
+include/mozjs-91/js/Warnings.h
+include/mozjs-91/js/WasmFeatures.h
+include/mozjs-91/js/WasmModule.h
+include/mozjs-91/js/WeakMap.h
+include/mozjs-91/js/WeakMapPtr.h
+include/mozjs-91/js/Wrapper.h
+include/mozjs-91/js/Zone.h
+include/mozjs-91/js/experimental/CTypes.h
+include/mozjs-91/js/experimental/CodeCoverage.h
+include/mozjs-91/js/experimental/Intl.h
+include/mozjs-91/js/experimental/JSStencil.h
+include/mozjs-91/js/experimental/JitInfo.h
+include/mozjs-91/js/experimental/PCCountProfiling.h
+include/mozjs-91/js/experimental/SourceHook.h
+include/mozjs-91/js/experimental/TypedData.h
+include/mozjs-91/js/friend/DOMProxy.h
+include/mozjs-91/js/friend/DumpFunctions.h
+include/mozjs-91/js/friend/ErrorMessages.h
+include/mozjs-91/js/friend/ErrorNumbers.msg
+include/mozjs-91/js/friend/JSMEnvironment.h
+include/mozjs-91/js/friend/PerformanceHint.h
+include/mozjs-91/js/friend/StackLimits.h
+include/mozjs-91/js/friend/UsageStatistics.h
+include/mozjs-91/js/friend/WindowProxy.h
+include/mozjs-91/js/friend/XrayJitInfo.h
+include/mozjs-91/js/shadow/Function.h
+include/mozjs-91/js/shadow/Object.h
+include/mozjs-91/js/shadow/Realm.h
+include/mozjs-91/js/shadow/Shape.h
+include/mozjs-91/js/shadow/String.h
+include/mozjs-91/js/shadow/Symbol.h
+include/mozjs-91/js/shadow/Zone.h
+include/mozjs-91/jsapi.h
+include/mozjs-91/jsfriendapi.h
+include/mozjs-91/jspubtd.h
+include/mozjs-91/jstypes.h
+include/mozjs-91/malloc_decls.h
+include/mozjs-91/mozilla/Algorithm.h
+include/mozjs-91/mozilla/Alignment.h
+include/mozjs-91/mozilla/AllocPolicy.h
+include/mozjs-91/mozilla/AlreadyAddRefed.h
+include/mozjs-91/mozilla/Array.h
+include/mozjs-91/mozilla/ArrayUtils.h
+include/mozjs-91/mozilla/Assertions.h
+include/mozjs-91/mozilla/AtomicBitfields.h
+include/mozjs-91/mozilla/Atomics.h
+include/mozjs-91/mozilla/Attributes.h
+include/mozjs-91/mozilla/AutoProfilerLabel.h
+include/mozjs-91/mozilla/AwakeTimeStamp.h
+include/mozjs-91/mozilla/BaseProfileJSONWriter.h
+include/mozjs-91/mozilla/BaseProfilerCounts.h
+include/mozjs-91/mozilla/BaseProfilerDetail.h
+include/mozjs-91/mozilla/BaseProfilerLabels.h
+include/mozjs-91/mozilla/BaseProfilerMarkerTypes.h
+include/mozjs-91/mozilla/BaseProfilerMarkers.h
+include/mozjs-91/mozilla/BaseProfilerMarkersDetail.h
+include/mozjs-91/mozilla/BaseProfilerMarkersPrerequisites.h
+include/mozjs-91/mozilla/BaseProfilerState.h
+include/mozjs-91/mozilla/BinarySearch.h
+include/mozjs-91/mozilla/BitSet.h
+include/mozjs-91/mozilla/BlocksRingBuffer.h
+include/mozjs-91/mozilla/BloomFilter.h
+include/mozjs-91/mozilla/Buffer.h
+include/mozjs-91/mozilla/BufferList.h
+include/mozjs-91/mozilla/Casting.h
+include/mozjs-91/mozilla/ChaosMode.h
+include/mozjs-91/mozilla/Char16.h
+include/mozjs-91/mozilla/CheckedInt.h
+include/mozjs-91/mozilla/CompactPair.h
+include/mozjs-91/mozilla/Compiler.h
+include/mozjs-91/mozilla/Compression.h
+include/mozjs-91/mozilla/DbgMacro.h
+include/mozjs-91/mozilla/DebugOnly.h
+include/mozjs-91/mozilla/Decimal.h
+include/mozjs-91/mozilla/DefineEnum.h
+include/mozjs-91/mozilla/DoubleConversion.h
+include/mozjs-91/mozilla/DoublyLinkedList.h
+include/mozjs-91/mozilla/EndianUtils.h
+include/mozjs-91/mozilla/EnumSet.h
+include/mozjs-91/mozilla/EnumTypeTraits.h
+include/mozjs-91/mozilla/EnumeratedArray.h
+include/mozjs-91/mozilla/EnumeratedRange.h
+include/mozjs-91/mozilla/FStream.h
+include/mozjs-91/mozilla/FastBernoulliTrial.h
+include/mozjs-91/mozilla/FloatingPoint.h
+include/mozjs-91/mozilla/FunctionRef.h
+include/mozjs-91/mozilla/FunctionTypeTraits.h
+include/mozjs-91/mozilla/HashFunctions.h
+include/mozjs-91/mozilla/HashTable.h
+include/mozjs-91/mozilla/HelperMacros.h
+include/mozjs-91/mozilla/InitializedOnce.h
+include/mozjs-91/mozilla/IntegerPrintfMacros.h
+include/mozjs-91/mozilla/IntegerRange.h
+include/mozjs-91/mozilla/IntegerTypeTraits.h
+include/mozjs-91/mozilla/JSONWriter.h
+include/mozjs-91/mozilla/JsRust.h
+include/mozjs-91/mozilla/Latin1.h
+include/mozjs-91/mozilla/Likely.h
+include/mozjs-91/mozilla/LinkedList.h
+include/mozjs-91/mozilla/MacroArgs.h
+include/mozjs-91/mozilla/MacroForEach.h
+include/mozjs-91/mozilla/MathAlgorithms.h
+include/mozjs-91/mozilla/Maybe.h
+include/mozjs-91/mozilla/MaybeOneOf.h
+include/mozjs-91/mozilla/MaybeStorageBase.h
+include/mozjs-91/mozilla/MemoryChecking.h
+include/mozjs-91/mozilla/MemoryReporting.h
+include/mozjs-91/mozilla/MmapFaultHandler.h
+include/mozjs-91/mozilla/ModuloBuffer.h
+include/mozjs-91/mozilla/NonDereferenceable.h
+include/mozjs-91/mozilla/NotNull.h
+include/mozjs-91/mozilla/Opaque.h
+include/mozjs-91/mozilla/OperatorNewExtensions.h
+include/mozjs-91/mozilla/PairHash.h
+include/mozjs-91/mozilla/Path.h
+include/mozjs-91/mozilla/PlatformConditionVariable.h
+include/mozjs-91/mozilla/PlatformMutex.h
+include/mozjs-91/mozilla/PodOperations.h
+include/mozjs-91/mozilla/Poison.h
+include/mozjs-91/mozilla/PowerOfTwo.h
+include/mozjs-91/mozilla/Printf.h
+include/mozjs-91/mozilla/ProfileBufferChunk.h
+include/mozjs-91/mozilla/ProfileBufferChunkManager.h
+include/mozjs-91/mozilla/ProfileBufferChunkManagerSingle.h
+include/mozjs-91/mozilla/ProfileBufferChunkManagerWithLocalLimit.h
+include/mozjs-91/mozilla/ProfileBufferControlledChunkManager.h
+include/mozjs-91/mozilla/ProfileBufferEntryKinds.h
+include/mozjs-91/mozilla/ProfileBufferEntrySerialization.h
+include/mozjs-91/mozilla/ProfileBufferIndex.h
+include/mozjs-91/mozilla/ProfileChunkedBuffer.h
+include/mozjs-91/mozilla/RandomNum.h
+include/mozjs-91/mozilla/Range.h
+include/mozjs-91/mozilla/RangedArray.h
+include/mozjs-91/mozilla/RangedPtr.h
+include/mozjs-91/mozilla/ReentrancyGuard.h
+include/mozjs-91/mozilla/RefCountType.h
+include/mozjs-91/mozilla/RefCounted.h
+include/mozjs-91/mozilla/RefPtr.h
+include/mozjs-91/mozilla/Result.h
+include/mozjs-91/mozilla/ResultExtensions.h
+include/mozjs-91/mozilla/ResultVariant.h
+include/mozjs-91/mozilla/ReverseIterator.h
+include/mozjs-91/mozilla/RollingMean.h
+include/mozjs-91/mozilla/SHA1.h
+include/mozjs-91/mozilla/SPSCQueue.h
+include/mozjs-91/mozilla/Saturate.h
+include/mozjs-91/mozilla/ScopeExit.h
+include/mozjs-91/mozilla/Scoped.h
+include/mozjs-91/mozilla/SegmentedVector.h
+include/mozjs-91/mozilla/SharedLibrary.h
+include/mozjs-91/mozilla/SmallPointerArray.h
+include/mozjs-91/mozilla/Span.h
+include/mozjs-91/mozilla/SplayTree.h
+include/mozjs-91/mozilla/Sprintf.h
+include/mozjs-91/mozilla/StackWalk.h
+include/mozjs-91/mozilla/StaticAnalysisFunctions.h
+include/mozjs-91/mozilla/TaggedAnonymousMemory.h
+include/mozjs-91/mozilla/Tainting.h
+include/mozjs-91/mozilla/TemplateLib.h
+include/mozjs-91/mozilla/TextUtils.h
+include/mozjs-91/mozilla/ThreadLocal.h
+include/mozjs-91/mozilla/ThreadSafeWeakPtr.h
+include/mozjs-91/mozilla/TimeStamp.h
+include/mozjs-91/mozilla/ToString.h
+include/mozjs-91/mozilla/Tuple.h
+include/mozjs-91/mozilla/TypeTraits.h
+include/mozjs-91/mozilla/TypedEnumBits.h
+include/mozjs-91/mozilla/Types.h
+include/mozjs-91/mozilla/UniquePtr.h
+include/mozjs-91/mozilla/UniquePtrExtensions.h
+include/mozjs-91/mozilla/Unused.h
+include/mozjs-91/mozilla/Uptime.h
+include/mozjs-91/mozilla/Utf8.h
+include/mozjs-91/mozilla/Variant.h
+include/mozjs-91/mozilla/Vector.h
+include/mozjs-91/mozilla/WeakPtr.h
+include/mozjs-91/mozilla/WrappingOperations.h
+include/mozjs-91/mozilla/XorShift128PlusRNG.h
+include/mozjs-91/mozilla/cxxalloc.h
+include/mozjs-91/mozilla/fallible.h
+include/mozjs-91/mozilla/glue/Debug.h
+include/mozjs-91/mozilla/glue/WinUtils.h
+include/mozjs-91/mozilla/intl/Calendar.h
+include/mozjs-91/mozilla/intl/DateTimeFormat.h
+include/mozjs-91/mozilla/intl/DateTimePatternGenerator.h
+include/mozjs-91/mozilla/intl/ICU4CGlue.h
+include/mozjs-91/mozilla/intl/NumberFormat.h
+include/mozjs-91/mozilla/intl/PluralRules.h
+include/mozjs-91/mozilla/leb128iterator.h
+include/mozjs-91/mozilla/mozalloc.h
+include/mozjs-91/mozilla/mozalloc_abort.h
+include/mozjs-91/mozilla/mozalloc_oom.h
+include/mozjs-91/mozjemalloc_types.h
+include/mozjs-91/mozmemory.h
+include/mozjs-91/mozmemory_wrap.h
+lib/libmozjs-91.so
+lib/libmozjs-91.so.1
+libdata/pkgconfig/mozjs-91.pc