From 82bca23d6aa31c9141182f62939b1dc823bf4381 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Fri, 6 Nov 2020 15:05:19 +0100 Subject: xvisor: fix build with gcc-10 * with gcc-10 (which doesn't include -fcommon by default) it fails like this: aarch64-oe-linux-ld: error: TOPDIR/BUILD/work/raspberrypi3_64-oe-linux/xvisor/git-r0/git/build/drivers/mmc/core/mmc.o: multiple definition of 'sdio_func_type' aarch64-oe-linux-ld: error: TOPDIR/BUILD/work/raspberrypi3_64-oe-linux/xvisor/git-r0/git/build/drivers/mmc/core/sdio_bus.o: multiple definition of 'sdio_func_type' aarch64-oe-linux-ld: error: TOPDIR/BUILD/work/raspberrypi3_64-oe-linux/xvisor/git-r0/git/build/drivers/mmc/core/sdio_io.o: multiple definition of 'sdio_func_type' aarch64-oe-linux-ld: error: TOPDIR/BUILD/work/raspberrypi3_64-oe-linux/xvisor/git-r0/git/build/drivers/mmc/core/sdio.o: multiple definition of 'sdio_func_type' aarch64-oe-linux-ld: TOPDIR/BUILD/work/raspberrypi3_64-oe-linux/xvisor/git-r0/git/build/drivers/mmc/core/core.o: previous definition here Signed-off-by: Martin Jansa Signed-off-by: Bruce Ashfield --- ...ATORS-Allow-Xvisor-to-compile-with-gcc-10.patch | 55 ++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 recipes-extended/xvisor/files/0001-EMULATORS-Allow-Xvisor-to-compile-with-gcc-10.patch (limited to 'recipes-extended/xvisor/files') diff --git a/recipes-extended/xvisor/files/0001-EMULATORS-Allow-Xvisor-to-compile-with-gcc-10.patch b/recipes-extended/xvisor/files/0001-EMULATORS-Allow-Xvisor-to-compile-with-gcc-10.patch new file mode 100644 index 00000000..221a314c --- /dev/null +++ b/recipes-extended/xvisor/files/0001-EMULATORS-Allow-Xvisor-to-compile-with-gcc-10.patch @@ -0,0 +1,55 @@ +From 417184cc41cfd33ae7b4c11c8396e0f47f43e2ba Mon Sep 17 00:00:00 2001 +From: Jean-Christophe Dubois +Date: Fri, 8 May 2020 15:17:36 +0200 +Subject: [PATCH] EMULATORS: Allow Xvisor to compile with gcc 10. + +With gcc 10 because some header files do not declare some variable +definition as extern, the variable get duplicated in all files +using it. + +This patch allow xvisor to compile with the latest gcc. + +Signed-off-by: Jean-Christophe Dubois +Reviewed-by: Anup Patel +--- + drivers/mmc/core/core.h | 2 +- + emulators/display/drawfn.h | 10 +++++----- + 2 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/drivers/mmc/core/core.h b/drivers/mmc/core/core.h +index d75d135a..e2ca3141 100644 +--- a/drivers/mmc/core/core.h ++++ b/drivers/mmc/core/core.h +@@ -64,7 +64,7 @@ int mmc_go_idle(struct mmc_host *host); + * Note: Must be called with host->lock held. + */ + extern struct vmm_bus sdio_bus_type; +-struct vmm_device_type sdio_func_type; ++extern struct vmm_device_type sdio_func_type; + + int __sdio_attach(struct mmc_host *host); + +diff --git a/emulators/display/drawfn.h b/emulators/display/drawfn.h +index f9163cff..385deaf6 100644 +--- a/emulators/display/drawfn.h ++++ b/emulators/display/drawfn.h +@@ -69,14 +69,14 @@ typedef void (*drawfn)(struct vmm_surface *, + DRAWFN_ORDER_MAX * \ + DRAWFN_FORMAT_MAX) + +-drawfn drawfn_surface_fntable_8[DRAWFN_FNTABLE_SIZE]; ++extern drawfn drawfn_surface_fntable_8[DRAWFN_FNTABLE_SIZE]; + +-drawfn drawfn_surface_fntable_15[DRAWFN_FNTABLE_SIZE]; ++extern drawfn drawfn_surface_fntable_15[DRAWFN_FNTABLE_SIZE]; + +-drawfn drawfn_surface_fntable_16[DRAWFN_FNTABLE_SIZE]; ++extern drawfn drawfn_surface_fntable_16[DRAWFN_FNTABLE_SIZE]; + +-drawfn drawfn_surface_fntable_24[DRAWFN_FNTABLE_SIZE]; ++extern drawfn drawfn_surface_fntable_24[DRAWFN_FNTABLE_SIZE]; + +-drawfn drawfn_surface_fntable_32[DRAWFN_FNTABLE_SIZE]; ++extern drawfn drawfn_surface_fntable_32[DRAWFN_FNTABLE_SIZE]; + + #endif -- cgit v1.2.3-54-g00ecf