1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-05 06:27:37 +00:00

Dear VMware Workstation users around the world, here is an upgrade of

VMware Workstation FreeBSD-guest related ports for VMware Workstation
5.5.0 build 18463.

New features are:

- Spell "VMware Workstation" appropriately.
	There are much VMware products, it would be the time that I have
	to spell VMware Workstation as VMware Workstation.
- Support FreeBSD/amd64 since 64-bit binaries are provided from VMware.
	I don't test any of 64-bit related portion, since I have no
	FreeBSD/amd64 machine.  If something trouble please email me.
- New variable "WITH_VMWARE_GTK" (emulators/vmware-tools5)
	Install gtk version of VMware Tools if defined
	(add more dependencies on other gtk-related ports)
- New variable "WITH_VMWARE_VMXNET" (emulators/vmware-guestd5)
	Install "vmxnet.ko" kernel module (vmxnet driver) if defined
	Usage:
		- shutdown FreeBSD guest VM
		- add following line to FreeBSD guest VM config file
			Ethernet0.virtualDev="vmxnet"
		- Boot FreeBSD guest VM
		- load vmxnet.ko kernel module
		- ifconfig vxn0 ...
	New rc.conf variable "vmware_guest_vmxnet_enable" is also added
	to vmware-guestd.sh to load kernel module at startup.  However,
	${PREFIX}/etc/rc.d/vmware-guestd.sh run _after_ /etc/rc.d/netif,
	so it maybe too late to load here...
	Note that vmxnet.ko supports FreeBSD 4.8-RELEASE or later, and
	5.3-RELEASE and later (as VMware said).  I've confirmed that
	recent 7-current got 100% instant panic if vmxnet.ko is loaded.
- "vmware_guest_kmod_enable" is renamed to "vmware_guest_vmmemctl_enable"
	Now this ports has two kernel modules now, old name is not
	appropriate one, hard to understand this variable is for which
	kernel module.  I also put backward compatibility code, but users
	of vmware_guest_kmod_enable please change variable name.

Bugfixes are:

- Resolve conflicts on ${PREFIX}/share/vmware-tools.
	Unfortunately both vmware-guestd5 and vmware-tools5 installs
	files to ${PREFIX}/share/vmware-tools directory.  Since this
	directory is only for vmware-tools, vmware-guestd5 doesn't do
	anything for now.
- WWW: line in pkg-descr points bogus page.
- Add note that there's official VMware Tools installer, and what is the
  difference between the two.

Finally, as usual, bump PORTVERSION.
This commit is contained in:
Makoto Matsushita 2005-11-26 09:19:58 +00:00
parent 8b730fc90b
commit 1ebe8f4959
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=149557
20 changed files with 396 additions and 140 deletions

View File

@ -7,18 +7,21 @@
PORTNAME= vmware-toolbox
PORTVERSION= ${VMWARE_VER}.${BUILD_VER}
PORTREVISION= 1
#PORTREVISION= 0
CATEGORIES= emulators linux
MASTER_SITES= # bundled with VMware itself
MASTER_SITES= # bundled with VMware Workstation
PKGNAMEPREFIX= linux-
DISTNAME= VMwareTools-${VMWARE_VER}-${BUILD_VER}
MAINTAINER= matusita@FreeBSD.org
COMMENT=VMware toolbox for guest OS (for VMware 5.x, Linux version)
COMMENT=VMware toolbox for guest OS (VMware Workstation 5.x, Linux version)
RUN_DEPENDS= ${LINUXBASE}/usr/lib/libgtk-1.2.so.0:${PORTSDIR}/x11-toolkits/linux-gtk
DISTDIR= ${MOUNT_PT}
IGNOREFILES= ${DISTFILES}
PLIST_FILES= bin/linux-vmware-toolbox
PLIST_FILES= bin/linux-vmware-toolbox bin/linux-vmware-toolbox-gtk \
bin/linux-vmware-user
WRKSRC= ${WRKDIR}/vmware-tools-distrib
ONLY_FOR_ARCHS= i386
@ -32,8 +35,8 @@ IS_INTERACTIVE= yes
RESTRICTED= "Not sure if we can redistribute this."
NO_PACKAGE= ${RESTRICTED}
VMWARE_VER= 5.0.0
BUILD_VER= 13124
VMWARE_VER= 5.5.0
BUILD_VER= 18463
.include <bsd.port.pre.mk>
@ -46,6 +49,12 @@ MOUNT_PT?= /mnt
MOUNT= /sbin/mount
UMOUNT= /sbin/umount
.if ${ARCH} == i386
BITS?= 32
.else # ${ARCH} == amd64
BITS?= 64
.endif
do-fetch:
@${DO_NADA}
fetch-list:
@ -87,7 +96,10 @@ post-extract:
${UMOUNT} ${MOUNT_DEV}
do-install:
${BRANDELF} -t Linux ${WRKSRC}/bin/vmware-toolbox-old
${INSTALL_PROGRAM} ${WRKSRC}/bin/vmware-toolbox-old ${PREFIX}/bin/linux-vmware-toolbox
.for file in vmware-toolbox-gtk vmware-user
${BRANDELF} -t Linux ${WRKSRC}/lib/bin${BITS}/${file}
${INSTALL_PROGRAM} ${WRKSRC}/lib/bin${BITS}/${file} ${PREFIX}/bin/linux-${file}
.endfor
${LN} -sfh linux-vmware-toolbox-gtk ${PREFIX}/bin/linux-vmware-toolbox
.include <bsd.port.post.mk>

View File

@ -1,2 +1,2 @@
MD5 (VMwareTools-5.0.0-13124.tar.gz) = IGNORE
SHA256 (VMwareTools-5.0.0-13124.tar.gz) = IGNORE
MD5 (VMwareTools-5.5.0-18463.tar.gz) = IGNORE
SHA256 (VMwareTools-5.5.0-18463.tar.gz) = IGNORE

View File

@ -7,18 +7,21 @@
PORTNAME= vmware-toolbox
PORTVERSION= ${VMWARE_VER}.${BUILD_VER}
PORTREVISION= 1
#PORTREVISION= 0
CATEGORIES= emulators linux
MASTER_SITES= # bundled with VMware itself
MASTER_SITES= # bundled with VMware Workstation
PKGNAMEPREFIX= linux-
DISTNAME= VMwareTools-${VMWARE_VER}-${BUILD_VER}
MAINTAINER= matusita@FreeBSD.org
COMMENT=VMware toolbox for guest OS (for VMware 5.x, Linux version)
COMMENT=VMware toolbox for guest OS (VMware Workstation 5.x, Linux version)
RUN_DEPENDS= ${LINUXBASE}/usr/lib/libgtk-1.2.so.0:${PORTSDIR}/x11-toolkits/linux-gtk
DISTDIR= ${MOUNT_PT}
IGNOREFILES= ${DISTFILES}
PLIST_FILES= bin/linux-vmware-toolbox
PLIST_FILES= bin/linux-vmware-toolbox bin/linux-vmware-toolbox-gtk \
bin/linux-vmware-user
WRKSRC= ${WRKDIR}/vmware-tools-distrib
ONLY_FOR_ARCHS= i386
@ -32,8 +35,8 @@ IS_INTERACTIVE= yes
RESTRICTED= "Not sure if we can redistribute this."
NO_PACKAGE= ${RESTRICTED}
VMWARE_VER= 5.0.0
BUILD_VER= 13124
VMWARE_VER= 5.5.0
BUILD_VER= 18463
.include <bsd.port.pre.mk>
@ -46,6 +49,12 @@ MOUNT_PT?= /mnt
MOUNT= /sbin/mount
UMOUNT= /sbin/umount
.if ${ARCH} == i386
BITS?= 32
.else # ${ARCH} == amd64
BITS?= 64
.endif
do-fetch:
@${DO_NADA}
fetch-list:
@ -87,7 +96,10 @@ post-extract:
${UMOUNT} ${MOUNT_DEV}
do-install:
${BRANDELF} -t Linux ${WRKSRC}/bin/vmware-toolbox-old
${INSTALL_PROGRAM} ${WRKSRC}/bin/vmware-toolbox-old ${PREFIX}/bin/linux-vmware-toolbox
.for file in vmware-toolbox-gtk vmware-user
${BRANDELF} -t Linux ${WRKSRC}/lib/bin${BITS}/${file}
${INSTALL_PROGRAM} ${WRKSRC}/lib/bin${BITS}/${file} ${PREFIX}/bin/linux-${file}
.endfor
${LN} -sfh linux-vmware-toolbox-gtk ${PREFIX}/bin/linux-vmware-toolbox
.include <bsd.port.post.mk>

View File

@ -1,2 +1,2 @@
MD5 (VMwareTools-5.0.0-13124.tar.gz) = IGNORE
SHA256 (VMwareTools-5.0.0-13124.tar.gz) = IGNORE
MD5 (VMwareTools-5.5.0-18463.tar.gz) = IGNORE
SHA256 (VMwareTools-5.5.0-18463.tar.gz) = IGNORE

View File

@ -9,12 +9,12 @@ PORTNAME= vmware
PORTVERSION= ${VMWARE_VER}.${BUILD_VER}
PORTREVISION= 0
CATEGORIES= emulators
MASTER_SITES= # bundled with VMware itself
MASTER_SITES= # bundled with VMware Workstation
PKGNAMESUFFIX?= -guestd
DISTNAME= vmware-freebsd-tools
MAINTAINER= matusita@FreeBSD.org
COMMENT?=VMware time synchronization daemon for FreeBSD guest OS (for VMware 5.x)
COMMENT?=VMware guest OS supporting daemon (VMware Workstation 5.x, FreeBSD version)
.if defined(VMWARE_X_PORTS)
RUN_DEPENDS= ${LOCALBASE}/sbin/vmware-guestd:${PORTSDIR}/emulators/vmware-guestd5
@ -24,7 +24,7 @@ DISTDIR= ${MOUNT_PT}
IGNOREFILES= ${DISTFILES}
WRKSRC= ${WRKDIR}/vmware-tools-distrib
ONLY_FOR_ARCHS= i386
ONLY_FOR_ARCHS= i386 amd64
USE_REINPLACE= yes
USE_RC_SUBR= yes
RC_SCRIPT= ${PREFIX}/etc/rc.d/vmware-guestd.sh
@ -40,8 +40,8 @@ NO_BUILD= yes
RESTRICTED= "Not sure if we can redistribute this."
NO_PACKAGE= ${RESTRICTED}
VMWARE_VER= 5.0.0
BUILD_VER= 13124
VMWARE_VER= 5.5.0
BUILD_VER= 18463
.include <bsd.port.pre.mk>
@ -54,10 +54,20 @@ MOUNT_PT?= /mnt
MOUNT= /sbin/mount
UMOUNT= /sbin/umount
.if ${ARCH} == i386
BITS?= 32
.else # ${ARCH} == amd64
BITS?= 64
.endif
.if defined(VMWARE_X_PORTS)
.if ${X_WINDOW_SYSTEM:L} == xfree86-3
.if ${BITS} == 32
PLIST_SUB+= INSTALLXSERVER3:=""
.else
PLIST_SUB+= INSTALLXSERVER3:="@comment "
.endif
PLIST_SUB+= INSTALLXSERVER4:="@comment "
PLIST_SUB+= INSTALLXVMMOUSE:="@comment "
.elif ${X_WINDOW_SYSTEM:L} == xfree86-4
@ -70,19 +80,57 @@ PLIST_SUB+= INSTALLXSERVER4:="@comment "
PLIST_SUB+= INSTALLXVMMOUSE:=""
.endif
.if defined(WITH_VMWARE_GTK)
PLIST_SUB+= INSTALLXGTKTOOL:=""
USE_ICONV= yes
USE_GETTEXT= yes
USE_XLIB= yes
USE_GNOME= glib12 gtk12
LIB_DEPENDS+= c.5:${PORTSDIR}/misc/compat5x
.else
PLIST_SUB+= INSTALLXGTKTOOL:="@comment "
.endif
.else
.if !defined(WITHOUT_VMWARE_VMMEMCTL)
.if exists(/usr/src/sys/Makefile)
VMWARE_KMODDIR= ${PREFIX}/lib/vmware-tools/modules
.if !defined(WITHOUT_VMWARE_VMMEMCTL) && exists(/usr/src/sys/Makefile)
WITH_VMWARE_VMMEMCTL=YES
.endif
.if !defined(WITHOUT_VMWARE_VMXNET) && (${BITS} == 32)
WITH_VMWARE_VMXNET=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 "
.endif
.if defined(WITH_VMWARE_VMXNET)
.if (${OSVERSION} >= 480000) && (${OSVERSION} < 500000) && (${BITS} == 32)
PLIST_SUB+= VMWARE_VMXNET:=""
VMWARE_VMXNET_PATH= 4.9/vmxnet.ko
.elif (${OSVERSION} >= 500000) && (${OSVERSION} < 600000)
PLIST_SUB+= VMWARE_VMXNET:=""
.if ${BITS} == 32
VMWARE_VMXNET_PATH= 5.3-i386/vmxnet.ko
.else
VMWARE_VMXNET_PATH= 5.3-amd64/vmxnet.ko
.endif
.else
# VMware doesn't provide vmxnet.ko for other versions
.undef WITH_VMWARE_VMXNET
PLIST_SUB+= VMWARE_VMXNET:="@comment "
.endif
.else
PLIST_SUB+= VMWARE_VMXNET:="@comment "
.endif
.if defined(WITH_VMWARE_VMMEMCTL) || defined(WITH_VMWARE_VMXNET)
PLIST_SUB+= VMWARE_KMODDIR:=""
.else
PLIST_SUB+= VMWARE_KMODDIR:="@comment "
.endif
@ -122,53 +170,43 @@ post-extract:
(cd ${WRKDIR}; ${TAR} xf ${WRKSRC}/lib/modules/source/vmmemctl.tar)
.endif
post-patch:
.if defined(WITH_VMWARE_VMMEMCTL)
${REINPLACE_CMD} -e 's|vmmemctl1.o||' ${WRKDIR}/vmmemctl-only/Makefile
${ECHO_CMD} "OBJS+=vmmemctl1.o" >> ${WRKDIR}/vmmemctl-only/Makefile
.endif
${REINPLACE_CMD} "`${PRINTF} 's|\0152\013\0350|\0152\\\n\0350|g'`" \
${WRKSRC}/sbin/vmware-checkvm
.if defined(VMWARE_X_PORTS)
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/bin/vmware-toolbox ${X11BASE}/bin
${INSTALL_PROGRAM} ${WRKSRC}/lib/bin${BITS}/vmware-toolbox-tcl ${X11BASE}/bin
${LN} -sfh vmware-toolbox-tcl ${X11BASE}/bin/vmware-toolbox
.if defined(WITH_VMWARE_GTK)
${INSTALL_PROGRAM} ${WRKSRC}/lib/bin${BITS}/vmware-toolbox-gtk ${X11BASE}/bin
.endif
.if ${X_WINDOW_SYSTEM:L} == xfree86-3
.if ${BITS} == 32
${INSTALL_PROGRAM} ${WRKSRC}/lib/configurator/XFree86-3/XF86_VMware_4.5 ${X11BASE}/bin/XF86_VMware
${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
@${ECHO} "There is no XFree86 3.x X server for your system."
@${ECHO} "Consider upgrading your X to XFree86 4.x or switch to X.Org."
.endif
.elif ${X_WINDOW_SYSTEM:L} == xfree86-4
${INSTALL_DATA} ${WRKSRC}/lib/configurator/XFree86-4/XF86Config-4 ${X11BASE}/etc/XF86Config-4_VMware
.if ${BITS} == 32
${INSTALL_DATA} ${WRKSRC}/lib/configurator/XFree86-4/4.3.x/vmware_drv.o ${X11BASE}/lib/modules/drivers/vmware_drv.o_VMware
${INSTALL_DATA} ${WRKSRC}/lib/configurator/XFree86-4/4.2.x/vmmouse_drv.o ${X11BASE}/lib/modules/input/vmmouse_drv.o_VMware
.else
${INSTALL_DATA} ${WRKSRC}/lib/configurator/XOrg/6.8.x/vmmouse_drv.o ${X11BASE}/lib/modules/input/vmmouse_drv.o_VMware
${INSTALL_DATA} ${WRKSRC}/lib/configurator/XFree86-4/4.3.x_64/vmware_drv.o ${X11BASE}/lib/modules/drivers/vmware_drv.o_VMware
${INSTALL_DATA} ${WRKSRC}/lib/configurator/XFree86-4/4.3.x_64/vmmouse_drv.o ${X11BASE}/lib/modules/input/vmmouse_drv.o_VMware
.endif
-${LOCALBASE}/sbin/vmware-guestd --cmd toolinstall.end
.else
do-build:
.if defined(WITH_VMWARE_VMMEMCTL)
(cd ${WRKDIR}/vmmemctl-only; make)
.if ${BITS} == 32
${INSTALL_DATA} ${WRKSRC}/lib/configurator/XOrg/6.8.x/vmmouse_drv.o ${X11BASE}/lib/modules/input/vmmouse_drv.o_VMware
.else
${INSTALL_DATA} ${WRKSRC}/lib/configurator/XOrg/6.8.x_64/vmmouse_drv.o ${X11BASE}/lib/modules/input/vmmouse_drv.o_VMware
.endif
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/sbin/vmware-guestd ${PREFIX}/sbin
${INSTALL_PROGRAM} ${WRKSRC}/sbin/vmware-checkvm ${PREFIX}/sbin
.if defined(WITH_VMWARE_VMMEMCTL)
${MKDIR} ${VMWARE_KMODDIR}
${INSTALL_PROGRAM} ${WRKDIR}/vmmemctl-only/vmmemctl.ko ${VMWARE_KMODDIR}
.endif
@${SED} ${RC_SCRIPTS_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
${FILESDIR}/vmware-guestd.sh > ${WRKDIR}/vmware-guestd.sh
@${INSTALL_SCRIPT} ${WRKDIR}/vmware-guestd.sh ${RC_SCRIPT}
-${LOCALBASE}/sbin/vmware-guestd --cmd toolinstall.end
.endif
-${WRKSRC}/lib/sbin${BITS}/vmware-guestd --cmd toolinstall.end
${MKDIR} ${PREFIX}/share/vmware-tools
${LN} -sfh /usr/bin/true ${PREFIX}/share/vmware-tools/poweroff-vm-default
${LN} -sfh /usr/bin/true ${PREFIX}/share/vmware-tools/poweron-vm-default
@ -176,4 +214,33 @@ do-install:
${LN} -sfh /usr/bin/true ${PREFIX}/share/vmware-tools/suspend-vm-default
${LN} -sfh ${PREFIX}/share/vmware-tools /etc/vmware-tools
.else
post-patch:
${REINPLACE_CMD} "`${PRINTF} 's|\0152\013\0350|\0152\\\n\0350|g'`" \
${WRKSRC}/lib/sbin${BITS}/vmware-checkvm
do-build:
.if defined(WITH_VMWARE_VMMEMCTL)
(cd ${WRKDIR}/vmmemctl-only; make)
.endif
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/lib/sbin${BITS}/vmware-guestd ${PREFIX}/sbin
${INSTALL_PROGRAM} ${WRKSRC}/lib/sbin${BITS}/vmware-checkvm ${PREFIX}/sbin
.if defined(WITH_VMWARE_VMMEMCTL)
${MKDIR} ${VMWARE_KMODDIR}
${INSTALL_PROGRAM} ${WRKDIR}/vmmemctl-only/vmmemctl.ko ${VMWARE_KMODDIR}
.endif
.if defined(WITH_VMWARE_VMXNET)
${MKDIR} ${VMWARE_KMODDIR}
${INSTALL_PROGRAM} ${WRKDIR}/lib/modules/binary/FreeBSD${VMWARE_VMXNET_PATH} ${VMWARE_KMODDIR}
.endif
@${SED} ${RC_SCRIPTS_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
${FILESDIR}/vmware-guestd.sh > ${WRKDIR}/vmware-guestd.sh
@${INSTALL_SCRIPT} ${WRKDIR}/vmware-guestd.sh ${RC_SCRIPT}
-${WRKSRC}/lib/sbin${BITS}/vmware-guestd --cmd toolinstall.end
.endif
.include <bsd.port.post.mk>

View File

@ -15,22 +15,40 @@ PREFIX=%%PREFIX%%
checkvm_cmd="${PREFIX}/sbin/vmware-checkvm > /dev/null"
# Functions
vmware_guest_kmod_start()
vmware_guest_vmmemctl_start()
{
echo 'Loading vmmemctl kernel module.'
kldload ${PREFIX}/lib/vmware-tools/modules/vmmemctl.ko >/dev/null 2>&1
}
vmware_guest_vmmemctl_start()
{
echo 'Loading vmxnet kernel module.'
kldload ${PREFIX}/lib/vmware-tools/modules/vmxnet.ko >/dev/null 2>&1
}
# VMware kernel modules
name="vmware_guest_kmod"
# VMware kernel module: vmmemctl
name="vmware_guest_vmmemctl"
rcvar=`set_rcvar`
start_precmd="${checkvm_cmd}"
start_cmd="vmware_guest_kmod_start"
start_cmd="vmware_guest_vmmemctl_start"
stop_precmd="${checkvm_cmd}"
stop_cmd=":"
load_rc_config $name
[ -z "$vmware_guest_kmod_enable" ] && vmware_guest_kmod_enable="NO"
[ -z "$vmware_guest_vmmemctl_enable" ] && vmware_guest_vmmemctl_enable="NO"
[ -n "$vmware_guest_kmod_enable" ] && vmware_guest_vmmemctl_enable="$vmware_guest_kmod_enable"
run_rc_command "$1"
# VMware kernel module: vmxnet
name="vmware_guest_vmxnet"
rcvar=`set_rcvar`
start_precmd="${checkvm_cmd}"
start_cmd="vmware_guest_vmxnet_start"
stop_precmd="${checkvm_cmd}"
stop_cmd=":"
load_rc_config $name
[ -z "$vmware_guest_vmxnet_enable" ] && vmware_guest_vmxnet_enable="NO"
run_rc_command "$1"
# VMware guest daemon

View File

@ -15,22 +15,40 @@ PREFIX=%%PREFIX%%
checkvm_cmd="${PREFIX}/sbin/vmware-checkvm > /dev/null"
# Functions
vmware_guest_kmod_start()
vmware_guest_vmmemctl_start()
{
echo 'Loading vmmemctl kernel module.'
kldload ${PREFIX}/lib/vmware-tools/modules/vmmemctl.ko >/dev/null 2>&1
}
vmware_guest_vmmemctl_start()
{
echo 'Loading vmxnet kernel module.'
kldload ${PREFIX}/lib/vmware-tools/modules/vmxnet.ko >/dev/null 2>&1
}
# VMware kernel modules
name="vmware_guest_kmod"
# VMware kernel module: vmmemctl
name="vmware_guest_vmmemctl"
rcvar=`set_rcvar`
start_precmd="${checkvm_cmd}"
start_cmd="vmware_guest_kmod_start"
start_cmd="vmware_guest_vmmemctl_start"
stop_precmd="${checkvm_cmd}"
stop_cmd=":"
load_rc_config $name
[ -z "$vmware_guest_kmod_enable" ] && vmware_guest_kmod_enable="NO"
[ -z "$vmware_guest_vmmemctl_enable" ] && vmware_guest_vmmemctl_enable="NO"
[ -n "$vmware_guest_kmod_enable" ] && vmware_guest_vmmemctl_enable="$vmware_guest_kmod_enable"
run_rc_command "$1"
# VMware kernel module: vmxnet
name="vmware_guest_vmxnet"
rcvar=`set_rcvar`
start_precmd="${checkvm_cmd}"
start_cmd="vmware_guest_vmxnet_start"
stop_precmd="${checkvm_cmd}"
stop_cmd=":"
load_rc_config $name
[ -z "$vmware_guest_vmxnet_enable" ] && vmware_guest_vmxnet_enable="NO"
run_rc_command "$1"
# VMware guest daemon

View File

@ -6,4 +6,9 @@ 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.
WWW: http://www.vmware.com/products/desktop/ws_features.html
This port assumes that a) users want only "must-have" binaries and
b) guest OS runs on a certain architecture and never be changed. For
those want full-feature of VMware Tools, use the installer bundled with
VMware Tools instead.
WWW: http://www.vmware.com/products/ws/

View File

@ -13,4 +13,9 @@ 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
This port assumes that a) users want only "must-have" binaries and
b) guest OS runs on a certain architecture and never be changed. For
those want full-feature of VMware Tools, use the installer bundled with
VMware Tools instead.
WWW: http://www.vmware.com/products/ws/

View File

@ -3,12 +3,6 @@ sbin/vmware-guestd
@unexec %D/etc/rc.d/vmware-guestd.sh forcestop 2>/dev/null || true
etc/rc.d/vmware-guestd.sh
%%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
share/vmware-tools/poweroff-vm-default
share/vmware-tools/poweron-vm-default
share/vmware-tools/resume-vm-default
share/vmware-tools/suspend-vm-default
@dirrm share/vmware-tools
@cwd /
etc/vmware-tools
%%VMWARE_VMXNET:%%lib/vmware-tools/modules/vmxnet.ko
%%VMWARE_KMODDIR:%%@unexec rmdir %D/lib/vmware-tools/modules 2>/dev/null || true
%%VMWARE_KMODDIR:%%@unexec rmdir %D/lib/vmware-tools 2>/dev/null || true

View File

@ -1,6 +1,15 @@
bin/vmware-toolbox
bin/vmware-toolbox-tcl
%%INSTALLXGTKTOOL:%%bin/vmware-toolbox-gtk
%%INSTALLXSERVER3:%%bin/XF86_VMware
%%INSTALLXSERVER3:%%etc/XF86Config_VMware
%%INSTALLXSERVER4:%%etc/XF86Config-4_VMware
%%INSTALLXSERVER4:%%lib/modules/drivers/vmware_drv.o_VMware
%%INSTALLXVMMOUSE:%%lib/modules/input/vmmouse_drv.o_VMware
share/vmware-tools/poweroff-vm-default
share/vmware-tools/poweron-vm-default
share/vmware-tools/resume-vm-default
share/vmware-tools/suspend-vm-default
@dirrm share/vmware-tools
@cwd /
etc/vmware-tools

View File

@ -9,12 +9,12 @@ PORTNAME= vmware
PORTVERSION= ${VMWARE_VER}.${BUILD_VER}
PORTREVISION= 0
CATEGORIES= emulators
MASTER_SITES= # bundled with VMware itself
MASTER_SITES= # bundled with VMware Workstation
PKGNAMESUFFIX?= -guestd
DISTNAME= vmware-freebsd-tools
MAINTAINER= matusita@FreeBSD.org
COMMENT?=VMware time synchronization daemon for FreeBSD guest OS (for VMware 5.x)
COMMENT?=VMware guest OS supporting daemon (VMware Workstation 5.x, FreeBSD version)
.if defined(VMWARE_X_PORTS)
RUN_DEPENDS= ${LOCALBASE}/sbin/vmware-guestd:${PORTSDIR}/emulators/vmware-guestd5
@ -24,7 +24,7 @@ DISTDIR= ${MOUNT_PT}
IGNOREFILES= ${DISTFILES}
WRKSRC= ${WRKDIR}/vmware-tools-distrib
ONLY_FOR_ARCHS= i386
ONLY_FOR_ARCHS= i386 amd64
USE_REINPLACE= yes
USE_RC_SUBR= yes
RC_SCRIPT= ${PREFIX}/etc/rc.d/vmware-guestd.sh
@ -40,8 +40,8 @@ NO_BUILD= yes
RESTRICTED= "Not sure if we can redistribute this."
NO_PACKAGE= ${RESTRICTED}
VMWARE_VER= 5.0.0
BUILD_VER= 13124
VMWARE_VER= 5.5.0
BUILD_VER= 18463
.include <bsd.port.pre.mk>
@ -54,10 +54,20 @@ MOUNT_PT?= /mnt
MOUNT= /sbin/mount
UMOUNT= /sbin/umount
.if ${ARCH} == i386
BITS?= 32
.else # ${ARCH} == amd64
BITS?= 64
.endif
.if defined(VMWARE_X_PORTS)
.if ${X_WINDOW_SYSTEM:L} == xfree86-3
.if ${BITS} == 32
PLIST_SUB+= INSTALLXSERVER3:=""
.else
PLIST_SUB+= INSTALLXSERVER3:="@comment "
.endif
PLIST_SUB+= INSTALLXSERVER4:="@comment "
PLIST_SUB+= INSTALLXVMMOUSE:="@comment "
.elif ${X_WINDOW_SYSTEM:L} == xfree86-4
@ -70,19 +80,57 @@ PLIST_SUB+= INSTALLXSERVER4:="@comment "
PLIST_SUB+= INSTALLXVMMOUSE:=""
.endif
.if defined(WITH_VMWARE_GTK)
PLIST_SUB+= INSTALLXGTKTOOL:=""
USE_ICONV= yes
USE_GETTEXT= yes
USE_XLIB= yes
USE_GNOME= glib12 gtk12
LIB_DEPENDS+= c.5:${PORTSDIR}/misc/compat5x
.else
PLIST_SUB+= INSTALLXGTKTOOL:="@comment "
.endif
.else
.if !defined(WITHOUT_VMWARE_VMMEMCTL)
.if exists(/usr/src/sys/Makefile)
VMWARE_KMODDIR= ${PREFIX}/lib/vmware-tools/modules
.if !defined(WITHOUT_VMWARE_VMMEMCTL) && exists(/usr/src/sys/Makefile)
WITH_VMWARE_VMMEMCTL=YES
.endif
.if !defined(WITHOUT_VMWARE_VMXNET) && (${BITS} == 32)
WITH_VMWARE_VMXNET=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 "
.endif
.if defined(WITH_VMWARE_VMXNET)
.if (${OSVERSION} >= 480000) && (${OSVERSION} < 500000) && (${BITS} == 32)
PLIST_SUB+= VMWARE_VMXNET:=""
VMWARE_VMXNET_PATH= 4.9/vmxnet.ko
.elif (${OSVERSION} >= 500000) && (${OSVERSION} < 600000)
PLIST_SUB+= VMWARE_VMXNET:=""
.if ${BITS} == 32
VMWARE_VMXNET_PATH= 5.3-i386/vmxnet.ko
.else
VMWARE_VMXNET_PATH= 5.3-amd64/vmxnet.ko
.endif
.else
# VMware doesn't provide vmxnet.ko for other versions
.undef WITH_VMWARE_VMXNET
PLIST_SUB+= VMWARE_VMXNET:="@comment "
.endif
.else
PLIST_SUB+= VMWARE_VMXNET:="@comment "
.endif
.if defined(WITH_VMWARE_VMMEMCTL) || defined(WITH_VMWARE_VMXNET)
PLIST_SUB+= VMWARE_KMODDIR:=""
.else
PLIST_SUB+= VMWARE_KMODDIR:="@comment "
.endif
@ -122,53 +170,43 @@ post-extract:
(cd ${WRKDIR}; ${TAR} xf ${WRKSRC}/lib/modules/source/vmmemctl.tar)
.endif
post-patch:
.if defined(WITH_VMWARE_VMMEMCTL)
${REINPLACE_CMD} -e 's|vmmemctl1.o||' ${WRKDIR}/vmmemctl-only/Makefile
${ECHO_CMD} "OBJS+=vmmemctl1.o" >> ${WRKDIR}/vmmemctl-only/Makefile
.endif
${REINPLACE_CMD} "`${PRINTF} 's|\0152\013\0350|\0152\\\n\0350|g'`" \
${WRKSRC}/sbin/vmware-checkvm
.if defined(VMWARE_X_PORTS)
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/bin/vmware-toolbox ${X11BASE}/bin
${INSTALL_PROGRAM} ${WRKSRC}/lib/bin${BITS}/vmware-toolbox-tcl ${X11BASE}/bin
${LN} -sfh vmware-toolbox-tcl ${X11BASE}/bin/vmware-toolbox
.if defined(WITH_VMWARE_GTK)
${INSTALL_PROGRAM} ${WRKSRC}/lib/bin${BITS}/vmware-toolbox-gtk ${X11BASE}/bin
.endif
.if ${X_WINDOW_SYSTEM:L} == xfree86-3
.if ${BITS} == 32
${INSTALL_PROGRAM} ${WRKSRC}/lib/configurator/XFree86-3/XF86_VMware_4.5 ${X11BASE}/bin/XF86_VMware
${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
@${ECHO} "There is no XFree86 3.x X server for your system."
@${ECHO} "Consider upgrading your X to XFree86 4.x or switch to X.Org."
.endif
.elif ${X_WINDOW_SYSTEM:L} == xfree86-4
${INSTALL_DATA} ${WRKSRC}/lib/configurator/XFree86-4/XF86Config-4 ${X11BASE}/etc/XF86Config-4_VMware
.if ${BITS} == 32
${INSTALL_DATA} ${WRKSRC}/lib/configurator/XFree86-4/4.3.x/vmware_drv.o ${X11BASE}/lib/modules/drivers/vmware_drv.o_VMware
${INSTALL_DATA} ${WRKSRC}/lib/configurator/XFree86-4/4.2.x/vmmouse_drv.o ${X11BASE}/lib/modules/input/vmmouse_drv.o_VMware
.else
${INSTALL_DATA} ${WRKSRC}/lib/configurator/XOrg/6.8.x/vmmouse_drv.o ${X11BASE}/lib/modules/input/vmmouse_drv.o_VMware
${INSTALL_DATA} ${WRKSRC}/lib/configurator/XFree86-4/4.3.x_64/vmware_drv.o ${X11BASE}/lib/modules/drivers/vmware_drv.o_VMware
${INSTALL_DATA} ${WRKSRC}/lib/configurator/XFree86-4/4.3.x_64/vmmouse_drv.o ${X11BASE}/lib/modules/input/vmmouse_drv.o_VMware
.endif
-${LOCALBASE}/sbin/vmware-guestd --cmd toolinstall.end
.else
do-build:
.if defined(WITH_VMWARE_VMMEMCTL)
(cd ${WRKDIR}/vmmemctl-only; make)
.if ${BITS} == 32
${INSTALL_DATA} ${WRKSRC}/lib/configurator/XOrg/6.8.x/vmmouse_drv.o ${X11BASE}/lib/modules/input/vmmouse_drv.o_VMware
.else
${INSTALL_DATA} ${WRKSRC}/lib/configurator/XOrg/6.8.x_64/vmmouse_drv.o ${X11BASE}/lib/modules/input/vmmouse_drv.o_VMware
.endif
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/sbin/vmware-guestd ${PREFIX}/sbin
${INSTALL_PROGRAM} ${WRKSRC}/sbin/vmware-checkvm ${PREFIX}/sbin
.if defined(WITH_VMWARE_VMMEMCTL)
${MKDIR} ${VMWARE_KMODDIR}
${INSTALL_PROGRAM} ${WRKDIR}/vmmemctl-only/vmmemctl.ko ${VMWARE_KMODDIR}
.endif
@${SED} ${RC_SCRIPTS_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
${FILESDIR}/vmware-guestd.sh > ${WRKDIR}/vmware-guestd.sh
@${INSTALL_SCRIPT} ${WRKDIR}/vmware-guestd.sh ${RC_SCRIPT}
-${LOCALBASE}/sbin/vmware-guestd --cmd toolinstall.end
.endif
-${WRKSRC}/lib/sbin${BITS}/vmware-guestd --cmd toolinstall.end
${MKDIR} ${PREFIX}/share/vmware-tools
${LN} -sfh /usr/bin/true ${PREFIX}/share/vmware-tools/poweroff-vm-default
${LN} -sfh /usr/bin/true ${PREFIX}/share/vmware-tools/poweron-vm-default
@ -176,4 +214,33 @@ do-install:
${LN} -sfh /usr/bin/true ${PREFIX}/share/vmware-tools/suspend-vm-default
${LN} -sfh ${PREFIX}/share/vmware-tools /etc/vmware-tools
.else
post-patch:
${REINPLACE_CMD} "`${PRINTF} 's|\0152\013\0350|\0152\\\n\0350|g'`" \
${WRKSRC}/lib/sbin${BITS}/vmware-checkvm
do-build:
.if defined(WITH_VMWARE_VMMEMCTL)
(cd ${WRKDIR}/vmmemctl-only; make)
.endif
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/lib/sbin${BITS}/vmware-guestd ${PREFIX}/sbin
${INSTALL_PROGRAM} ${WRKSRC}/lib/sbin${BITS}/vmware-checkvm ${PREFIX}/sbin
.if defined(WITH_VMWARE_VMMEMCTL)
${MKDIR} ${VMWARE_KMODDIR}
${INSTALL_PROGRAM} ${WRKDIR}/vmmemctl-only/vmmemctl.ko ${VMWARE_KMODDIR}
.endif
.if defined(WITH_VMWARE_VMXNET)
${MKDIR} ${VMWARE_KMODDIR}
${INSTALL_PROGRAM} ${WRKDIR}/lib/modules/binary/FreeBSD${VMWARE_VMXNET_PATH} ${VMWARE_KMODDIR}
.endif
@${SED} ${RC_SCRIPTS_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
${FILESDIR}/vmware-guestd.sh > ${WRKDIR}/vmware-guestd.sh
@${INSTALL_SCRIPT} ${WRKDIR}/vmware-guestd.sh ${RC_SCRIPT}
-${WRKSRC}/lib/sbin${BITS}/vmware-guestd --cmd toolinstall.end
.endif
.include <bsd.port.post.mk>

View File

@ -15,22 +15,40 @@ PREFIX=%%PREFIX%%
checkvm_cmd="${PREFIX}/sbin/vmware-checkvm > /dev/null"
# Functions
vmware_guest_kmod_start()
vmware_guest_vmmemctl_start()
{
echo 'Loading vmmemctl kernel module.'
kldload ${PREFIX}/lib/vmware-tools/modules/vmmemctl.ko >/dev/null 2>&1
}
vmware_guest_vmmemctl_start()
{
echo 'Loading vmxnet kernel module.'
kldload ${PREFIX}/lib/vmware-tools/modules/vmxnet.ko >/dev/null 2>&1
}
# VMware kernel modules
name="vmware_guest_kmod"
# VMware kernel module: vmmemctl
name="vmware_guest_vmmemctl"
rcvar=`set_rcvar`
start_precmd="${checkvm_cmd}"
start_cmd="vmware_guest_kmod_start"
start_cmd="vmware_guest_vmmemctl_start"
stop_precmd="${checkvm_cmd}"
stop_cmd=":"
load_rc_config $name
[ -z "$vmware_guest_kmod_enable" ] && vmware_guest_kmod_enable="NO"
[ -z "$vmware_guest_vmmemctl_enable" ] && vmware_guest_vmmemctl_enable="NO"
[ -n "$vmware_guest_kmod_enable" ] && vmware_guest_vmmemctl_enable="$vmware_guest_kmod_enable"
run_rc_command "$1"
# VMware kernel module: vmxnet
name="vmware_guest_vmxnet"
rcvar=`set_rcvar`
start_precmd="${checkvm_cmd}"
start_cmd="vmware_guest_vmxnet_start"
stop_precmd="${checkvm_cmd}"
stop_cmd=":"
load_rc_config $name
[ -z "$vmware_guest_vmxnet_enable" ] && vmware_guest_vmxnet_enable="NO"
run_rc_command "$1"
# VMware guest daemon

View File

@ -15,22 +15,40 @@ PREFIX=%%PREFIX%%
checkvm_cmd="${PREFIX}/sbin/vmware-checkvm > /dev/null"
# Functions
vmware_guest_kmod_start()
vmware_guest_vmmemctl_start()
{
echo 'Loading vmmemctl kernel module.'
kldload ${PREFIX}/lib/vmware-tools/modules/vmmemctl.ko >/dev/null 2>&1
}
vmware_guest_vmmemctl_start()
{
echo 'Loading vmxnet kernel module.'
kldload ${PREFIX}/lib/vmware-tools/modules/vmxnet.ko >/dev/null 2>&1
}
# VMware kernel modules
name="vmware_guest_kmod"
# VMware kernel module: vmmemctl
name="vmware_guest_vmmemctl"
rcvar=`set_rcvar`
start_precmd="${checkvm_cmd}"
start_cmd="vmware_guest_kmod_start"
start_cmd="vmware_guest_vmmemctl_start"
stop_precmd="${checkvm_cmd}"
stop_cmd=":"
load_rc_config $name
[ -z "$vmware_guest_kmod_enable" ] && vmware_guest_kmod_enable="NO"
[ -z "$vmware_guest_vmmemctl_enable" ] && vmware_guest_vmmemctl_enable="NO"
[ -n "$vmware_guest_kmod_enable" ] && vmware_guest_vmmemctl_enable="$vmware_guest_kmod_enable"
run_rc_command "$1"
# VMware kernel module: vmxnet
name="vmware_guest_vmxnet"
rcvar=`set_rcvar`
start_precmd="${checkvm_cmd}"
start_cmd="vmware_guest_vmxnet_start"
stop_precmd="${checkvm_cmd}"
stop_cmd=":"
load_rc_config $name
[ -z "$vmware_guest_vmxnet_enable" ] && vmware_guest_vmxnet_enable="NO"
run_rc_command "$1"
# VMware guest daemon

View File

@ -6,4 +6,9 @@ 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.
WWW: http://www.vmware.com/products/desktop/ws_features.html
This port assumes that a) users want only "must-have" binaries and
b) guest OS runs on a certain architecture and never be changed. For
those want full-feature of VMware Tools, use the installer bundled with
VMware Tools instead.
WWW: http://www.vmware.com/products/ws/

View File

@ -13,4 +13,9 @@ 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
This port assumes that a) users want only "must-have" binaries and
b) guest OS runs on a certain architecture and never be changed. For
those want full-feature of VMware Tools, use the installer bundled with
VMware Tools instead.
WWW: http://www.vmware.com/products/ws/

View File

@ -3,12 +3,6 @@ sbin/vmware-guestd
@unexec %D/etc/rc.d/vmware-guestd.sh forcestop 2>/dev/null || true
etc/rc.d/vmware-guestd.sh
%%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
share/vmware-tools/poweroff-vm-default
share/vmware-tools/poweron-vm-default
share/vmware-tools/resume-vm-default
share/vmware-tools/suspend-vm-default
@dirrm share/vmware-tools
@cwd /
etc/vmware-tools
%%VMWARE_VMXNET:%%lib/vmware-tools/modules/vmxnet.ko
%%VMWARE_KMODDIR:%%@unexec rmdir %D/lib/vmware-tools/modules 2>/dev/null || true
%%VMWARE_KMODDIR:%%@unexec rmdir %D/lib/vmware-tools 2>/dev/null || true

View File

@ -1,6 +1,15 @@
bin/vmware-toolbox
bin/vmware-toolbox-tcl
%%INSTALLXGTKTOOL:%%bin/vmware-toolbox-gtk
%%INSTALLXSERVER3:%%bin/XF86_VMware
%%INSTALLXSERVER3:%%etc/XF86Config_VMware
%%INSTALLXSERVER4:%%etc/XF86Config-4_VMware
%%INSTALLXSERVER4:%%lib/modules/drivers/vmware_drv.o_VMware
%%INSTALLXVMMOUSE:%%lib/modules/input/vmmouse_drv.o_VMware
share/vmware-tools/poweroff-vm-default
share/vmware-tools/poweron-vm-default
share/vmware-tools/resume-vm-default
share/vmware-tools/suspend-vm-default
@dirrm share/vmware-tools
@cwd /
etc/vmware-tools

View File

@ -6,10 +6,10 @@
#
PORTNAME= vmware
MASTER_SITES= # bundled with VMware itself
MASTER_SITES= # bundled with VMware Workstation
PKGNAMESUFFIX?= -tools
COMMENT=VMware tools for guest OS (for VMware 5.x, FreeBSD version)
COMMENT=VMware Tools for guest OS (VMware Workstation 5.x, FreeBSD version)
MASTERDIR= ${.CURDIR}/../vmware-guestd5
DESCR= ${PKGDIR}/pkg-descr.tools

View File

@ -6,10 +6,10 @@
#
PORTNAME= vmware
MASTER_SITES= # bundled with VMware itself
MASTER_SITES= # bundled with VMware Workstation
PKGNAMESUFFIX?= -tools
COMMENT=VMware tools for guest OS (for VMware 5.x, FreeBSD version)
COMMENT=VMware Tools for guest OS (VMware Workstation 5.x, FreeBSD version)
MASTERDIR= ${.CURDIR}/../vmware-guestd5
DESCR= ${PKGDIR}/pkg-descr.tools