ports/177712: I have updated emulators/open-vm-tools to version 9.2.2

Douglas Carmichael dcarmich at dcarmichael.net
Mon Apr 8 16:30:01 UTC 2013


>Number:         177712
>Category:       ports
>Synopsis:       I have updated emulators/open-vm-tools to version 9.2.2
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Mon Apr 08 16:30:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     Douglas Carmichael
>Release:        9.1-RELEASE
>Organization:
n/a
>Environment:
FreeBSD dc-freebsd 9.1-RELEASE-p1 FreeBSD 9.1-RELEASE-p1 #1: Tue Feb 19 17:44:00 CST 2013     root at dc-freebsd:/usr/src/sys/amd64/compile/VMWARE91-64  amd64

>Description:
I have updated emulators/open-vm-tools to version 9.2.2.

This included adding this simple patch (http://sourceforge.net/tracker/index.php?func=detail&aid=3584833&group_id=204462&atid=989708) to enable the vmhgfs module to build.

I am able to make drag-and-drop work from FreeBSD (on Xfce 4.10) to the Mac OS (with VMware Fusion 5.0.3), but dragging a file to the VM results in a 'Error when getting information for file' message (even though the file successfully transfers to //tmp/VMWareDnD.)

But, shutdown/restart of the VM from the menu works.


>How-To-Repeat:
n/a
>Fix:
A patch is attached.

Patch attached with submission follows:

diff -ruN open-vm-tools.orig/Makefile open-vm-tools/Makefile
--- open-vm-tools.orig/Makefile	2013-04-08 10:04:07.000000000 -0500
+++ open-vm-tools/Makefile	2013-04-08 10:44:28.000000000 -0500
@@ -6,7 +6,7 @@
 PORTREVISION=		3
 PORTEPOCH=		1
 CATEGORIES=		emulators kld
-MASTER_SITES=		SF/${PORTNAME}/${PORTNAME}/stable-8.6.x
+MASTER_SITES=		SF/${PORTNAME}/${PORTNAME}/stable-9.2.x
 DISTNAME=		open-vm-tools-${RELEASE_VER}-${BUILD_VER}
 
 MAINTAINER=		swills at FreeBSD.org
@@ -15,8 +15,8 @@
 LICENSE=		LGPL21
 LICENSE_FILE=		${WRKSRC}/COPYING
 
-RELEASE_VER=		8.6.0
-BUILD_VER=		425873
+RELEASE_VER=		9.2.2
+BUILD_VER=		893683
 
 WRKSRC=			${WRKDIR}/open-vm-tools-${RELEASE_VER}-${BUILD_VER}
 GNU_CONFIGURE=		yes
@@ -34,12 +34,7 @@
 .if !defined(WITHOUT_LIBNOTIFY)
 LIB_DEPENDS+=		notify.4:${PORTSDIR}/devel/libnotify
 .endif
-.if defined(WITH_UNITY)
-CONFIGURE_ENV+=		CUSTOM_URIPARSER_CPPFLAGS="-I${LOCALBASE}/include/uriparser"
-LIB_DEPENDS+=		uriparser.1:${PORTSDIR}/net/uriparser
-.else
-CONFIGURE_ARGS+=	--disable-unity
-.endif
+
 LIB_DEPENDS+=		gtkmm-2.4:${PORTSDIR}/x11-toolkits/gtkmm24
 CONFIGURE_ARGS+=	--with-x
 LDFLAGS+=		-L${LOCALBASE}/lib
diff -ruN open-vm-tools.orig/distinfo open-vm-tools/distinfo
--- open-vm-tools.orig/distinfo	2013-04-08 10:04:07.000000000 -0500
+++ open-vm-tools/distinfo	2013-04-08 10:10:34.000000000 -0500
@@ -1,2 +1,2 @@
-SHA256 (open-vm-tools-8.6.0-425873.tar.gz) = 205768023fdf77962684f275f74c98644fba97961cb2afaa0a7d8aec5d074ebf
-SIZE (open-vm-tools-8.6.0-425873.tar.gz) = 3648242
+SHA256 (open-vm-tools-9.2.2-893683.tar.gz) = 1ae795e75bf4b38185f39083b8075686d3bab4c1222f4e39c863aeccb2f5f387
+SIZE (open-vm-tools-9.2.2-893683.tar.gz) = 3561799
diff -ruN open-vm-tools.orig/files/patch-appUtilX11.c open-vm-tools/files/patch-appUtilX11.c
--- open-vm-tools.orig/files/patch-appUtilX11.c	2013-04-08 10:04:07.000000000 -0500
+++ open-vm-tools/files/patch-appUtilX11.c	1969-12-31 18:00:00.000000000 -0600
@@ -1,12 +0,0 @@
---- ./lib/appUtil/appUtilX11.c.orig	2009-02-18 17:02:41.000000000 +0900
-+++ ./lib/appUtil/appUtilX11.c	2009-03-24 18:54:18.000000000 +0900
-@@ -26,6 +26,9 @@
- #include <stdlib.h>
- #include <string.h>
- #include <unistd.h>
-+#if defined(__FreeBSD__)
-+#include <libgen.h>
-+#endif
- 
- #include "vmware.h"
- #include "str.h"
diff -ruN open-vm-tools.orig/files/patch-freebsd-9 open-vm-tools/files/patch-freebsd-9
--- open-vm-tools.orig/files/patch-freebsd-9	2013-04-08 10:04:07.000000000 -0500
+++ open-vm-tools/files/patch-freebsd-9	1969-12-31 18:00:00.000000000 -0600
@@ -1,38 +0,0 @@
---- modules/freebsd/vmxnet/if_vxn.c.orig	2009-12-31 09:34:42.000000000 +0100
-+++ modules/freebsd/vmxnet/if_vxn.c	2009-12-31 09:36:56.000000000 +0100
-@@ -134,7 +134,9 @@
- static void vxn_init(void *);
- static void vxn_start(struct ifnet *);
- static int vxn_ioctl(struct ifnet *, u_long, caddr_t);
-+#if __FreeBSD_version <= 900000
- static void vxn_watchdog(struct ifnet *);
-+#endif
- static void vxn_intr (void *);
- 
- static void vxn_rx(vxn_softc_t *sc);
-@@ -383,7 +385,9 @@
-    ifp->if_ioctl = vxn_ioctl;
-    ifp->if_output = ether_output;
-    ifp->if_start = vxn_start;
-+#if __FreeBSD_version <= 900000
-    ifp->if_watchdog = vxn_watchdog;
-+#endif
-    ifp->if_init = vxn_init;
-    ifp->if_baudrate = 1000000000;
-    ifp->if_snd.ifq_maxlen = sc->vxn_num_tx_bufs;
-@@ -1018,6 +1022,7 @@
-    return error;
- }
- 
-+#if __FreeBSD_version <= 900000
- /*
-  *-----------------------------------------------------------------------------
-  * vxn_watchdog --
-@@ -1035,6 +1040,7 @@
- {
-    printf("vxn%d: watchdog\n", VXN_IF_UNIT(ifp));
- }
-+#endif
- 
- /*
-  *-----------------------------------------------------------------------------
diff -ruN open-vm-tools.orig/files/patch-services-Makefile open-vm-tools/files/patch-services-Makefile
--- open-vm-tools.orig/files/patch-services-Makefile	2013-04-08 10:04:07.000000000 -0500
+++ open-vm-tools/files/patch-services-Makefile	1969-12-31 18:00:00.000000000 -0600
@@ -1,22 +0,0 @@
---- services/Makefile.am.orig	2009-02-28 20:48:46.000000000 +0100
-+++ services/Makefile.am	2009-02-28 20:49:28.000000000 +0100
-@@ -20,6 +20,5 @@
- SUBDIRS += plugins
- 
- install-exec-local:
--	mkdir -p $(DESTDIR)/etc/vmware-tools
--	ln -sf `dirname $(VMSVC_PLUGIN_INSTALLDIR)` $(DESTDIR)/etc/vmware-tools/plugins
-+	mkdir -p $(prefix)/etc/vmware-tools
- 
---- services/Makefile.in.orig	2009-02-28 20:48:52.000000000 +0100
-+++ services/Makefile.in	2009-02-28 20:49:46.000000000 +0100
-@@ -642,8 +642,7 @@
- 
- 
- install-exec-local:
--	mkdir -p $(DESTDIR)/etc/vmware-tools
--	ln -sf `dirname $(VMSVC_PLUGIN_INSTALLDIR)` $(DESTDIR)/etc/vmware-tools/plugins
-+	mkdir -p $(prefix)/etc/vmware-tools
- 
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
- # Otherwise a system limit (for SysV at least) may be exceeded.
diff -ruN open-vm-tools.orig/files/patch-vmblock-vnops.c open-vm-tools/files/patch-vmblock-vnops.c
--- open-vm-tools.orig/files/patch-vmblock-vnops.c	2013-04-08 10:04:07.000000000 -0500
+++ open-vm-tools/files/patch-vmblock-vnops.c	1969-12-31 18:00:00.000000000 -0600
@@ -1,24 +0,0 @@
---- modules/freebsd/vmblock/vnops.c.orig	2011-09-21 14:25:15.000000000 -0400
-+++ modules/freebsd/vmblock/vnops.c	2012-06-28 20:51:22.897344202 -0400
-@@ -1362,7 +1362,9 @@
- */
- {
-    struct vnode *vp = ap->a_vp;
-+#if __FreeBSD_version < 1000000
-    struct thread *td = ap->a_td;
-+#endif
- 
-    vp->v_object = NULL;
- 
-@@ -1370,7 +1372,11 @@
-     * If this is the last reference, then free up the vnode so as not to
-     * tie up the lower vnode.
-     */
-+#if __FreeBSD_version < 1000000
-    vrecycle(vp, td);
-+#else
-+   vrecycle(vp);
-+#endif
- 
-    return 0;
- }
diff -ruN open-vm-tools.orig/files/patch-vmhgfs-Makefile open-vm-tools/files/patch-vmhgfs-Makefile
--- open-vm-tools.orig/files/patch-vmhgfs-Makefile	2013-04-08 10:04:07.000000000 -0500
+++ open-vm-tools/files/patch-vmhgfs-Makefile	2013-04-08 10:36:06.000000000 -0500
@@ -1,27 +1,51 @@
---- ./modules/freebsd/vmhgfs/Makefile.orig	2010-10-20 05:19:54.000000000 +0900
-+++ ./modules/freebsd/vmhgfs/Makefile	2010-11-11 23:06:07.000000000 +0900
-@@ -90,22 +90,7 @@
-    CFLAGS += -Ishared
- .endif
- 
--#
--# FreeBSD's kernel module build system defines a bunch of additional warning
--# flags for the compiler in addition to -Wall -Werror.  However, some of these,
--# like -Wredundant-decls, are overkill.  To get around this, I copied their list
--# of warning flags, but explicitly disabled a few.
--#
--CWARNFLAGS := -Wall
--CWARNFLAGS += -Werror
--CWARNFLAGS += -Wno-redundant-decls
--CWARNFLAGS += -Wnested-externs
--CWARNFLAGS += -Wstrict-prototypes
--CWARNFLAGS += -Wno-missing-prototypes
--CWARNFLAGS += -Wpointer-arith
--CWARNFLAGS += -Winline
--CWARNFLAGS += -Wcast-qual
--
- EXPORT_SYMS = NO
- 
-+.include <bsd.own.mk>
- .include <bsd.kmod.mk>
-
+*** modules/freebsd/vmhgfs/Makefile.orig	Mon Apr  8 10:33:49 2013
+--- modules/freebsd/vmhgfs/Makefile	Mon Apr  8 10:35:45 2013
+***************
+*** 47,53 ****
+  .endif
+  
+  COMMON_HGFS_SRCS := debug.c
+! COMMON_HGFS_SRCS := bdhandler.c
+  COMMON_HGFS_SRCS += request.c
+  COMMON_HGFS_SRCS += worker.c
+  COMMON_HGFS_SRCS += fsutil.c
+--- 47,53 ----
+  .endif
+  
+  COMMON_HGFS_SRCS := debug.c
+! COMMON_HGFS_SRCS += bdhandler.c
+  COMMON_HGFS_SRCS += request.c
+  COMMON_HGFS_SRCS += worker.c
+  COMMON_HGFS_SRCS += fsutil.c
+***************
+*** 93,114 ****
+     CFLAGS += -Ishared
+  .endif
+  
+- #
+- # FreeBSD's kernel module build system defines a bunch of additional warning
+- # flags for the compiler in addition to -Wall -Werror.  However, some of these,
+- # like -Wredundant-decls, are overkill.  To get around this, I copied their list
+- # of warning flags, but explicitly disabled a few.
+- #
+- CWARNFLAGS := -Wall
+- CWARNFLAGS += -Werror
+- CWARNFLAGS += -Wno-redundant-decls
+- CWARNFLAGS += -Wnested-externs
+- CWARNFLAGS += -Wstrict-prototypes
+- CWARNFLAGS += -Wno-missing-prototypes
+- CWARNFLAGS += -Wpointer-arith
+- CWARNFLAGS += -Winline
+- CWARNFLAGS += -Wcast-qual
+- 
+  EXPORT_SYMS = NO
+  
+  .include <bsd.kmod.mk>
+--- 93,99 ----
+     CFLAGS += -Ishared
+  .endif
+  
+  EXPORT_SYMS = NO
+  
++ .include <bsd.own.mk>
+  .include <bsd.kmod.mk>
diff -ruN open-vm-tools.orig/files/patch-vmhgfs-state.c open-vm-tools/files/patch-vmhgfs-state.c
--- open-vm-tools.orig/files/patch-vmhgfs-state.c	2013-04-08 10:04:07.000000000 -0500
+++ open-vm-tools/files/patch-vmhgfs-state.c	1969-12-31 18:00:00.000000000 -0600
@@ -1,31 +0,0 @@
---- modules/freebsd/vmhgfs/state.c.orig	2010-10-20 05:19:54.000000000 +0900
-+++ modules/freebsd/vmhgfs/state.c	2010-11-16 13:27:57.000000000 +0900
-@@ -770,6 +770,12 @@
-       goto destroyVnode;
-    }
- 
-+#if __FreeBSD_version >= 700034
-+   if ((ret = insmntque(vp, vfsp)) != 0) {
-+      return ret;
-+   }
-+#endif
-+
-    /*
-     * Now we'll initialize the vnode.  We need to set the file type, vnode
-     * operations, flags, filesystem pointer, reference count, and device.
-@@ -1277,6 +1283,7 @@
-  *----------------------------------------------------------------------------
-  */
- 
-+#if 0 /* never used */
- void
- HgfsMarkFileMmapped(struct vnode *vp,    // vnode which state is being changed
-                     Bool mmapped)        // New mapping state
-@@ -1286,6 +1293,7 @@
-    fp = HGFS_VP_TO_FP(vp);
-    fp->mmapped = mmapped;
- }
-+#endif
- 
- /* Adding/finding/removing file state from hash table */
- 
diff -ruN open-vm-tools.orig/files/patch-vmmemctl-os.c open-vm-tools/files/patch-vmmemctl-os.c
--- open-vm-tools.orig/files/patch-vmmemctl-os.c	2013-04-08 10:04:07.000000000 -0500
+++ open-vm-tools/files/patch-vmmemctl-os.c	1969-12-31 18:00:00.000000000 -0600
@@ -1,50 +0,0 @@
---- modules/freebsd/vmmemctl/os.c.orig	2011-09-21 14:25:15.000000000 -0400
-+++ modules/freebsd/vmmemctl/os.c	2012-06-20 09:44:40.434083000 -0400
-@@ -344,12 +344,22 @@
-    os_state *state = &global_state;
-    os_pmap *pmap = &state->pmap;
- 
--   if ( !vm_page_lookup(state->vmobject, page->pindex) ) {
--      return;
-+   VM_OBJECT_LOCK(state->vmobject);
-+   if ( vm_page_lookup(state->vmobject, page->pindex) ) {
-+   	os_pmap_putindex(pmap, page->pindex);
-+#if __FreeBSD_version >= 900000
-+	vm_page_lock(page);
-+#else
-+	vm_page_lock_queues();
-+#endif
-+   	vm_page_free(page);
-+#if __FreeBSD_version >= 900000
-+	vm_page_unlock(page);
-+#else
-+	vm_page_unlock_queues();
-+#endif
-    }
--
--   os_pmap_putindex(pmap, page->pindex);
--   vm_page_free(page);
-+   VM_OBJECT_UNLOCK(state->vmobject);
- }
- 
- 
-@@ -361,8 +371,11 @@
-    os_state *state = &global_state;
-    os_pmap *pmap = &state->pmap;
- 
-+   VM_OBJECT_LOCK(state->vmobject);
-+
-    pindex = os_pmap_getindex(pmap);
-    if (pindex == (vm_pindex_t)-1) {
-+      VM_OBJECT_UNLOCK(state->vmobject);
-       return NULL;
-    }
- 
-@@ -383,6 +396,7 @@
-    if (!page) {
-       os_pmap_putindex(pmap, pindex);
-    }
-+   VM_OBJECT_UNLOCK(state->vmobject);
- 
-    return page;
- }
diff -ruN open-vm-tools.orig/pkg-plist open-vm-tools/pkg-plist
--- open-vm-tools.orig/pkg-plist	2013-04-08 10:04:07.000000000 -0500
+++ open-vm-tools/pkg-plist	2013-04-08 10:50:12.000000000 -0500
@@ -14,7 +14,6 @@
 lib/open-vm-tools/plugins/common/libvix.so
 lib/open-vm-tools/plugins/common/libvix.la
 %%X11%%lib/open-vm-tools/plugins/vmusr/libresolutionSet.so
-%%X11%%lib/open-vm-tools/plugins/vmusr/libvixUser.so
 %%X11%%lib/open-vm-tools/plugins/vmusr/libdesktopEvents.so
 %%X11%%lib/open-vm-tools/plugins/vmusr/libdndcp.so
 lib/libhgfs.a
@@ -41,16 +40,19 @@
 include/vmGuestLib/vm_basic_types.h
 @exec mkdir -p %D/lib/vmware-tools/modules/input
 sbin/mount_vmhgfs
-%%X11%%bin/vmware-toolbox
 %%X11%%bin/vmware-user-suid-wrapper
 share/vmware-tools/poweroff-vm-default
 share/vmware-tools/poweron-vm-default
 share/vmware-tools/resume-vm-default
 share/vmware-tools/suspend-vm-default
 share/vmware-tools/vm-support
-share/open-vm-tools/messages/de/toolbox.vmsg
-share/open-vm-tools/messages/ja/toolbox.vmsg
-share/open-vm-tools/messages/zh_CN/toolbox.vmsg
+share/open-vm-tools/messages/de/vmtoolsd.vmsg
+share/open-vm-tools/messages/ja/vmtoolsd.vmsg
+share/open-vm-tools/messages/ko/vmtoolsd.vmsg
+share/open-vm-tools/messages/de/toolboxcmd.vmsg
+share/open-vm-tools/messages/ja/toolboxcmd.vmsg
+share/open-vm-tools/messages/ko/toolboxcmd.vmsg
+share/open-vm-tools/messages/zh_CN/toolboxcmd.vmsg
 share/vmware-tools/statechange.subr
 share/vmware-tools/scripts/vmware/network
 @exec kldxref %D/lib/vmware-tools/modules/drivers 2>/dev/null || true


>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-ports-bugs mailing list