Files
bpfire/tools/find-dependencies
Michael Tremer ba137dd898 make.sh: Add command to find dependencies
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2020-05-17 08:04:47 +00:00

33 lines
528 B
Bash
Executable File

#!/bin/bash
main() {
if [ $# -lt 2 ]; then
echo "${0}: Usage: PATH LIBRARY ..."
return 2
fi
local root="${1}"
shift
if [ ! -d "${root}" ]; then
echo "${0}: ${root}: No such file or directory"
return 1
fi
local libraries="$@"
# Build the regex filter
local filter="(${libraries[*]// /|})"
local file
for file in $(find "${root}" -xdev -type f -executable); do
if readelf -d "${file}" 2>/dev/null | grep -qE "NEEDED.*\[${filter}\]$"; then
echo "${file}"
fi
done
return 0
}
main "$@" || exit $?