xref: /freebsd/contrib/elftoolchain/libelftc/elftc.3 (revision 57d7e4cc2c6f50edf9b1d54567e03066b8eb42c5)
1.\" Copyright (c) 2012 Joseph Koshy.  All rights reserved.
2.\"
3.\" Redistribution and use in source and binary forms, with or without
4.\" modification, are permitted provided that the following conditions
5.\" are met:
6.\" 1. Redistributions of source code must retain the above copyright
7.\"    notice, this list of conditions and the following disclaimer.
8.\" 2. Redistributions in binary form must reproduce the above copyright
9.\"    notice, this list of conditions and the following disclaimer in the
10.\"    documentation and/or other materials provided with the distribution.
11.\"
12.\" This software is provided by Joseph Koshy ``as is'' and
13.\" any express or implied warranties, including, but not limited to, the
14.\" implied warranties of merchantability and fitness for a particular purpose
15.\" are disclaimed.  in no event shall Joseph Koshy be liable
16.\" for any direct, indirect, incidental, special, exemplary, or consequential
17.\" damages (including, but not limited to, procurement of substitute goods
18.\" or services; loss of use, data, or profits; or business interruption)
19.\" however caused and on any theory of liability, whether in contract, strict
20.\" liability, or tort (including negligence or otherwise) arising in any way
21.\" out of the use of this software, even if advised of the possibility of
22.\" such damage.
23.\"
24.\" $Id: elftc.3 3645 2018-10-15 20:17:14Z jkoshy $
25.\"
26.Dd February 12, 2020
27.Dt ELFTC 3
28.Os
29.Sh NAME
30.Nm elftc
31.Nd support routines used in the Elftoolchain project
32.Sh LIBRARY
33.Lb libelftc
34.Sh SYNOPSIS
35.In libelftc.h
36.Sh DESCRIPTION
37The
38.Lb libelftc
39provides support routines used for developing the utilities in the
40Elftoolchain source tree.
41.Pp
42This manual page serves as an overview of the functionality in this
43library.
44Additional reference information may be found in the individual
45manual pages for the functions listed below.
46.Ss Functional Grouping
47.Bl -tag -width indent
48.It "Binary Object Handling"
49.Bl -tag -compact -width indent
50.It Fn elftc_bfd_find_target
51Locate a binary object descriptor.
52.It Fn elftc_bfd_target_class
53Query the ELF class for a binary object descriptor.
54.It Fn elftc_bfd_target_byteorder
55Query the byte order for a binary object descriptor.
56.It Fn elftc_bfd_target_flavor
57Query the object format for a binary object descriptor.
58.It Fn elftc_bfd_target_machine
59Query the target machine for a binary object descriptor.
60.It Fn elftc_bfd_target_osabi
61Query the target osabi for a binary object descriptor.
62.El
63.It "C++ support"
64.Bl -tag -compact -width indent
65.It Fn elftc_demangle
66Decodes a symbol name encoded according to the encoding rules for the
67C++ language.
68.El
69.It "Programming conveniences"
70.Bl -tag -compact -width indent
71.It Fn elftc_copyfile
72Copies the contents of a file to another.
73.It Fn elftc_set_timestamp
74Portably set the time stamps on a file.
75.El
76.It "Project Configuration"
77.Bl -tag -compact -width indent
78.It Fn elftc_version
79Returns a project-wide identifier string that encodes the source
80revision of the source tree.
81.El
82.El
83.Sh SEE ALSO
84.Xr dwarf 3 ,
85.Xr elf 3
86