Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package seamonkey for openSUSE:Factory checked in at 2023-10-05 20:03:50 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/seamonkey (Old) and /work/SRC/openSUSE:Factory/.seamonkey.new.28202 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "seamonkey" Thu Oct 5 20:03:50 2023 rev:26 rq:1115612 version:2.53.17.1 Changes: -------- --- /work/SRC/openSUSE:Factory/seamonkey/seamonkey.changes 2023-10-02 20:08:59.116239564 +0200 +++ /work/SRC/openSUSE:Factory/.seamonkey.new.28202/seamonkey.changes 2023-10-05 20:04:52.094430728 +0200 @@ -1,0 +2,11 @@ +Wed Oct 04 08:21:55 UTC 2023 - Tristan Miller <psychon...@nothingisreal.com> + +- add seamonkey-binutils.patch to allow building with binutils >= 2.41: + https://bugzilla.mozilla.org/show_bug.cgi?id=1856238 + https://bugzilla.mozilla.org/show_bug.cgi?id=1846703 +- add mozilla-bmo531915.patch to fix builds for x86: + https://bugzilla.mozilla.org/show_bug.cgi?id=531915 +- request inclusion in Leap 15.4 and 15.5: + https://bugzilla.opensuse.org/show_bug.cgi?id=1215944 + +------------------------------------------------------------------- @@ -24 +35 @@ - https://bugzilla.opensuse.org/show_bug.cgi?id= + https://bugzilla.opensuse.org/show_bug.cgi?id=1215585 New: ---- mozilla-bmo531915.patch seamonkey-binutils.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ seamonkey.spec ++++++ --- /var/tmp/diff_new_pack.fKV0d1/_old 2023-10-05 20:04:55.694560789 +0200 +++ /var/tmp/diff_new_pack.fKV0d1/_new 2023-10-05 20:04:55.698560933 +0200 @@ -89,10 +89,12 @@ Source11: seamonkey-appdata.tar.bz2 Source12: seamonkey-GNUmakefile Patch1: mozilla-nongnome-proxies.patch +Patch2: seamonkey-binutils.patch Patch3: mozilla-ntlm-full-path.patch Patch4: seamonkey-lto.patch Patch5: seamonkey-man-page.patch Patch6: reproducible.patch +Patch7: mozilla-bmo531915.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build PreReq: /bin/sh coreutils Provides: seamonkey-mail = %{version} @@ -221,10 +223,12 @@ cp %{SOURCE12} GNUmakefile %patch1 -p1 +%patch2 -p1 %patch3 -p2 %patch4 -p1 %patch5 -p0 %patch6 -p1 +%patch7 -p1 cat << EOF > .mozconfig mk_add_options MOZILLA_OFFICIAL=1 ++++++ mozilla-bmo531915.patch ++++++ # HG changeset patch # User Wolfgang Rosenauer <w...@rosenauer.org> # Parent fa8a5832a374ccd7af5db927b992b5d9f15273ef diff --git a/modules/fdlibm/src/math_private.h b/modules/fdlibm/src/math_private.h --- a/modules/fdlibm/src/math_private.h +++ b/modules/fdlibm/src/math_private.h @@ -25,19 +25,24 @@ #include "fdlibm.h" /* * Emulate FreeBSD internal double types. * Adapted from https://github.com/freebsd/freebsd-src/search?q=__double_t */ +#ifdef __i386__ +typedef long double __double_t; +typedef long double __float_t; +#else typedef double __double_t; +typedef float __float_t; +#endif typedef __double_t double_t; -typedef float __float_t; /* * The original fdlibm code used statements like: * n0 = ((*(int*)&one)>>29)^1; * index of high word * * ix0 = *(n0+(int*)&x); * high word of x * * ix1 = *((1-n0)+(int*)&x); * low word of x * * to dig two 32 bit words out of the 64 bit IEEE floating point * value. That is non-ANSI, and, moreover, the gcc instruction ++++++ seamonkey-binutils.patch ++++++ diff --git a/media/ffvpx/1846703.patch b/media/ffvpx/1846703.patch new file mode 100644 --- /dev/null +++ b/media/ffvpx/1846703.patch @@ -0,0 +1,76 @@ +From effadce6c756247ea8bae32dc13bb3e6f464f0eb Mon Sep 17 00:00:00 2001 +From: =?utf8?q?R=C3=A9mi=20Denis-Courmont?= <r...@remlab.net> +Date: Sun, 16 Jul 2023 18:18:02 +0300 +Subject: [PATCH] avcodec/x86/mathops: clip constants used with shift + instructions within inline assembly + +Fixes assembling with binutil as >= 2.41 + +Signed-off-by: James Almer <jamr...@gmail.com> +--- + libavcodec/x86/mathops.h | 26 +++++++++++++++++++++++--- + 1 file changed, 23 insertions(+), 3 deletions(-) + +diff --git a/libavcodec/x86/mathops.h b/libavcodec/x86/mathops.h +index 6298f5ed19..ca7e2dffc1 100644 +--- a/libavcodec/x86/mathops.h ++++ b/libavcodec/x86/mathops.h +@@ -35,12 +35,20 @@ + static av_always_inline av_const int MULL(int a, int b, unsigned shift) + { + int rt, dummy; ++ if (__builtin_constant_p(shift)) + __asm__ ( + "imull %3 \n\t" + "shrdl %4, %%edx, %%eax \n\t" + :"=a"(rt), "=d"(dummy) +- :"a"(a), "rm"(b), "ci"((uint8_t)shift) ++ :"a"(a), "rm"(b), "i"(shift & 0x1F) + ); ++ else ++ __asm__ ( ++ "imull %3 \n\t" ++ "shrdl %4, %%edx, %%eax \n\t" ++ :"=a"(rt), "=d"(dummy) ++ :"a"(a), "rm"(b), "c"((uint8_t)shift) ++ ); + return rt; + } + +@@ -113,19 +121,31 @@ __asm__ volatile(\ + // avoid +32 for shift optimization (gcc should do that ...) + #define NEG_SSR32 NEG_SSR32 + static inline int32_t NEG_SSR32( int32_t a, int8_t s){ ++ if (__builtin_constant_p(s)) + __asm__ ("sarl %1, %0\n\t" + : "+r" (a) +- : "ic" ((uint8_t)(-s)) ++ : "i" (-s & 0x1F) + ); ++ else ++ __asm__ ("sarl %1, %0\n\t" ++ : "+r" (a) ++ : "c" ((uint8_t)(-s)) ++ ); + return a; + } + + #define NEG_USR32 NEG_USR32 + static inline uint32_t NEG_USR32(uint32_t a, int8_t s){ ++ if (__builtin_constant_p(s)) + __asm__ ("shrl %1, %0\n\t" + : "+r" (a) +- : "ic" ((uint8_t)(-s)) ++ : "i" (-s & 0x1F) + ); ++ else ++ __asm__ ("shrl %1, %0\n\t" ++ : "+r" (a) ++ : "c" ((uint8_t)(-s)) ++ ); + return a; + } + +-- +2.30.2 + diff -ruN seamonkey-2.53.17.1.orig/media/ffvpx/README_MOZILLA seamonkey-2.53.17.1/media/ffvpx/README_MOZILLA --- seamonkey-2.53.17.1.orig/media/ffvpx/README_MOZILLA 2021-05-25 20:33:38.000000000 +0200 +++ seamonkey-2.53.17.1/media/ffvpx/README_MOZILLA 2023-10-04 10:18:51.211608861 +0200 @@ -1,6 +1,13 @@ This directory contains files used in gecko builds from FFmpeg (http://ffmpeg.org). The current files are from FFmpeg as of revision n4.0.2-6-g2be51cbeea + +This copy has a single patch backported from a later revision to fix the build with recent binutils: + +http://git.videolan.org/?p=ffmpeg.git;a=patch;h=effadce6c756247ea8bae32dc13bb3e6f464f0eb +that is available as `1846703.patch` in this directory. As usual this has other +changes that don't come from upstream, in `changes.patch` + All source files match their path from the library's source archive. Currently, we only use the vp8 and vp9 portion of the library, and only on x86 diff --git a/media/ffvpx/libavcodec/x86/mathops.h b/media/ffvpx/libavcodec/x86/mathops.h --- a/media/ffvpx/libavcodec/x86/mathops.h +++ b/media/ffvpx/libavcodec/x86/mathops.h @@ -33,16 +33,24 @@ #define MULL MULL static av_always_inline av_const int MULL(int a, int b, unsigned shift) { int rt, dummy; + if (__builtin_constant_p(shift)) __asm__ ( "imull %3 \n\t" "shrdl %4, %%edx, %%eax \n\t" :"=a"(rt), "=d"(dummy) - :"a"(a), "rm"(b), "ci"((uint8_t)shift) + :"a"(a), "rm"(b), "i"(shift & 0x1F) ); + else + __asm__ ( + "imull %3 \n\t" + "shrdl %4, %%edx, %%eax \n\t" + :"=a"(rt), "=d"(dummy) + :"a"(a), "rm"(b), "c"((uint8_t)shift) + ); return rt; } #define MULH MULH static av_always_inline av_const int MULH(int a, int b) @@ -111,23 +119,35 @@ : "+a"(level), "=&d"(mask)) // avoid +32 for shift optimization (gcc should do that ...) #define NEG_SSR32 NEG_SSR32 static inline int32_t NEG_SSR32( int32_t a, int8_t s){ + if (__builtin_constant_p(s)) __asm__ ("sarl %1, %0\n\t" : "+r" (a) - : "ic" ((uint8_t)(-s)) + : "i" (-s & 0x1F) ); + else + __asm__ ("sarl %1, %0\n\t" + : "+r" (a) + : "c" ((uint8_t)(-s)) + ); return a; } #define NEG_USR32 NEG_USR32 static inline uint32_t NEG_USR32(uint32_t a, int8_t s){ + if (__builtin_constant_p(s)) __asm__ ("shrl %1, %0\n\t" : "+r" (a) - : "ic" ((uint8_t)(-s)) + : "i" (-s & 0x1F) ); + else + __asm__ ("shrl %1, %0\n\t" + : "+r" (a) + : "c" ((uint8_t)(-s)) + ); return a; } #endif /* HAVE_INLINE_ASM */ #endif /* AVCODEC_X86_MATHOPS_H */