summaryrefslogtreecommitdiff
path: root/emulators/open-vm-tools
diff options
context:
space:
mode:
authorMartin Blapp <mbr@FreeBSD.org>2009-03-03 23:26:15 +0000
committerMartin Blapp <mbr@FreeBSD.org>2009-03-03 23:26:15 +0000
commit793cb0c1fdae923523eb206510a8e8a4f3377dc7 (patch)
tree3f85a075f3fe81f82dd59b1091183bbe0247af60 /emulators/open-vm-tools
parent- Update to 0.10.2 (diff)
Upgrade the port to build 148847 from 2009.02.18.
PR: ports/130583 Submitted by: lstewart Reviewed by: KUROSAWA Takahiro <takahiro.kurosawa@gmail.com>
Notes
Notes: svn path=/head/; revision=229441
Diffstat (limited to 'emulators/open-vm-tools')
-rw-r--r--emulators/open-vm-tools/Makefile25
-rw-r--r--emulators/open-vm-tools/distinfo6
-rw-r--r--emulators/open-vm-tools/files/optpatch-nox1111
-rw-r--r--emulators/open-vm-tools/files/patch-freebsd-854
-rw-r--r--emulators/open-vm-tools/files/patch-guestd-Makefile28
-rw-r--r--emulators/open-vm-tools/files/patch-hgfsmounter-Makefile58
-rw-r--r--emulators/open-vm-tools/files/patch-modules-Makefile63
-rw-r--r--emulators/open-vm-tools/files/patch-services-Makefile24
-rw-r--r--emulators/open-vm-tools/files/patch-suspend-vm-default26
-rw-r--r--emulators/open-vm-tools/files/patch-toolbox-Makefile40
-rw-r--r--emulators/open-vm-tools/files/patch-vmblock-fuse-Makefile35
-rw-r--r--emulators/open-vm-tools/files/patch-vmblock-fuse-block.c14
-rw-r--r--emulators/open-vm-tools/files/patch-vmblock-subr.c16
-rw-r--r--emulators/open-vm-tools/files/patch-vmhgfs-state.c15
-rw-r--r--emulators/open-vm-tools/files/patch-wiperPosix.c32
-rw-r--r--emulators/open-vm-tools/pkg-plist21
16 files changed, 235 insertions, 233 deletions
diff --git a/emulators/open-vm-tools/Makefile b/emulators/open-vm-tools/Makefile
index 842ecde6b2b4..8681933a32d9 100644
--- a/emulators/open-vm-tools/Makefile
+++ b/emulators/open-vm-tools/Makefile
@@ -7,7 +7,6 @@
PORTNAME= open-vm-tools
PORTVERSION= ${BUILD_VER}
-PORTREVISION= 7
CATEGORIES= emulators kld
MASTER_SITES= SF
DISTNAME= open-vm-tools-${RELEASE_DATE}-${BUILD_VER}
@@ -15,23 +14,30 @@ DISTNAME= open-vm-tools-${RELEASE_DATE}-${BUILD_VER}
MAINTAINER= mbr@freebsd.org
COMMENT?= Open VMware tools for FreeBSD VMware guests
-RELEASE_DATE= 2008.07.01
-BUILD_VER= 102166
+RELEASE_DATE= 2009.02.18
+BUILD_VER= 148847
GNU_CONFIGURE= yes
USE_LDCONFIG= yes
-CONFIGURE_ARGS+= --without-procps
+CONFIGURE_ARGS+= --without-procps --sysconfdir=${LOCALBASE}/etc
.if defined(WITHOUT_X11)
-CONFIGURE_ARGS+= --without-x
+LIB_DEPENDS+= glib-2.0:${PORTSDIR}/devel/glib20
+CONFIGURE_ARGS+= --without-x --without-gtk2 --without-gtkmm
PLIST_SUB+= X11="@comment "
CONFLICTS= open-vm-tools-[0-9]*
.else
-CONFIGURE_ARGS+= --with-x
+.if !defined(WITHOUT_LIBNOTIFY)
+LIB_DEPENDS+= notify.1:${PORTSDIR}/devel/libnotify
+.endif
+.if defined(WITHOUT_UNITY)
+CONFIGURE_ARGS+= --disable-unity
+.endif
+CONFIGURE_ARGS+= --with-x --without-gtkmm
CONFIGURE_ENV= LDFLAGS="-L${LOCALBASE}/lib" \
CPPFLAGS="-I${LOCALBASE}/include"
USE_XORG= x11 ice xineramaproto xinerama xrandr xtst
-USE_GNOME= gtk20
+USE_GNOME= gtk20 glib20
PLIST_SUB+= X11=""
CONFLICTS= open-vm-tools-nox11-[0-9]*
.endif
@@ -63,11 +69,6 @@ PLIST_SUB+= LIB32DIR=${LIB32DIR}
SUB_LIST+= LIB32DIR=${LIB32DIR}
-post-patch:
-.if defined(WITHOUT_X11)
- cd ${WRKSRC} && ${PATCH} < ${FILESDIR}/optpatch-nox11
-.endif
-
post-build:
(cd ${WRKSRC}/modules && ${MAKE})
diff --git a/emulators/open-vm-tools/distinfo b/emulators/open-vm-tools/distinfo
index 994a317e7bbd..efe005c41f64 100644
--- a/emulators/open-vm-tools/distinfo
+++ b/emulators/open-vm-tools/distinfo
@@ -1,3 +1,3 @@
-MD5 (open-vm-tools-2008.07.01-102166.tar.gz) = c33bf4cab7d2d22b0c6a8f03f076fe64
-SHA256 (open-vm-tools-2008.07.01-102166.tar.gz) = 51293ff716bff35ecd03e8747280280be0a748e9fc5ec7c2d02d936b0c86d1c5
-SIZE (open-vm-tools-2008.07.01-102166.tar.gz) = 2558112
+MD5 (open-vm-tools-2009.02.18-148847.tar.gz) = 6e473ebdf29f1b15388149bc2fde6941
+SHA256 (open-vm-tools-2009.02.18-148847.tar.gz) = 10c082b629921356b885cc287ca80d4d50d695431b8e1f0898e0f0abb95ad89a
+SIZE (open-vm-tools-2009.02.18-148847.tar.gz) = 3976037
diff --git a/emulators/open-vm-tools/files/optpatch-nox11 b/emulators/open-vm-tools/files/optpatch-nox11
deleted file mode 100644
index 76481c6f5e4b..000000000000
--- a/emulators/open-vm-tools/files/optpatch-nox11
+++ /dev/null
@@ -1,11 +0,0 @@
---- lib/guestApp/Makefile.in 2008-07-08 16:58:54.000000000 +0200
-+++ lib/guestApp/Makefile.in 2008-07-02 00:31:31.000000000 +0200
-@@ -231,7 +231,7 @@
- target_alias = @target_alias@
- top_builddir = @top_builddir@
- top_srcdir = @top_srcdir@
--noinst_LIBRARIES = libGuestApp.a libGuestAppX11.a
-+noinst_LIBRARIES = libGuestApp.a #libGuestAppX11.a
- libGuestApp_a_SOURCES = guestApp.c guestAppPosix.c
- libGuestAppX11_a_SOURCES = $(libGuestApp_a_SOURCES) guestAppPosixX11.c
- libGuestAppX11_a_CPPFLAGS = -DGUESTAPP_HAS_X11
diff --git a/emulators/open-vm-tools/files/patch-freebsd-8 b/emulators/open-vm-tools/files/patch-freebsd-8
new file mode 100644
index 000000000000..fc11422386a0
--- /dev/null
+++ b/emulators/open-vm-tools/files/patch-freebsd-8
@@ -0,0 +1,54 @@
+--- modules/freebsd/vmhgfs/vfsops.c.orig 2009-02-28 23:15:30.000000000 +0100
++++ modules/freebsd/vmhgfs/vfsops.c 2009-02-28 23:16:38.000000000 +0100
+@@ -145,7 +145,11 @@
+ * Since Hgfs requires the caller to be root, only allow mount attempts made
+ * by the superuser.
+ */
++#if __FreeBSD_version >= 800001
++ if ((ret = priv_check(td, PRIV_VFS_MOUNT)) != 0) {
++#else
+ if ((ret = suser(td)) != 0) {
++#endif
+ return ret;
+ }
+
+--- modules/freebsd/vmhgfs/vnops.c.orig 2009-02-18 17:02:35.000000000 +0900
++++ modules/freebsd/vmhgfs/vnops.c 2009-03-01 17:47:10.000000000 +0900
+@@ -325,7 +325,11 @@
+ */
+ {
+ struct vnode *vp = ap->a_vp;
++#if __FreeBSD_version >= 800001
++ int mode = ap->a_accmode;
++#else
+ int mode = ap->a_mode;
++#endif
+ HgfsAccessMode accessMode = 0;
+ Bool isDir = vp->v_type == VDIR;
+ if (mode & VREAD) {
+--- modules/freebsd/vmblock/vnops.c.orig 2009-02-28 23:21:43.000000000 +0100
++++ modules/freebsd/vmblock/vnops.c 2009-02-28 23:26:23.000000000 +0100
+@@ -723,7 +723,11 @@
+ * NB: Allowing only the superuser to open this directory breaks
+ * readdir() of the filesystem root for non-privileged users.
+ */
++#if __FreeBSD_version >= 800001
++ if ((retval = priv_check(ap->a_td, PRIV_VFS_GETFH)) == 0) {
++#else
+ if ((retval = suser(ap->a_td)) == 0) {
++#endif
+ #if __FreeBSD_version >= 700000
+ fp = ap->a_fp;
+ #else
+@@ -1007,7 +1011,11 @@
+ */
+ {
+ struct vnode *vp = ap->a_vp;
++#if __FreeBSD_version >= 800001
++ mode_t mode = ap->a_accmode;
++#else
+ mode_t mode = ap->a_mode;
++#endif
+
+ /*
+ * Disallow write attempts on read-only layers; unless the file is a
diff --git a/emulators/open-vm-tools/files/patch-guestd-Makefile b/emulators/open-vm-tools/files/patch-guestd-Makefile
index 371e168bd631..c51af040cc96 100644
--- a/emulators/open-vm-tools/files/patch-guestd-Makefile
+++ b/emulators/open-vm-tools/files/patch-guestd-Makefile
@@ -1,31 +1,31 @@
---- guestd/Makefile.am.orig 2008-07-02 00:31:19.000000000 +0200
-+++ guestd/Makefile.am 2008-07-27 15:48:03.000000000 +0200
-@@ -96,8 +96,8 @@
+--- guestd/Makefile.am.orig 2009-02-28 20:32:39.000000000 +0100
++++ guestd/Makefile.am 2009-02-28 20:33:09.000000000 +0100
+@@ -104,8 +104,8 @@
endif LINUX
install-exec-hook:
-- $(INSTALL) -d /etc/vmware-tools
-- echo 'disable-tools-version = "true"' > /etc/vmware-tools/tools.conf
+- $(INSTALL) -d $(DESTDIR)/etc/vmware-tools
+- echo 'disable-tools-version = "true"' > $(DESTDIR)/etc/vmware-tools/tools.conf
+ $(INSTALL) -d $(prefix)/etc/vmware-tools
+ echo 'disable-tools-version = "true"' > $(prefix)/etc/vmware-tools/tools.conf
uninstall-hook:
-- $(RM) -rf /etc/vmware-tools
-+ $(RM) -rf $(prefix)/etc/vmware-tools
---- guestd/Makefile.in.orig 2008-07-02 00:31:30.000000000 +0200
-+++ guestd/Makefile.in 2008-07-27 15:47:54.000000000 +0200
-@@ -605,11 +605,11 @@
+- rm -rf $(DESTDIR)/etc/vmware-tools
++ rm -rf $(prefix)/etc/vmware-tools
+--- guestd/Makefile.in.orig 2009-02-28 20:43:51.000000000 +0100
++++ guestd/Makefile.in 2009-02-28 20:44:45.000000000 +0100
+@@ -667,11 +667,11 @@
install-exec-hook:
-- $(INSTALL) -d /etc/vmware-tools
-- echo 'disable-tools-version = "true"' > /etc/vmware-tools/tools.conf
+- $(INSTALL) -d $(DESTDIR)/etc/vmware-tools
+- echo 'disable-tools-version = "true"' > $(DESTDIR)/etc/vmware-tools/tools.conf
+ $(INSTALL) -d $(prefix)/etc/vmware-tools
+ echo 'disable-tools-version = "true"' > $(prefix)/etc/vmware-tools/tools.conf
uninstall-hook:
-- $(RM) -rf /etc/vmware-tools
-+ $(RM) -rf $(prefix)/etc/vmware-tools
+- rm -rf $(DESTDIR)/etc/vmware-tools
++ rm -rf $(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.
.NOEXPORT:
diff --git a/emulators/open-vm-tools/files/patch-hgfsmounter-Makefile b/emulators/open-vm-tools/files/patch-hgfsmounter-Makefile
deleted file mode 100644
index 86ce99503757..000000000000
--- a/emulators/open-vm-tools/files/patch-hgfsmounter-Makefile
+++ /dev/null
@@ -1,58 +0,0 @@
---- hgfsmounter/Makefile.am.orig 2008-07-02 00:31:20.000000000 +0200
-+++ hgfsmounter/Makefile.am 2008-07-08 15:30:29.000000000 +0200
-@@ -18,8 +18,8 @@
- sbin_PROGRAMS = mount.vmhgfs
-
- mount_vmhgfs_LDADD =
--mount_vmhgfs_LDADD += ../lib/string/libString.a
- mount_vmhgfs_LDADD += ../lib/strUtil/libStrUtil.a
-+mount_vmhgfs_LDADD += ../lib/string/libString.a
- mount_vmhgfs_LDADD += ../lib/panicDefault/libPanicDefault.a
- mount_vmhgfs_LDADD += ../lib/panic/libPanic.a
- mount_vmhgfs_LDADD += ../lib/stubs/libStubs.a
-@@ -30,11 +30,11 @@
-
- if FREEBSD
- install-exec-hook:
-- $(MV) $(sbindir)/mount.vmhgfs $(sbindir)/mount_vmhgfs
-+ /bin/mv $(sbindir)/mount.vmhgfs $(sbindir)/mount_vmhgfs
- chown root $(sbindir)/mount_vmhgfs
- chmod u+s $(sbindir)/mount_vmhgfs
- uninstall-hook:
-- $(RM) -f $(sbindir)/mount_vmhgfs
-+ /bin/rm -f $(sbindir)/mount_vmhgfs
- else
- install-exec-hook:
- chown root $(sbindir)/mount.vmhgfs
---- hgfsmounter/Makefile.in.orig 2008-07-02 00:31:30.000000000 +0200
-+++ hgfsmounter/Makefile.in 2008-07-08 15:29:54.000000000 +0200
-@@ -47,6 +47,7 @@
- NORMAL_UNINSTALL = :
- PRE_UNINSTALL = :
- POST_UNINSTALL = :
-+MV=/bin/mv
- build_triplet = @build@
- host_triplet = @host@
- sbin_PROGRAMS = mount.vmhgfs$(EXEEXT)
-@@ -64,8 +65,8 @@
- am_mount_vmhgfs_OBJECTS = hgfsmounter.$(OBJEXT) \
- stub-user-util.$(OBJEXT)
- mount_vmhgfs_OBJECTS = $(am_mount_vmhgfs_OBJECTS)
--mount_vmhgfs_DEPENDENCIES = ../lib/string/libString.a \
-- ../lib/strUtil/libStrUtil.a \
-+mount_vmhgfs_DEPENDENCIES = ../lib/strUtil/libStrUtil.a \
-+ ../lib/string/libString.a \
- ../lib/panicDefault/libPanicDefault.a ../lib/panic/libPanic.a \
- ../lib/stubs/libStubs.a
- DEFAULT_INCLUDES = -I.@am__isrc@
-@@ -225,8 +226,8 @@
- target_alias = @target_alias@
- top_builddir = @top_builddir@
- top_srcdir = @top_srcdir@
--mount_vmhgfs_LDADD = ../lib/string/libString.a \
-- ../lib/strUtil/libStrUtil.a \
-+mount_vmhgfs_LDADD = ../lib/strUtil/libStrUtil.a \
-+ ../lib/string/libString.a \
- ../lib/panicDefault/libPanicDefault.a ../lib/panic/libPanic.a \
- ../lib/stubs/libStubs.a
- mount_vmhgfs_SOURCES = hgfsmounter.c stub-user-util.c
diff --git a/emulators/open-vm-tools/files/patch-modules-Makefile b/emulators/open-vm-tools/files/patch-modules-Makefile
deleted file mode 100644
index 50b8a61e8f56..000000000000
--- a/emulators/open-vm-tools/files/patch-modules-Makefile
+++ /dev/null
@@ -1,63 +0,0 @@
---- modules/Makefile.am.orig 2008-07-08 14:44:08.000000000 +0200
-+++ modules/Makefile.am 2008-07-08 14:45:16.000000000 +0200
-@@ -15,14 +15,6 @@
- export DEPMOD = depmod -a
- endif LINUX
-
--if FREEBSD
--export vmblockdir = $(MODULES_DIR)
--export vmhgfsdir = $(MODULES_DIR)
--export vmmemctldir = $(MODULES_DIR)
--export vmsyncdir = $(MODULES_DIR)
--export vmxnetdir = $(MODULES_DIR)
--endif FREEBSD
--
- ## Automake will supplement its own "distclean" and "clean" targets with these.
- distclean-local:
- clean-local:
-@@ -32,13 +24,4 @@
- $(RM) -f $(MODULES_OS)/*.o $(MODULES_OS)/*.ko
-
- install-exec-hook:
-- for MOD in $(MODULES); do \
-- $(INSTALL) -d `eval echo '$$'$${MOD}dir`; \
-- $(INSTALL) -m644 $(MODULES_OS)/$$MOD/$$MOD.ko `eval echo '$$'$${MOD}dir`; \
-- done
-- eval "$$DEPMOD"
- uninstall-hook:
-- for MOD in $(MODULES); do \
-- $(RM) -f `eval echo '$$'$${MOD}dir`/$$MOD.ko &> /dev/null; \
-- done
-- eval "$$DEPMOD"
---- modules/Makefile.in.orig 2008-07-08 14:44:39.000000000 +0200
-+++ modules/Makefile.in 2008-07-08 14:45:03.000000000 +0200
-@@ -368,12 +368,6 @@
- @LINUX_TRUE@export vmxnetdir = $(MODULES_DIR)/drivers/net
- @LINUX_TRUE@export DEPMOD = depmod -a
-
--@FREEBSD_TRUE@export vmblockdir = $(MODULES_DIR)
--@FREEBSD_TRUE@export vmhgfsdir = $(MODULES_DIR)
--@FREEBSD_TRUE@export vmmemctldir = $(MODULES_DIR)
--@FREEBSD_TRUE@export vmsyncdir = $(MODULES_DIR)
--@FREEBSD_TRUE@export vmxnetdir = $(MODULES_DIR)
--
- distclean-local:
- clean-local:
- for MOD in $(MODULES); do \
-@@ -382,16 +376,7 @@
- $(RM) -f $(MODULES_OS)/*.o $(MODULES_OS)/*.ko
-
- install-exec-hook:
-- for MOD in $(MODULES); do \
-- $(INSTALL) -d `eval echo '$$'$${MOD}dir`; \
-- $(INSTALL) -m644 $(MODULES_OS)/$$MOD/$$MOD.ko `eval echo '$$'$${MOD}dir`; \
-- done
-- eval "$$DEPMOD"
- uninstall-hook:
-- for MOD in $(MODULES); do \
-- $(RM) -f `eval echo '$$'$${MOD}dir`/$$MOD.ko &> /dev/null; \
-- done
-- eval "$$DEPMOD"
- # 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.
- .NOEXPORT:
diff --git a/emulators/open-vm-tools/files/patch-services-Makefile b/emulators/open-vm-tools/files/patch-services-Makefile
new file mode 100644
index 000000000000..bb3d6130d1d7
--- /dev/null
+++ b/emulators/open-vm-tools/files/patch-services-Makefile
@@ -0,0 +1,24 @@
+--- 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,6 @@
+ 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
++ ln -sf `dirname $(VMSVC_PLUGIN_INSTALLDIR)` $(prefix)/etc/vmware-tools/plugins
+
+--- services/Makefile.in.orig 2009-02-28 20:48:52.000000000 +0100
++++ services/Makefile.in 2009-02-28 20:49:46.000000000 +0100
+@@ -564,8 +564,8 @@
+
+
+ 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
++ ln -sf `dirname $(VMSVC_PLUGIN_INSTALLDIR)` $(prefix)/etc/vmware-tools/plugins
+ # 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.
+ .NOEXPORT:
diff --git a/emulators/open-vm-tools/files/patch-suspend-vm-default b/emulators/open-vm-tools/files/patch-suspend-vm-default
new file mode 100644
index 000000000000..52ea1ef457de
--- /dev/null
+++ b/emulators/open-vm-tools/files/patch-suspend-vm-default
@@ -0,0 +1,26 @@
+--- scripts/freebsd/suspend-vm-default.orig 2009-02-28 23:36:59.000000000 +0100
++++ scripts/freebsd/suspend-vm-default 2009-02-28 23:38:56.000000000 +0100
+@@ -34,16 +34,16 @@
+
+ # Release the IP if DHCP is used.
+ case "`uname -r`" in
+-6.*) # 'PID dhclient: em0' => 'em0'
+- for intf in `pgrep -fl dhclient | cut -d" " -f3 | sort | uniq`; do
+- ifconfig "$intf" down
+- ifconfig "$intf" delete
+- done
+- ;;
+-*) # Have dhclient running => release lease
++[45].*) # Have dhclient running => release lease
+ ps auxw | grep -q dhclient
+ if [ "$?" -eq 0 ]; then
+ dhclient -r
+ fi
+ ;;
++*) # 'PID dhclient: em0' => 'em0'
++ for intf in `pgrep -fl dhclient | cut -d" " -f3 | sort | uniq`; do
++ ifconfig "$intf" down
++ ifconfig "$intf" delete
++ done
++ ;;
+ esac
diff --git a/emulators/open-vm-tools/files/patch-toolbox-Makefile b/emulators/open-vm-tools/files/patch-toolbox-Makefile
deleted file mode 100644
index 1f3daf47ee1a..000000000000
--- a/emulators/open-vm-tools/files/patch-toolbox-Makefile
+++ /dev/null
@@ -1,40 +0,0 @@
---- toolbox/Makefile.in.orig 2008-07-02 00:31:34.000000000 +0200
-+++ toolbox/Makefile.in 2008-07-27 15:13:21.000000000 +0200
-@@ -551,14 +551,14 @@
- $(INSTALL) -d $(datadir)/applications/
- $(INSTALL) -m 644 ../scripts/common/vmware-toolbox.desktop \
- $(datadir)/applications/
-- $(SED) -i s/Exec=.*/Exec=vmware-toolbox/ \
-+ $(SED) -i '' s/Exec=.*/Exec=vmware-toolbox/ \
- $(datadir)/applications/vmware-toolbox.desktop
-- $(INSTALL) -d /usr/share/pixmaps/vmware
-+ $(INSTALL) -d $(datadir)/pixmaps/vmware
- $(INSTALL) -m 644 bigIcon.xpm \
-- /usr/share/pixmaps/vmware/vmware-toolbox.xpm
-+ $(datadir)/pixmaps/vmware/vmware-toolbox.xpm
- uninstall-hook:
- -$(RM) -f $(datadir)/share/applications/vmware-toolbox.desktop
-- -$(RM) -rf /usr/share/pixmaps/vmware
-+ -$(RM) -rf $(datadir)/pixmaps/vmware
- # 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.
- .NOEXPORT:
---- toolbox/Makefile.am.orig 2008-07-02 00:31:20.000000000 +0200
-+++ toolbox/Makefile.am 2008-07-27 15:13:02.000000000 +0200
-@@ -65,11 +65,11 @@
- $(INSTALL) -d $(datadir)/applications/
- $(INSTALL) -m 644 ../scripts/common/vmware-toolbox.desktop \
- $(datadir)/applications/
-- $(SED) -i s/Exec=.*/Exec=vmware-toolbox/ \
-+ $(SED) -i '' s/Exec=.*/Exec=vmware-toolbox/ \
- $(datadir)/applications/vmware-toolbox.desktop
-- $(INSTALL) -d /usr/share/pixmaps/vmware
-+ $(INSTALL) -d $(datadir)/pixmaps/vmware
- $(INSTALL) -m 644 bigIcon.xpm \
-- /usr/share/pixmaps/vmware/vmware-toolbox.xpm
-+ $(datadir)/pixmaps/vmware/vmware-toolbox.xpm
- uninstall-hook:
-- -$(RM) -f $(datadir)/share/applications/vmware-toolbox.desktop
-- -$(RM) -rf /usr/share/pixmaps/vmware
-+ -$(RM) -f $(datadir)/applications/vmware-toolbox.desktop
-+ -$(RM) -rf $(datadir)/pixmaps/vmware
diff --git a/emulators/open-vm-tools/files/patch-vmblock-fuse-Makefile b/emulators/open-vm-tools/files/patch-vmblock-fuse-Makefile
new file mode 100644
index 000000000000..f5402744072a
--- /dev/null
+++ b/emulators/open-vm-tools/files/patch-vmblock-fuse-Makefile
@@ -0,0 +1,35 @@
+--- vmblock-fuse/Makefile.am.orig 2009-02-18 17:00:54.000000000 +0900
++++ vmblock-fuse/Makefile.am 2009-03-01 16:41:24.000000000 +0900
+@@ -17,13 +17,13 @@
+
+ bin_PROGRAMS = vmware-vmblock-fuse
+
+-# _XOPEN_SOURCE needs to be defined to at least 500 when compiling
+-# vmblock-fuse's os.h to get pthread_rwlock_t.
++# _XOPEN_SOURCE needs to be defined to at least 600 when compiling
++# vmblock-fuse's fsops.c to get lstat.
+ # -D_FILE_OFFSET_BITS=64 required for fuse.
+
+ AM_CFLAGS =
+ AM_CFLAGS += -Dvmblock_fuse
+-AM_CFLAGS += -D_XOPEN_SOURCE=500
++AM_CFLAGS += -D_XOPEN_SOURCE=600
+ AM_CFLAGS += -DUSERLEVEL
+ AM_CFLAGS += -D_FILE_OFFSET_BITS=64
+ AM_CFLAGS += @FUSE_CPPFLAGS@
+--- vmblock-fuse/Makefile.in.orig 2009-02-18 17:03:18.000000000 +0900
++++ vmblock-fuse/Makefile.in 2009-03-01 16:50:47.000000000 +0900
+@@ -263,10 +263,10 @@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
+
+-# _XOPEN_SOURCE needs to be defined to at least 500 when compiling
+-# vmblock-fuse's os.h to get pthread_rwlock_t.
++# _XOPEN_SOURCE needs to be defined to at least 600 when compiling
++# vmblock-fuse's fsops.c to get lstat.
+ # -D_FILE_OFFSET_BITS=64 required for fuse.
+-AM_CFLAGS = -Dvmblock_fuse -D_XOPEN_SOURCE=500 -DUSERLEVEL \
++AM_CFLAGS = -Dvmblock_fuse -D_XOPEN_SOURCE=600 -DUSERLEVEL \
+ -D_FILE_OFFSET_BITS=64 @FUSE_CPPFLAGS@ @VMWARE_USER_CPPFLAGS@
+ vmware_vmblock_fuse_LDADD = ../lib/misc/libMisc.la @FUSE_LIBS@ \
+ $(am__append_1)
diff --git a/emulators/open-vm-tools/files/patch-vmblock-fuse-block.c b/emulators/open-vm-tools/files/patch-vmblock-fuse-block.c
new file mode 100644
index 000000000000..52cdf13dd4ae
--- /dev/null
+++ b/emulators/open-vm-tools/files/patch-vmblock-fuse-block.c
@@ -0,0 +1,14 @@
+--- vmblock-fuse/block.c.orig 2009-02-18 17:02:53.000000000 +0900
++++ vmblock-fuse/block.c 2009-03-01 16:37:11.000000000 +0900
+@@ -519,11 +519,7 @@
+ struct DblLnkLst_Links *curr;
+
+ /* XXX The following is only temporary. */
+-#ifdef __FreeBSD__
+- os_assert_rwlock_held(&blockedFilesLock);
+-#else
+ ASSERT(os_rwlock_held(&blockedFilesLock));
+-#endif
+
+ DblLnkLst_ForEach(curr, &blockedFiles) {
+ BlockInfo *currBlock = DblLnkLst_Container(curr, BlockInfo, links);
diff --git a/emulators/open-vm-tools/files/patch-vmblock-subr.c b/emulators/open-vm-tools/files/patch-vmblock-subr.c
new file mode 100644
index 000000000000..ac640b1520ae
--- /dev/null
+++ b/emulators/open-vm-tools/files/patch-vmblock-subr.c
@@ -0,0 +1,16 @@
+--- modules/freebsd/vmblock/subr.c.orig 2009-02-28 23:04:14.000000000 +0100
++++ modules/freebsd/vmblock/subr.c 2009-02-28 23:05:38.000000000 +0100
+@@ -372,6 +372,13 @@
+ return error;
+ }
+
++#if __FreeBSD_version >= 700034
++ if ((error = insmntque(vp, mp)) != 0) {
++ free(xp, M_VMBLOCKFSNODE);
++ return error;
++ }
++#endif
++
+ xp->backVnode = vp;
+ xp->lowerVnode = lowervp;
+ vp->v_type = lowervp->v_type;
diff --git a/emulators/open-vm-tools/files/patch-vmhgfs-state.c b/emulators/open-vm-tools/files/patch-vmhgfs-state.c
new file mode 100644
index 000000000000..1efee0c81025
--- /dev/null
+++ b/emulators/open-vm-tools/files/patch-vmhgfs-state.c
@@ -0,0 +1,15 @@
+--- modules/freebsd/vmhgfs/state.c.orig 2009-02-28 23:06:10.000000000 +0100
++++ modules/freebsd/vmhgfs/state.c 2009-02-28 23:08:59.000000000 +0100
+@@ -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.
diff --git a/emulators/open-vm-tools/files/patch-wiperPosix.c b/emulators/open-vm-tools/files/patch-wiperPosix.c
deleted file mode 100644
index 11bf780f80b2..000000000000
--- a/emulators/open-vm-tools/files/patch-wiperPosix.c
+++ /dev/null
@@ -1,32 +0,0 @@
---- lib/wiper/wiperPosix.c 2008-07-02 00:31:18.000000000 +0200
-+++ lib/wiper/wiperPosix.c 2008-07-08 10:22:47.000000000 +0200
-@@ -36,9 +36,9 @@
- # include <sys/ucred.h>
- # include <sys/mount.h>
- # include <fstab.h>
--# if BSD_VERSION >= 50
-+# if __FreeBSD_version >= 500000
- # include <libgen.h>
--# endif /* BSD_VERSION < 50 */
-+# endif /* __FreeBSD_version < 500000 */
- #endif
- #include <unistd.h>
-
-@@ -210,7 +210,7 @@
- * function, as a whole, does not even apply to OS X, so this caveat is
- * only minor.
- */
--#if BSD_VERSION < 50
-+#if __FreeBSD_version < 500000
- /*
- * Before FreeBSD 5, device nodes had static major/minor numbers.
- * (FreeBSD 5 included devfs which got rid of this concept.) So
-@@ -246,7 +246,7 @@
- retval = TRUE;
- }
- }
--#endif /* BSD_VERSION */
-+#endif /* __FreeBSD_version */
-
- return retval;
- }
diff --git a/emulators/open-vm-tools/pkg-plist b/emulators/open-vm-tools/pkg-plist
index 46516fa87b73..1620c5db041f 100644
--- a/emulators/open-vm-tools/pkg-plist
+++ b/emulators/open-vm-tools/pkg-plist
@@ -1,7 +1,19 @@
bin/vmware-checkvm
bin/vmware-hgfsclient
bin/vmware-xferlogs
+bin/vmtoolsd
+bin/vmware-toolbox-cmd
etc/vmware-tools/tools.conf
+etc/vmware-tools/plugins/vmsvc/libguestInfo.so
+etc/vmware-tools/plugins/vmsvc/libhgfsServer.so
+etc/vmware-tools/plugins/vmsvc/libpowerOps.so
+etc/vmware-tools/plugins/vmsvc/libtimeSync.so
+etc/vmware-tools/plugins/vmsvc/libvix.so
+etc/vmware-tools/plugins/vmsvc/libvmbackup.so
+%%LIB32DIR%%/libvmtools.a
+%%LIB32DIR%%/libvmtools.la
+%%LIB32DIR%%/libvmtools.so
+%%LIB32DIR%%/libvmtools.so.0
%%LIB32DIR%%/libguestlib.a
%%LIB32DIR%%/libguestlib.la
%%LIB32DIR%%/libguestlib.so
@@ -26,11 +38,20 @@ share/vmware-tools/vm-support
@exec kldxref %%LIB32DIR%%/vmware-tools/modules/drivers 2>/dev/null || true
@unexec if test -f %D/lib/vmware-tools/modules/drivers/linker.hints; then rm -f %D/lib/vmware-tools/modules/drivers/linker.hints; fi
@unexec if test -f %D/share/vmware-tools/tools.conf; then rm -f %D/share/vmware-tools/tools.conf; fi
+@unexec if test -h %D/etc/vmware-tools/plugins; then rm -f %D/etc/vmware-tools/plugins; fi
@dirrmtry %%LIB32DIR%%/vmware-tools/modules/input
@dirrmtry %%LIB32DIR%%/vmware-tools/modules/drivers
@dirrmtry %%LIB32DIR%%/vmware-tools/modules
+@dirrmtry %%LIB32DIR%%/vmware-tools/plugins
@dirrmtry %%LIB32DIR%%/vmware-tools
%%X11%%@dirrm share/pixmaps/vmware
+@dirrmtry etc/vmware-tools/plugins/vmsvc
+@dirrmtry etc/vmware-tools/plugins
@dirrmtry etc/vmware-tools
+@dirrmtry etc/open-vm-tools/plugins
+@dirrmtry etc/open-vm-tools
@dirrmtry share/vmware-tools
%%X11%%@dirrmtry share/applications
+@dirrm %%LIB32DIR%%/open-vm-tools/plugins/vmsvc
+@dirrm %%LIB32DIR%%/open-vm-tools/plugins
+@dirrm %%LIB32DIR%%/open-vm-tools