Hello community,

here is the log from the commit of package qemu for openSUSE:Factory checked in 
at 2013-09-16 10:12:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qemu (Old)
 and      /work/SRC/openSUSE:Factory/.qemu.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "qemu"

Changes:
--------
--- /work/SRC/openSUSE:Factory/qemu/qemu.changes        2013-09-13 
14:43:28.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.qemu.new/qemu.changes   2013-09-16 
10:12:05.000000000 +0200
@@ -1,0 +2,17 @@
+Fri Sep 13 11:14:45 UTC 2013 - [email protected]
+
+- Build x86 firmware from tarball source. The firmware components
+  produced are equivalent to the upstream provided binary blobs
+  currently being used. They are delivered in noarch subpackages as
+  follows (addresses bnc#830002):
+* qemu-seabios v1.7.2.2
+* 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
+
+-------------------------------------------------------------------

New:
----
  build_and_copy_vgabios_bin.patch
  ipxe-build-Avoid-strict-aliasing-warning.patch
  ipxe-build-Work-around-bug-in-gcc-4.8.patch
  ipxe-zbin-Fix-size-used-for-memset-in-al.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ qemu.spec ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -16,6 +16,13 @@
 #
 
 
+%ifarch %ix86 x86_64
+# choice of building all from source or using provided binary x86 blobs
+%define build_x86_fw_from_source 1
+%else
+%define build_x86_fw_from_source 0
+%endif
+
 Name:           qemu
 Url:            http://www.qemu.org/
 Summary:        Universal CPU emulator
@@ -64,6 +71,12 @@
 Patch0037:      0037-virtfs-proxy-helper-Provide-__u64-f.patch
 Patch0038:      0038-gdbstub-Fix-gdb_register_coprocesso.patch
 # Please do not add patches manually here, run update_git.sh.
+
+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
 Source302:      bridge.conf
@@ -77,6 +90,14 @@
 %endif
 BuildRequires:  curl-devel
 BuildRequires:  cyrus-sasl-devel
+%if %{build_x86_fw_from_source}
+%if 0%{?suse_version} > 1110
+BuildRequires:  iasl
+%else
+BuildRequires:  pmtools
+%endif
+BuildRequires:  dev86
+%endif
 BuildRequires:  e2fsprogs-devel
 BuildRequires:  fdupes
 BuildRequires:  glib2-devel
@@ -125,9 +146,15 @@
 %endif
 Requires:       /usr/sbin/groupadd
 Requires:       pwdutils
+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}
+
 %description
 QEMU is an extremely well-performing CPU emulator that allows you to
 choose between simulating an entire system and running userspace
@@ -150,6 +177,56 @@
 This sub-package contains translations.
 %endif
 
+%package seabios
+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
+is the default BIOS for QEMU.
+
+%package vgabios
+Summary:        VGA BIOSes for QEMU
+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
+emulated devices: Std VGA, QXL, Cirrus CLGD 5446 and VMware emulated
+video card.
+
+%package sgabios
+Summary:        Serial Graphics Adapter BIOS for QEMU
+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
+x86 software to communicate with an attached serial console as if a video card
+were attached.
+
+%package ipxe
+Summary:        PXE ROMs for QEMU NICs
+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
+adapters available with QEMU.
+
 %package tools
 Summary:        Universal CPU emulator -- Tools
 Group:          System/Emulators/PC
@@ -220,6 +297,19 @@
 %patch0037 -p1
 %patch0038 -p1
 
+%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
+for i in %firmware_files
+do
+  rm -f pc-bios/$i
+done
+%endif
+
 %build
 ./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \
        --libexecdir=%_libexecdir \
@@ -265,6 +355,15 @@
 
 make %{?_smp_mflags} V=1
 
+# Firmware
+%if %{build_x86_fw_from_source}
+make -C roms bios
+make -C roms lgplvgabios
+make -C roms pxerom
+make -C roms/sgabios
+cp roms/sgabios/sgabios.bin pc-bios/sgabios.bin
+%endif
+
 %install
 make install DESTDIR=$RPM_BUILD_ROOT
 rm -fr $RPM_BUILD_ROOT/%_datadir/doc
@@ -298,6 +397,21 @@
 %_bindir/qemu-system-*
 %doc %_mandir/man1/qemu.1.gz
 %_datadir/%name
+%exclude %_datadir/%name/bios.bin
+%exclude %_datadir/%name/acpi-dsdt.aml
+%exclude %_datadir/%name/q35-acpi-dsdt.aml
+%exclude %_datadir/%name/vgabios.bin
+%exclude %_datadir/%name/vgabios-cirrus.bin
+%exclude %_datadir/%name/vgabios-qxl.bin
+%exclude %_datadir/%name/vgabios-stdvga.bin
+%exclude %_datadir/%name/vgabios-vmware.bin
+%exclude %_datadir/%name/sgabios.bin
+%exclude %_datadir/%name/pxe-e1000.rom
+%exclude %_datadir/%name/pxe-eepro100.rom
+%exclude %_datadir/%name/pxe-pcnet.rom
+%exclude %_datadir/%name/pxe-ne2k_pci.rom
+%exclude %_datadir/%name/pxe-rtl8139.rom
+%exclude %_datadir/%name/pxe-virtio.rom
 %dir %_sysconfdir/%name
 %config %_sysconfdir/%name/target-x86_64.conf
 
@@ -306,6 +420,33 @@
 %defattr(-, root, root)
 %endif
 
+%files seabios
+%defattr(-, root, root)
+%_datadir/%name/bios.bin
+%_datadir/%name/acpi-dsdt.aml
+%_datadir/%name/q35-acpi-dsdt.aml
+
+%files vgabios
+%defattr(-, root, root)
+%_datadir/%name/vgabios.bin
+%_datadir/%name/vgabios-cirrus.bin
+%_datadir/%name/vgabios-qxl.bin
+%_datadir/%name/vgabios-stdvga.bin
+%_datadir/%name/vgabios-vmware.bin
+
+%files sgabios
+%defattr(-, root, root)
+%_datadir/%name/sgabios.bin
+
+%files ipxe
+%defattr(-, root, root)
+%_datadir/%name/pxe-e1000.rom
+%_datadir/%name/pxe-eepro100.rom
+%_datadir/%name/pxe-pcnet.rom
+%_datadir/%name/pxe-ne2k_pci.rom
+%_datadir/%name/pxe-rtl8139.rom
+%_datadir/%name/pxe-virtio.rom
+
 %files tools
 %defattr(-, root, root)
 %doc %_mandir/man1/qemu-img.1.gz

++++++ 0001-XXX-dont-dump-core-on-sigabort.patc.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -4,8 +4,8 @@
 Subject: [PATCH] XXX dont dump core on sigabort
 
 ---
- linux-user/signal.c | 6 ++++++
- 1 file changed, 6 insertions(+)
+ linux-user/signal.c |    6 ++++++
+ 1 files changed, 6 insertions(+), 0 deletions(-)
 
 diff --git a/linux-user/signal.c b/linux-user/signal.c
 index 23d65da..c6f9968 100644

++++++ 0002-XXX-work-around-SA_RESTART-race-wit.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -5,10 +5,10 @@
 
 [AF: CPUState -> CPUArchState, adapt to reindentation]
 ---
- linux-user/main.c    | 25 +++++++++------
- linux-user/qemu.h    |  3 ++
- linux-user/signal.c  | 22 +++++++++++++
- linux-user/syscall.c | 90 +++++++++++++++++++++++++++++++++++++++++++++++++++-
+ linux-user/main.c    |   25 +++++++++-----
+ linux-user/qemu.h    |    3 ++
+ linux-user/signal.c  |   22 ++++++++++++
+ linux-user/syscall.c |   90 +++++++++++++++++++++++++++++++++++++++++++++++++-
  4 files changed, 130 insertions(+), 10 deletions(-)
 
 diff --git a/linux-user/main.c b/linux-user/main.c

++++++ 0003-qemu-0.9.0.cvs-binfmt.patch.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -10,8 +10,8 @@
 
 Signed-off-by: Ulrich Hecht <[email protected]>
 ---
- scripts/qemu-binfmt-conf.sh | 37 ++++++++++++++++++++-----------------
- 1 file changed, 20 insertions(+), 17 deletions(-)
+ scripts/qemu-binfmt-conf.sh |   37 ++++++++++++++++++++-----------------
+ 1 files changed, 20 insertions(+), 17 deletions(-)
 
 diff --git a/scripts/qemu-binfmt-conf.sh b/scripts/qemu-binfmt-conf.sh
 index 0da2618..dc652f0 100644

++++++ 0004-qemu-cvs-alsa_bitfield.patch.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -8,9 +8,9 @@
 Signed-off-by: Alexander Graf <[email protected]>
 Signed-off-by: Ulrich Hecht <[email protected]>
 ---
- include/exec/user/thunk.h |  3 +++
- thunk.c                   | 21 +++++++++++++++++++++
- 2 files changed, 24 insertions(+)
+ include/exec/user/thunk.h |    3 +++
+ thunk.c                   |   21 +++++++++++++++++++++
+ 2 files changed, 24 insertions(+), 0 deletions(-)
 
 diff --git a/include/exec/user/thunk.h b/include/exec/user/thunk.h
 index 87025c3..6c35e64 100644

++++++ 0005-qemu-cvs-alsa_ioctl.patch.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -14,7 +14,7 @@
  linux-user/syscall_defs.h        |    2 +
  linux-user/syscall_types.h       |    5 +
  linux-user/syscall_types_alsa.h  | 1336 +++++++++++++++++++++++++++++
- 6 files changed, 3555 insertions(+)
+ 6 files changed, 3555 insertions(+), 0 deletions(-)
  create mode 100644 linux-user/ioctls_alsa.h
  create mode 100644 linux-user/ioctls_alsa_structs.h
  create mode 100644 linux-user/syscall_types_alsa.h

++++++ 0006-qemu-cvs-alsa_mmap.patch.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -8,8 +8,8 @@
 Signed-off-by: Alexander Graf <[email protected]>
 Signed-off-by: Ulrich Hecht <[email protected]>
 ---
- linux-user/mmap.c | 14 ++++++++++++++
- 1 file changed, 14 insertions(+)
+ linux-user/mmap.c |   14 ++++++++++++++
+ 1 files changed, 14 insertions(+), 0 deletions(-)
 
 diff --git a/linux-user/mmap.c b/linux-user/mmap.c
 index a249f0c..34a5615 100644

++++++ 0007-qemu-cvs-gettimeofday.patch.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -5,8 +5,8 @@
 
 No clue what this is for.
 ---
- linux-user/syscall.c | 2 ++
- 1 file changed, 2 insertions(+)
+ linux-user/syscall.c |    2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
 
 diff --git a/linux-user/syscall.c b/linux-user/syscall.c
 index 23954c1..709c167 100644

++++++ 0008-qemu-cvs-ioctl_debug.patch.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -8,8 +8,8 @@
 Signed-off-by: Alexander Graf <[email protected]>
 Signed-off-by: Ulrich Hecht <[email protected]>
 ---
- linux-user/syscall.c | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
+ linux-user/syscall.c |    7 ++++++-
+ 1 files changed, 6 insertions(+), 1 deletions(-)
 
 diff --git a/linux-user/syscall.c b/linux-user/syscall.c
 index 709c167..7453ff5 100644

++++++ 0009-qemu-cvs-ioctl_nodirection.patch.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -11,8 +11,8 @@
 Signed-off-by: Alexander Graf <[email protected]>
 Signed-off-by: Ulrich Hecht <[email protected]>
 ---
- linux-user/syscall.c | 6 ++++++
- 1 file changed, 6 insertions(+)
+ linux-user/syscall.c |    6 ++++++
+ 1 files changed, 6 insertions(+), 0 deletions(-)
 
 diff --git a/linux-user/syscall.c b/linux-user/syscall.c
 index 7453ff5..18ec182 100644

++++++ 0010-block-vmdk-Support-creation-of-SCSI.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -11,10 +11,10 @@
 [AF: Rebased onto upstream VMDK SCSI support]
 Signed-off-by: Andreas Färber <[email protected]>
 ---
- block.c                   | 6 +++++-
- block/vmdk.c              | 9 ++++++++-
- include/block/block_int.h | 2 ++
- qemu-img.c                | 8 +++++++-
+ block.c                   |    6 +++++-
+ block/vmdk.c              |    9 ++++++++-
+ include/block/block_int.h |    2 ++
+ qemu-img.c                |    8 +++++++-
  4 files changed, 22 insertions(+), 3 deletions(-)
 
 diff --git a/block.c b/block.c

++++++ 0011-linux-user-add-binfmt-wrapper-for-a.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -27,10 +27,10 @@
 [AF: Rebased onto new Makefile infrastructure]
 Signed-off-by: Andreas Färber <[email protected]>
 ---
- Makefile.target             | 12 ++++++++++++
- linux-user/Makefile.objs    |  2 ++
- linux-user/binfmt.c         | 42 ++++++++++++++++++++++++++++++++++++++++++
- scripts/qemu-binfmt-conf.sh | 34 +++++++++++++++++-----------------
+ Makefile.target             |   12 ++++++++++++
+ linux-user/Makefile.objs    |    2 ++
+ linux-user/binfmt.c         |   42 ++++++++++++++++++++++++++++++++++++++++++
+ scripts/qemu-binfmt-conf.sh |   34 +++++++++++++++++-----------------
  4 files changed, 73 insertions(+), 17 deletions(-)
  create mode 100644 linux-user/binfmt.c
 

++++++ 0012-linux-user-Ignore-timer_create-sysc.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -8,8 +8,8 @@
 
 Signed-off-by: Alexander Graf <[email protected]>
 ---
- linux-user/syscall.c | 5 +++++
- 1 file changed, 5 insertions(+)
+ linux-user/syscall.c |    5 +++++
+ 1 files changed, 5 insertions(+), 0 deletions(-)
 
 diff --git a/linux-user/syscall.c b/linux-user/syscall.c
 index 18ec182..eda4455 100644

++++++ 0013-linux-user-be-silent-about-capget-f.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -9,8 +9,8 @@
 
 Signed-off-by: Alexander Graf <[email protected]>
 ---
- linux-user/syscall.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
+ linux-user/syscall.c |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
 
 diff --git a/linux-user/syscall.c b/linux-user/syscall.c
 index eda4455..628fe66 100644

++++++ 0014-PPC-KVM-Disable-mmu-notifier-check..patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -9,8 +9,8 @@
 So disable the check for mmu notifiers on PowerPC guests, making
 KVM guests work there, even if possibly racy in some odd circumstances.
 ---
- exec.c | 2 ++
- 1 file changed, 2 insertions(+)
+ exec.c |    2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
 
 diff --git a/exec.c b/exec.c
 index 3ca9381..e4d92d7 100644

++++++ 0015-linux-user-fix-segfault-deadlock.pa.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -21,9 +21,9 @@
 Signed-off-by: Alexander Graf <[email protected]>
 Signed-off-by: Andreas Färber <[email protected]>
 ---
- include/exec/spinlock.h | 10 ++++++++++
- user-exec.c             |  4 ++++
- 2 files changed, 14 insertions(+)
+ include/exec/spinlock.h |   10 ++++++++++
+ user-exec.c             |    4 ++++
+ 2 files changed, 14 insertions(+), 0 deletions(-)
 
 diff --git a/include/exec/spinlock.h b/include/exec/spinlock.h
 index a72edda..e460e12 100644

++++++ 0016-linux-user-binfmt-support-host-bina.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -8,8 +8,8 @@
 
 Signed-off-by: Alexander Graf <[email protected]>
 ---
- linux-user/binfmt.c | 25 +++++++++++++++++++++++++
- 1 file changed, 25 insertions(+)
+ linux-user/binfmt.c |   25 +++++++++++++++++++++++++
+ 1 files changed, 25 insertions(+), 0 deletions(-)
 
 diff --git a/linux-user/binfmt.c b/linux-user/binfmt.c
 index cd1f513..87dc4c6 100644

++++++ 0017-linux-user-arm-no-tb_flush-on-reset.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -10,8 +10,8 @@
 So something in our thread creation is broken. But for now, let's revert the
 change to at least get a working build again.
 ---
- target-arm/cpu.c | 4 ++++
- 1 file changed, 4 insertions(+)
+ target-arm/cpu.c |    4 ++++
+ 1 files changed, 4 insertions(+), 0 deletions(-)
 
 diff --git a/target-arm/cpu.c b/target-arm/cpu.c
 index 5a7566b..40bddc3 100644

++++++ 0018-linux-user-Ignore-broken-loop-ioctl.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -11,11 +11,11 @@
 
 Signed-off-by: Alexander Graf <[email protected]>
 ---
- linux-user/ioctls.h       | 1 +
- linux-user/linux_loop.h   | 1 +
- linux-user/syscall.c      | 7 +++++++
- linux-user/syscall_defs.h | 1 +
- 4 files changed, 10 insertions(+)
+ linux-user/ioctls.h       |    1 +
+ linux-user/linux_loop.h   |    1 +
+ linux-user/syscall.c      |    7 +++++++
+ linux-user/syscall_defs.h |    1 +
+ 4 files changed, 10 insertions(+), 0 deletions(-)
 
 diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
 index 28dc0b2..da4f12c 100644

++++++ 0019-linux-user-lock-tcg.patch.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -13,9 +13,9 @@
 [AF: Rebased onto exec.c/translate-all.c split for 1.4]
 Signed-off-by: Andreas Färber <[email protected]>
 ---
- linux-user/mmap.c |  3 +++
- tcg/tcg.c         | 36 ++++++++++++++++++++++++++++++++++--
- tcg/tcg.h         |  6 ++++++
+ linux-user/mmap.c |    3 +++
+ tcg/tcg.c         |   36 ++++++++++++++++++++++++++++++++++--
+ tcg/tcg.h         |    6 ++++++
  3 files changed, 43 insertions(+), 2 deletions(-)
 
 diff --git a/linux-user/mmap.c b/linux-user/mmap.c

++++++ 0020-linux-user-Run-multi-threaded-code-.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -15,8 +15,8 @@
 
 Signed-off-by: Alexander Graf <[email protected]>
 ---
- linux-user/syscall.c | 9 +++++++++
- 1 file changed, 9 insertions(+)
+ linux-user/syscall.c |    9 +++++++++
+ 1 files changed, 9 insertions(+), 0 deletions(-)
 
 diff --git a/linux-user/syscall.c b/linux-user/syscall.c
 index 38ca7af..8aef3e8 100644

++++++ 0021-linux-user-lock-tb-flushing-too.pat.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -10,8 +10,8 @@
 [AF: Rebased onto exec.c/translate-all.c split for 1.4]
 Signed-off-by: Andreas Färber <[email protected]>
 ---
- translate-all.c | 20 ++++++++++++++++++--
- 1 file changed, 18 insertions(+), 2 deletions(-)
+ translate-all.c |   20 ++++++++++++++++++--
+ 1 files changed, 18 insertions(+), 2 deletions(-)
 
 diff --git a/translate-all.c b/translate-all.c
 index 3b5fc7c..165a63e 100644

++++++ 0022-linux-user-Fake-proc-cpuinfo.patch.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -18,8 +18,8 @@
 [AF: Rebased for v1.6]
 Signed-off-by: Andreas Färber <[email protected]>
 ---
- linux-user/syscall.c | 20 ++++++++++++++++++++
- 1 file changed, 20 insertions(+)
+ linux-user/syscall.c |   20 ++++++++++++++++++++
+ 1 files changed, 20 insertions(+), 0 deletions(-)
 
 diff --git a/linux-user/syscall.c b/linux-user/syscall.c
 index 8aef3e8..429ab3a 100644

++++++ 0023-linux-user-implement-FS_IOC_GETFLAG.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -11,9 +11,9 @@
 
   - use TYPE_LONG instead of TYPE_INT
 ---
- linux-user/ioctls.h       | 1 +
- linux-user/syscall_defs.h | 2 ++
- 2 files changed, 3 insertions(+)
+ linux-user/ioctls.h       |    1 +
+ linux-user/syscall_defs.h |    2 ++
+ 2 files changed, 3 insertions(+), 0 deletions(-)
 
 diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
 index da4f12c..17b67af 100644

++++++ 0024-linux-user-implement-FS_IOC_SETFLAG.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -11,9 +11,9 @@
 
   - use TYPE_LONG instead of TYPE_INT
 ---
- linux-user/ioctls.h       | 1 +
- linux-user/syscall_defs.h | 1 +
- 2 files changed, 2 insertions(+)
+ linux-user/ioctls.h       |    1 +
+ linux-user/syscall_defs.h |    1 +
+ 2 files changed, 2 insertions(+), 0 deletions(-)
 
 diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
 index 17b67af..a77b72c 100644

++++++ 0025-linux-user-XXX-disable-fiemap.patch.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -5,8 +5,8 @@
 
 agraf: fiemap breaks in libarchive. Disable it for now.
 ---
- linux-user/syscall.c | 5 +++++
- 1 file changed, 5 insertions(+)
+ linux-user/syscall.c |    5 +++++
+ 1 files changed, 5 insertions(+), 0 deletions(-)
 
 diff --git a/linux-user/syscall.c b/linux-user/syscall.c
 index 429ab3a..5c42bc9 100644

++++++ 0026-slirp-nooutgoing.patch.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -5,11 +5,11 @@
 
 TBD (from SUSE Studio team)
 ---
- qemu-options.hx  | 10 ++++++++++
- slirp/socket.c   |  8 ++++++++
- slirp/tcp_subr.c | 13 +++++++++++++
- vl.c             |  9 +++++++++
- 4 files changed, 40 insertions(+)
+ qemu-options.hx  |   10 ++++++++++
+ slirp/socket.c   |    8 ++++++++
+ slirp/tcp_subr.c |   13 +++++++++++++
+ vl.c             |    9 +++++++++
+ 4 files changed, 40 insertions(+), 0 deletions(-)
 
 diff --git a/qemu-options.hx b/qemu-options.hx
 index d15338e..e8097ac 100644

++++++ 0027-vnc-password-file-and-incoming-conn.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -5,8 +5,8 @@
 
 TBD (from SUSE Studio team)
 ---
- ui/vnc.c | 71 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 71 insertions(+)
+ ui/vnc.c |   71 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 1 files changed, 71 insertions(+), 0 deletions(-)
 
 diff --git a/ui/vnc.c b/ui/vnc.c
 index 5601cc3..d5796e6 100644

++++++ 0028-linux-user-add-more-blk-ioctls.patc.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -7,10 +7,10 @@
 
 Signed-off-by: Alexander Graf <[email protected]>
 ---
- linux-user/ioctls.h        | 18 ++++++++++++++++++
- linux-user/syscall_defs.h  |  6 ++++++
- linux-user/syscall_types.h |  3 +++
- 3 files changed, 27 insertions(+)
+ linux-user/ioctls.h        |   18 ++++++++++++++++++
+ linux-user/syscall_defs.h  |    6 ++++++
+ linux-user/syscall_types.h |    3 +++
+ 3 files changed, 27 insertions(+), 0 deletions(-)
 
 diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
 index a77b72c..4c6d2ee 100644

++++++ 0029-linux-user-use-target_ulong.patch.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -12,8 +12,8 @@
 
 Signed-off-by: Alexander Graf <[email protected]>
 ---
- linux-user/qemu.h    | 8 ++++----
- linux-user/syscall.c | 8 ++++----
+ linux-user/qemu.h    |    8 ++++----
+ linux-user/syscall.c |    8 ++++----
  2 files changed, 8 insertions(+), 8 deletions(-)
 
 diff --git a/linux-user/qemu.h b/linux-user/qemu.h

++++++ 0030-Add-support-for-DictZip-enabled-gzi.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -27,9 +27,9 @@
 Signed-off-by: Tim Hardeck <[email protected]>
 Signed-off-by: Andreas Färber <[email protected]>
 ---
- block/Makefile.objs |   1 +
- block/dictzip.c     | 596 ++++++++++++++++++++++++++++++++++++++++++++++++++++
- 2 files changed, 597 insertions(+)
+ block/Makefile.objs |    1 +
+ block/dictzip.c     |  596 +++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 597 insertions(+), 0 deletions(-)
  create mode 100644 block/dictzip.c
 
 diff --git a/block/Makefile.objs b/block/Makefile.objs

++++++ 0031-Add-tar-container-format.patch.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -28,9 +28,9 @@
 Signed-off-by: Tim Hardeck <[email protected]>
 Signed-off-by: Andreas Färber <[email protected]>
 ---
- block/Makefile.objs |   1 +
- block/tar.c         | 386 ++++++++++++++++++++++++++++++++++++++++++++++++++++
- 2 files changed, 387 insertions(+)
+ block/Makefile.objs |    1 +
+ block/tar.c         |  386 +++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 387 insertions(+), 0 deletions(-)
  create mode 100644 block/tar.c
 
 diff --git a/block/Makefile.objs b/block/Makefile.objs

++++++ 0032-Legacy-Patch-kvm-qemu-preXX-dictzip.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -4,8 +4,8 @@
 Subject: [PATCH] Legacy Patch kvm-qemu-preXX-dictzip3.patch
 
 ---
- block/tar.c | 13 +++++++++++--
- 1 file changed, 11 insertions(+), 2 deletions(-)
+ block/tar.c |   13 +++++++++++--
+ 1 files changed, 11 insertions(+), 2 deletions(-)
 
 diff --git a/block/tar.c b/block/tar.c
 index 87bf552..bf24c98 100644

++++++ 0033-Legacy-Patch-kvm-qemu-preXX-report-.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -4,8 +4,8 @@
 Subject: [PATCH] Legacy Patch kvm-qemu-preXX-report-default-mac-used.patch
 
 ---
- net/net.c | 22 ++++++++++++++++++++++
- 1 file changed, 22 insertions(+)
+ net/net.c |   22 ++++++++++++++++++++++
+ 1 files changed, 22 insertions(+), 0 deletions(-)
 
 diff --git a/net/net.c b/net/net.c
 index c0d61bf..adc389f 100644

++++++ 0034-console-add-question-mark-escape-op.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -12,8 +12,8 @@
 
 Signed-off-by: Alexander Graf <[email protected]>
 ---
- ui/console.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
+ ui/console.c |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
 
 diff --git a/ui/console.c b/ui/console.c
 index e3e8297..8784cd0 100644

++++++ 0035-Make-char-muxer-more-robust-wrt-sma.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -18,8 +18,8 @@
 
 This patch fixes input when using -nographic on s390 for me.
 ---
- qemu-char.c | 16 ++++++++++++++++
- 1 file changed, 16 insertions(+)
+ qemu-char.c |   16 ++++++++++++++++
+ 1 files changed, 16 insertions(+), 0 deletions(-)
 
 diff --git a/qemu-char.c b/qemu-char.c
 index 1be1cf6..ad7c8fd 100644

++++++ 0036-linux-user-lseek-explicitly-cast-no.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -12,8 +12,8 @@
 
 Signed-off-by: Alexander Graf <[email protected]>
 ---
- linux-user/syscall.c | 9 +++++++--
- 1 file changed, 7 insertions(+), 2 deletions(-)
+ linux-user/syscall.c |    9 +++++++--
+ 1 files changed, 7 insertions(+), 2 deletions(-)
 
 diff --git a/linux-user/syscall.c b/linux-user/syscall.c
 index ab30b58..4136873 100644

++++++ 0037-virtfs-proxy-helper-Provide-__u64-f.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -8,8 +8,8 @@
 
 [AF: Extend to ppc64]
 ---
- fsdev/virtfs-proxy-helper.c | 7 +++++++
- 1 file changed, 7 insertions(+)
+ fsdev/virtfs-proxy-helper.c |    7 +++++++
+ 1 files changed, 7 insertions(+), 0 deletions(-)
 
 diff --git a/fsdev/virtfs-proxy-helper.c b/fsdev/virtfs-proxy-helper.c
 index 713a7b2..b8da77d 100644

++++++ 0038-gdbstub-Fix-gdb_register_coprocesso.patch ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -1,4 +1,4 @@
-From 1fd884e9d531b5b5b3e021eb3277a8784714df2f Mon Sep 17 00:00:00 2001
+From f53729fe3c617028aad57b8d7d01f34d1740c20c Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <[email protected]>
 Date: Mon, 12 Aug 2013 18:09:47 +0200
 Subject: [PATCH] gdbstub: Fix gdb_register_coprocessor() register counting
@@ -21,6 +21,9 @@
 Tested-by: Max Filippov <[email protected]>
 Tested-by: Peter Maydell <[email protected]>
 Signed-off-by: Andreas Färber <[email protected]>
+(cherry-picked from commit 35143f0164e6933a85c7c2b8a89a040d881a9151)
+
+Signed-off-by: Andreas Färber <[email protected]>
 ---
  gdbstub.c         | 6 ++++--
  include/qom/cpu.h | 2 ++

++++++ build_and_copy_vgabios_bin.patch ++++++
---
 roms/Makefile |    2 ++
 1 file changed, 2 insertions(+)

Index: b/roms/Makefile
===================================================================
--- a/roms/Makefile
+++ b/roms/Makefile
@@ -50,6 +50,8 @@ seavgabios-%: config.vga.%
        cp seabios/out/vgabios.bin ../pc-bios/vgabios-$*.bin
 
 lgplvgabios: $(patsubst %,lgplvgabios-%,$(vgabios_variants))
+       make -C vgabios vgabios.bin
+       cp vgabios/VGABIOS-lgpl-latest.bin ../pc-bios/vgabios.bin
 
 lgplvgabios-%:
        make -C vgabios vgabios-$*.bin
++++++ ipxe-build-Avoid-strict-aliasing-warning.patch ++++++
>From 11ad0bafbf137a874f88ac810520acb90fa9a990 Mon Sep 17 00:00:00 2001
From: Bo Yang <[email protected]>
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 <[email protected]>
Signed-off-by: Michael Brown <[email protected]>
---
 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

++++++ ipxe-build-Work-around-bug-in-gcc-4.8.patch ++++++
>From 238050dfd46e3c4a87329da1d48b4d8dde5af8a1 Mon Sep 17 00:00:00 2001
From: Michael Brown <[email protected]>
Date: Fri, 7 Jun 2013 13:46:27 +0100
Subject: [PATCH] [build] Work around bug in gcc >= 4.8

gcc 4.8 and 4.9 fail to compile pxe_call.c with the error "bp cannot
be used in asm here".  Other points in the codebase which use "ebp" in
the asm clobber list do not seem to be affected.

Unfortunately gcc provides no way to specify %ebp as an output
register, so we cannot use this as a workaround.  The only viable
solution is to explicitly push/pop %ebp within the asm itself.  This
is ugly for two reasons: firstly, it may be unnecessary; secondly, it
may cause gcc to generate invalid %esp-relative addresses if the asm
happens to use memory operands.  This specific block of asm uses no
memory operands and so will not generate invalid code.

Reported-by: Daniel P. Berrange <[email protected]>
Reported-by: Christian Hesse <[email protected]>
Originally-fixed-by: Christian Hesse <[email protected]>
Signed-off-by: Michael Brown <[email protected]>
---
 roms/ipxe/src/arch/i386/interface/pxe/pxe_call.c |    8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

Index: b/roms/ipxe/src/arch/i386/interface/pxe/pxe_call.c
===================================================================
--- a/roms/ipxe/src/arch/i386/interface/pxe/pxe_call.c
+++ b/roms/ipxe/src/arch/i386/interface/pxe/pxe_call.c
@@ -265,12 +265,14 @@ int pxe_start_nbp ( void ) {
                DBG ( "Restarting NBP (%x)\n", jmp );
 
        /* Far call to PXE NBP */
-       __asm__ __volatile__ ( REAL_CODE ( "movw %%cx, %%es\n\t"
+       __asm__ __volatile__ ( REAL_CODE ( "pushl %%ebp\n\t" /* gcc bug */
+                                          "movw %%cx, %%es\n\t"
                                           "pushw %%es\n\t"
                                           "pushw %%di\n\t"
                                           "sti\n\t"
                                           "lcall $0, $0x7c00\n\t"
-                                          "addw $4, %%sp\n\t" )
+                                          "popl %%ebp\n\t" /* discard */
+                                          "popl %%ebp\n\t" /* gcc bug */ )
                               : "=a" ( rc ), "=b" ( discard_b ),
                                 "=c" ( discard_c ), "=d" ( discard_d ),
                                 "=D" ( discard_D )
@@ -278,7 +280,7 @@ int pxe_start_nbp ( void ) {
                                 "c" ( rm_cs ),
                                 "d" ( virt_to_phys ( &pxenv ) ),
                                 "D" ( __from_text16 ( &ppxe ) )
-                              : "esi", "ebp", "memory" );
+                              : "esi", "memory" );
 
        return rc;
 }
++++++ ipxe-zbin-Fix-size-used-for-memset-in-al.patch ++++++
>From eb5a2ba5962579e514b377f5fdab7292be0fb2a7 Mon Sep 17 00:00:00 2001
From: "Daniel P. Berrange" <[email protected]>
Date: Tue, 5 Mar 2013 15:18:20 +0000
Subject: [PATCH] [zbin] Fix size used for memset in alloc_output_file
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

The output->buf field is a pointer, not an array, so sizeof() is not
applicable.  We must use the allocated string length instead.

Identified by gcc:

  util/zbin.c: In function ‘alloc_output_file’:
  util/zbin.c:146:37: warning: argument to ‘sizeof’ in ‘memset’ call
    is the same expression as the destination; did you mean to
    dereference it? [-Wsizeof-pointer-memaccess]
  memset ( output->buf, 0xff, sizeof ( output->buf ) );

Signed-off-by: Daniel P. Berrange <[email protected]>
Signed-off-by: Michael Brown <[email protected]>
---
 src/util/zbin.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/roms/ipxe/src/util/zbin.c b/roms/ipxe/src/util/zbin.c
index 0dabaf1..3b7cf95 100644
--- a/roms/ipxe/src/util/zbin.c
+++ b/roms/ipxe/src/util/zbin.c
@@ -143,7 +143,7 @@ static int alloc_output_file ( size_t max_len, struct 
output_file *output ) {
                          max_len );
                return -1;
        }
-       memset ( output->buf, 0xff, sizeof ( output->buf ) );
+       memset ( output->buf, 0xff, max_len );
        return 0;
 }
 
-- 
1.7.7

++++++ qemu.spec.in ++++++
--- /var/tmp/diff_new_pack.cjKJ1Y/_old  2013-09-16 10:12:07.000000000 +0200
+++ /var/tmp/diff_new_pack.cjKJ1Y/_new  2013-09-16 10:12:07.000000000 +0200
@@ -16,6 +16,13 @@
 #
 
 
+%ifarch %ix86 x86_64
+# choice of building all from source or using provided binary x86 blobs
+%define build_x86_fw_from_source 1
+%else
+%define build_x86_fw_from_source 0
+%endif
+
 Name:           qemu
 Url:            http://www.qemu.org/
 Summary:        Universal CPU emulator
@@ -27,6 +34,11 @@
 # This patch queue is auto-generated from https://github.com/openSUSE/qemu
 PATCH_FILES
 # Please do not add patches manually here, run update_git.sh.
+
+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
+
 # this is to make lint happy
 Source300:      rpmlintrc
 Source302:      bridge.conf
@@ -40,6 +52,14 @@
 %endif
 BuildRequires:  curl-devel
 BuildRequires:  cyrus-sasl-devel
+%if %{build_x86_fw_from_source}
+%if 0%{?suse_version} > 1110
+BuildRequires:  iasl
+%else
+BuildRequires:  pmtools
+%endif
+BuildRequires:  dev86
+%endif
 BuildRequires:  e2fsprogs-devel
 BuildRequires:  fdupes
 BuildRequires:  glib2-devel
@@ -89,8 +109,14 @@
 Requires:       /usr/sbin/groupadd
 Requires:       pwdutils
 Requires:       timezone
+Requires:       qemu-ipxe
+Requires:       qemu-seabios
+Requires:       qemu-sgabios
+Requires:       qemu-vgabios
 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}
+
 %description
 QEMU is an extremely well-performing CPU emulator that allows you to
 choose between simulating an entire system and running userspace
@@ -113,6 +139,52 @@
 This sub-package contains translations.
 %endif
 
+%package seabios
+Summary:        x86 BIOS for QEMU
+Group:          System/Emulators/PC
+Version:        1.7.2.2
+Release:        0
+BuildArch:      noarch
+
+%description seabios
+SeaBIOS is an open source implementation of a 16bit x86 BIOS. SeaBIOS
+is the default BIOS for QEMU.
+
+%package vgabios
+Summary:        VGA BIOSes for QEMU
+Group:          System/Emulators/PC
+Version:        0.6c
+Release:        0
+BuildArch:      noarch
+
+%description vgabios
+VGABIOS provides the video ROM BIOSes for the following variants of VGA
+emulated devices: Std VGA, QXL, Cirrus CLGD 5446 and VMware emulated
+video card.
+
+%package sgabios
+Summary:        Serial Graphics Adapter BIOS for QEMU
+Group:          System/Emulators/PC
+Version:        8
+Release:        0
+BuildArch:      noarch
+
+%description sgabios
+The Google Serial Graphics Adapter BIOS or SGABIOS provides a means for legacy
+x86 software to communicate with an attached serial console as if a video card
+were attached.
+
+%package ipxe
+Summary:        PXE ROMs for QEMU NICs
+Group:          System/Emulators/PC
+Version:        1.0.0
+Release:        0
+BuildArch:      noarch
+
+%description ipxe
+Preboot Execution Environment (PXE) ROM support for various emulated network
+adapters available with QEMU.
+
 %package tools
 Summary:        Universal CPU emulator -- Tools
 Group:          System/Emulators/PC
@@ -146,6 +218,18 @@
 %setup -q #-n %name-1.6.0-rc3
 PATCH_EXEC
 
+%patch1000 -p1
+%patch1001 -p1
+%patch1002 -p1
+
+%if %{build_x86_fw_from_source}
+# as a safeguard, delete the firmware files that we intend to build
+for i in %firmware_files
+do
+  rm -f pc-bios/$i
+done
+%endif
+
 %build
 ./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \
        --libexecdir=%_libexecdir \
@@ -191,6 +275,15 @@
 
 make %{?_smp_mflags} V=1
 
+# Firmware
+%if %{build_x86_fw_from_source}
+make -C roms bios
+make -C roms lgplvgabios
+make -C roms pxerom
+make -C roms/sgabios
+cp roms/sgabios/sgabios.bin pc-bios/sgabios.bin
+%endif
+
 %install
 make install DESTDIR=$RPM_BUILD_ROOT
 rm -fr $RPM_BUILD_ROOT/%_datadir/doc
@@ -223,7 +316,23 @@
 %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
+%exclude %_datadir/%name/q35-acpi-dsdt.aml
+%exclude %_datadir/%name/vgabios.bin
+%exclude %_datadir/%name/vgabios-cirrus.bin
+%exclude %_datadir/%name/vgabios-qxl.bin
+%exclude %_datadir/%name/vgabios-stdvga.bin
+%exclude %_datadir/%name/vgabios-vmware.bin
+%exclude %_datadir/%name/sgabios.bin
+%exclude %_datadir/%name/pxe-e1000.rom
+%exclude %_datadir/%name/pxe-eepro100.rom
+%exclude %_datadir/%name/pxe-pcnet.rom
+%exclude %_datadir/%name/pxe-ne2k_pci.rom
+%exclude %_datadir/%name/pxe-rtl8139.rom
+%exclude %_datadir/%name/pxe-virtio.rom
 %dir %_sysconfdir/%name
 %config %_sysconfdir/%name/target-x86_64.conf
 
@@ -232,6 +341,33 @@
 %defattr(-, root, root)
 %endif
 
+%files seabios
+%defattr(-, root, root)
+%_datadir/%name/bios.bin
+%_datadir/%name/acpi-dsdt.aml
+%_datadir/%name/q35-acpi-dsdt.aml
+
+%files vgabios
+%defattr(-, root, root)
+%_datadir/%name/vgabios.bin
+%_datadir/%name/vgabios-cirrus.bin
+%_datadir/%name/vgabios-qxl.bin
+%_datadir/%name/vgabios-stdvga.bin
+%_datadir/%name/vgabios-vmware.bin
+
+%files sgabios
+%defattr(-, root, root)
+%_datadir/%name/sgabios.bin
+
+%files ipxe
+%defattr(-, root, root)
+%_datadir/%name/pxe-e1000.rom
+%_datadir/%name/pxe-eepro100.rom
+%_datadir/%name/pxe-pcnet.rom
+%_datadir/%name/pxe-ne2k_pci.rom
+%_datadir/%name/pxe-rtl8139.rom
+%_datadir/%name/pxe-virtio.rom
+
 %files tools
 %defattr(-, root, root)
 %doc %_mandir/man1/qemu-img.1.gz

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to