summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas K. Huettel (dilfridge) <dilfridge@gentoo.org>2015-11-14 22:13:03 +0100
committerAndreas K. Huettel (dilfridge) <dilfridge@gentoo.org>2015-11-14 22:13:03 +0100
commite95136ce6a2fba26b53505fad7d82b630dc463dc (patch)
tree55ff0023a6da731793b6d043133c04d97d68b32b
parentapp-emulation/vmware-workstation: make bundled-libs (partially) work as intended (diff)
downloadvmware-e95136ce6a2fba26b53505fad7d82b630dc463dc.tar.gz
vmware-e95136ce6a2fba26b53505fad7d82b630dc463dc.tar.bz2
vmware-e95136ce6a2fba26b53505fad7d82b630dc463dc.zip
app-emulation/vmware-workstation: add untested rpath logic
Package-Manager: portage-2.2.24
-rw-r--r--app-emulation/vmware-workstation/vmware-workstation-11.1.2.2780323-r3.ebuild20
1 files changed, 20 insertions, 0 deletions
diff --git a/app-emulation/vmware-workstation/vmware-workstation-11.1.2.2780323-r3.ebuild b/app-emulation/vmware-workstation/vmware-workstation-11.1.2.2780323-r3.ebuild
index c17809b..986b5a5 100644
--- a/app-emulation/vmware-workstation/vmware-workstation-11.1.2.2780323-r3.ebuild
+++ b/app-emulation/vmware-workstation/vmware-workstation-11.1.2.2780323-r3.ebuild
@@ -29,6 +29,14 @@ RESTRICT="mirror strip"
BUNDLED_LIBS_DIR=/opt/vmware/lib/vmware/lib
+BUNDLED_LIBS_PATCH="
+ libvmplayer.so
+ libvmware-enter-serial.so
+ libvmware-fuseUI.so
+ libgcr.so.0
+ libgksu2.so.0
+"
+
BUNDLED_LIBS="
libXau.so.6
libXcomposite.so.1
@@ -131,6 +139,8 @@ RDEPEND="
PDEPEND="~app-emulation/vmware-modules-304.${PV_MINOR}
vmware-tools? ( app-emulation/vmware-tools )"
+DEPEND="dev-util/patchelf"
+
S=${WORKDIR}
VM_INSTALL_DIR="/opt/vmware"
VM_DATA_STORE_DIR="/var/lib/vmware/Shared VMs"
@@ -177,6 +187,15 @@ clean_bundled_libs() {
done
}
+patch_bundled_libs() {
+ for libname in ${BUNDLED_LIBS_PATCH} ; do
+ if [[ -f "${S}"/lib/lib/${libname}/${libname} ]]; then
+ einfo "Setting RPATH of ${libname}"
+ patchelf --set-rpath "${VM_INSTALL_DIR}"/lib/vmware/lib "${S}"/lib/lib/${libname}/${libname} || die "Failed patching ${libname}"
+ fi
+ done
+}
+
src_prepare() {
rm -f bin/vmware-modconfig
rm -rf lib/modules/binary
@@ -192,6 +211,7 @@ src_prepare() {
if ! use bundled-libs ; then
clean_bundled_libs
fi
+ patch_bundled_libs
DOC_CONTENTS="
/etc/env.d is updated during ${PN} installation. Please run:\n