asterisk/build_tools/strip_nonapi
Jason Parker 30f27bd09a Merged revisions 80330 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r80330 | qwell | 2007-08-22 13:53:18 -0500 (Wed, 22 Aug 2007) | 7 lines

Fix a few build issues in Solaris (and likely others).

Use GREP and ID variables from autoconf.

Reported to me in #asterisk-dev
I forgot who reported this - sorry. :(

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80331 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-22 18:54:30 +00:00

29 lines
842 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_
FILTER="${GREP} -v -e ^ast_ -e ^_ast_ -e ^__ast_ -e ^astman_ -e ^pbx_"
case "${OSARCH}" in
linux-gnu)
nm ${1} | ${GREP} -e " T " | cut -d" " -f3 | ${FILTER} > striplist
sed -e "s/^/-N /" striplist | xargs ${STRIP} ${1}
rm -f striplist
;;
*)
;;
esac