# Copyright 1999-2007 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ inherit linux-mod MY_PV="2007.09.04-56574" MY_P="${PN}-${MY_PV}" S="${WORKDIR}/${MY_P}" DESCRIPTION="Opensourced tools for VMware guests" HOMEPAGE="http://open-vm-tools.sourceforge.net/" SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz" LICENSE="GPL-2" SLOT="0" KEYWORDS="~x86 ~amd64" IUSE="X xinerama" DEPEND=" virtual/linux-sources sys-apps/ethtool X? ( x11-libs/libX11 x11-libs/gtk+ ) xinerama? ( x11-libs/libXinerama ) " RDEPEND="${DEPEND} X? ( x11-base/xorg-server x11-drivers/xf86-video-vmware x11-drivers/xf86-input-vmmouse ) " VMWARE_MOD_DIR="modules/linux" VMWARE_MODULE_LIST="vmblock vmhgfs vmmemctl vmxnet" pkg_setup() { linux-mod_pkg_setup BUILD_TARGETS="auto-build KERNEL_DIR=${KERNEL_DIR} KBUILD_OUTPUT=${KV_OUT_DIR}" for mod in ${VMWARE_MODULE_LIST}; do MODULE_NAMES="${MODULE_NAMES} ${mod}(misc:${S}/${VMWARE_MOD_DIR}/${mod})" done } src_unpack() { unpack ${A} } src_compile() { cd ${S} if ! use X; then ls -l sed -i "s:toolbox::g" Makefile.in sed -i '/SUBDIRS += toolbox/d' Makefile.am sed -i "s:toolbox/Makefile::g" configure rm -rf ${S}/toolbox fi sed -i s:/tmp/VMwareDnD/:/var/tmp/vmware/DnD/:g lib/dnd/dndLinux.c sed -i s:/tmp/VMwareDnD/:/var/tmp/vmware/DnD/:g modules/linux/vmblock/linux/module.c econf \ $(use_with X x) \ $(use_enable xinerama multimon) \ || die "Error: econf failed!" linux-mod_src_compile emake || die } src_install() { # Install the modules linux-mod_src_install if use pam; then LIB="$(get_libdir)" PAMFILE="${D}/etc/pam.d/vmware-guestd" dodir /${LIB} dodir /etc/pam.d echo '#%PAM-1.0' > ${PAMFILE} if [[ -e /${LIB}/security/pam_unix2.so ]]; then PAM_VER=2 fi echo -e "auth\tsufficient\t/${LIB}/security/pam_unix${PAM_VER}.so\tshadow\tnullok" >> ${PAMFILE} echo -e "auth\trequired\t/${LIB}/security/pam_unix_auth.so\tshadow\tnullok" >> ${PAMFILE} echo -e "account\tsufficient\t/${LIB}/security/pam_unix${PAM_VER}.so" >> ${PAMFILE} echo -e "account\trequired\t/${LIB}/security/pam_unix_acct.so" >> ${PAMFILE} fi # Install the various tools cd ${S} VMWARE_BIN_LIST="hgfsclient" # xferlogs VMWARE_SBIN_LIST="guestd checkvm" if use X; then # Fix up the vmware-user tool's name mv vmware-user/vmware-user vmware-user/user mv vmware-user user VMWARE_BIN_LIST="${VMWARE_BIN_LIST} user toolbox" fi for i in ${VMWARE_BIN_LIST}; do newbin ${i}/${i} vmware-${i} || die "Failed installing ${i}" done for i in ${VMWARE_SBIN_LIST}; do newsbin ${i}/${i} vmware-${i} || die "Failed installing ${i}" done # Deal with the hgfsmounter into / newsbin hgfsmounter/hgfsmounter mount.vmhgfs fperms u+s /sbin/mount.vmhgfs # Install the /etc/ files insinto /etc/vmware-tools doins ${FILESDIR}/tools.conf doins ${FILESDIR}/xautostart.conf # newinitd ${FILESDIR}/open-vm.initd vmware-tools }