diff options
author | Makoto Matsushita <matusita@FreeBSD.org> | 2005-11-26 09:19:58 +0000 |
---|---|---|
committer | Makoto Matsushita <matusita@FreeBSD.org> | 2005-11-26 09:19:58 +0000 |
commit | 1ebe8f49592f57cc1e498f032878f944697861d9 (patch) | |
tree | ad7833a40c9f524850adab07878baa51ff475076 /emulators/vmware-guestd5 | |
parent | 8b730fc90b428faef010b7293104f0ead688c156 (diff) |
Notes
Diffstat (limited to 'emulators/vmware-guestd5')
-rw-r--r-- | emulators/vmware-guestd5/Makefile | 123 | ||||
-rw-r--r-- | emulators/vmware-guestd5/files/vmware-guestd.sh | 28 | ||||
-rw-r--r-- | emulators/vmware-guestd5/files/vmware-guestd.sh.in | 28 | ||||
-rw-r--r-- | emulators/vmware-guestd5/pkg-descr | 7 | ||||
-rw-r--r-- | emulators/vmware-guestd5/pkg-descr.tools | 7 | ||||
-rw-r--r-- | emulators/vmware-guestd5/pkg-plist | 12 | ||||
-rw-r--r-- | emulators/vmware-guestd5/pkg-plist.tools | 9 |
7 files changed, 165 insertions, 49 deletions
diff --git a/emulators/vmware-guestd5/Makefile b/emulators/vmware-guestd5/Makefile index 0f76147b0591..1b9f80c5157a 100644 --- a/emulators/vmware-guestd5/Makefile +++ b/emulators/vmware-guestd5/Makefile @@ -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 -.if !defined(WITHOUT_VMWARE_VMMEMCTL) -.if exists(/usr/src/sys/Makefile) +.else + +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,58 +170,77 @@ 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/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 +.else +.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 - -${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 + ${LN} -sfh /usr/bin/true ${PREFIX}/share/vmware-tools/resume-vm-default + ${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}/sbin/vmware-guestd ${PREFIX}/sbin - ${INSTALL_PROGRAM} ${WRKSRC}/sbin/vmware-checkvm ${PREFIX}/sbin + ${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} - -${LOCALBASE}/sbin/vmware-guestd --cmd toolinstall.end + -${WRKSRC}/lib/sbin${BITS}/vmware-guestd --cmd toolinstall.end + .endif - ${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 - ${LN} -sfh /usr/bin/true ${PREFIX}/share/vmware-tools/resume-vm-default - ${LN} -sfh /usr/bin/true ${PREFIX}/share/vmware-tools/suspend-vm-default - ${LN} -sfh ${PREFIX}/share/vmware-tools /etc/vmware-tools .include <bsd.port.post.mk> diff --git a/emulators/vmware-guestd5/files/vmware-guestd.sh b/emulators/vmware-guestd5/files/vmware-guestd.sh index 2bdeddcab5ac..29adec03aaff 100644 --- a/emulators/vmware-guestd5/files/vmware-guestd.sh +++ b/emulators/vmware-guestd5/files/vmware-guestd.sh @@ -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 module: vmmemctl +name="vmware_guest_vmmemctl" +rcvar=`set_rcvar` +start_precmd="${checkvm_cmd}" +start_cmd="vmware_guest_vmmemctl_start" +stop_precmd="${checkvm_cmd}" +stop_cmd=":" + +load_rc_config $name +[ -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 modules -name="vmware_guest_kmod" +# VMware kernel module: vmxnet +name="vmware_guest_vmxnet" rcvar=`set_rcvar` start_precmd="${checkvm_cmd}" -start_cmd="vmware_guest_kmod_start" +start_cmd="vmware_guest_vmxnet_start" stop_precmd="${checkvm_cmd}" stop_cmd=":" load_rc_config $name -[ -z "$vmware_guest_kmod_enable" ] && vmware_guest_kmod_enable="NO" +[ -z "$vmware_guest_vmxnet_enable" ] && vmware_guest_vmxnet_enable="NO" run_rc_command "$1" # VMware guest daemon diff --git a/emulators/vmware-guestd5/files/vmware-guestd.sh.in b/emulators/vmware-guestd5/files/vmware-guestd.sh.in index 2bdeddcab5ac..29adec03aaff 100644 --- a/emulators/vmware-guestd5/files/vmware-guestd.sh.in +++ b/emulators/vmware-guestd5/files/vmware-guestd.sh.in @@ -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 module: vmmemctl +name="vmware_guest_vmmemctl" +rcvar=`set_rcvar` +start_precmd="${checkvm_cmd}" +start_cmd="vmware_guest_vmmemctl_start" +stop_precmd="${checkvm_cmd}" +stop_cmd=":" + +load_rc_config $name +[ -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 modules -name="vmware_guest_kmod" +# VMware kernel module: vmxnet +name="vmware_guest_vmxnet" rcvar=`set_rcvar` start_precmd="${checkvm_cmd}" -start_cmd="vmware_guest_kmod_start" +start_cmd="vmware_guest_vmxnet_start" stop_precmd="${checkvm_cmd}" stop_cmd=":" load_rc_config $name -[ -z "$vmware_guest_kmod_enable" ] && vmware_guest_kmod_enable="NO" +[ -z "$vmware_guest_vmxnet_enable" ] && vmware_guest_vmxnet_enable="NO" run_rc_command "$1" # VMware guest daemon diff --git a/emulators/vmware-guestd5/pkg-descr b/emulators/vmware-guestd5/pkg-descr index 920d9d0dbbc7..b16e51735850 100644 --- a/emulators/vmware-guestd5/pkg-descr +++ b/emulators/vmware-guestd5/pkg-descr @@ -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/ diff --git a/emulators/vmware-guestd5/pkg-descr.tools b/emulators/vmware-guestd5/pkg-descr.tools index 68165f70e46f..2027da8571ce 100644 --- a/emulators/vmware-guestd5/pkg-descr.tools +++ b/emulators/vmware-guestd5/pkg-descr.tools @@ -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/ diff --git a/emulators/vmware-guestd5/pkg-plist b/emulators/vmware-guestd5/pkg-plist index f5b630cb77bd..02cd166fa101 100644 --- a/emulators/vmware-guestd5/pkg-plist +++ b/emulators/vmware-guestd5/pkg-plist @@ -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 diff --git a/emulators/vmware-guestd5/pkg-plist.tools b/emulators/vmware-guestd5/pkg-plist.tools index 03078f0d349b..8d2f58c2feb9 100644 --- a/emulators/vmware-guestd5/pkg-plist.tools +++ b/emulators/vmware-guestd5/pkg-plist.tools @@ -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 |