xref: /freebsd/contrib/elftoolchain/elfcopy/mcs.1 (revision ae500c1ff8974130f7f2692772cf288b90349e0d)
1a85fe12eSEd Maste.\" Copyright (c) 2011 Joseph Koshy.  All rights reserved.
2a85fe12eSEd Maste.\"
3a85fe12eSEd Maste.\" Redistribution and use in source and binary forms, with or without
4a85fe12eSEd Maste.\" modification, are permitted provided that the following conditions
5a85fe12eSEd Maste.\" are met:
6a85fe12eSEd Maste.\" 1. Redistributions of source code must retain the above copyright
7a85fe12eSEd Maste.\"    notice, this list of conditions and the following disclaimer.
8a85fe12eSEd Maste.\" 2. Redistributions in binary form must reproduce the above copyright
9a85fe12eSEd Maste.\"    notice, this list of conditions and the following disclaimer in the
10a85fe12eSEd Maste.\"    documentation and/or other materials provided with the distribution.
11a85fe12eSEd Maste.\"
12a85fe12eSEd Maste.\" THIS SOFTWARE IS PROVIDED BY JOSEPH KOSHY ``AS IS'' AND
13a85fe12eSEd Maste.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
14a85fe12eSEd Maste.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
15a85fe12eSEd Maste.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOSEPH KOSHY BE LIABLE
16a85fe12eSEd Maste.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
17a85fe12eSEd Maste.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
18a85fe12eSEd Maste.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
19a85fe12eSEd Maste.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
20a85fe12eSEd Maste.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
21a85fe12eSEd Maste.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
22a85fe12eSEd Maste.\" SUCH DAMAGE.
23a85fe12eSEd Maste.\"
24*ae500c1fSEd Maste.\" $Id: mcs.1 3642 2018-10-14 14:24:28Z jkoshy $
25a85fe12eSEd Maste.\"
26a85fe12eSEd Maste.Dd November 29, 2011
27a85fe12eSEd Maste.Dt MCS 1
28*ae500c1fSEd Maste.Os
29a85fe12eSEd Maste.Sh NAME
30a85fe12eSEd Maste.Nm mcs
31a85fe12eSEd Maste.Nd manipulate the comment section of an ELF object
32a85fe12eSEd Maste.Sh SYNOPSIS
33a85fe12eSEd Maste.Nm
34a85fe12eSEd Maste.Op Fl a Ar string
35a85fe12eSEd Maste.Op Fl c
36a85fe12eSEd Maste.Op Fl n Ar name
37a85fe12eSEd Maste.Op Fl p
38a85fe12eSEd Maste.Ar
39a85fe12eSEd Maste.Nm
40a85fe12eSEd Maste.Fl d
41a85fe12eSEd Maste.Op Fl n Ar name
42a85fe12eSEd Maste.Ar
43a85fe12eSEd Maste.Nm
44a85fe12eSEd Maste.Fl h | Fl -help
45a85fe12eSEd Maste.Nm
46a85fe12eSEd Maste.Fl V | Fl -version
47a85fe12eSEd Maste.Sh DESCRIPTION
48a85fe12eSEd MasteThe
49a85fe12eSEd Maste.Nm
50a85fe12eSEd Masteutility is used to manipulate comment sections in an ELF object.
51a85fe12eSEd MasteIf a command-line argument
52a85fe12eSEd Maste.Ar file
53a85fe12eSEd Mastenames an
54a85fe12eSEd Maste.Xr ar 1
55a85fe12eSEd Mastearchive, then
56a85fe12eSEd Maste.Nm
57a85fe12eSEd Mastewill operate on the ELF objects contained in the archive.
58a85fe12eSEd Maste.Pp
59a85fe12eSEd MasteBy default
60a85fe12eSEd Maste.Nm
61a85fe12eSEd Masteoperates on the ELF section named
62a85fe12eSEd Maste.Dq .comment .
63a85fe12eSEd MasteThis may be changed using the
64a85fe12eSEd Maste.Fl n
65a85fe12eSEd Masteoption.
66a85fe12eSEd Maste.Pp
67a85fe12eSEd MasteThe
68a85fe12eSEd Maste.Nm
69a85fe12eSEd Masteutility supports the following options:
70a85fe12eSEd Maste.Bl -tag -width ".Fl a Ar string"
71a85fe12eSEd Maste.It Fl a Ar string
72a85fe12eSEd MasteAppend the text in
73a85fe12eSEd Maste.Ar string
74a85fe12eSEd Masteto the comment section.
75a85fe12eSEd MasteThis option may be specified multiple times.
76a85fe12eSEd Maste.It Fl c
77a85fe12eSEd MasteCompress the comment section by removing duplicate entries.
78a85fe12eSEd Maste.It Fl d
79a85fe12eSEd MasteDelete the comment section from the ELF object.
80a85fe12eSEd Maste.It Fl h | Fl -help
81a85fe12eSEd MasteDisplay a usage message and exit.
82a85fe12eSEd Maste.It Fl n Ar name
83a85fe12eSEd MasteOperate on the section named
84a85fe12eSEd Maste.Ar name .
85a85fe12eSEd Maste.It Fl p
86a85fe12eSEd MastePrint the contents of the comment section.
87a85fe12eSEd MasteThis step is taken after actions specified by the
88a85fe12eSEd Maste.Fl a
89a85fe12eSEd Masteand
90a85fe12eSEd Maste.Fl c
91a85fe12eSEd Masteoptions (if any) are completed.
92a85fe12eSEd Maste.It Fl V | Fl -version
93a85fe12eSEd MastePrint a version identifier and exit.
94a85fe12eSEd Maste.El
95a85fe12eSEd Maste.Sh COMPATIBILITY
96a85fe12eSEd MasteThe behavior of the
97a85fe12eSEd Maste.Nm
98a85fe12eSEd Masteutility differs from its SVR4 counterpart in the following ways:
99a85fe12eSEd Maste.Bl -bullet -compact
100a85fe12eSEd Maste.It
101a85fe12eSEd MasteIf the
102a85fe12eSEd Maste.Fl d
103a85fe12eSEd Masteoption is specified, it causes any
104a85fe12eSEd Maste.Fl a ,
105a85fe12eSEd Maste.Fl c
106a85fe12eSEd Masteand
107a85fe12eSEd Maste.Fl p
108a85fe12eSEd Masteoptions present to be ignored.
109a85fe12eSEd Maste.It
110a85fe12eSEd MasteThe order of options
111a85fe12eSEd Maste.Fl a ,
112a85fe12eSEd Maste.Fl c ,
113a85fe12eSEd Maste.Fl d ,
114a85fe12eSEd Masteand
115a85fe12eSEd Maste.Fl p
116a85fe12eSEd Masteon the command line is not significant.
117a85fe12eSEd Maste.El
118a85fe12eSEd Maste.Sh DIAGNOSTICS
119a85fe12eSEd Maste.Ex -std
120a85fe12eSEd Maste.Sh SEE ALSO
121a85fe12eSEd Maste.Xr ar 1 ,
122a85fe12eSEd Maste.Xr elfcopy 1 ,
123a85fe12eSEd Maste.Xr ld 1 ,
124a85fe12eSEd Maste.Xr nm 1 ,
125a85fe12eSEd Maste.Xr strip 1
126