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.6.1-build.patch deleted file mode 100644 index 9b130bc..0000000 --- a/qemu-0.6.1-build.patch +++ /dev/null @@ -1,48 +0,0 @@ ---- 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 -@@ -1,6 +1,6 @@ - -include config-host.mak - --CFLAGS=-Wall -O2 -g -fno-strict-aliasing -+CFLAGS=$(RPM_OPT_FLAGS) -Wall -fno-strict-aliasing - 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 @@ - 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 - LDFLAGS=-g - LIBS= - HELPER_CFLAGS=$(CFLAGS) -@@ -148,7 +148,7 @@ - ifeq ($(ARCH),alpha) - # -msmall-data is not used because we want two-instruction relocations - # for the constant constructions --OP_CFLAGS=-Wall -O2 -g -+OP_CFLAGS=$(RPM_OPT_FLAGS) -Wall - # Ensure there's only a single GP - CFLAGS += -msmall-data - LDFLAGS+=-Wl,-T,$(SRC_PATH)/alpha.ld -@@ -397,7 +397,7 @@ - - install: all - ifneq ($(PROGS),) -- install -m 755 -s $(PROGS) "$(bindir)" -+ install -m 755 $(PROGS) "$(bindir)" - endif - - ifneq ($(wildcard .depend),) diff --git a/qemu-0.7.0-build.patch b/qemu-0.7.0-build.patch new file mode 100644 index 0000000..97ea8dd --- /dev/null +++ b/qemu-0.7.0-build.patch @@ -0,0 +1,39 @@ +--- 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 + +-CFLAGS=-Wall -O2 -g -fno-strict-aliasing ++CFLAGS=$(RPM_OPT_FLAGS) -Wall -fno-strict-aliasing + ifdef CONFIG_DARWIN + CFLAGS+= -mdynamic-no-pic + endif +--- 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= +@@ -177,7 +177,7 @@ + ifeq ($(ARCH),alpha) + # -msmall-data is not used because we want two-instruction relocations + # for the constant constructions +-OP_CFLAGS=-Wall -O2 -g ++OP_CFLAGS=$(RPM_OPT_FLAGS) -Wall + # Ensure there's only a single GP + CFLAGS += -msmall-data + LDFLAGS+=-Wl,-T,$(SRC_PATH)/alpha.ld +@@ -463,7 +463,7 @@ + + install: all + ifneq ($(PROGS),) +- install -m 755 -s $(PROGS) "$(bindir)" ++ install -m 755 $(PROGS) "$(bindir)" + endif + + ifneq ($(wildcard .depend),) 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