summaryrefslogtreecommitdiffstats
path: root/find-broken-perl-packages.sh
diff options
context:
space:
mode:
authorFlorian Pritz <bluewind@xinu.at>2014-06-03 12:27:06 +0200
committerFlorian Pritz <bluewind@xinu.at>2014-06-03 12:27:08 +0200
commit7fba334e4fe21133141125ac77185ab9a0b22f2c (patch)
tree5dfa089eef01bae215311648eb69bd89b650b7b8 /find-broken-perl-packages.sh
parentd55ea94b9a0535aa11dd442f3b98e240f73cba6d (diff)
downloadbin-7fba334e4fe21133141125ac77185ab9a0b22f2c.tar.gz
bin-7fba334e4fe21133141125ac77185ab9a0b22f2c.tar.xz
find-broken-perl-packages.sh: fix handling of perl crashes
Crash means the module is probably built against an old perl. Signed-off-by: Florian Pritz <bluewind@xinu.at>
Diffstat (limited to 'find-broken-perl-packages.sh')
-rwxr-xr-xfind-broken-perl-packages.sh6
1 files changed, 5 insertions, 1 deletions
diff --git a/find-broken-perl-packages.sh b/find-broken-perl-packages.sh
index 4306275..09c53fa 100755
--- a/find-broken-perl-packages.sh
+++ b/find-broken-perl-packages.sh
@@ -11,7 +11,11 @@ find "$perllibpath" -name "*.so" |
-e 's|.so$||' \
-e 's|\(.*\)::.*$|\1|')
output=$(perl -M$module -e1 2>&1)
- if grep -q "perl: symbol lookup error:" <<< $output; then
+ ret=$?
+ if (($ret != 0)); then
+ echo $file >> $tmpdir/raw.txt
+ echo "$module" >> "$tmpdir/perl-modules.txt"
+ elif grep -q "perl: symbol lookup error:" <<< $output; then
sed -n 's|perl: symbol lookup error: \(.*\): undefined symbol: .*|\1|p' <<< $output >> $tmpdir/raw.txt
echo "$module" >> "$tmpdir/perl-modules.txt"
elif grep -q "Perl API version .* of .* does not match .*" <<< $output; then