rpms/qemu/FC-5 qemu-0.8.2-mb-nops.diff, NONE, 1.1 .cvsignore, 1.5, 1.6 qemu.spec, 1.14, 1.15 sources, 1.5, 1.6 qemu-0.8.1-syscall-macros.patch, 1.2, NONE
Hans de Goede (jwrdegoede)
fedora-extras-commits at redhat.com
Tue Nov 14 18:23:41 UTC 2006
Author: jwrdegoede
Update of /cvs/extras/rpms/qemu/FC-5
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv31663
Modified Files:
.cvsignore qemu.spec sources
Added Files:
qemu-0.8.2-mb-nops.diff
Removed Files:
qemu-0.8.1-syscall-macros.patch
Log Message:
* Mon Nov 13 2006 Hans de Goede <j.w.r.degoede at hhs.nl> 0.8.2-4
- Backport patch to make FC6 guests work by Kevin Kofler
<Kevin at tigcc.ticalc.org> (bz 207843).
qemu-0.8.2-mb-nops.diff:
--- NEW FILE qemu-0.8.2-mb-nops.diff ---
===================================================================
RCS file: /sources/qemu/qemu/target-i386/translate.c,v
retrieving revision 1.59
retrieving revision 1.60
diff -u -r1.59 -r1.60
--- qemu/target-i386/translate.c 2006/07/10 19:53:04 1.59
+++ qemu/target-i386/translate.c 2006/09/03 17:09:02 1.60
@@ -1615,6 +1615,56 @@
*offset_ptr = disp;
}
+static void gen_nop_modrm(DisasContext *s, int modrm)
+{
+ int mod, rm, base, code;
+
+ mod = (modrm >> 6) & 3;
+ if (mod == 3)
+ return;
+ rm = modrm & 7;
+
+ if (s->aflag) {
+
+ base = rm;
+
+ if (base == 4) {
+ code = ldub_code(s->pc++);
+ base = (code & 7);
+ }
+
+ switch (mod) {
+ case 0:
+ if (base == 5) {
+ s->pc += 4;
+ }
+ break;
+ case 1:
+ s->pc++;
+ break;
+ default:
+ case 2:
+ s->pc += 4;
+ break;
+ }
+ } else {
+ switch (mod) {
+ case 0:
+ if (rm == 6) {
+ s->pc += 2;
+ }
+ break;
+ case 1:
+ s->pc++;
+ break;
+ default:
+ case 2:
+ s->pc += 2;
+ break;
+ }
+ }
+}
+
/* used for LEA and MOV AX, mem */
static void gen_add_A0_ds_seg(DisasContext *s)
{
@@ -5791,10 +5841,15 @@
gen_lea_modrm(s, modrm, ®_addr, &offset_addr);
/* nothing more to do */
break;
- default:
- goto illegal_op;
+ default: /* nop (multi byte) */
+ gen_nop_modrm(s, modrm);
+ break;
}
break;
+ case 0x119 ... 0x11f: /* nop (multi byte) */
+ modrm = ldub_code(s->pc++);
+ gen_nop_modrm(s, modrm);
+ break;
case 0x120: /* mov reg, crN */
case 0x122: /* mov crN, reg */
if (s->cpl != 0) {
Index: .cvsignore
===================================================================
RCS file: /cvs/extras/rpms/qemu/FC-5/.cvsignore,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- .cvsignore 8 Jun 2006 00:00:44 -0000 1.5
+++ .cvsignore 14 Nov 2006 18:23:11 -0000 1.6
@@ -1 +1 @@
-qemu-0.8.1.tar.gz
+qemu-0.8.2.tar.gz
Index: qemu.spec
===================================================================
RCS file: /cvs/extras/rpms/qemu/FC-5/qemu.spec,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- qemu.spec 8 Jun 2006 10:18:31 -0000 1.14
+++ qemu.spec 14 Nov 2006 18:23:11 -0000 1.15
@@ -1,63 +1,71 @@
+# For FC >= 6 we have gcc 3.4, for FC <= 5 we have gcc 3.2
+%if %{!?fedora:6}%{?fedora} >= 6
+%define gccver 34
+%else
+%define gccver 32
+%endif
+
Summary: QEMU is a FAST! processor emulator
Name: qemu
-Version: 0.8.1
-Release: 3%{?dist}
-
+Version: 0.8.2
+Release: 4%{?dist}
License: GPL/LGPL
Group: Development/Tools
-URL: http://fabrice.bellard.free.fr/qemu
+URL: http://www.qemu.org/
Source0: http://www.qemu.org/%{name}-%{version}.tar.gz
Source1: qemu.init
Patch0: qemu-0.7.0-build.patch
Patch1: qemu-0.8.0-sdata.patch
-Patch2: qemu-0.8.1-syscall-macros.patch
+Patch2: qemu-0.8.2-kernheaders.patch
+Patch3: qemu-0.8.2-target-sparc.patch
+Patch4: qemu-0.8.2-mb-nops.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-BuildRequires: SDL-devel compat-gcc-32 zlib-devel texi2html
-PreReq: /sbin/chkconfig
-PreReq: /sbin/service
-ExclusiveArch: %{ix86} ppc alpha sparc armv4l x86_64
+BuildRequires: SDL-devel compat-gcc-%{gccver} zlib-devel which texi2html
+Requires(post): /sbin/chkconfig
+Requires(preun): /sbin/service /sbin/chkconfig
+Requires(postun): /sbin/service
+ExclusiveArch: %{ix86} x86_64 ppc alpha sparc armv4l
%description
-By using dynamic translation it achieves a reasonable speed while being easy
-to port on new host CPUs. QEMU has two operating modes:
+QEMU is a generic and open source processor emulator which achieves a good
+emulation speed by using dynamic translation. QEMU has two operating modes:
+ * Full system emulation. In this mode, QEMU emulates a full system (for
+ example a PC), including a processor and various peripherials. It can be
+ used to launch different Operating Systems without rebooting the PC or
+ to debug system code.
* User mode emulation. In this mode, QEMU can launch Linux processes compiled
- for one CPU on another CPU. Linux system calls are converted because of
- endianness and 32/64 bit mismatches. Wine (Windows emulation) and DOSEMU
- (DOS emulation) are the main targets for QEMU.
- * Full system emulation. In this mode, QEMU emulates a full system, including
- a processor and various peripherals. Currently, it is only used to launch
- an x86 Linux kernel on an x86 Linux system. It enables easier testing and
- debugging of system code. It can also be used to provide virtual hosting
- of several virtual PC on a single server.
+ for one CPU on another CPU.
-As QEMU requires no host kernel patches to run, it is very safe and easy to use.
+As QEMU requires no host kernel patches to run, it is safe and easy to use.
%prep
%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1
+%patch3 -p1
+%patch4 -p1
%build
-./configure --prefix=%{_prefix} --interp-prefix=%{_prefix}/qemu-%%M \
-%ifarch x86_64
- --target-list="i386-user arm-user armeb-user ppc-user mips-user mipsel-user i386-softmmu ppc-softmmu x86_64-softmmu mips-softmmu arm-softmmu" \
-%endif
- --cc=gcc32 --enable-alsa
-make
+./configure \
+ --prefix=%{_prefix} \
+ --interp-prefix=%{_prefix}/qemu-%%M \
+ --cc=gcc%{gccver} \
+ --enable-alsa
+make %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
make prefix="${RPM_BUILD_ROOT}%{_prefix}" \
- bindir="${RPM_BUILD_ROOT}%{_bindir}" \
- sharedir="${RPM_BUILD_ROOT}%{_prefix}/share/qemu" \
- mandir="${RPM_BUILD_ROOT}%{_mandir}" \
- docdir="${RPM_BUILD_ROOT}%{_docdir}/%{name}-%{version}" \
- datadir="${RPM_BUILD_ROOT}%{_prefix}/share/qemu" install
+ bindir="${RPM_BUILD_ROOT}%{_bindir}" \
+ sharedir="${RPM_BUILD_ROOT}%{_prefix}/share/qemu" \
+ mandir="${RPM_BUILD_ROOT}%{_mandir}" \
+ docdir="${RPM_BUILD_ROOT}%{_docdir}/%{name}-%{version}" \
+ datadir="${RPM_BUILD_ROOT}%{_prefix}/share/qemu" install
-install -D $RPM_SOURCE_DIR/qemu.init $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/qemu
+install -D -p -m 0755 %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/qemu
%clean
rm -rf $RPM_BUILD_ROOT
@@ -66,22 +74,52 @@
/sbin/chkconfig --add qemu
%preun
-if [ $1 = 0 ]; then
- /sbin/service qemu stop > /dev/null 2>&1
+if [ $1 -eq 0 ]; then
+ /sbin/service qemu stop &>/dev/null || :
+ /sbin/chkconfig --del qemu
+fi
+
+%postun
+if [ $1 -ge 1 ]; then
+ /sbin/service qemu condrestart &>/dev/null || :
fi
-/sbin/chkconfig --del qemu
%files
%defattr(-,root,root)
%doc Changelog README README.distrib TODO
-%doc qemu-tech.texi qemu-doc.texi
-%doc *.html
-%{_bindir}/qemu*
-%{_prefix}/share/qemu
-%{_mandir}/man?/*
+%doc qemu-doc.html qemu-tech.html
%config %{_sysconfdir}/rc.d/init.d/qemu
+%{_bindir}/qemu*
+%{_prefix}/share/qemu/
+%{_mandir}/man1/*
%changelog
+* Mon Nov 13 2006 Hans de Goede <j.w.r.degoede at hhs.nl> 0.8.2-4
+- Backport patch to make FC6 guests work by Kevin Kofler
+ <Kevin at tigcc.ticalc.org> (bz 207843).
+
+* Mon Sep 11 2006 David Woodhouse <dwmw2 at infradead.org> 0.8.2-3
+- Rebuild
+
+* Thu Aug 24 2006 Matthias Saou <http://freshrpms.net/> 0.8.2-2
+- Remove the target-list iteration for x86_64 since they all build again.
+- Make gcc32 vs. gcc34 conditional on %%{fedora} to share the same spec for
+ FC5 and FC6.
+
+* Wed Aug 23 2006 Matthias Saou <http://freshrpms.net/> 0.8.2-1
+- Update to 0.8.2 (#200065).
+- Drop upstreamed syscall-macros patch2.
+- Put correct scriplet dependencies.
+- Force install mode for the init script to avoid umask problems.
+- Add %%postun condrestart for changes to the init script to be applied if any.
+- Update description with the latest "about" from the web page (more current).
+- Update URL to qemu.org one like the Source.
+- Add which build requirement.
+- Don't include texi files in %%doc since we ship them in html.
+- Switch to using gcc34 on devel, FC5 still has gcc32.
+- Add kernheaders patch to fix linux/compiler.h inclusion.
+- Add target-sparc patch to fix compiling on ppc (some int32 to float).
+
* Thu Jun 8 2006 David Woodhouse <dwmw2 at infradead.org> 0.8.1-3
- More header abuse in modify_ldt(), change BuildRoot:
Index: sources
===================================================================
RCS file: /cvs/extras/rpms/qemu/FC-5/sources,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- sources 8 Jun 2006 00:00:44 -0000 1.5
+++ sources 14 Nov 2006 18:23:11 -0000 1.6
@@ -1 +1 @@
-67d924324a5ab79d017bd97a1e767285 qemu-0.8.1.tar.gz
+5b3a89eb2f256a8a6f3bb07f7b3f1b07 qemu-0.8.2.tar.gz
--- qemu-0.8.1-syscall-macros.patch DELETED ---
More information about the scm-commits
mailing list