#!/bin/bash # Print packages containing libraries used by two packages find_common() { if [ -z "${1}" ]; then echo "Usage: find-common binary1 binary2" return 1 fi if [ "${1}" = "--help" ]; then echo "Usage: find-common [ --emerge ] [--help ] binary1 binary2" echo "The --emerge flag will emerge all shared dependencies." return 1 fi if [ "${1}" = "--emerge" ]; then for i in $(sudo ldd `which ${2}` `which ${3}`| cut -d' ' -f3 | grep -v \: | sort | uniq -d) do qpkg -nc -f ${i} done | sort | uniq -d | xargs sudo emerge return 0 fi if [ "${1}" != "--emerge" ]; then for i in $(sudo ldd `which ${1}` `which ${2}`| cut -d' ' -f3 | grep -v \: | sort | uniq -d) do qpkg -nc -f ${i} done | sort | uniq -d return 0 fi } find_common $@