xref: /freebsd/cddl/usr.bin/ctfmerge/ctfmerge.1 (revision 95ee2897e98f5d444f26ed2334cc7c439f9c16c6)
1.\"
2.\" Copyright (c) 2010 The FreeBSD Foundation
3.\" All rights reserved.
4.\"
5.\" This software was developed by Rui Paulo under sponsorship from the
6.\" FreeBSD Foundation.
7.\"
8.\" Redistribution and use in source and binary forms, with or without
9.\" modification, are permitted provided that the following conditions
10.\" are met:
11.\" 1. Redistributions of source code must retain the above copyright
12.\"    notice, this list of conditions and the following disclaimer.
13.\" 2. Redistributions in binary form must reproduce the above copyright
14.\"    notice, this list of conditions and the following disclaimer in the
15.\"    documentation and/or other materials provided with the distribution.
16.\"
17.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
18.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
21.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27.\" SUCH DAMAGE.
28.\"
29.\" $FreeBSD$
30.\"
31.Dd April 21, 2022
32.Dt CTFMERGE 1
33.Os
34.Sh NAME
35.Nm ctfmerge
36.Nd merge several CTF data sections into one
37.Sh SYNOPSIS
38.Nm
39.Op Fl fgstv
40.Fl l Ar label
41.Fl L Ar labelenv
42.Fl o Ar outfile
43file ...
44.Nm
45.Op Fl fgstv
46.Fl l Ar label
47.Fl L Ar labelenv
48.Fl o Ar outfile
49.Fl d Ar uniqfile
50.Op Fl g
51.Op Fl D Ar uniqlabel
52file ...
53.Nm
54.Op Fl fgstv
55.Fl l Ar label
56.Fl L Ar labelenv
57.Fl o Ar outfile
58.Fl w Ar withfile
59file ...
60.Nm
61.Op Fl g
62.Fl c Ar srcfile
63.Ar destfile
64.Sh DESCRIPTION
65The
66.Nm
67utility merges several CTF (Compact C Type Format) data sections from several
68files into one output file, unifying common data.
69.Pp
70The following options are available:
71.Bl -tag -width indent
72.It Fl f
73Match global symbols to global CTF data.
74.It Fl g
75Don't delete the original debugging sections.
76.It Fl s
77Use the .dynsym ELF section instead of the .symtab ELF section.
78.It Fl t
79Make sure that all object files have a CTF section.
80.It Fl v
81Enable verbose mode.
82.It Fl l Ar label
83Sets the label as
84.Ar label .
85.It Fl L Ar labelenv
86Instructs
87.Nm
88to read the label from the environment variable
89.Ar labelenv .
90.It Fl o Ar outfile
91Use
92.Ar outfile
93to store the merged CTF data.
94.It Fl d Ar uniqfile
95Uniquify against
96.Ar uniqfile .
97.It Fl d Ar uniqlabel
98Uniquify against label
99.Ar uniqlabel
100.It Fl w Ar withfile
101Additive merge with
102.Ar withfile .
103.It Fl c Ar srcfile Ar destfile
104Copy CTF data from
105.Ar srcfile
106into
107.Ar destfile .
108.El
109.Sh EXIT STATUS
110.Ex -std
111.Sh SEE ALSO
112.Xr ctfconvert 1 ,
113.Xr ctfdump 1 ,
114.Xr ctf 5
115.Sh HISTORY
116The
117.Nm
118utility first appeared in
119.Fx 7.0 .
120.Sh AUTHORS
121The CTF utilities came from OpenSolaris.
122