kumquat-buildroot/package/multimedia/libcue/libcue-1.4.0-__unused-fix.patch
Peter Korsgaard 7beeb2f820 libcue: fix build on uClibc with locale support enabled
Caused by a name clash between cue_scanner.c and stdio.h.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-02-11 10:17:34 +01:00

51 lines
1.8 KiB
Diff

[PATCH] fix build on uClibc
Use cue_unused / cue_dead2 for the unused/non-returning annotation macros,
as uClibc defines a struct member called __unused in stdio.h when built
with locale support, breaking the build.
According to ANSI C 4.1.2.1, defines beginning with '__' are reserved
for the implementation, so shouldn't be used in user code.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
src/libcue/cue_scanner.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
Index: libcue-1.4.0/src/libcue/cue_scanner.c
===================================================================
--- libcue-1.4.0.orig/src/libcue/cue_scanner.c
+++ libcue-1.4.0/src/libcue/cue_scanner.c
@@ -7,9 +7,11 @@
#if defined(__FreeBSD__)
#include <sys/cdefs.h>
+#define cue_unused __unused
+#define cue_dead2 __dead2
#else
-#define __unused
-#define __dead2
+#define cue_unused
+#define cue_dead2
#endif
#define FLEX_SCANNER
@@ -248,7 +250,7 @@
YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));
static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
-static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )) __unused;
+static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )) cue_unused;
static void yy_flex_free YY_PROTO(( void * ));
#define yy_new_buffer yy_create_buffer
@@ -285,7 +287,7 @@
static yy_state_type yy_get_previous_state YY_PROTO(( void ));
static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
static int yy_get_next_buffer YY_PROTO(( void ));
-static void yy_fatal_error YY_PROTO(( yyconst char msg[] )) __dead2;
+static void yy_fatal_error YY_PROTO(( yyconst char msg[] )) cue_dead2;
/* Done after the current pattern has been matched and before the
* corresponding action - sets up yytext.