1 # $FreeBSD: src/sys/conf/kmod_syms.awk,v 1.4 2002/08/06 19:31:04 iedowse Exp $
2
3 # Read global symbols from object file.
4 BEGIN {
5 while ("${NM:='nm'} -g " ARGV[1] | getline) {
6 if (match($0, /^[^[:space:]]+ [^AU] (.*)$/)) {
7 syms[$3] = $2
8 }
9 }
10 delete ARGV[1]
11 }
12
13 # De-list symbols from the export list.
14 {
15 delete syms[$0]
16 }
17
18 # Strip commons, make everything else local.
19 END {
20 for (member in syms) {
21 if (syms[member] == "C")
22 print "-N" member
23 else
24 print "-L" member
25 }
26 }
|