Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package rnnoise for openSUSE:Factory checked 
in at 2024-04-23 18:55:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rnnoise (Old)
 and      /work/SRC/openSUSE:Factory/.rnnoise.new.27645 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rnnoise"

Tue Apr 23 18:55:59 2024 rev:4 rq:1169651 version:0.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/rnnoise/rnnoise.changes  2024-04-15 
20:24:44.642505862 +0200
+++ /work/SRC/openSUSE:Factory/.rnnoise.new.27645/rnnoise.changes       
2024-04-23 18:56:21.871092421 +0200
@@ -1,0 +2,6 @@
+Mon Apr 22 10:34:46 UTC 2024 - Guillaume GARDET <[email protected]>
+
+- Add upstream patch to fix build:
+  * 372f7b4.patch
+
+-------------------------------------------------------------------

New:
----
  372f7b4.patch

BETA DEBUG BEGIN:
  New:- Add upstream patch to fix build:
  * 372f7b4.patch
BETA DEBUG END:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ rnnoise.spec ++++++
--- /var/tmp/diff_new_pack.ngSh8d/_old  2024-04-23 18:56:22.555117056 +0200
+++ /var/tmp/diff_new_pack.ngSh8d/_new  2024-04-23 18:56:22.555117056 +0200
@@ -25,6 +25,8 @@
 URL:            https://gitlab.xiph.org/xiph/rnnoise
 Source:         
https://gitlab.xiph.org/xiph/rnnoise/-/archive/v%{version}/rnnoise-v%{version}.tar.gz
 Source1:        
https://media.xiph.org/rnnoise/models/rnnoise_data-0b50c45.tar.gz
+# PATCH-FIX-UPSTREAM - https://github.com/xiph/rnnoise/issues/222
+Patch1:         372f7b4.patch
 BuildRequires:  autoconf
 BuildRequires:  automake
 BuildRequires:  libtool
@@ -52,7 +54,7 @@
 This package holds the development files.
 
 %prep
-%autosetup -n %{name}-v%{version}
+%autosetup -p1 -n %{name}-v%{version}
 
 %build
 cp -p %{SOURCE1} .

++++++ 372f7b4.patch ++++++
>From 372f7b4b76cde4ca1ec4605353dd17898a99de38 Mon Sep 17 00:00:00 2001
From: "Timothy B. Terriberry" <[email protected]>
Date: Mon, 15 Apr 2024 11:27:25 -0700
Subject: [PATCH] Fix compilation errors.

vec_avx.h needs x86cpu.h, and x86cpu.h needs to detect SSE2 (or
 greater) without the Opus macros.
Also, nobody was defining OPUS_CLEAR (but several things were
 including the non-existent os_support.h where it is defined in
 libopus), so replace those calls with RNN_CLEAR and remove the
 erroneous includes.
Take the opportunity to hoist OPUS_GNUC_PREREQ to common.h, too,
 since it is needed in multiple places now.

Fixes GitHub #222
---
 src/common.h     | 8 ++++++++
 src/vec.h        | 9 ++++-----
 src/vec_avx.h    | 2 +-
 src/vec_neon.h   | 5 +++--
 src/x86/x86cpu.h | 4 ++--
 5 files changed, 18 insertions(+), 10 deletions(-)

diff --git a/src/common.h b/src/common.h
index 5005bff..f9095ca 100644
--- a/src/common.h
+++ b/src/common.h
@@ -43,6 +43,14 @@ static RNN_INLINE void rnnoise_free (void *ptr)
 #define RNN_CLEAR(dst, n) (memset((dst), 0, (n)*sizeof(*(dst))))
 #endif
 
+# if !defined(OPUS_GNUC_PREREQ)
+#  if defined(__GNUC__)&&defined(__GNUC_MINOR__)
+#   define OPUS_GNUC_PREREQ(_maj,_min) \
+ ((__GNUC__<<16)+__GNUC_MINOR__>=((_maj)<<16)+(_min))
+#  else
+#   define OPUS_GNUC_PREREQ(_maj,_min) 0
+#  endif
+# endif
 
 
 #endif
diff --git a/src/vec.h b/src/vec.h
index 8e96cbf..71b7afb 100644
--- a/src/vec.h
+++ b/src/vec.h
@@ -30,6 +30,7 @@
 #define VEC_H
 
 #include "opus_types.h"
+#include "common.h"
 #include <math.h>
 #include "arch.h"
 #include "x86/x86_arch_macros.h"
@@ -41,8 +42,6 @@
 #include "vec_neon.h"
 #else
 
-#include "os_support.h"
-
 #define MAX_INPUTS (2048)
 
 #define NO_OPTIMIZATIONS
@@ -50,7 +49,7 @@
 static inline void sgemv16x1(float *out, const float *weights, int rows, int 
cols, int col_stride, const float *x)
 {
    int i, j;
-   OPUS_CLEAR(out, rows);
+   RNN_CLEAR(out, rows);
    for (i=0;i<rows;i+=16)
    {
       for (j=0;j<cols;j++)
@@ -84,7 +83,7 @@ static inline void sgemv16x1(float *out, const float 
*weights, int rows, int col
 static inline void sgemv8x1(float *out, const float *weights, int rows, int 
cols, int col_stride, const float *x)
 {
    int i, j;
-   OPUS_CLEAR(out, rows);
+   RNN_CLEAR(out, rows);
    for (i=0;i<rows;i+=8)
    {
       for (j=0;j<cols;j++)
@@ -124,7 +123,7 @@ static inline void sgemv(float *out, const float *weights, 
int rows, int cols, i
 static inline void sparse_sgemv8x4(float *out, const float *w, const int *idx, 
int rows, const float *x)
 {
    int i, j;
-   OPUS_CLEAR(out, rows);
+   RNN_CLEAR(out, rows);
    for (i=0;i<rows;i+=8)
    {
       int cols;
diff --git a/src/vec_avx.h b/src/vec_avx.h
index b73a353..a5040b4 100644
--- a/src/vec_avx.h
+++ b/src/vec_avx.h
@@ -34,7 +34,7 @@
 
 #include <immintrin.h>
 #include <math.h>
-/*#include "celt/x86/x86cpu.h"*/
+#include "x86/x86cpu.h"
 
 #define MAX_INPUTS (2048)
 
diff --git a/src/vec_neon.h b/src/vec_neon.h
index e6432e2..31b736c 100644
--- a/src/vec_neon.h
+++ b/src/vec_neon.h
@@ -32,7 +32,8 @@
 #define VEC_NEON_H
 
 #include <arm_neon.h>
-#include "os_support.h"
+#include "opus_types.h"
+#include "common.h"
 
 #if defined(__arm__) && !defined(__aarch64__) && (__ARM_ARCH < 8 || 
!defined(__clang__))
 /* Emulate vcvtnq_s32_f32() for ARMv7 Neon. */
@@ -302,7 +303,7 @@ static inline void sgemv(float *out, const float *weights, 
int rows, int cols, i
 static inline void sparse_sgemv8x4(float *out, const float *w, const int *idx, 
int rows, const float *x)
 {
    int i, j;
-   OPUS_CLEAR(out, rows);
+   RNN_CLEAR(out, rows);
    for (i=0;i<rows;i+=8)
    {
       int cols;
diff --git a/src/x86/x86cpu.h b/src/x86/x86cpu.h
index 97dcdbd..e214aba 100644
--- a/src/x86/x86cpu.h
+++ b/src/x86/x86cpu.h
@@ -36,8 +36,8 @@
 int opus_select_arch(void);
 # endif
 
-# if defined(OPUS_X86_MAY_HAVE_SSE2)
-#  include "opus_defines.h"
+# if defined(__SSE2__)
+#  include "common.h"
 
 /*MOVD should not impose any alignment restrictions, but the C standard does,
    and UBSan will report errors if we actually make unaligned accesses.
-- 
GitLab

Reply via email to