mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-29 23:39:35 +00:00 
			
		
		
		
	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
 |