]>
git.ipfire.org Git - people/ms/ipfire-2.x.git/blob - src/stripper
4 excludes
="/dev /proc /sys /run"
9 excludes
="${excludes} ${1#*=}"
20 local strip
="${STRIP-strip}"
23 for exclude
in ${excludes}; do
25 if [ "${file:0:${l}}" = "${exclude}" ]; then
30 local cmd
=( "${strip}" )
32 case "$(file -bi ${file})" in
33 application
/x-archive
*)
34 cmd
+=( "--strip-debug" "--remove-section=.comment" "--remove-section=.note" )
37 cmd
+=( "--strip-all" )
41 echo "Stripping ${file}..."
45 for dir
in ${dirs}; do
46 # Strip shared objects.
47 find ${dir} -type f \
( -perm -0100 -or -perm -0010 -or -perm -0001 \
) \
48 |
file -N -f - |
sed -n -e 's/^\(.*\):[ ]*.*ELF.*, not stripped.*/\1/p' |
50 _strip
${file} ||
exit $?
53 # Strip static archives.
54 find ${dir} -name \
*.a
-a -exec file {} \
; \
55 |
grep 'current ar archive' |
sed -n -e 's/^\(.*\):[ ]*current ar archive/\1/p' |
57 _strip
${file} ||
exit $?