aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-multimedia/alsa/alsa-oss/libio.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-oe/recipes-multimedia/alsa/alsa-oss/libio.patch')
-rw-r--r--meta-oe/recipes-multimedia/alsa/alsa-oss/libio.patch43
1 files changed, 43 insertions, 0 deletions
diff --git a/meta-oe/recipes-multimedia/alsa/alsa-oss/libio.patch b/meta-oe/recipes-multimedia/alsa/alsa-oss/libio.patch
new file mode 100644
index 0000000000..5299945e19
--- /dev/null
+++ b/meta-oe/recipes-multimedia/alsa/alsa-oss/libio.patch
@@ -0,0 +1,43 @@
+Index: alsa-oss-1.0.28/alsa/stdioemu.c
+===================================================================
+--- alsa-oss-1.0.28.orig/alsa/stdioemu.c
++++ alsa-oss-1.0.28/alsa/stdioemu.c
+@@ -37,7 +37,9 @@
+ #endif
+
+ #include <stdio.h>
++#ifdef HAVE_LIBIO_H
+ #include <libio.h>
++#endif
+
+ struct fd_cookie {
+ int fd;
+@@ -99,7 +101,11 @@ static FILE *fake_fopen(const char *path
+
+ if (open_mode && fdc->fd > 0) {
+ result = fopencookie (fdc,"w", fns);
++#ifdef HAVE_FILENO
+ result->_fileno = fdc->fd; /* ugly patchy slimy kludgy hack */
++#else
++ result->__filedes = fdc->fd;
++#endif
+ }
+ return result;
+ }
+Index: alsa-oss-1.0.28/configure.ac
+===================================================================
+--- alsa-oss-1.0.28.orig/configure.ac
++++ alsa-oss-1.0.28/configure.ac
+@@ -35,6 +35,12 @@ if test "$with_aoss" = "yes"; then
+ LIBS="$OLD_LIBS"
+ fi
+
++AC_CHECK_HEADERS_ONCE([libio.h])
++
++AC_CHECK_MEMBER([struct _IO_FILE._fileno],
++ [AC_DEFINE([HAVE_FILENO], [1],[Define if _fileno exists.])],
++ [],[])
++
+ AC_OUTPUT(Makefile alsa/Makefile alsa/aoss alsa/aoss.old \
+ oss-redir/Makefile test/Makefile \
+ alsa/testaoss test/testaoss)