ports/87086: small emulators/qemu update
Juergen Lock
nox at jelal.kn-bremen.de
Fri Oct 7 19:00:36 UTC 2005
>Number: 87086
>Category: ports
>Synopsis: small emulators/qemu update
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: maintainer-update
>Submitter-Id: current-users
>Arrival-Date: Fri Oct 07 19:00:34 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator: Juergen Lock
>Release: FreeBSD 5.3-RELEASE-p20 i386
>Organization:
me? organized??
>Environment:
System: FreeBSD saturn 5.3-RELEASE-p20 FreeBSD 5.3-RELEASE-p20 #1: Fri Jul 29 14:59:03 CEST 2005 nox at saturn:/usr/home/nox/src5/usr/src/sys/i386/compile/NEPTUN i386
>Description:
- base cc works on 5.x/amd64 now (thanks to Klaus-J. Wolf and pav@
for the heads-up)
- fix the occasional bogus EBUSY with /dev/kqemu on >= 5.x (thanx
to Manuel Stuehn for the report)
(use the old distfile as Fabrice still hansn't commited anything
since then)
>How-To-Repeat:
n/a
>Fix:
Index: Makefile
===================================================================
RCS file: /home/ncvs/ports/emulators/qemu/Makefile,v
retrieving revision 1.32
diff -u -r1.32 Makefile
--- Makefile 1 Oct 2005 17:05:06 -0000 1.32
+++ Makefile 7 Oct 2005 18:36:05 -0000
@@ -7,7 +7,7 @@
PORTNAME= qemu
PORTVERSION= 0.7.2s.20050909
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= emulators
MASTER_SITES= http://www.qemu.org/ \
http://people.fruitsalad.org/nox/qemu/ \
@@ -52,22 +52,12 @@
PLIST_SUB= WITH_KQEMU="@comment "
.endif
-# gcc34 (system cc on 5.x now) has problems with qemu on amd64
-# (doesnt build target-i386/op.c), try the one in ports which is newer
.include <bsd.port.pre.mk>
.if ${ARCH} == "amd64"
ARCH= x86_64
-.if ${OSVERSION} >= 502126 && ${OSVERSION} <= 600029
-BUILD_DEPENDS+= gcc34:${PORTSDIR}/lang/gcc34
-GCCVERSION= 030402
-CC= gcc34
-.else
-USE_GCC= 3.4
.endif
-.else
USE_GCC= 3.4
-.endif
.if defined(WITH_KQEMU) && !exists(${SRC_BASE}/sys/Makefile)
IGNORE= kqemu requires kernel source to be installed
Index: files/kqemu-freebsd-patch
===================================================================
RCS file: /home/ncvs/ports/emulators/qemu/files/kqemu-freebsd-patch,v
retrieving revision 1.3
diff -u -r1.3 kqemu-freebsd-patch
--- files/kqemu-freebsd-patch 1 Oct 2005 17:03:03 -0000 1.3
+++ files/kqemu-freebsd-patch 3 Oct 2005 21:15:27 -0000
@@ -236,7 +236,7 @@
static char log_buf[4096];
-@@ -176,47 +227,155 @@
+@@ -176,47 +227,159 @@
va_end(ap);
}
@@ -359,7 +359,11 @@
+#endif
struct kqemu_instance *ks;
+
++#if __FreeBSD_version >= 500000
++ if (kqemu_ref_count >= KQEMU_MAX_INSTANCES)
++#else
+ if (dev->si_drv1 || kqemu_ref_count >= KQEMU_MAX_INSTANCES)
++#endif
+ return(EBUSY);
+
+ if ((flags & (FREAD|FWRITE)) == FREAD)
@@ -397,7 +401,7 @@
{
int error = 0;
int ret;
-@@ -231,8 +390,9 @@
+@@ -231,8 +394,9 @@
break;
}
d1 = *(struct kqemu_init *)addr;
@@ -409,7 +413,7 @@
if (s == NULL) {
error = ENOMEM;
break;
-@@ -248,9 +408,16 @@
+@@ -248,9 +412,16 @@
}
ctx = kqemu_get_cpu_state(s);
*ctx = *(struct kqemu_cpu_state *)addr;
@@ -426,7 +430,7 @@
*(struct kqemu_cpu_state *)addr = *ctx;
break;
}
-@@ -265,10 +432,22 @@
+@@ -265,10 +436,22 @@
/* ARGSUSED */
static int
@@ -450,7 +454,7 @@
}
/* ARGSUSED */
-@@ -276,15 +455,55 @@
+@@ -276,15 +459,55 @@
kqemu_modevent(module_t mod __unused, int type, void *data __unused)
{
int error = 0;
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list