| Linking currently fails on powerpc64 and powerpc64le when configured |
| with --without-versioned, as follows: |
| ../src/.libs/libasound.so: undefined reference to `.__snd_pcm_hw_params_set_format_first' |
| (And many similar messages.) |
| |
| This appears to be due to a very old (2003) workaround for powerpc64, |
| (introduced by commit 06221f86) in include/alsa-symbols.h which alters |
| symbol names. While it was probably necessary at the time, it does not |
| appear to be necessary now and removing it fixes the build. |
| |
| Signed-off-by: Sam Bobroff <sam.bobroff@au1.ibm.com> |
| --- |
| include/alsa-symbols.h | 25 ++++--------------------- |
| 1 file changed, 4 insertions(+), 21 deletions(-) |
| |
| diff --git a/include/alsa-symbols.h b/include/alsa-symbols.h |
| index 51cb982..0cb0b9f 100644 |
| --- a/include/alsa-symbols.h |
| +++ b/include/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 " ASM_NAME(#real) "," ASM_NAME(#name) "@" #version); \ |
| - __asm__ (".symver ." ASM_NAME(#real) ",." ASM_NAME(#name) "@" #version) |
| -# define default_symbol_version(real, name, version) \ |
| - __asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@@" #version); \ |
| - __asm__ (".symver ." ASM_NAME(#real) ",." ASM_NAME(#name) "@@" #version) |
| -#else |
| -# define symbol_version(real, name, version) \ |
| - __asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@" #version) |
| -# define default_symbol_version(real, name, version) \ |
| - __asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@@" #version) |
| -#endif |
| +#define symbol_version(real, name, version) \ |
| +__asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@" #version) |
| +#define default_symbol_version(real, name, version) \ |
| +__asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@@" #version) |
| |
| #ifdef USE_VERSIONED_SYMBOLS |
| #define use_symbol_version(real, name, version) \ |
| @@ -50,13 +41,6 @@ |
| 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 " ASM_NAME(#name)); \ |
| - __asm__ (".weak ." ASM_NAME(#name)); \ |
| - __asm__ (".set " ASM_NAME(#name) "," ASM_NAME(#real)); \ |
| - __asm__ (".set ." ASM_NAME(#name) ",." ASM_NAME(#real)) |
| -#else |
| #if defined(__alpha__) || defined(__mips__) |
| #define use_default_symbol_version(real, name, version) \ |
| __asm__ (".weak " ASM_NAME(#name)); \ |
| @@ -67,6 +51,5 @@ |
| __asm__ (".set " ASM_NAME(#name) "," ASM_NAME(#real)) |
| #endif |
| #endif |
| -#endif |
| |
| #endif /* __ALSA_SYMBOLS_H */ |
| -- |
| 2.10.0.297.gf6727b0 |
| |