# # spec file for package qemu (Version 0.11.0) # # Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # # norootforbuild Name: qemu BuildRequires: SDL-devel bison bluez-devel curl-devel cyrus-sasl-devel e2fsprogs-devel libaio-devel libgnutls-devel libpcap-devel ncurses-devel zlib-devel-static Url: http://fabrice.bellard.free.fr/qemu/ License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ ; MIT License (or similar) Group: System/Emulators/PC Summary: Universal CPU emulator Version: 0.11.0 Release: 5 Source: %name-0.11.0.tar.bz2 Patch1: 0001-qemu-0.7.0-amd64.patch Patch2: 0002-qemu-0.9.0.cvs-binfmt.patch Patch3: 0003-qemu-cvs-alsa_bitfield.patch Patch4: 0004-qemu-cvs-alsa_ioctl.patch Patch5: 0005-qemu-cvs-alsa_mmap.patch Patch6: 0006-qemu-cvs-gettimeofday.patch Patch7: 0007-qemu-cvs-ioctl_debug.patch Patch8: 0008-qemu-cvs-ioctl_nodirection.patch Patch9: 0009-qemu-cvs-newpath.patch Patch10: 0010-qemu-cvs-sched_getaffinity.patch Patch11: 0011-qemu-cvs-mmap-amd64.patch Patch12: 0012-qemu-cvs-pthread.patch Patch13: 0013-qemu-img-vmdk-scsi.patch Patch14: 0014-qemu-nonvoid_return.patch Patch15: 0015-pcap-network-emulation.patch Patch16: 0016-i386-linux-user-NPTL-support.patch Patch17: 0017-qemu-0.11-git-ioctl_mount.patch Patch18: 0018-qemu-0.11-git-user-linux-ppc-uid16_fix.patch Patch19: 0019-Rewrite-mmap_find_vma-to-work-fine-on-64-bit-hosts.patch Patch20: 0020-TCG-sync-op-32-bit-targets-fixed.patch Patch21: 0021-S-390-CPU-emulation.patch Patch22: 0022-S-390-host-target-build-system-support.patch Patch23: 0023-S-390-host-support-for-TCG.patch Patch24: 0024-linux-user-S-390-64-bit-s390x-support.patch Patch25: 0025-linux-user-don-t-do-locking-in-single-threaded-proc.patch Patch26: 0026-linux-user-dup3-fallocate-syscalls.patch Patch27: 0027-linux-user-fcntl-fixes-for-LTP.patch Patch28: 0028-linux-user-enable-getdents-for-32-bit-systems.patch Patch29: 0029-linux-user-define-a-couple-of-syscalls-for-non-uid1.patch Patch30: 0030-linux-user-getpriority-errno-fix.patch Patch31: 0031-linux-user-fadvise64-implementation.patch Patch32: 0032-linux-user-zero-fstat-buffer-to-initialize-nsec-fie.patch Patch33: 0033-dup3-check-fallocate-check-fixed.patch # this is to make lint happy Source300: rpmlintrc BuildRoot: %{_tmppath}/%{name}-%{version}-build ExclusiveArch: %ix86 ppc sparc %arm x86_64 s390x Requires: timezone %description 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. Authors: -------- Fabrice Bellard %prep %setup -q -n qemu-0.11.0 %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 %patch7 -p1 %patch8 -p1 %patch9 -p1 %patch10 -p1 %patch11 -p1 %patch12 -p1 %patch13 -p1 %patch14 -p1 %patch15 -p1 %patch16 -p1 %patch17 -p1 %patch18 -p1 %patch19 -p1 %patch20 -p1 %patch21 -p1 %ifarch s390x ppc64 x86_64 # s390 target only builds on 64-bit machines %patch22 -p1 %endif %patch23 -p1 %patch24 -p1 %patch25 -p1 %patch26 -p1 %patch27 -p1 %patch28 -p1 %patch29 -p1 %patch30 -p1 %patch31 -p1 %patch32 -p1 %patch33 -p1 %build # build QEMU mkdir -p dynamic # build qemu-system ./configure --prefix=/usr \ --interp-prefix=/usr/share/qemu/qemu-i386 \ --audio-card-list="ac97 es1370 sb16 cs4231a adlib gus" \ --audio-drv-list="alsa sdl" --enable-mixemu \ --extra-cflags="$QEMU_OPT_FLAGS" --enable-system --disable-linux-user \ %ifarch ppc --disable-kvm %endif # curl test fails for no reason in build system echo "CONFIG_CURL=y" >> config-host.mak echo "CURL_LIBS=-lcurl" >> config-host.mak echo "#define CONFIG_CURL 1" >> config-host.h make %{?jobs:-j%{jobs}} V=1 make qemu-img V=1 mv */qemu */qemu-* qemu-img qemu-nbd qemu-io dynamic || true make clean # build userland emus ./configure --prefix=/usr \ --interp-prefix=/usr/share/qemu/qemu-i386 \ --enable-linux-user \ --disable-system \ --static \ --extra-cflags="$QEMU_OPT_FLAGS" make %{?jobs:-j%{jobs}} V=1 %install make install DESTDIR=$RPM_BUILD_ROOT rm -fr $RPM_BUILD_ROOT/usr/share/doc install -m 755 */qemu $RPM_BUILD_ROOT/usr/bin ln -sf qemu $RPM_BUILD_ROOT/usr/bin/qemu-system-i386 install -m 755 */qemu-*[^.]? $RPM_BUILD_ROOT/usr/bin install -d -m 755 $RPM_BUILD_ROOT/usr/sbin install -m 755 qemu-binfmt-conf.sh $RPM_BUILD_ROOT/usr/sbin %ifnarch %ix86 x86_64 ln -sf ../../../emul/ia32-linux $RPM_BUILD_ROOT/usr/share/qemu/qemu-i386 %endif %ifnarch ia64 mkdir -p $RPM_BUILD_ROOT/emul/ia32-linux %endif %clean rm -rf ${RPM_BUILD_ROOT} %files %defattr(-, root, root) %doc COPYING COPYING.LIB Changelog README TODO VERSION qemu-doc.html qemu-tech.html /usr/bin/qemu /usr/bin/qemu-* /usr/sbin/qemu* %doc %{_mandir}/man[18]/qemu*.[18].gz /usr/share/qemu %ifnarch %ix86 x86_64 ia64 %dir /emul/ia32-linux %endif %changelog