Skip to content

Commit c480204

Browse files
committed
scripts/mksysmap: use sed with in-line comments
It is not feasible to insert comments in a multi-line shell command. Use sed, and move comments close to the code. Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
1 parent e9f7636 commit c480204

File tree

1 file changed

+37
-24
lines changed

1 file changed

+37
-24
lines changed

scripts/mksysmap

Lines changed: 37 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -11,32 +11,45 @@
1111
# Generate System.map (actual filename passed as second argument)
1212
# The following refers to the symbol type as per nm(1).
1313

14-
# For System.map filter away:
15-
# a - local absolute symbols
16-
# U - undefined global symbols
17-
# N - debugging symbols
18-
# w - local weak symbols
19-
2014
# readprofile starts reading symbols when _stext is found, and
2115
# continue until it finds a symbol which is not either of 'T', 't',
2216
# 'W' or 'w'.
2317
#
24-
# Ignored prefixes:
25-
# $ - local symbols for ARM, MIPS, etc.
26-
# .L - local labels, .LBB,.Ltmpxxx,.L__unnamed_xx,.LASANPC, etc.
27-
# __crc_ - modversions
28-
# __kstrtab_ - EXPORT_SYMBOL (symbol name)
29-
# __kstrtabns_ - EXPORT_SYMBOL (namespace)
18+
19+
${NM} -n ${1} | sed >${2} -e "
20+
# ---------------------------------------------------------------------------
21+
# Ignored symbol types
3022
#
31-
# Ignored symbols:
32-
# L0 - for LoongArch?
33-
34-
$NM -n $1 | grep -v \
35-
-e ' [aNUw] ' \
36-
-e ' \$' \
37-
-e ' \.L' \
38-
-e ' __crc_' \
39-
-e ' __kstrtab_' \
40-
-e ' __kstrtabns_' \
41-
-e ' L0$' \
42-
> $2
23+
24+
# a: local absolute symbols
25+
# N: debugging symbols
26+
# U: undefined global symbols
27+
# w: local weak symbols
28+
/ [aNUw] /d
29+
30+
# ---------------------------------------------------------------------------
31+
# Ignored prefixes
32+
# (do not forget a space before each pattern)
33+
34+
# local symbols for ARM, MIPS, etc.
35+
/ \$/d
36+
37+
# local labels, .LBB, .Ltmpxxx, .L__unnamed_xx, .LASANPC, etc.
38+
/ \.L/d
39+
40+
# CRC from modversions
41+
/ __crc_/d
42+
43+
# EXPORT_SYMBOL (symbol name)
44+
/ __kstrtab_/d
45+
46+
# EXPORT_SYMBOL (namespace)
47+
/ __kstrtabns_/d
48+
49+
# ---------------------------------------------------------------------------
50+
# Ignored symbols (exact match)
51+
# (do not forget a space before and '$' after each pattern)
52+
53+
# for LoongArch?
54+
/ L0$/d
55+
"

0 commit comments

Comments
 (0)