#!/bin/bash pkgconfig=/usr/bin/pkg-config test -x $pkgconfig || { cat > /dev/null exit 0 } [ $# -ge 1 ] || { cat > /dev/null exit 0 } case $1 in -P|--provides) while read filename ; do case "${filename}" in *.pc) # Assume that this file doesn't contain useful information. pcfiles=${pcfiles}" ${filename}" PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$(dirname ${filename}) ;; esac done # Query the dependencies of the package. PKG_CONFIG_PATH=$PKG_CONFIG_PATH $pkgconfig --print-provides $pcfiles 2> /dev/null | while read n r v ; do # We have a dependency. Make a note that we need the pkgconfig # tool for this package. echo "pkgconfig($n)" "$r" "$v" done # The dependency on the pkgconfig package itself. ;; -R|--requires) while read filename ; do case "${filename}" in *.pc) pcfiles=${pcfiles}" ${filename}" PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$(dirname ${filename}) esac done PKG_CONFIG_PATH=$PKG_CONFIG_PATH $pkgconfig --print-requires ${pcfiles} 2> /dev/null | while read n r v ; do echo "pkgconfig($n)" "$r" "$v" done ;; esac exit 0