From 7b0628f037dcbf85cfb381d5e05dea39a2059d33 Mon Sep 17 00:00:00 2001 From: davidovski Date: Wed, 25 May 2022 22:50:03 +0100 Subject: fixed various broken dependencies --- repo/system/dbus/dbus.xibuild | 4 +- repo/system/elfutils/elfutils.xibuild | 14 +- repo/system/elfutils/error.h | 27 ++ repo/system/elfutils/files/error.h | 27 -- repo/system/elfutils/fix-aarch64_fregs.patch | 14 + repo/system/elfutils/fix-uninitialized.patch | 17 ++ repo/system/elfutils/musl-asm-ptrace-h.patch | 10 + repo/system/elfutils/musl-macros.patch | 87 ++++++ repo/system/elfutils/musl-strndupa.patch | 18 ++ .../elfutils/patches/fix-aarch64_fregs.patch | 14 - .../elfutils/patches/fix-uninitialized.patch | 17 -- .../elfutils/patches/musl-asm-ptrace-h.patch | 10 - repo/system/elfutils/patches/musl-macros.patch | 87 ------ repo/system/elfutils/patches/musl-strndupa.patch | 18 -- repo/system/glew/glew.xibuild | 6 +- repo/system/glu/glu.xibuild | 2 +- repo/system/imlib2/imlib2.xibuild | 2 +- repo/system/js78/disable-jslint.patch | 17 ++ .../fd6847c9416f9eebde636e21d794d25d1be8791d.patch | 37 +++ repo/system/js78/fix-musl-build.patch | 16 ++ repo/system/js78/fix-python3.10-compilation.patch | 312 +++++++++++++++++++++ repo/system/js78/fix-rust-target.patch | 15 + repo/system/js78/fix-rust-target.patch.1 | 15 + repo/system/js78/js78.xibuild | 18 +- repo/system/js78/patches/disable-jslint.patch | 17 -- .../fd6847c9416f9eebde636e21d794d25d1be8791d.patch | 37 --- repo/system/js78/patches/fix-musl-build.patch | 16 -- .../js78/patches/fix-python3.10-compilation.patch | 312 --------------------- repo/system/js78/patches/fix-rust-target.patch | 15 - repo/system/libgudev/libgudev.xibuild | 2 +- repo/system/libptytty/libptytty.xibuild | 6 +- repo/system/mime-types/mime-types.xibuild | 19 ++ repo/system/pahole/pahole.xibuild | 2 +- repo/system/pcsc-lite/pcsc-lite.xibuild | 2 +- repo/system/polkit/CVE-2021-4034.patch | 79 ++++++ repo/system/polkit/files/polkit-1 | 9 - repo/system/polkit/make-innetgr-optional.patch | 239 ++++++++++++++++ repo/system/polkit/patches/CVE-2021-4034.patch | 79 ------ .../polkit/patches/make-innetgr-optional.patch | 239 ---------------- repo/system/polkit/polkit-1 | 9 + .../shared-mime-info/shared-mime-info.xibuild | 2 +- repo/system/syslinux/gcc-10.patch | 109 ------- 42 files changed, 961 insertions(+), 1036 deletions(-) create mode 100644 repo/system/elfutils/error.h delete mode 100644 repo/system/elfutils/files/error.h create mode 100644 repo/system/elfutils/fix-aarch64_fregs.patch create mode 100644 repo/system/elfutils/fix-uninitialized.patch create mode 100644 repo/system/elfutils/musl-asm-ptrace-h.patch create mode 100644 repo/system/elfutils/musl-macros.patch create mode 100644 repo/system/elfutils/musl-strndupa.patch delete mode 100644 repo/system/elfutils/patches/fix-aarch64_fregs.patch delete mode 100644 repo/system/elfutils/patches/fix-uninitialized.patch delete mode 100644 repo/system/elfutils/patches/musl-asm-ptrace-h.patch delete mode 100644 repo/system/elfutils/patches/musl-macros.patch delete mode 100644 repo/system/elfutils/patches/musl-strndupa.patch create mode 100644 repo/system/js78/disable-jslint.patch create mode 100644 repo/system/js78/fd6847c9416f9eebde636e21d794d25d1be8791d.patch create mode 100644 repo/system/js78/fix-musl-build.patch create mode 100644 repo/system/js78/fix-python3.10-compilation.patch create mode 100644 repo/system/js78/fix-rust-target.patch create mode 100644 repo/system/js78/fix-rust-target.patch.1 delete mode 100644 repo/system/js78/patches/disable-jslint.patch delete mode 100644 repo/system/js78/patches/fd6847c9416f9eebde636e21d794d25d1be8791d.patch delete mode 100644 repo/system/js78/patches/fix-musl-build.patch delete mode 100644 repo/system/js78/patches/fix-python3.10-compilation.patch delete mode 100644 repo/system/js78/patches/fix-rust-target.patch create mode 100644 repo/system/mime-types/mime-types.xibuild create mode 100644 repo/system/polkit/CVE-2021-4034.patch delete mode 100644 repo/system/polkit/files/polkit-1 create mode 100644 repo/system/polkit/make-innetgr-optional.patch delete mode 100644 repo/system/polkit/patches/CVE-2021-4034.patch delete mode 100644 repo/system/polkit/patches/make-innetgr-optional.patch create mode 100644 repo/system/polkit/polkit-1 delete mode 100644 repo/system/syslinux/gcc-10.patch (limited to 'repo/system') diff --git a/repo/system/dbus/dbus.xibuild b/repo/system/dbus/dbus.xibuild index 3bbfc31..ba7869b 100644 --- a/repo/system/dbus/dbus.xibuild +++ b/repo/system/dbus/dbus.xibuild @@ -22,8 +22,8 @@ build () { --disable-doxygen-docs \ --disable-xml-docs \ --disable-static \ - --with-systemduserunitdir=no \ - --with-systemdsystemunitdir=no \ + --with-systemduserunitdir=$BUILD_ROOT/no \ + --with-systemdsystemunitdir=$BUILD_ROOT/no \ --docdir=/usr/share/doc/dbus-$PKG_VER \ --with-console-auth-dir=/run/console \ --with-system-pid-file=/run/dbus/pid \ diff --git a/repo/system/elfutils/elfutils.xibuild b/repo/system/elfutils/elfutils.xibuild index a68827f..5f7eb38 100644 --- a/repo/system/elfutils/elfutils.xibuild +++ b/repo/system/elfutils/elfutils.xibuild @@ -1,17 +1,17 @@ #!/bin/sh -MAKEDEPS="bison flex zlib bzip2 xz argp-standalone libtool fts musl-obstack" +MAKEDEPS="bison flex zlib bzip2 xz argp-standalone libtool musl-obstack" DEPS="musl zlib" PKG_VER=0.186 SOURCE=https://sourceware.org/elfutils/ftp/$PKG_VER/elfutils-$PKG_VER.tar.bz2 ADDITIONAL=" - files/error.h - patches/fix-aarch64_fregs.patch - patches/fix-uninitialized.patch - patches/musl-macros.patch - patches/musl-strndupa.patch - patches/musl-asm-ptrace-h.patch + error.h + fix-aarch64_fregs.patch + fix-uninitialized.patch + musl-macros.patch + musl-strndupa.patch + musl-asm-ptrace-h.patch " DESC="Utilities and DSOs to handle ELF files and DWARF data" diff --git a/repo/system/elfutils/error.h b/repo/system/elfutils/error.h new file mode 100644 index 0000000..ef06827 --- /dev/null +++ b/repo/system/elfutils/error.h @@ -0,0 +1,27 @@ +#ifndef _ERROR_H_ +#define _ERROR_H_ + +#include +#include +#include +#include +#include + +static unsigned int error_message_count = 0; + +static inline void error(int status, int errnum, const char* format, ...) +{ + va_list ap; + fprintf(stderr, "%s: ", program_invocation_name); + va_start(ap, format); + vfprintf(stderr, format, ap); + va_end(ap); + if (errnum) + fprintf(stderr, ": %s", strerror(errnum)); + fprintf(stderr, "\n"); + error_message_count++; + if (status) + exit(status); +} + +#endif /* _ERROR_H_ */ diff --git a/repo/system/elfutils/files/error.h b/repo/system/elfutils/files/error.h deleted file mode 100644 index ef06827..0000000 --- a/repo/system/elfutils/files/error.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef _ERROR_H_ -#define _ERROR_H_ - -#include -#include -#include -#include -#include - -static unsigned int error_message_count = 0; - -static inline void error(int status, int errnum, const char* format, ...) -{ - va_list ap; - fprintf(stderr, "%s: ", program_invocation_name); - va_start(ap, format); - vfprintf(stderr, format, ap); - va_end(ap); - if (errnum) - fprintf(stderr, ": %s", strerror(errnum)); - fprintf(stderr, "\n"); - error_message_count++; - if (status) - exit(status); -} - -#endif /* _ERROR_H_ */ diff --git a/repo/system/elfutils/fix-aarch64_fregs.patch b/repo/system/elfutils/fix-aarch64_fregs.patch new file mode 100644 index 0000000..4007416 --- /dev/null +++ b/repo/system/elfutils/fix-aarch64_fregs.patch @@ -0,0 +1,14 @@ +It looks like fregs.vregs[] is an array of double? +Casting to Dwarf_Word instead of & 0xFFFFFFF should do. + +--- a/backends/aarch64_initreg.c 2015-11-27 14:36:29.000000000 +0100 ++++ b/backends/aarch64_initreg.c 2016-08-09 03:47:25.428560159 +0200 +@@ -82,7 +82,7 @@ + + Dwarf_Word dwarf_fregs[32]; + for (int r = 0; r < 32; r++) +- dwarf_fregs[r] = fregs.vregs[r] & 0xFFFFFFFF; ++ dwarf_fregs[r] = (Dwarf_Word)fregs.vregs[r]; + + if (! setfunc (64, 32, dwarf_fregs, arg)) + return false; diff --git a/repo/system/elfutils/fix-uninitialized.patch b/repo/system/elfutils/fix-uninitialized.patch new file mode 100644 index 0000000..31ecd9e --- /dev/null +++ b/repo/system/elfutils/fix-uninitialized.patch @@ -0,0 +1,17 @@ + +--- a/libcpu/i386_disasm.c 2015-08-21 14:22:37.000000000 +0200 ++++ b/libcpu/i386_disasm.c 2015-11-20 06:30:59.250629957 +0100 +@@ -1,4 +1,4 @@ +-/* Disassembler for x86. ++/* Disassembler for x86. + Copyright (C) 2007, 2008, 2009, 2011 Red Hat, Inc. + This file is part of elfutils. + Written by Ulrich Drepper , 2007. +@@ -710,6 +710,7 @@ + + case 'm': + /* Mnemonic. */ ++ str = mnebuf; + + if (unlikely (instrtab[cnt].mnemonic == MNE_INVALID)) + { diff --git a/repo/system/elfutils/musl-asm-ptrace-h.patch b/repo/system/elfutils/musl-asm-ptrace-h.patch new file mode 100644 index 0000000..fc14686 --- /dev/null +++ b/repo/system/elfutils/musl-asm-ptrace-h.patch @@ -0,0 +1,10 @@ +--- a/backends/ppc_initreg.c 2019-11-26 23:48:42.000000000 +0100 ++++ b/backends/ppc_initreg.c 2019-12-08 16:57:58.334872602 +0100 +@@ -32,6 +32,7 @@ + + #include + #if defined(__powerpc__) && defined(__linux__) ++# include + # include + # include + #endif diff --git a/repo/system/elfutils/musl-macros.patch b/repo/system/elfutils/musl-macros.patch new file mode 100644 index 0000000..0d7ec41 --- /dev/null +++ b/repo/system/elfutils/musl-macros.patch @@ -0,0 +1,87 @@ +--- a/src/arlib.h 2015-08-21 14:22:37.000000000 +0200 ++++ b/src/arlib.h 2015-11-20 08:02:55.153199611 +0100 +@@ -29,6 +29,16 @@ + #include + #include + ++#if !defined(ACCESSPERMS) ++# define ACCESSPERMS (S_IRWXU|S_IRWXG|S_IRWXO) /* 0777 */ ++#endif ++#if !defined(ALLPERMS) ++# define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO) /* 07777 */ ++#endif ++#if !defined(DEFFILEMODE) ++# define DEFFILEMODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH)/* 0666*/ ++#endif ++ + + /* State of -D/-U flags. */ + extern bool arlib_deterministic_output; +--- a/src/elfcompress.c.orig 2016-04-02 12:51:26.903848894 +0200 ++++ b/src/elfcompress.c 2016-04-02 12:55:15.076996338 +0200 +@@ -35,6 +35,14 @@ + #include + #include "system.h" + ++#if !defined(FNM_EXTMATCH) ++# define FNM_EXTMATCH 0 ++#endif ++ ++#if !defined(ALLPERMS) ++# define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO) /* 07777 */ ++#endif ++ + /* Name and version of program. */ + static void print_version (FILE *stream, struct argp_state *state); + ARGP_PROGRAM_VERSION_HOOK_DEF = print_version; +diff --git a/lib/libeu.h b/lib/libeu.h +index 69fe3d7..e5c99b8 100644 +--- a/lib/libeu.h ++++ b/lib/libeu.h +@@ -31,6 +31,27 @@ + + #include + #include ++#include ++#include ++#include ++ ++#ifndef TEMP_FAILURE_RETRY ++#define TEMP_FAILURE_RETRY(expression) \ ++ (__extension__ \ ++ ({ long int __result; \ ++ do __result = (long int) (expression); \ ++ while (__result == -1L && errno == EINTR); \ ++ __result; })) ++#endif ++ ++#ifndef strndupa ++#define strndupa(s, n) \ ++ (__extension__ ({const char *__in = (s); \ ++ size_t __len = strnlen (__in, (n)) + 1; \ ++ char *__out = (char *) alloca (__len); \ ++ __out[__len-1] = '\0'; \ ++ (char *) memcpy (__out, __in, __len-1);})) ++#endif + + extern void *xmalloc (size_t) __attribute__ ((__malloc__)); + extern void *xcalloc (size_t, size_t) __attribute__ ((__malloc__)); +diff --git a/src/strip.c b/src/strip.c +index 48792a7..d2f0c60 100644 +--- a/src/strip.c ++++ b/src/strip.c +@@ -46,6 +46,14 @@ + #include + #include + ++#if !defined(FNM_EXTMATCH) ++# define FNM_EXTMATCH 0 ++#endif ++ ++#if !defined(ACCESSPERMS) ++#define ACCESSPERMS (S_IRWXU|S_IRWXG|S_IRWXO) ++#endif ++ + typedef uint8_t GElf_Byte; + + /* Name and version of program. */ diff --git a/repo/system/elfutils/musl-strndupa.patch b/repo/system/elfutils/musl-strndupa.patch new file mode 100644 index 0000000..a520688 --- /dev/null +++ b/repo/system/elfutils/musl-strndupa.patch @@ -0,0 +1,18 @@ +--- a/src/unstrip.c.orig 2017-04-27 14:26:26.000000000 +0000 ++++ b/src/unstrip.c 2017-05-05 15:51:33.515154220 +0000 +@@ -56,6 +56,15 @@ + # define _(str) gettext (str) + #endif + ++#ifndef strndupa ++#define strndupa(s, n) \ ++ (__extension__ ({const char *__in = (s); \ ++ size_t __len = strnlen (__in, (n)) + 1; \ ++ char *__out = (char *) alloca (__len); \ ++ __out[__len-1] = '\0'; \ ++ (char *) memcpy (__out, __in, __len-1);})) ++#endif ++ + /* Name and version of program. */ + ARGP_PROGRAM_VERSION_HOOK_DEF = print_version; + diff --git a/repo/system/elfutils/patches/fix-aarch64_fregs.patch b/repo/system/elfutils/patches/fix-aarch64_fregs.patch deleted file mode 100644 index 4007416..0000000 --- a/repo/system/elfutils/patches/fix-aarch64_fregs.patch +++ /dev/null @@ -1,14 +0,0 @@ -It looks like fregs.vregs[] is an array of double? -Casting to Dwarf_Word instead of & 0xFFFFFFF should do. - ---- a/backends/aarch64_initreg.c 2015-11-27 14:36:29.000000000 +0100 -+++ b/backends/aarch64_initreg.c 2016-08-09 03:47:25.428560159 +0200 -@@ -82,7 +82,7 @@ - - Dwarf_Word dwarf_fregs[32]; - for (int r = 0; r < 32; r++) -- dwarf_fregs[r] = fregs.vregs[r] & 0xFFFFFFFF; -+ dwarf_fregs[r] = (Dwarf_Word)fregs.vregs[r]; - - if (! setfunc (64, 32, dwarf_fregs, arg)) - return false; diff --git a/repo/system/elfutils/patches/fix-uninitialized.patch b/repo/system/elfutils/patches/fix-uninitialized.patch deleted file mode 100644 index 31ecd9e..0000000 --- a/repo/system/elfutils/patches/fix-uninitialized.patch +++ /dev/null @@ -1,17 +0,0 @@ - ---- a/libcpu/i386_disasm.c 2015-08-21 14:22:37.000000000 +0200 -+++ b/libcpu/i386_disasm.c 2015-11-20 06:30:59.250629957 +0100 -@@ -1,4 +1,4 @@ --/* Disassembler for x86. -+/* Disassembler for x86. - Copyright (C) 2007, 2008, 2009, 2011 Red Hat, Inc. - This file is part of elfutils. - Written by Ulrich Drepper , 2007. -@@ -710,6 +710,7 @@ - - case 'm': - /* Mnemonic. */ -+ str = mnebuf; - - if (unlikely (instrtab[cnt].mnemonic == MNE_INVALID)) - { diff --git a/repo/system/elfutils/patches/musl-asm-ptrace-h.patch b/repo/system/elfutils/patches/musl-asm-ptrace-h.patch deleted file mode 100644 index fc14686..0000000 --- a/repo/system/elfutils/patches/musl-asm-ptrace-h.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/backends/ppc_initreg.c 2019-11-26 23:48:42.000000000 +0100 -+++ b/backends/ppc_initreg.c 2019-12-08 16:57:58.334872602 +0100 -@@ -32,6 +32,7 @@ - - #include - #if defined(__powerpc__) && defined(__linux__) -+# include - # include - # include - #endif diff --git a/repo/system/elfutils/patches/musl-macros.patch b/repo/system/elfutils/patches/musl-macros.patch deleted file mode 100644 index 0d7ec41..0000000 --- a/repo/system/elfutils/patches/musl-macros.patch +++ /dev/null @@ -1,87 +0,0 @@ ---- a/src/arlib.h 2015-08-21 14:22:37.000000000 +0200 -+++ b/src/arlib.h 2015-11-20 08:02:55.153199611 +0100 -@@ -29,6 +29,16 @@ - #include - #include - -+#if !defined(ACCESSPERMS) -+# define ACCESSPERMS (S_IRWXU|S_IRWXG|S_IRWXO) /* 0777 */ -+#endif -+#if !defined(ALLPERMS) -+# define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO) /* 07777 */ -+#endif -+#if !defined(DEFFILEMODE) -+# define DEFFILEMODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH)/* 0666*/ -+#endif -+ - - /* State of -D/-U flags. */ - extern bool arlib_deterministic_output; ---- a/src/elfcompress.c.orig 2016-04-02 12:51:26.903848894 +0200 -+++ b/src/elfcompress.c 2016-04-02 12:55:15.076996338 +0200 -@@ -35,6 +35,14 @@ - #include - #include "system.h" - -+#if !defined(FNM_EXTMATCH) -+# define FNM_EXTMATCH 0 -+#endif -+ -+#if !defined(ALLPERMS) -+# define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO) /* 07777 */ -+#endif -+ - /* Name and version of program. */ - static void print_version (FILE *stream, struct argp_state *state); - ARGP_PROGRAM_VERSION_HOOK_DEF = print_version; -diff --git a/lib/libeu.h b/lib/libeu.h -index 69fe3d7..e5c99b8 100644 ---- a/lib/libeu.h -+++ b/lib/libeu.h -@@ -31,6 +31,27 @@ - - #include - #include -+#include -+#include -+#include -+ -+#ifndef TEMP_FAILURE_RETRY -+#define TEMP_FAILURE_RETRY(expression) \ -+ (__extension__ \ -+ ({ long int __result; \ -+ do __result = (long int) (expression); \ -+ while (__result == -1L && errno == EINTR); \ -+ __result; })) -+#endif -+ -+#ifndef strndupa -+#define strndupa(s, n) \ -+ (__extension__ ({const char *__in = (s); \ -+ size_t __len = strnlen (__in, (n)) + 1; \ -+ char *__out = (char *) alloca (__len); \ -+ __out[__len-1] = '\0'; \ -+ (char *) memcpy (__out, __in, __len-1);})) -+#endif - - extern void *xmalloc (size_t) __attribute__ ((__malloc__)); - extern void *xcalloc (size_t, size_t) __attribute__ ((__malloc__)); -diff --git a/src/strip.c b/src/strip.c -index 48792a7..d2f0c60 100644 ---- a/src/strip.c -+++ b/src/strip.c -@@ -46,6 +46,14 @@ - #include - #include - -+#if !defined(FNM_EXTMATCH) -+# define FNM_EXTMATCH 0 -+#endif -+ -+#if !defined(ACCESSPERMS) -+#define ACCESSPERMS (S_IRWXU|S_IRWXG|S_IRWXO) -+#endif -+ - typedef uint8_t GElf_Byte; - - /* Name and version of program. */ diff --git a/repo/system/elfutils/patches/musl-strndupa.patch b/repo/system/elfutils/patches/musl-strndupa.patch deleted file mode 100644 index a520688..0000000 --- a/repo/system/elfutils/patches/musl-strndupa.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- a/src/unstrip.c.orig 2017-04-27 14:26:26.000000000 +0000 -+++ b/src/unstrip.c 2017-05-05 15:51:33.515154220 +0000 -@@ -56,6 +56,15 @@ - # define _(str) gettext (str) - #endif - -+#ifndef strndupa -+#define strndupa(s, n) \ -+ (__extension__ ({const char *__in = (s); \ -+ size_t __len = strnlen (__in, (n)) + 1; \ -+ char *__out = (char *) alloca (__len); \ -+ __out[__len-1] = '\0'; \ -+ (char *) memcpy (__out, __in, __len-1);})) -+#endif -+ - /* Name and version of program. */ - ARGP_PROGRAM_VERSION_HOOK_DEF = print_version; - diff --git a/repo/system/glew/glew.xibuild b/repo/system/glew/glew.xibuild index 7ad27fe..fcace5f 100644 --- a/repo/system/glew/glew.xibuild +++ b/repo/system/glew/glew.xibuild @@ -11,10 +11,10 @@ SOURCE="https://downloads.sourceforge.net/glew/glew-$PKG_VER.tgz" ADDITIONAL="glew.patch " build () { - make PREFIX=/usr + make GLEW_DEST=$PKG_DEST } package () { - mkdir -p $PKG_DEST/usr/lib64 - make PREFIX=/usr DESTDIR=$PKG_DEST install + make GLEW_DEST=$PKG_DEST/usr install + mv $PKG_DEST/usr/lib64/* $PKG_DEST/usr/lib/ } diff --git a/repo/system/glu/glu.xibuild b/repo/system/glu/glu.xibuild index 54249a7..edac51c 100644 --- a/repo/system/glu/glu.xibuild +++ b/repo/system/glu/glu.xibuild @@ -4,7 +4,7 @@ NAME="glu" DESC="Mesa OpenGL Utility library" MAKEDEPS="meson ninja " -DEPS="mesa opengl" +DEPS="mesa" PKG_VER=9.0.2 SOURCE="https://mesa.freedesktop.org/archive/glu/glu-$PKG_VER.tar.xz" diff --git a/repo/system/imlib2/imlib2.xibuild b/repo/system/imlib2/imlib2.xibuild index 9ed5b15..2660b90 100644 --- a/repo/system/imlib2/imlib2.xibuild +++ b/repo/system/imlib2/imlib2.xibuild @@ -1,7 +1,7 @@ #!/bin/sh MAKEDEPS="make" -DEPS="tiff giflib bzip2 freetype2 libxext libpng libid3tag libjpeg-turbo libwebp libheif librsvg xz" +DEPS="tiff giflib bzip2 freetype2 libxext libpng libid3tag libjpeg-turbo libwebp libheif xz librsvg" PKG_VER=1.8.0 SOURCE=https://downloads.sourceforge.net/enlightenment/imlib2-$PKG_VER.tar.xz diff --git a/repo/system/js78/disable-jslint.patch b/repo/system/js78/disable-jslint.patch new file mode 100644 index 0000000..04a8b3e --- /dev/null +++ b/repo/system/js78/disable-jslint.patch @@ -0,0 +1,17 @@ +--- a/js/src/build/moz.build ++++ b/js/src/build/moz.build +@@ -80,14 +80,3 @@ + NO_EXPAND_LIBS = True + + DIST_INSTALL = True +- +-# Run SpiderMonkey style checker after linking the static library. This avoids +-# running the script for no-op builds. +-GeneratedFile( +- 'spidermonkey_checks', script='/config/run_spidermonkey_checks.py', +- inputs=[ +- '!%sjs_static.%s' % (CONFIG['LIB_PREFIX'], CONFIG['LIB_SUFFIX']), +- '/config/check_spidermonkey_style.py', +- '/config/check_macroassembler_style.py', +- '/config/check_js_opcode.py' +- ]) diff --git a/repo/system/js78/fd6847c9416f9eebde636e21d794d25d1be8791d.patch b/repo/system/js78/fd6847c9416f9eebde636e21d794d25d1be8791d.patch new file mode 100644 index 0000000..1af68d9 --- /dev/null +++ b/repo/system/js78/fd6847c9416f9eebde636e21d794d25d1be8791d.patch @@ -0,0 +1,37 @@ +See https://bugzilla.mozilla.org/show_bug.cgi?id=1539739 + +From fd6847c9416f9eebde636e21d794d25d1be8791d Mon Sep 17 00:00:00 2001 +From: Mike Hommey +Date: Sat, 1 Jun 2019 09:06:01 +0900 +Subject: [PATCH] Bug 1526653 - Include struct definitions for user_vfp and + user_vfp_exc. + +--- + js/src/wasm/WasmSignalHandlers.cpp | 11 ++++++++++- + 1 file changed, 10 insertions(+), 1 deletion(-) + +diff --git a/js/src/wasm/WasmSignalHandlers.cpp b/js/src/wasm/WasmSignalHandlers.cpp +index 636537f8478..383c380f04c 100644 +--- a/js/src/wasm/WasmSignalHandlers.cpp ++++ b/js/src/wasm/WasmSignalHandlers.cpp +@@ -248,7 +248,16 @@ using mozilla::DebugOnly; + #endif + + #ifdef WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS +-# include ++struct user_vfp { ++ unsigned long long fpregs[32]; ++ unsigned long fpscr; ++}; ++ ++struct user_vfp_exc { ++ unsigned long fpexc; ++ unsigned long fpinst; ++ unsigned long fpinst2; ++}; + #endif + + #if defined(ANDROID) +-- +2.20.1 + diff --git a/repo/system/js78/fix-musl-build.patch b/repo/system/js78/fix-musl-build.patch new file mode 100644 index 0000000..af39467 --- /dev/null +++ b/repo/system/js78/fix-musl-build.patch @@ -0,0 +1,16 @@ +Upstream: No +Reason: mozjs60 miscompiles on musl if built with HAVE_THREAD_TLS_KEYWORD: +https://github.com/void-linux/void-packages/issues/2598 +diff --git a/js/src/old-configure.in b/js/src/old-configure.in +--- a/js/src/old-configure.in ++++ b/js/src/old-configure.in +@@ -1272,6 +1272,9 @@ + *-android*|*-linuxandroid*) + : + ;; ++ *-musl*) ++ : ++ ;; + *) + AC_DEFINE(HAVE_THREAD_TLS_KEYWORD) + ;; diff --git a/repo/system/js78/fix-python3.10-compilation.patch b/repo/system/js78/fix-python3.10-compilation.patch new file mode 100644 index 0000000..4473d9b --- /dev/null +++ b/repo/system/js78/fix-python3.10-compilation.patch @@ -0,0 +1,312 @@ +#https://src.fedoraproject.org/rpms/mozjs78/blob/rawhide/f/Fixup-compatibility-of-mozbuild-with-Python-3.10.patch + +m a88d0c8e27b48344942187c2611bb121bde9332d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= +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/main.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) + +--- a/python/mach/mach/main.py ++++ b/python/mach/mach/main.py +@@ -16,7 +16,7 @@ + import sys + import traceback + import uuid +-from collections import Iterable ++from collections.abc import Iterable + + from six import string_types + +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/repo/system/js78/fix-rust-target.patch b/repo/system/js78/fix-rust-target.patch new file mode 100644 index 0000000..f1a98df --- /dev/null +++ b/repo/system/js78/fix-rust-target.patch @@ -0,0 +1,15 @@ +Allow us to just set RUST_TARGEt ourselves instead of hacking around in mozilla's +weird custom build system... + +diff -upr firefox-68.9.0.orig/build/moz.configure/rust.configure firefox-68.9.0/build/moz.configure/rust.configure +--- firefox-68.9.0.orig/build/moz.configure/rust.configure 2020-06-02 22:54:39.982616128 +0200 ++++ firefox-68.9.0/build/moz.configure/rust.configure 2020-06-02 23:08:37.656332899 +0200 +@@ -345,7 +345,7 @@ def rust_triple_alias(host_or_target): + + return None + +- rustc_target = find_candidate(candidates) ++ rustc_target = os.environ['RUST_TARGET'] + + if rustc_target is None: + die("Don't know how to translate {} for rustc".format( diff --git a/repo/system/js78/fix-rust-target.patch.1 b/repo/system/js78/fix-rust-target.patch.1 new file mode 100644 index 0000000..f1a98df --- /dev/null +++ b/repo/system/js78/fix-rust-target.patch.1 @@ -0,0 +1,15 @@ +Allow us to just set RUST_TARGEt ourselves instead of hacking around in mozilla's +weird custom build system... + +diff -upr firefox-68.9.0.orig/build/moz.configure/rust.configure firefox-68.9.0/build/moz.configure/rust.configure +--- firefox-68.9.0.orig/build/moz.configure/rust.configure 2020-06-02 22:54:39.982616128 +0200 ++++ firefox-68.9.0/build/moz.configure/rust.configure 2020-06-02 23:08:37.656332899 +0200 +@@ -345,7 +345,7 @@ def rust_triple_alias(host_or_target): + + return None + +- rustc_target = find_candidate(candidates) ++ rustc_target = os.environ['RUST_TARGET'] + + if rustc_target is None: + die("Don't know how to translate {} for rustc".format( diff --git a/repo/system/js78/js78.xibuild b/repo/system/js78/js78.xibuild index 199740a..9e553ed 100644 --- a/repo/system/js78/js78.xibuild +++ b/repo/system/js78/js78.xibuild @@ -1,15 +1,16 @@ #!/bin/sh -MAKEDEPS="gcc autoconf2-13 icu rustc zlib which zip clang llvm patch make python-six python-mach" +MAKEDEPS="gcc autoconf2-13 icu rust zlib which zip clang llvm patch make python-six python-mach" DEPS="readline nspr bash zlib" PKG_VER=78.15.0 SOURCE=https://archive.mozilla.org/pub/firefox/releases/${PKG_VER}esr/source/firefox-${PKG_VER}esr.source.tar.xz ADDITIONAL=" - patches/disable-jslint.patch - patches/fd6847c9416f9eebde636e21d794d25d1be8791d.patch - patches/fix-musl-build.patch - patches/fix-python3.10-compilation.patch + disable-jslint.patch + fd6847c9416f9eebde636e21d794d25d1be8791d.patch + fix-musl-build.patch + fix-python3.10-compilation.patch + fix-rust-target.patch " DESC="JavaScript interpreter and libraries - Version 78" @@ -19,9 +20,8 @@ prepare () { export LDFLAGS="$LDFLAGS -Wl,-z,stack-size=1048576" mountpoint -q /dev/shm || mount -t tmpfs devshm /dev/shm - export PATH=/opt/rustc/bin:$PATH - export LD_LIBRARY_PATH=/opt/rustc/lib:$LD_LIBRARY_PATH - export RUST_TARGET="x86_64" + export RUST_TARGET="x86_64-unknown-linux-musl" + export CFLAGS="$CFLAGS -no-pie" CXXFLAGS="$CXXFLAGS -no-pie" } build () { @@ -31,7 +31,6 @@ build () { SHELL=/bin/bash PYTHON=/usr/bin/python3 \ ../js/src/configure --prefix=/usr \ --with-intl-api \ - --with-libclang-path=/usr/lib \ --with-system-icu \ --with-system-nspr \ --with-system-zlib \ @@ -48,7 +47,6 @@ build () { --disable-jemalloc \ --disable-strip - make } diff --git a/repo/system/js78/patches/disable-jslint.patch b/repo/system/js78/patches/disable-jslint.patch deleted file mode 100644 index 04a8b3e..0000000 --- a/repo/system/js78/patches/disable-jslint.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- a/js/src/build/moz.build -+++ b/js/src/build/moz.build -@@ -80,14 +80,3 @@ - NO_EXPAND_LIBS = True - - DIST_INSTALL = True -- --# Run SpiderMonkey style checker after linking the static library. This avoids --# running the script for no-op builds. --GeneratedFile( -- 'spidermonkey_checks', script='/config/run_spidermonkey_checks.py', -- inputs=[ -- '!%sjs_static.%s' % (CONFIG['LIB_PREFIX'], CONFIG['LIB_SUFFIX']), -- '/config/check_spidermonkey_style.py', -- '/config/check_macroassembler_style.py', -- '/config/check_js_opcode.py' -- ]) diff --git a/repo/system/js78/patches/fd6847c9416f9eebde636e21d794d25d1be8791d.patch b/repo/system/js78/patches/fd6847c9416f9eebde636e21d794d25d1be8791d.patch deleted file mode 100644 index 1af68d9..0000000 --- a/repo/system/js78/patches/fd6847c9416f9eebde636e21d794d25d1be8791d.patch +++ /dev/null @@ -1,37 +0,0 @@ -See https://bugzilla.mozilla.org/show_bug.cgi?id=1539739 - -From fd6847c9416f9eebde636e21d794d25d1be8791d Mon Sep 17 00:00:00 2001 -From: Mike Hommey -Date: Sat, 1 Jun 2019 09:06:01 +0900 -Subject: [PATCH] Bug 1526653 - Include struct definitions for user_vfp and - user_vfp_exc. - ---- - js/src/wasm/WasmSignalHandlers.cpp | 11 ++++++++++- - 1 file changed, 10 insertions(+), 1 deletion(-) - -diff --git a/js/src/wasm/WasmSignalHandlers.cpp b/js/src/wasm/WasmSignalHandlers.cpp -index 636537f8478..383c380f04c 100644 ---- a/js/src/wasm/WasmSignalHandlers.cpp -+++ b/js/src/wasm/WasmSignalHandlers.cpp -@@ -248,7 +248,16 @@ using mozilla::DebugOnly; - #endif - - #ifdef WASM_EMULATE_ARM_UNALIGNED_FP_ACCESS --# include -+struct user_vfp { -+ unsigned long long fpregs[32]; -+ unsigned long fpscr; -+}; -+ -+struct user_vfp_exc { -+ unsigned long fpexc; -+ unsigned long fpinst; -+ unsigned long fpinst2; -+}; - #endif - - #if defined(ANDROID) --- -2.20.1 - diff --git a/repo/system/js78/patches/fix-musl-build.patch b/repo/system/js78/patches/fix-musl-build.patch deleted file mode 100644 index af39467..0000000 --- a/repo/system/js78/patches/fix-musl-build.patch +++ /dev/null @@ -1,16 +0,0 @@ -Upstream: No -Reason: mozjs60 miscompiles on musl if built with HAVE_THREAD_TLS_KEYWORD: -https://github.com/void-linux/void-packages/issues/2598 -diff --git a/js/src/old-configure.in b/js/src/old-configure.in ---- a/js/src/old-configure.in -+++ b/js/src/old-configure.in -@@ -1272,6 +1272,9 @@ - *-android*|*-linuxandroid*) - : - ;; -+ *-musl*) -+ : -+ ;; - *) - AC_DEFINE(HAVE_THREAD_TLS_KEYWORD) - ;; diff --git a/repo/system/js78/patches/fix-python3.10-compilation.patch b/repo/system/js78/patches/fix-python3.10-compilation.patch deleted file mode 100644 index 4473d9b..0000000 --- a/repo/system/js78/patches/fix-python3.10-compilation.patch +++ /dev/null @@ -1,312 +0,0 @@ -#https://src.fedoraproject.org/rpms/mozjs78/blob/rawhide/f/Fixup-compatibility-of-mozbuild-with-Python-3.10.patch - -m a88d0c8e27b48344942187c2611bb121bde9332d Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= -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/main.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) - ---- a/python/mach/mach/main.py -+++ b/python/mach/mach/main.py -@@ -16,7 +16,7 @@ - import sys - import traceback - import uuid --from collections import Iterable -+from collections.abc import Iterable - - from six import string_types - -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/repo/system/js78/patches/fix-rust-target.patch b/repo/system/js78/patches/fix-rust-target.patch deleted file mode 100644 index f1a98df..0000000 --- a/repo/system/js78/patches/fix-rust-target.patch +++ /dev/null @@ -1,15 +0,0 @@ -Allow us to just set RUST_TARGEt ourselves instead of hacking around in mozilla's -weird custom build system... - -diff -upr firefox-68.9.0.orig/build/moz.configure/rust.configure firefox-68.9.0/build/moz.configure/rust.configure ---- firefox-68.9.0.orig/build/moz.configure/rust.configure 2020-06-02 22:54:39.982616128 +0200 -+++ firefox-68.9.0/build/moz.configure/rust.configure 2020-06-02 23:08:37.656332899 +0200 -@@ -345,7 +345,7 @@ def rust_triple_alias(host_or_target): - - return None - -- rustc_target = find_candidate(candidates) -+ rustc_target = os.environ['RUST_TARGET'] - - if rustc_target is None: - die("Don't know how to translate {} for rustc".format( diff --git a/repo/system/libgudev/libgudev.xibuild b/repo/system/libgudev/libgudev.xibuild index a365c76..6237de9 100644 --- a/repo/system/libgudev/libgudev.xibuild +++ b/repo/system/libgudev/libgudev.xibuild @@ -1,7 +1,7 @@ #!/bin/sh MAKEDEPS="meson" -DEPS="glib2 libudev" +DEPS="glib eudev" PKG_VER=237 SOURCE=https://download.gnome.org/sources/libgudev/$PKG_VER/libgudev-$PKG_VER.tar.xz diff --git a/repo/system/libptytty/libptytty.xibuild b/repo/system/libptytty/libptytty.xibuild index bc36364..19d5cc1 100644 --- a/repo/system/libptytty/libptytty.xibuild +++ b/repo/system/libptytty/libptytty.xibuild @@ -1,6 +1,6 @@ #!/bin/sh -MAKEDEPS="meson cmake" +MAKEDEPS="meson cmake utmps" DEPS="musl" PKG_VER=2.0 @@ -13,7 +13,9 @@ build () { cmake -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_BUILD_TYPE=Release \ - -DPT_UTMP_FILE:STRING=/run/utmp \ + -DUTMP_SUPPORT=OFF \ + -DWTMP_SUPPORT=OFF \ + -DLASTLOG_SUPPORT=OFF \ .. && make diff --git a/repo/system/mime-types/mime-types.xibuild b/repo/system/mime-types/mime-types.xibuild new file mode 100644 index 0000000..d5d7274 --- /dev/null +++ b/repo/system/mime-types/mime-types.xibuild @@ -0,0 +1,19 @@ +#!/bin/sh + +NAME="mime-types" +DESC="Helper application for MIME types" + +MAKEDEPS="make " +DEPS="xterm " + +PKG_VER=2.1.53 +SOURCE="https://releases.pagure.org/mailcap/mailcap-$PKG_VER.tar.xz" + +prepare () { + sed -i 's/-Dpm/-Dm/' Makefile +} + +package () { + make PREFIX=/usr DESTDIR=$PKG_DEST install + rm -Rf $PKG_DEST/etc/nginx +} diff --git a/repo/system/pahole/pahole.xibuild b/repo/system/pahole/pahole.xibuild index 6b57291..821c4f5 100644 --- a/repo/system/pahole/pahole.xibuild +++ b/repo/system/pahole/pahole.xibuild @@ -1,7 +1,7 @@ #!/bin/sh MAKEDEPS="cmake-modules python make " -DEPS="libelf python elfutils libdwarf musl-obstack argp-standalone libbpf" +DEPS="libelf python elfutils libdwarf musl-obstack argp-standalone" PKG_VER=1.22 SOURCE=https://git.kernel.org/pub/scm/devel/pahole/pahole.git diff --git a/repo/system/pcsc-lite/pcsc-lite.xibuild b/repo/system/pcsc-lite/pcsc-lite.xibuild index 86d86d1..b0d2e25 100644 --- a/repo/system/pcsc-lite/pcsc-lite.xibuild +++ b/repo/system/pcsc-lite/pcsc-lite.xibuild @@ -1,6 +1,6 @@ #!/bin/sh -MAKEDEPS="make perl lipcap-ng" +MAKEDEPS="make perl libcap-ng" DEPS="musl sbase eudev" PKG_VER=1.9.4 diff --git a/repo/system/polkit/CVE-2021-4034.patch b/repo/system/polkit/CVE-2021-4034.patch new file mode 100644 index 0000000..a06300a --- /dev/null +++ b/repo/system/polkit/CVE-2021-4034.patch @@ -0,0 +1,79 @@ +From a2bf5c9c83b6ae46cbd5c779d3055bff81ded683 Mon Sep 17 00:00:00 2001 +From: Jan Rybar +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/repo/system/polkit/files/polkit-1 b/repo/system/polkit/files/polkit-1 deleted file mode 100644 index df1b69a..0000000 --- a/repo/system/polkit/files/polkit-1 +++ /dev/null @@ -1,9 +0,0 @@ -# Begin /etc/pam.d/polkit-1 - -auth include system-auth -account include system-account -password include system-password -session include system-session - -# End /etc/pam.d/polkit-1 - diff --git a/repo/system/polkit/make-innetgr-optional.patch b/repo/system/polkit/make-innetgr-optional.patch new file mode 100644 index 0000000..8459c67 --- /dev/null +++ b/repo/system/polkit/make-innetgr-optional.patch @@ -0,0 +1,239 @@ +See https://gitlab.freedesktop.org/polkit/polkit/merge_requests/10 + +From 778bb45e0e0cbabe2b04adf67a500af1dab09768 Mon Sep 17 00:00:00 2001 +From: "A. Wilcox" +Date: Wed, 11 Jul 2018 04:54:26 -0500 +Subject: [PATCH] make netgroup support optional + +On at least Linux/musl and Linux/uclibc, netgroup support is not +available. PolKit fails to compile on these systems for that reason. + +This change makes netgroup support conditional on the presence of the +setnetgrent(3) function which is required for the support to work. If +that function is not available on the system, an error will be returned +to the administrator if unix-netgroup: is specified in configuration. + +Fixes bug 50145. + +Closes polkit/polkit#14. + +Signed-off-by: A. Wilcox +--- +diff --git a/configure.ac b/configure.ac +index 4ac2219..ca478df 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -100,7 +100,7 @@ AC_CHECK_LIB(expat,XML_ParserCreate,[EXPAT_LIBS="-lexpat"], + [AC_MSG_ERROR([Can't find expat library. Please install expat.])]) + AC_SUBST(EXPAT_LIBS) + +-AC_CHECK_FUNCS(clearenv fdatasync) ++AC_CHECK_FUNCS(clearenv fdatasync setnetgrent) + + if test "x$GCC" = "xyes"; then + LDFLAGS="-Wl,--as-needed $LDFLAGS" +diff --git a/src/polkit/polkitidentity.c b/src/polkit/polkitidentity.c +index 3aa1f7f..10e9c17 100644 +--- a/src/polkit/polkitidentity.c ++++ b/src/polkit/polkitidentity.c +@@ -182,7 +182,15 @@ polkit_identity_from_string (const gchar *str, + } + else if (g_str_has_prefix (str, "unix-netgroup:")) + { ++#ifndef HAVE_SETNETGRENT ++ g_set_error (error, ++ POLKIT_ERROR, ++ POLKIT_ERROR_FAILED, ++ "Netgroups are not available on this machine ('%s')", ++ str); ++#else + identity = polkit_unix_netgroup_new (str + sizeof "unix-netgroup:" - 1); ++#endif + } + + if (identity == NULL && (error != NULL && *error == NULL)) +@@ -344,6 +352,13 @@ polkit_identity_new_for_gvariant (GVariant *variant, + GVariant *v; + const char *name; + ++#ifndef HAVE_SETNETGRENT ++ g_set_error (error, ++ POLKIT_ERROR, ++ POLKIT_ERROR_FAILED, ++ "Netgroups are not available on this machine"); ++ goto out; ++#else + v = lookup_asv (details_gvariant, "name", G_VARIANT_TYPE_STRING, error); + if (v == NULL) + { +@@ -353,6 +368,7 @@ polkit_identity_new_for_gvariant (GVariant *variant, + name = g_variant_get_string (v, NULL); + ret = polkit_unix_netgroup_new (name); + g_variant_unref (v); ++#endif + } + else + { +diff --git a/src/polkit/polkitunixnetgroup.c b/src/polkit/polkitunixnetgroup.c +index 8a2b369..83f8d4a 100644 +--- a/src/polkit/polkitunixnetgroup.c ++++ b/src/polkit/polkitunixnetgroup.c +@@ -194,6 +194,9 @@ polkit_unix_netgroup_set_name (PolkitUnixNetgroup *group, + PolkitIdentity * + polkit_unix_netgroup_new (const gchar *name) + { ++#ifndef HAVE_SETNETGRENT ++ g_assert_not_reached(); ++#endif + g_return_val_if_fail (name != NULL, NULL); + return POLKIT_IDENTITY (g_object_new (POLKIT_TYPE_UNIX_NETGROUP, + "name", name, +diff --git a/src/polkitbackend/polkitbackendinteractiveauthority.c b/src/polkitbackend/polkitbackendinteractiveauthority.c +index 056d9a8..36c2f3d 100644 +--- a/src/polkitbackend/polkitbackendinteractiveauthority.c ++++ b/src/polkitbackend/polkitbackendinteractiveauthority.c +@@ -2233,25 +2233,26 @@ get_users_in_net_group (PolkitIdentity *group, + GList *ret; + + ret = NULL; ++#ifdef HAVE_SETNETGRENT + name = polkit_unix_netgroup_get_name (POLKIT_UNIX_NETGROUP (group)); + +-#ifdef HAVE_SETNETGRENT_RETURN ++# ifdef HAVE_SETNETGRENT_RETURN + if (setnetgrent (name) == 0) + { + g_warning ("Error looking up net group with name %s: %s", name, g_strerror (errno)); + goto out; + } +-#else ++# else + setnetgrent (name); +-#endif ++# endif /* HAVE_SETNETGRENT_RETURN */ + + for (;;) + { +-#if defined(HAVE_NETBSD) || defined(HAVE_OPENBSD) ++# if defined(HAVE_NETBSD) || defined(HAVE_OPENBSD) + const char *hostname, *username, *domainname; +-#else ++# else + char *hostname, *username, *domainname; +-#endif ++# endif /* defined(HAVE_NETBSD) || defined(HAVE_OPENBSD) */ + PolkitIdentity *user; + GError *error = NULL; + +@@ -2282,6 +2283,7 @@ get_users_in_net_group (PolkitIdentity *group, + + out: + endnetgrent (); ++#endif /* HAVE_SETNETGRENT */ + return ret; + } + +diff --git a/src/polkitbackend/polkitbackendjsauthority.cpp b/src/polkitbackend/polkitbackendjsauthority.cpp +index ca17108..da95180 100644 +--- a/src/polkitbackend/polkitbackendjsauthority.cpp ++++ b/src/polkitbackend/polkitbackendjsauthority.cpp +@@ -1520,6 +1520,7 @@ js_polkit_user_is_in_netgroup (JSContext *cx, + + JS::CallArgs args = JS::CallArgsFromVp (argc, vp); + ++#ifdef HAVE_SETNETGRENT + JS::RootedString usrstr (authority->priv->cx); + usrstr = args[0].toString(); + user = JS_EncodeStringToUTF8 (cx, usrstr); +@@ -1534,6 +1535,7 @@ js_polkit_user_is_in_netgroup (JSContext *cx, + { + is_in_netgroup = true; + } ++ #endif + + ret = true; + +diff --git a/test/polkit/polkitidentitytest.c b/test/polkit/polkitidentitytest.c +index e91967b..e829aaa 100644 +--- a/test/polkit/polkitidentitytest.c ++++ b/test/polkit/polkitidentitytest.c +@@ -19,6 +19,7 @@ + * Author: Nikki VonHollen + */ + ++#include "config.h" + #include "glib.h" + #include + #include +@@ -145,11 +146,15 @@ struct ComparisonTestData comparison_test_data [] = { + {"unix-group:root", "unix-group:jane", FALSE}, + {"unix-group:jane", "unix-group:jane", TRUE}, + ++#ifdef HAVE_SETNETGRENT + {"unix-netgroup:foo", "unix-netgroup:foo", TRUE}, + {"unix-netgroup:foo", "unix-netgroup:bar", FALSE}, ++#endif + + {"unix-user:root", "unix-group:root", FALSE}, ++#ifdef HAVE_SETNETGRENT + {"unix-user:jane", "unix-netgroup:foo", FALSE}, ++#endif + + {NULL}, + }; +@@ -181,11 +186,13 @@ main (int argc, char *argv[]) + g_test_add_data_func ("/PolkitIdentity/group_string_2", "unix-group:jane", test_string); + g_test_add_data_func ("/PolkitIdentity/group_string_3", "unix-group:users", test_string); + ++#ifdef HAVE_SETNETGRENT + g_test_add_data_func ("/PolkitIdentity/netgroup_string", "unix-netgroup:foo", test_string); ++ g_test_add_data_func ("/PolkitIdentity/netgroup_gvariant", "unix-netgroup:foo", test_gvariant); ++#endif + + g_test_add_data_func ("/PolkitIdentity/user_gvariant", "unix-user:root", test_gvariant); + g_test_add_data_func ("/PolkitIdentity/group_gvariant", "unix-group:root", test_gvariant); +- g_test_add_data_func ("/PolkitIdentity/netgroup_gvariant", "unix-netgroup:foo", test_gvariant); + + add_comparison_tests (); + +diff --git a/test/polkit/polkitunixnetgrouptest.c b/test/polkit/polkitunixnetgrouptest.c +index 3701ba1..e3352eb 100644 +--- a/test/polkit/polkitunixnetgrouptest.c ++++ b/test/polkit/polkitunixnetgrouptest.c +@@ -19,6 +19,7 @@ + * Author: Nikki VonHollen + */ + ++#include "config.h" + #include "glib.h" + #include + #include +@@ -69,7 +70,9 @@ int + main (int argc, char *argv[]) + { + g_test_init (&argc, &argv, NULL); ++#ifdef HAVE_SETNETGRENT + g_test_add_func ("/PolkitUnixNetgroup/new", test_new); + g_test_add_func ("/PolkitUnixNetgroup/set_name", test_set_name); ++#endif + return g_test_run (); + } +diff --git a/test/polkitbackend/test-polkitbackendjsauthority.c b/test/polkitbackend/test-polkitbackendjsauthority.c +index f97e0e0..fc52149 100644 +--- a/test/polkitbackend/test-polkitbackendjsauthority.c ++++ b/test/polkitbackend/test-polkitbackendjsauthority.c +@@ -137,12 +137,14 @@ test_get_admin_identities (void) + "unix-group:users" + } + }, ++#ifdef HAVE_SETNETGRENT + { + "net.company.action3", + { + "unix-netgroup:foo" + } + }, ++#endif + }; + guint n; + diff --git a/repo/system/polkit/patches/CVE-2021-4034.patch b/repo/system/polkit/patches/CVE-2021-4034.patch deleted file mode 100644 index a06300a..0000000 --- a/repo/system/polkit/patches/CVE-2021-4034.patch +++ /dev/null @@ -1,79 +0,0 @@ -From a2bf5c9c83b6ae46cbd5c779d3055bff81ded683 Mon Sep 17 00:00:00 2001 -From: Jan Rybar -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/repo/system/polkit/patches/make-innetgr-optional.patch b/repo/system/polkit/patches/make-innetgr-optional.patch deleted file mode 100644 index 8459c67..0000000 --- a/repo/system/polkit/patches/make-innetgr-optional.patch +++ /dev/null @@ -1,239 +0,0 @@ -See https://gitlab.freedesktop.org/polkit/polkit/merge_requests/10 - -From 778bb45e0e0cbabe2b04adf67a500af1dab09768 Mon Sep 17 00:00:00 2001 -From: "A. Wilcox" -Date: Wed, 11 Jul 2018 04:54:26 -0500 -Subject: [PATCH] make netgroup support optional - -On at least Linux/musl and Linux/uclibc, netgroup support is not -available. PolKit fails to compile on these systems for that reason. - -This change makes netgroup support conditional on the presence of the -setnetgrent(3) function which is required for the support to work. If -that function is not available on the system, an error will be returned -to the administrator if unix-netgroup: is specified in configuration. - -Fixes bug 50145. - -Closes polkit/polkit#14. - -Signed-off-by: A. Wilcox ---- -diff --git a/configure.ac b/configure.ac -index 4ac2219..ca478df 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -100,7 +100,7 @@ AC_CHECK_LIB(expat,XML_ParserCreate,[EXPAT_LIBS="-lexpat"], - [AC_MSG_ERROR([Can't find expat library. Please install expat.])]) - AC_SUBST(EXPAT_LIBS) - --AC_CHECK_FUNCS(clearenv fdatasync) -+AC_CHECK_FUNCS(clearenv fdatasync setnetgrent) - - if test "x$GCC" = "xyes"; then - LDFLAGS="-Wl,--as-needed $LDFLAGS" -diff --git a/src/polkit/polkitidentity.c b/src/polkit/polkitidentity.c -index 3aa1f7f..10e9c17 100644 ---- a/src/polkit/polkitidentity.c -+++ b/src/polkit/polkitidentity.c -@@ -182,7 +182,15 @@ polkit_identity_from_string (const gchar *str, - } - else if (g_str_has_prefix (str, "unix-netgroup:")) - { -+#ifndef HAVE_SETNETGRENT -+ g_set_error (error, -+ POLKIT_ERROR, -+ POLKIT_ERROR_FAILED, -+ "Netgroups are not available on this machine ('%s')", -+ str); -+#else - identity = polkit_unix_netgroup_new (str + sizeof "unix-netgroup:" - 1); -+#endif - } - - if (identity == NULL && (error != NULL && *error == NULL)) -@@ -344,6 +352,13 @@ polkit_identity_new_for_gvariant (GVariant *variant, - GVariant *v; - const char *name; - -+#ifndef HAVE_SETNETGRENT -+ g_set_error (error, -+ POLKIT_ERROR, -+ POLKIT_ERROR_FAILED, -+ "Netgroups are not available on this machine"); -+ goto out; -+#else - v = lookup_asv (details_gvariant, "name", G_VARIANT_TYPE_STRING, error); - if (v == NULL) - { -@@ -353,6 +368,7 @@ polkit_identity_new_for_gvariant (GVariant *variant, - name = g_variant_get_string (v, NULL); - ret = polkit_unix_netgroup_new (name); - g_variant_unref (v); -+#endif - } - else - { -diff --git a/src/polkit/polkitunixnetgroup.c b/src/polkit/polkitunixnetgroup.c -index 8a2b369..83f8d4a 100644 ---- a/src/polkit/polkitunixnetgroup.c -+++ b/src/polkit/polkitunixnetgroup.c -@@ -194,6 +194,9 @@ polkit_unix_netgroup_set_name (PolkitUnixNetgroup *group, - PolkitIdentity * - polkit_unix_netgroup_new (const gchar *name) - { -+#ifndef HAVE_SETNETGRENT -+ g_assert_not_reached(); -+#endif - g_return_val_if_fail (name != NULL, NULL); - return POLKIT_IDENTITY (g_object_new (POLKIT_TYPE_UNIX_NETGROUP, - "name", name, -diff --git a/src/polkitbackend/polkitbackendinteractiveauthority.c b/src/polkitbackend/polkitbackendinteractiveauthority.c -index 056d9a8..36c2f3d 100644 ---- a/src/polkitbackend/polkitbackendinteractiveauthority.c -+++ b/src/polkitbackend/polkitbackendinteractiveauthority.c -@@ -2233,25 +2233,26 @@ get_users_in_net_group (PolkitIdentity *group, - GList *ret; - - ret = NULL; -+#ifdef HAVE_SETNETGRENT - name = polkit_unix_netgroup_get_name (POLKIT_UNIX_NETGROUP (group)); - --#ifdef HAVE_SETNETGRENT_RETURN -+# ifdef HAVE_SETNETGRENT_RETURN - if (setnetgrent (name) == 0) - { - g_warning ("Error looking up net group with name %s: %s", name, g_strerror (errno)); - goto out; - } --#else -+# else - setnetgrent (name); --#endif -+# endif /* HAVE_SETNETGRENT_RETURN */ - - for (;;) - { --#if defined(HAVE_NETBSD) || defined(HAVE_OPENBSD) -+# if defined(HAVE_NETBSD) || defined(HAVE_OPENBSD) - const char *hostname, *username, *domainname; --#else -+# else - char *hostname, *username, *domainname; --#endif -+# endif /* defined(HAVE_NETBSD) || defined(HAVE_OPENBSD) */ - PolkitIdentity *user; - GError *error = NULL; - -@@ -2282,6 +2283,7 @@ get_users_in_net_group (PolkitIdentity *group, - - out: - endnetgrent (); -+#endif /* HAVE_SETNETGRENT */ - return ret; - } - -diff --git a/src/polkitbackend/polkitbackendjsauthority.cpp b/src/polkitbackend/polkitbackendjsauthority.cpp -index ca17108..da95180 100644 ---- a/src/polkitbackend/polkitbackendjsauthority.cpp -+++ b/src/polkitbackend/polkitbackendjsauthority.cpp -@@ -1520,6 +1520,7 @@ js_polkit_user_is_in_netgroup (JSContext *cx, - - JS::CallArgs args = JS::CallArgsFromVp (argc, vp); - -+#ifdef HAVE_SETNETGRENT - JS::RootedString usrstr (authority->priv->cx); - usrstr = args[0].toString(); - user = JS_EncodeStringToUTF8 (cx, usrstr); -@@ -1534,6 +1535,7 @@ js_polkit_user_is_in_netgroup (JSContext *cx, - { - is_in_netgroup = true; - } -+ #endif - - ret = true; - -diff --git a/test/polkit/polkitidentitytest.c b/test/polkit/polkitidentitytest.c -index e91967b..e829aaa 100644 ---- a/test/polkit/polkitidentitytest.c -+++ b/test/polkit/polkitidentitytest.c -@@ -19,6 +19,7 @@ - * Author: Nikki VonHollen - */ - -+#include "config.h" - #include "glib.h" - #include - #include -@@ -145,11 +146,15 @@ struct ComparisonTestData comparison_test_data [] = { - {"unix-group:root", "unix-group:jane", FALSE}, - {"unix-group:jane", "unix-group:jane", TRUE}, - -+#ifdef HAVE_SETNETGRENT - {"unix-netgroup:foo", "unix-netgroup:foo", TRUE}, - {"unix-netgroup:foo", "unix-netgroup:bar", FALSE}, -+#endif - - {"unix-user:root", "unix-group:root", FALSE}, -+#ifdef HAVE_SETNETGRENT - {"unix-user:jane", "unix-netgroup:foo", FALSE}, -+#endif - - {NULL}, - }; -@@ -181,11 +186,13 @@ main (int argc, char *argv[]) - g_test_add_data_func ("/PolkitIdentity/group_string_2", "unix-group:jane", test_string); - g_test_add_data_func ("/PolkitIdentity/group_string_3", "unix-group:users", test_string); - -+#ifdef HAVE_SETNETGRENT - g_test_add_data_func ("/PolkitIdentity/netgroup_string", "unix-netgroup:foo", test_string); -+ g_test_add_data_func ("/PolkitIdentity/netgroup_gvariant", "unix-netgroup:foo", test_gvariant); -+#endif - - g_test_add_data_func ("/PolkitIdentity/user_gvariant", "unix-user:root", test_gvariant); - g_test_add_data_func ("/PolkitIdentity/group_gvariant", "unix-group:root", test_gvariant); -- g_test_add_data_func ("/PolkitIdentity/netgroup_gvariant", "unix-netgroup:foo", test_gvariant); - - add_comparison_tests (); - -diff --git a/test/polkit/polkitunixnetgrouptest.c b/test/polkit/polkitunixnetgrouptest.c -index 3701ba1..e3352eb 100644 ---- a/test/polkit/polkitunixnetgrouptest.c -+++ b/test/polkit/polkitunixnetgrouptest.c -@@ -19,6 +19,7 @@ - * Author: Nikki VonHollen - */ - -+#include "config.h" - #include "glib.h" - #include - #include -@@ -69,7 +70,9 @@ int - main (int argc, char *argv[]) - { - g_test_init (&argc, &argv, NULL); -+#ifdef HAVE_SETNETGRENT - g_test_add_func ("/PolkitUnixNetgroup/new", test_new); - g_test_add_func ("/PolkitUnixNetgroup/set_name", test_set_name); -+#endif - return g_test_run (); - } -diff --git a/test/polkitbackend/test-polkitbackendjsauthority.c b/test/polkitbackend/test-polkitbackendjsauthority.c -index f97e0e0..fc52149 100644 ---- a/test/polkitbackend/test-polkitbackendjsauthority.c -+++ b/test/polkitbackend/test-polkitbackendjsauthority.c -@@ -137,12 +137,14 @@ test_get_admin_identities (void) - "unix-group:users" - } - }, -+#ifdef HAVE_SETNETGRENT - { - "net.company.action3", - { - "unix-netgroup:foo" - } - }, -+#endif - }; - guint n; - diff --git a/repo/system/polkit/polkit-1 b/repo/system/polkit/polkit-1 new file mode 100644 index 0000000..df1b69a --- /dev/null +++ b/repo/system/polkit/polkit-1 @@ -0,0 +1,9 @@ +# Begin /etc/pam.d/polkit-1 + +auth include system-auth +account include system-account +password include system-password +session include system-session + +# End /etc/pam.d/polkit-1 + diff --git a/repo/system/shared-mime-info/shared-mime-info.xibuild b/repo/system/shared-mime-info/shared-mime-info.xibuild index cb6b887..fc3f28e 100644 --- a/repo/system/shared-mime-info/shared-mime-info.xibuild +++ b/repo/system/shared-mime-info/shared-mime-info.xibuild @@ -3,7 +3,7 @@ NAME="shared-mime-info" DESC="Freedesktop.org Shared MIME Info" -MAKEDEPS="meson ninja itstool libxml2-utils xmlto libxml2 glib" +MAKEDEPS="meson ninja itstool xmlto libxml2 glib" DEPS="sbase glib libxml2 musl pkg-config " PKG_VER=2.2 diff --git a/repo/system/syslinux/gcc-10.patch b/repo/system/syslinux/gcc-10.patch deleted file mode 100644 index b5bbad0..0000000 --- a/repo/system/syslinux/gcc-10.patch +++ /dev/null @@ -1,109 +0,0 @@ -From 951928f2cad5682c2844e6bd0f7201236c5d9b66 Mon Sep 17 00:00:00 2001 -From: Merlin Mathesius -Date: Wed, 13 May 2020 08:02:27 -0500 -Subject: [PATCH] Workaround multiple definition of symbol errors - ---- - com32/cmenu/Makefile | 2 +- - com32/elflink/ldlinux/Makefile | 2 +- - com32/gpllib/Makefile | 2 +- - com32/hdt/Makefile | 2 +- - core/Makefile | 2 +- - dos/Makefile | 2 +- - efi/Makefile | 2 +- - 7 files changed, 7 insertions(+), 7 deletions(-) - -diff --git a/com32/cmenu/Makefile b/com32/cmenu/Makefile -index b81b68ed..2ae989c4 100644 ---- a/com32/cmenu/Makefile -+++ b/com32/cmenu/Makefile -@@ -49,7 +49,7 @@ makeoutputdirs: - @mkdir -p $(OBJ)/libmenu - - libmenu/libmenu.elf: $(LIBMENU) -- $(LD) -shared $(LDFLAGS) -soname $(patsubst %.elf,%.c32,$(@F)) \ -+ $(LD) -shared $(LDFLAGS) -z muldefs -soname $(patsubst %.elf,%.c32,$(@F)) \ - -o $@ $^ - - tidy dist: -diff --git a/com32/elflink/ldlinux/Makefile b/com32/elflink/ldlinux/Makefile -index 87c0d362..2be2a01a 100644 ---- a/com32/elflink/ldlinux/Makefile -+++ b/com32/elflink/ldlinux/Makefile -@@ -33,7 +33,7 @@ endif - all: $(BTARGET) ldlinux_lnx.a - - ldlinux.elf : $(OBJS) -- $(LD) $(LDFLAGS) -soname $(SONAME) -o $@ $^ $(LIBS) -+ $(LD) $(LDFLAGS) -z muldefs -soname $(SONAME) -o $@ $^ $(LIBS) - - LNXCFLAGS += -D__export='__attribute__((visibility("default")))' - LNXLIBOBJS = get_key.lo -diff --git a/com32/gpllib/Makefile b/com32/gpllib/Makefile -index 1fec9145..2d764d0b 100644 ---- a/com32/gpllib/Makefile -+++ b/com32/gpllib/Makefile -@@ -24,7 +24,7 @@ makeoutputdirs: - $(addprefix $(OBJ),$(sort $(dir $(LIBOBJS)))),$(b)) - - libgpl.elf : $(LIBOBJS) -- $(LD) -shared $(LDFLAGS) -soname $(patsubst %.elf,%.c32,$(@F)) -o $@ $^ -+ $(LD) -shared $(LDFLAGS) -z muldefs -soname $(patsubst %.elf,%.c32,$(@F)) -o $@ $^ - - tidy dist clean: - find . \( -name \*.o -o -name .\*.d -o -name \*.tmp \) -print0 | \ -diff --git a/com32/hdt/Makefile b/com32/hdt/Makefile -index 61736d05..1d947857 100644 ---- a/com32/hdt/Makefile -+++ b/com32/hdt/Makefile -@@ -52,7 +52,7 @@ QEMU ?= qemu-kvm - all: $(MODULES) $(TESTFILES) - - hdt.elf : $(OBJS) $(LIBS) $(C_LIBS) -- $(LD) $(LDFLAGS) -o $@ $^ -+ $(LD) $(LDFLAGS) -z muldefs -o $@ $^ - - memtest: - -[ ! -f $(FLOPPY_DIR)/$(MEMTEST) ] && $(WGET) $(MEMTEST_URL) -O $(FLOPPY_DIR)/$(MEMTEST) -diff --git a/core/Makefile b/core/Makefile -index 46cb037c..f0cfcbe9 100644 ---- a/core/Makefile -+++ b/core/Makefile -@@ -156,7 +156,7 @@ LDSCRIPT = $(SRC)/$(ARCH)/syslinux.ld - NASM_ELF = elf - - %.elf: %.o $(LIBDEP) $(LDSCRIPT) $(AUXLIBS) -- $(LD) $(LDFLAGS) -pie -Bsymbolic \ -+ $(LD) $(LDFLAGS) -z muldefs -pie -Bsymbolic \ - -T $(LDSCRIPT) \ - --unresolved-symbols=report-all \ - -E --hash-style=gnu -M -o $@ $< \ -diff --git a/dos/Makefile b/dos/Makefile -index 4c930d19..5d1c72ca 100644 ---- a/dos/Makefile -+++ b/dos/Makefile -@@ -19,7 +19,7 @@ include $(MAKEDIR)/embedded.mk - CFLAGS += -D__MSDOS__ -mregparm=3 -DREGPARM=3 - # CFLAGS += -DDEBUG - --LDFLAGS = -T $(SRC)/dosexe.ld -+LDFLAGS = -T $(SRC)/dosexe.ld -z muldefs - OPTFLAGS = -g - INCLUDES = -include code16.h -nostdinc -iwithprefix include \ - -I$(SRC) -I$(SRC)/.. -I$(SRC)/../libfat \ -diff --git a/efi/Makefile b/efi/Makefile -index bbf23f24..3dd922d5 100644 ---- a/efi/Makefile -+++ b/efi/Makefile -@@ -69,7 +69,7 @@ $(OBJS): | $(OBJ)/$(ARCH) - BTARGET = syslinux.efi - - syslinux.so: $(OBJS) $(CORE_OBJS) $(LIB_OBJS) -- $(LD) $(LDFLAGS) --strip-debug -o $@ $^ -lgnuefi -lefi -+ $(LD) $(LDFLAGS) -z muldefs --strip-debug -o $@ $^ -lgnuefi -lefi - - # We need to rename the .hash section because the EFI firmware - # linker really doesn't like it. --- -2.25.1 - -- cgit v1.2.1