glfs/general/genlib/qca.xml
Bruce Dubbs b60f1cebb0 Preliminry update to kf6-6.0.0.
This update replaces kf5.  In doing so there are several packages
in BLFS that are broken, notably the LXQt packages that reference
kf5 packages.

Trying to maintain kf5 and kf6 in the book is more effort than it
is worth.  For those that want the kf5 based elements, blfs-12.1
still works.

Several packages were updated to build with qt6 so they are not available
for packages that need the qt5 versions,  These include qca, polkit-qt, and
phonon.  A couple of packages that are no longer needed for kf6 are still
in the book: kuserfeedback and libdbusmenuqt.

Many filenames still need to be changed, e.g. kf5-frameworks.xml, as
well as xml defined identifiers.

Later when LXQt releases their qt6/kf6 based packages, then we will
do a scrub of all the book internals to make names consistent.
2024-03-04 18:38:49 -06:00

241 lines
6.6 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 qca-download-http "https://download.kde.org/stable/qca/&qca-version;/qca-&qca-version;.tar.xz">
<!ENTITY qca-download-ftp " ">
<!ENTITY qca-md5sum "4c6348286c170b3da24820c977565d75">
<!ENTITY qca-size "744 KB">
<!ENTITY qca-buildsize "42 MB">
<!ENTITY qca-time "0.5 SBU (using parallelism=4; add 0.1 SBU for tests)">
]>
<sect1 id="qca" xreflabel="qca-&qca-version;">
<?dbhtml filename="qca.html"?>
<title>Qca-&qca-version;</title>
<indexterm zone="qca">
<primary sortas="a-qca">qca</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to Qca</title>
<para>
<application>Qca</application> aims to provide a straightforward and
cross-platform crypto API, using <application>Qt</application> datatypes
and conventions. <application>Qca</application> separates the API from
the implementation, using plugins known as Providers.
</para>
&lfs121_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&qca-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&qca-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &qca-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &qca-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &qca-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &qca-time;
</para>
</listitem>
</itemizedlist>
<!--
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Required patch:
<ulink url="&patch-root;/qca-&qca-version;-openssl-1.patch"/>
</para>
</listitem>
</itemizedlist>
-->
<bridgehead renderas="sect3">Qca Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="make-ca"/>,
<xref linkend="cmake"/>,
<xref linkend="qt6"/>, and
<xref linkend="which"/>
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="Optional">
<xref linkend="cyrus-sasl"/>,
<xref linkend="gnupg2"/>,
<xref linkend="libgcrypt"/>,
<xref linkend="libgpg-error"/>,
<xref linkend="nss"/>,
<xref linkend="nspr"/>,
<xref linkend="p11-kit"/>,
<xref linkend="doxygen"/>,
<xref linkend="which"/>, and
<ulink url="https://botan.randombit.net/">Botan</ulink>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of Qca</title>
<para>
Fix the location of the CA certificates:
</para>
<screen><userinput>sed -i 's@cert.pem@certs/ca-bundle.crt@' CMakeLists.txt</userinput></screen>
<para>
Install <application>Qca</application> by running the following
commands:
</para>
<screen><userinput>mkdir build &amp;&amp;
cd build &amp;&amp;
cmake -DCMAKE_INSTALL_PREFIX=$QT6DIR \
-DCMAKE_BUILD_TYPE=Release \
-DQT6=ON \
-DQCA_MAN_INSTALL_DIR:PATH=/usr/share/man \
.. &amp;&amp;
make</userinput></screen>
<para>
To test the results, issue <command>make test</command>. <!--One test
using <xref linkend="gnupg2"/> fails without a correct passphrase. The
required passphrase does not seem to be published.-->
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make install</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<parameter>-DCMAKE_BUILD_TYPE=Release</parameter>: This switch is
used to apply a higher level of compiler optimizations.
</para>
<para>
<parameter>-DQT6=ON</parameter>:
Ensure the packages is built with <xref linkend="qt6"/>.
</para>
<para>
<parameter>-DQCA_MAN_INSTALL_DIR:PATH=/usr/share/man</parameter>:
Install the qca man page in the normal location.
</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>mozcerts-qt6 and qcatool-qt6</seg>
<seg>
libqca-qt6.so,
libqca-cyrus-sasl.so,
libqca-gcrypt.so,
libqca-gnupg.so,
libqca-logger.so,
libqca-nss.so,
libqca-ossl.so, and
libqca-softstore.so
</seg>
<seg>
&qt6-dir;/include/Qca-qt6,
&qt6-dir;/lib/cmake/Qca-qt6, and
&qt6-dir;/lib/qca-qt6
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="mozcerts">
<term><command>mozcerts-qt6</command></term>
<listitem>
<para>
is a command line tool for converting certdata.txt into
outfile.pem files
</para>
<indexterm zone="qca mozcerts">
<primary sortas="b-mozcerts">mozcerts-qt6</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="qcatool">
<term><command>qcatool-qt6</command></term>
<listitem>
<para>
is a command line tool for performing various cryptographic
operations with Qca
</para>
<indexterm zone="qca qcatool">
<primary sortas="b-qcatool">qcatool-qt6</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libqca">
<term><filename class="libraryfile">libqca-qt6.so</filename></term>
<listitem>
<para>
is the Qt Cryptography Architecture (Qca) library
</para>
<indexterm zone="qca libqca">
<primary sortas="c-libqca">libqca-qt6.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>