From 984faac66812652082fc9aa46eceb21669c1131b Mon Sep 17 00:00:00 2001 From: Laszlo Ersek Date: Tue, 10 Feb 2015 19:41:34 +0100 Subject: [PATCH 11/16] build: reenable local builds to pass --enable-debug (RHEL only) Message-id: <1423597294-16022-2-git-send-email-lersek@redhat.com> Patchwork-id: 63788 O-Subject: [RHEL-7.2 qemu-kvm PATCH 1/1] build: reenable local builds to pass --enable-debug (RHEL only) Bugzilla: RH-Acked-by: Markus Armbruster RH-Acked-by: Miroslav Rezanina RH-Acked-by: Max Reitz RHEL-7 commit f6852e27 dropped the "isa-ide" device, and observed: Unresolved extern symbols pose no real danger, because they fail safely at link time. Note for the curious: the optimizer gets rid of the reference to isa_ide_init() in hw/i386/pc_piix.c. For local builds it is sometimes useful to pass --enable-debug to the configure script. However that flag disables the optimizer, and the isa_ide_init() call is not eliminated during compilation; it reaches the linker. The linker then barfs LINK x86_64-softmmu/qemu-system-x86_64 hw/i386/pc_piix.o: In function `pc_init1': .../hw/i386/pc_piix.c:221: undefined reference to `isa_ide_init' collect2: error: ld returned 1 exit status Provide a stub implementation for isa_ide_init(), reenabling local debug builds. No copyright notice is added to the top of the new file, following the pattern set by other stub files. Signed-off-by: Laszlo Ersek --- stubs/Makefile.objs | 1 + stubs/ide-isa.c | 12 ++++++++++++ 2 files changed, 13 insertions(+) create mode 100644 stubs/ide-isa.c Signed-off-by: Miroslav Rezanina --- stubs/Makefile.objs | 1 + stubs/ide-isa.c | 12 ++++++++++++ 2 files changed, 13 insertions(+) create mode 100644 stubs/ide-isa.c diff --git a/stubs/Makefile.objs b/stubs/Makefile.objs index 4b2cb7d..590008e 100644 --- a/stubs/Makefile.objs +++ b/stubs/Makefile.objs @@ -26,3 +26,4 @@ stub-obj-y += vm-stop.o stub-obj-y += vmstate.o stub-obj-$(CONFIG_WIN32) += fd-register.o stub-obj-y += cpus.o +stub-obj-y += ide-isa.o diff --git a/stubs/ide-isa.c b/stubs/ide-isa.c new file mode 100644 index 0000000..4074aff --- /dev/null +++ b/stubs/ide-isa.c @@ -0,0 +1,12 @@ +#include +#include + +ISADevice *isa_ide_init(ISABus *bus, int iobase, int iobase2, int isairq, + DriveInfo *hd0, DriveInfo *hd1) +{ + /* + * In theory the real isa_ide_init() function can return NULL, but no + * caller actually checks for that. Make sure we go out with a clear bang. + */ + abort(); +} -- 1.8.3.1