From 9b980edefbece0589ef22777ff178eb5f35cdc09 Mon Sep 17 00:00:00 2001 From: David Woodhouse Date: Sat, 30 Apr 2005 11:34:52 +0000 Subject: [PATCH] 0.7.0 --- .cvsignore | 2 +- ....6.1-build.patch => qemu-0.7.0-build.patch | 25 ++++++------------- qemu-0.7.0-ppc-functions-end-in-branch.patch | 18 +++++++++++++ qemu.spec | 16 ++++++++---- sources | 2 +- 5 files changed, 39 insertions(+), 24 deletions(-) rename qemu-0.6.1-build.patch => qemu-0.7.0-build.patch (59%) create mode 100644 qemu-0.7.0-ppc-functions-end-in-branch.patch diff --git a/.cvsignore b/.cvsignore index 995d912..0d7a480 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -qemu-0.6.1.tar.gz +qemu-0.7.0.tar.gz diff --git a/qemu-0.6.1-build.patch b/qemu-0.7.0-build.patch similarity index 59% rename from qemu-0.6.1-build.patch rename to qemu-0.7.0-build.patch index 9b130bc..97ea8dd 100644 --- a/qemu-0.6.1-build.patch +++ b/qemu-0.7.0-build.patch @@ -1,5 +1,5 @@ ---- qemu-0.6.1/Makefile.strip 2005-02-13 14:38:23.000000000 +0000 -+++ qemu-0.6.1/Makefile 2005-02-13 14:42:27.000000000 +0000 +--- qemu-0.7.0/Makefile.orig 2005-04-27 21:52:05.000000000 +0100 ++++ qemu-0.7.0/Makefile 2005-04-30 11:01:41.000000000 +0100 @@ -1,6 +1,6 @@ -include config-host.mak @@ -8,27 +8,18 @@ ifdef CONFIG_DARWIN CFLAGS+= -mdynamic-no-pic endif -@@ -45,7 +45,7 @@ - install: all - mkdir -p "$(bindir)" - ifndef CONFIG_WIN32 -- install -m 755 -s $(TOOLS) "$(bindir)" -+ install -m 755 $(TOOLS) "$(bindir)" - endif - mkdir -p "$(datadir)" - install -m 644 pc-bios/bios.bin pc-bios/vgabios.bin \ ---- qemu-0.6.1/Makefile.target.strip 2005-02-13 14:38:19.000000000 +0000 -+++ qemu-0.6.1/Makefile.target 2005-02-13 14:42:49.000000000 +0000 -@@ -7,7 +7,7 @@ +--- qemu-0.7.0/Makefile.target.orig 2005-04-27 21:52:05.000000000 +0100 ++++ qemu-0.7.0/Makefile.target 2005-04-30 11:03:59.000000000 +0100 +@@ -14,7 +14,7 @@ VPATH+=:$(SRC_PATH)/linux-user DEFINES+=-I$(SRC_PATH)/linux-user -I$(SRC_PATH)/linux-user/$(TARGET_ARCH) endif -CFLAGS=-Wall -O2 -g -fno-strict-aliasing +CFLAGS=$(RPM_OPT_FLAGS) -Wall -fno-strict-aliasing + #CFLAGS+=-Werror LDFLAGS=-g LIBS= - HELPER_CFLAGS=$(CFLAGS) -@@ -148,7 +148,7 @@ +@@ -177,7 +177,7 @@ ifeq ($(ARCH),alpha) # -msmall-data is not used because we want two-instruction relocations # for the constant constructions @@ -37,7 +28,7 @@ # Ensure there's only a single GP CFLAGS += -msmall-data LDFLAGS+=-Wl,-T,$(SRC_PATH)/alpha.ld -@@ -397,7 +397,7 @@ +@@ -463,7 +463,7 @@ install: all ifneq ($(PROGS),) diff --git a/qemu-0.7.0-ppc-functions-end-in-branch.patch b/qemu-0.7.0-ppc-functions-end-in-branch.patch new file mode 100644 index 0000000..1fa015b --- /dev/null +++ b/qemu-0.7.0-ppc-functions-end-in-branch.patch @@ -0,0 +1,18 @@ +--- qemu-0.7.0/dyngen.c.orig 2005-04-30 11:59:05.000000000 +0100 ++++ qemu-0.7.0/dyngen.c 2005-04-30 12:00:11.000000000 +0100 +@@ -1396,11 +1395,13 @@ void gen_code(const char *name, host_ulo + #elif defined(HOST_PPC) + { + uint8_t *p; ++ uint32_t insn; + p = (void *)(p_end - 4); + if (p == p_start) + error("empty code for %s", name); +- if (get32((uint32_t *)p) != 0x4e800020) +- error("blr expected at the end of %s", name); ++ insn = get32((uint32_t *)p); ++ if (insn != 0x4e800020 && (insn & 0xfc000002) != 0x48000000) ++ error("blr or b expected at the end of %s", name); + copy_size = p - p_start; + } + #elif defined(HOST_S390) diff --git a/qemu.spec b/qemu.spec index b1ca40d..7a92534 100644 --- a/qemu.spec +++ b/qemu.spec @@ -1,14 +1,15 @@ Summary: QEMU is a FAST! processor emulator Name: qemu -Version: 0.6.1 -Release: 3 +Version: 0.7.0 +Release: 1 License: GPL/LGPL Group: Development/Tools URL: http://fabrice.bellard.free.fr/qemu Source0: http://fabrice.bellard.free.fr/qemu/%{name}-%{version}.tar.gz Source1: qemu.init -Patch0: qemu-0.6.1-build.patch +Patch0: qemu-0.7.0-build.patch +Patch1: qemu-0.7.0-ppc-functions-end-in-branch.patch BuildRoot: %{_tmppath}/%{name}-%{version}-root BuildRequires: SDL-devel PreReq: /sbin/chkconfig @@ -24,7 +25,7 @@ to port on new host CPUs. QEMU has two operating modes: 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 peripherials. Currently, it is only used to launch + 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. @@ -34,6 +35,7 @@ As QEMU requires no host kernel patches to run, it is very safe and easy to use. %prep %setup -q %patch0 -p1 +%patch1 -p1 %build ./configure --prefix=%{_prefix} --interp-prefix=%{_prefix}/qemu-%%M @@ -67,13 +69,17 @@ fi %defattr(-,root,root) %doc Changelog README README.distrib TODO %doc qemu-tech.texi qemu-doc.texi -%doc linux-2.6-qemu-fast.patch *.html +%doc *.html %{_bindir}/qemu* %{_prefix}/share/qemu %{_mandir}/man?/* %config %{_sysconfdir}/rc.d/init.d/qemu %changelog +* Sat Apr 30 2005 David Woodhouse .0.7.0-1 +- Update to 0.7.0 +- Fix dyngen for PPC functions which end in unconditional branch + * Fri Apr 7 2005 Michael Schwendt - rebuilt diff --git a/sources b/sources index 9f6e50b..3de9160 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -f1b5e103321832d2786dd4110f6c8ae4 qemu-0.6.1.tar.gz +234e9ace03b00259bb57dc5a9c633056 qemu-0.7.0.tar.gz