xserver fails to build on ARM with glibc-2.30
In current glibc, <sys/io.h>
was removed along with support for outb
/outw
/outl
:
commit 6b33f373c7b9199e00ba5fbafd94ac9bfb4337b1 Author: Florian Weimer <fweimer@redhat.com> Date: Wed May 29 16:53:09 2019 +0200 arm: Remove ioperm/iopl/inb/inw/inl/outb/outw/outl support Linux only supports the required ISA sysctls on StrongARM devices, which are armv4 and no longer tested during glibc development and probably bit-rotted by this point. (No reported test results, and the last discussion of armv4 support was in the glibc 2.19 release notes.) ChangeLog | 10 ++++++ NEWS | 3 ++ sysdeps/unix/sysv/linux/arm/Makefile | 2 +- sysdeps/unix/sysv/linux/arm/ioperm.c | 160 ++++++++++++++++++------------------------------------------------------------------------ sysdeps/unix/sysv/linux/arm/sys/io.h | 47 --------------------------- 5 files changed, 46 insertions(+), 176 deletions(-)
That causes the Xserver to fail to build on such platform as hw/xfree86/common/compiler.h
both include <sys/io.h>
and uses the glibc outb
/outw
/outl
:
https://gitlab.freedesktop.org/xorg/xserver/blob/master/hw/xfree86/common/compiler.h#L761
Removing that entirely allows to build the Xserver (0001-compiler.h-Do-not-include-sys-io.h-on-ARM-with-glibc.patch) but we're obviously missing the outb
/outw
/outl
that the drivers may use, so this would likely negatively impact the build of the Xorg drivers.