diff options
author | Daniel Campbell <zlg@gentoo.org> | 2015-08-27 00:25:49 -0700 |
---|---|---|
committer | Daniel Campbell <zlg@gentoo.org> | 2015-08-27 00:25:49 -0700 |
commit | 7345c7f2d1f42ec82330796f3b8cda8b6d558a49 (patch) | |
tree | af0f9bf923a4b4426532e41b77b88ba19aad6b8c /media-sound/apulse | |
parent | x11-misc/spacefm: version bump to 1.0.3 (diff) | |
download | gentoo-7345c7f2d1f42ec82330796f3b8cda8b6d558a49.tar.gz gentoo-7345c7f2d1f42ec82330796f3b8cda8b6d558a49.tar.bz2 gentoo-7345c7f2d1f42ec82330796f3b8cda8b6d558a49.zip |
media-sound/apulse: Fix ebuild and script to support all ABIs
Prior solution was over-engineered and didn't cover all cases.
Thanks mgorny and jcallen for the assistance.
Gentoo-Bug: 547524
Package-Manager: portage-2.2.20.1
Diffstat (limited to 'media-sound/apulse')
-rw-r--r-- | media-sound/apulse/apulse-0.1.6-r1.ebuild | 8 | ||||
-rwxr-xr-x | media-sound/apulse/files/apulse | 32 |
2 files changed, 10 insertions, 30 deletions
diff --git a/media-sound/apulse/apulse-0.1.6-r1.ebuild b/media-sound/apulse/apulse-0.1.6-r1.ebuild index 2f68179ace9d..8324b9054619 100644 --- a/media-sound/apulse/apulse-0.1.6-r1.ebuild +++ b/media-sound/apulse/apulse-0.1.6-r1.ebuild @@ -25,9 +25,15 @@ multilib_src_configure() { local mycmakeargs="-DAPULSEPATH=${EPREFIX}/usr/$(get_libdir)/apulse" cmake-utils_src_configure + + # Ensure all relevant libdirs are added + DIRS= + _add_dir() { DIRS="${EPREFIX}/usr/$(get_libdir)/apulse${DIRS:+:${DIRS}}"; } + multilib_foreach_abi _add_dir + sed -e "s#@@DIRS@@#${DIRS}#g" "${FILESDIR}"/apulse > "${T}"/apulse } multilib_src_install() { cmake-utils_src_install - dobin "${FILESDIR}"/apulse + dobin "${T}"/apulse } diff --git a/media-sound/apulse/files/apulse b/media-sound/apulse/files/apulse index f4195651bc92..32633b2d9a50 100755 --- a/media-sound/apulse/files/apulse +++ b/media-sound/apulse/files/apulse @@ -9,32 +9,6 @@ if [ $# -lt 1 ]; then exit fi -# Get the full path of our application -app_path=$(which ${1} 2>/dev/null) - -# The app might not be picked up by `which`, so let's use realpath as a backup -[ -z ${app_path} ] && app_path=$(realpath ${1}) - -# Then make sure it's executable -[ ! -x ${app_path} ] && echo "${app_path} is not executable!" && exit 8 - -# Fetch the app's ABI -app_abi=$(file -L ${app_path} | sed 's/\([^,]*\), \([^,]*\), \(.*\)/\2/') - -# Determine libdir based on app_abi -# Applications that don't have a header will default to native libdir -case $app_abi in - Intel\ 80386) - APULSE_ABI="32" - ;; - x86-64) - APULSE_ABI="64" - ;; - *) - APULSE_ABI=$(readlink /usr/lib) - APULSE_ABI=${APULSE_ABI#lib} - ;; -esac - -# Set library path for the application so it'll use apulse -LD_LIBRARY_PATH=/usr/lib${APULSE_ABI}/apulse${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} exec "$@" +# Set library path for the application so it'll use apulse. DIRS is +# replaced by the ebuild to include the correct paths +LD_LIBRARY_PATH=@@DIRS@@${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} exec "$@" |