]>
git.proxmox.com Git - ceph.git/blob - ceph/src/script/dep-report.sh
5 PLATFORM
=`lsb_release -is`
7 TMPFILE1
=`mktemp --tmpdir depA.XXXXXX` ||
exit 1
8 TMPFILE2
=`mktemp --tmpdir depB.XXXXXX` ||
exit 2
9 TMPFILE3
=`mktemp --tmpdir depB.XXXXXX` ||
exit 3
18 # find all the .deps directorys
19 DEPDIRS
=`find . -name ".deps" -print`
20 if [ -z "$DEPDIRS" ] ; then
21 echo "No depdirs found. Ceph must be built before running dependecy check"
24 # find all the headers
25 echo "Looking for headers ... " >&2
28 for file in $DIR/*.Po
$DIR/*.Plo
30 #echo "$DIR: $file" >&2
31 cut
-d: -f1 $file |
grep "^/" >> $TMPFILE1
35 # Add in required libraries
36 echo "Looking for libraries ... " >&2
37 LIB_PATHS
="/lib64 /usr/lib64 /lib /usr/lib"
39 autoconf
--trace AC_CHECK_LIB | cut
-d: -f4 |
while read LIB
41 for PATH
in $LIB_PATHS
43 $FIND $PATH -name "lib$LIB.so*" -print 2> /dev
/null
>> $TMPFILE1
46 autoconf
--trace AC_SEARCH_LIBS | cut
-d: -f5 |
while read LIBLIST
48 for LIB
in $LIBLIST ; do
49 for PATH
in $LIB_PATHS ; do
50 $FIND $PATH -name "lib$LIB.so*" -print 2> /dev
/null
>> $TMPFILE1
54 autoconf
--trace PKG_CHECK_MODULES | cut
-d: -f5 | cut
-d' ' -f1 |
while read PKG
56 LIBLIST
=`pkg-config --libs $PKG 2> /dev/null`
57 for LIB
in $LIBLIST ; do
59 for PATH
in $LIB_PATHS
61 $FIND $PATH -name "lib$LIB.so*" -print 2> /dev
/null
>> $TMPFILE1
67 echo "Looking up packages for hdr and lib paths ... " >&2
68 sort $TMPFILE1 |
uniq > $TMPFILE2
71 cat $TMPFILE2 |
while read LINE
73 package
=`rpm -q --whatprovides $LINE`
74 echo $package >> $TMPFILE1
77 # Add in any libraries needed for the devel packages
78 echo "Adding libraries for devel packages ... " >&2
79 sort $TMPFILE1 |
uniq > $TMPFILE3
80 cat $TMPFILE3 |
grep devel |
while read PACKAGE
82 NAME
=`rpm -q --qf %{NAME} $PACKAGE`
84 #echo "looking for matching $NAME ... " >&2
85 LPACKAGE
=`rpm -q $NAME 2> /dev/null`
86 if [ $?
-eq 0 ] ; then
87 #echo "Found $LPACKAGE ... " >&2
88 echo $LPACKAGE >> $TMPFILE1
90 LPACKAGE
=`rpm -q $NAME-libs 2> /dev/null`
91 if [ $?
-eq 0 ] ; then
92 #echo "Found $LPACKAGE ... " >&2
93 echo $LPACKAGE >> $TMPFILE1
97 echo "Checking licenses ... " >&2
99 # Read package list and generate report
100 sort $TMPFILE1 |
uniq > $TMPFILE2
103 echo -e "\nPackage Dependencies:\n"
104 cat $TMPFILE2 |
while read PACKAGE
106 LICENSE
=`rpm -q --qf %{LICENSE} $PACKAGE`
107 NAME
=`rpm -q --qf %{NAME} $PACKAGE`
108 echo "${PACKAGE}.rpm"
110 echo " License: $LICENSE"
113 echo -e "\nSource Code Dependencies:\n"
115 echo " Name: leveldb"
116 echo " License: Google Public License"
119 #echo "DEPDIRS: $DEPDIRS"