diff options
author | Daenyth Blank <Daenyth+git@gmail.com> | 2008-04-27 12:43:41 -0400 |
---|---|---|
committer | Dan McGee <dan@archlinux.org> | 2008-04-27 14:18:43 -0500 |
commit | 27943a04d6dd135628c2313525ebffbcd76cc514 (patch) | |
tree | 0d7536beefa33fb0aebce7780e7e4f6b7cc10de0 /scripts | |
parent | c465d9e848b19b495259c7021a583c29fba92b44 (diff) |
makepkg: fix strip section to allow spaces in paths
Inside tidy_install, change the section which strips libraries to use find |
while read rather than for foo in `find`. This should allow whitespaces in
filenames to still be processed correctly.
This fixes FS#10294.
Signed-off-by: Daenyth Blank <Daenyth+git@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/makepkg.sh.in | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index 79c3fd17..54676667 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -751,12 +751,14 @@ tidy_install() { if [ "$(check_option strip)" = "y" ]; then msg2 "$(gettext "Stripping debugging symbols from binaries and libraries...")" - for file in $(find {,usr/{,local/},opt/*/}{bin,lib,sbin} -type f 2>/dev/null || true); do - case "$(file -biz "$file")" in + local binary bindirs + bindirs="bin lib sbin usr/bin usr/lib usr/sbin usr/local/bin usr/local/lib usr/local/sbin opt/*/bin opt/*/lib opt/*/sbin" + find ${bindirs} -type f 2>/dev/null | while read binary ; do + case "$(file -biz "$binary")" in *application/x-sharedlib*) # Libraries - /usr/bin/strip --strip-debug "$file";; + /usr/bin/strip --strip-debug "$binary";; *application/x-executable*) # Binaries - /usr/bin/strip "$file";; + /usr/bin/strip "$binary";; esac done fi |