xref: /openbsd-src/regress/usr.bin/mandoc/db/mlinks/mlinks.1 (revision 6f40fd3443aca08a7a9816d163e7f21e1a4f4c6f)
1*6f40fd34Sbluhm.\"	$OpenBSD: mlinks.1,v 1.4 2017/07/07 23:55:21 bluhm Exp $
2fc61954aSschwarze.\"
3fc61954aSschwarze.\" Copyright (c) 2016 Ingo Schwarze <schwarze@openbsd.org>
4fc61954aSschwarze.\"
5fc61954aSschwarze.\" Permission to use, copy, modify, and distribute this software for any
6fc61954aSschwarze.\" purpose with or without fee is hereby granted, provided that the above
7fc61954aSschwarze.\" copyright notice and this permission notice appear in all copies.
8fc61954aSschwarze.\"
9fc61954aSschwarze.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10fc61954aSschwarze.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11fc61954aSschwarze.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12fc61954aSschwarze.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13fc61954aSschwarze.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14fc61954aSschwarze.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15fc61954aSschwarze.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16fc61954aSschwarze.\"
17*6f40fd34Sbluhm.Dd $Mdocdate: July 7 2017 $
18fc61954aSschwarze.Dt MLINKS 1
19fc61954aSschwarze.Os
20fc61954aSschwarze.Sh NAME
21fc61954aSschwarze.Nm mlinks
22fc61954aSschwarze.Nd extract desired mlinks from a mandoc.db(5) file
23fc61954aSschwarze.Sh SYNOPSIS
24fc61954aSschwarze.Nm mlinks
25fc61954aSschwarze.Ar file
26fc61954aSschwarze.Sh DESCRIPTION
27fc61954aSschwarzeThe
28fc61954aSschwarze.Nm
29fc61954aSschwarzeutility reads a
30fc61954aSschwarze.Xr mandoc_db 5
31fc61954aSschwarzedatabase from the given
32fc61954aSschwarze.Ar file .
33fc61954aSschwarzeFor each manual page name that does not agree with the filename,
349fb4cc0eSschwarzeit writes one line to the standard output, containing:
35fc61954aSschwarze.Pp
36fc61954aSschwarze.Bl -dash -compact
37fc61954aSschwarze.It
38fc61954aSschwarzethe filename
39fc61954aSschwarze.It
40fc61954aSschwarzea comma
41fc61954aSschwarze.It
42fc61954aSschwarzethe other name
43fc61954aSschwarze.It
44fc61954aSschwarzea period
45fc61954aSschwarze.It
46fc61954aSschwarzethe section number
47fc61954aSschwarze.El
48fc61954aSschwarze.Pp
49fc61954aSschwarzeThis format is useful for portable software intended to run on
50fc61954aSschwarzeoperating systems that require multiple file system entries
51fc61954aSschwarzefor pages having multiple names.
52fc61954aSschwarze.Pp
53fc61954aSschwarzeFor example, it is used to generate MLINKS for portable LibreSSL.
54fc61954aSschwarze.Sh FILES
55fc61954aSschwarzeThe header files
56fc61954aSschwarze.Qq Pa dbm_map.h
57fc61954aSschwarzeand
58fc61954aSschwarze.Qq Pa dbm.h
59fc61954aSschwarzeand the object files
60fc61954aSschwarze.Pa dbm_map.o
61fc61954aSschwarzeand
62fc61954aSschwarze.Pa dbm.o
63fc61954aSschwarzefrom the
64fc61954aSschwarze.Xr mandoc 1
65fc61954aSschwarzebuild are required to compile and link
66fc61954aSschwarze.Nm .
67fc61954aSschwarze.Sh EXIT STATUS
68fc61954aSschwarze.Ex -std
69fc61954aSschwarzeIt fails when no argument or more than one argument is given, when
70fc61954aSschwarze.Fn dbm_open
71fc61954aSschwarzefails, or when database corruption is detected.
729fb4cc0eSschwarze.Sh EXAMPLES
739fb4cc0eSschwarzeTypical usage looks like this:
749fb4cc0eSschwarze.Bd -literal -offset indent
759fb4cc0eSschwarzecd /usr/src/usr.bin/mandoc/
769fb4cc0eSschwarzemake obj
779fb4cc0eSschwarzemake
789fb4cc0eSschwarzecd /usr/src/regress/usr.bin/mandoc/db/mlinks/
799fb4cc0eSschwarzemake obj
809fb4cc0eSschwarzemake
810de6bd8dSbcookmakewhatis -a /usr/src/lib/libssl/man
820de6bd8dSbcook\&./obj/mlinks /usr/src/lib/libssl/man/mandoc.db > ssl.mlinks
839fb4cc0eSschwarze.Ed
84fc61954aSschwarze.Sh AUTHORS
85fc61954aSschwarze.An Ingo Schwarze Aq Mt schwarze@openbsd.org
86fc61954aSschwarze.Sh CAVEATS
87fc61954aSschwarzeThe
88fc61954aSschwarze.Nm
89fc61954aSschwarzeutility only partially validates the database format.
909fb4cc0eSschwarzeFor complete validation, use the
919fb4cc0eSschwarze.Xr dbm_dump 1
929fb4cc0eSschwarzeutility found in
939fb4cc0eSschwarze.Pa /usr/src/regress/usr.bin/mandoc/db/dbm_dump/ .
94