summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Luther <SebastianLuther@gmx.de>2010-05-15 22:40:55 +0200
committerZac Medico <zmedico@gentoo.org>2010-05-15 13:50:24 -0700
commit1cba8caa7c0a15eb4bf5b6d6d8ddd5e2389db218 (patch)
treedf352f0784dc36624ef00408b51043c3b16c93ff
parentUsage: binhost-snapshot [options] <src_pkg_dir> <snapshot_dir> <snapshot_uri>... (diff)
downloadportage-idfetch-1cba8caa7c0a15eb4bf5b6d6d8ddd5e2389db218.tar.gz
portage-idfetch-1cba8caa7c0a15eb4bf5b6d6d8ddd5e2389db218.tar.bz2
portage-idfetch-1cba8caa7c0a15eb4bf5b6d6d8ddd5e2389db218.zip
Extend QA check for absolute symlinks in lib dirs to more file types
-rwxr-xr-xbin/misc-functions.sh25
1 files changed, 14 insertions, 11 deletions
diff --git a/bin/misc-functions.sh b/bin/misc-functions.sh
index 2fd04919..7fb61f69 100755
--- a/bin/misc-functions.sh
+++ b/bin/misc-functions.sh
@@ -349,17 +349,7 @@ install_qa_check() {
for j in "${i}"/*.so.* "${i}"/*.so ; do
[[ ! -e ${j} ]] && continue
- if [[ -L ${j} ]] ; then
- linkdest=$(readlink "${j}")
- if [[ ${linkdest} == /* ]] ; then
- vecho -ne '\a\n'
- eqawarn "QA Notice: Found an absolute symlink in a library directory:"
- eqawarn " ${j#${D}} -> ${linkdest}"
- eqawarn " It should be a relative symlink if in the same directory"
- eqawarn " or a linker script if it crosses the /usr boundary."
- fi
- continue
- fi
+ [[ -L ${j} ]] && continue
[[ -x ${j} ]] && continue
vecho "making executable: ${j#${D}}"
chmod +x "${j}"
@@ -372,6 +362,19 @@ install_qa_check() {
vecho "removing executable bit: ${j#${D}}"
chmod -x "${j}"
done
+
+ for j in "${i}"/*.{a,dll,dylib,sl,so}.* "${i}"/*.{a,dll,dylib,sl,so} ; do
+ [[ ! -e ${j} ]] && continue
+ [[ ! -L ${j} ]] && continue
+ linkdest=$(readlink "${j}")
+ if [[ ${linkdest} == /* ]] ; then
+ vecho -ne '\a\n'
+ eqawarn "QA Notice: Found an absolute symlink in a library directory:"
+ eqawarn " ${j#${D}} -> ${linkdest}"
+ eqawarn " It should be a relative symlink if in the same directory"
+ eqawarn " or a linker script if it crosses the /usr boundary."
+ fi
+ done
done
# When installing static libraries into /usr/lib and shared libraries into