Search
j0ke.net Open Build Service
>
Projects
>
J0KE.NET
:
infrastructure
>
qemu-svn
> Changes
Sign Up
|
Log In
Username
Password
Cancel
Overview
Repositories
Revisions
Requests
Users
Advanced
Attributes
Meta
Changes of Revision 32
[-]
[+]
Added
qemu-svn.spec
@@ -0,0 +1,202 @@ +# +# spec file for package qemu (Version 0.11svn +# +# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany. +# This file and all modifications and additions to the pristine +# package are under the same license as the package itself. +# +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Modified by Martin Mohring +# + +# norootforbuild + + +Name: qemu-svn +BuildRequires: SDL-devel bison e2fsprogs-devel libpcap-devel ncurses-devel gnutls-devel +%if 0%{?suse_version} +BuildRequires: build +BuildRequires: -post-build-checks +%endif +%if 0%{?suse_version} > 1110 +BuildRequires: zlib-devel-static +%endif +%if 0%{?fedora_version} || 0%{?rhel_version} || 0%{?centos_version} +BuildRequires: texi2html which +%endif +%if 0%{?fedora_version} > 8 +BuildRequires: zlib-static +%endif +%if 0%{?fedora_version} > 10 +BuildRequires: glibc-static +%endif +Obsoletes: qemu+gcc3 qemu-svn+gcc3 +Conflicts: qemu + +Url: http://fabrice.bellard.free.fr/qemu/ +License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later; X11/MIT +Group: System/Emulators/PC +Summary: Universal CPU emulator +Version: 0.11git2009.08.10.0340 +Release: 9 +Source: qemu-%version.tar.gz +# user mode handler extension +Patch10: qemu-0.9.0.cvs-binfmt.patch +# new hardware platforms tcg support for S390 mainframe +#Patch20: qemu-0.11-git-s390_configure.patch +#Patch21: qemu-0.11-git-s390_host_support.patch +#Patch22: qemu-0.11-git-s390_platform.patch +# new syscalls +Patch60: qemu-0.11-git-syscall_fadvise64.patch +#Patch61: qemu-0.11-git-user-linux-dup3_config.patch +#Patch62: qemu-0.11-git-user-linux-dup3_fallocate.patch +# bugs / fixes +Patch70: qemu-0.11-git-ioctl_mount.patch +Patch71: qemu-0.11-git-user-linux-fcntl_fixes_for_LTP.patch +Patch72: qemu-0.11-git-user-linux-getdents.patch +Patch73: qemu-0.11-git-user-linux-getpriority.patch +Patch74: qemu-0.11-git-user-linux-zero_nstat_buffer.patch +#Patch75: qemu-0.11-git-user-linux-uid16_fix.patch +Patch75: qemu-0.11-git-user-linux-ppc-uid16_fix.patch +Patch76: qemu-0.11-git-user-linux-mmap_find_vma.patch +#Patch77: qemu-0.11-git-user-missing_fcntl.patch +Patch78: qemu-0.11-git-user-linux-mount_args.patch +#Patch79: qemu-0.11-git-user-linux-g2h_and_h2g_fix.patch +# this is to make lint happy +Source200: kvm_bios.bin +# this is to make lint happy +Source300: rpmlintrc +BuildRoot: %{_tmppath}/%{name}-%{version}-build +ExclusiveArch: %ix86 ppc sparc x86_64 ia64 s390 ppc64 + +%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 <fabrice.bellard@free.fr> + +%prep +%setup -q -n qemu-%version +ln -s fpu/*.h . +%patch10 -p1 +#%patch20 -p1 +#%patch21 -p1 +#%patch22 -p1 +%patch60 -p1 +#%patch61 -p1 +#%patch62 -p1 +%patch70 -p1 +%patch71 -p1 +%patch72 -p1 +%patch73 -p1 +%patch74 -p1 +%patch75 -p1 +%patch76 -p1 +#%patch77 -p1 +%patch78 -p1 +#%patch79 -p1 + +%build +%if 0%{?suse_version} > 1020 +%ifarch %ix86 +QEMU_OPT_FLAGS="${RPM_OPT_FLAGS/-mcpu=/-mtune=}" +%endif +%else +QEMU_OPT_FLAGS="${RPM_OPT_FLAGS}" +%endif +QEMU_OPT_FLAGS="$QEMU_OPT_FLAGS -fno-strict-aliasing" + +# lists of TARGETS +# full list of qemu system mode targets +#SYS_TARGETS="i386-softmmu x86_64-softmmu arm-softmmu cris-softmmu m68k-softmmu microblaze-softmmu mips-softmmu mipsel-softmmu mips64-softmmu mips64el-softmmu ppc-softmmu ppcemb-softmmu ppc64-softmmu sh4-softmmu sh4eb-softmmu sparc-softmmu" +# add --target-list="$SYS_TARGETS" in case of faster compile time +# full list of qemu user mode targets +#USER_TARGETS="i386-linux-user x86_64-linux-user alpha-linux-user arm-linux-user armeb-linux-user cris-linux-user m68k-linux-user microblaze-linux-user mips-linux-user mipsel-linux-user ppc-linux-user ppc64-linux-user ppc64abi32-linux-user sh4-linux-user sh4eb-linux-user sparc-linux-user sparc64-linux-user sparc32plus-linux-user" + +# due to ppc nptl patch, ppc 64bit targets are currently not working, switch then off +#USER_TARGETS="i386-linux-user x86_64-linux-user alpha-linux-user arm-linux-user armeb-linux-user cris-linux-user m68k-linux-user microblaze-linux-user mips-linux-user mipsel-linux-user ppc-linux-user sh4-linux-user sh4eb-linux-user sparc-linux-user sparc64-linux-user sparc32plus-linux-user" +#SYS_TARGETS="i386-softmmu x86_64-softmmu arm-softmmu cris-softmmu m68k-softmmu microblaze-softmmu mips-softmmu mipsel-softmmu mips64-softmmu mips64el-softmmu ppc-softmmu ppcemb-softmmu sh4-softmmu sh4eb-softmmu sparc-softmmu" + +# shortest list variant +USER_TARGETS="ppc-linux-user arm-linux-user armeb-linux-user i386-linux-user x86_64-linux-user" +SYS_TARGETS="i386-softmmu x86_64-softmmu arm-softmmu" +%if 0 +%define jobs 2 +%endif + +# build QEMU +mkdir -p dynamic +# build qemu-system without kqemu support + +./configure --prefix=/usr \ + --interp-prefix=/usr/share/qemu/qemu-i386 \ + --enable-system --disable-linux-user \ +%if 0 + --target-list="$SYS_TARGETS" \ +%endif + --disable-werror --extra-cflags="$QEMU_OPT_FLAGS" +make %{?jobs:-j%{jobs}} +mv */qemu */qemu-* dynamic || true +make clean + +# build userland emus + +./configure --prefix=/usr \ + --interp-prefix=/usr/share/qemu/qemu-i386 \ + --disable-system --enable-linux-user \ +%if 0 + --target-list="$USER_TARGETS" \ +%endif + --static --enable-guest-base \ + --disable-werror --extra-cflags="$QEMU_OPT_FLAGS" +make %{?jobs:-j%{jobs}} +make qemu-img +make qemu-nbd + +%install +install -d -m 755 $RPM_BUILD_ROOT/usr/bin +%ifnarch alpha +install -m 755 */qemu $RPM_BUILD_ROOT/usr/bin +ln -sf qemu $RPM_BUILD_ROOT/usr/bin/qemu-system-i386 +%endif +install -m 755 */qemu-*[^.]? $RPM_BUILD_ROOT/usr/bin +install -d -m 755 $RPM_BUILD_ROOT/%{_mandir}/man1 +install -m 644 qemu.1 $RPM_BUILD_ROOT/%{_mandir}/man1 +install -d -m 755 $RPM_BUILD_ROOT/usr/share/qemu +install -m 644 pc-bios/*.bin pc-bios/video.x pc-bios/openbios-sparc* $RPM_BUILD_ROOT/usr/share/qemu +install -d -m 755 $RPM_BUILD_ROOT/usr/sbin +install -m 755 qemu-binfmt-conf.sh $RPM_BUILD_ROOT/usr/sbin +install -m 755 qemu-img $RPM_BUILD_ROOT/usr/bin +install -m 755 qemu-nbd $RPM_BUILD_ROOT/usr/bin +install -d -m 755 $RPM_BUILD_ROOT/usr/share/qemu/keymaps +install -m 644 pc-bios/keymaps/[a-z]* $RPM_BUILD_ROOT/usr/share/qemu/keymaps +%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 +%ifnarch alpha +/usr/bin/qemu +%endif +/usr/bin/qemu-* +/usr/sbin/qemu* +%{_mandir}/man1/qemu*.1.gz +/usr/share/qemu