linking on Linux debian/stretch/arm[64] with libxen-4.8:

    exec.o: In function `reclaim_ramblock':
    qemu/exec.c:2071: undefined reference to `xen_invalidate_map_cache_entry'
    exec.o: In function `qemu_map_ram_ptr':
    qemu/exec.c:2177: undefined reference to `xen_map_cache'
    qemu/exec.c:2174: undefined reference to `xen_map_cache'
    exec.o: In function `qemu_ram_block_from_host':
    qemu/exec.c:2242: undefined reference to `xen_ram_addr_from_mapcache'
    qemu/exec.c:2242: undefined reference to `xen_ram_addr_from_mapcache'
    exec.o: In function `qemu_ram_ptr_length':
    qemu/exec.c:2210: undefined reference to `xen_map_cache'
    qemu/exec.c:2207: undefined reference to `xen_map_cache'
    exec.o: In function `address_space_unmap':
    qemu/exec.c:3357: undefined reference to `xen_invalidate_map_cache_entry'
    collect2: error: ld returned 1 exit status
    Makefile:197: recipe for target 'qemu-system-aarch64' failed
    make[1]: *** [qemu-system-aarch64] Error 1

Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org>
---
 include/sysemu/xen-mapcache.h | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/include/sysemu/xen-mapcache.h b/include/sysemu/xen-mapcache.h
index 01daaad00c..75f0988e04 100644
--- a/include/sysemu/xen-mapcache.h
+++ b/include/sysemu/xen-mapcache.h
@@ -12,7 +12,9 @@
 typedef hwaddr (*phys_offset_to_gaddr_t)(hwaddr start_addr,
                                                      ram_addr_t size,
                                                      void *opaque);
-#ifdef CONFIG_XEN
+/* FIXME ARM supported since Xen 4.3? */
+#if defined(CONFIG_XEN) /* XXX supported_xen_target() wrong? */ && \
+    !defined(HOST_ARM) && !defined(HOST_AARCH64)
 
 void xen_map_cache_init(phys_offset_to_gaddr_t f,
                         void *opaque);
-- 
2.13.2


Reply via email to