grub/grub-core/gensyminfo.sh.in

36 lines
979 B
Bash
Raw Normal View History

#! /bin/sh
set -e
2010-08-29 05:47:30 +00:00
# Copyright (C) 2010 Free Software Foundation, Inc.
#
# This gensymlist.sh is free software; the author
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
#
# Example:
#
# gensyms.sh normal.module
#
module=$1
modname=`echo $module | sed -e 's@\.module.*$@@'`
# Print all symbols defined by module
if test x@TARGET_APPLE_CC@ = x1; then
@NM@ -g -P -p $module | \
grep -E '^[a-zA-Z0-9_]* [TDS]' | \
sed "s@^\([^ ]*\).*@defined $modname \1@g"
else
@NM@ -g --defined-only -P -p $module | \
sed "s@^\([^ ]*\).*@defined $modname \1@g"
fi
# Print all undefined symbols used by module
@NM@ -u -P -p $module | sed "s@^\([^ ]*\).*@undefined $modname \1@g"