---------------- build error ----------
In file included from /usr/include/xfs/xfs.h:58:0,
from /home/tlviewer/xen-4.6.1/tools/qemu-xen/block/raw-posix.c:90:
/usr/include/xfs/xfs_fs.h:42:8: error: redefinition of ‘struct fsxattr’
struct fsxattr {
^
In file included from /home/tlviewer/xen-4.6.1/tools/qemu-xen/block/raw-posix.c:58:0:
/usr/include/linux/fs.h:155:8: note: originally defined here
struct fsxattr {
^
make[3]: *** [block/raw-posix.o] Error 1
make[2]: *** [subdir-all-qemu-xen-dir] Error 2
make[1]: *** [subdirs-install] Error 2
make: *** [install-tools] Error 2
-------------- end error -----------
The same build in Xenial works, so comparing
/usr/include/linux/fs.h
on both its seen that Xenial version is smaller (Apr 9), and Stretch has a larger version (Apr 14).
The Stretch version of /usr/include/linux/fs.h now has the same structs as xfs.h, so we get the redefinition errors.
I saw no patch of the Xen tools tree to fix this, so I searched the qemu-xen configure for a switch.
https://lists.gnu.org/archive/html/grub-devel/2016-03/msg00071.html
turned up this flag: --disable-xfsctl
--with-extra-qemuu-configure-args="--disable-werror --disable-xfsctl"
the build now works.
PryMar56