Failure to build (ports) vmware2 in 4-9-PRERELEASE
Andrew Sparrow
spadger at spadger.best.vwh.net
Mon Sep 29 14:06:32 PDT 2003
On Tue, Sep 30, 2003 at 03:20:03AM +0700, Max Khon wrote:
> Hello!
>
> On Tue, Sep 30, 2003 at 02:58:05AM +0700, Max Khon wrote:
>
> > > > I got the following errors in re-building emulators/vmware2. (need to
> > > > change the netgraph bridging interface)
> > > > Anyone experiencing the similar symptoms?
> > >
> > > The PAE import broke vmware2; no ETA on a fix that I've heard. I
> > > suggest sticking with RELENG_4_8.
> >
> > Attached patch works for me.
> > (run "patch <Makefile.diff" in ports/emulators/vmware2).
> > I would like to commit it after maintainer approval.
>
> Oops, parenthesis confuse arithmetic expression parser in
> 4.8-RELEASE and earlier. Corrected patch (without parenthesis) is attached.
>
The patches that Anders Nordby (thanks Anders!!) supplied in the
commentary for PR55928 still work fine for me, on a -PRERELEASE of
Sep 18th):
diff -Nur vmware2.old/Makefile vmware2/Makefile
--- vmware2.old/Makefile Sun Apr 13 11:55:43 2003
+++ vmware2/Makefile Mon Sep 8 09:22:11 2003
@@ -99,6 +99,8 @@
.endif
.if ${OSVERSION} >= 500027
${CAT} ${FILESDIR}/pmap.patch | (cd ${WRKSRC} && patch) > /dev/null 2>&1
+.elseif ${OSVERSION} < 500000 && ${OSVERSION} >= 480101
+ ${CAT} ${FILESDIR}/pmap.patch-stable | (cd ${WRKSRC} && patch) > /dev/null 2>&1
.endif
${CP} ${FILESDIR}/Makefile ${WRKSRC}
${CP} ${FILESDIR}/Makefile.vmmon ${WRKSRC}/vmmon-only/Makefile
diff -Nur vmware2.old/files/pmap.patch-stable vmware2/files/pmap.patch-stable
--- vmware2.old/files/pmap.patch-stable Thu Jan 1 01:00:00 1970
+++ vmware2/files/pmap.patch-stable Mon Sep 8 09:17:55 2003
@@ -0,0 +1,16 @@
+--- vmmon-only/freebsd/hostif.c.orig Mon Sep 8 09:10:39 2003
++++ vmmon-only/freebsd/hostif.c Mon Sep 8 09:11:28 2003
+@@ -181,11 +181,11 @@
+ {
+ #define DEB(x)
+ caddr_t addr = (caddr_t)VPN_2_VA(ppn);
+- pt_entry_t pteptr = (pt_entry_t)vtopte(addr);
++ pt_entry_t pteptr = (pt_entry_t)vtopte((unsigned long) addr);
+ PTE pte;
+
+ DEB(printf("FindMPN: for page %d address %p(phys %p) pteptr %p", ppn, addr, (caddr_t)vtophys(addr), pteptr));
+- pte=*pteptr;
++ pte=*((caddr_t)pteptr);
+ DEB(printf("(0x%08x)\n", pte));
+ if (pte & PTE_P) {
+ return PTE_2_PFN(pte);
More information about the freebsd-stable
mailing list