Hi, The following script is a script to obtain a shared library package name that would be feasible to be used within Debian package. It outputs a pseudo-debian/control file.
There are quite a few people, and quite a few packages that aren't currently done in this way (i.e. many library packages contain multiple shared libraries in one package), but this could be a start for something. (and there are other things that need work in this script, ignore the Depends: field for now). USAGE: $ libinfodump.sh /usr/lib/libdmachinemon.so.1.0.0 Package: libdmachinemon1 Section: libs Depends: ${shlibs:Depends} Package: libdmachinemon1-dev Section: devel Depends: libpthread0-dev,libc6-dev For discussion on best-practice in library packaging, see http://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html #!/bin/bash function getname () { local SONAMELIBNAME local SONAMEVERSION local SONAME SONAME=$1 SONAMELIBNAME=$(echo $SONAME | sed 's/\.so\..*$//') SONAMEVERSION=$(echo $SONAME | sed 's/^.*\.so\.//') if echo $SONAMELIBNAME | grep '[0-9]$' > /dev/null ; then RETURN=$SONAMELIBNAME-$SONAMEVERSION else RETURN=$SONAMELIBNAME$SONAMEVERSION fi } LIBNAME="$1" SONAME=$(objdump -p $LIBNAME |sed -n 's/^.*SONAME *//p' ) getname $SONAME SONAMEPKGNAME=$RETURN DEPENDS=$(objdump -p $LIBNAME |sed -n 's/^.*NEEDED *//p') cat <<EOF Package: $SONAMEPKGNAME Section: libs Depends: \${shlibs:Depends} Package: $SONAMEPKGNAME-dev Section: devel EOF printf "Depends: " for A in $DEPENDS; do getname "$A" printf $RETURN-dev' ' done | sed 's/ $//' | tr ' ' ',' printf "\n" -- [EMAIL PROTECTED] http://www.netfort.gr.jp/~dancer -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]