This commit is contained in:
Mario Fetka
2011-11-20 10:32:59 +01:00
parent 94beb63256
commit a0618928d9
9 changed files with 163 additions and 134 deletions

View File

@@ -0,0 +1,4 @@
DIST VMware-VIX-1.10.3-368992.i386.bundle 70734590 RMD160 c33febe1d82e098d1e12023007036dc10328d828 SHA1 8ede0fcd05456d8f75a7ee48e760758e8e43b883 SHA256 89e600b3ac66fdd57e5b9deb1392e8b2574e7b86eb4ab85fb59aa5a67928d785
DIST VMware-VIX-1.10.3-368992.x86_64.bundle 76023776 RMD160 841b097b6ab606841548c7c02021e8a97f4d34db SHA1 9ec26efd9733a66e23f2e0a47f01027714fb55a4 SHA256 f4805521799f4b7a5a64de896c3f96319245f90063f6c83b0e7d6ba024330bfb
EBUILD vmware-vix-1.10.3.368992.ebuild 3303 RMD160 5715a42e9accb1724bcf9cb0b59ba8b6b6e90ce0 SHA1 e797098cd810e261375c3786f40a279b56abf8a8 SHA256 e545f41c28d1ed504d81f7c198453aa036139bdf8c37d084fb6a1258d4410efe
MISC metadata.xml 736 RMD160 9e0b6138a82c1ca34b847bc71bc072e44c60d95a SHA1 4365d9dc523f50c84cb02caf44fadf05ee996b3c SHA256 3882e8981caee5b279a4a1990df6b404e920ab088d6a4cd1d789cbb29e301f74

View File

@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<herd>vmware</herd>
<maintainer>
<email>vadimk@gentoo.org</email>
</maintainer>
<longdescription>
The VIX API allows you to write programs and scripts that automate
virtual machine operations, as well as the guests within virtual
machines. This API is high-level, easy to use, and practical for both
script writers and application programmers. It runs on both Windows and
Linux and supports management of VMware Server, Workstation, and Virtual
Infrastructure (both ESX and vCenter). Bindings are provided for C,
Perl, and COM (Visual Basic, VBscript, C#).
</longdescription>
</pkgmetadata>

View File

@@ -0,0 +1,139 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI="2"
inherit eutils versionator vmware-bundle
MY_PN="VMware-VIX"
MY_PV="$(replace_version_separator 3 - $PV)"
MY_P="${MY_PN}-${MY_PV}"
DESCRIPTION="VMware VIX API for Linux"
HOMEPAGE="http://www.vmware.com/support/developer/vix-api/"
SRC_URI="
x86? ( ${MY_P}.i386.bundle )
amd64? ( ${MY_P}.x86_64.bundle )
"
LICENSE="vmware"
SLOT="0"
KEYWORDS="-* ~amd64 ~x86"
IUSE="doc"
RESTRICT="binchecks fetch mirror strip"
# vmware-workstation should not use virtual/libc as this is a
# precompiled binary package thats linked to glibc.
RDEPEND="
dev-libs/glib:2
dev-libs/libxml2
=dev-libs/openssl-0.9.8*
net-misc/curl
sys-libs/glibc
sys-libs/zlib
!app-emulation/vmware-workstation"
S=${WORKDIR}
VM_INSTALL_DIR="/opt/vmware"
pkg_nofetch() {
local bundle
if use x86; then
bundle="${MY_P}.i386.bundle"
elif use amd64; then
bundle="${MY_P}.x86_64.bundle"
fi
einfo "Please download ${bundle}"
einfo "from ${HOMEPAGE}"
einfo "and place it in ${DISTDIR}"
}
src_unpack() {
vmware-bundle_extract-bundle-component "${DISTDIR}/${A}" vmware-vix
}
src_prepare() {
# remove superfluous libraries
ebegin 'Removing superfluous libraries'
#cd vmware-player-app/lib/lib || die
# exclude OpenSSL from unbundling until the AES-NI patch gets into the tree
# see http://forums.gentoo.org/viewtopic-t-835867.html
#ldconfig -p | sed 's:^\s\+\([^(]*[^( ]\).*=> /.*$:\1:g;t;d' | fgrep -vx 'libcrypto.so.0.9.8 libssl.so.0.9.8' | xargs -d'\n' -r rm -rf
#cd ../../../vmware-workstation/lib/lib || die
#ldconfig -p | sed 's:^\s\+\([^(]*[^( ]\).*=> /.*$:\1:g;t;d' | fgrep -vx 'libcrypto.so.0.9.8 libssl.so.0.9.8' | xargs -d'\n' -r rm -rf
eend
}
src_install() {
# install vmware-vix
cd "${S}"/vmware-vix
# install the binary
into "${VM_INSTALL_DIR}"
dobin bin/*
# install the libraries
insinto "${VM_INSTALL_DIR}"/lib/vmware-vix
doins -r lib/*
dosym vmware-vix/libvixAllProducts.so "${VM_INSTALL_DIR}"/lib/libbvixAllProducts.so
# install headers
insinto /usr/include/vmware-vix
doins include/*
if use doc; then
dohtml -r doc/*
fi
# fix up permissions
chmod 0755 "${D}${VM_INSTALL_DIR}"/lib/vmware-vix/setup/*
# create the environment
local envd="${T}/90${PN}"
cat > "${envd}" <<-EOF
PATH='${VM_INSTALL_DIR}/bin'
ROOTPATH='${VM_INSTALL_DIR}/bin'
EOF
doenvd "${envd}"
# create the configuration
dodir /etc/vmware
local vmconfig="${T}/config"
if [[ -e ${ROOT}/etc/vmware/config ]]
then
cp -a "${ROOT}"/etc/vmware/config "${vmconfig}"
sed -i -e "/vmware.fullpath/d" "${vmconfig}"
sed -i -e "/vix.libdir/d" "${vmconfig}"
sed -i -e "/vix.config.version/d" "${vmconfig}"
fi
cat >> "${vmconfig}" <<-EOF
vmware.fullpath = "${VM_INSTALL_DIR}/bin/vmware"
vix.libdir = "${VM_INSTALL_DIR}/lib/vmware-vix"
vix.config.version = "1"
EOF
insinto /etc/vmware/
doins "${vmconfig}"
}
pkg_config() {
:;
}
pkg_postinst() {
ewarn "/etc/env.d was updated. Please run:"
ewarn "env-update && source /etc/profile"
ewarn ""
ewarn "Before you can use ${PN}, you must configure a default network setup."
ewarn "You can do this by running 'emerge --config ${PN}'."
}
pkg_prerm() {
sed -i -e "/vix.libdir/d" "${ROOT}"/etc/vmware/config
}