#!/bin/sh perl_dep=$(rpm -qf /usr/bin/perl --qf '%{NAME} >= %{VERSION}-%{RELEASE}') perl_version_num=$(rpm -qf /usr/bin/perl --qf '%{VERSION}' | awk -F. '{print$1*1000*1000+$2*1000+$3}') . /usr/lib/rpm/functions perl_version_refs() { objdump -p "$f" |awk ' BEGIN { START = 0 } /^Version References:/ { START = 1 } /^ *required from / { START = 2 } /^ *required from libperl/ { START = 3 } (START==3 && $1~/^0x/ && $NF~/^PERL_/) { sub(/^PERL_/, "", $NF) split($NF, ary, ".") print ary[1]*1000*1000+ary[2]*1000+ary[3] }' } LibPerlReq() { local f="$1"; shift local ver="$(perl_version_refs "$f" |sort -rn |head -1)" if [ -n "$ver" ] && [ "$ver" -gt "$perl_version_num" ]; then echo "$perl_dep" fi } ArgvFileAction LibPerlReq "$@"