diff options
author | Zac Medico <zmedico@gentoo.org> | 2012-05-08 00:39:36 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2012-05-08 00:39:36 -0700 |
commit | a0eb86870f1564b84f0b561013d8e597347727e4 (patch) | |
tree | 10e6d647bd8c824b166f514e9bf0156c7e0c2112 /bin | |
parent | bc18e1e7c3af475412e997489058c58942ebfdcb (diff) | |
download | portage-a0eb86870f1564b84f0b561013d8e597347727e4.tar.gz portage-a0eb86870f1564b84f0b561013d8e597347727e4.tar.bz2 portage-a0eb86870f1564b84f0b561013d8e597347727e4.zip |
NEEDED.ELF.2: include sonames from $ORIGIN
This reverts the behavior change from bug #205531 (see commit
5baa57a65368472c2c22b9bd2b30e634ef644b92). That special handling should
be unnecessary since the changes from bug #289180 (see commit
296fc63fee262600811520fccf4692f47a39ffba), where the
LinkageMapELF.findConsumers() exclude_providers argument is used to
exclude irrelevant consumers.
Diffstat (limited to 'bin')
-rwxr-xr-x | bin/misc-functions.sh | 25 |
1 files changed, 2 insertions, 23 deletions
diff --git a/bin/misc-functions.sh b/bin/misc-functions.sh index 4a74984b2..ab070aa8e 100755 --- a/bin/misc-functions.sh +++ b/bin/misc-functions.sh @@ -523,29 +523,8 @@ install_qa_check() { soname=${l%%;*}; l=${l#*;} rpath=${l%%;*}; l=${l#*;}; [ "${rpath}" = " - " ] && rpath="" needed=${l%%;*}; l=${l#*;} - if [ -z "${rpath}" -o -n "${rpath//*ORIGIN*}" ]; then - # object doesn't contain $ORIGIN in its runpath attribute - echo "${obj} ${needed}" >> "${PORTAGE_BUILDDIR}"/build-info/NEEDED - echo "${arch:3};${obj};${soname};${rpath};${needed}" >> "${PORTAGE_BUILDDIR}"/build-info/NEEDED.ELF.2 - else - dir=${obj%/*} - # replace $ORIGIN with the dirname of the current object for the lookup - opath=$(echo :${rpath}: | sed -e "s#.*:\(.*\)\$ORIGIN\(.*\):.*#\1${dir}\2#") - sneeded=$(echo ${needed} | tr , ' ') - rneeded="" - for lib in ${sneeded}; do - found=0 - for path in ${opath//:/ }; do - [ -e "${D}/${path}/${lib}" ] && found=1 && break - done - [ "${found}" -eq 0 ] && rneeded="${rneeded},${lib}" - done - rneeded=${rneeded:1} - if [ -n "${rneeded}" ]; then - echo "${obj} ${rneeded}" >> "${PORTAGE_BUILDDIR}"/build-info/NEEDED - echo "${arch:3};${obj};${soname};${rpath};${rneeded}" >> "${PORTAGE_BUILDDIR}"/build-info/NEEDED.ELF.2 - fi - fi + echo "${obj} ${needed}" >> "${PORTAGE_BUILDDIR}"/build-info/NEEDED + echo "${arch:3};${obj};${soname};${rpath};${needed}" >> "${PORTAGE_BUILDDIR}"/build-info/NEEDED.ELF.2 done } [ -n "${QA_SONAME_NO_SYMLINK}" ] && \ |