Source: oss4
Followup-For: Bug #968413

Patch is attached.

-- System Information:
Debian Release: bullseye/sid
  APT prefers unstable-debug
  APT policy: (500, 'unstable-debug'), (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 5.7.0-1-amd64 (SMP w/2 CPU threads)
Kernel taint flags: TAINT_WARN
Locale: LANG=en_US.UTF-8, LC_CTYPE=pt_BR.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US:en
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
diff -Nru oss4-4.2-build2017/debian/changelog 
oss4-4.2-build2017/debian/changelog
--- oss4-4.2-build2017/debian/changelog 2019-01-08 20:51:07.000000000 -0200
+++ oss4-4.2-build2017/debian/changelog 2020-08-14 19:03:06.000000000 -0300
@@ -1,3 +1,10 @@
+oss4 (4.2-build2017-1.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix build on ppc64el with binutils 2.35 (Closes: #968413)
+
+ -- Thadeu Lima de Souza Cascardo <casca...@debian.org>  Fri, 14 Aug 2020 
19:03:06 -0300
+
 oss4 (4.2-build2017-1) unstable; urgency=low
 
   [ Sébastien Noel ]
diff -Nru 
oss4-4.2-build2017/debian/patches/libsalsa_drop_ppc64_specific_workaround_for_versioned_symbols.patch
 
oss4-4.2-build2017/debian/patches/libsalsa_drop_ppc64_specific_workaround_for_versioned_symbols.patch
--- 
oss4-4.2-build2017/debian/patches/libsalsa_drop_ppc64_specific_workaround_for_versioned_symbols.patch
       1969-12-31 21:00:00.000000000 -0300
+++ 
oss4-4.2-build2017/debian/patches/libsalsa_drop_ppc64_specific_workaround_for_versioned_symbols.patch
       2020-08-14 18:44:27.000000000 -0300
@@ -0,0 +1,54 @@
+Description: Drop ppc64-specific workaround for versioned symbols
+ Based on a patch by Breno Leitao applied to the original file from
+ alsa-lib.
+ oss4 started failing to build on ppc64el with binutils 2.35 because it
+ was setting an undefined symbol as the default version. It was doing that
+ in order to support dot-symbols/function descriptors on ppc, which is not
+ used by userspace ABI since a while, and not supported with ABIv2, the one
+ used by ppc64el, at all.
+Author: Thadeu Lima de Souza Cascardo <casca...@canonical.com>
+Bug-Ubuntu: https://bugs.launchpad.net/bugs/1891565
+Last-Update: 2020-08-14
+---
+Index: oss4-4.2-build2010/lib/libsalsa/alsa-symbols.h
+===================================================================
+--- oss4-4.2-build2010.orig/lib/libsalsa/alsa-symbols.h
++++ oss4-4.2-build2010/lib/libsalsa/alsa-symbols.h
+@@ -29,19 +29,10 @@
+ #define INTERNAL_CONCAT2_2(Pre, Post) Pre##Post
+ #define INTERNAL(Name) INTERNAL_CONCAT2_2(__, Name)
+ 
+-#ifdef __powerpc64__
+-# define symbol_version(real, name, version)                  \
+-      __asm__ (".symver " #real "," #name "@" #version);      \
+-      __asm__ (".symver ." #real ",." #name "@" #version)
+-# define default_symbol_version(real, name, version)          \
+-      __asm__ (".symver " #real "," #name "@@" #version);     \
+-      __asm__ (".symver ." #real ",." #name "@@" #version)
+-#else
+ # define symbol_version(real, name, version) \
+       __asm__ (".symver " #real "," #name "@" #version)
+ # define default_symbol_version(real, name, version) \
+       __asm__ (".symver " #real "," #name "@@" #version)
+-#endif
+ 
+ #ifdef USE_VERSIONED_SYMBOLS
+ #define use_symbol_version(real, name, version) \
+@@ -50,17 +41,9 @@
+               default_symbol_version(real, name, version)
+ #else
+ #define use_symbol_version(real, name, version)       /* nothing */
+-#ifdef __powerpc64__
+-#define use_default_symbol_version(real, name, version) \
+-      __asm__ (".weak " #name);                       \
+-      __asm__ (".weak ." #name);                      \
+-      __asm__ (".set " #name "," #real);              \
+-      __asm__ (".set ." #name ",." #real)
+-#else
+ #define use_default_symbol_version(real, name, version) \
+       __asm__ (".weak " #name); \
+       __asm__ (".set " #name "," #real)
+ #endif
+-#endif
+ 
+ #endif /* __ALSA_SYMBOLS_H */
diff -Nru oss4-4.2-build2017/debian/patches/series 
oss4-4.2-build2017/debian/patches/series
--- oss4-4.2-build2017/debian/patches/series    2019-01-08 19:48:00.000000000 
-0200
+++ oss4-4.2-build2017/debian/patches/series    2020-08-14 18:44:34.000000000 
-0300
@@ -20,3 +20,4 @@
 502_linux_io.patch
 reproducible-build.patch
 503_glibc_2.28.patch
+libsalsa_drop_ppc64_specific_workaround_for_versioned_symbols.patch

Reply via email to