Index: Makefile =================================================================== RCS file: /home/pcvs/ports/emulators/qemu-devel/Makefile,v retrieving revision 1.81 diff -u -r1.81 Makefile --- Makefile 13 Dec 2007 01:10:53 -0000 1.81 +++ Makefile 5 Jan 2008 17:33:47 -0000 @@ -6,8 +6,7 @@ # PORTNAME= qemu -PORTVERSION= 0.9.0s.20070802 -PORTREVISION= 1 +PORTVERSION= 0.9.0s.20080105 CATEGORIES= emulators MASTER_SITES= http://qemu.org/:release \ http://qemu-forum.ipi.fi/qemu-snapshots/:snapshot \ @@ -16,7 +15,7 @@ http://people.brandeis.edu/~jcoiner/qemu_idedma/:idedma \ http://people.freebsd.org/~maho/qemu/:misc PKGNAMESUFFIX= -devel -DISTNAME= ${PORTNAME}-snapshot-2007-08-02_05 +DISTNAME= ${PORTNAME}-snapshot-2008-01-05_05 DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:snapshot DIST_SUBDIR= qemu EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} @@ -30,7 +29,7 @@ USE_GETOPT_LONG= yes USE_PERL5= yes USE_GCC= 3.4 -PATCH_STRIP= -p1 +PATCH_STRIP= -lp1 MAKE_ENV+= BSD_MAKE="${MAKE}" CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" MAN1= qemu.1 qemu-img.1 ONLY_FOR_ARCHS= amd64 i386 @@ -65,7 +64,6 @@ .if defined(WITH_KQEMU) BUILD_DEPENDS+= kqemu-kmod>=1.3.0pre5:${PORTSDIR}/emulators/kqemu-kmod -CONFIGURE_ARGS+= --enable-kqemu .else CONFIGURE_ARGS+= --disable-kqemu .endif Index: distinfo =================================================================== RCS file: /home/pcvs/ports/emulators/qemu-devel/distinfo,v retrieving revision 1.48 diff -u -r1.48 distinfo --- distinfo 9 Aug 2007 20:03:29 -0000 1.48 +++ distinfo 5 Jan 2008 16:31:00 -0000 @@ -1,6 +1,6 @@ -MD5 (qemu/qemu-snapshot-2007-08-02_05.tar.bz2) = 35332948d2a3647c4b29b27c9fc9b5a5 -SHA256 (qemu/qemu-snapshot-2007-08-02_05.tar.bz2) = b3931bf1d3787cf854b2687bd8bd568aba1d5bb2fde798189a56935cb502cd56 -SIZE (qemu/qemu-snapshot-2007-08-02_05.tar.bz2) = 2054955 +MD5 (qemu/qemu-snapshot-2008-01-05_05.tar.bz2) = b0966d0a9750d2326caf3c405ee6b5b1 +SHA256 (qemu/qemu-snapshot-2008-01-05_05.tar.bz2) = 492a27bbba016f01817d21c1963c510cd02ef8028f89f38d2967b64659405e81 +SIZE (qemu/qemu-snapshot-2008-01-05_05.tar.bz2) = 2311074 MD5 (qemu/patch3_cirrus) = ebe7ed9fce804c49e024bc93bfdfc810 SHA256 (qemu/patch3_cirrus) = e862371834b7d895a896fbdb84fd9f70d17b5729a6f6789a48a61504fc941e11 SIZE (qemu/patch3_cirrus) = 8817 Index: pkg-plist =================================================================== RCS file: /home/pcvs/ports/emulators/qemu-devel/pkg-plist,v retrieving revision 1.22 diff -u -r1.22 pkg-plist --- pkg-plist 31 May 2007 18:24:19 -0000 1.22 +++ pkg-plist 5 Jan 2008 17:57:53 -0000 @@ -1,6 +1,7 @@ bin/qemu bin/qemu-img bin/qemu-system-arm +bin/qemu-system-cris bin/qemu-system-m68k bin/qemu-system-mips bin/qemu-system-mips64 @@ -9,6 +10,8 @@ bin/qemu-system-ppc bin/qemu-system-ppc64 bin/qemu-system-ppcemb +bin/qemu-system-sh4 +bin/qemu-system-sh4eb bin/qemu-system-sparc bin/qemu-system-x86_64 %%PORTDOCS%%%%DOCSDIR%%/qemu-doc.html Index: files/patch-90_security =================================================================== RCS file: /home/pcvs/ports/emulators/qemu-devel/files/patch-90_security,v retrieving revision 1.3 diff -u -r1.3 patch-90_security --- files/patch-90_security 9 Aug 2007 20:03:30 -0000 1.3 +++ files/patch-90_security 5 Jan 2008 17:06:40 -0000 @@ -35,7 +35,7 @@ - dst = s->vram_ptr + s->cirrus_blt_dstaddr; + dst = s->vram_ptr + (s->cirrus_blt_dstaddr & s->cirrus_addr_mask); -+ ++ + if (BLTUNSAFE(s)) + return 0; + @@ -163,22 +163,17 @@ } Index: qemu-0.8.2/hw/fdc.c -=================================================================== ---- qemu-0.8.2.orig/hw/fdc.c 2006-07-22 20:23:34.000000000 +0300 -+++ qemu-0.8.2/hw/fdc.c 2007-04-20 06:05:59.000000000 +0300 -@@ -1110,8 +1110,13 @@ static uint32_t fdctrl_read_data (fdctrl +@@ -1247,7 +1247,12 @@ len = fdctrl->data_len - fdctrl->data_pos; if (len > FD_SECTOR_LEN) len = FD_SECTOR_LEN; -- bdrv_read(cur_drv->bs, fd_sector(cur_drv), -- fdctrl->fifo, len); +- bdrv_read(cur_drv->bs, fd_sector(cur_drv), fdctrl->fifo, 1); + if (cur_drv->bs) { -+ bdrv_read(cur_drv->bs, fd_sector(cur_drv), -+ fdctrl->fifo, len); ++ bdrv_read(cur_drv->bs, fd_sector(cur_drv), fdctrl->fifo, 1); + } else { + FLOPPY_ERROR("can't read data from drive\n"); + return 0; -+ } ++ } } } retval = fdctrl->fifo[pos]; Index: files/patch-PRId64 =================================================================== RCS file: /home/pcvs/ports/emulators/qemu-devel/files/patch-PRId64,v retrieving revision 1.2 diff -u -r1.2 patch-PRId64 --- files/patch-PRId64 10 Mar 2007 17:03:05 -0000 1.2 +++ files/patch-PRId64 5 Jan 2008 19:25:05 -0000 @@ -1,113 +0,0 @@ -Index: qemu/vl.h -@@ -30,6 +30,12 @@ - #include - #include - #include -+#ifndef PRId64 -+#define PRId64 "lld" /* int64_t */ -+#define PRIo64 "llo" /* int64_t */ -+#define PRIx64 "llx" /* int64_t */ -+#define PRIu64 "llu" /* int64_t */ -+#endif - #include - #include - #include -Index: qemu/dis-asm.h -@@ -13,6 +13,12 @@ - #include - #include - #include -+#ifndef PRId64 -+#define PRId64 "lld" /* int64_t */ -+#define PRIo64 "llo" /* int64_t */ -+#define PRIx64 "llx" /* int64_t */ -+#define PRIu64 "llu" /* int64_t */ -+#endif - - #define PARAMS(x) x - typedef void *PTR; -Index: qemu/kqemu.c -@@ -33,6 +33,12 @@ - #include - #include - #include -+#ifndef PRId64 -+#define PRId64 "lld" /* int64_t */ -+#define PRIo64 "llo" /* int64_t */ -+#define PRIx64 "llx" /* int64_t */ -+#define PRIu64 "llu" /* int64_t */ -+#endif - - #include "cpu.h" - #include "exec-all.h" -Index: qemu/translate-all.c -@@ -22,6 +22,12 @@ - #include - #include - #include -+#ifndef PRId64 -+#define PRId64 "lld" /* int64_t */ -+#define PRIo64 "llo" /* int64_t */ -+#define PRIx64 "llx" /* int64_t */ -+#define PRIu64 "llu" /* int64_t */ -+#endif - - #include "config.h" - -Index: qemu/target-i386/helper.c -@@ -21,6 +21,13 @@ - - //#define DEBUG_PCALL - -+#ifndef PRId64 -+#define PRId64 "lld" /* int64_t */ -+#define PRIo64 "llo" /* int64_t */ -+#define PRIx64 "llx" /* int64_t */ -+#define PRIu64 "llu" /* int64_t */ -+#endif -+ - #if 0 - #define raise_exception_err(a, b)\ - do {\ -Index: qemu/target-i386/helper2.c -@@ -22,6 +22,12 @@ - #include - #include - #include -+#ifndef PRId64 -+#define PRId64 "lld" /* int64_t */ -+#define PRIo64 "llo" /* int64_t */ -+#define PRIx64 "llx" /* int64_t */ -+#define PRIu64 "llu" /* int64_t */ -+#endif - #include - #include - -Index: qemu/target-ppc/translate.c -@@ -22,6 +22,12 @@ - #include - #include - #include -+#ifndef PRId64 -+#define PRId64 "lld" /* int64_t */ -+#define PRIo64 "llo" /* int64_t */ -+#define PRIx64 "llx" /* int64_t */ -+#define PRIu64 "llu" /* int64_t */ -+#endif - - #include "cpu.h" - #include "exec-all.h" -Index: qemu/target-sparc/helper.c -@@ -22,6 +22,12 @@ - #include - #include - #include -+#ifndef PRId64 -+#define PRId64 "lld" /* int64_t */ -+#define PRIo64 "llo" /* int64_t */ -+#define PRIx64 "llx" /* int64_t */ -+#define PRIu64 "llu" /* int64_t */ -+#endif - #include - #include - Index: files/patch-bg =================================================================== RCS file: /home/pcvs/ports/emulators/qemu-devel/files/patch-bg,v retrieving revision 1.6 diff -u -r1.6 patch-bg --- files/patch-bg 10 Mar 2007 17:03:05 -0000 1.6 +++ files/patch-bg 5 Jan 2008 17:11:15 -0000 @@ -9,11 +9,11 @@ ifndef CONFIG_USER_ONLY LIBS+=-lz Index: qemu/vl.c -@@ -89,10 +89,12 @@ - #include "exec-all.h" +@@ -133,10 +133,12 @@ #define DEFAULT_NETWORK_SCRIPT "/etc/qemu-ifup" -+#ifndef SMBD_COMMAND + #define DEFAULT_NETWORK_DOWN_SCRIPT "/etc/qemu-ifdown" ++#ifndef SMBD_COMMAND #ifdef __sun__ #define SMBD_COMMAND "/usr/sfw/sbin/smbd" #else Index: files/patch-bk =================================================================== RCS file: /home/pcvs/ports/emulators/qemu-devel/files/patch-bk,v retrieving revision 1.4 diff -u -r1.4 patch-bk --- files/patch-bk 10 Mar 2007 17:03:05 -0000 1.4 +++ files/patch-bk 5 Jan 2008 16:52:26 -0000 @@ -97,7 +97,7 @@ - dprintf("bootp packet op=%d msgtype=%d\n", bp->bp_op, dhcp_msg_type); + dhcp_decode(bp->bp_vend, DHCP_OPT_LEN, &dhcp_msg_type,&reqaddr); + dprintf("bootp packet op=%d msgtype=%d reqaddr=%x\n", bp->bp_op, dhcp_msg_type,ntohl(reqaddr.sin_addr.s_addr)); - + if (dhcp_msg_type == 0) dhcp_msg_type = DHCPREQUEST; /* Force reply for old BOOTP clients */ @@ -152,21 +185,18 @@ @@ -122,14 +122,14 @@ + bc=NULL; + daddr.sin_addr.s_addr=htonl(0L); + if (dhcp_msg_type == DHCPREQUEST) { -+ if (reqaddr.sin_addr.s_addr != htonl(0L)) -+ bc = find_reqaddr(&daddr.sin_addr, &reqaddr.sin_addr, bp->bp_hwaddr); -+ else -+ bc = find_addr(&daddr.sin_addr, bp->bp_hwaddr); ++ if (reqaddr.sin_addr.s_addr != htonl(0L)) ++ bc = find_reqaddr(&daddr.sin_addr, &reqaddr.sin_addr, bp->bp_hwaddr); ++ else ++ bc = find_addr(&daddr.sin_addr, bp->bp_hwaddr); + } + else if (dhcp_msg_type == DHCPDISCOVER) { -+ bc = find_addr(&daddr.sin_addr, bp->bp_hwaddr); -+ if (!bc) ++ bc = find_addr(&daddr.sin_addr, bp->bp_hwaddr); ++ if (!bc) + bc = get_new_addr(&daddr.sin_addr); } dprintf("offered addr=%08x\n", ntohl(daddr.sin_addr.s_addr)); @@ -165,7 +165,7 @@ - *q++ = DHCPACK; - } + *q++ = replytype; - + - if (dhcp_msg_type == DHCPDISCOVER || - dhcp_msg_type == DHCPREQUEST) { + if ((dhcp_msg_type == DHCPDISCOVER || Index: files/patch-block-raw.c =================================================================== RCS file: /home/pcvs/ports/emulators/qemu-devel/files/patch-block-raw.c,v retrieving revision 1.5 diff -u -r1.5 patch-block-raw.c --- files/patch-block-raw.c 10 Mar 2007 17:03:05 -0000 1.5 +++ files/patch-block-raw.c 5 Jan 2008 19:25:10 -0000 @@ -1,51 +0,0 @@ -Index: qemu/block-raw.c -@@ -51,7 +51,10 @@ - #include - #include - #endif - #ifdef __FreeBSD__ -+#include -+#endif -+#if defined(__FreeBSD__) && __FreeBSD__ > 4 - #include - #endif - -@@ -167,9 +167,20 @@ - static int aio_sig_num = SIGUSR2; - static RawAIOCB *first_aio; /* AIO issued */ - static int aio_initialized = 0; -+// FreeBSD 4.x doesn't have sigwait -+#if defined(__FreeBSD__) && __FreeBSD__ <= 4 -+static int sigaio_dont = 0; -+#endif - - static void aio_signal_handler(int signum) - { -+// FreeBSD 4.x doesn't have sigwait -+#if defined(__FreeBSD__) && __FreeBSD__ <= 4 -+ if (sigaio_dont) { -+ --sigaio_dont; -+ return; -+ } -+#endif - #ifndef QEMU_TOOL - CPUState *env = cpu_single_env; - if (env) { -@@ -284,9 +295,17 @@ - if (qemu_bh_poll()) - return; - #endif -+// FreeBSD 4.x doesn't have sigwait -+#if defined(__FreeBSD__) && __FreeBSD__ <= 4 -+ ++sigaio_dont; -+ do -+ sigsuspend(&wait_oset); -+ while (sigaio_dont); -+#else - sigemptyset(&set); - sigaddset(&set, aio_sig_num); - sigwait(&set, &nb_sigs); -+#endif - qemu_aio_poll(); - } - Index: files/patch-bsdusb.patch =================================================================== RCS file: /home/pcvs/ports/emulators/qemu-devel/files/patch-bsdusb.patch,v retrieving revision 1.9 diff -u -r1.9 patch-bsdusb.patch --- files/patch-bsdusb.patch 10 Jul 2007 20:24:58 -0000 1.9 +++ files/patch-bsdusb.patch 5 Jan 2008 17:38:57 -0000 @@ -35,16 +35,16 @@ for target in $target_list; do target_dir="$target" -Index: qemu/Makefile.target -@@ -408,7 +408,7 @@ - VL_OBJS+= scsi-disk.o cdrom.o lsi53c895a.o +Index: qemu/Makefile +@@ -61,7 +61,7 @@ + OBJS+=ssd0303.o ssd0323.o ads7846.o stellaris_input.o + OBJS+=scsi-disk.o cdrom.o + OBJS+=scsi-generic.o +-OBJS+=usb.o usb-hub.o usb-linux.o usb-hid.o usb-msd.o usb-wacom.o ++OBJS+=usb.o usb-hub.o usb-$(HOST_USB).o usb-hid.o usb-msd.o usb-wacom.o + OBJS+=sd.o ssi-sd.o - # USB layer --VL_OBJS+= usb.o usb-hub.o usb-linux.o usb-hid.o usb-ohci.o usb-msd.o -+VL_OBJS+= usb.o usb-hub.o usb-$(HOST_USB).o usb-hid.o usb-ohci.o usb-msd.o - VL_OBJS+= usb-wacom.o - - # EEPROM emulation + ifdef CONFIG_WIN32 Index: qemu/usb-stub.c @@ -0,0 +1,11 @@ +#include "vl.h" @@ -59,7 +59,7 @@ + return NULL; +} Index: qemu/usb-bsd.c -@@ -0,0 +1,600 @@ +@@ -0,0 +1,601 @@ +/* + * BSD host USB redirector + * @@ -86,7 +86,8 @@ + * THE SOFTWARE. + */ + -+#include "vl.h" ++#include "qemu-common.h" ++#include "hw/usb.h" + +/* usb.h declares these */ +#undef USB_SPEED_HIGH Index: files/patch-fbsd =================================================================== RCS file: /home/pcvs/ports/emulators/qemu-devel/files/patch-fbsd,v retrieving revision 1.10 diff -u -r1.10 patch-fbsd --- files/patch-fbsd 10 Mar 2007 17:15:07 -0000 1.10 +++ files/patch-fbsd 5 Jan 2008 17:22:01 -0000 @@ -20,17 +20,16 @@ rm -f *.o *.a $(TOOLS) dyngen$(EXESUF) TAGS *.pod *~ */*~ $(MAKE) -C tests clean Index: qemu/Makefile.target -@@ -465,8 +465,8 @@ +@@ -571,7 +571,7 @@ SDL_LIBS := $(filter-out -mwindows, $(SDL_LIBS)) -mconsole endif --$(QEMU_SYSTEM): $(VL_OBJS) libqemu.a -- $(CC) $(VL_LDFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) $(SDL_LIBS) $(COCOA_LIBS) $(VL_LIBS) -+$(QEMU_SYSTEM): $(VL_OBJS) libqemu.a ../bsd/libmath.a +-$(QEMU_SYSTEM): $(VL_OBJS) ../libqemu_common.a libqemu.a +- $(CC) $(VL_LDFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) $(SDL_LIBS) $(COCOA_LIBS) $(VL_LIBS) ++$(QEMU_SYSTEM): $(VL_OBJS) ../libqemu_common.a libqemu.a ../bsd/libmath.a + $(CC) $(VL_LDFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) $(SDL_LIBS) $(COCOA_LIBS) $(VL_LIBS) ../bsd/libmath.a - cocoa.o: cocoa.m - $(CC) $(CFLAGS) $(CPPFLAGS) $(BASE_CFLAGS) -c -o $@ $< + depend: $(SRCS) Index: qemu/fpu/softfloat-native.c @@ -2,11 +2,16 @@ context is supported */ Index: files/patch-fpu-softfloat-native.c =================================================================== RCS file: /home/pcvs/ports/emulators/qemu-devel/files/patch-fpu-softfloat-native.c,v retrieving revision 1.2 diff -u -r1.2 patch-fpu-softfloat-native.c --- files/patch-fpu-softfloat-native.c 10 Mar 2007 17:03:05 -0000 1.2 +++ files/patch-fpu-softfloat-native.c 5 Jan 2008 16:52:26 -0000 @@ -14,4 +14,4 @@ +#endif } - float64 float64_round_to_int( float64 a STATUS_PARAM ) \ No newline at end of file + float64 float64_round_to_int( float64 a STATUS_PARAM ) Index: files/patch-hw-pxa2xx_gpio.c =================================================================== RCS file: /home/pcvs/ports/emulators/qemu-devel/files/patch-hw-pxa2xx_gpio.c,v retrieving revision 1.1 diff -u -r1.1 patch-hw-pxa2xx_gpio.c --- files/patch-hw-pxa2xx_gpio.c 9 Aug 2007 20:03:30 -0000 1.1 +++ files/patch-hw-pxa2xx_gpio.c 5 Jan 2008 19:25:16 -0000 @@ -1,11 +0,0 @@ -Index: qemu/hw/pxa2xx_gpio.c -@@ -152,6 +152,9 @@ - case GPDR: /* GPIO Pin-Direction registers */ - return s->dir[bank]; - -+ case GPSR: /* GPIO Pin-Output Set registers */ -+ return s->olevel[bank]; -+ - case GRER: /* GPIO Rising-Edge Detect Enable registers */ - return s->rising[bank]; - Index: files/patch-qemu-img.c =================================================================== RCS file: /home/pcvs/ports/emulators/qemu-devel/files/patch-qemu-img.c,v retrieving revision 1.2 diff -u -r1.2 patch-qemu-img.c --- files/patch-qemu-img.c 10 Mar 2007 17:03:05 -0000 1.2 +++ files/patch-qemu-img.c 5 Jan 2008 17:24:50 -0000 @@ -1,10 +1,10 @@ Index: qemu/qemu-img.c -@@ -134,7 +134,7 @@ +@@ -90,7 +90,7 @@ "Command syntax:\n" - " create [-e] [-b base_image] [-f fmt] filename [size]\n" + " create [-e] [-6] [-b base_image] [-f fmt] filename [size]\n" " commit [-f fmt] filename\n" -- " convert [-c] [-e] [-f fmt] filename [-O output_fmt] output_filename\n" -+ " convert [-c] [-e] [-f fmt] [-O output_fmt] filename output_filename\n" +- " convert [-c] [-e] [-6] [-f fmt] filename [filename2 [...]] [-O output_fmt] output_filename\n" ++ " convert [-c] [-e] [-6] [-f fmt] [-O output_fmt] filename [filename2 [...]] output_filename\n" " info [-f fmt] filename\n" "\n" "Command parameters:\n" Index: files/patch-qemu-img.texi =================================================================== RCS file: /home/pcvs/ports/emulators/qemu-devel/files/patch-qemu-img.texi,v retrieving revision 1.2 diff -u -r1.2 patch-qemu-img.texi --- files/patch-qemu-img.texi 10 Mar 2007 17:03:05 -0000 1.2 +++ files/patch-qemu-img.texi 5 Jan 2008 17:30:08 -0000 @@ -1,10 +1,10 @@ Index: qemu/qemu-img.texi @@ -10,7 +10,7 @@ @table @option - @item create [-e] [-b @var{base_image}] [-f @var{fmt}] @var{filename} [@var{size}] + @item create [-e] [-6] [-b @var{base_image}] [-f @var{fmt}] @var{filename} [@var{size}] @item commit [-f @var{fmt}] @var{filename} --@item convert [-c] [-e] [-f @var{fmt}] @var{filename} [-O @var{output_fmt}] @var{output_filename} -+@item convert [-c] [-e] [-f @var{fmt}] [-O @var{output_fmt}] @var{filename} @var{output_filename} +-@item convert [-c] [-e] [-6] [-f @var{fmt}] @var{filename} [-O @var{output_fmt}] @var{output_filename} ++@item convert [-c] [-e] [-6] [-f @var{fmt}] [-O @var{output_fmt}] @var{filename} @var{output_filename} @item info [-f @var{fmt}] @var{filename} @end table Index: files/patch-tlb-vuln =================================================================== RCS file: /home/pcvs/ports/emulators/qemu-devel/files/patch-tlb-vuln,v retrieving revision 1.1 diff -u -r1.1 patch-tlb-vuln --- files/patch-tlb-vuln 13 Dec 2007 01:10:52 -0000 1.1 +++ files/patch-tlb-vuln 5 Jan 2008 19:25:21 -0000 @@ -1,92 +0,0 @@ -Index: qemu/cpu-exec.c -diff -u qemu/cpu-exec.c:1.128 qemu/cpu-exec.c:1.129 ---- qemu/cpu-exec.c:1.128 Sun Dec 2 06:18:23 2007 -+++ qemu/cpu-exec.c Tue Dec 11 19:35:45 2007 -@@ -133,7 +133,7 @@ - tb->tc_ptr = tc_ptr; - tb->cs_base = cs_base; - tb->flags = flags; -- cpu_gen_code(env, tb, CODE_GEN_MAX_SIZE, &code_gen_size); -+ cpu_gen_code(env, tb, &code_gen_size); - code_gen_ptr = (void *)(((unsigned long)code_gen_ptr + code_gen_size + CODE_GEN_ALIGN - 1) & ~(CODE_GEN_ALIGN - 1)); - - /* check next page if needed */ -Index: qemu/exec-all.h -diff -u qemu/exec-all.h:1.72 qemu/exec-all.h:1.73 ---- qemu/exec-all.h:1.72 Mon Nov 19 00:38:33 2007 -+++ qemu/exec-all.h Tue Dec 11 19:35:45 2007 -@@ -64,8 +64,9 @@ - int gen_intermediate_code(CPUState *env, struct TranslationBlock *tb); - int gen_intermediate_code_pc(CPUState *env, struct TranslationBlock *tb); - void dump_ops(const uint16_t *opc_buf, const uint32_t *opparam_buf); -+unsigned long code_gen_max_block_size(void); - int cpu_gen_code(CPUState *env, struct TranslationBlock *tb, -- int max_code_size, int *gen_code_size_ptr); -+ int *gen_code_size_ptr); - int cpu_restore_state(struct TranslationBlock *tb, - CPUState *env, unsigned long searched_pc, - void *puc); -@@ -94,7 +95,6 @@ - return tlb_set_page_exec(env, vaddr, paddr, prot, mmu_idx, is_softmmu); - } - --#define CODE_GEN_MAX_SIZE 65536 - #define CODE_GEN_ALIGN 16 /* must be >= of the size of a icache line */ - - #define CODE_GEN_PHYS_HASH_BITS 15 -Index: qemu/exec.c -diff -u qemu/exec.c:1.117 qemu/exec.c:1.118 ---- qemu/exec.c:1.117 Sun Dec 9 02:22:56 2007 -+++ qemu/exec.c Tue Dec 11 19:35:45 2007 -@@ -56,7 +56,7 @@ - #endif - - /* threshold to flush the translated code buffer */ --#define CODE_GEN_BUFFER_MAX_SIZE (CODE_GEN_BUFFER_SIZE - CODE_GEN_MAX_SIZE) -+#define CODE_GEN_BUFFER_MAX_SIZE (CODE_GEN_BUFFER_SIZE - code_gen_max_block_size()) - - #define SMC_BITMAP_USE_THRESHOLD 10 - -@@ -622,7 +622,7 @@ - tb->cs_base = cs_base; - tb->flags = flags; - tb->cflags = cflags; -- cpu_gen_code(env, tb, CODE_GEN_MAX_SIZE, &code_gen_size); -+ cpu_gen_code(env, tb, &code_gen_size); - code_gen_ptr = (void *)(((unsigned long)code_gen_ptr + code_gen_size + CODE_GEN_ALIGN - 1) & ~(CODE_GEN_ALIGN - 1)); - - /* check next page if needed */ -Index: qemu/translate-all.c -diff -u qemu/translate-all.c:1.23 qemu/translate-all.c:1.24 ---- qemu/translate-all.c:1.23 Sun Dec 2 06:10:02 2007 -+++ qemu/translate-all.c Tue Dec 11 19:35:45 2007 -@@ -132,14 +132,27 @@ - } - } - -+unsigned long code_gen_max_block_size(void) -+{ -+ static unsigned long max; -+ -+ if (max == 0) { -+#define DEF(s, n, copy_size) max = copy_size > max? copy_size : max; -+#include "opc.h" -+#undef DEF -+ max *= OPC_MAX_SIZE; -+ } -+ -+ return max; -+} -+ - /* return non zero if the very first instruction is invalid so that - the virtual CPU can trigger an exception. - - '*gen_code_size_ptr' contains the size of the generated code (host - code). - */ --int cpu_gen_code(CPUState *env, TranslationBlock *tb, -- int max_code_size, int *gen_code_size_ptr) -+int cpu_gen_code(CPUState *env, TranslationBlock *tb, int *gen_code_size_ptr) - { - uint8_t *gen_code_buf; - int gen_code_size; Index: files/patch-vl.c =================================================================== RCS file: /home/pcvs/ports/emulators/qemu-devel/files/patch-vl.c,v retrieving revision 1.8 diff -u -r1.8 patch-vl.c --- files/patch-vl.c 10 Jul 2007 20:24:59 -0000 1.8 +++ files/patch-vl.c 5 Jan 2008 16:52:27 -0000 @@ -18,7 +18,7 @@ struct termios tty; char slave_name[1024]; int master_fd, slave_fd; - + -#if defined(__linux__) +#if defined(__linux__) || defined(__FreeBSD__) /* Not satisfying */ Index: files/patch-Makefile.target @@ -0,0 +1,37 @@ +Index: qemu/Makefile.target +@@ -139,11 +139,11 @@ + endif + endif + +-ifeq ($(ARCH),x86_64) +- ifneq ($(CONFIG_SOLARIS),yes) +- BASE_LDFLAGS+=-Wl,-T,$(SRC_PATH)/$(ARCH).ld +- endif +-endif ++#ifeq ($(ARCH),x86_64) ++# ifneq ($(CONFIG_SOLARIS),yes) ++# BASE_LDFLAGS+=-Wl,-T,$(SRC_PATH)/$(ARCH).ld ++# endif ++#endif + + ifeq ($(ARCH),ppc) + CPPFLAGS+= -D__powerpc__ +@@ -560,12 +560,12 @@ + endif + endif + +-ifeq ($(ARCH),x86_64) +- VL_LDFLAGS+=-m64 +- ifneq ($(CONFIG_SOLARIS),yes) +- VL_LDFLAGS+=-Wl,-T,$(SRC_PATH)/$(ARCH).ld +- endif +-endif ++#ifeq ($(ARCH),x86_64) ++# VL_LDFLAGS+=-m64 ++# ifneq ($(CONFIG_SOLARIS),yes) ++# VL_LDFLAGS+=-Wl,-T,$(SRC_PATH)/$(ARCH).ld ++# endif ++#endif + + ifdef CONFIG_WIN32 + SDL_LIBS := $(filter-out -mwindows, $(SDL_LIBS)) -mconsole