summaryrefslogtreecommitdiff
path: root/package/celt051/0001-fix-gnuc-prereq.patch
blob: 8efd518d97354fe76fb4794aa075c430a800f404 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Fix musl build

musl does not define __GNUC_PREREQ. Use patch from Alpine Linux
(http://git.alpinelinux.org/cgit/aports/plain/main/celt051/fix-gnuc-prereq.patch).

Fixes http://autobuild.buildroot.net/results/223/223ba6003bdd7e0c896455c21fa8fee943b4e716/

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>

--- celt-0.5.1.3.orig/libcelt/ecintrin.h
+++ celt-0.5.1.3/libcelt/ecintrin.h
@@ -52,8 +52,7 @@
 /*Count leading zeros.
   This macro should only be used for implementing ec_ilog(), if it is defined.
   All other code should use EC_ILOG() instead.*/
-#ifdef __GNUC_PREREQ
-#if __GNUC_PREREQ(3,4)
+#if defined(__GNUC__) && ((__GNUC__<<16)+__GNUC_MINOR__) >= 0x304
 # if INT_MAX>=2147483647
 #  define EC_CLZ0 sizeof(unsigned)*CHAR_BIT
 #  define EC_CLZ(_x) (__builtin_clz(_x))
@@ -61,7 +60,6 @@
 #  define EC_CLZ0 sizeof(unsigned long)*CHAR_BIT
 #  define EC_CLZ(_x) (__builtin_clzl(_x))
 # endif
-#endif
 #endif

 #if defined(EC_CLZ)