summaryrefslogtreecommitdiffstats
path: root/source/l
diff options
context:
space:
mode:
Diffstat (limited to 'source/l')
-rwxr-xr-xsource/l/gjs/gjs.SlackBuild13
-rw-r--r--source/l/mozjs102/autoconf/autoconf-2.13-consolidated_fixes-1.patch (renamed from source/l/mozjs78/autoconf/autoconf-2.13-consolidated_fixes-1.patch)0
-rwxr-xr-xsource/l/mozjs102/autoconf/autoconf.build (renamed from source/l/mozjs78/autoconf/autoconf.build)0
-rw-r--r--source/l/mozjs102/double_t.x86.diff13
-rwxr-xr-xsource/l/mozjs102/mozjs102.SlackBuild (renamed from source/l/mozjs78/mozjs78.SlackBuild)30
-rw-r--r--source/l/mozjs102/patches/0001-Python-Build-Use-r-instead-of-rU-file-read-modes.patch109
-rw-r--r--source/l/mozjs102/patches/0001-Skip-failing-tests-on-ppc64-and-s390x.patch36
-rw-r--r--source/l/mozjs102/patches/copy-headers.patch (renamed from source/l/mozjs78/patches/copy-headers.patch)36
-rw-r--r--source/l/mozjs102/patches/emitter.patch67
-rw-r--r--source/l/mozjs102/patches/fix-soname.patch (renamed from source/l/mozjs78/patches/fix-soname.patch)10
-rw-r--r--source/l/mozjs102/patches/icu_sources_data-Write-command-output-to-our-stderr.patch44
-rw-r--r--source/l/mozjs102/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch (renamed from source/l/mozjs78/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch)7
-rw-r--r--source/l/mozjs102/patches/init_patch.patch28
-rw-r--r--source/l/mozjs102/patches/remove-sloppy-m4-detection-from-bundled-autoconf.patch29
-rw-r--r--source/l/mozjs102/patches/spidermonkey_checks_disable.patch22
-rw-r--r--source/l/mozjs102/patches/tests-Use-native-TemporaryDirectory.patch66
-rw-r--r--source/l/mozjs102/patches/tests-increase-timeout.patch (renamed from source/l/mozjs78/patches/tests-increase-timeout.patch)12
-rw-r--r--source/l/mozjs102/slack-desc20
-rw-r--r--source/l/mozjs78/patches/Fixup-compatibility-of-mozbuild-with-Python-3.10.patch297
-rw-r--r--source/l/mozjs78/patches/armv7_disable_WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS.patch10
-rw-r--r--source/l/mozjs78/patches/emitter.patch61
-rw-r--r--source/l/mozjs78/patches/icu_sources_data-Write-command-output-to-our-stderr.patch34
-rw-r--r--source/l/mozjs78/patches/init_patch.patch13
-rw-r--r--source/l/mozjs78/patches/spidermonkey_checks_disable.patch10
-rw-r--r--source/l/mozjs78/patches/spidermonkey_style_check_disable_s390x.patch11
-rw-r--r--source/l/mozjs78/slack-desc20
-rw-r--r--source/l/polkit/0001-configure-fix-elogind-support.patch29
-rw-r--r--source/l/polkit/CVE-2021-4115.patch71
-rw-r--r--source/l/polkit/a2bf5c9c83b6ae46cbd5c779d3055bff81ded683.patch79
-rw-r--r--source/l/polkit/doinst.sh4
-rwxr-xr-xsource/l/polkit/polkit.SlackBuild89
31 files changed, 524 insertions, 746 deletions
diff --git a/source/l/gjs/gjs.SlackBuild b/source/l/gjs/gjs.SlackBuild
index b5bea6bb3..8b3c5d146 100755
--- a/source/l/gjs/gjs.SlackBuild
+++ b/source/l/gjs/gjs.SlackBuild
@@ -1,8 +1,6 @@
#!/bin/sh
#
-# Slackware build script for gjs
-#
-# Copyright 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2020, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gjs
VERSION=${VERSION:-$(echo gjs-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -85,7 +83,8 @@ export CFLAGS="$SLKCFLAGS"
export CXXFLAGS="$SLKCFLAGS"
mkdir meson-build
cd meson-build
-meson setup \
+# Use "unshare -n" to avoid downloading sysprof:
+unshare -n meson setup \
--prefix=/usr \
--libdir=lib${LIBDIRSUFFIX} \
--libexecdir=/usr/libexec \
@@ -97,14 +96,12 @@ meson setup \
--sysconfdir=/etc \
--localstatedir=/var \
--buildtype=release \
+ -Dinstalled_tests=false \
.. || exit 1
"${NINJA:=ninja}" $NUMJOBS || exit 1
DESTDIR=$PKG $NINJA install || exit 1
cd ..
-# Don't ship .la files:
-rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
-
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
diff --git a/source/l/mozjs78/autoconf/autoconf-2.13-consolidated_fixes-1.patch b/source/l/mozjs102/autoconf/autoconf-2.13-consolidated_fixes-1.patch
index 5e7b23113..5e7b23113 100644
--- a/source/l/mozjs78/autoconf/autoconf-2.13-consolidated_fixes-1.patch
+++ b/source/l/mozjs102/autoconf/autoconf-2.13-consolidated_fixes-1.patch
diff --git a/source/l/mozjs78/autoconf/autoconf.build b/source/l/mozjs102/autoconf/autoconf.build
index 05e53f1a5..05e53f1a5 100755
--- a/source/l/mozjs78/autoconf/autoconf.build
+++ b/source/l/mozjs102/autoconf/autoconf.build
diff --git a/source/l/mozjs102/double_t.x86.diff b/source/l/mozjs102/double_t.x86.diff
new file mode 100644
index 000000000..12f04c378
--- /dev/null
+++ b/source/l/mozjs102/double_t.x86.diff
@@ -0,0 +1,13 @@
+--- ./modules/fdlibm/src/math_private.h.orig 2022-06-27 21:04:57.000000000 -0500
++++ ./modules/fdlibm/src/math_private.h 2022-06-30 13:41:46.761170878 -0500
+@@ -30,8 +30,8 @@
+ * Adapted from https://github.com/freebsd/freebsd-src/search?q=__double_t
+ */
+
+-typedef double __double_t;
+-typedef __double_t double_t;
++typedef long double __double_t;
++typedef long double double_t;
+
+ /*
+ * The original fdlibm code used statements like:
diff --git a/source/l/mozjs78/mozjs78.SlackBuild b/source/l/mozjs102/mozjs102.SlackBuild
index 9c0bdc5df..e5db5f3d4 100755
--- a/source/l/mozjs78/mozjs78.SlackBuild
+++ b/source/l/mozjs102/mozjs102.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for SpiderMonkey
# Copyright 2011, 2018 Robby Workman, Tuscaloosa, Alabama, USA
-# Copyright 2019, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2019, 2020, 2022 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
-PKGNAM=mozjs78
+PKGNAM=mozjs102
SRCNAME=firefox
VERSION=$(basename $(ls $SRCNAME-*.tar.?z | cut -d - -f 2 | rev | cut -f 3- -d . | rev) .source)
BUILD=${BUILD:-1}
@@ -33,7 +33,7 @@ BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i586 ;;
+ i?86) ARCH=i686 ;;
arm*) ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$( uname -m ) ;;
@@ -99,11 +99,16 @@ zcat $CWD/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch.g
zcat $CWD/patches/icu_sources_data-Write-command-output-to-our-stderr.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/patches/emitter.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/patches/init_patch.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/patches/0001-Python-Build-Use-r-instead-of-rU-file-read-modes.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/patches/0001-Skip-failing-tests-on-ppc64-and-s390x.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/patches/remove-sloppy-m4-detection-from-bundled-autoconf.patch.gz | patch -p1 --verbose || exit 1
zcat $CWD/patches/spidermonkey_checks_disable.patch.gz | patch -p1 --verbose || exit 1
-#zcat $CWD/patches/encies.armv7_disable_WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/patches/tests-Use-native-TemporaryDirectory.patch.gz | patch -p1 --verbose || exit 1
-# Patch to allow building with Python 3.10:
-zcat $CWD/patches/Fixup-compatibility-of-mozbuild-with-Python-3.10.patch.gz | patch -p1 --verbose || exit 1
+# Fix header mismatch on x86 with GCC:
+if [ "$ARCH" = "i686" ]; then
+ zcat $CWD/double_t.x86.diff.gz | patch -p1 --verbose || exit 1
+fi
# Remove bundled zlib directory and use system version:
rm -rf modules/zlib
@@ -121,14 +126,15 @@ CXXFLAGS+="$SLKCFLAGS -fno-delete-null-pointer-checks -fno-strict-aliasing -fno-
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
- --without-system-icu \
+ --with-system-icu \
--with-system-zlib \
- --enable-tests \
+ --disable-tests \
--disable-strip \
--with-intl-api \
--enable-readline \
--enable-shared-js \
- --disable-optimize \
+ --enable-optimize \
+ --disable-debug \
--enable-pie \
--disable-jemalloc \
--build=$ARCH-slackware-linux \
@@ -143,10 +149,10 @@ rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libjs_static.*
rm -f $PKG/usr/bin/js*-config
# Rename shared library to have a proper soname:
-mv $PKG/usr/lib${LIBDIRSUFFIX}/libmozjs-78.so $PKG/usr/lib${LIBDIRSUFFIX}/libmozjs-78.so.0.0.0
+mv $PKG/usr/lib${LIBDIRSUFFIX}/libmozjs-102.so $PKG/usr/lib${LIBDIRSUFFIX}/libmozjs-102.so.0.0.0
( cd $PKG/usr/lib${LIBDIRSUFFIX}
- ln -sf libmozjs-78.so.0.0.0 libmozjs-78.so.0
- ln -sf libmozjs-78.so.0 libmozjs-78.so
+ ln -sf libmozjs-102.so.0.0.0 libmozjs-102.so.0
+ ln -sf libmozjs-102.so.0 libmozjs-102.so
)
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
diff --git a/source/l/mozjs102/patches/0001-Python-Build-Use-r-instead-of-rU-file-read-modes.patch b/source/l/mozjs102/patches/0001-Python-Build-Use-r-instead-of-rU-file-read-modes.patch
new file mode 100644
index 000000000..a20d39afb
--- /dev/null
+++ b/source/l/mozjs102/patches/0001-Python-Build-Use-r-instead-of-rU-file-read-modes.patch
@@ -0,0 +1,109 @@
+From 0e790bd2eb846e90495eb81952cf35cc7fc8766a Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= <fzatlouk@redhat.com>
+Date: Mon, 27 Jun 2022 19:55:16 +0100
+Subject: [PATCH] Python/Build: Use r instead of rU file read modes
+
+Fixes Python 3.11 build
+---
+ python/mozbuild/mozbuild/action/process_define_files.py | 2 +-
+ python/mozbuild/mozbuild/backend/base.py | 2 +-
+ python/mozbuild/mozbuild/preprocessor.py | 6 +++---
+ python/mozbuild/mozbuild/util.py | 4 ++--
+ python/mozbuild/mozpack/files.py | 4 ++--
+ 5 files changed, 9 insertions(+), 9 deletions(-)
+
+diff --git a/python/mozbuild/mozbuild/action/process_define_files.py b/python/mozbuild/mozbuild/action/process_define_files.py
+index f1d401a..aca59d0 100644
+--- a/python/mozbuild/mozbuild/action/process_define_files.py
++++ b/python/mozbuild/mozbuild/action/process_define_files.py
+@@ -36,7 +36,7 @@ def process_define_file(output, input):
+ ) and not config.substs.get("JS_STANDALONE"):
+ config = PartialConfigEnvironment(mozpath.join(topobjdir, "js", "src"))
+
+- with open(path, "rU") as input:
++ with open(path, "r") as input:
+ r = re.compile(
+ "^\s*#\s*(?P<cmd>[a-z]+)(?:\s+(?P<name>\S+)(?:\s+(?P<value>\S+))?)?", re.U
+ )
+diff --git a/python/mozbuild/mozbuild/backend/base.py b/python/mozbuild/mozbuild/backend/base.py
+index 7bc1986..b64a709 100644
+--- a/python/mozbuild/mozbuild/backend/base.py
++++ b/python/mozbuild/mozbuild/backend/base.py
+@@ -272,7 +272,7 @@ class BuildBackend(LoggingMixin):
+ return status
+
+ @contextmanager
+- def _write_file(self, path=None, fh=None, readmode="rU"):
++ def _write_file(self, path=None, fh=None, readmode="r"):
+ """Context manager to write a file.
+
+ This is a glorified wrapper around FileAvoidWrite with integration to
+diff --git a/python/mozbuild/mozbuild/preprocessor.py b/python/mozbuild/mozbuild/preprocessor.py
+index f7820b9..857f1a6 100644
+--- a/python/mozbuild/mozbuild/preprocessor.py
++++ b/python/mozbuild/mozbuild/preprocessor.py
+@@ -531,7 +531,7 @@ class Preprocessor:
+
+ if args:
+ for f in args:
+- with io.open(f, "rU", encoding="utf-8") as input:
++ with io.open(f, "r", encoding="utf-8") as input:
+ self.processFile(input=input, output=out)
+ if depfile:
+ mk = Makefile()
+@@ -860,7 +860,7 @@ class Preprocessor:
+ args = self.applyFilters(args)
+ if not os.path.isabs(args):
+ args = os.path.join(self.curdir, args)
+- args = io.open(args, "rU", encoding="utf-8")
++ args = io.open(args, "r", encoding="utf-8")
+ except Preprocessor.Error:
+ raise
+ except Exception:
+@@ -914,7 +914,7 @@ class Preprocessor:
+ def preprocess(includes=[sys.stdin], defines={}, output=sys.stdout, marker="#"):
+ pp = Preprocessor(defines=defines, marker=marker)
+ for f in includes:
+- with io.open(f, "rU", encoding="utf-8") as input:
++ with io.open(f, "r", encoding="utf-8") as input:
+ pp.processFile(input=input, output=output)
+ return pp.includes
+
+diff --git a/python/mozbuild/mozbuild/util.py b/python/mozbuild/mozbuild/util.py
+index 071daec..b59aabb 100644
+--- a/python/mozbuild/mozbuild/util.py
++++ b/python/mozbuild/mozbuild/util.py
+@@ -236,7 +236,7 @@ class FileAvoidWrite(BytesIO):
+ still occur, as well as diff capture if requested.
+ """
+
+- def __init__(self, filename, capture_diff=False, dry_run=False, readmode="rU"):
++ def __init__(self, filename, capture_diff=False, dry_run=False, readmode="r"):
+ BytesIO.__init__(self)
+ self.name = filename
+ assert type(capture_diff) == bool
+diff --git a/python/mozbuild/mozpack/files.py b/python/mozbuild/mozpack/files.py
+index 8150e72..001c497 100644
+--- a/python/mozbuild/mozpack/files.py
++++ b/python/mozbuild/mozpack/files.py
+@@ -554,7 +554,7 @@ class PreprocessedFile(BaseFile):
+ pp = Preprocessor(defines=self.defines, marker=self.marker)
+ pp.setSilenceDirectiveWarnings(self.silence_missing_directive_warnings)
+
+- with _open(self.path, "rU") as input:
++ with _open(self.path, "r") as input:
+ with _open(os.devnull, "w") as output:
+ pp.processFile(input=input, output=output)
+
+@@ -611,7 +611,7 @@ class PreprocessedFile(BaseFile):
+ pp = Preprocessor(defines=self.defines, marker=self.marker)
+ pp.setSilenceDirectiveWarnings(self.silence_missing_directive_warnings)
+
+- with _open(self.path, "rU") as input:
++ with _open(self.path, "r") as input:
+ pp.processFile(input=input, output=dest, depfile=deps_out)
+
+ dest.close()
+--
+2.36.1
+
diff --git a/source/l/mozjs102/patches/0001-Skip-failing-tests-on-ppc64-and-s390x.patch b/source/l/mozjs102/patches/0001-Skip-failing-tests-on-ppc64-and-s390x.patch
new file mode 100644
index 000000000..5c2866473
--- /dev/null
+++ b/source/l/mozjs102/patches/0001-Skip-failing-tests-on-ppc64-and-s390x.patch
@@ -0,0 +1,36 @@
+From db3a0a25b97377b388532b23e73a10d246f66496 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= <fzatlouk@redhat.com>
+Date: Mon, 3 Aug 2020 10:27:00 +0200
+Subject: [PATCH] Skip failing tests on ppc64 and s390x
+
+ppc64 and s390x: non262/extensions/clone-errors.js
+s390x: test262/built-ins/TypedArray/prototype/set/typedarray-arg-set-values-same-buffer-other-type.js
+s390x, ppc64 and aarch64: test262/built-ins/Date/UTC/fp-evaluation-order.js
+---
+ js/src/tests/jstests.list | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/js/src/tests/jstests.list b/js/src/tests/jstests.list
+index 73ce42f..1797646 100644
+--- a/js/src/tests/jstests.list
++++ b/js/src/tests/jstests.list
+@@ -53,6 +53,15 @@ skip-if(!this.hasOwnProperty("Intl")) include test262/intl402/jstests.list
+ skip-if(!this.hasOwnProperty("Atomics")) include test262/built-ins/Atomics/jstests.list
+ skip-if(!this.hasOwnProperty("SharedArrayBuffer")) include test262/built-ins/SharedArrayBuffer/jstests.list
+
++# Crashes on s390x and ppc64, avoid it
++skip-if(xulRuntime.XPCOMABI.match(/s390x|ppc64-/)) script non262/extensions/clone-errors.js
++
++# Crashes on s390x, ppc64, aarch64
++skip-if(xulRuntime.XPCOMABI.match(/s390x|aarch64|ppc64-/)) script test262/built-ins/Date/UTC/fp-evaluation-order.js
++
++# Crashes on s390x, avoid it
++skip-if(xulRuntime.XPCOMABI.match(/s390x/)) script test262/built-ins/TypedArray/prototype/set/typedarray-arg-set-values-same-buffer-other-type.js
++
+ #####################################
+ # Test262 tests disabled on browser #
+ #####################################
+--
+2.31.1
+
+
diff --git a/source/l/mozjs78/patches/copy-headers.patch b/source/l/mozjs102/patches/copy-headers.patch
index dfa1fdbee..dfddcfaee 100644
--- a/source/l/mozjs78/patches/copy-headers.patch
+++ b/source/l/mozjs102/patches/copy-headers.patch
@@ -9,30 +9,30 @@ Patch by Philip Chimento ported forward to mozjs78
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/python/mozbuild/mozbuild/backend/recursivemake.py b/python/mozbuild/mozbuild/backend/recursivemake.py
-index e3fc8fe..bed5ae9 100644
+index 858d4d4..8c229e8 100644
--- a/python/mozbuild/mozbuild/backend/recursivemake.py
+++ b/python/mozbuild/mozbuild/backend/recursivemake.py
-@@ -1457,9 +1457,9 @@ class RecursiveMakeBackend(MakeBackend):
- raise Exception("Wildcards are only supported in the filename part"
- " of srcdir-relative or absolute paths.")
-
-- install_manifest.add_pattern_link(basepath, wild, path)
-+ install_manifest.add_pattern_copy(basepath, wild, path)
+@@ -1533,9 +1533,9 @@ class RecursiveMakeBackend(MakeBackend):
+ " of srcdir-relative or absolute paths."
+ )
+
+- install_manifest.add_pattern_link(basepath, wild, dest_dir)
++ install_manifest.add_pattern_copy(basepath, wild, dest_dir)
else:
-- install_manifest.add_pattern_link(f.srcdir, f, path)
-+ install_manifest.add_pattern_copy(f.srcdir, f, path)
+- install_manifest.add_pattern_link(f.srcdir, f, dest_dir)
++ install_manifest.add_pattern_copy(f.srcdir, f, dest_dir)
elif isinstance(f, AbsolutePath):
- if not f.full_path.lower().endswith(('.dll', '.pdb', '.so')):
- raise Exception("Absolute paths installed to FINAL_TARGET_FILES must"
-@@ -1468,7 +1468,7 @@ class RecursiveMakeBackend(MakeBackend):
- install_manifest.add_optional_exists(dest)
+ if not f.full_path.lower().endswith((".dll", ".pdb", ".so")):
+ raise Exception(
+@@ -1546,7 +1546,7 @@ class RecursiveMakeBackend(MakeBackend):
+ install_manifest.add_optional_exists(dest_file)
absolute_files.append(f.full_path)
else:
-- install_manifest.add_link(f.full_path, dest)
-+ install_manifest.add_copy(f.full_path, dest)
+- install_manifest.add_link(f.full_path, dest_file)
++ install_manifest.add_copy(f.full_path, dest_file)
else:
- install_manifest.add_optional_exists(dest)
+ install_manifest.add_optional_exists(dest_file)
objdir_files.append(self._pretty_path(f, backend_file))
---
-2.26.2
+--
+2.37.1
diff --git a/source/l/mozjs102/patches/emitter.patch b/source/l/mozjs102/patches/emitter.patch
new file mode 100644
index 000000000..8d5aafb15
--- /dev/null
+++ b/source/l/mozjs102/patches/emitter.patch
@@ -0,0 +1,67 @@
+From d1d785c169345b81c76213f6dd9be32b4db60294 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= <fzatlouk@redhat.com>
+Date: Wed, 15 Jul 2020 08:39:47 +0200
+Subject: [PATCH] Build: allow LOCAL_INCLUDES paths with topsrcdir or topobjdir
+
+---
+ python/mozbuild/mozbuild/frontend/emitter.py | 10 ---------
+ .../mozbuild/test/frontend/test_emitter.py | 22 -------------------
+ 2 files changed, 32 deletions(-)
+
+diff --git a/python/mozbuild/mozbuild/frontend/emitter.py b/python/mozbuild/mozbuild/frontend/emitter.py
+index 0b7ccef..a3c7f2f 100644
+--- a/python/mozbuild/mozbuild/frontend/emitter.py
++++ b/python/mozbuild/mozbuild/frontend/emitter.py
+@@ -1365,16 +1365,6 @@ class TreeMetadataEmitter(LoggingMixin):
+ "(resolved to %s)" % (local_include, full_path),
+ context,
+ )
+- if (
+- full_path == context.config.topsrcdir
+- or full_path == context.config.topobjdir
+- ):
+- raise SandboxValidationError(
+- "Path specified in LOCAL_INCLUDES "
+- "(%s) resolves to the topsrcdir or topobjdir (%s), which is "
+- "not allowed" % (local_include, full_path),
+- context,
+- )
+ include_obj = LocalInclude(context, local_include)
+ local_includes.append(include_obj.path.full_path)
+ yield include_obj
+diff --git a/python/mozbuild/mozbuild/test/frontend/test_emitter.py b/python/mozbuild/mozbuild/test/frontend/test_emitter.py
+index 99507fc..821de22 100644
+--- a/python/mozbuild/mozbuild/test/frontend/test_emitter.py
++++ b/python/mozbuild/mozbuild/test/frontend/test_emitter.py
+@@ -1076,28 +1076,6 @@ class TestEmitterBasic(unittest.TestCase):
+
+ self.assertEqual(local_includes, expected)
+
+- def test_local_includes_invalid(self):
+- """Test that invalid LOCAL_INCLUDES are properly detected."""
+- reader = self.reader("local_includes-invalid/srcdir")
+-
+- with six.assertRaisesRegex(
+- self,
+- SandboxValidationError,
+- "Path specified in LOCAL_INCLUDES.*resolves to the "
+- "topsrcdir or topobjdir",
+- ):
+- self.read_topsrcdir(reader)
+-
+- reader = self.reader("local_includes-invalid/objdir")
+-
+- with six.assertRaisesRegex(
+- self,
+- SandboxValidationError,
+- "Path specified in LOCAL_INCLUDES.*resolves to the "
+- "topsrcdir or topobjdir",
+- ):
+- self.read_topsrcdir(reader)
+-
+ def test_local_includes_file(self):
+ """Test that a filename can't be used in LOCAL_INCLUDES."""
+ reader = self.reader("local_includes-filename")
+--
+2.37.1
+
diff --git a/source/l/mozjs78/patches/fix-soname.patch b/source/l/mozjs102/patches/fix-soname.patch
index 30894e44d..832326489 100644
--- a/source/l/mozjs78/patches/fix-soname.patch
+++ b/source/l/mozjs102/patches/fix-soname.patch
@@ -9,18 +9,18 @@ Fix backported from Debian: http://bugs.debian.org/746705
1 file changed, 2 insertions(+)
diff --git a/config/rules.mk b/config/rules.mk
-index 3965c88..3f92f83 100644
+index 90a9946..dc87789 100644
--- a/config/rules.mk
+++ b/config/rules.mk
-@@ -320,6 +320,8 @@ ifeq ($(OS_ARCH),GNU)
+@@ -291,6 +291,8 @@ ifeq ($(OS_ARCH),GNU)
OS_CPPFLAGS += -DPATH_MAX=1024 -DMAXPATHLEN=1024
endif
-
+
+EXTRA_DSO_LDOPTS += -Wl,-soname,lib$(JS_LIBRARY_NAME).so.0
+
#
# MINGW32
#
---
-2.26.2
+--
+2.37.1
diff --git a/source/l/mozjs102/patches/icu_sources_data-Write-command-output-to-our-stderr.patch b/source/l/mozjs102/patches/icu_sources_data-Write-command-output-to-our-stderr.patch
new file mode 100644
index 000000000..84684250c
--- /dev/null
+++ b/source/l/mozjs102/patches/icu_sources_data-Write-command-output-to-our-stderr.patch
@@ -0,0 +1,44 @@
+From: Simon McVittie <smcv@debian.org>
+Date: Mon, 9 Oct 2017 09:23:14 +0100
+Subject: icu_sources_data: Write command output to our stderr
+
+Saying "See output in /tmp/foobar" is all very well for a developer
+build, but on a buildd our /tmp is going to get thrown away after
+the build. Just log the usual way instead.
+---
+ intl/icu_sources_data.py | 16 ++++------------
+ 1 file changed, 4 insertions(+), 12 deletions(-)
+
+diff --git a/intl/icu_sources_data.py b/intl/icu_sources_data.py
+index 4db52af..d62960d 100644
+--- a/intl/icu_sources_data.py
++++ b/intl/icu_sources_data.py
+@@ -188,21 +188,13 @@ def update_sources(topsrcdir):
+
+ def try_run(name, command, cwd=None, **kwargs):
+ try:
+- with tempfile.NamedTemporaryFile(prefix=name, delete=False) as f:
+- subprocess.check_call(
+- command, cwd=cwd, stdout=f, stderr=subprocess.STDOUT, **kwargs
+- )
+- except subprocess.CalledProcessError:
+- print(
+- """Error running "{}" in directory {}
+- See output in {}""".format(
+- " ".join(command), cwd, f.name
+- ),
+- file=sys.stderr,
++ subprocess.check_call(
++ command, cwd=cwd, stdout=sys.stderr, stderr=subprocess.STDOUT, **kwargs
+ )
++ except subprocess.CalledProcessError:
++ print('''Error running "{}" in directory {}'''.format(' '.join(command), cwd), file=sys.stderr)
+ return False
+ else:
+- os.unlink(f.name)
+ return True
+
+
+--
+2.31.1
+
diff --git a/source/l/mozjs78/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch b/source/l/mozjs102/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch
index a853a16d1..8572c21fd 100644
--- a/source/l/mozjs78/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch
+++ b/source/l/mozjs102/patches/icu_sources_data.py-Decouple-from-Mozilla-build-system.patch
@@ -10,10 +10,10 @@ so there's nothing to normalize. Avoid needing to import all of it.
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/intl/icu_sources_data.py b/intl/icu_sources_data.py
-index 98c0ccb..8cf9290 100644
+index 2936df9..4db52af 100644
--- a/intl/icu_sources_data.py
+++ b/intl/icu_sources_data.py
-@@ -21,7 +21,9 @@
+@@ -21,7 +21,9 @@ import subprocess
import sys
import tempfile
@@ -24,3 +24,6 @@ index 98c0ccb..8cf9290 100644
# The following files have been determined to be dead/unused by a
# semi-automated analysis. You can just remove any of the files below
+--
+2.31.1
+
diff --git a/source/l/mozjs102/patches/init_patch.patch b/source/l/mozjs102/patches/init_patch.patch
new file mode 100644
index 000000000..28ed1d31a
--- /dev/null
+++ b/source/l/mozjs102/patches/init_patch.patch
@@ -0,0 +1,28 @@
+From 00414eb67ab0591911167155963b5524fbf2b0c0 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= <fzatlouk@redhat.com>
+Date: Mon, 9 Aug 2021 14:38:58 +0200
+Subject: [PATCH] Don't throw InvalidOptionError on invalid options
+
+---
+ python/mozbuild/mozbuild/configure/__init__.py | 5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+diff --git a/python/mozbuild/mozbuild/configure/__init__.py b/python/mozbuild/mozbuild/configure/__init__.py
+index f3167f6..c9e1132 100644
+--- a/python/mozbuild/mozbuild/configure/__init__.py
++++ b/python/mozbuild/mozbuild/configure/__init__.py
+@@ -557,10 +557,7 @@ class ConfigureSandbox(dict):
+ for arg in self._helper:
+ without_value = arg.split("=", 1)[0]
+ msg = "Unknown option: %s" % without_value
+- if self._help:
+- self._logger.warning(msg)
+- else:
+- raise InvalidOptionError(msg)
++ self._logger.warning(msg)
+
+ # Run the execution queue
+ for func, args in self._execution_queue:
+--
+2.31.1
+
diff --git a/source/l/mozjs102/patches/remove-sloppy-m4-detection-from-bundled-autoconf.patch b/source/l/mozjs102/patches/remove-sloppy-m4-detection-from-bundled-autoconf.patch
new file mode 100644
index 000000000..10b8b16ea
--- /dev/null
+++ b/source/l/mozjs102/patches/remove-sloppy-m4-detection-from-bundled-autoconf.patch
@@ -0,0 +1,29 @@
+From 2d99a7b076578a3394fb9d5be6eb44f9cfebc681 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= <fzatlouk@redhat.com>
+Date: Mon, 9 Aug 2021 16:15:37 +0200
+Subject: [PATCH] Remove sloppy m4 detection from bundled autoconf
+
+---
+ build/autoconf/autoconf.sh | 6 ------
+ 1 file changed, 6 deletions(-)
+
+diff --git a/build/autoconf/autoconf.sh b/build/autoconf/autoconf.sh
+index ceb8a25..606c74e 100644
+--- a/build/autoconf/autoconf.sh
++++ b/build/autoconf/autoconf.sh
+@@ -114,12 +114,6 @@ fi
+
+ # Use the frozen version of Autoconf if available.
+ r= f=
+-# Some non-GNU m4's don't reject the --help option, so give them /dev/null.
+-case `$M4 --help < /dev/null 2>&1` in
+-*reload-state*) test -r $AC_MACRODIR/autoconf.m4f && { r=--reload f=f; } ;;
+-*traditional*) ;;
+-*) echo Autoconf requires GNU m4 1.1 or later >&2; rm -f $tmpin; exit 1 ;;
+-esac
+
+ $M4 -I$AC_MACRODIR $use_localdir $r autoconf.m4$f $infile > $tmpout ||
+ { rm -f $tmpin $tmpout; exit 2; }
+--
+2.31.1
+
diff --git a/source/l/mozjs102/patches/spidermonkey_checks_disable.patch b/source/l/mozjs102/patches/spidermonkey_checks_disable.patch
new file mode 100644
index 000000000..451d3eef4
--- /dev/null
+++ b/source/l/mozjs102/patches/spidermonkey_checks_disable.patch
@@ -0,0 +1,22 @@
+From 6ebe8ce6a3267c96454de3cd453269b4c4053a3e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= <fzatlouk@redhat.com>
+Date: Mon, 9 Aug 2021 14:41:14 +0200
+Subject: [PATCH] Don't die on SpiderMonkey checks
+
+---
+ config/run_spidermonkey_checks.py | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/config/run_spidermonkey_checks.py b/config/run_spidermonkey_checks.py
+index 0f842d9..b49db52 100644
+--- a/config/run_spidermonkey_checks.py
++++ b/config/run_spidermonkey_checks.py
+@@ -11,5 +11,3 @@ import sys
+ def main(output, lib_file, *scripts):
+ for script in scripts:
+ retcode = subprocess.call([sys.executable, script], cwd=buildconfig.topsrcdir)
+- if retcode != 0:
+- raise Exception(script + " failed")
+--
+2.31.1
+
diff --git a/source/l/mozjs102/patches/tests-Use-native-TemporaryDirectory.patch b/source/l/mozjs102/patches/tests-Use-native-TemporaryDirectory.patch
new file mode 100644
index 000000000..054685c1e
--- /dev/null
+++ b/source/l/mozjs102/patches/tests-Use-native-TemporaryDirectory.patch
@@ -0,0 +1,66 @@
+From 1af9fdd2124547099eb0cf5a71b513ef5592dbf9 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= <fzatlouk@redhat.com>
+Date: Tue, 10 Aug 2021 00:00:50 +0200
+Subject: [PATCH] Tests: Use native TemporaryDirectory
+
+Without ugly wrapper for Py < 3.2 that doesn't work half of the times...
+---
+ js/src/jit-test/jit_test.py | 2 +-
+ js/src/tests/jstests.py | 2 +-
+ js/src/tests/lib/tempfile.py | 17 +----------------
+ 3 files changed, 3 insertions(+), 18 deletions(-)
+
+diff --git a/js/src/jit-test/jit_test.py b/js/src/jit-test/jit_test.py
+index f5d7794..8d443aa 100755
+--- a/js/src/jit-test/jit_test.py
++++ b/js/src/jit-test/jit_test.py
+@@ -38,7 +38,7 @@ from lib.tests import (
+ get_environment_overlay,
+ change_env,
+ )
+-from lib.tempfile import TemporaryDirectory
++from tempfile import TemporaryDirectory
+
+
+ def which(name):
+diff --git a/js/src/tests/jstests.py b/js/src/tests/jstests.py
+index 6fa2f5f..53ceff6 100755
+--- a/js/src/tests/jstests.py
++++ b/js/src/tests/jstests.py
+@@ -37,7 +37,7 @@ from lib.tests import (
+ from lib.results import ResultsSink, TestOutput
+ from lib.progressbar import ProgressBar
+ from lib.adaptor import xdr_annotate
+-from lib.tempfile import TemporaryDirectory
++from tempfile import TemporaryDirectory
+
+ if sys.platform.startswith("linux") or sys.platform.startswith("darwin"):
+ from lib.tasks_unix import run_all_tests
+diff --git a/js/src/tests/lib/tempfile.py b/js/src/tests/lib/tempfile.py
+index ecc21c9..f0a1fa3 100644
+--- a/js/src/tests/lib/tempfile.py
++++ b/js/src/tests/lib/tempfile.py
+@@ -2,19 +2,4 @@
+ # 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/.
+ from __future__ import absolute_import
+-
+-try:
+- # Python 3.2
+- from tempfile import TemporaryDirectory
+-except ImportError:
+- import tempfile
+- import shutil
+- from contextlib import contextmanager
+-
+- @contextmanager
+- def TemporaryDirectory(*args, **kwds):
+- d = tempfile.mkdtemp(*args, **kwds)
+- try:
+- yield d
+- finally:
+- shutil.rmtree(d)
++from tempfile import TemporaryDirectory
+--
+2.31.1
+
diff --git a/source/l/mozjs78/patches/tests-increase-timeout.patch b/source/l/mozjs102/patches/tests-increase-timeout.patch
index c86cca403..2ba725ce9 100644
--- a/source/l/mozjs78/patches/tests-increase-timeout.patch
+++ b/source/l/mozjs102/patches/tests-increase-timeout.patch
@@ -9,18 +9,18 @@ Ported forward from Debian: https://bugs.debian.org/878284
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/js/src/Makefile.in b/js/src/Makefile.in
-index b86aeed..d68655a 100644
+index 6daed72..16db2de 100644
--- a/js/src/Makefile.in
+++ b/js/src/Makefile.in
@@ -53,7 +53,7 @@ check:: check-js-msg
-
+
check-jstests:
$(wildcard $(RUN_TEST_PROGRAM)) $(PYTHON3) -u $(srcdir)/tests/jstests.py \
- --no-progress --format=automation --timeout 300 \
+ --no-progress --format=automation --timeout 600 \
$(JSTESTS_EXTRA_ARGS) \
- $(DIST)/bin/$(JS_SHELL_NAME)$(BIN_SUFFIX)
-
---
-2.26.2
+ $(DIST)/bin/js$(BIN_SUFFIX)
+
+--
+2.37.1
diff --git a/source/l/mozjs102/slack-desc b/source/l/mozjs102/slack-desc
new file mode 100644
index 000000000..00b13046e
--- /dev/null
+++ b/source/l/mozjs102/slack-desc
@@ -0,0 +1,20 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+mozjs102: mozjs102 (Mozilla's JavaScript Engine)
+mozjs102:
+mozjs102: SpiderMonkey is Mozilla's JavaScript engine written in C/C++. It is
+mozjs102: used in various Mozilla products (including Firefox) and is available
+mozjs102: under MPL/GPL/LGPL tri-license.
+mozjs102:
+mozjs102: Homepage:
+mozjs102: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey
+mozjs102:
+mozjs102:
+mozjs102:
+mozjs102:
diff --git a/source/l/mozjs78/patches/Fixup-compatibility-of-mozbuild-with-Python-3.10.patch b/source/l/mozjs78/patches/Fixup-compatibility-of-mozbuild-with-Python-3.10.patch
deleted file mode 100644
index 6a27d5bcf..000000000
--- a/source/l/mozjs78/patches/Fixup-compatibility-of-mozbuild-with-Python-3.10.patch
+++ /dev/null
@@ -1,297 +0,0 @@
-From a88d0c8e27b48344942187c2611bb121bde9332d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= <fzatlouk@redhat.com>
-Date: Tue, 13 Jul 2021 11:46:20 +0200
-Subject: [PATCH] Fixup compatibility of mozbuild with Python 3.10
-
----
- python/mach/mach/config.py | 4 ++--
- python/mach/mach/decorators.py | 2 +-
- python/mozbuild/mozbuild/backend/configenvironment.py | 3 ++-
- python/mozbuild/mozbuild/makeutil.py | 2 +-
- python/mozbuild/mozbuild/util.py | 2 +-
- testing/marionette/client/marionette_driver/wait.py | 2 +-
- testing/mozbase/manifestparser/manifestparser/filters.py | 3 ++-
- testing/mozbase/versioninfo.py | 2 +-
- testing/web-platform/tests/tools/manifest/vcs.py | 2 +-
- .../web-platform/tests/tools/third_party/h2/h2/settings.py | 2 +-
- .../tests/tools/third_party/html5lib/html5lib/_trie/_base.py | 2 +-
- .../tools/third_party/html5lib/html5lib/treebuilders/dom.py | 2 +-
- .../tests/tools/third_party/hyper/hyper/common/headers.py | 2 +-
- .../tests/tools/third_party/hyper/hyper/h2/settings.py | 2 +-
- .../tests/tools/third_party/hyper/hyper/http11/connection.py | 4 ++--
- .../third_party/hyper/hyper/packages/hyperframe/flags.py | 2 +-
- .../tests/tools/third_party/hyperframe/hyperframe/flags.py | 2 +-
- testing/web-platform/tests/tools/wptserve/wptserve/config.py | 3 ++-
- testing/web-platform/tests/webdriver/tests/support/sync.py | 2 +-
- 19 files changed, 24 insertions(+), 21 deletions(-)
-
-diff --git a/python/mach/mach/config.py b/python/mach/mach/config.py
-index 7210eca82..edb4d2e93 100644
---- a/python/mach/mach/config.py
-+++ b/python/mach/mach/config.py
-@@ -144,7 +144,7 @@ def reraise_attribute_error(func):
- return _
-
-
--class ConfigSettings(collections.Mapping):
-+class ConfigSettings(collections.abc.Mapping):
- """Interface for configuration settings.
-
- This is the main interface to the configuration.
-@@ -190,7 +190,7 @@ class ConfigSettings(collections.Mapping):
- will result in exceptions being raised.
- """
-
-- class ConfigSection(collections.MutableMapping, object):
-+ class ConfigSection(collections.abc.MutableMapping, object):
- """Represents an individual config section."""
- def __init__(self, config, name, settings):
- object.__setattr__(self, '_config', config)
-diff --git a/python/mach/mach/decorators.py b/python/mach/mach/decorators.py
-index 27f7f34a6..5f63271a3 100644
---- a/python/mach/mach/decorators.py
-+++ b/python/mach/mach/decorators.py
-@@ -140,7 +140,7 @@ def CommandProvider(cls):
- 'Conditions argument must take a list ' + \
- 'of functions. Found %s instead.'
-
-- if not isinstance(command.conditions, collections.Iterable):
-+ if not isinstance(command.conditions, collections.abc.Iterable):
- msg = msg % (command.name, type(command.conditions))
- raise MachError(msg)
-
-diff --git a/python/mozbuild/mozbuild/backend/configenvironment.py b/python/mozbuild/mozbuild/backend/configenvironment.py
-index 20d1a9fa6..8747958bd 100644
---- a/python/mozbuild/mozbuild/backend/configenvironment.py
-+++ b/python/mozbuild/mozbuild/backend/configenvironment.py
-@@ -9,7 +9,8 @@ import six
- import sys
- import json
-
--from collections import Iterable, OrderedDict
-+from collections import OrderedDict
-+from collections.abc import Iterable
- from types import ModuleType
-
- import mozpack.path as mozpath
-diff --git a/python/mozbuild/mozbuild/makeutil.py b/python/mozbuild/mozbuild/makeutil.py
-index 4da1a3b26..4ce56848c 100644
---- a/python/mozbuild/mozbuild/makeutil.py
-+++ b/python/mozbuild/mozbuild/makeutil.py
-@@ -7,7 +7,7 @@ from __future__ import absolute_import, print_function, unicode_literals
- import os
- import re
- import six
--from collections import Iterable
-+from collections.abc import Iterable
-
-
- class Makefile(object):
-diff --git a/python/mozbuild/mozbuild/util.py b/python/mozbuild/mozbuild/util.py
-index 044cf645c..98ed3ef52 100644
---- a/python/mozbuild/mozbuild/util.py
-+++ b/python/mozbuild/mozbuild/util.py
-@@ -782,7 +782,7 @@ class HierarchicalStringList(object):
- self._strings = StrictOrderingOnAppendList()
- self._children = {}
-
-- class StringListAdaptor(collections.Sequence):
-+ class StringListAdaptor(collections.abc.Sequence):
- def __init__(self, hsl):
- self._hsl = hsl
-
-diff --git a/testing/marionette/client/marionette_driver/wait.py b/testing/marionette/client/marionette_driver/wait.py
-index eeaa1e23d..c147f463f 100644
---- a/testing/marionette/client/marionette_driver/wait.py
-+++ b/testing/marionette/client/marionette_driver/wait.py
-@@ -82,7 +82,7 @@ class Wait(object):
-
- exceptions = []
- if ignored_exceptions is not None:
-- if isinstance(ignored_exceptions, collections.Iterable):
-+ if isinstance(ignored_exceptions, collections.abc.Iterable):
- exceptions.extend(iter(ignored_exceptions))
- else:
- exceptions.append(ignored_exceptions)
-diff --git a/testing/mozbase/manifestparser/manifestparser/filters.py b/testing/mozbase/manifestparser/manifestparser/filters.py
-index 287ee033b..b1d608003 100644
---- a/testing/mozbase/manifestparser/manifestparser/filters.py
-+++ b/testing/mozbase/manifestparser/manifestparser/filters.py
-@@ -12,7 +12,8 @@ from __future__ import absolute_import
-
- import itertools
- import os
--from collections import defaultdict, MutableSequence
-+from collections import defaultdict
-+from collections.abc import MutableSequence
-
- import six
- from six import string_types
-diff --git a/testing/mozbase/versioninfo.py b/testing/mozbase/versioninfo.py
-index 91d1a0473..8c1680069 100755
---- a/testing/mozbase/versioninfo.py
-+++ b/testing/mozbase/versioninfo.py
-@@ -11,7 +11,7 @@ from commit messages.
-
- from __future__ import absolute_import, print_function
-
--from collections import Iterable
-+from collections.abc import Iterable
- from distutils.version import StrictVersion
- import argparse
- import os
-diff --git a/testing/web-platform/tests/tools/manifest/vcs.py b/testing/web-platform/tests/tools/manifest/vcs.py
-index 7c0feeb81..05ee19c7c 100644
---- a/testing/web-platform/tests/tools/manifest/vcs.py
-+++ b/testing/web-platform/tests/tools/manifest/vcs.py
-@@ -3,7 +3,7 @@ import json
- import os
- import stat
- from collections import deque
--from collections import MutableMapping
-+from collections.abc import MutableMapping
-
- from six import with_metaclass, PY2
-
-diff --git a/testing/web-platform/tests/tools/third_party/h2/h2/settings.py b/testing/web-platform/tests/tools/third_party/h2/h2/settings.py
-index 3da720329..e097630e9 100644
---- a/testing/web-platform/tests/tools/third_party/h2/h2/settings.py
-+++ b/testing/web-platform/tests/tools/third_party/h2/h2/settings.py
-@@ -88,7 +88,7 @@ class ChangedSetting:
- )
-
-
--class Settings(collections.MutableMapping):
-+class Settings(collections.abc.MutableMapping):
- """
- An object that encapsulates HTTP/2 settings state.
-
-diff --git a/testing/web-platform/tests/tools/third_party/html5lib/html5lib/_trie/_base.py b/testing/web-platform/tests/tools/third_party/html5lib/html5lib/_trie/_base.py
-index a1158bbbf..a9295a2ba 100644
---- a/testing/web-platform/tests/tools/third_party/html5lib/html5lib/_trie/_base.py
-+++ b/testing/web-platform/tests/tools/third_party/html5lib/html5lib/_trie/_base.py
-@@ -1,6 +1,6 @@
- from __future__ import absolute_import, division, unicode_literals
-
--from collections import Mapping
-+from collections.abc import Mapping
-
-
- class Trie(Mapping):
-diff --git a/testing/web-platform/tests/tools/third_party/html5lib/html5lib/treebuilders/dom.py b/testing/web-platform/tests/tools/third_party/html5lib/html5lib/treebuilders/dom.py
-index dcfac220b..818a33433 100644
---- a/testing/web-platform/tests/tools/third_party/html5lib/html5lib/treebuilders/dom.py
-+++ b/testing/web-platform/tests/tools/third_party/html5lib/html5lib/treebuilders/dom.py
-@@ -1,7 +1,7 @@
- from __future__ import absolute_import, division, unicode_literals
-
-
--from collections import MutableMapping
-+from collections.abc import MutableMapping
- from xml.dom import minidom, Node
- import weakref
-
-diff --git a/testing/web-platform/tests/tools/third_party/hyper/hyper/common/headers.py b/testing/web-platform/tests/tools/third_party/hyper/hyper/common/headers.py
-index 655a591ac..6454f550a 100644
---- a/testing/web-platform/tests/tools/third_party/hyper/hyper/common/headers.py
-+++ b/testing/web-platform/tests/tools/third_party/hyper/hyper/common/headers.py
-@@ -10,7 +10,7 @@ import collections
- from hyper.common.util import to_bytestring, to_bytestring_tuple
-
-
--class HTTPHeaderMap(collections.MutableMapping):
-+class HTTPHeaderMap(collections.abc.MutableMapping):
- """
- A structure that contains HTTP headers.
-
-diff --git a/testing/web-platform/tests/tools/third_party/hyper/hyper/h2/settings.py b/testing/web-platform/tests/tools/third_party/hyper/hyper/h2/settings.py
-index fedc5e3c4..040afea92 100755
---- a/testing/web-platform/tests/tools/third_party/hyper/hyper/h2/settings.py
-+++ b/testing/web-platform/tests/tools/third_party/hyper/hyper/h2/settings.py
-@@ -151,7 +151,7 @@ class ChangedSetting:
- )
-
-
--class Settings(collections.MutableMapping):
-+class Settings(collections.abc.MutableMapping):
- """
- An object that encapsulates HTTP/2 settings state.
-
-diff --git a/testing/web-platform/tests/tools/third_party/hyper/hyper/http11/connection.py b/testing/web-platform/tests/tools/third_party/hyper/hyper/http11/connection.py
-index 61361c358..a214311d2 100644
---- a/testing/web-platform/tests/tools/third_party/hyper/hyper/http11/connection.py
-+++ b/testing/web-platform/tests/tools/third_party/hyper/hyper/http11/connection.py
-@@ -10,7 +10,7 @@ import os
- import socket
- import base64
-
--from collections import Iterable, Mapping
-+from collections.abc import Iterable, Mapping
-
- import collections
- from hyperframe.frame import SettingsFrame
-@@ -295,7 +295,7 @@ class HTTP11Connection(object):
- return
-
- # Iterables that set a specific content length.
-- elif isinstance(body, collections.Iterable):
-+ elif isinstance(body, collections.abc.Iterable):
- for item in body:
- try:
- self._sock.send(item)
-diff --git a/testing/web-platform/tests/tools/third_party/hyper/hyper/packages/hyperframe/flags.py b/testing/web-platform/tests/tools/third_party/hyper/hyper/packages/hyperframe/flags.py
-index e8f630056..8f2ea689b 100644
---- a/testing/web-platform/tests/tools/third_party/hyper/hyper/packages/hyperframe/flags.py
-+++ b/testing/web-platform/tests/tools/third_party/hyper/hyper/packages/hyperframe/flags.py
-@@ -11,7 +11,7 @@ import collections
- Flag = collections.namedtuple("Flag", ["name", "bit"])
-
-
--class Flags(collections.MutableSet):
-+class Flags(collections.abc.MutableSet):
- """
- A simple MutableSet implementation that will only accept known flags as elements.
-
-diff --git a/testing/web-platform/tests/tools/third_party/hyperframe/hyperframe/flags.py b/testing/web-platform/tests/tools/third_party/hyperframe/hyperframe/flags.py
-index 05b35017e..14c352e10 100644
---- a/testing/web-platform/tests/tools/third_party/hyperframe/hyperframe/flags.py
-+++ b/testing/web-platform/tests/tools/third_party/hyperframe/hyperframe/flags.py
-@@ -11,7 +11,7 @@ import collections
- Flag = collections.namedtuple("Flag", ["name", "bit"])
-
-
--class Flags(collections.MutableSet):
-+class Flags(collections.abc.MutableSet):
- """
- A simple MutableSet implementation that will only accept known flags as
- elements.
-diff --git a/testing/web-platform/tests/tools/wptserve/wptserve/config.py b/testing/web-platform/tests/tools/wptserve/wptserve/config.py
-index 7766565fe..3c1c36d6f 100644
---- a/testing/web-platform/tests/tools/wptserve/wptserve/config.py
-+++ b/testing/web-platform/tests/tools/wptserve/wptserve/config.py
-@@ -2,7 +2,8 @@ import copy
- import logging
- import os
-
--from collections import defaultdict, Mapping
-+from collections import defaultdict
-+from collections.abc import Mapping
- from six import integer_types, iteritems, itervalues, string_types
-
- from . import sslutils
-diff --git a/testing/web-platform/tests/webdriver/tests/support/sync.py b/testing/web-platform/tests/webdriver/tests/support/sync.py
-index 3fc77131c..8e8f6b819 100644
---- a/testing/web-platform/tests/webdriver/tests/support/sync.py
-+++ b/testing/web-platform/tests/webdriver/tests/support/sync.py
-@@ -81,7 +81,7 @@ class Poll(object):
-
- exceptions = []
- if ignored_exceptions is not None:
-- if isinstance(ignored_exceptions, collections.Iterable):
-+ if isinstance(ignored_exceptions, collections.abc.Iterable):
- exceptions.extend(iter(ignored_exceptions))
- else:
- exceptions.append(ignored_exceptions)
---
-2.31.1
-
diff --git a/source/l/mozjs78/patches/armv7_disable_WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS.patch b/source/l/mozjs78/patches/armv7_disable_WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS.patch
deleted file mode 100644
index 0cb26ac76..000000000
--- a/source/l/mozjs78/patches/armv7_disable_WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- firefox-68.0/js/src/wasm/WasmSignalHandlers.cpp
-+++ firefox-68.0/js/src/wasm/WasmSignalHandlers.cpp
-@@ -243,7 +243,7 @@
- // If you run into compile problems on a tier-3 platform, you can disable the
- // emulation here.
-
--#if defined(__linux__) && defined(__arm__)
-+#if 0 && defined(__linux__) && defined(__arm__)
- # define WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS
- #endif
diff --git a/source/l/mozjs78/patches/emitter.patch b/source/l/mozjs78/patches/emitter.patch
deleted file mode 100644
index 15e752ba7..000000000
--- a/source/l/mozjs78/patches/emitter.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From d1d785c169345b81c76213f6dd9be32b4db60294 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= <fzatlouk@redhat.com>
-Date: Wed, 15 Jul 2020 08:39:47 +0200
-Subject: [PATCH] Build: allow LOCAL_INCLUDES paths with topsrcdir or topobjdir
-
----
- python/mozbuild/mozbuild/frontend/emitter.py | 6 ------
- .../mozbuild/test/frontend/test_emitter.py | 20 -------------------
- 2 files changed, 26 deletions(-)
-
-diff --git a/python/mozbuild/mozbuild/frontend/emitter.py b/python/mozbuild/mozbuild/frontend/emitter.py
-index 8d5ab8e..65c43ff 100644
---- a/python/mozbuild/mozbuild/frontend/emitter.py
-+++ b/python/mozbuild/mozbuild/frontend/emitter.py
-@@ -1239,12 +1239,6 @@ class TreeMetadataEmitter(LoggingMixin):
- 'is a filename, but a directory is required: %s '
- '(resolved to %s)' % (local_include, full_path),
- context)
-- if (full_path == context.config.topsrcdir or
-- full_path == context.config.topobjdir):
-- raise SandboxValidationError(
-- 'Path specified in LOCAL_INCLUDES '
-- '(%s) resolves to the topsrcdir or topobjdir (%s), which is '
-- 'not allowed' % (local_include, full_path), context)
- include_obj = LocalInclude(context, local_include)
- local_includes.append(include_obj.path.full_path)
- yield include_obj
-diff --git a/python/mozbuild/mozbuild/test/frontend/test_emitter.py b/python/mozbuild/mozbuild/test/frontend/test_emitter.py
-index e8cbd81..d45ccee 100644
---- a/python/mozbuild/mozbuild/test/frontend/test_emitter.py
-+++ b/python/mozbuild/mozbuild/test/frontend/test_emitter.py
-@@ -1040,26 +1040,6 @@ class TestEmitterBasic(unittest.TestCase):
-
- self.assertEqual(local_includes, expected)
-
-- def test_local_includes_invalid(self):
-- """Test that invalid LOCAL_INCLUDES are properly detected."""
-- reader = self.reader('local_includes-invalid/srcdir')
--
-- with six.assertRaisesRegex(
-- self,
-- SandboxValidationError,
-- 'Path specified in LOCAL_INCLUDES.*resolves to the '
-- 'topsrcdir or topobjdir'):
-- self.read_topsrcdir(reader)
--
-- reader = self.reader('local_includes-invalid/objdir')
--
-- with six.assertRaisesRegex(
-- self,
-- SandboxValidationError,
-- 'Path specified in LOCAL_INCLUDES.*resolves to the '
-- 'topsrcdir or topobjdir'):
-- self.read_topsrcdir(reader)
--
- def test_local_includes_file(self):
- """Test that a filename can't be used in LOCAL_INCLUDES."""
- reader = self.reader('local_includes-filename')
---
-2.26.2
-
diff --git a/source/l/mozjs78/patches/icu_sources_data-Write-command-output-to-our-stderr.patch b/source/l/mozjs78/patches/icu_sources_data-Write-command-output-to-our-stderr.patch
deleted file mode 100644
index e2ed48454..000000000
--- a/source/l/mozjs78/patches/icu_sources_data-Write-command-output-to-our-stderr.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From: Simon McVittie <smcv@debian.org>
-Date: Mon, 9 Oct 2017 09:23:14 +0100
-Subject: icu_sources_data: Write command output to our stderr
-
-Saying "See output in /tmp/foobar" is all very well for a developer
-build, but on a buildd our /tmp is going to get thrown away after
-the build. Just log the usual way instead.
----
- intl/icu_sources_data.py | 7 ++-----
- 1 file changed, 2 insertions(+), 5 deletions(-)
-
-diff --git a/intl/icu_sources_data.py b/intl/icu_sources_data.py
-index 8cf9290..7d2d983 100644
---- a/intl/icu_sources_data.py
-+++ b/intl/icu_sources_data.py
-@@ -187,16 +187,13 @@
-
- def try_run(name, command, cwd=None, **kwargs):
- try:
-- with tempfile.NamedTemporaryFile(prefix=name, delete=False) as f:
-- subprocess.check_call(command, cwd=cwd, stdout=f,
-- stderr=subprocess.STDOUT, **kwargs)
-+ subprocess.check_call(command, cwd=cwd, stdout=sys.stderr,
-+ stderr=subprocess.STDOUT, **kwargs)
- except subprocess.CalledProcessError:
-- print('''Error running "{}" in directory {}
-- See output in {}'''.format(' '.join(command), cwd, f.name),
-- file=sys.stderr)
-+ print('''Error running "{}" in directory {}'''.format(' '.join(command), cwd),
-+ file=sys.stderr)
- return False
- else:
-- os.unlink(f.name)
- return True
diff --git a/source/l/mozjs78/patches/init_patch.patch b/source/l/mozjs78/patches/init_patch.patch
deleted file mode 100644
index fd09eb797..000000000
--- a/source/l/mozjs78/patches/init_patch.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/python/mozbuild/mozbuild/configure/__init__.py
-+++ b/python/mozbuild/mozbuild/configure/__init__.py
-@@ -473,8 +473,8 @@
- msg = 'Unknown option: %s' % without_value
- if self._help:
- self._logger.warning(msg)
-- else:
-- raise InvalidOptionError(msg)
-+ #else:
-+ # raise InvalidOptionError(msg)
-
- # Run the execution queue
- for func, args in self._execution_queue:
diff --git a/source/l/mozjs78/patches/spidermonkey_checks_disable.patch b/source/l/mozjs78/patches/spidermonkey_checks_disable.patch
deleted file mode 100644
index 14ba0ad71..000000000
--- a/source/l/mozjs78/patches/spidermonkey_checks_disable.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/config/run_spidermonkey_checks.py
-+++ b/config/run_spidermonkey_checks.py
-@@ -11,5 +11,5 @@
- for script in scripts:
- retcode = subprocess.call(
- [sys.executable, script], cwd=buildconfig.topsrcdir)
-- if retcode != 0:
-- raise Exception(script + " failed")
-+ #if retcode != 0:
-+ # raise Exception(script + " failed")
diff --git a/source/l/mozjs78/patches/spidermonkey_style_check_disable_s390x.patch b/source/l/mozjs78/patches/spidermonkey_style_check_disable_s390x.patch
deleted file mode 100644
index 690c1c57d..000000000
--- a/source/l/mozjs78/patches/spidermonkey_style_check_disable_s390x.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/config/check_spidermonkey_style.py
-+++ b/config/check_spidermonkey_style.py
-
-@@ -766,6 +766,7 @@
-
-
- def main():
-+ sys.exit(0)
- if sys.argv[1:] == ["--fixup"]:
- # Sort #include directives in-place. Fixup mode doesn't solve
- # all possible silliness that the script checks for; it's just a
diff --git a/source/l/mozjs78/slack-desc b/source/l/mozjs78/slack-desc
deleted file mode 100644
index 94125293d..000000000
--- a/source/l/mozjs78/slack-desc
+++ /dev/null
@@ -1,20 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':'.
-
- |-----handy-ruler------------------------------------------------------|
-mozjs78: mozjs78 (Mozilla's JavaScript Engine)
-mozjs78:
-mozjs78: SpiderMonkey is Mozilla's JavaScript engine written in C/C++. It is
-mozjs78: used in various Mozilla products (including Firefox) and is available
-mozjs78: under MPL/GPL/LGPL tri-license.
-mozjs78:
-mozjs78: Homepage:
-mozjs78: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey
-mozjs78:
-mozjs78:
-mozjs78:
-mozjs78:
diff --git a/source/l/polkit/0001-configure-fix-elogind-support.patch b/source/l/polkit/0001-configure-fix-elogind-support.patch
deleted file mode 100644
index 4c40bd9b2..000000000
--- a/source/l/polkit/0001-configure-fix-elogind-support.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 08bb656496cd3d6213bbe9473f63f2d4a110da6e Mon Sep 17 00:00:00 2001
-From: Rasmus Thomsen <cogitri@exherbo.org>
-Date: Wed, 11 Apr 2018 13:14:14 +0200
-Subject: [PATCH] configure: fix elogind support
-
-HAVE_LIBSYSTEMD is used to determine which source files to use.
-We have to check if either have_libsystemd or have_libelogind is
-true, as both of these need the source files which are used when
-HAVE_LIBSYSTEMD is true.
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 36df239..da47ecb 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -221,7 +221,7 @@ AS_IF([test "x$cross_compiling" != "xyes" ], [
-
- AC_SUBST(LIBSYSTEMD_CFLAGS)
- AC_SUBST(LIBSYSTEMD_LIBS)
--AM_CONDITIONAL(HAVE_LIBSYSTEMD, [test "$have_libsystemd" = "yes"], [Using libsystemd])
-+AM_CONDITIONAL(HAVE_LIBSYSTEMD, [test "$have_libsystemd" = "yes" || test "$have_libelogind" = "yes" ], [Using libsystemd])
-
- dnl ---------------------------------------------------------------------------
- dnl - systemd unit / service files
---
-2.17.0
-
diff --git a/source/l/polkit/CVE-2021-4115.patch b/source/l/polkit/CVE-2021-4115.patch
deleted file mode 100644
index 3cb55819c..000000000
--- a/source/l/polkit/CVE-2021-4115.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-diff --git a/src/polkit/polkitsystembusname.c b/src/polkit/polkitsystembusname.c
-index 8ed1363..2fbf5f1 100644
---- a/src/polkit/polkitsystembusname.c
-+++ b/src/polkit/polkitsystembusname.c
-@@ -62,6 +62,10 @@ enum
- PROP_NAME,
- };
-
-+
-+guint8 dbus_call_respond_fails; // has to be global because of callback
-+
-+
- static void subject_iface_init (PolkitSubjectIface *subject_iface);
-
- G_DEFINE_TYPE_WITH_CODE (PolkitSystemBusName, polkit_system_bus_name, G_TYPE_OBJECT,
-@@ -364,6 +368,7 @@ on_retrieved_unix_uid_pid (GObject *src,
- if (!v)
- {
- data->caught_error = TRUE;
-+ dbus_call_respond_fails += 1;
- }
- else
- {
-@@ -405,6 +410,8 @@ polkit_system_bus_name_get_creds_sync (PolkitSystemBusName *system_bus
- tmp_context = g_main_context_new ();
- g_main_context_push_thread_default (tmp_context);
-
-+ dbus_call_respond_fails = 0;
-+
- /* Do two async calls as it's basically as fast as one sync call.
- */
- g_dbus_connection_call (connection,
-@@ -432,11 +439,34 @@ polkit_system_bus_name_get_creds_sync (PolkitSystemBusName *system_bus
- on_retrieved_unix_uid_pid,
- &data);
-
-- while (!((data.retrieved_uid && data.retrieved_pid) || data.caught_error))
-- g_main_context_iteration (tmp_context, TRUE);
-+ while (TRUE)
-+ {
-+ /* If one dbus call returns error, we must wait until the other call
-+ * calls _call_finish(), otherwise fd leak is possible.
-+ * Resolves: GHSL-2021-077
-+ */
-
-- if (data.caught_error)
-- goto out;
-+ if ( (dbus_call_respond_fails > 1) )
-+ {
-+ // we got two faults, we can leave
-+ goto out;
-+ }
-+
-+ if ((data.caught_error && (data.retrieved_pid || data.retrieved_uid)))
-+ {
-+ // we got one fault and the other call finally finished, we can leave
-+ goto out;
-+ }
-+
-+ if ( !(data.retrieved_uid && data.retrieved_pid) )
-+ {
-+ g_main_context_iteration (tmp_context, TRUE);
-+ }
-+ else
-+ {
-+ break;
-+ }
-+ }
-
- if (out_uid)
- *out_uid = data.uid;
diff --git a/source/l/polkit/a2bf5c9c83b6ae46cbd5c779d3055bff81ded683.patch b/source/l/polkit/a2bf5c9c83b6ae46cbd5c779d3055bff81ded683.patch
deleted file mode 100644
index a06300a53..000000000
--- a/source/l/polkit/a2bf5c9c83b6ae46cbd5c779d3055bff81ded683.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-From a2bf5c9c83b6ae46cbd5c779d3055bff81ded683 Mon Sep 17 00:00:00 2001
-From: Jan Rybar <jrybar@redhat.com>
-Date: Tue, 25 Jan 2022 17:21:46 +0000
-Subject: [PATCH] pkexec: local privilege escalation (CVE-2021-4034)
-
----
- src/programs/pkcheck.c | 5 +++++
- src/programs/pkexec.c | 23 ++++++++++++++++++++---
- 2 files changed, 25 insertions(+), 3 deletions(-)
-
-diff --git a/src/programs/pkcheck.c b/src/programs/pkcheck.c
-index f1bb4e1..768525c 100644
---- a/src/programs/pkcheck.c
-+++ b/src/programs/pkcheck.c
-@@ -363,6 +363,11 @@ main (int argc, char *argv[])
- local_agent_handle = NULL;
- ret = 126;
-
-+ if (argc < 1)
-+ {
-+ exit(126);
-+ }
-+
- /* Disable remote file access from GIO. */
- setenv ("GIO_USE_VFS", "local", 1);
-
-diff --git a/src/programs/pkexec.c b/src/programs/pkexec.c
-index 7698c5c..84e5ef6 100644
---- a/src/programs/pkexec.c
-+++ b/src/programs/pkexec.c
-@@ -488,6 +488,15 @@ main (int argc, char *argv[])
- pid_t pid_of_caller;
- gpointer local_agent_handle;
-
-+
-+ /*
-+ * If 'pkexec' is called THIS wrong, someone's probably evil-doing. Don't be nice, just bail out.
-+ */
-+ if (argc<1)
-+ {
-+ exit(127);
-+ }
-+
- ret = 127;
- authority = NULL;
- subject = NULL;
-@@ -614,10 +623,10 @@ main (int argc, char *argv[])
-
- path = g_strdup (pwstruct.pw_shell);
- if (!path)
-- {
-+ {
- g_printerr ("No shell configured or error retrieving pw_shell\n");
- goto out;
-- }
-+ }
- /* If you change this, be sure to change the if (!command_line)
- case below too */
- command_line = g_strdup (path);
-@@ -636,7 +645,15 @@ main (int argc, char *argv[])
- goto out;
- }
- g_free (path);
-- argv[n] = path = s;
-+ path = s;
-+
-+ /* argc<2 and pkexec runs just shell, argv is guaranteed to be null-terminated.
-+ * /-less shell shouldn't happen, but let's be defensive and don't write to null-termination
-+ */
-+ if (argv[n] != NULL)
-+ {
-+ argv[n] = path;
-+ }
- }
- if (access (path, F_OK) != 0)
- {
---
-GitLab
-
diff --git a/source/l/polkit/doinst.sh b/source/l/polkit/doinst.sh
index 3d81307e8..840abca13 100644
--- a/source/l/polkit/doinst.sh
+++ b/source/l/polkit/doinst.sh
@@ -10,9 +10,7 @@ config() {
# Otherwise, we leave the .new copy for the admin to consider...
}
-if [ -r etc/pam.d/polkit-1.new ]; then
- config etc/pam.d/polkit-1.new
-fi
+config etc/pam.d/polkit-1.new
# Make sure the polkitd user and group exist:
if ! grep -q "^polkitd:" etc/passwd ; then
diff --git a/source/l/polkit/polkit.SlackBuild b/source/l/polkit/polkit.SlackBuild
index 74949650b..47d0238c4 100755
--- a/source/l/polkit/polkit.SlackBuild
+++ b/source/l/polkit/polkit.SlackBuild
@@ -2,7 +2,7 @@
# Copyright 2009, 2011, 2015 Robby Workman, Northport, Alabama, USA
# Copyright 2010 Eric Hameleers, Eindhoven, NL
-# Copyright 2009, 2010, 2011, 2012, 2013, 2018, 2020 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2009, 2010, 2011, 2012, 2013, 2018, 2020, 2023 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=polkit
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -81,11 +81,6 @@ find . \
-exec chmod 644 {} \+
zcat $CWD/dont-set-wheel-group-as-admin.diff.gz | patch -p1 --verbose || exit 1
-zcat $CWD/a2bf5c9c83b6ae46cbd5c779d3055bff81ded683.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/CVE-2021-4115.patch.gz | patch -p1 --verbose || exit 1
-
-# https://gitlab.freedesktop.org/polkit/polkit/-/issues/29
-zcat $CWD/0001-configure-fix-elogind-support.patch.gz | patch -p1 || exit 1
# If we get here and don't have a polkitd user/group, add one.
# Otherwise a few directories in the package will have wrong permissions.
@@ -94,53 +89,36 @@ if ! grep -q "^polkitd:" /etc/passwd ; then
useradd -c "PolicyKit daemon owner" -d /var/lib/polkit -u 87 -g polkitd -s /bin/false polkitd
fi
-# Choose correct options depending on whether PAM is installed:
-if [ -L /lib${LIBDIRSUFFIX}/libpam.so.? ]; then
- PAM_OPTIONS="--with-authfw=pam --with-pam-module-dir=/lib${LIBDIRSUFFIX}/security"
- unset SHADOW_OPTIONS
-else
- unset PAM_OPTIONS
- SHADOW_OPTIONS="--with-authfw=shadow"
-fi
-
-if [ ! -r configure ]; then
- if [ -x ./autogen.sh ]; then
- NOCONFIGURE=1 ./autogen.sh
- else
- autoreconf -vif
- fi
-fi
-
-LIBELOGIND_CFLAGS="$(pkg-config --cflags libelogind)" \
-LIBELOGIND_LIBS="$(pkg-config --libs libelogind)" \
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
+# Configure, build, and install:
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+mkdir meson-build
+cd meson-build
+meson setup \
--prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --libdir=lib${LIBDIRSUFFIX} \
+ --libexecdir=/usr/libexec \
+ --bindir=/usr/bin \
+ --sbindir=/usr/sbin \
+ --includedir=/usr/include \
+ --datadir=/usr/share \
+ --mandir=/usr/man \
--sysconfdir=/etc \
--localstatedir=/var \
- --docdir=/usr/doc/$PKGNAM-$VERSION \
- --enable-man-pages \
- --enable-gtk-doc \
- --mandir=/usr/man \
- --disable-static \
- --disable-examples \
- --enable-introspection \
- --enable-libsystemd-login=no \
- --enable-libelogind=yes \
- $PAM_OPTIONS \
- $SHADOW_OPTIONS \
- --enable-verbose-mode \
- --with-os-type=Slackware \
- --build=$ARCH-slackware-linux || exit 1
-
-# Build and install:
-make $NUMJOBS || make || exit 1
-make install DESTDIR=$PKG || exit 1
-
-# Don't ship .la files:
-rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+ --buildtype=release \
+ -Dintrospection=true \
+ -Dsession_tracking=libelogind \
+ -Dsystemdsystemunitdir=/usr/lib/systemd/user \
+ -Dauthfw=pam \
+ -Dpam_module_dir=/lib${LIBDIRSUFFIX}/security \
+ -Dman=true \
+ -Djs_engine=mozjs \
+ .. || exit 1
+ "${NINJA:=ninja}" $NUMJOBS || exit 1
+ DESTDIR=$PKG $NINJA install || exit 1
+cd ..
+
+ #-Dos_type=slackware \
# Create homedir for polkit. This is mentioned in /etc/passwd, but isn't
# actually used for anything later. Perms don't matter.
@@ -154,10 +132,8 @@ rmdir --parents $PKG/etc/dbus-1/system.d/
# Leave the /etc/polkit-1/rules.d/ dir in place, but move the config(s)
mv $PKG/etc/polkit-1/rules.d/* $PKG/usr/share/polkit-1/rules.d/
-if [ ! -z "$PAM_OPTIONS" ]; then
- # Make the PAM file .new:
- mv $PKG/etc/pam.d/polkit-1 $PKG/etc/pam.d/polkit-1.new
-fi
+# Make the PAM file .new:
+mv $PKG/etc/pam.d/polkit-1 $PKG/etc/pam.d/polkit-1.new
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" \
@@ -181,9 +157,8 @@ fi
# Add a documentation directory:
mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
cp -a \
- AUTHORS COPYING HACKING INSTALL NEWS README \
+ AUTHORS* COPYING* HACKING* INSTALL* NEWS* README* \
$PKG/usr/doc/$PKGNAM-$VERSION
-( cd $PKG/usr/doc/$PKGNAM-$VERSION; ln -s ../../share/gtk-doc/html/polkit-1 html )
# If there's a ChangeLog, installing at least part of the recent history
# is useful, but don't let it get totally out of control: