summaryrefslogtreecommitdiffstats
path: root/scripts/rstrip.sh
diff options
context:
space:
mode:
authornico <nico@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-04-18 06:12:00 +0000
committernico <nico@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-04-18 06:12:00 +0000
commitb275dcd327e9d85121d20e684911177a36ec490c (patch)
tree1d1d316d8078028ec125380cfdcfd07b1d7d70b4 /scripts/rstrip.sh
parent9a8d9ffe395c727658d35c4398701e12d56013c7 (diff)
Add an rscript shell script to recursively find strippable binaries and strip unstripped ones
git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@660 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'scripts/rstrip.sh')
-rwxr-xr-xscripts/rstrip.sh26
1 files changed, 26 insertions, 0 deletions
diff --git a/scripts/rstrip.sh b/scripts/rstrip.sh
new file mode 100755
index 000000000..d9d3ad21b
--- /dev/null
+++ b/scripts/rstrip.sh
@@ -0,0 +1,26 @@
+#!/bin/sh
+
+SELF=${0##*/}
+
+[ -z "$STRIP" ] && {
+ echo "$SELF: strip command not defined (STRIP variable not set)"
+ exit 1
+}
+
+TARGETS=$*
+
+[ -z "$TARGETS" ] && {
+ echo "$SELF: no directories / files specified"
+ echo "usage: $SELF [PATH...]"
+ exit 1
+}
+
+find $TARGETS -type f -a -exec file {} \; | \
+ sed -n -e 's/^\(.*\):.*ELF.*\(executable\|relocatable\|shared object\).*, not stripped/\1:\2/p' | \
+(
+ IFS=":"
+ while read F S; do
+ echo "$SELF: $F:$S"
+ eval "$STRIP $F"
+ done
+)