From: Michael Tremer Date: Thu, 29 Mar 2012 10:57:19 +0000 (+0200) Subject: Speedup searching for requires (esp. in the kernel). X-Git-Tag: 0.9.22~46 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7d7953ecc438bf6cb58f2023cfd96456f370a456;p=pakfire.git Speedup searching for requires (esp. in the kernel). --- diff --git a/tools/find-requires b/tools/find-requires index 9a98c324c..89ee929dd 100755 --- a/tools/find-requires +++ b/tools/find-requires @@ -26,6 +26,11 @@ while read file; do */usr/lib/debug/*|*/usr/src/debug/*) # Skip all debuginfo files. ;; + *.ko) + # Skip all kernel modules because they do not + # require anything at all. + continue + ;; *.pc) # Find all pkg-config files. pkgconfig_files="${pkgconfig_files} ${file}" @@ -57,18 +62,6 @@ while read file; do ;; esac - # Search for all binary files. - if file_is_elf ${file}; then - binary_files="${binary_files} ${file}" - continue - fi - - # Search for script files. - if file_is_script ${file}; then - script_files="${script_files} ${file}" - continue - fi - # Unresolved symlinks. if [ -L "${file}" ]; then # Get destination. @@ -79,6 +72,22 @@ while read file; do if ! [ -e "${link}" ]; then echo "${link#${BUILDROOT}}" fi + + # Don't search for anything else, because + # symlinks do not require anything but the target file. + continue + fi + + # Search for all binary files. + if file_is_elf ${file}; then + binary_files="${binary_files} ${file}" + continue + fi + + # Search for script files. + if file_is_script ${file}; then + script_files="${script_files} ${file}" + continue fi done < ${FILELIST}