From 3ad8d568d87296a27aa74b6f113d5512b4d0671d9a7d2f029eeeaca1d23ce264 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Mon, 24 Feb 2014 17:02:42 +0000 Subject: [PATCH] Accepting request 223321 from home:a_faerber:branches:Virtualization Split out executables and firmware files into architecture-specific sub-packages qemu-x86, qemu-s390, qemu-ppc, qemu-arm and qemu-extra. OBS-URL: https://build.opensuse.org/request/show/223321 OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=187 --- qemu.changes | 6 ++ qemu.spec | 167 ++++++++++++++++++++++++++++++++++++++++++++++++--- qemu.spec.in | 167 ++++++++++++++++++++++++++++++++++++++++++++++++--- 3 files changed, 322 insertions(+), 18 deletions(-) diff --git a/qemu.changes b/qemu.changes index 68dd035..4e09805 100644 --- a/qemu.changes +++ b/qemu.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Thu Feb 20 16:51:37 UTC 2014 - afaerber@suse.de + +- Split out KVM architectures to per-architecture subpackages +- Suggest qemu-lang package + ------------------------------------------------------------------- Tue Feb 18 16:06:00 UTC 2014 - brogers@suse.com diff --git a/qemu.spec b/qemu.spec index 978c763..1aa1688 100644 --- a/qemu.spec +++ b/qemu.spec @@ -171,12 +171,28 @@ BuildRequires: udev %endif Requires: /usr/sbin/groupadd Requires: pwdutils -Requires: qemu-ipxe -Requires: qemu-seabios -Requires: qemu-sgabios -Requires: qemu-vgabios Requires: timezone Recommends: qemu-tools +Recommends: qemu-x86 +%ifarch ppc ppc64 ppc64le +Recommends: qemu-ppc +%else +Suggests: qemu-ppc +%endif +%ifarch s390x +Recommends: qemu-s390 +%else +Suggests: qemu-s390 +%endif +%ifarch %arm aarch64 +Recommends: qemu-arm +%else +Suggests: qemu-arm +%endif +Suggests: qemu-extra +%if 0%{?suse_version} >= 1210 +Suggests: qemu-lang +%endif %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} @@ -187,15 +203,91 @@ binaries for different architectures under your native operating system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well as PC and PowerMac systems. +%package x86 +Summary: Universal CPU emulator -- x86 +Group: System/Emulators/PC +Requires: qemu = %version +Requires: qemu-ipxe +Requires: qemu-seabios +Requires: qemu-sgabios +Requires: qemu-vgabios + +%description x86 +QEMU is an extremely well-performing CPU emulator that allows you to +choose between simulating an entire system and running userspace +binaries for different architectures under your native operating +system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well +as PC and PowerMac systems. + +This sub-package provides i386 and x86_64 emulation. + +%package ppc +Summary: Universal CPU emulator -- Power Architecture +Group: System/Emulators/PC +Requires: qemu = %version + +%description ppc +QEMU is an extremely well-performing CPU emulator that allows you to +choose between simulating an entire system and running userspace +binaries for different architectures under your native operating +system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well +as PC and PowerMac systems. + +This sub-package provides ppc and ppc64 emulation. + +%package s390 +Summary: Universal CPU emulator -- S/390 +Group: System/Emulators/PC +Requires: qemu = %version + +%description s390 +QEMU is an extremely well-performing CPU emulator that allows you to +choose between simulating an entire system and running userspace +binaries for different architectures under your native operating +system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well +as PC and PowerMac systems. + +This sub-package provides s390x emulation. + +%package arm +Summary: Universal CPU emulator -- ARM +Group: System/Emulators/PC +Requires: qemu = %version + +%description arm +QEMU is an extremely well-performing CPU emulator that allows you to +choose between simulating an entire system and running userspace +binaries for different architectures under your native operating +system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well +as PC and PowerMac systems. + +This sub-package provides arm emulation. + +%package extra +Summary: Universal CPU emulator -- extra architectures +Group: System/Emulators/PC +Requires: qemu = %version + +%description extra +QEMU is an extremely well-performing CPU emulator that allows you to +choose between simulating an entire system and running userspace +binaries for different architectures under your native operating +system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well +as PC and PowerMac systems. + +This sub-package provides some lesser used emulations, such as moxie and xtensa. + %ifarch %ix86 x86_64 s390x %package kvm Url: http://www.linux-kvm.org Summary: Kernel-based Virtual Machine Group: System/Emulators/PC -Version: 1.7.0 -Release: 0 -BuildArch: noarch -Requires: qemu = %version +%ifarch %ix86 x86_64 +Requires: qemu-x86 = %version +%endif +%ifarch s390x +Requires: qemu-s390 = %version +%endif Provides: kvm = %version Obsoletes: kvm < %version Recommends: python-curses @@ -483,7 +575,6 @@ fi %files %defattr(-, root, root) %doc COPYING COPYING.LIB Changelog README VERSION qemu-doc.html qemu-tech.html -%_bindir/qemu-system-* %doc %_mandir/man1/qemu.1.gz %_datadir/%name %exclude %_datadir/%name/bios.bin @@ -501,6 +592,21 @@ fi %exclude %_datadir/%name/pxe-ne2k_pci.rom %exclude %_datadir/%name/pxe-rtl8139.rom %exclude %_datadir/%name/pxe-virtio.rom +%exclude %_datadir/%name/kvmvapic.bin +%exclude %_datadir/%name/linuxboot.bin +%exclude %_datadir/%name/multiboot.bin +%exclude %_datadir/%name/ppc_rom.bin +%exclude %_datadir/%name/openbios-ppc +%exclude %_datadir/%name/slof.bin +%exclude %_datadir/%name/spapr-rtas.bin +%exclude %_datadir/%name/bamboo.dtb +%exclude %_datadir/%name/petalogix-ml605.dtb +%exclude %_datadir/%name/s390-zipl.rom +%exclude %_datadir/%name/s390-ccw.img +%exclude %_datadir/%name/palcode-clipper +%exclude %_datadir/%name/openbios-sparc32 +%exclude %_datadir/%name/openbios-sparc64 +%exclude %_datadir/%name/petalogix-s3adsp1800.dtb %exclude %_datadir/%name/qemu-ifup %dir %_sysconfdir/%name %config %_sysconfdir/%name/target-x86_64.conf @@ -512,6 +618,49 @@ fi %endif %endif +%files x86 +%defattr(-, root, root) +%_bindir/qemu-system-i386 +%_bindir/qemu-system-x86_64 +%_datadir/%name/kvmvapic.bin +%_datadir/%name/linuxboot.bin +%_datadir/%name/multiboot.bin + +%files ppc +%defattr(-, root, root) +%_bindir/qemu-system-ppc +%_bindir/qemu-system-ppc64 +%_datadir/%name/ppc_rom.bin +%_datadir/%name/openbios-ppc +%_datadir/%name/slof.bin +%_datadir/%name/spapr-rtas.bin +%_datadir/%name/bamboo.dtb +%_datadir/%name/petalogix-ml605.dtb + +%files s390 +%defattr(-, root, root) +%_bindir/qemu-system-s390x +%_datadir/%name/s390-zipl.rom +%_datadir/%name/s390-ccw.img + +%files arm +%defattr(-, root, root) +%_bindir/qemu-system-arm + +%files extra +%defattr(-, root, root) +%_bindir/qemu-system-* +%exclude %_bindir/qemu-system-i386 +%exclude %_bindir/qemu-system-x86_64 +%exclude %_bindir/qemu-system-ppc +%exclude %_bindir/qemu-system-ppc64 +%exclude %_bindir/qemu-system-s390x +%exclude %_bindir/qemu-system-arm +%_datadir/%name/palcode-clipper +%_datadir/%name/openbios-sparc32 +%_datadir/%name/openbios-sparc64 +%_datadir/%name/petalogix-s3adsp1800.dtb + %ifarch %ix86 x86_64 s390x %files kvm %defattr(-,root,root) diff --git a/qemu.spec.in b/qemu.spec.in index f93cc4c..969d7ab 100644 --- a/qemu.spec.in +++ b/qemu.spec.in @@ -130,12 +130,28 @@ BuildRequires: udev %endif Requires: /usr/sbin/groupadd Requires: pwdutils -Requires: qemu-ipxe -Requires: qemu-seabios -Requires: qemu-sgabios -Requires: qemu-vgabios Requires: timezone Recommends: qemu-tools +Recommends: qemu-x86 +%ifarch ppc ppc64 ppc64le +Recommends: qemu-ppc +%else +Suggests: qemu-ppc +%endif +%ifarch s390x +Recommends: qemu-s390 +%else +Suggests: qemu-s390 +%endif +%ifarch %arm aarch64 +Recommends: qemu-arm +%else +Suggests: qemu-arm +%endif +Suggests: qemu-extra +%if 0%{?suse_version} >= 1210 +Suggests: qemu-lang +%endif %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} @@ -146,15 +162,91 @@ binaries for different architectures under your native operating system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well as PC and PowerMac systems. +%package x86 +Summary: Universal CPU emulator -- x86 +Group: System/Emulators/PC +Requires: qemu = %version +Requires: qemu-ipxe +Requires: qemu-seabios +Requires: qemu-sgabios +Requires: qemu-vgabios + +%description x86 +QEMU is an extremely well-performing CPU emulator that allows you to +choose between simulating an entire system and running userspace +binaries for different architectures under your native operating +system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well +as PC and PowerMac systems. + +This sub-package provides i386 and x86_64 emulation. + +%package ppc +Summary: Universal CPU emulator -- Power Architecture +Group: System/Emulators/PC +Requires: qemu = %version + +%description ppc +QEMU is an extremely well-performing CPU emulator that allows you to +choose between simulating an entire system and running userspace +binaries for different architectures under your native operating +system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well +as PC and PowerMac systems. + +This sub-package provides ppc and ppc64 emulation. + +%package s390 +Summary: Universal CPU emulator -- S/390 +Group: System/Emulators/PC +Requires: qemu = %version + +%description s390 +QEMU is an extremely well-performing CPU emulator that allows you to +choose between simulating an entire system and running userspace +binaries for different architectures under your native operating +system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well +as PC and PowerMac systems. + +This sub-package provides s390x emulation. + +%package arm +Summary: Universal CPU emulator -- ARM +Group: System/Emulators/PC +Requires: qemu = %version + +%description arm +QEMU is an extremely well-performing CPU emulator that allows you to +choose between simulating an entire system and running userspace +binaries for different architectures under your native operating +system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well +as PC and PowerMac systems. + +This sub-package provides arm emulation. + +%package extra +Summary: Universal CPU emulator -- extra architectures +Group: System/Emulators/PC +Requires: qemu = %version + +%description extra +QEMU is an extremely well-performing CPU emulator that allows you to +choose between simulating an entire system and running userspace +binaries for different architectures under your native operating +system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well +as PC and PowerMac systems. + +This sub-package provides some lesser used emulations, such as moxie and xtensa. + %ifarch %ix86 x86_64 s390x %package kvm Url: http://www.linux-kvm.org Summary: Kernel-based Virtual Machine Group: System/Emulators/PC -Version: 1.7.0 -Release: 0 -BuildArch: noarch -Requires: qemu = %version +%ifarch %ix86 x86_64 +Requires: qemu-x86 = %version +%endif +%ifarch s390x +Requires: qemu-s390 = %version +%endif Provides: kvm = %version Obsoletes: kvm < %version Recommends: python-curses @@ -401,7 +493,6 @@ fi %files %defattr(-, root, root) %doc COPYING COPYING.LIB Changelog README VERSION qemu-doc.html qemu-tech.html -%_bindir/qemu-system-* %doc %_mandir/man1/qemu.1.gz %_datadir/%name %exclude %_datadir/%name/bios.bin @@ -419,6 +510,21 @@ fi %exclude %_datadir/%name/pxe-ne2k_pci.rom %exclude %_datadir/%name/pxe-rtl8139.rom %exclude %_datadir/%name/pxe-virtio.rom +%exclude %_datadir/%name/kvmvapic.bin +%exclude %_datadir/%name/linuxboot.bin +%exclude %_datadir/%name/multiboot.bin +%exclude %_datadir/%name/ppc_rom.bin +%exclude %_datadir/%name/openbios-ppc +%exclude %_datadir/%name/slof.bin +%exclude %_datadir/%name/spapr-rtas.bin +%exclude %_datadir/%name/bamboo.dtb +%exclude %_datadir/%name/petalogix-ml605.dtb +%exclude %_datadir/%name/s390-zipl.rom +%exclude %_datadir/%name/s390-ccw.img +%exclude %_datadir/%name/palcode-clipper +%exclude %_datadir/%name/openbios-sparc32 +%exclude %_datadir/%name/openbios-sparc64 +%exclude %_datadir/%name/petalogix-s3adsp1800.dtb %exclude %_datadir/%name/qemu-ifup %dir %_sysconfdir/%name %config %_sysconfdir/%name/target-x86_64.conf @@ -430,6 +536,49 @@ fi %endif %endif +%files x86 +%defattr(-, root, root) +%_bindir/qemu-system-i386 +%_bindir/qemu-system-x86_64 +%_datadir/%name/kvmvapic.bin +%_datadir/%name/linuxboot.bin +%_datadir/%name/multiboot.bin + +%files ppc +%defattr(-, root, root) +%_bindir/qemu-system-ppc +%_bindir/qemu-system-ppc64 +%_datadir/%name/ppc_rom.bin +%_datadir/%name/openbios-ppc +%_datadir/%name/slof.bin +%_datadir/%name/spapr-rtas.bin +%_datadir/%name/bamboo.dtb +%_datadir/%name/petalogix-ml605.dtb + +%files s390 +%defattr(-, root, root) +%_bindir/qemu-system-s390x +%_datadir/%name/s390-zipl.rom +%_datadir/%name/s390-ccw.img + +%files arm +%defattr(-, root, root) +%_bindir/qemu-system-arm + +%files extra +%defattr(-, root, root) +%_bindir/qemu-system-* +%exclude %_bindir/qemu-system-i386 +%exclude %_bindir/qemu-system-x86_64 +%exclude %_bindir/qemu-system-ppc +%exclude %_bindir/qemu-system-ppc64 +%exclude %_bindir/qemu-system-s390x +%exclude %_bindir/qemu-system-arm +%_datadir/%name/palcode-clipper +%_datadir/%name/openbios-sparc32 +%_datadir/%name/openbios-sparc64 +%_datadir/%name/petalogix-s3adsp1800.dtb + %ifarch %ix86 x86_64 s390x %files kvm %defattr(-,root,root)