git: 925129531a5c - main - lang/spidermonkey102: New port

From: Neel Chauhan <nc_at_FreeBSD.org>
Date: Tue, 13 Sep 2022 16:49:30 UTC
The branch main has been updated by nc:

URL: https://cgit.FreeBSD.org/ports/commit/?id=925129531a5cef8f8ccdbfbb04f3f8143bcae535

commit 925129531a5cef8f8ccdbfbb04f3f8143bcae535
Author:     Neel Chauhan <nc@FreeBSD.org>
AuthorDate: 2022-09-13 16:49:27 +0000
Commit:     Neel Chauhan <nc@FreeBSD.org>
CommitDate: 2022-09-13 16:49:27 +0000

    lang/spidermonkey102: New port
---
 lang/Makefile                                      |   1 +
 lang/spidermonkey102/Makefile                      |  90 ++++++
 lang/spidermonkey102/distinfo                      |   3 +
 .../files/extra-patch-config_makefiles_rust.mk     |  10 +
 .../files/patch-build_moz.configure_init.configure |  12 +
 .../files/patch-config_gcc__hidden.h               |  17 +
 lang/spidermonkey102/files/patch-js_moz.configure  |  11 +
 .../spidermonkey102/files/patch-js_src_Makefile.in |  11 +
 .../files/patch-js_src_jit_ExecutableAllocator.h   |  14 +
 .../patch-js_src_jit_ProcessExecutableMemory.h     |  12 +
 .../files/patch-modules_fdlibm_src_math__private.h |  46 +++
 lang/spidermonkey102/files/patch-moz.configure     |  14 +
 lang/spidermonkey102/pkg-descr                     |   1 +
 lang/spidermonkey102/pkg-plist                     | 346 +++++++++++++++++++++
 14 files changed, 588 insertions(+)

diff --git a/lang/Makefile b/lang/Makefile
index 178e246fbb47..4713b8ed51a2 100644
--- a/lang/Makefile
+++ b/lang/Makefile
@@ -337,6 +337,7 @@
     SUBDIR += smlnj
     SUBDIR += snobol4
     SUBDIR += solidity
+    SUBDIR += spidermonkey102
     SUBDIR += spidermonkey17
     SUBDIR += spidermonkey78
     SUBDIR += spidermonkey91
diff --git a/lang/spidermonkey102/Makefile b/lang/spidermonkey102/Makefile
new file mode 100644
index 000000000000..6a34e1f04d1d
--- /dev/null
+++ b/lang/spidermonkey102/Makefile
@@ -0,0 +1,90 @@
+PORTNAME=	spidermonkey
+DISTVERSION=	102.3.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
+WWW=		https://spidermonkey.dev/
+
+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} \
+		autoconf2.13:devel/autoconf2.13 \
+		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=		102
+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-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}
+.elif ${ARCH} == powerpc
+EXTRA_PATCHES=	${FILESDIR}/extra-patch-config_makefiles_rust.mk
+.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/autoconf2.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/spidermonkey102/distinfo b/lang/spidermonkey102/distinfo
new file mode 100644
index 000000000000..bde06f99bd73
--- /dev/null
+++ b/lang/spidermonkey102/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1663086793
+SHA256 (firefox-102.3.0esr.source.tar.xz) = 308e23b6dcf964e342cf95fd0c8a386127371b620a489ae26e537d728341b55a
+SIZE (firefox-102.3.0esr.source.tar.xz) = 478260896
diff --git a/lang/spidermonkey102/files/extra-patch-config_makefiles_rust.mk b/lang/spidermonkey102/files/extra-patch-config_makefiles_rust.mk
new file mode 100644
index 000000000000..4a11a0bd1008
--- /dev/null
+++ b/lang/spidermonkey102/files/extra-patch-config_makefiles_rust.mk
@@ -0,0 +1,10 @@
+--- config/makefiles/rust.mk.orig	2022-04-02 10:37:19 UTC
++++ config/makefiles/rust.mk
+@@ -221,7 +221,6 @@
+ ifneq (,$(PKG_CONFIG_LIBDIR))
+ export PKG_CONFIG_LIBDIR
+ endif
+-export RUST_BACKTRACE=full
+ export MOZ_TOPOBJDIR=$(topobjdir)
+ export MOZ_FOLD_LIBS
+ export PYTHON3
diff --git a/lang/spidermonkey102/files/patch-build_moz.configure_init.configure b/lang/spidermonkey102/files/patch-build_moz.configure_init.configure
new file mode 100644
index 000000000000..e2105d02928f
--- /dev/null
+++ b/lang/spidermonkey102/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/spidermonkey102/files/patch-config_gcc__hidden.h b/lang/spidermonkey102/files/patch-config_gcc__hidden.h
new file mode 100644
index 000000000000..d9a2d9be37f5
--- /dev/null
+++ b/lang/spidermonkey102/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/spidermonkey102/files/patch-js_moz.configure b/lang/spidermonkey102/files/patch-js_moz.configure
new file mode 100644
index 000000000000..ceec1a21abe7
--- /dev/null
+++ b/lang/spidermonkey102/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/spidermonkey102/files/patch-js_src_Makefile.in b/lang/spidermonkey102/files/patch-js_src_Makefile.in
new file mode 100644
index 000000000000..2dca25000935
--- /dev/null
+++ b/lang/spidermonkey102/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/spidermonkey102/files/patch-js_src_jit_ExecutableAllocator.h b/lang/spidermonkey102/files/patch-js_src_jit_ExecutableAllocator.h
new file mode 100644
index 000000000000..421523e23bd9
--- /dev/null
+++ b/lang/spidermonkey102/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/spidermonkey102/files/patch-js_src_jit_ProcessExecutableMemory.h b/lang/spidermonkey102/files/patch-js_src_jit_ProcessExecutableMemory.h
new file mode 100644
index 000000000000..1f4c09b095fb
--- /dev/null
+++ b/lang/spidermonkey102/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/spidermonkey102/files/patch-modules_fdlibm_src_math__private.h b/lang/spidermonkey102/files/patch-modules_fdlibm_src_math__private.h
new file mode 100644
index 000000000000..8be5854b5160
--- /dev/null
+++ b/lang/spidermonkey102/files/patch-modules_fdlibm_src_math__private.h
@@ -0,0 +1,46 @@
+--- modules/fdlibm/src/math_private.h.orig	2022-04-16 03:20:29 UTC
++++ modules/fdlibm/src/math_private.h
+@@ -30,7 +30,9 @@
+  * Adapted from https://github.com/freebsd/freebsd-src/search?q=__double_t
+  */
+ 
++#ifndef __FreeBSD__
+ typedef double      __double_t;
++#endif
+ typedef __double_t  double_t;
+ 
+ /*
+@@ -636,6 +638,33 @@ rnint(__double_t x)
+  * sometimes be more efficient because no rounding is required.
+  */
+ #if (defined(amd64) || defined(__i386__)) && defined(__GNUCLIKE_ASM)
++
++#if defined(__i386__)
++static __inline int
++irintf(float x)
++{
++	int n;
++	__asm("fistl %0" : "=m" (n) : "t" (x));
++	return (n);
++}
++
++static __inline int
++irintd(double x)
++{
++	int n;
++	__asm("fistl %0" : "=m" (n) : "t" (x));
++	return (n);
++}
++
++static __inline int
++irintl(long x)
++{
++	int n;
++	__asm("fistl %0" : "=m" (n) : "t" (x));
++	return (n);
++}
++#endif
++
+ #define	irint(x)						\
+     (sizeof(x) == sizeof(float) &&				\
+     sizeof(__float_t) == sizeof(long double) ? irintf(x) :	\
diff --git a/lang/spidermonkey102/files/patch-moz.configure b/lang/spidermonkey102/files/patch-moz.configure
new file mode 100644
index 000000000000..94ae8c5f0b07
--- /dev/null
+++ b/lang/spidermonkey102/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/spidermonkey102/pkg-descr b/lang/spidermonkey102/pkg-descr
new file mode 100644
index 000000000000..bfa153b8c457
--- /dev/null
+++ b/lang/spidermonkey102/pkg-descr
@@ -0,0 +1 @@
+Spidermonkey is the JavaScript interpreter from the Mozilla project.
diff --git a/lang/spidermonkey102/pkg-plist b/lang/spidermonkey102/pkg-plist
new file mode 100644
index 000000000000..f745ff2b97a6
--- /dev/null
+++ b/lang/spidermonkey102/pkg-plist
@@ -0,0 +1,346 @@
+bin/js%%SP_VER%%-config
+include/mozjs-%%SP_VER%%/BaseProfiler.h
+include/mozjs-%%SP_VER%%/BaseProfilingCategory.h
+include/mozjs-%%SP_VER%%/double-conversion/double-conversion.h
+include/mozjs-%%SP_VER%%/double-conversion/double-to-string.h
+include/mozjs-%%SP_VER%%/double-conversion/string-to-double.h
+include/mozjs-%%SP_VER%%/double-conversion/utils.h
+include/mozjs-%%SP_VER%%/encoding_rs_mem.h
+include/mozjs-%%SP_VER%%/fdlibm.h
+include/mozjs-%%SP_VER%%/js-config.h
+include/mozjs-%%SP_VER%%/js/AllocPolicy.h
+include/mozjs-%%SP_VER%%/js/AllocationLogging.h
+include/mozjs-%%SP_VER%%/js/AllocationRecording.h
+include/mozjs-%%SP_VER%%/js/Array.h
+include/mozjs-%%SP_VER%%/js/ArrayBuffer.h
+include/mozjs-%%SP_VER%%/js/ArrayBufferMaybeShared.h
+include/mozjs-%%SP_VER%%/js/BigInt.h
+include/mozjs-%%SP_VER%%/js/BuildId.h
+include/mozjs-%%SP_VER%%/js/CallAndConstruct.h
+include/mozjs-%%SP_VER%%/js/CallArgs.h
+include/mozjs-%%SP_VER%%/js/CallNonGenericMethod.h
+include/mozjs-%%SP_VER%%/js/CharacterEncoding.h
+include/mozjs-%%SP_VER%%/js/Class.h
+include/mozjs-%%SP_VER%%/js/ComparisonOperators.h
+include/mozjs-%%SP_VER%%/js/CompilationAndEvaluation.h
+include/mozjs-%%SP_VER%%/js/CompileOptions.h
+include/mozjs-%%SP_VER%%/js/Context.h
+include/mozjs-%%SP_VER%%/js/ContextOptions.h
+include/mozjs-%%SP_VER%%/js/Conversions.h
+include/mozjs-%%SP_VER%%/js/Date.h
+include/mozjs-%%SP_VER%%/js/Debug.h
+include/mozjs-%%SP_VER%%/js/Equality.h
+include/mozjs-%%SP_VER%%/js/ErrorInterceptor.h
+include/mozjs-%%SP_VER%%/js/ErrorReport.h
+include/mozjs-%%SP_VER%%/js/Exception.h
+include/mozjs-%%SP_VER%%/js/ForOfIterator.h
+include/mozjs-%%SP_VER%%/js/GCAPI.h
+include/mozjs-%%SP_VER%%/js/GCAnnotations.h
+include/mozjs-%%SP_VER%%/js/GCHashTable.h
+include/mozjs-%%SP_VER%%/js/GCPolicyAPI.h
+include/mozjs-%%SP_VER%%/js/GCTypeMacros.h
+include/mozjs-%%SP_VER%%/js/GCVariant.h
+include/mozjs-%%SP_VER%%/js/GCVector.h
+include/mozjs-%%SP_VER%%/js/GlobalObject.h
+include/mozjs-%%SP_VER%%/js/HashTable.h
+include/mozjs-%%SP_VER%%/js/HeapAPI.h
+include/mozjs-%%SP_VER%%/js/HelperThreadAPI.h
+include/mozjs-%%SP_VER%%/js/Id.h
+include/mozjs-%%SP_VER%%/js/Initialization.h
+include/mozjs-%%SP_VER%%/js/Interrupt.h
+include/mozjs-%%SP_VER%%/js/JSON.h
+include/mozjs-%%SP_VER%%/js/LocaleSensitive.h
+include/mozjs-%%SP_VER%%/js/MapAndSet.h
+include/mozjs-%%SP_VER%%/js/MemoryCallbacks.h
+include/mozjs-%%SP_VER%%/js/MemoryFunctions.h
+include/mozjs-%%SP_VER%%/js/MemoryMetrics.h
+include/mozjs-%%SP_VER%%/js/Modules.h
+include/mozjs-%%SP_VER%%/js/Object.h
+include/mozjs-%%SP_VER%%/js/OffThreadScriptCompilation.h
+include/mozjs-%%SP_VER%%/js/Principals.h
+include/mozjs-%%SP_VER%%/js/Printf.h
+include/mozjs-%%SP_VER%%/js/ProfilingCategory.h
+include/mozjs-%%SP_VER%%/js/ProfilingCategoryList.h
+include/mozjs-%%SP_VER%%/js/ProfilingFrameIterator.h
+include/mozjs-%%SP_VER%%/js/ProfilingStack.h
+include/mozjs-%%SP_VER%%/js/Promise.h
+include/mozjs-%%SP_VER%%/js/PropertyAndElement.h
+include/mozjs-%%SP_VER%%/js/PropertyDescriptor.h
+include/mozjs-%%SP_VER%%/js/PropertySpec.h
+include/mozjs-%%SP_VER%%/js/ProtoKey.h
+include/mozjs-%%SP_VER%%/js/Proxy.h
+include/mozjs-%%SP_VER%%/js/Realm.h
+include/mozjs-%%SP_VER%%/js/RealmIterators.h
+include/mozjs-%%SP_VER%%/js/RealmOptions.h
+include/mozjs-%%SP_VER%%/js/RefCounted.h
+include/mozjs-%%SP_VER%%/js/RegExp.h
+include/mozjs-%%SP_VER%%/js/RegExpFlags.h
+include/mozjs-%%SP_VER%%/js/Result.h
+include/mozjs-%%SP_VER%%/js/RootingAPI.h
+include/mozjs-%%SP_VER%%/js/SavedFrameAPI.h
+include/mozjs-%%SP_VER%%/js/ScalarType.h
+include/mozjs-%%SP_VER%%/js/ScriptPrivate.h
+include/mozjs-%%SP_VER%%/js/SharedArrayBuffer.h
+include/mozjs-%%SP_VER%%/js/SliceBudget.h
+include/mozjs-%%SP_VER%%/js/SourceText.h
+include/mozjs-%%SP_VER%%/js/StableStringChars.h
+include/mozjs-%%SP_VER%%/js/Stack.h
+include/mozjs-%%SP_VER%%/js/Stream.h
+include/mozjs-%%SP_VER%%/js/StreamConsumer.h
+include/mozjs-%%SP_VER%%/js/String.h
+include/mozjs-%%SP_VER%%/js/StructuredClone.h
+include/mozjs-%%SP_VER%%/js/SweepingAPI.h
+include/mozjs-%%SP_VER%%/js/Symbol.h
+include/mozjs-%%SP_VER%%/js/TelemetryTimers.h
+include/mozjs-%%SP_VER%%/js/TraceKind.h
+include/mozjs-%%SP_VER%%/js/TraceLoggerAPI.h
+include/mozjs-%%SP_VER%%/js/TracingAPI.h
+include/mozjs-%%SP_VER%%/js/Transcoding.h
+include/mozjs-%%SP_VER%%/js/TypeDecls.h
+include/mozjs-%%SP_VER%%/js/UbiNode.h
+include/mozjs-%%SP_VER%%/js/UbiNodeBreadthFirst.h
+include/mozjs-%%SP_VER%%/js/UbiNodeCensus.h
+include/mozjs-%%SP_VER%%/js/UbiNodeDominatorTree.h
+include/mozjs-%%SP_VER%%/js/UbiNodePostOrder.h
+include/mozjs-%%SP_VER%%/js/UbiNodeShortestPaths.h
+include/mozjs-%%SP_VER%%/js/UbiNodeUtils.h
+include/mozjs-%%SP_VER%%/js/UniquePtr.h
+include/mozjs-%%SP_VER%%/js/Utility.h
+include/mozjs-%%SP_VER%%/js/Value.h
+include/mozjs-%%SP_VER%%/js/ValueArray.h
+include/mozjs-%%SP_VER%%/js/Vector.h
+include/mozjs-%%SP_VER%%/js/WaitCallbacks.h
+include/mozjs-%%SP_VER%%/js/Warnings.h
+include/mozjs-%%SP_VER%%/js/WasmFeatures.h
+include/mozjs-%%SP_VER%%/js/WasmModule.h
+include/mozjs-%%SP_VER%%/js/WeakMap.h
+include/mozjs-%%SP_VER%%/js/WeakMapPtr.h
+include/mozjs-%%SP_VER%%/js/Wrapper.h
+include/mozjs-%%SP_VER%%/js/WrapperCallbacks.h
+include/mozjs-%%SP_VER%%/js/Zone.h
+include/mozjs-%%SP_VER%%/js/experimental/CTypes.h
+include/mozjs-%%SP_VER%%/js/experimental/CodeCoverage.h
+include/mozjs-%%SP_VER%%/js/experimental/Intl.h
+include/mozjs-%%SP_VER%%/js/experimental/JSStencil.h
+include/mozjs-%%SP_VER%%/js/experimental/JitInfo.h
+include/mozjs-%%SP_VER%%/js/experimental/PCCountProfiling.h
+include/mozjs-%%SP_VER%%/js/experimental/SourceHook.h
+include/mozjs-%%SP_VER%%/js/experimental/TypedData.h
+include/mozjs-%%SP_VER%%/js/friend/DOMProxy.h
+include/mozjs-%%SP_VER%%/js/friend/DumpFunctions.h
+include/mozjs-%%SP_VER%%/js/friend/ErrorMessages.h
+include/mozjs-%%SP_VER%%/js/friend/ErrorNumbers.msg
+include/mozjs-%%SP_VER%%/js/friend/JSMEnvironment.h
+include/mozjs-%%SP_VER%%/js/friend/PerformanceHint.h
+include/mozjs-%%SP_VER%%/js/friend/StackLimits.h
+include/mozjs-%%SP_VER%%/js/friend/UsageStatistics.h
+include/mozjs-%%SP_VER%%/js/friend/WindowProxy.h
+include/mozjs-%%SP_VER%%/js/friend/XrayJitInfo.h
+include/mozjs-%%SP_VER%%/js/shadow/Function.h
+include/mozjs-%%SP_VER%%/js/shadow/Object.h
+include/mozjs-%%SP_VER%%/js/shadow/Realm.h
+include/mozjs-%%SP_VER%%/js/shadow/Shape.h
+include/mozjs-%%SP_VER%%/js/shadow/String.h
+include/mozjs-%%SP_VER%%/js/shadow/Symbol.h
+include/mozjs-%%SP_VER%%/js/shadow/Zone.h
+include/mozjs-%%SP_VER%%/jsapi.h
+include/mozjs-%%SP_VER%%/jsfriendapi.h
+include/mozjs-%%SP_VER%%/jspubtd.h
+include/mozjs-%%SP_VER%%/jstypes.h
+include/mozjs-%%SP_VER%%/malloc_decls.h
+include/mozjs-%%SP_VER%%/mozilla/Algorithm.h
+include/mozjs-%%SP_VER%%/mozilla/Alignment.h
+include/mozjs-%%SP_VER%%/mozilla/AllocPolicy.h
+include/mozjs-%%SP_VER%%/mozilla/AlreadyAddRefed.h
+include/mozjs-%%SP_VER%%/mozilla/Array.h
+include/mozjs-%%SP_VER%%/mozilla/ArrayUtils.h
+include/mozjs-%%SP_VER%%/mozilla/Assertions.h
+include/mozjs-%%SP_VER%%/mozilla/AtomicBitfields.h
+include/mozjs-%%SP_VER%%/mozilla/Atomics.h
+include/mozjs-%%SP_VER%%/mozilla/Attributes.h
+include/mozjs-%%SP_VER%%/mozilla/AutoProfilerLabel.h
+include/mozjs-%%SP_VER%%/mozilla/AwakeTimeStamp.h
+include/mozjs-%%SP_VER%%/mozilla/BaseAndGeckoProfilerDetail.h
+include/mozjs-%%SP_VER%%/mozilla/BaseProfileJSONWriter.h
+include/mozjs-%%SP_VER%%/mozilla/BaseProfilerCounts.h
+include/mozjs-%%SP_VER%%/mozilla/BaseProfilerDetail.h
+include/mozjs-%%SP_VER%%/mozilla/BaseProfilerLabels.h
+include/mozjs-%%SP_VER%%/mozilla/BaseProfilerMarkerTypes.h
+include/mozjs-%%SP_VER%%/mozilla/BaseProfilerMarkers.h
+include/mozjs-%%SP_VER%%/mozilla/BaseProfilerMarkersDetail.h
+include/mozjs-%%SP_VER%%/mozilla/BaseProfilerMarkersPrerequisites.h
+include/mozjs-%%SP_VER%%/mozilla/BaseProfilerRAIIMacro.h
+include/mozjs-%%SP_VER%%/mozilla/BaseProfilerState.h
+include/mozjs-%%SP_VER%%/mozilla/BaseProfilerUtils.h
+include/mozjs-%%SP_VER%%/mozilla/BinarySearch.h
+include/mozjs-%%SP_VER%%/mozilla/BitSet.h
+include/mozjs-%%SP_VER%%/mozilla/BlocksRingBuffer.h
+include/mozjs-%%SP_VER%%/mozilla/BloomFilter.h
+include/mozjs-%%SP_VER%%/mozilla/Buffer.h
+include/mozjs-%%SP_VER%%/mozilla/BufferList.h
+include/mozjs-%%SP_VER%%/mozilla/Casting.h
+include/mozjs-%%SP_VER%%/mozilla/ChaosMode.h
+include/mozjs-%%SP_VER%%/mozilla/Char16.h
+include/mozjs-%%SP_VER%%/mozilla/CheckedInt.h
+include/mozjs-%%SP_VER%%/mozilla/CompactPair.h
+include/mozjs-%%SP_VER%%/mozilla/Compiler.h
+include/mozjs-%%SP_VER%%/mozilla/Compression.h
+include/mozjs-%%SP_VER%%/mozilla/DbgMacro.h
+include/mozjs-%%SP_VER%%/mozilla/DebugOnly.h
+include/mozjs-%%SP_VER%%/mozilla/Decimal.h
+include/mozjs-%%SP_VER%%/mozilla/DefineEnum.h
+include/mozjs-%%SP_VER%%/mozilla/DoubleConversion.h
+include/mozjs-%%SP_VER%%/mozilla/DoublyLinkedList.h
+include/mozjs-%%SP_VER%%/mozilla/EndianUtils.h
+include/mozjs-%%SP_VER%%/mozilla/EnumSet.h
+include/mozjs-%%SP_VER%%/mozilla/EnumTypeTraits.h
+include/mozjs-%%SP_VER%%/mozilla/EnumeratedArray.h
+include/mozjs-%%SP_VER%%/mozilla/EnumeratedRange.h
+include/mozjs-%%SP_VER%%/mozilla/FStream.h
+include/mozjs-%%SP_VER%%/mozilla/FastBernoulliTrial.h
+include/mozjs-%%SP_VER%%/mozilla/FloatingPoint.h
+include/mozjs-%%SP_VER%%/mozilla/FunctionRef.h
+include/mozjs-%%SP_VER%%/mozilla/FunctionTypeTraits.h
+include/mozjs-%%SP_VER%%/mozilla/Fuzzing.h
+include/mozjs-%%SP_VER%%/mozilla/HashFunctions.h
+include/mozjs-%%SP_VER%%/mozilla/HashTable.h
+include/mozjs-%%SP_VER%%/mozilla/HelperMacros.h
+include/mozjs-%%SP_VER%%/mozilla/InitializedOnce.h
+include/mozjs-%%SP_VER%%/mozilla/IntegerPrintfMacros.h
+include/mozjs-%%SP_VER%%/mozilla/IntegerRange.h
+include/mozjs-%%SP_VER%%/mozilla/IntegerTypeTraits.h
+include/mozjs-%%SP_VER%%/mozilla/JSONWriter.h
+include/mozjs-%%SP_VER%%/mozilla/JsRust.h
+include/mozjs-%%SP_VER%%/mozilla/Latin1.h
+include/mozjs-%%SP_VER%%/mozilla/Likely.h
+include/mozjs-%%SP_VER%%/mozilla/LinkedList.h
+include/mozjs-%%SP_VER%%/mozilla/MacroArgs.h
+include/mozjs-%%SP_VER%%/mozilla/MacroForEach.h
+include/mozjs-%%SP_VER%%/mozilla/MathAlgorithms.h
+include/mozjs-%%SP_VER%%/mozilla/Maybe.h
+include/mozjs-%%SP_VER%%/mozilla/MaybeOneOf.h
+include/mozjs-%%SP_VER%%/mozilla/MaybeStorageBase.h
+include/mozjs-%%SP_VER%%/mozilla/MemoryChecking.h
+include/mozjs-%%SP_VER%%/mozilla/MemoryReporting.h
+include/mozjs-%%SP_VER%%/mozilla/MmapFaultHandler.h
+include/mozjs-%%SP_VER%%/mozilla/ModuloBuffer.h
+include/mozjs-%%SP_VER%%/mozilla/NonDereferenceable.h
+include/mozjs-%%SP_VER%%/mozilla/NotNull.h
+include/mozjs-%%SP_VER%%/mozilla/Opaque.h
+include/mozjs-%%SP_VER%%/mozilla/OperatorNewExtensions.h
+include/mozjs-%%SP_VER%%/mozilla/PairHash.h
+include/mozjs-%%SP_VER%%/mozilla/Path.h
+include/mozjs-%%SP_VER%%/mozilla/PlatformConditionVariable.h
+include/mozjs-%%SP_VER%%/mozilla/PlatformMutex.h
+include/mozjs-%%SP_VER%%/mozilla/PlatformRWLock.h
+include/mozjs-%%SP_VER%%/mozilla/PodOperations.h
+include/mozjs-%%SP_VER%%/mozilla/Poison.h
+include/mozjs-%%SP_VER%%/mozilla/PowerOfTwo.h
+include/mozjs-%%SP_VER%%/mozilla/Printf.h
+include/mozjs-%%SP_VER%%/mozilla/ProfileBufferChunk.h
+include/mozjs-%%SP_VER%%/mozilla/ProfileBufferChunkManager.h
+include/mozjs-%%SP_VER%%/mozilla/ProfileBufferChunkManagerSingle.h
+include/mozjs-%%SP_VER%%/mozilla/ProfileBufferChunkManagerWithLocalLimit.h
+include/mozjs-%%SP_VER%%/mozilla/ProfileBufferControlledChunkManager.h
+include/mozjs-%%SP_VER%%/mozilla/ProfileBufferEntryKinds.h
+include/mozjs-%%SP_VER%%/mozilla/ProfileBufferEntrySerialization.h
+include/mozjs-%%SP_VER%%/mozilla/ProfileBufferIndex.h
+include/mozjs-%%SP_VER%%/mozilla/ProfileChunkedBuffer.h
+include/mozjs-%%SP_VER%%/mozilla/ProfileChunkedBufferDetail.h
+include/mozjs-%%SP_VER%%/mozilla/ProgressLogger.h
+include/mozjs-%%SP_VER%%/mozilla/ProportionValue.h
+include/mozjs-%%SP_VER%%/mozilla/RandomNum.h
+include/mozjs-%%SP_VER%%/mozilla/Range.h
+include/mozjs-%%SP_VER%%/mozilla/RangedArray.h
+include/mozjs-%%SP_VER%%/mozilla/RangedPtr.h
+include/mozjs-%%SP_VER%%/mozilla/ReentrancyGuard.h
+include/mozjs-%%SP_VER%%/mozilla/RefCountType.h
+include/mozjs-%%SP_VER%%/mozilla/RefCounted.h
+include/mozjs-%%SP_VER%%/mozilla/RefPtr.h
+include/mozjs-%%SP_VER%%/mozilla/Result.h
+include/mozjs-%%SP_VER%%/mozilla/ResultExtensions.h
+include/mozjs-%%SP_VER%%/mozilla/ResultVariant.h
+include/mozjs-%%SP_VER%%/mozilla/ReverseIterator.h
+include/mozjs-%%SP_VER%%/mozilla/RollingMean.h
+include/mozjs-%%SP_VER%%/mozilla/SHA1.h
+include/mozjs-%%SP_VER%%/mozilla/SPSCQueue.h
+include/mozjs-%%SP_VER%%/mozilla/Saturate.h
+include/mozjs-%%SP_VER%%/mozilla/ScopeExit.h
+include/mozjs-%%SP_VER%%/mozilla/Scoped.h
+include/mozjs-%%SP_VER%%/mozilla/SegmentedVector.h
+include/mozjs-%%SP_VER%%/mozilla/SharedLibrary.h
+include/mozjs-%%SP_VER%%/mozilla/SmallPointerArray.h
+include/mozjs-%%SP_VER%%/mozilla/Span.h
+include/mozjs-%%SP_VER%%/mozilla/SplayTree.h
+include/mozjs-%%SP_VER%%/mozilla/Sprintf.h
+include/mozjs-%%SP_VER%%/mozilla/StackWalk.h
+include/mozjs-%%SP_VER%%/mozilla/StaticAnalysisFunctions.h
+include/mozjs-%%SP_VER%%/mozilla/TaggedAnonymousMemory.h
+include/mozjs-%%SP_VER%%/mozilla/Tainting.h
+include/mozjs-%%SP_VER%%/mozilla/TemplateLib.h
+include/mozjs-%%SP_VER%%/mozilla/TextUtils.h
+include/mozjs-%%SP_VER%%/mozilla/ThreadLocal.h
+include/mozjs-%%SP_VER%%/mozilla/ThreadSafeWeakPtr.h
+include/mozjs-%%SP_VER%%/mozilla/ThreadSafety.h
+include/mozjs-%%SP_VER%%/mozilla/TimeStamp.h
+include/mozjs-%%SP_VER%%/mozilla/ToString.h
+include/mozjs-%%SP_VER%%/mozilla/Tuple.h
+include/mozjs-%%SP_VER%%/mozilla/TypeTraits.h
+include/mozjs-%%SP_VER%%/mozilla/TypedEnumBits.h
+include/mozjs-%%SP_VER%%/mozilla/Types.h
+include/mozjs-%%SP_VER%%/mozilla/UniquePtr.h
+include/mozjs-%%SP_VER%%/mozilla/UniquePtrExtensions.h
+include/mozjs-%%SP_VER%%/mozilla/Unused.h
+include/mozjs-%%SP_VER%%/mozilla/Uptime.h
+include/mozjs-%%SP_VER%%/mozilla/Utf8.h
+include/mozjs-%%SP_VER%%/mozilla/Variant.h
+include/mozjs-%%SP_VER%%/mozilla/Vector.h
+include/mozjs-%%SP_VER%%/mozilla/WeakPtr.h
+include/mozjs-%%SP_VER%%/mozilla/WrappingOperations.h
+include/mozjs-%%SP_VER%%/mozilla/XorShift128PlusRNG.h
+include/mozjs-%%SP_VER%%/mozilla/cxxalloc.h
+include/mozjs-%%SP_VER%%/mozilla/fallible.h
+include/mozjs-%%SP_VER%%/mozilla/glue/Debug.h
+include/mozjs-%%SP_VER%%/mozilla/glue/WinUtils.h
+include/mozjs-%%SP_VER%%/mozilla/intl/Bidi.h
+include/mozjs-%%SP_VER%%/mozilla/intl/BidiClass.h
+include/mozjs-%%SP_VER%%/mozilla/intl/BidiEmbeddingLevel.h
+include/mozjs-%%SP_VER%%/mozilla/intl/Calendar.h
+include/mozjs-%%SP_VER%%/mozilla/intl/Collator.h
+include/mozjs-%%SP_VER%%/mozilla/intl/Currency.h
+include/mozjs-%%SP_VER%%/mozilla/intl/DateIntervalFormat.h
+include/mozjs-%%SP_VER%%/mozilla/intl/DateTimeFormat.h
+include/mozjs-%%SP_VER%%/mozilla/intl/DateTimePart.h
+include/mozjs-%%SP_VER%%/mozilla/intl/DateTimePatternGenerator.h
+include/mozjs-%%SP_VER%%/mozilla/intl/DisplayNames.h
+include/mozjs-%%SP_VER%%/mozilla/intl/FormatBuffer.h
+include/mozjs-%%SP_VER%%/mozilla/intl/ICU4CGlue.h
+include/mozjs-%%SP_VER%%/mozilla/intl/ICU4CLibrary.h
+include/mozjs-%%SP_VER%%/mozilla/intl/ICUError.h
+include/mozjs-%%SP_VER%%/mozilla/intl/IDNA.h
+include/mozjs-%%SP_VER%%/mozilla/intl/ListFormat.h
+include/mozjs-%%SP_VER%%/mozilla/intl/Locale.h
+include/mozjs-%%SP_VER%%/mozilla/intl/LocaleCanonicalizer.h
+include/mozjs-%%SP_VER%%/mozilla/intl/MeasureUnit.h
+include/mozjs-%%SP_VER%%/mozilla/intl/MeasureUnitGenerated.h
+include/mozjs-%%SP_VER%%/mozilla/intl/NumberFormat.h
+include/mozjs-%%SP_VER%%/mozilla/intl/NumberParser.h
+include/mozjs-%%SP_VER%%/mozilla/intl/NumberPart.h
+include/mozjs-%%SP_VER%%/mozilla/intl/NumberRangeFormat.h
+include/mozjs-%%SP_VER%%/mozilla/intl/NumberingSystem.h
+include/mozjs-%%SP_VER%%/mozilla/intl/PluralRules.h
+include/mozjs-%%SP_VER%%/mozilla/intl/RelativeTimeFormat.h
+include/mozjs-%%SP_VER%%/mozilla/intl/String.h
+include/mozjs-%%SP_VER%%/mozilla/intl/TimeZone.h
+include/mozjs-%%SP_VER%%/mozilla/intl/UnicodeProperties.h
+include/mozjs-%%SP_VER%%/mozilla/intl/UnicodeScriptCodes.h
+include/mozjs-%%SP_VER%%/mozilla/leb128iterator.h
+include/mozjs-%%SP_VER%%/mozilla/mozalloc.h
+include/mozjs-%%SP_VER%%/mozilla/mozalloc_abort.h
+include/mozjs-%%SP_VER%%/mozilla/mozalloc_oom.h
+include/mozjs-%%SP_VER%%/mozjemalloc_types.h
+include/mozjs-%%SP_VER%%/mozmemory.h
+include/mozjs-%%SP_VER%%/mozmemory_wrap.h
+lib/libmozjs-%%SP_VER%%.so
+lib/libmozjs-%%SP_VER%%.so.1
+libdata/pkgconfig/mozjs-%%SP_VER%%.pc