Move the workaround out of linux-user/elfload.c, so that
we don't have to replicate it in many places. Place it
immediately after the include of <signal.h>, which draws
in the relevant symbols.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
include/qemu/osdep.h | 8 ++++++++
linux-user/elfload.c | 7 -------
2 files changed, 8 insertions(+), 7 deletions(-)
diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h
index 96fe51bc39..be3460b32f 100644
--- a/include/qemu/osdep.h
+++ b/include/qemu/osdep.h
@@ -133,6 +133,14 @@ QEMU_EXTERN_C int daemon(int, int);
#include <setjmp.h>
#include <signal.h>
+/*
+ * Avoid conflict with linux/arch/powerpc/include/uapi/asm/elf.h, included
+ * from <asm/sigcontext.h>, but we might as well do this unconditionally.
+ */
+#undef ELF_CLASS
+#undef ELF_DATA
+#undef ELF_ARCH
+
#ifdef CONFIG_IOVEC
#include <sys/uio.h>
#endif
diff --git a/linux-user/elfload.c b/linux-user/elfload.c
index 1ac3a20813..70bfd18de6 100644
--- a/linux-user/elfload.c
+++ b/linux-user/elfload.c
@@ -35,13 +35,6 @@
#include "target/arm/cpu-features.h"
#endif
-#ifdef _ARCH_PPC64
-#undef ARCH_DLINFO
-#undef ELF_CLASS
-#undef ELF_DATA
-#undef ELF_ARCH
-#endif
-
#ifndef TARGET_ARCH_HAS_SIGTRAMP_PAGE
#define TARGET_ARCH_HAS_SIGTRAMP_PAGE 0
#endif
--
2.43.0