#!/usr/bin/env bash[-n"$CROSS"]||{echo"The variable CROSS must be set to point to the cross-compiler prefix"exit1}MODULE="$1"["$#"-ne1]&&{echo"Usage: $0 <module>"exit1}ARGS=if[-n"$KEEP_SYMBOLS"];thenARGS="-X --strip-debug"elseARGS="-x -G __this_module --strip-unneeded"fi${CROSS}objcopy\-R.comment\-R.pdr\-R.mdebug.abi32\-R.note.gnu.build-id\-R.gnu.attributes\-R.reginfo\$ARGS\"$MODULE""$MODULE.tmp"[-n"$NO_RENAME"]&&{mv"${MODULE}.tmp""$MODULE"exit0}${CROSS}nm"$MODULE.tmp"|awk'BEGIN { n = 0}$3 && $2 ~ /[brtd]/ && $3 !~ /\$LC/ && !def[$3] { print "--redefine-sym "$3"=_"n; n = n + 1 def[$3] = 1}'>"$MODULE.tmp1"${CROSS}objcopy`cat${MODULE}.tmp1`${MODULE}.tmp${MODULE}.out
mv"${MODULE}.out""${MODULE}"
rm-f"${MODULE}".t*