https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r104868 | tilghman | 2008-02-27 18:05:06 -0600 (Wed, 27 Feb 2008) | 7 lines Compatibility fix for PPC64 (closes issue #12081) Reported by: jcollie Patches: asterisk-1.4.18-funcdesc.patch uploaded by jcollie (license 412) Tested by: jcollie, Corydon76 ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@104869 65c4cc65-6c06-0410-ace0-fbb531ad65f3
39 lines
963 B
Bash
Executable file
39 lines
963 B
Bash
Executable file
#!/bin/sh -e
|
|
|
|
# This script is designed to remove all non-API global symbols from an object
|
|
# file. The only global symbols that should be retained are those that belong
|
|
# to the official namespace. Unfortunately doing this is platform-specific, as
|
|
# the object file manipulation tools are not consistent across platforms.
|
|
#
|
|
# On platforms where this script does not know what to do, the object file
|
|
# will retain non-API global symbols, and this may have unpleasant side effects.
|
|
#
|
|
# Prefixes that belong to the official namespace are:
|
|
# ast_
|
|
# _ast_
|
|
# __ast_
|
|
# astman_
|
|
# pbx_
|
|
# resample_
|
|
|
|
FILTER="${GREP} -v -e ^ast_ -e ^_ast_ -e ^__ast_ -e ^astman_ -e ^pbx_ -e ^resample_"
|
|
|
|
case "${PROC}" in
|
|
powerpc64)
|
|
TEXTSYM=" D "
|
|
;;
|
|
*)
|
|
TEXTSYM=" T "
|
|
;;
|
|
esac
|
|
|
|
case "${OSARCH}" in
|
|
linux-gnu|FreeBSD)
|
|
nm ${1} | ${GREP} -e "$TEXTSYM" | cut -d" " -f3 | ${FILTER} > striplist
|
|
sed -e "s/^/-N /" striplist | xargs ${STRIP} ${1}
|
|
rm -f striplist
|
|
;;
|
|
*)
|
|
;;
|
|
esac
|