From b7a6f73e82644646eb8dcdb3f79542823711adcd Mon Sep 17 00:00:00 2001 From: xtraeme Date: Mon, 21 May 2007 20:24:44 +0000 Subject: Update to 0.9.0. Thanks to Michael Van Elst for sending me the missing patch to let this build on systems without POSIX AIO. version 0.9.0: - Support for relative paths in backing files for disk images - Async file I/O API - New qcow2 disk image format - Support of multiple VM snapshots - Linux: specific host CDROM and floppy support - SMM support - Moved PCI init, MP table init and ACPI table init to Bochs BIOS - Support for MIPS32 Release 2 instruction set (Thiemo Seufer) - MIPS Malta system emulation (Aurelien Jarno, Stefan Weil) - Darwin userspace emulation (Pierre d'Herbemont) - m68k user support (Paul Brook) - several x86 and x86_64 emulation fixes - Mouse relative offset VNC extension (Anthony Liguori) - PXE boot support (Anthony Liguori) - '-daemonize' option (Anthony Liguori) --- emulators/qemu/Makefile | 6 +-- emulators/qemu/PLIST | 5 +- emulators/qemu/distinfo | 25 +++------- emulators/qemu/patches/patch-ab | 20 -------- emulators/qemu/patches/patch-ac | 42 ++++------------ emulators/qemu/patches/patch-af | 40 --------------- emulators/qemu/patches/patch-ah | 20 -------- emulators/qemu/patches/patch-ai | 20 -------- emulators/qemu/patches/patch-aj | 51 ------------------- emulators/qemu/patches/patch-ak | 30 ++---------- emulators/qemu/patches/patch-al | 33 ------------- emulators/qemu/patches/patch-ap | 18 ------- emulators/qemu/patches/patch-as | 14 ------ emulators/qemu/patches/patch-at | 17 ------- emulators/qemu/patches/patch-au | 20 +++++--- emulators/qemu/patches/patch-ay | 105 ++++++++++++++++++++++++++++++++++------ 16 files changed, 134 insertions(+), 332 deletions(-) delete mode 100644 emulators/qemu/patches/patch-ab delete mode 100644 emulators/qemu/patches/patch-af delete mode 100644 emulators/qemu/patches/patch-ah delete mode 100644 emulators/qemu/patches/patch-ai delete mode 100644 emulators/qemu/patches/patch-aj delete mode 100644 emulators/qemu/patches/patch-al delete mode 100644 emulators/qemu/patches/patch-ap delete mode 100644 emulators/qemu/patches/patch-as delete mode 100644 emulators/qemu/patches/patch-at diff --git a/emulators/qemu/Makefile b/emulators/qemu/Makefile index c364b13fa3b..d2a218ca703 100644 --- a/emulators/qemu/Makefile +++ b/emulators/qemu/Makefile @@ -1,8 +1,8 @@ -# $NetBSD: Makefile,v 1.44 2007/02/22 19:26:27 wiz Exp $ +# $NetBSD: Makefile,v 1.45 2007/05/21 20:24:44 xtraeme Exp $ # -DISTNAME= qemu-0.8.2 -PKGREVISION= 2 +DISTNAME= qemu-0.9.0 +#PKGREVISION= 1 CATEGORIES= emulators MASTER_SITES= http://fabrice.bellard.free.fr/qemu/ diff --git a/emulators/qemu/PLIST b/emulators/qemu/PLIST index 85386143343..d7b0c4eac6a 100644 --- a/emulators/qemu/PLIST +++ b/emulators/qemu/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.14 2006/09/17 07:51:56 xtraeme Exp $ +@comment $NetBSD: PLIST,v 1.15 2007/05/21 20:24:44 xtraeme Exp $ bin/qemu bin/qemu-img bin/qemu-system-arm @@ -54,6 +54,9 @@ share/qemu/ppc_rom.bin share/qemu/vgabios-cirrus.bin share/qemu/vgabios.bin share/qemu/video.x +share/qemu/pxe-ne2k_pci.bin +share/qemu/pxe-pcnet.bin +share/qemu/pxe-rtl8139.bin @dirrm share/qemu/keymaps @dirrm share/qemu @dirrm share/doc/qemu diff --git a/emulators/qemu/distinfo b/emulators/qemu/distinfo index b7476d7d603..a10036d3be5 100644 --- a/emulators/qemu/distinfo +++ b/emulators/qemu/distinfo @@ -1,24 +1,15 @@ -$NetBSD: distinfo,v 1.31 2007/01/06 21:21:35 xtraeme Exp $ +$NetBSD: distinfo,v 1.32 2007/05/21 20:24:44 xtraeme Exp $ -SHA1 (qemu-0.8.2.tar.gz) = d775239a545e7d0c5b677660a2122df590afde6d -RMD160 (qemu-0.8.2.tar.gz) = 715c24997330352aa675cd7279731cec251f833a -Size (qemu-0.8.2.tar.gz) = 1810909 bytes +SHA1 (qemu-0.9.0.tar.gz) = 1e57e48a06eb8729913d92601000466eecef06cb +RMD160 (qemu-0.9.0.tar.gz) = 4296542b6da18a6ac93d20787330d3c1c2ac0a19 +Size (qemu-0.9.0.tar.gz) = 1901741 bytes SHA1 (patch-aa) = 455575215bad8864da285e1979da9ff7d8476a24 -SHA1 (patch-ab) = 12838d78eed85c575214f4ce632a4b6694c6f97f -SHA1 (patch-ac) = f1231bcfde687ebe7a7ea4898593cd3818f03142 -SHA1 (patch-af) = c139e919da430c0118dc774587e1e6dd718d7926 +SHA1 (patch-ac) = dd1325e19bee1fb1ff1f08e0248d0972706802ac SHA1 (patch-ag) = 91f10c4556a45ca3ec19efe67dcaa6625902c120 -SHA1 (patch-ah) = 134f47583dbed94e83671ca6197106805b13f759 -SHA1 (patch-ai) = 480cc80a451488a1376f99ed152a917116759cbf -SHA1 (patch-aj) = 4972ee341782419114972b91fb6354ee9881b60f -SHA1 (patch-ak) = 4715a464554469e8dac9cde93db83a90885b8a7e -SHA1 (patch-al) = d61bce6a4cebae4ba1f87ce9def277c0ffc5843d +SHA1 (patch-ak) = d57f616987260a700f038a633708a27b68d2bbe2 SHA1 (patch-am) = a22a3b23284c377afa8113768d68c8ef40c514f9 SHA1 (patch-ao) = e92d56f991cf29f83e39464f9e695caa86fe5fe0 -SHA1 (patch-ap) = 6cd565b9a3b06aea12fbedb1199e16dd0f3577ae -SHA1 (patch-as) = 0df64b325b758a88fe61590e129bab2b3f99ce63 -SHA1 (patch-at) = c6f0129eccf7574e3832aff746d2f0bd442de7c1 -SHA1 (patch-au) = 29d05fb5f4717fb572491d9d0653ec74ba46ae7e +SHA1 (patch-au) = afe7e210b7158064b8f64452c5e5ab95631bf9eb SHA1 (patch-aw) = 3b1472a95a2312f9e49ea1a6aa517ad81328324c SHA1 (patch-ax) = 66b060005ecbf9fd0451f7960e81eccbabf959ca -SHA1 (patch-ay) = 45fa8b5720185b5bfe2d1c00f599565f286ea4f5 +SHA1 (patch-ay) = 2d3051685878abe077abdbba9681bd04e04c7fb3 diff --git a/emulators/qemu/patches/patch-ab b/emulators/qemu/patches/patch-ab deleted file mode 100644 index f31c1f2193c..00000000000 --- a/emulators/qemu/patches/patch-ab +++ /dev/null @@ -1,20 +0,0 @@ -$NetBSD: patch-ab,v 1.6 2006/05/06 18:41:49 xtraeme Exp $ - ---- target-arm/cpu.h.orig 2005-12-19 23:51:53.000000000 +0100 -+++ target-arm/cpu.h -@@ -122,9 +122,15 @@ void switch_mode(CPUARMState *, int); - /* you can call this signal handler from your SIGBUS and SIGSEGV - signal handlers to inform the virtual CPU of exceptions. non zero - is returned if the signal was handled by the virtual CPU. */ -+#ifdef __NetBSD__ -+union siginfo; -+int cpu_arm_signal_handler(int host_signum, union siginfo *info, -+ void *puc); -+#else - struct siginfo; - int cpu_arm_signal_handler(int host_signum, struct siginfo *info, - void *puc); -+#endif - - #define CPSR_M (0x1f) - #define CPSR_T (1 << 5) diff --git a/emulators/qemu/patches/patch-ac b/emulators/qemu/patches/patch-ac index 4f6e49c91d9..bdff9c28a44 100644 --- a/emulators/qemu/patches/patch-ac +++ b/emulators/qemu/patches/patch-ac @@ -1,8 +1,6 @@ -$NetBSD: patch-ac,v 1.7 2006/08/21 17:23:52 dbj Exp $ - ---- vl.c.orig 2006-05-06 19:22:32.000000000 +0200 -+++ vl.c 2006-05-06 19:28:25.000000000 +0200 -@@ -43,7 +47,7 @@ +--- vl.c.orig 2007-05-02 01:56:26.000000000 +0200 ++++ vl.c 2007-05-02 01:57:42.000000000 +0200 +@@ -44,7 +44,7 @@ #include #ifdef _BSD #include @@ -11,45 +9,23 @@ $NetBSD: patch-ac,v 1.7 2006/08/21 17:23:52 dbj Exp $ #include #endif #else -@@ -1506,7 +1510,7 @@ - return chr; - } - --#if defined(__linux__) -+#if defined(__linux__) || defined(__NetBSD__) - CharDriverState *qemu_chr_open_pty(void) - { - struct termios tty; -@@ -1663,6 +1667,9 @@ +@@ -1801,6 +1801,9 @@ static int pp_ioctl(CharDriverState *chr, int cmd, void *arg) { +#ifdef __NetBSD__ + return ENOTSUP; -+#else ++#endif int fd = (int)chr->opaque; uint8_t b; -@@ -1696,10 +1703,14 @@ - return -ENOTSUP; - } - return 0; -+#endif - } +@@ -1838,6 +1841,9 @@ - CharDriverState *qemu_chr_open_pp(const char *filename) + static CharDriverState *qemu_chr_open_pp(const char *filename) { +#ifdef __NetBSD__ -+ return NULL; -+#else ++ return ENOTSUP; ++#endif CharDriverState *chr; int fd; -@@ -1722,6 +1733,7 @@ - chr->chr_add_read_handler = null_chr_add_read_handler; - chr->chr_ioctl = pp_ioctl; - return chr; -+#endif - } - - #else diff --git a/emulators/qemu/patches/patch-af b/emulators/qemu/patches/patch-af deleted file mode 100644 index 678e2ef2627..00000000000 --- a/emulators/qemu/patches/patch-af +++ /dev/null @@ -1,40 +0,0 @@ -$NetBSD: patch-af,v 1.5 2006/09/16 15:29:35 hira Exp $ - ---- dyngen-exec.h.orig 2006-09-05 01:19:38.000000000 +0200 -+++ dyngen-exec.h 2006-09-05 01:21:00.000000000 +0200 -@@ -30,7 +30,9 @@ - /* NOTE: standard headers should be used with special care at this - point because host CPU registers are used as global variables. Some - host headers do not allow that. */ -+#ifndef __APPLE__ - #include -+#endif - - typedef unsigned char uint8_t; - typedef unsigned short uint16_t; -@@ -62,6 +64,7 @@ - #endif - #endif - -+#if 0 - #define INT8_MIN (-128) - #define INT16_MIN (-32767-1) - #define INT32_MIN (-2147483647-1) -@@ -74,12 +77,17 @@ - #define UINT16_MAX (65535) - #define UINT32_MAX (4294967295U) - #define UINT64_MAX ((uint64_t)(18446744073709551615)) -+#endif - -+#ifdef __NetBSD__ -+typedef struct __sFILE FILE; -+#else - typedef struct FILE FILE; - extern int fprintf(FILE *, const char *, ...); - extern int printf(const char *, ...); - #undef NULL - #define NULL 0 -+#endif - - #ifdef __i386__ - #define AREG0 "ebp" diff --git a/emulators/qemu/patches/patch-ah b/emulators/qemu/patches/patch-ah deleted file mode 100644 index 2f82d82e86e..00000000000 --- a/emulators/qemu/patches/patch-ah +++ /dev/null @@ -1,20 +0,0 @@ -$NetBSD: patch-ah,v 1.1.1.1 2004/11/09 13:05:34 xtraeme Exp $ - ---- target-i386/cpu.h.orig 2004-07-10 21:20:09.000000000 +0300 -+++ target-i386/cpu.h -@@ -441,9 +441,15 @@ void cpu_x86_frstor(CPUX86State *s, uint - /* you can call this signal handler from your SIGBUS and SIGSEGV - signal handlers to inform the virtual CPU of exceptions. non zero - is returned if the signal was handled by the virtual CPU. */ -+#ifdef __NetBSD__ -+union siginfo; -+int cpu_x86_signal_handler(int host_signum, union siginfo *info, -+ void *puc); -+#else - struct siginfo; - int cpu_x86_signal_handler(int host_signum, struct siginfo *info, - void *puc); -+#endif - void cpu_x86_set_a20(CPUX86State *env, int a20_state); - - uint64_t cpu_get_tsc(CPUX86State *env); diff --git a/emulators/qemu/patches/patch-ai b/emulators/qemu/patches/patch-ai deleted file mode 100644 index 242d5610a4e..00000000000 --- a/emulators/qemu/patches/patch-ai +++ /dev/null @@ -1,20 +0,0 @@ -$NetBSD: patch-ai,v 1.1.1.1 2004/11/09 13:05:34 xtraeme Exp $ - ---- target-ppc/cpu.h.orig 2004-07-10 21:20:09.000000000 +0300 -+++ target-ppc/cpu.h -@@ -182,9 +182,15 @@ void cpu_ppc_close(CPUPPCState *s); - /* you can call this signal handler from your SIGBUS and SIGSEGV - signal handlers to inform the virtual CPU of exceptions. non zero - is returned if the signal was handled by the virtual CPU. */ -+#ifdef __NetBSD__ -+union siginfo; -+int cpu_ppc_signal_handler(int host_signum, union siginfo *info, -+ void *puc); -+#else - struct siginfo; - int cpu_ppc_signal_handler(int host_signum, struct siginfo *info, - void *puc); -+#endif - - void do_interrupt (CPUPPCState *env); - void cpu_loop_exit(void); diff --git a/emulators/qemu/patches/patch-aj b/emulators/qemu/patches/patch-aj deleted file mode 100644 index 94745cabc4b..00000000000 --- a/emulators/qemu/patches/patch-aj +++ /dev/null @@ -1,51 +0,0 @@ -$NetBSD: patch-aj,v 1.7 2006/12/07 16:06:39 xtraeme Exp $ - ---- Makefile.target.orig 2006-12-07 17:03:50.000000000 +0100 -+++ Makefile.target 2006-12-07 17:05:31.000000000 +0100 -@@ -17,9 +17,9 @@ - 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=-Wall -O2 -g -fno-strict-aliasing - #CFLAGS+=-Werror --LDFLAGS=-g -+#LDFLAGS=-g - LIBS= - HELPER_CFLAGS=$(CFLAGS) - DYNGEN=../dyngen$(EXESUF) -@@ -400,6 +400,7 @@ - ifndef CONFIG_SOFTMMU - VL_LDFLAGS+=-Wl,-T,$(SRC_PATH)/i386-vl.ld - endif -+ifndef CONFIG_DRAGONFLY - ifndef CONFIG_DARWIN - ifndef CONFIG_WIN32 - ifndef CONFIG_SOLARIS -@@ -407,6 +408,7 @@ - endif - endif - endif -+endif - ifdef TARGET_GPROF - vl.o: CFLAGS+=-p - VL_LDFLAGS+=-p -@@ -440,6 +442,9 @@ - sdlaudio.o: sdlaudio.c - $(CC) $(CFLAGS) $(DEFINES) $(SDL_CFLAGS) -c -o $@ $< - -+vl.o: vl.c -+ $(CC) $(CFLAGS) $(DEFINES) $(SDL_CFLAGS) -c -o $@ $< -+ - depend: $(SRCS) - $(CC) -MM $(CFLAGS) $(DEFINES) $^ 1>.depend - -@@ -530,7 +535,7 @@ - - install: all - ifneq ($(PROGS),) -- $(INSTALL) -m 755 -s $(PROGS) "$(DESTDIR)$(bindir)" -+ $(BSD_INSTALL_PROGRAM) $(PROGS) "$(bindir)" - endif - - ifneq ($(wildcard .depend),) diff --git a/emulators/qemu/patches/patch-ak b/emulators/qemu/patches/patch-ak index 5dabd7e51b8..350e3845ec1 100644 --- a/emulators/qemu/patches/patch-ak +++ b/emulators/qemu/patches/patch-ak @@ -1,27 +1,6 @@ -$NetBSD: patch-ak,v 1.9 2006/09/17 07:51:56 xtraeme Exp $ - ---- Makefile.orig 2006-07-22 19:23:34.000000000 +0200 -+++ Makefile 2006-09-17 09:43:56.000000000 +0200 -@@ -5,15 +5,15 @@ - .PHONY: all clean distclean dvi info install install-doc tar tarbin \ - speed test test2 html dvi info - --CFLAGS=-Wall -O2 -g -fno-strict-aliasing -I. -+CFLAGS+=-Wall -O2 -fno-strict-aliasing -I. - ifdef CONFIG_DARWIN - CFLAGS+= -mdynamic-no-pic - endif - ifeq ($(ARCH),sparc) - CFLAGS+=-mcpu=ultrasparc - endif --LDFLAGS=-g --LIBS= -+#LDFLAGS=-g -+#LIBS= - DEFINES+=-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE - TOOLS=qemu-img$(EXESUF) - ifdef CONFIG_STATIC -@@ -59,20 +59,20 @@ +--- Makefile.orig 2007-05-02 02:06:53.000000000 +0200 ++++ Makefile 2007-05-02 02:08:59.000000000 +0200 +@@ -66,21 +66,21 @@ common de-ch es fo fr-ca hu ja mk nl-be pt sl tr install-doc: $(DOCS) @@ -42,7 +21,8 @@ $NetBSD: patch-ak,v 1.9 2006/09/17 07:51:56 xtraeme Exp $ + $(BSD_INSTALL_PROGRAM) $(TOOLS) $(bindir) + $(BSD_INSTALL_DATA_DIR) $(datadir) for x in bios.bin vgabios.bin vgabios-cirrus.bin ppc_rom.bin \ - video.x openbios-sparc32 linux_boot.bin; do \ + video.x openbios-sparc32 linux_boot.bin pxe-ne2k_pci.bin \ + pxe-rtl8139.bin pxe-pcnet.bin; do \ - $(INSTALL) -m 644 $(SRC_PATH)/pc-bios/$$x "$(DESTDIR)$(datadir)"; \ + $(BSD_INSTALL_DATA) $(SRC_PATH)/pc-bios/$$x "$(DESTDIR)$(datadir)"; \ done diff --git a/emulators/qemu/patches/patch-al b/emulators/qemu/patches/patch-al deleted file mode 100644 index 71f86322db5..00000000000 --- a/emulators/qemu/patches/patch-al +++ /dev/null @@ -1,33 +0,0 @@ -$NetBSD: patch-al,v 1.3 2006/09/05 00:44:38 xtraeme Exp $ - ---- osdep.h.orig 2006-07-22 19:23:34.000000000 +0200 -+++ osdep.h 2006-09-05 01:25:58.000000000 +0200 -@@ -2,6 +2,8 @@ - #define QEMU_OSDEP_H - - #include -+#include -+#include - - int qemu_vsnprintf(char *buf, int buflen, const char *fmt, va_list args); - void qemu_vprintf(const char *fmt, va_list ap); -@@ -27,13 +29,19 @@ - - #include - -+#ifndef __NetBSD__ - struct siginfo; -+#endif - - /* NOTE: it works only because the glibc sigset_t is >= kernel sigset_t */ - struct qemu_sigaction { - union { - void (*_sa_handler)(int); -+#ifdef __NetBSD__ -+ void (*_sa_sigaction)(int, siginfo_t *, void *); -+#else - void (*_sa_sigaction)(int, struct siginfo *, void *); -+#endif - } _u; - unsigned long sa_flags; - void (*sa_restorer)(void); diff --git a/emulators/qemu/patches/patch-ap b/emulators/qemu/patches/patch-ap deleted file mode 100644 index 24c6b899427..00000000000 --- a/emulators/qemu/patches/patch-ap +++ /dev/null @@ -1,18 +0,0 @@ -$NetBSD: patch-ap,v 1.5 2006/01/01 19:12:54 hubertf Exp $ - ---- target-sparc/cpu.h.orig 2005-12-19 23:51:53.000000000 +0100 -+++ target-sparc/cpu.h -@@ -269,8 +269,13 @@ void cpu_set_cwp(CPUSPARCState *env1, in - } while (0) - #endif - -+#ifdef __NetBSD__ -+union siginfo; -+int cpu_sparc_signal_handler(int hostsignum, union siginfo *info, void *puc); -+#else - struct siginfo; - int cpu_sparc_signal_handler(int hostsignum, struct siginfo *info, void *puc); -+#endif - - #include "cpu-all.h" - diff --git a/emulators/qemu/patches/patch-as b/emulators/qemu/patches/patch-as deleted file mode 100644 index ddb9dd2ae3a..00000000000 --- a/emulators/qemu/patches/patch-as +++ /dev/null @@ -1,14 +0,0 @@ -$NetBSD: patch-as,v 1.1 2004/11/15 15:38:15 soren Exp $ - ---- hw/ide.c 9 Nov 2004 22:04:05 -0000 1.29 -+++ hw/ide.c 15 Nov 2004 15:34:50 -0000 -@@ -1895,7 +1895,9 @@ - s->heads = 16; - s->sectors = 63; - } -+#if 0 - bdrv_set_geometry_hint(s->bs, s->cylinders, s->heads, s->sectors); -+#endif - } - if (bdrv_get_type_hint(s->bs) == BDRV_TYPE_CDROM) { - s->is_cdrom = 1; diff --git a/emulators/qemu/patches/patch-at b/emulators/qemu/patches/patch-at deleted file mode 100644 index 244709232e3..00000000000 --- a/emulators/qemu/patches/patch-at +++ /dev/null @@ -1,17 +0,0 @@ ---- target-sparc/op_helper.c.orig 2006-07-22 17:23:34.000000000 +0000 -+++ target-sparc/op_helper.c 2007-01-05 21:51:15.000000000 +0000 -@@ -12,12 +12,12 @@ - #ifdef USE_INT_TO_FLOAT_HELPERS - void do_fitos(void) - { -- FT0 = int32_to_float32(*((int32_t *)&FT1)); -+ FT0 = int32_to_float32(*((int32_t *)&FT1), &env->fp_status); - } - - void do_fitod(void) - { -- DT0 = int32_to_float64(*((int32_t *)&FT1)); -+ DT0 = int32_to_float64(*((int32_t *)&FT1), &env->fp_status); - } - #endif - diff --git a/emulators/qemu/patches/patch-au b/emulators/qemu/patches/patch-au index 6d025e96bdc..46bbe6ca493 100644 --- a/emulators/qemu/patches/patch-au +++ b/emulators/qemu/patches/patch-au @@ -1,18 +1,26 @@ -$NetBSD: patch-au,v 1.2 2006/05/06 18:09:53 xtraeme Exp $ - ---- fpu/softfloat-native.h.orig 2006-05-03 22:32:58.000000000 +0200 -+++ fpu/softfloat-native.h 2006-05-06 19:49:25.000000000 +0200 -@@ -33,6 +33,14 @@ +--- fpu/softfloat-native.h.orig 2007-02-06 00:01:54.000000000 +0100 ++++ fpu/softfloat-native.h 2007-05-02 01:54:50.000000000 +0200 +@@ -33,6 +33,24 @@ #define isunordered(x,y) unordered(x, y) #endif +#ifdef __NetBSD__ -+#define isgreater(x, y) __builtin_isgreater(x, y) ++#ifndef isgreater ++#define isgreater(x, y) __builtin_isgreater(x, y) ++#endif ++#ifndef isgreaterequal +#define isgreaterequal(x, y) __builtin_isgreaterequal(x, y) ++#endif ++#ifndef isless +#define isless(x, y) __builtin_isless(x, y) ++#endif ++#ifndef islessequal +#define islessequal(x, y) __builtin_islessequal(x, y) ++#endif ++#ifndef isunordered +#define isunordered(x, y) __builtin_isunordered(x, y) +#endif ++#endif + typedef float float32; typedef double float64; diff --git a/emulators/qemu/patches/patch-ay b/emulators/qemu/patches/patch-ay index 4636f8023a5..053636d5f44 100644 --- a/emulators/qemu/patches/patch-ay +++ b/emulators/qemu/patches/patch-ay @@ -1,15 +1,92 @@ -$NetBSD: patch-ay,v 1.6 2006/12/07 16:06:39 xtraeme Exp $ +$NetBSD: patch-ay,v 1.7 2007/05/21 20:24:48 xtraeme Exp $ ---- block.c.orig 2006-12-06 21:23:19.000000000 +0100 -+++ block.c 2006-12-06 21:24:04.000000000 +0100 -@@ -29,8 +29,10 @@ - #include - #include - #include -+#ifndef __DragonFly__ - #include - #endif -+#endif - - #ifdef CONFIG_COCOA - #include +--- block-raw.c.orig 2007-02-06 00:01:54.000000000 +0100 ++++ block-raw.c +@@ -25,7 +25,9 @@ + #include "block_int.h" + #include + #ifndef _WIN32 ++#ifdef _POSIX_ASYNCHRONOUS_IO + #include ++#endif + + #ifndef QEMU_TOOL + #include "exec-all.h" +@@ -157,6 +159,7 @@ static int raw_pwrite(BlockDriverState * + return ret; + } + ++#ifdef _POSIX_ASYNCHRONOUS_IO + /***********************************************************/ + /* Unix AIO using POSIX AIO */ + +@@ -379,6 +382,7 @@ static void raw_aio_cancel(BlockDriverAI + pacb = &acb->next; + } + } ++#endif + + static void raw_close(BlockDriverState *bs) + { +@@ -469,6 +473,35 @@ static void raw_flush(BlockDriverState * + fsync(s->fd); + } + ++#ifndef _POSIX_ASYNCHRONOUS_IO ++void qemu_aio_init(void) ++{ ++} ++ ++void qemu_aio_poll(void) ++{ ++} ++ ++void qemu_aio_flush(void) ++{ ++} ++ ++void qemu_aio_wait_start(void) ++{ ++} ++ ++void qemu_aio_wait(void) ++{ ++#ifndef QEMU_TOOL ++ qemu_bh_poll(); ++#endif ++} ++ ++void qemu_aio_wait_end(void) ++{ ++} ++#endif ++ + BlockDriver bdrv_raw = { + "raw", + sizeof(BDRVRawState), +@@ -480,10 +513,12 @@ BlockDriver bdrv_raw = { + raw_create, + raw_flush, + ++#ifdef _POSIX_ASYNCHRONOUS_IO + .bdrv_aio_read = raw_aio_read, + .bdrv_aio_write = raw_aio_write, + .bdrv_aio_cancel = raw_aio_cancel, + .aiocb_size = sizeof(RawAIOCB), ++#endif + .protocol_name = "file", + .bdrv_pread = raw_pread, + .bdrv_pwrite = raw_pwrite, +@@ -816,10 +851,12 @@ BlockDriver bdrv_host_device = { + NULL, + raw_flush, + ++#ifdef _POSIX_ASYNCHRONOUS_IO + .bdrv_aio_read = raw_aio_read, + .bdrv_aio_write = raw_aio_write, + .bdrv_aio_cancel = raw_aio_cancel, + .aiocb_size = sizeof(RawAIOCB), ++#endif + .bdrv_pread = raw_pread, + .bdrv_pwrite = raw_pwrite, + .bdrv_getlength = raw_getlength, -- cgit v1.2.3