[PATCH] backend/qcam.c: fix build on !x86 inb/outb/ioperm are x86 specific interfaces, so replace with noops on !x86. Inspired by similar patch in openwrt: https://dev.openwrt.org/ticket/5689 Signed-off-by: Peter Korsgaard --- backend/qcam.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) Index: sane-backends-1.0.22/backend/qcam.c =================================================================== --- sane-backends-1.0.22.orig/backend/qcam.c +++ sane-backends-1.0.22/backend/qcam.c @@ -205,12 +205,20 @@ #endif /* || || */ +/* inb / outb only exist on x86 */ +#if defined(__i386__) || defined(__x86_64__) #define read_lpdata(d) inb ((d)->port) #define read_lpstatus(d) inb ((d)->port + 1) #define read_lpcontrol(d) inb ((d)->port + 2) #define write_lpdata(d,v) outb ((v), (d)->port) #define write_lpcontrol(d,v) outb ((v), (d)->port + 2) - +#else +#define read_lpdata(d) 0 +#define read_lpstatus(d) 0 +#define read_lpcontrol(d) 0 +#define write_lpdata(d,v) +#define write_lpcontrol(d,v) +#endif static SANE_Status enable_ports (QC_Device * q) @@ -219,8 +227,10 @@ if (q->port < 0x278 || q->port > 0x3bc) return SANE_STATUS_INVAL; +#if defined(__i386__) || defined(__x86_64__) if (ioperm (q->port, 3, 1) < 0) return SANE_STATUS_INVAL; +#endif return SANE_STATUS_GOOD; } @@ -228,8 +238,10 @@ static SANE_Status disable_ports (QC_Device * q) { +#if defined(__i386__) || defined(__x86_64__) if (ioperm (q->port, 3, 0) < 0) return SANE_STATUS_INVAL; +#endif return SANE_STATUS_GOOD; }