glfs/general/genlib/libgcrypt.xml
2024-01-27 15:46:53 -06:00

248 lines
7.7 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY libgcrypt-download-http "&gnupg-http;/libgcrypt/libgcrypt-&libgcrypt-version;.tar.bz2">
<!ENTITY libgcrypt-download-ftp " ">
<!ENTITY libgcrypt-md5sum "a8cada0b343e10dbee51c9e92d856a94">
<!ENTITY libgcrypt-size "3.6 MB">
<!ENTITY libgcrypt-buildsize "131 MB (with tests)">
<!ENTITY libgcrypt-time "0.3 SBU (with documentation; add 0.4 SBU for tests)">
]>
<sect1 id="libgcrypt" xreflabel="libgcrypt-&libgcrypt-version;">
<?dbhtml filename="libgcrypt.html"?>
<title>libgcrypt-&libgcrypt-version;</title>
<indexterm zone="libgcrypt">
<primary sortas="a-libgcrypt">libgcrypt</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to libgcrypt</title>
<para>
The <application>libgcrypt</application> package contains a general
purpose crypto library based on the code used in
<application>GnuPG</application>. The library provides a high level
interface to cryptographic building blocks using an extendable and flexible
API.
</para>
&lfs120_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&libgcrypt-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&libgcrypt-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &libgcrypt-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &libgcrypt-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &libgcrypt-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &libgcrypt-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">libgcrypt Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="libgpg-error"/>
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<!-- <xref linkend="libcap-pam"/> -->
<xref linkend="texlive"/> (or <xref linkend="tl-installer"/>)
</para>
</sect2>
<sect2 role="installation">
<title>Installation of libgcrypt</title>
<para>
Install <application>libgcrypt</application> by running the
following commands:
</para>
<screen><userinput>./configure --prefix=/usr &amp;&amp;
make &amp;&amp;
make -C doc html &amp;&amp;
makeinfo --html --no-split -o doc/gcrypt_nochunks.html doc/gcrypt.texi &amp;&amp;
makeinfo --plaintext -o doc/gcrypt.txt doc/gcrypt.texi</userinput></screen>
<!-- The commands for building the pdf and ps formats are broken.
<para>
The above commands build the documentation in html and plaintext
formats. If you wish to build alternate formats of the documentation, you
need <xref linkend="texlive"/> (or <xref linkend="tl-installer"/>). Issue
the following command:
</para>
<screen remap="doc"><userinput>make -C doc pdf</userinput></screen>
-->
<para>
To test the results, issue: <command>make check</command>.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make install &amp;&amp;
install -v -dm755 /usr/share/doc/libgcrypt-&libgcrypt-version; &amp;&amp;
install -v -m644 README doc/{README.apichanges,fips*,libgcrypt*} \
/usr/share/doc/libgcrypt-&libgcrypt-version; &amp;&amp;
install -v -dm755 /usr/share/doc/libgcrypt-&libgcrypt-version;/html &amp;&amp;
install -v -m644 doc/gcrypt.html/* \
/usr/share/doc/libgcrypt-&libgcrypt-version;/html &amp;&amp;
install -v -m644 doc/gcrypt_nochunks.html \
/usr/share/doc/libgcrypt-&libgcrypt-version; &amp;&amp;
install -v -m644 doc/gcrypt.{txt,texi} \
/usr/share/doc/libgcrypt-&libgcrypt-version;</userinput></screen>
<!--
<para>
If you built alternate formats of the documentation, install them by
issuing the following command as the
<systemitem class="username">root</systemitem> user:
</para>
<screen role="root"
remap="doc"><userinput>install -v -m644 doc/gcrypt.{pdf,ps,dvi} \
/usr/share/doc/libgcrypt-&libgcrypt-version;</userinput></screen>
-->
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<option>--with-capabilities</option>: This option enables libcap2 support.
Note that this breaks <xref linkend="cryptsetup"/>
</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Library</segtitle>
<segtitle>Installed Directory</segtitle>
<seglistitem>
<seg>
dumpsexp, hmac256, libgcrypt-config, and mpicalc
</seg>
<seg>
libgcrypt.so
</seg>
<seg>
/usr/share/doc/libgcrypt-&libgcrypt-version;
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="dumpsexp">
<term><command>dumpsexp</command></term>
<listitem>
<para>
is a debug tool for S-expressions
</para>
<indexterm zone="libgcrypt dumpsexp">
<primary sortas="b-dumpsexp">dumpsexp</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="hmac256">
<term><command>hmac256</command></term>
<listitem>
<para>
is a standalone HMAC-SHA-256 implementation used to compute
an HMAC-SHA-256 authentication code
</para>
<indexterm zone="libgcrypt hmac256">
<primary sortas="b-hmac256">hmac256</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libgcrypt-config">
<term><command>libgcrypt-config</command></term>
<listitem>
<para>
determines the compile and linker flags that should be used to
compile and link programs that use <filename class="libraryfile">libgcrypt</filename>
</para>
<indexterm zone="libgcrypt libgcrypt-config">
<primary sortas="b-libgcrypt-config">libgcrypt-config</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="mpicalc">
<term><command>mpicalc</command></term>
<listitem>
<para>
is a RPN (Reverse Polish Notation) calculator
</para>
<indexterm zone="libgcrypt mpicalc">
<primary sortas="b-mpicalc">mpicalc</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libgcrypt-lib">
<term><filename class="libraryfile">libgcrypt.so</filename></term>
<listitem>
<para>
contains the cryptographic API functions
</para>
<indexterm zone="libgcrypt libgcrypt-lib">
<primary sortas="c-libgcrypt">libgcrypt.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>