On 27/01/10 00:49, Cedric Staniewski wrote:
On 26.01.2010 14:30, Allan McRae wrote:
Signed-off-by: Allan McRae<[email protected]>
---
  scripts/makepkg.sh.in |    2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index 5120feb..0ca5e36 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -869,7 +869,7 @@ tidy_install() {
        if [[ $(check_option strip) = y&&  -n ${STRIP_DIRS[*]} ]]; then
                msg2 "$(gettext "Stripping unneeded symbols from binaries and 
libraries...")"
                local binary
-               find ${strip_di...@]} -type f 2>/dev/null | while read binary ; 
do
+               find ${strip_di...@]} -type f -writable 2>/dev/null | while 
read binary ; do
                        case "$(file -biz "$binary")" in
                                *compressed-encoding*)      # Skip compressed 
binaries
                                        ;;

Seems reasonable (strip fails for non-writable files, right?). However,
according to my quick search, the writable flag is not available on BSD
[1,2]. So we have to use -perm or is there a better option?

Cedric

[1] http://www.gsp.com/cgi-bin/man.cgi?section=1&topic=find
[2]
http://developer.apple.com/mac/library/DOCUMENTATION/Darwin/Reference/ManPages/man1/find.1.html


Ah, stupid incompatible implementations of core utilities... So, changing that find to:

find ${strip_di...@]} -type f -perm -u+x

should work everywhere.

Allan

Reply via email to