diff options
Diffstat (limited to 'scripts/makepkg.sh.in')
-rw-r--r-- | scripts/makepkg.sh.in | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index 238d3408..5f96f08d 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -1426,6 +1426,11 @@ run_package() { run_function_safe "$pkgfunc" } +strip_file() { + local binary=$1; shift + strip $@ "$binary" +} + tidy_install() { cd_safe "$pkgdir" msg "$(gettext "Tidying install...")" @@ -1480,16 +1485,19 @@ tidy_install() { # make sure library stripping variables are defined to prevent excess stripping [[ -z ${STRIP_SHARED+x} ]] && STRIP_SHARED="-S" [[ -z ${STRIP_STATIC+x} ]] && STRIP_STATIC="-S" - local binary + local binary strip_flags find . -type f -perm -u+w -print0 2>/dev/null | while read -d '' binary ; do case "$(file -bi "$binary")" in *application/x-sharedlib*) # Libraries (.so) - strip $STRIP_SHARED "$binary";; + strip_flags="$STRIP_SHARED";; *application/x-archive*) # Libraries (.a) - strip $STRIP_STATIC "$binary";; + strip_flags="$STRIP_STATIC";; *application/x-executable*) # Binaries - strip $STRIP_BINARIES "$binary";; + strip_flags="$STRIP_BINARIES";; + *) + continue ;; esac + strip_file "$binary" ${strip_flags} done fi |