X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/267cc36546d4741ed2b1bf63f6cae18bbfa3b2e2..4b1477f8c17ff700f2c23d41db998fe5c58226ff:/scripts/rstrip.sh diff --git a/scripts/rstrip.sh b/scripts/rstrip.sh index 6dd44f2ed..4665ff555 100755 --- a/scripts/rstrip.sh +++ b/scripts/rstrip.sh @@ -5,25 +5,6 @@ # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # - -find_modparams() { - FILE="$1" - $NM "$FILE" | awk ' -BEGIN { - FS=" " -} -($3 ~ /^__module_parm_/) && ($3 !~ /^__module_parm_desc/) { - gsub(/__module_parm_/, "", $3) - printf "-K " $3 " " -} -($2 ~ /r/) && ($3 ~ /__param_/) { - gsub(/__param_/, "", $3) - printf "-K " $3 " " -} -' -} - - SELF=${0##*/} [ -z "$STRIP" ] && { @@ -45,10 +26,13 @@ find $TARGETS -type f -a -exec file {} \; | \ IFS=":" while read F S; do echo "$SELF: $F:$S" - [ "${F##*\.}" = "o" -o "${F##*\.}" = "ko" ] && { - eval "$STRIP_KMOD -w -K '__param*' -K '__mod*' $(find_modparams "$F")$F" + [ "${S}" = "relocatable" ] && { + eval "$STRIP_KMOD $F" } || { + b=$(stat -c '%a' $F) eval "$STRIP $F" + a=$(stat -c '%a' $F) + [ "$a" = "$b" ] || chmod $b $F } done true