Annotation of src/usr.bin/ranlib/ranlib.5, Revision 1.6
1.6 ! millert 1: .\" $OpenBSD: ranlib.5,v 1.5 2003/01/21 19:59:09 jmc Exp $
1.4 aaron 2: .\"
1.1 deraadt 3: .\" Copyright (c) 1990, 1991 The Regents of the University of California.
4: .\" All rights reserved.
5: .\"
6: .\" Redistribution and use in source and binary forms, with or without
7: .\" modification, are permitted provided that the following conditions
8: .\" are met:
9: .\" 1. Redistributions of source code must retain the above copyright
10: .\" notice, this list of conditions and the following disclaimer.
11: .\" 2. Redistributions in binary form must reproduce the above copyright
12: .\" notice, this list of conditions and the following disclaimer in the
13: .\" documentation and/or other materials provided with the distribution.
1.6 ! millert 14: .\" 3. Neither the name of the University nor the names of its contributors
1.1 deraadt 15: .\" may be used to endorse or promote products derived from this software
16: .\" without specific prior written permission.
17: .\"
18: .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
19: .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20: .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21: .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
22: .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23: .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24: .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25: .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26: .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27: .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28: .\" SUCH DAMAGE.
29: .\"
30: .\" from: @(#)ranlib.5.5 5.2 (Berkeley) 5/10/91
31: .\"
32: .Dd May 10, 1991
33: .Dt RANLIB 5
34: .Os
35: .Sh NAME
36: .Nm ranlib
37: .Nd archive (library) table-of-contents format
38: .Sh SYNOPSIS
39: .Fd #include <ranlib.h>
40: .Sh DESCRIPTION
41: The archive table-of-contents command
42: .Nm ranlib
43: creates a table of contents for archives, containing object files, to
44: be used by the link-editor
45: .Xr ld 1 .
46: It operates on archives created with the utility
47: .Xr ar 1 .
48: .Pp
49: The
1.3 aaron 50: .Nm ranlib
1.1 deraadt 51: function
52: prepends a new file to the archive which has three separate parts.
53: The first part is a standard archive header, which has a special name
1.4 aaron 54: field,
55: .Dq __.SYMDEF .
1.1 deraadt 56: .Pp
1.4 aaron 57: The second part is a
58: .Li long
59: followed by a list of ranlib structures.
1.1 deraadt 60: The long is the size, in bytes, of the list of ranlib structures.
61: Each of the ranlib structures consists of a zero based offset into the
62: next section (a string table of symbols) and an offset from the beginning
63: of the archive to the start of the archive file which defines the symbol.
64: The actual number of ranlib structures is this number divided by the size
65: of an individual ranlib structure.
66: .Pp
1.4 aaron 67: The third part is a
68: .Li long
69: followed by a string table.
1.5 jmc 70: The long is the size, in bytes, of the string table.
1.1 deraadt 71: .Sh SEE ALSO
72: .Xr ar 1 ,
73: .Xr ranlib 1