From 29c0d15c0172df8adb38b087148f1f85a0d4c108 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Fri, 18 Nov 1994 16:00:41 +0000 Subject: Thu Nov 17 15:37:19 1994 Mark W. Eichin * objcopy.c (add_strip_symbol): New function, adds a name to an explicit list of symbols to strip. (is_strip_symbol): New function, reports whether the name argument is in the explicit list. (filter_symbols): Check against is_strip_symbol above all. (strip_main): Recognize -N option. If used, don't default to strip_all. (copy_main): Recognize -N option. (strip_usage): Document -N and --strip-symbol options. (copy_usage): Ditto. * objcopy.1, strip.1, binutils.texi: Document -N and --strip-symbol options. --- binutils/ChangeLog | 15 +++++++++++++++ binutils/binutils.texi | 14 ++++++++++++++ binutils/objcopy.1 | 6 ++++++ binutils/strip.1 | 8 ++++++++ 4 files changed, 43 insertions(+) (limited to 'binutils') diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 8a9a091..c516534 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -6,6 +6,21 @@ Thu Nov 17 15:00:13 1994 Ian Lance Taylor * objcopy.c (main): Fix is_strip test. From pirker@eiunix.tuwien.ac.at (Martin Pirker). +Thu Nov 17 15:37:19 1994 Mark W. Eichin + + * objcopy.c (add_strip_symbol): New function, adds a name to an + explicit list of symbols to strip. + (is_strip_symbol): New function, reports whether the name argument + is in the explicit list. + (filter_symbols): Check against is_strip_symbol above all. + (strip_main): Recognize -N option. If used, don't default to + strip_all. + (copy_main): Recognize -N option. + (strip_usage): Document -N and --strip-symbol options. + (copy_usage): Ditto. + * objcopy.1, strip.1, binutils.texi: Document -N and + --strip-symbol options. + Tue Nov 8 13:12:54 1994 Ian Lance Taylor * objdump.c (display_target_list, display_info_table): Pass an diff --git a/binutils/binutils.texi b/binutils/binutils.texi index 30ea18b..76d516d 100644 --- a/binutils/binutils.texi +++ b/binutils/binutils.texi @@ -743,6 +743,7 @@ objcopy [ -F @var{bfdname} | --target=@var{bfdname} ] [ -I @var{bfdname} | --input-target=@var{bfdname} ] [ -O @var{bfdname} | --output-target=@var{bfdname} ] [ -S | --strip-all ] [ -g | --strip-debug ] + [ -N @var{symbolname} | --strip-symbol=@var{symbolname} ] [ -x | --discard-all ] [ -X | --discard-locals ] [ -b @var{byte} | --byte=@var{byte} ] [ -i @var{interleave} | --interleave=@var{interleave} ] @@ -821,6 +822,12 @@ Do not copy relocation and symbol information from the source file. @itemx --strip-debug Do not copy debugging symbols from the source file. +@item -N @var{symbolname} +@itemx --strip-symbol=@var{symbolname} +Do not copy symbol @var{symbolname} from the source file. This option +may be given more than once, and may be combined with other strip +options. + @item -x @itemx --discard-all Do not copy non-global symbols from the source file. @@ -1290,6 +1297,7 @@ strip [ -F @var{bfdname} | --target=@var{bfdname} | --target=@var{bfdname} ] [ -I @var{bfdname} | --input-target=@var{bfdname} ] [ -O @var{bfdname} | --output-target=@var{bfdname} ] [ -s | --strip-all ] [ -S | -g | --strip-debug ] + [ -N @var{symbolname} | --strip-symbol=@var{symbolname} ] [ -x | --discard-all ] [ -X | --discard-locals ] [ -R @var{sectionname} | --remove-section=@var{sectionname} ] [ -v | --verbose ] [ -V | --version ] [ --help ] @@ -1339,6 +1347,12 @@ Remove all symbols. @itemx --strip-debug Remove debugging symbols only. +@item -N @var{symbolname} +@itemx --strip-symbol=@var{symbolname} +Remove symbol @var{symbolname} from the source file. This option +may be given more than once, and may be combined with other strip +options. + @item -x @itemx --discard-all Remove non-global symbols. diff --git a/binutils/objcopy.1 b/binutils/objcopy.1 index 0bf5727..c5b04a9 100644 --- a/binutils/objcopy.1 +++ b/binutils/objcopy.1 @@ -21,6 +21,7 @@ objcopy \- copy and translate object files .RB "[\|" \-R\ \fIsectionname\fB\ |\ \-\-remove\-section=\fIsectionname\fR "\|]" .RB "[\|" \-S\ |\ \-\-strip\-all\fR "\|]" .RB "[\|" \-g\ |\ \-\-strip\-debug\fR "\|]" +.RB "[\|" \-N\ \fIsymbolname\fR\ |\ \-\-strip\-symbol=\fIsymbolname\fR "\|]" .RB "[\|" \-x\ |\ \-\-discard\-all\fR "\|]" .RB "[\|" \-X\ |\ \-\-discard\-locals\fR "\|]" .RB "[\|" \-b\ \fIbyte\fR\ |\ \fB\-\-byte=\fIbyte\fR "\|]" @@ -120,6 +121,11 @@ Do not copy relocation and symbol information from the source file. .B \-g\fR, \fB\-\-strip\-debug Do not copy debugging symbols from the source file. .TP +.B \-N \fIsymbolname\fR, \fB\-\-strip\-symbol=\fIsymbolname +Do not copy symbol \fIsymbolname\fP from the source file. This option +may be given more than once, and may be combined with other strip +options. +.TP .B \-x\fR, \fB \-\-discard\-all Do not copy non-global symbols from the source file. .TP diff --git a/binutils/strip.1 b/binutils/strip.1 index 5373b9f..e1ec592 100644 --- a/binutils/strip.1 +++ b/binutils/strip.1 @@ -92,6 +92,14 @@ Remove all symbols. Remove debugging symbols only. .TP +.B \-N \fIsymbolname\fR +.TP +.B \-\-strip\-symbol=\fIsymbolname +Remove symbol \fIsymbolname\fP from the source file. This option +may be given more than once, and may be combined with other strip +options. + +.TP .B \-x .TP .B \-\-discard\-all -- cgit v1.1