1 |
#!/bin/bash |
#!/bin/bash |
2 |
|
# $Id$ |
3 |
|
|
4 |
SCANELF="scanelf -nyRB" |
SCANELF="scanelf -LnyRB" |
5 |
BINDIR="$1" |
BINDIR="$1" |
6 |
|
|
7 |
|
if [[ -z ${BINDIR} ]] |
8 |
|
then |
9 |
|
echo "No \$BINDIR given" |
10 |
|
exit 1 |
11 |
|
fi |
12 |
|
|
13 |
build_soname_list() |
build_soname_list() |
14 |
{ |
{ |
15 |
local sonames |
local sonames |
24 |
build_dep_list() |
build_dep_list() |
25 |
{ |
{ |
26 |
local soname |
local soname |
27 |
|
local libdir |
28 |
local deps |
local deps |
29 |
local i |
local i |
30 |
|
local prefix |
31 |
|
|
32 |
for soname in ${SONAME_LIST} |
for soname in ${SONAME_LIST} |
33 |
do |
do |
34 |
deps+=" $(magequery -f ${soname})" |
# if /lib /lib64 are symlinks than add a prefix to honor usr-move |
35 |
|
libdir="${soname%/*}" |
36 |
|
prefix="" |
37 |
|
if [[ ${libdir} = /lib ]] || [[ ${libdir} = /lib64 ]] |
38 |
|
then |
39 |
|
if [[ -L /lib ]] || [[ -L /lib64 ]] |
40 |
|
then |
41 |
|
prefix="/usr" |
42 |
|
fi |
43 |
|
fi |
44 |
|
deps+=" $(magequery -e ${prefix}${soname})" |
45 |
done |
done |
46 |
DEPNAME_LIST="$(for i in ${deps}; do echo ${i}; done | sort -u)" |
DEPNAME_LIST="$(for i in ${deps}; do echo ${i}; done | sort -u)" |
47 |
export DEPNAME_LIST |
export DEPNAME_LIST |
51 |
build_dep_list |
build_dep_list |
52 |
|
|
53 |
#echo "${SONAME_LIST}" |
#echo "${SONAME_LIST}" |
54 |
echo "${DEPNAME_LIST}" | sed 's:\(.*\)-r.*:>= \1:' |
echo "${DEPNAME_LIST}" | sed 's:\(.*\)-r.*:>= \1:' |