From 578f082373c66a96580e49e14a1bc4cbfbefd5010996e1ea46907ac8d2a732bf Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Sun, 17 Jan 2021 14:13:26 +0000 Subject: [PATCH] - add fix-build-on-non-x86.patch: fix build on non-x86 OBS-URL: https://build.opensuse.org/package/show/Base:System/sbc?expand=0&rev=12 --- fix-build-on-non-x86.patch | 45 ++++++++++++++++++++++++++++++++++++++ sbc.changes | 5 +++++ sbc.spec | 2 ++ 3 files changed, 52 insertions(+) create mode 100644 fix-build-on-non-x86.patch diff --git a/fix-build-on-non-x86.patch b/fix-build-on-non-x86.patch new file mode 100644 index 0000000..f65260f --- /dev/null +++ b/fix-build-on-non-x86.patch @@ -0,0 +1,45 @@ +From 909a9bdf7ab143e1f0baaf9736baebd3cd79aacf Mon Sep 17 00:00:00 2001 +From: Marius Bakke +Date: Tue, 22 Dec 2020 11:04:26 +0000 +Subject: sbc_primitives: Fix build on non-x86. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Don't call __builtin_cpu_init unless targeting i386 or x86_64. +Otherwise we get an error at link time: + + CC sbc/sbc_primitives.lo +sbc/sbc_primitives.c: In function ‘sbc_init_primitives_x86’: +sbc/sbc_primitives.c:596:2: warning: implicit declaration of function ‘__builtin_cpu_init’; did you mean ‘__builtin_irint’? [-Wimplicit-function-declaration] +[...] + CCLD src/sbcdec +ld: sbc/.libs/libsbc-private.a(sbc_primitives.o): in function `sbc_init_primitives': +sbc_primitives.c:(.text+0x3a30): undefined reference to `__builtin_cpu_init' +--- + sbc/sbc_primitives.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/sbc/sbc_primitives.c b/sbc/sbc_primitives.c +index 97a75be..09c214a 100644 +--- a/sbc/sbc_primitives.c ++++ b/sbc/sbc_primitives.c +@@ -593,6 +593,7 @@ static int sbc_calc_scalefactors_j( + + static void sbc_init_primitives_x86(struct sbc_encoder_state *state) + { ++#if defined(__x86_64__) || defined(__i386__) + __builtin_cpu_init(); + + #ifdef SBC_BUILD_WITH_MMX_SUPPORT +@@ -604,6 +605,7 @@ static void sbc_init_primitives_x86(struct sbc_encoder_state *state) + if (__builtin_cpu_supports("sse4.2")) + sbc_init_primitives_sse(state); + #endif ++#endif + } + + /* +-- +cgit 1.2.3-1.el7 + diff --git a/sbc.changes b/sbc.changes index 05627ae..b8c0f1d 100644 --- a/sbc.changes +++ b/sbc.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Sun Jan 17 14:11:57 UTC 2021 - Dirk Müller + +- add fix-build-on-non-x86.patch: fix build on non-x86 + ------------------------------------------------------------------- Mon Jan 11 01:03:32 UTC 2021 - Dirk Müller diff --git a/sbc.spec b/sbc.spec index d221e4d..3fa1c3e 100644 --- a/sbc.spec +++ b/sbc.spec @@ -28,6 +28,7 @@ Group: Hardware/Mobile URL: https://www.kernel.org/pub/linux/bluetooth Source: https://www.kernel.org/pub/linux/bluetooth/%{name}-%{version}.tar.xz Source1: baselibs.conf +Patch1: https://git.kernel.org/pub/scm/bluetooth/sbc.git/patch/?id=909a9bdf7ab143e1f0baaf9736baebd3cd79aacf#/fix-build-on-non-x86.patch BuildRequires: libsndfile-devel BuildRequires: pkg-config BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -54,6 +55,7 @@ Development files for the SBC library %prep %setup -q +%patch1 -p1 %build %global _lto_cflags %{_lto_cflags} -ffat-lto-objects