diff --git a/emulators/open-vm-tools/Makefile b/emulators/open-vm-tools/Makefile index e23eb0d8a213..e243cf0085bf 100644 --- a/emulators/open-vm-tools/Makefile +++ b/emulators/open-vm-tools/Makefile @@ -1,91 +1,92 @@ # Created by: mbr@FreeBSD.org PORTNAME= open-vm-tools PORTVERSION= 11.3.5 +PORTREVISION= 1 DISTVERSIONPREFIX= stable- PORTEPOCH= 2 CATEGORIES= emulators MAINTAINER= garga@FreeBSD.org COMMENT= Open VMware tools for FreeBSD VMware guests ${${FLAVOR}_COMMENT} LICENSE= LGPL21 LICENSE_FILE= ${WRKSRC}/COPYING ONLY_FOR_ARCHS= amd64 aarch64 i386 LIB_DEPENDS= libdnet.so:net/libdnet \ libmspack.so:archivers/libmspack FLAVORS= default nox11 default_CONFLICTS_INSTALL= open-vm-tools-nox11 nox11_PKGNAMESUFFIX= -nox11 nox11_CONFLICTS_INSTALL= open-vm-tools nox11_COMMENT= (without X11) USES= autoreconf gettext-runtime gnome kmod libtool localbase \ pathfix pkgconfig USE_GITHUB= yes GH_ACCOUNT= vmware USE_GNOME= glib20 USE_LDCONFIG= yes USE_RC_SUBR= vmware-guestd vmware-kmod GNU_CONFIGURE= yes CONFIGURE_ARGS+=--disable-vgauth \ --sysconfdir=${PREFIX}/etc \ --without-icu CONFIGURE_ENV+= SYSDIR=${SRC_BASE}/sys INSTALL_TARGET= install-strip CPPFLAGS+= -Wno-deprecated-declarations SSP_UNSAFE= kernel module does not support ssp WRKSRC_SUBDIR= open-vm-tools PORTDOCS= * OPTIONS_DEFINE= DOCS FUSE LIBNOTIFY OPENSSL X11 OPTIONS_DEFAULT=DOCS FUSE LIBNOTIFY OPENSSL X11 .if ${FLAVOR:U} == nox11 OPTIONS_EXCLUDE:= LIBNOTIFY X11 .endif OPTIONS_SUB= LIBNOTIFY_DESC= Desktop notification support DOCS_BUILD_DEPENDS= doxygen:devel/doxygen DOCS_CONFIGURE_ENABLE= docs FUSE_USES= fuse LIBNOTIFY_LIB_DEPENDS= libnotify.so:devel/libnotify OPENSSL_CONFIGURE_WITH= ssl X11_LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 X11_USES= xorg X11_USE= GNOME=gdkpixbuf2,gtk30,gtkmm30 \ XORG=ice,sm,x11,xext,xi,xinerama,xorgproto,xrandr,xrender,xtst X11_CONFIGURE_WITH= gtk3 gtkmm3 x post-patch: @${REINPLACE_CMD} -e "s@%%PREFIX%%@${PREFIX}@"\ ${WRKSRC}/lib/guestApp/guestApp.c post-build: cd ${WRKSRC}/modules && ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_ARGS} post-install: ${MKDIR} ${STAGEDIR}${PREFIX}/lib/vmware-tools/modules/drivers ${MKDIR} ${STAGEDIR}${PREFIX}/lib/vmware-tools/modules/input ${INSTALL_DATA} ${WRKSRC}/modules/freebsd/vmblock.ko \ ${STAGEDIR}${PREFIX}/lib/vmware-tools/modules/drivers/vmblock.ko ${INSTALL_DATA} ${WRKSRC}/modules/freebsd/vmmemctl.ko \ ${STAGEDIR}${PREFIX}/lib/vmware-tools/modules/drivers/vmmemctl.ko ${MKDIR} ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${WRKSRC}/tools.conf \ ${STAGEDIR}${DATADIR}/tools.conf.sample ${MKDIR} ${STAGEDIR}${PREFIX}/share/open-vm-tools/scripts/vmware/ ${MKDIR} ${STAGEDIR}${PREFIX}/share/open-vm-tools/tests/ .include diff --git a/emulators/open-vm-tools/files/patch-modules_freebsd_vmblock_vfsops.c b/emulators/open-vm-tools/files/patch-modules_freebsd_vmblock_vfsops.c index 29639a7ac6bf..1b05ca6c1e9c 100644 --- a/emulators/open-vm-tools/files/patch-modules_freebsd_vmblock_vfsops.c +++ b/emulators/open-vm-tools/files/patch-modules_freebsd_vmblock_vfsops.c @@ -1,26 +1,38 @@ ---- modules/freebsd/vmblock/vfsops.c.orig 2018-03-30 18:44:35 UTC +--- modules/freebsd/vmblock/vfsops.c.orig 2021-09-24 04:19:18 UTC +++ modules/freebsd/vmblock/vfsops.c @@ -124,6 +124,11 @@ VMBlockVFSMount(struct mount *mp, // IN: mount( char *pathname; int len, error = 0; +#if __FreeBSD_version >= 800087 + struct thread *td; + td = curthread; +#endif + VMBLOCKDEBUG("VMBlockVFSMount(mp = %p)\n", (void *)mp); /* -@@ -276,6 +281,11 @@ VMBlockVFSUnmount(struct mount *mp, // IN: filesyst +@@ -171,7 +176,11 @@ VMBlockVFSMount(struct mount *mp, // IN: mount( + * Find lower node and lock if not already locked. + */ + ++#if __FreeBSD_version >= 1400043 ++ NDINIT(ndp, LOOKUP, FOLLOW|LOCKLEAF, UIO_SYSSPACE, target); ++#else + NDINIT(ndp, LOOKUP, FOLLOW|LOCKLEAF, UIO_SYSSPACE, target, compat_td); ++#endif + error = namei(ndp); + if (error) { + NDFREE(ndp, 0); +@@ -276,6 +285,11 @@ VMBlockVFSUnmount(struct mount *mp, // IN: filesyst void *mntdata; int error; int flags = 0, removed = 0; + +#if __FreeBSD_version >= 800087 + struct thread *td; + td = curthread; +#endif VMBLOCKDEBUG("VMBlockVFSUnmount: mp = %p\n", (void *)mp);