diff options
author | Makoto Matsushita <matusita@FreeBSD.org> | 2003-07-24 15:34:44 +0000 |
---|---|---|
committer | Makoto Matsushita <matusita@FreeBSD.org> | 2003-07-24 15:34:44 +0000 |
commit | 4e3da8e744b6b22a2e5ffeb0360e3023f9405f5d (patch) | |
tree | fa38b92be0e576bbbd2d6b6e1b93e786fe2b4bc7 /emulators/vmware-guestd5 | |
parent | Fix building under -CURRENT (gcc 3.3) (diff) |
Update VMware Tools for 4.0.1 build-5289, the latest version of VMware
Workstation.
This commit makes vmware-tools4 a slave port of vmware-guestd4, since
both are made from the same tarball, and it would be easy to maintain.
Vmware-guestd4 also installs a kernel module named vmmemctl; you may
want to kldload(8) it with a shell script under rc.d/ directory.
VMware Workstation 4.0.1 does fix "jumping the pointer" bug (yeah, thanks
VMware developer team). This means that you do not have to install
linux-vmware-toolbox4. However, it can be used as it should be, I
do not disable and/or remove this port.
Notes
Notes:
svn path=/head/; revision=85531
Diffstat (limited to 'emulators/vmware-guestd5')
-rw-r--r-- | emulators/vmware-guestd5/Makefile | 104 | ||||
-rw-r--r-- | emulators/vmware-guestd5/distinfo | 1 | ||||
-rw-r--r-- | emulators/vmware-guestd5/files/vmware-guest_kmod.sh | 29 | ||||
-rw-r--r-- | emulators/vmware-guestd5/files/vmware-guestd.sh | 4 | ||||
-rw-r--r-- | emulators/vmware-guestd5/files/vmware-guestd.sh.in | 4 | ||||
-rw-r--r-- | emulators/vmware-guestd5/pkg-descr | 3 | ||||
-rw-r--r-- | emulators/vmware-guestd5/pkg-descr.tools | 16 | ||||
-rw-r--r-- | emulators/vmware-guestd5/pkg-plist | 8 | ||||
-rw-r--r-- | emulators/vmware-guestd5/pkg-plist.tools | 4 |
9 files changed, 146 insertions, 27 deletions
diff --git a/emulators/vmware-guestd5/Makefile b/emulators/vmware-guestd5/Makefile index 14197f7c5e28..9231b4c7a3d3 100644 --- a/emulators/vmware-guestd5/Makefile +++ b/emulators/vmware-guestd5/Makefile @@ -5,44 +5,76 @@ # $FreeBSD$ # -PORTNAME= vmware-guestd +PORTNAME= vmware PORTVERSION= ${VMWARE_VER}.${BUILD_VER} CATEGORIES= emulators MASTER_SITES= # bundled with VMware itself +PKGNAMESUFFIX?= -guestd DISTNAME= vmware-freebsd-tools MAINTAINER= matusita@FreeBSD.org -COMMENT=VMware time synchronization daemon for FreeBSD guest OS (for VMware 4.x) +COMMENT?=VMware time synchronization daemon for FreeBSD guest OS (for VMware 4.x) -LIB_DEPENDS= c.3:${PORTSDIR}/misc/compat3x +.if defined(VMWARE_X_PORTS) +RUN_DEPENDS= ${LOCALBASE}/sbin/vmware-guestd:${PORTSDIR}/emulators/vmware-guestd4 +.endif DISTDIR= ${MOUNT_PT} IGNOREFILES= ${DISTFILES} -WRKSRC= ${WRKDIR}/vmware-freebsd-tools +WRKSRC= ${WRKDIR}/vmware-tools-distrib ONLY_FOR_ARCHS= i386 -NO_BUILD= yes .if !defined(BATCH) IS_INTERACTIVE= yes .endif +.if defined(VMWARE_X_PORTS) +USE_X_PREFIX= yes +NO_BUILD= yes +.endif RESTRICTED= "Not sure if we can redistribute this." NO_PACKAGE= ${RESTRICTED} -VMWARE_VER= 4.0.0 -BUILD_VER= 4460 +VMWARE_VER= 4.0.1 +BUILD_VER= 5289 -MOUNT_DEV?= /dev/acd0c +MOUNT_DEV?= /dev/acd0 MOUNT_PT?= /mnt MOUNT= /sbin/mount UMOUNT= /sbin/umount -do-fetch: - @${DO_NADA} +.include <bsd.port.pre.mk> + +.if defined(VMWARE_X_PORTS) + +.if ${XFREE86_VERSION} == 3 +PLIST_SUB+= INSTALLXSERVER3:="" +PLIST_SUB+= INSTALLXSERVER4:="@comment " +.else +PLIST_SUB+= INSTALLXSERVER3:="@comment " +PLIST_SUB+= INSTALLXSERVER4:="" +.endif + +.else + +.if !defined(WITHOUT_VMWARE_VMMEMCTL) +WITH_VMWARE_VMMEMCTL=YES +.endif +VMWARE_KMODDIR= ${PREFIX}/lib/vmware-tools/modules +.if defined(WITH_VMWARE_VMMEMCTL) +PLIST_SUB+= VMWARE_VMMEMCTL:="" +PLIST_SUB+= VMWARE_KMODDIR:="${VMWARE_KMODDIR}" +.else +PLIST_SUB+= VMWARE_VMMEMCTL:="@comment " +PLIST_SUB+= VMWARE_KMODDIR:="@comment " +.endif + +.endif + fetch-list: @${DO_NADA} -pre-extract: +do-fetch: @${ECHO} "" @${ECHO} "========================================================================" @${ECHO} "Choose \"File\" -> \"Install VMware Tools...\" from the Workstation menu" @@ -68,14 +100,46 @@ pre-extract: post-extract: ${UMOUNT} ${MOUNT_PT} +.if !defined(VMWARE_X_PORTS) + (cd ${WRKDIR}; ${TAR} xf ${WRKSRC}/lib/modules/source/vmmemctl.tar) +.endif + +.if defined(VMWARE_X_PORTS) do-install: - ${INSTALL_PROGRAM} ${WRKSRC}/vmware-guestd ${PREFIX}/sbin - ${INSTALL_PROGRAM} ${WRKSRC}/checkvm ${PREFIX}/sbin - @if [ ! -f ${PREFIX}/etc/rc.d/vmware-guestd.sh ]; then \ - ${ECHO} "Installing ${PREFIX}/etc/rc.d/vmware-guestd.sh startup file."; \ - ${INSTALL_SCRIPT} -m 755 ${FILESDIR}/vmware-guestd.sh ${PREFIX}/etc/rc.d; \ - fi - -${PREFIX}/sbin/vmware-guestd --cmd toolinstall.end - -.include <bsd.port.mk> + ${INSTALL_PROGRAM} ${WRKSRC}/bin/vmware-toolbox ${X11BASE}/bin +.if ${XFREE86_VERSION} == 3 + ${INSTALL_PROGRAM} ${WRKSRC}/lib/configurator/XFree86-3/XF86_VMware ${X11BASE}/bin + ${INSTALL_DATA} ${WRKSRC}/lib/configurator/XFree86-3/XF86Config ${X11BASE}/etc/XF86Config_VMware + @${ECHO} "" + @${ECHO} "You have installed XFree86 3.x X Server for VMware." + @${ECHO} "${X11BASE}/etc/XF86Config_VMware is a sample XF86Config file." + @${ECHO} "Copy this file to /etc/XF86Config before starting X." +.else + ${INSTALL_DATA} ${WRKSRC}/lib/configurator/XFree86-4/XF86Config-4 ${X11BASE}/etc/XF86Config-4_VMware +.endif + -${LOCALBASE}/sbin/vmware-guestd --cmd toolinstall.end + +.else + +do-build: +.if defined(WITH_VMWARE_VMMEMCTL) + (cd ${WRKDIR}/vmmemctl-only; make) +.endif + +do-install: + ${INSTALL_PROGRAM} ${WRKSRC}/sbin/vmware-guestd ${PREFIX}/sbin + ${INSTALL_PROGRAM} ${WRKSRC}/sbin/vmware-checkvm ${PREFIX}/sbin + ${INSTALL_SCRIPT} -m 755 ${FILESDIR}/vmware-guestd.sh \ + ${PREFIX}/etc/rc.d/vmware-guestd.sh.sample +.if defined(WITH_VMWARE_VMMEMCTL) + ${MKDIR} ${VMWARE_KMODDIR} + ${INSTALL_PROGRAM} ${WRKDIR}/vmmemctl-only/vmmemctl.ko ${VMWARE_KMODDIR} + ${INSTALL_SCRIPT} -m 755 ${FILESDIR}/vmware-guest_kmod.sh \ + ${PREFIX}/etc/rc.d/vmware-guest_kmod.sh.sample +.endif + -${LOCALBASE}/sbin/vmware-guestd --cmd toolinstall.end + +.endif + +.include <bsd.port.post.mk> diff --git a/emulators/vmware-guestd5/distinfo b/emulators/vmware-guestd5/distinfo new file mode 100644 index 000000000000..9a33295bd1da --- /dev/null +++ b/emulators/vmware-guestd5/distinfo @@ -0,0 +1 @@ +MD5 (vmware-freebsd-tools.tar.gz) = IGNORE diff --git a/emulators/vmware-guestd5/files/vmware-guest_kmod.sh b/emulators/vmware-guestd5/files/vmware-guest_kmod.sh new file mode 100644 index 000000000000..4791eda0b737 --- /dev/null +++ b/emulators/vmware-guestd5/files/vmware-guest_kmod.sh @@ -0,0 +1,29 @@ +#!/bin/sh + +if ! PREFIX=$(expr $0 : "\(/.*\)/etc/rc\.d/$(basename $0)\$"); then + echo "$0: Cannot determine the PREFIX" >&2 + exit 1 +fi + +case "$1" in +start) + exec 2>/dev/null + ulimit -c 0 + if ${PREFIX}/sbin/vmware-checkvm >/dev/null; then + kldstat -v | grep vmmemctl >/dev/null || kldload ${PREFIX}/lib/vmware/lib/modules/vmmemctl.ko + echo -n ' vmware-guestkmod' + fi + ;; +stop) + exec 2>/dev/null + ulimit -c 0 + if ${PREFIX}/sbin/vmware-checkvm >/dev/null; then + kldstat -v | grep vmmemctl >/dev/null && kldunload vmmemctl && echo -n ' vmware-guestkmod' + fi + ;; +*) + echo "Usage: `basename $0` {start|stop}" >&2 + ;; +esac + +exit 0 diff --git a/emulators/vmware-guestd5/files/vmware-guestd.sh b/emulators/vmware-guestd5/files/vmware-guestd.sh index 10f0e0e5e31d..569be8a4121e 100644 --- a/emulators/vmware-guestd5/files/vmware-guestd.sh +++ b/emulators/vmware-guestd5/files/vmware-guestd.sh @@ -9,7 +9,7 @@ case "$1" in start) exec 2>/dev/null ulimit -c 0 - if ${PREFIX}/sbin/checkvm >/dev/null; then + if ${PREFIX}/sbin/vmware-checkvm >/dev/null; then ${PREFIX}/sbin/vmware-guestd & echo -n ' vmware-guestd' fi @@ -17,7 +17,7 @@ start) stop) exec 2>/dev/null ulimit -c 0 - if ${PREFIX}/sbin/checkvm >/dev/null; then + if ${PREFIX}/sbin/vmware-checkvm >/dev/null; then killall vmware-guestd && echo -n ' vmware-guestd' fi ;; diff --git a/emulators/vmware-guestd5/files/vmware-guestd.sh.in b/emulators/vmware-guestd5/files/vmware-guestd.sh.in index 10f0e0e5e31d..569be8a4121e 100644 --- a/emulators/vmware-guestd5/files/vmware-guestd.sh.in +++ b/emulators/vmware-guestd5/files/vmware-guestd.sh.in @@ -9,7 +9,7 @@ case "$1" in start) exec 2>/dev/null ulimit -c 0 - if ${PREFIX}/sbin/checkvm >/dev/null; then + if ${PREFIX}/sbin/vmware-checkvm >/dev/null; then ${PREFIX}/sbin/vmware-guestd & echo -n ' vmware-guestd' fi @@ -17,7 +17,7 @@ start) stop) exec 2>/dev/null ulimit -c 0 - if ${PREFIX}/sbin/checkvm >/dev/null; then + if ${PREFIX}/sbin/vmware-checkvm >/dev/null; then killall vmware-guestd && echo -n ' vmware-guestd' fi ;; diff --git a/emulators/vmware-guestd5/pkg-descr b/emulators/vmware-guestd5/pkg-descr index 8a599279a757..920d9d0dbbc7 100644 --- a/emulators/vmware-guestd5/pkg-descr +++ b/emulators/vmware-guestd5/pkg-descr @@ -1,6 +1,7 @@ vmware-guestd daemon is for time synchronization with host OS and others. Beware, this port is for FreeBSD _guest_ OS. You don't need to install -this ports to FreeBSD _host_ OS. +this ports to FreeBSD _host_ OS. This ports also installs a kernel modules +for FreeBSD guest. If you want to run FreeBSD as a VMware guest OS, install this port would help you. If you want to run X, install vmware-tools too. diff --git a/emulators/vmware-guestd5/pkg-descr.tools b/emulators/vmware-guestd5/pkg-descr.tools new file mode 100644 index 000000000000..68165f70e46f --- /dev/null +++ b/emulators/vmware-guestd5/pkg-descr.tools @@ -0,0 +1,16 @@ +VMware tools support FreeBSD _guest_ OS running on VMware Workstation. +Beware, this port is _not_ for FreeBSD _host_ OS. + +VMware tools for FreeBSD consist of vmware-toolbox which supports +seamless operation between the Host and the Guest OS, dual-boot +configulation files, and special XFree86 3.x server for Guest OS. +However, we cannot install dual-boot configuration since it requires +to modify /etc files. + +This ports will install vmware-toolbox to your computer, and +XFree86 X server if you set XFREE86_VERSION to 3 in /etc/make.conf, +If you already use XFree86 4.1.0 or later, you may use 'vmware' +driver for X server. Vmware-guestd is installed as a separate port, +ports/emulators/vmware-guestd4, but this port install guestd automatically. + +WWW: http://www.vmware.com/products/desktop/ws_features.html diff --git a/emulators/vmware-guestd5/pkg-plist b/emulators/vmware-guestd5/pkg-plist index 0748d2977ee2..858c18bd9250 100644 --- a/emulators/vmware-guestd5/pkg-plist +++ b/emulators/vmware-guestd5/pkg-plist @@ -1,3 +1,7 @@ -sbin/checkvm +sbin/vmware-checkvm sbin/vmware-guestd -etc/rc.d/vmware-guestd.sh +etc/rc.d/vmware-guestd.sh.sample +%%VMWARE_VMMEMCTL:%%etc/rc.d/vmware-guest_kmod.sh.sample +%%VMWARE_VMMEMCTL:%%lib/vmware-tools/modules/vmmemctl.ko +%%VMWARE_VMMEMCTL:%%@unexec rmdir %D/lib/vmware-tools/modules 2>/dev/null || true +%%VMWARE_VMMEMCTL:%%@unexec rmdir %D/lib/vmware-tools 2>/dev/null || true diff --git a/emulators/vmware-guestd5/pkg-plist.tools b/emulators/vmware-guestd5/pkg-plist.tools new file mode 100644 index 000000000000..4d614c4466f6 --- /dev/null +++ b/emulators/vmware-guestd5/pkg-plist.tools @@ -0,0 +1,4 @@ +bin/vmware-toolbox +%%INSTALLXSERVER3:%%bin/XF86_VMware +%%INSTALLXSERVER3:%%etc/XF86Config_VMware +%%INSTALLXSERVER4:%%etc/XF86Config-4_VMware |