Comments below: On Tue, Mar 18, 2008 at 12:13 PM, Gelsema, P (Patrick) <[EMAIL PROTECTED]> wrote: > On Tue, March 18, 2008 23:36, Alexander Sack wrote: > > I believe the issue is that MNT_NODEV which should be defined in > > /usr/include/sys/mount.h was deprecated and removed from FreeBSD: > > > > http://ftp.cz.freebsd.org/pub/FreeBSD-cvs/gnats/conf/79715 > > > > At line 42 in hgfsmounter.c, add > > > > # define MNT_NODEV 0 > > > > Then rebuild. SHould work fine now. > > > > I configured my build environment via the README with ./configure > > LDFLAGS="/usr/local/lib" etc. > > > Done > > #./configure LDFLAGS="/usr/local/lib" --without-x > #make > #make install > > That all goes ok > But when I run #make modules I get an error > > wolverine# make modules > make -C modules > make -C "freebsd/vmmemctl" > make -C "freebsd/vmxnet" > cc -O2 -fno-strict-aliasing -pipe -D_KERNEL -DKLD_MODULE -std=c99 > -nostdinc -I. -I@ -I@/contrib/altq -finline-limit=8000 --param > inline-unit-growth=100 --param large-function-growth=1000 -fno-common > -mno-align-long-strings -mpreferred-stack-boundary=2 -mno-mmx -mno-3dnow > -mno-sse -mno-sse2 -mno-sse3 -ffreestanding -Wall -Wredundant-decls > -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith > -Winline -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions -c > if_vxn.c > if_vxn.c: In function 'vxn_attach': > if_vxn.c:302: warning: passing argument 4 of 'bus_setup_intr' from > incompatible pointer type > if_vxn.c:302: warning: passing argument 5 of 'bus_setup_intr' from > incompatible pointer type > if_vxn.c:302: error: too few arguments to function 'bus_setup_intr' > if_vxn.c:378: error: 'struct arpcom' has no member named '_ac_enaddr' > if_vxn.c:385: error: 'struct arpcom' has no member named '_ac_enaddr' > *** Error code 1 > > Stop in /tmp/open-vm-tools-2008.03.03-79993/modules/freebsd/vmxnet. > *** Error code 1 > > Any ideas?
bus_setup_intr() kernel API seems to have either changed or handled differently in 7.0. I believe you can add a NULL after the flags (INTR_MPSAFE) which tells BSD to use the standard interrupt handler instead of a top-level handler. _ac_enaddr is because arpcom as defined in net/if_arp.h no longer exists. Typically the protocol bits are stuffed in if_l2com (layer 2). I made the macro in net_compat.h #define VXN_SC2ENADDR(softc) (IF_LLADDR(VXN_SC2IFP(softc)) and then removed the "&" from both references in if_vxn.c as this macro already returns a pointer to char. That got me past this problem. Btw, this isn't an official port since I didn't really rectify the net_compat.h stuff (I suppose you could make the 600000 to 700055, etc.). I'm still getting some further issues with vnodeops and vfsops with some modules (I believe vops_lcok should be vops_lock1) but I don't know about the other problem. -aps -- "What lies behind us and what lies in front of us is of little concern to what lies within us." -Ralph Waldo Emerson _______________________________________________ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "[EMAIL PROTECTED]"