| From 7fd144f101fa5c9316d3468ed26f55629afe1305 Mon Sep 17 00:00:00 2001 |
| From: Khem Raj <raj.khem@gmail.com> |
| Date: Tue, 17 Dec 2019 17:55:54 -0800 |
| Subject: [PATCH 3/3] Fix non x86 platforms on musl |
| |
| Musl only specifies in/outb for x86/x86. Use the fallback path in case |
| musl is used. |
| |
| This should fail compilation during the linking stage but for some reason |
| does not. Will do if -Werror=implicit-function-declaration is specified. |
| |
| Original here: https://github.com/openwrt/packages/blob/master/utils/lcdproc/patches/110-in-outb.patch |
| Upstream-Status: Pending |
| |
| Signed-off-by: Khem Raj <raj.khem@gmail.com> |
| --- |
| server/drivers/port.h | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/server/drivers/port.h |
| +++ b/server/drivers/port.h |
| @@ -94,7 +94,7 @@ static inline int port_deny_multiple(uns |
| /* ---------------------------- Linux ------------------------------------ */ |
| /* Use ioperm, inb and outb in <sys/io.h> (Linux) */ |
| /* And iopl for higher addresses of PCI LPT cards */ |
| -#if defined HAVE_IOPERM |
| +#if HAVE_INB |
| |
| /* Glibc2 and Glibc1 */ |
| # ifdef HAVE_SYS_IO_H |
| @@ -333,7 +333,7 @@ static inline int port_deny_multiple (un |
| return i386_set_ioperm(port, count, 0); |
| } |
| |
| -#else |
| +#elif defined(__x86__) && defined(__x86_64__) |
| |
| /* ------------------------- Everything else ----------------------------- */ |
| /* Last chance! Use /dev/io and i386 ASM code (BSD4.3 ?) */ |
| --- a/configure.ac |
| +++ b/configure.ac |
| @@ -144,6 +144,7 @@ AC_CHECK_LIB(i386, i386_get_ioperm, |
| [])] |
| ) |
| |
| +AC_CHECK_FUNCS(inb) |
| AC_CHECK_FUNCS(iopl) |
| AC_CHECK_FUNCS(ioperm) |
| AC_CHECK_HEADERS(sys/io.h) |