diff --git a/patches/alsa_lib-1.1.6.local.patch b/patches/alsa_lib-1.1.6.local.patch
deleted file mode 100644
index 3171801..0000000
--- a/patches/alsa_lib-1.1.6.local.patch
+++ /dev/null
@@ -1,231 +0,0 @@
-diff -ru alsa-lib-1.1.4.1.orig/include/asoundlib-head.h alsa-lib-1.1.4.1/include/asoundlib-head.h
---- alsa-lib-1.1.4.1.orig/include/asoundlib-head.h	2017-06-01 08:27:36.000000000 +0200
-+++ alsa-lib-1.1.4.1/include/asoundlib-head.h	2017-08-08 21:10:17.989795195 +0200
-@@ -35,6 +35,6 @@
- #include <string.h>
- #include <fcntl.h>
- #include <assert.h>
--#include <sys/poll.h>
-+#include <poll.h>
- #include <errno.h>
- #include <stdarg.h>
-diff -ru alsa-lib-1.1.4.1.orig/include/local.h alsa-lib-1.1.4.1/include/local.h
---- alsa-lib-1.1.4.1.orig/include/local.h	2017-06-01 08:27:36.000000000 +0200
-+++ alsa-lib-1.1.4.1/include/local.h	2017-08-07 19:47:39.843855153 +0200
-@@ -47,7 +47,7 @@
- #error Header defining endianness not defined
- #endif
- #include <stdarg.h>
--#include <sys/poll.h>
-+#include <poll.h>
- #include <sys/types.h>
- #include <errno.h>
- #if defined(__linux__)
-@@ -254,8 +254,10 @@
- /*
-  */
- #define HAVE_GNU_LD
-+#ifndef __midipix__
- #define HAVE_ELF
- #define HAVE_ASM_PREVIOUS_DIRECTIVE
-+#endif
- 
- /* Stolen from libc-symbols.h in GNU glibc */
- 
-diff -ru alsa-lib-1.1.4.1.orig/include/sound/asoc.h alsa-lib-1.1.4.1/include/sound/asoc.h
---- alsa-lib-1.1.4.1.orig/include/sound/asoc.h	2017-06-01 08:27:36.000000000 +0200
-+++ alsa-lib-1.1.4.1/include/sound/asoc.h	2017-08-07 19:53:15.000000000 +0200
-@@ -300,12 +300,12 @@
- 	__le32 size;            /* in bytes of this structure */
- 	__le32 id;		/* unique ID - - used to match */
- 	__le32 fmt;		/* SND_SOC_DAI_FORMAT_ format value */
--	__u8 clock_gated;	/* 1 if clock can be gated to save power */
--	__u8 invert_bclk;	/* 1 for inverted BCLK, 0 for normal */
--	__u8 invert_fsync;	/* 1 for inverted frame clock, 0 for normal */
--	__u8 bclk_master;	/* 1 for master of BCLK, 0 for slave */
--	__u8 fsync_master;	/* 1 for master of FSYNC, 0 for slave */
--	__u8 mclk_direction;    /* 0 for input, 1 for output */
-+	uint8_t clock_gated;	/* 1 if clock can be gated to save power */
-+	uint8_t invert_bclk;	/* 1 for inverted BCLK, 0 for normal */
-+	uint8_t invert_fsync;	/* 1 for inverted frame clock, 0 for normal */
-+	uint8_t bclk_master;	/* 1 for master of BCLK, 0 for slave */
-+	uint8_t fsync_master;	/* 1 for master of FSYNC, 0 for slave */
-+	uint8_t mclk_direction;    /* 0 for input, 1 for output */
- 	__le16 reserved;	/* for 32bit alignment */
- 	__le32 mclk_rate;	/* MCLK or SYSCLK freqency in Hz */
- 	__le32 bclk_rate;	/* BCLK freqency in Hz */
-diff -ru alsa-lib-1.1.4.1.orig/src/control/control_shm.c alsa-lib-1.1.4.1/src/control/control_shm.c
---- alsa-lib-1.1.4.1.orig/src/control/control_shm.c	2017-06-01 08:27:36.000000000 +0200
-+++ alsa-lib-1.1.4.1/src/control/control_shm.c	2017-08-07 20:05:09.000000000 +0200
-@@ -27,7 +27,7 @@
- #include <fcntl.h>
- #include <sys/shm.h>
- #include <sys/socket.h>
--#include <sys/poll.h>
-+#include <poll.h>
- #include <sys/un.h>
- #include <sys/uio.h>
- #include <sys/mman.h>
-diff -ru alsa-lib-1.1.4.1.orig/src/pcm/pcm_direct.c alsa-lib-1.1.4.1/src/pcm/pcm_direct.c
---- alsa-lib-1.1.4.1.orig/src/pcm/pcm_direct.c	2017-06-01 08:27:36.000000000 +0200
-+++ alsa-lib-1.1.4.1/src/pcm/pcm_direct.c	2017-08-07 20:04:20.000000000 +0200
-@@ -30,7 +30,7 @@
- #include <grp.h>
- #include <sys/ioctl.h>
- #include <sys/mman.h>
--#include <sys/poll.h>
-+#include <poll.h>
- #include <sys/shm.h>
- #include <sys/sem.h>
- #include <sys/wait.h>
-diff -ru alsa-lib-1.1.4.1.orig/src/pcm/pcm_mmap.c alsa-lib-1.1.4.1/src/pcm/pcm_mmap.c
---- alsa-lib-1.1.4.1.orig/src/pcm/pcm_mmap.c	2017-06-01 08:27:36.000000000 +0200
-+++ alsa-lib-1.1.4.1/src/pcm/pcm_mmap.c	2017-08-07 20:02:18.000000000 +0200
-@@ -22,7 +22,7 @@
- #include <stdio.h>
- #include <malloc.h>
- #include <string.h>
--#include <sys/poll.h>
-+#include <poll.h>
- #include <sys/mman.h>
- #ifdef HAVE_SYS_SHM_H
- #include <sys/shm.h>
-diff -ru alsa-lib-1.1.4.1.orig/src/pcm/pcm_share.c alsa-lib-1.1.4.1/src/pcm/pcm_share.c
---- alsa-lib-1.1.4.1.orig/src/pcm/pcm_share.c	2017-06-01 08:27:36.000000000 +0200
-+++ alsa-lib-1.1.4.1/src/pcm/pcm_share.c	2017-08-07 20:02:49.000000000 +0200
-@@ -34,7 +34,7 @@
- #include <signal.h>
- #include <math.h>
- #include <sys/socket.h>
--#include <sys/poll.h>
-+#include <poll.h>
- #include <pthread.h>
- #include "pcm_local.h"
- 
-diff -ru alsa-lib-1.1.4.1.orig/src/pcm/pcm_shm.c alsa-lib-1.1.4.1/src/pcm/pcm_shm.c
---- alsa-lib-1.1.4.1.orig/src/pcm/pcm_shm.c	2017-06-01 08:27:36.000000000 +0200
-+++ alsa-lib-1.1.4.1/src/pcm/pcm_shm.c	2017-08-07 20:02:33.000000000 +0200
-@@ -36,7 +36,7 @@
- #include <sys/ioctl.h>
- #include <sys/shm.h>
- #include <sys/socket.h>
--#include <sys/poll.h>
-+#include <poll.h>
- #include <sys/un.h>
- #include <sys/mman.h>
- #include <netinet/in.h>
-diff -ru alsa-lib-1.1.4.1.orig/src/seq/seq.c alsa-lib-1.1.4.1/src/seq/seq.c
---- alsa-lib-1.1.4.1.orig/src/seq/seq.c	2017-06-01 08:27:36.000000000 +0200
-+++ alsa-lib-1.1.4.1/src/seq/seq.c	2017-08-07 20:00:54.000000000 +0200
-@@ -777,7 +777,7 @@
- 
- */
- 
--#include <sys/poll.h>
-+#include <poll.h>
- #include "seq_local.h"
- 
- /****************************************************************************
-diff -ru alsa-lib-1.1.4.1.orig/src/shmarea.c alsa-lib-1.1.4.1/src/shmarea.c
---- alsa-lib-1.1.4.1.orig/src/shmarea.c	2017-06-01 08:27:36.000000000 +0200
-+++ alsa-lib-1.1.4.1/src/shmarea.c	2017-08-07 19:57:44.000000000 +0200
-@@ -27,7 +27,7 @@
- #include <malloc.h>
- #include <string.h>
- #include <errno.h>
--#include <sys/poll.h>
-+#include <poll.h>
- #include <sys/mman.h>
- #include <sys/shm.h>
- #include "list.h"
---- alsa-lib-1.1.4.1/include/alsa-symbols.h.orig	2017-06-01 06:27:36.000000000 +0000
-+++ alsa-lib-1.1.4.1/include/alsa-symbols.h	2017-09-13 16:07:27.720000000 +0000
-@@ -45,6 +45,8 @@
- #define use_default_symbol_version(real, name, version) \
-         __asm__ (".weak " ASM_NAME(#name)); \
-         __asm__ (ASM_NAME(#name) " = " ASM_NAME(#real))
-+#elif defined(__midipix__)
-+#define use_default_symbol_version(real, name, version) /* nothing */
- #else
- #define use_default_symbol_version(real, name, version) \
- 	__asm__ (".weak " ASM_NAME(#name)); \
---- alsa-lib-1.1.4.1/src/control/control.c.orig	2017-06-01 06:27:36.000000000 +0000
-+++ alsa-lib-1.1.4.1/src/control/control.c	2017-09-13 16:19:34.464000000 +0000
-@@ -90,7 +90,7 @@
- #include <string.h>
- #include <fcntl.h>
- #include <signal.h>
--#include <sys/poll.h>
-+#include <poll.h>
- #include <stdbool.h>
- #include "control_local.h"
- 
-@@ -2504,11 +2504,7 @@
-  * \param obj CTL element id/info
-  * \return zero value if no dimensions are defined, otherwise positive value with count of dimensions
-  */
--#ifndef DOXYGEN
--int INTERNAL(snd_ctl_elem_info_get_dimensions)(const snd_ctl_elem_info_t *obj)
--#else
- int snd_ctl_elem_info_get_dimensions(const snd_ctl_elem_info_t *obj)
--#endif
- {
- 	int i;
- 
-@@ -2526,11 +2522,7 @@
-  * \param idx The dimension index
-  * \return zero value if no dimension width is defined, otherwise positive value with with of specified dimension
-  */
--#ifndef DOXYGEN
--int INTERNAL(snd_ctl_elem_info_get_dimension)(const snd_ctl_elem_info_t *obj, unsigned int idx)
--#else
- int snd_ctl_elem_info_get_dimension(const snd_ctl_elem_info_t *obj, unsigned int idx)
--#endif
- {
- 	assert(obj);
- 	if (idx > 3)
---- alsa-lib-1.1.4.1/src/timer/timer.c.orig	2017-06-01 06:27:36.000000000 +0000
-+++ alsa-lib-1.1.4.1/src/timer/timer.c	2017-09-13 16:20:57.728000000 +0000
-@@ -736,11 +736,7 @@
-  * \param params pointer to #snd_timer_params_t structure
-  * \param filter The event filter bits to set
-  */
--#ifndef DOXYGEN
--void INTERNAL(snd_timer_params_set_filter)(snd_timer_params_t * params, unsigned int filter)
--#else
- void snd_timer_params_set_filter(snd_timer_params_t * params, unsigned int filter)
--#endif
- {
- 	assert(params);
- 	params->filter = filter;
---- alsa-lib-1.1.4.1/src/pcm/pcm.c.orig	2017-06-01 06:27:36.000000000 +0000
-+++ alsa-lib-1.1.4.1/src/pcm/pcm.c	2017-09-13 16:21:58.544000000 +0000
-@@ -651,7 +651,7 @@
- #include <stdarg.h>
- #include <signal.h>
- #include <ctype.h>
--#include <sys/poll.h>
-+#include <poll.h>
- #include <sys/mman.h>
- #include <limits.h>
- #include "pcm_local.h"
---- alsa-lib-1.1.4.1/aserver/aserver.c.orig	2017-06-01 06:27:36.000000000 +0000
-+++ alsa-lib-1.1.4.1/aserver/aserver.c	2017-09-13 16:24:10.272000000 +0000
-@@ -20,7 +20,7 @@
- 
- #include <sys/shm.h>
- #include <sys/socket.h>
--#include <sys/poll.h>
-+#include <poll.h>
- #include <sys/un.h>
- #include <sys/uio.h>
- #include <stdio.h>
-@@ -473,7 +473,7 @@
- 		ctrl->result = snd_pcm_rewind(pcm, ctrl->u.rewind.frames);
- 		break;
- 	case SND_PCM_IOCTL_FORWARD:
--		ctrl->result = snd_pcm_forward(pcm, ctrl->u.forward.frames);
-+		ctrl->result = INTERNAL(snd_pcm_forward(pcm, ctrl->u.forward.frames));
- 		break;
- 	case SNDRV_PCM_IOCTL_LINK:
- 	{
diff --git a/patches/alsa_lib-1.1.8.local.patch b/patches/alsa_lib-1.1.8.local.patch
new file mode 100644
index 0000000..5ce2742
--- /dev/null
+++ b/patches/alsa_lib-1.1.8.local.patch
@@ -0,0 +1,40 @@
+Only in alsa-lib-1.1.8/include: alsa
+diff -ru alsa-lib-1.1.8.orig/include/alsa-symbols.h alsa-lib-1.1.8/include/alsa-symbols.h
+--- alsa-lib-1.1.8.orig/include/alsa-symbols.h	2019-01-07 13:55:38.000000000 +0100
++++ alsa-lib-1.1.8/include/alsa-symbols.h	2019-03-24 06:05:21.993902732 +0100
+@@ -27,7 +27,12 @@
+ #endif
+ 
+ #define INTERNAL_CONCAT2_2(Pre, Post) Pre##Post
++#ifdef __midipix__
++/* no .symver support */
++#define INTERNAL(Name) INTERNAL_CONCAT2_2(, Name)
++#else
+ #define INTERNAL(Name) INTERNAL_CONCAT2_2(__, Name)
++#endif
+ 
+ # define symbol_version(real, name, version) \
+ 	__asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@" #version)
+@@ -45,6 +50,8 @@
+ #define use_default_symbol_version(real, name, version) \
+         __asm__ (".weak " ASM_NAME(#name)); \
+         __asm__ (ASM_NAME(#name) " = " ASM_NAME(#real))
++#elif defined(__midipix__)
++#define use_default_symbol_version(real, name, version) /* nothing */
+ #else
+ #define use_default_symbol_version(real, name, version) \
+ 	__asm__ (".weak " ASM_NAME(#name)); \
+diff -ru alsa-lib-1.1.8.orig/include/local.h alsa-lib-1.1.8/include/local.h
+--- alsa-lib-1.1.8.orig/include/local.h	2019-01-07 13:55:38.000000000 +0100
++++ alsa-lib-1.1.8/include/local.h	2019-03-23 19:06:39.073662943 +0100
+@@ -254,8 +254,10 @@
+ /*
+  */
+ #define HAVE_GNU_LD
++#ifndef __midipix__
+ #define HAVE_ELF
+ #define HAVE_ASM_PREVIOUS_DIRECTIVE
++#endif
+ 
+ /* Stolen from libc-symbols.h in GNU glibc */
+ 
diff --git a/patches/libsndfile-1.0.28.local.patch b/patches/libsndfile-1.0.28.local.patch
deleted file mode 100644
index 52adc59..0000000
--- a/patches/libsndfile-1.0.28.local.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-diff -ru libsndfile-1.0.28.orig/programs/sndfile-play.c libsndfile-1.0.28/programs/sndfile-play.c
---- libsndfile-1.0.28.orig/programs/sndfile-play.c	2017-04-01 09:18:02.000000000 +0200
-+++ libsndfile-1.0.28/programs/sndfile-play.c	2018-06-10 03:16:32.784821054 +0200
-@@ -193,7 +193,7 @@
- 		goto catch_error ;
- 		} ;
- 
--	if ((err = snd_pcm_hw_params_set_rate_near (alsa_dev, hw_params, &samplerate, 0)) < 0)
-+	if ((err = __snd_pcm_hw_params_set_rate_near (alsa_dev, hw_params, &samplerate, 0)) < 0)
- 	{	fprintf (stderr, "cannot set sample rate (%s)\n", snd_strerror (err)) ;
- 		goto catch_error ;
- 		} ;
-@@ -203,12 +203,12 @@
- 		goto catch_error ;
- 		} ;
- 
--	if ((err = snd_pcm_hw_params_set_buffer_size_near (alsa_dev, hw_params, &alsa_buffer_frames)) < 0)
-+	if ((err = __snd_pcm_hw_params_set_buffer_size_near (alsa_dev, hw_params, &alsa_buffer_frames)) < 0)
- 	{	fprintf (stderr, "cannot set buffer size (%s)\n", snd_strerror (err)) ;
- 		goto catch_error ;
- 		} ;
- 
--	if ((err = snd_pcm_hw_params_set_period_size_near (alsa_dev, hw_params, &alsa_period_size, 0)) < 0)
-+	if ((err = __snd_pcm_hw_params_set_period_size_near (alsa_dev, hw_params, &alsa_period_size, 0)) < 0)
- 	{	fprintf (stderr, "cannot set period size (%s)\n", snd_strerror (err)) ;
- 		goto catch_error ;
- 		} ;
-@@ -219,8 +219,8 @@
- 		} ;
- 
- 	/* extra check: if we have only one period, this code won't work */
--	snd_pcm_hw_params_get_period_size (hw_params, &alsa_period_size, 0) ;
--	snd_pcm_hw_params_get_buffer_size (hw_params, &buffer_size) ;
-+	__snd_pcm_hw_params_get_period_size (hw_params, &alsa_period_size, 0) ;
-+	__snd_pcm_hw_params_get_buffer_size (hw_params, &buffer_size) ;
- 	if (alsa_period_size == buffer_size)
- 	{	fprintf (stderr, "Can't use period equal to buffer size (%lu == %lu)", alsa_period_size, buffer_size) ;
- 		goto catch_error ;
diff --git a/patches/rdesktop-1.8.4.local.patch b/patches/rdesktop-1.8.4.local.patch
deleted file mode 100644
index 8a6d5cb..0000000
--- a/patches/rdesktop-1.8.4.local.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -ru rdesktop-1.8.3.orig/rdpsnd_alsa.c rdesktop-1.8.3/rdpsnd_alsa.c
---- rdesktop-1.8.3.orig/rdpsnd_alsa.c	2015-08-21 08:24:23.000000000 +0200
-+++ rdesktop-1.8.3/rdpsnd_alsa.c	2018-11-01 20:53:55.216422142 +0100
-@@ -218,7 +218,7 @@
- #endif
- 
- 	rate = pwfx->nSamplesPerSec;
--	if ((err = snd_pcm_hw_params_set_rate_near(pcm, hwparams, &rate, 0)) < 0)
-+	if ((err = __snd_pcm_hw_params_set_rate_near(pcm, hwparams, &rate, 0)) < 0)
- 	{
- 		error("snd_pcm_hw_params_set_rate_near: %s\n", snd_strerror(err));
- 		return False;
-@@ -233,7 +233,7 @@
- 
- 
- 	buffertime = 500000;	/* microseconds */
--	if ((err = snd_pcm_hw_params_set_buffer_time_near(pcm, hwparams, &buffertime, 0)) < 0)
-+	if ((err = __snd_pcm_hw_params_set_buffer_time_near(pcm, hwparams, &buffertime, 0)) < 0)
- 	{
- 		error("snd_pcm_hw_params_set_buffer_time_near: %s\n", snd_strerror(err));
- 		return False;
diff --git a/vars/build.vars b/vars/build.vars
index 42b794d..8347c89 100644
--- a/vars/build.vars
+++ b/vars/build.vars
@@ -492,10 +492,11 @@ NATIVE_PACKAGES_DEPS_PYTHON="${PREFIX}/bin/python2";
 : ${PKG_LIBXML2_VERSION:=2.9.9};
 : ${PKG_LIBXML2_URL:=ftp://xmlsoft.org/libxml2/libxml2-${PKG_LIBXML2_VERSION}.tar.gz};
 : ${PKG_LIBXML2_CONFIGURE_ARGS_EXTRA:="--with-python=no"};
-: ${PKG_ALSA_LIB_SHA256SUM:=91bb870c14d1c7c269213285eeed874fa3d28112077db061a3af8010d0885b76};
-: ${PKG_ALSA_LIB_VERSION:=1.1.6};
-: ${PKG_ALSA_LIB_URL:=ftp://ftp.alsa-project.org/pub/lib/alsa-lib-1.1.4.1.tar.bz2};
+: ${PKG_ALSA_LIB_SHA256SUM:=3cdc3a93a6427a26d8efab4ada2152e64dd89140d981f6ffa003e85be707aedf};
+: ${PKG_ALSA_LIB_VERSION:=1.1.8};
+: ${PKG_ALSA_LIB_URL:=ftp://ftp.alsa-project.org/pub/lib/alsa-lib-${PKG_ALSA_LIB_VERSION}.tar.bz2};
 : ${PKG_ALSA_LIB_CONFIGURE_ARGS_EXTRA:="--disable-python --with-versioned=no"};
+: ${PKG_ALSA_LIB_CFLAGS_BUILD_EXTRA:="-D__u8=uint8_t"};
 : ${PKG_APR_SHA256SUM:=a67ca9fcf9c4ff59bce7f428a323c8b5e18667fdea7b0ebad47d194371b0a105};
 : ${PKG_APR_VERSION:=1.6.5};
 : ${PKG_APR_URL:=http://ftp.fau.de/apache/apr/apr-${PKG_APR_VERSION}.tar.bz2};