From 3d7dfd153ad1eb00c1955b5429cefb0c2ada68289a4cf74b5e845a1f1b560927 Mon Sep 17 00:00:00 2001 From: Bruce Rogers Date: Sat, 14 Sep 2013 17:28:46 +0000 Subject: [PATCH] Accepting request 199056 from home:bfrogers:branches:Virtualization Address issues found during preparations for factory submission: remove unneeded %dir add Conflicts to firmware packages for older qemu add patch details to qemu.changes Change qemu-seabios summary to begin with cap char Add patch for failed i586 qemu-ipxe build with older gcc OBS-URL: https://build.opensuse.org/request/show/199056 OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=163 --- ...-build-Avoid-strict-aliasing-warning.patch | 29 +++++++++++++++++++ qemu.changes | 5 ++++ qemu.spec | 11 +++++-- 3 files changed, 42 insertions(+), 3 deletions(-) create mode 100644 ipxe-build-Avoid-strict-aliasing-warning.patch diff --git a/ipxe-build-Avoid-strict-aliasing-warning.patch b/ipxe-build-Avoid-strict-aliasing-warning.patch new file mode 100644 index 00000000..41684998 --- /dev/null +++ b/ipxe-build-Avoid-strict-aliasing-warning.patch @@ -0,0 +1,29 @@ +From 11ad0bafbf137a874f88ac810520acb90fa9a990 Mon Sep 17 00:00:00 2001 +From: Bo Yang +Date: Wed, 20 Mar 2013 16:34:17 +0800 +Subject: [PATCH] [build] Avoid strict-aliasing warning for gcc 4.3 + +Signed-off-by: Bo Yang +Signed-off-by: Michael Brown +--- + src/arch/i386/include/bits/byteswap.h | 4 ++-- + 1 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/roms/ipxe/src/arch/i386/include/bits/byteswap.h b/roms/ipxe/src/arch/i386/include/bits/byteswap.h +index f3d30a2..0d9cb96 100644 +--- a/roms/ipxe/src/arch/i386/include/bits/byteswap.h ++++ b/roms/ipxe/src/arch/i386/include/bits/byteswap.h +@@ -53,8 +53,8 @@ __bswap_variable_64 ( uint64_t x ) { + static inline __attribute__ (( always_inline )) void + __bswap_64s ( uint64_t *x ) { + struct { +- uint32_t low; +- uint32_t high; ++ uint32_t __attribute__ (( may_alias )) low; ++ uint32_t __attribute__ (( may_alias )) high; + } __attribute__ (( may_alias )) *dwords = ( ( void * ) x ); + uint32_t discard; + +-- +1.7.7 + diff --git a/qemu.changes b/qemu.changes index 11a61a1e..ae223e6e 100644 --- a/qemu.changes +++ b/qemu.changes @@ -9,6 +9,11 @@ Fri Sep 13 11:14:45 UTC 2013 - brogers@suse.com * qemu-vgabios v0.6c * qemu-sgabios v8 (svn rev 8) * qemu-ipxe v1.0.0 +- Add following patches to enable x86 firmware to build: + ipxe-build-Work-around-bug-in-gcc-4.8.patch + ipxe-zbin-Fix-size-used-for-memset-in-al.patch + build_and_copy_vgabios_bin.patch + ipxe-build-Avoid-strict-aliasing-warning.patch ------------------------------------------------------------------- Mon Aug 26 06:40:22 UTC 2013 - rob.verduijn@gmail.com diff --git a/qemu.spec b/qemu.spec index 3a5597f8..933a4f6a 100644 --- a/qemu.spec +++ b/qemu.spec @@ -75,6 +75,7 @@ Patch0038: 0038-gdbstub-Fix-gdb_register_coprocesso.patch Patch1000: ipxe-build-Work-around-bug-in-gcc-4.8.patch Patch1001: ipxe-zbin-Fix-size-used-for-memset-in-al.patch Patch1002: build_and_copy_vgabios_bin.patch +Patch1003: ipxe-build-Avoid-strict-aliasing-warning.patch # this is to make lint happy Source300: rpmlintrc @@ -145,11 +146,11 @@ BuildRequires: spice-protocol-devel %endif Requires: /usr/sbin/groupadd Requires: pwdutils -Requires: timezone Requires: qemu-ipxe Requires: qemu-seabios Requires: qemu-sgabios Requires: qemu-vgabios +Requires: timezone Recommends: qemu-tools %define firmware_files {acpi-dsdt.aml bios.bin q35-acpi-dsdt.aml sgabios.bin vgabios.bin vgabios-cirrus.bin vgabios-stdvga.bin vgabios-vmware.bin vgabios-qxl.bin optionrom/linuxboot.bin optionrom/multiboot.bin optionrom/kvmvapic.bin pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom} @@ -177,11 +178,12 @@ This sub-package contains translations. %endif %package seabios -Summary: x86 BIOS for QEMU +Summary: X86 BIOS for QEMU Group: System/Emulators/PC Version: 1.7.2.2 Release: 0 BuildArch: noarch +Conflicts: qemu < 1.6.0 %description seabios SeaBIOS is an open source implementation of a 16bit x86 BIOS. SeaBIOS @@ -193,6 +195,7 @@ Group: System/Emulators/PC Version: 0.6c Release: 0 BuildArch: noarch +Conflicts: qemu < 1.6.0 %description vgabios VGABIOS provides the video ROM BIOSes for the following variants of VGA @@ -205,6 +208,7 @@ Group: System/Emulators/PC Version: 8 Release: 0 BuildArch: noarch +Conflicts: qemu < 1.6.0 %description sgabios The Google Serial Graphics Adapter BIOS or SGABIOS provides a means for legacy @@ -217,6 +221,7 @@ Group: System/Emulators/PC Version: 1.0.0 Release: 0 BuildArch: noarch +Conflicts: qemu < 1.6.0 %description ipxe Preboot Execution Environment (PXE) ROM support for various emulated network @@ -295,6 +300,7 @@ This sub-package contains the guest agent. %patch1000 -p1 %patch1001 -p1 %patch1002 -p1 +%patch1003 -p1 %if %{build_x86_fw_from_source} # as a safeguard, delete the firmware files that we intend to build @@ -390,7 +396,6 @@ rm -rf ${RPM_BUILD_ROOT} %doc COPYING COPYING.LIB Changelog README VERSION qemu-doc.html qemu-tech.html %_bindir/qemu-system-* %doc %_mandir/man1/qemu.1.gz -%dir %_datadir/%name %_datadir/%name %exclude %_datadir/%name/bios.bin %exclude %_datadir/%name/acpi-dsdt.aml