aboutsummaryrefslogtreecommitdiff
path: root/binutils/objcopy.1
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1996-09-13 21:34:08 +0000
committerIan Lance Taylor <ian@airs.com>1996-09-13 21:34:08 +0000
commitdecf286508f94fc223e6b9b2b4020b5d1d8c1bbd (patch)
tree86c141514bf1fa5df32949cc4e4491e2ebf323b3 /binutils/objcopy.1
parent1b3b1c2d3cada7949e183d024f32ace0652d3ac0 (diff)
downloadgdb-decf286508f94fc223e6b9b2b4020b5d1d8c1bbd.zip
gdb-decf286508f94fc223e6b9b2b4020b5d1d8c1bbd.tar.gz
gdb-decf286508f94fc223e6b9b2b4020b5d1d8c1bbd.tar.bz2
* objcopy.c (change_leading_char): New static variable.
(OPTION_CHANGE_LEADING_CHAR): Define. (copy_options): Add "change-leading-char". (copy_usage): Mention --change-leading-char. (filter_symbols): Add obfd parameter. Change all callers. Implement change_leading_char. (copy_object): Call filter_symbols if change_leading_char. (copy_main): Handle OPTION_CHANGE_LEADING_CHAR. * binutils.texi, objcopy.1: Document --change-leading-char.
Diffstat (limited to 'binutils/objcopy.1')
-rw-r--r--binutils/objcopy.120
1 files changed, 17 insertions, 3 deletions
diff --git a/binutils/objcopy.1 b/binutils/objcopy.1
index 3276b17..e83aa74 100644
--- a/binutils/objcopy.1
+++ b/binutils/objcopy.1
@@ -39,6 +39,7 @@ objcopy \- copy and translate object files
.RB "[\|" \-\-no\-adjust\-warnings\fR "\|]"
.RB "[\|" \-\-set\-section\-flags=\fIsection=flags\fR "\|]"
.RB "[\|" \-\-add\-section=\fIsectionname=filename\fR "\|]"
+.RB "[\|" \-\-change\-leading\-char\fR "\|]"
.RB "[\|" \-\-remove\-leading\-char\fR "\|]"
.RB "[\|" \-v\ |\ \-\-verbose\fR "\|]"
.RB "[\|" \-V\ |\ \-\-version\fR "\|]"
@@ -219,13 +220,26 @@ The size of the section will be the size of the file. This option
only works on file formats which can support sections with arbitrary
names.
.TP
+.B \-\-change\-leading\-char
+Some object file formats use special characters at the start of
+symbols. The most common such character is underscore, which compilers
+often add before every symbol. This option tells
+.B objcopy
+to change the leading character of every symbol when it converts
+between object file formats. If the object file formats use the same
+leading character, this option has no effect. Otherwise, it will add
+a character, or remove a character, or change a character, as
+appropriate.
+.TP
.B \-\-remove\-leading\-char
If the first character of a global symbol is a special symbol leading
character used by the object file format, remove the character. The
most common symbol leading character is underscore. This option will
-remove a leading underscore from all global symbols. This can be useful
-if you want to link together objects of different file formats with
-different conventions for symbol names.
+remove a leading underscore from all global symbols. This can be
+useful if you want to link together objects of different file formats
+with different conventions for symbol names. This is different from
+@code{--change-leading-char} because it always changes the symbol name
+when appropriate, regardless of the object file format of the output
.TP
.B \-v\fR, \fB\-\-verbose
Verbose output: list all object files modified. In the case of