source: postlfs/security/gpgme.xml@ a171a54

11.1 11.2 11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since a171a54 was a171a54, checked in by Pierre Labastie <pierre.labastie@…>, 3 years ago

gpgme: fix the sed when python2.7 is installed

if python2.7 is installed, we cannot replace distutils with setuptools
everywhere, since setuptools is not known for python2.7. Use
a sed only for python3.10.

  • Property mode set to 100644
File size: 8.6 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY gpgme-download-http "&gnupg-http;/gpgme/gpgme-&gpgme-version;.tar.bz2">
8 <!ENTITY gpgme-download-ftp "&gnupg-ftp;/gpgme/gpgme-&gpgme-version;.tar.bz2">
9 <!ENTITY gpgme-download-ftp " ">
10 <!ENTITY gpgme-md5sum "e31b9e0efc5a2e1ec1bbed22e7a082a4">
11 <!ENTITY gpgme-size "1.6 MB">
12 <!ENTITY gpgme-buildsize "222 MB">
13 <!ENTITY gpgme-time "0.8 SBU (with parallelism=4; with all bindings, add 0.7 SBU for tests)">
14]>
15
16<sect1 id="gpgme" xreflabel="GPGME-&gpgme-version;">
17 <?dbhtml filename="gpgme.html"?>
18
19 <sect1info>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>GPGME-&gpgme-version;</title>
24
25 <indexterm zone="gpgme">
26 <primary sortas="a-GPGME">GPGME</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to GPGME</title>
31
32 <para>
33 The <application>GPGME</application> package is a C library
34 that allows cryptography support to be added to a
35 program. It is designed to make access to public key crypto
36 engines like <application>GnuPG</application> or GpgSM easier
37 for applications. <application>GPGME</application> provides
38 a high-level crypto API for encryption, decryption, signing,
39 signature verification and key management.
40 </para>
41
42 &lfs110a_checked;
43
44 <bridgehead renderas="sect3">Package Information</bridgehead>
45 <itemizedlist spacing="compact">
46 <listitem>
47 <para>
48 Download (HTTP): <ulink url="&gpgme-download-http;"/>
49 </para>
50 </listitem>
51 <listitem>
52 <para>
53 Download (FTP): <ulink url="&gpgme-download-ftp;"/>
54 </para>
55 </listitem>
56 <listitem>
57 <para>
58 Download MD5 sum: &gpgme-md5sum;
59 </para>
60 </listitem>
61 <listitem>
62 <para>
63 Download size: &gpgme-size;
64 </para>
65 </listitem>
66 <listitem>
67 <para>
68 Estimated disk space required: &gpgme-buildsize;
69 </para>
70 </listitem>
71 <listitem>
72 <para>
73 Estimated build time: &gpgme-time;
74 </para>
75 </listitem>
76 </itemizedlist>
77
78 <bridgehead renderas="sect3">GPGME Dependencies</bridgehead>
79
80 <bridgehead renderas="sect4">Required</bridgehead>
81 <para role="required">
82 <xref linkend="libassuan"/>
83 </para>
84
85 <bridgehead renderas="sect4">Optional</bridgehead>
86 <para role="optional">
87 <xref linkend="doxygen"/> and
88 <xref linkend="graphviz"/> (for API documentation),
89 <xref linkend="gnupg2"/> (required if Qt or SWIG are installed;
90 used during the testsuite),
91 <xref linkend="clisp"/>,<!--
92gpgme can still use python 2.7, but can use python3 as well,
93so do not advertise python2
94 <xref linkend="python2"/>,-->
95 <xref linkend="qt5"/>, and/or
96 <xref linkend="swig"/> (for language bindings)
97 </para>
98
99 <para condition="html" role="usernotes">User Notes:
100 <ulink url="&blfs-wiki;/gpgme"/>
101 </para>
102 </sect2>
103
104 <sect2 role="installation">
105 <title>Installation of GPGME</title>
106
107 <para>
108 First, fix an issue building the package with Glibc-2.34 or later:
109 </para>
110
111<screen><userinput remap="pre">sed 's/defined(__sun.*$/1/' -i src/posix-io.c</userinput></screen>
112
113 <para>
114 Next, fix an issue building with Python 3.10 installed:
115 </para>
116
117<screen><userinput remap="pre">sed -e 's/3\.9/3.10/' \
118 -e 's/:3/:4/' \
119 -e '23657 s/distutils"/setuptools"/' \
120 -i configure</userinput></screen>
121
122 <para>
123 Install <application>GPGME</application> by running the following
124 commands:
125 </para>
126
127<screen><userinput>./configure --prefix=/usr --disable-gpg-test &amp;&amp;
128make</userinput></screen>
129
130 <para>
131 To test the results, you should have <xref linkend="gnupg2"/> installed
132 and remove the <command>--disable-gpg-test</command> above. Issue:
133 <command>make -k check</command>.
134 </para>
135
136 <para>
137 Now, as the <systemitem class="username">root</systemitem> user:
138 </para>
139
140<screen role="root"><userinput>make install</userinput></screen>
141
142 </sect2>
143
144 <sect2 role="commands">
145 <title>Command Explanations</title>
146
147 <para>
148 <parameter>--disable-gpg-test</parameter>: if this parameter is not
149 passed to configure, the test programs are built during
150 <command>make</command> stage, which requires <xref linkend="gnupg2"/>.
151 This parameter is not needed if <xref linkend="gnupg2"/> is installed.
152 </para>
153
154 </sect2>
155
156 <sect2 role="content">
157 <title>Contents</title>
158
159 <segmentedlist>
160 <segtitle>Installed Program</segtitle>
161 <segtitle>Installed Libraries</segtitle>
162 <segtitle>Installed Directory</segtitle>
163
164 <seglistitem>
165 <seg>
166 gpgme-config, gpgme-json, and gpgme-tool
167 </seg>
168 <seg>
169 libgpgme, libgpgmepp.so, and libqgpgme.so
170 </seg>
171 <seg>
172 /usr/include/{gpgme++,qgpgme,QGpgME},
173 /usr/lib/cmake/{Gpgmepp,QGpgme}.
174 /usr/lib/python{2.7,3.9}/site-packages/gpg, and
175 /usr/share/common-lisp/source/gpgme
176 </seg>
177 </seglistitem>
178 </segmentedlist>
179
180 <variablelist>
181 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
182 <?dbfo list-presentation="list"?>
183 <?dbhtml list-presentation="table"?>
184
185 <varlistentry id="gpgme-config">
186 <term><command>gpgme-config</command></term>
187 <listitem>
188 <para>
189 is used to obtain <application>GPGME</application> compilation and
190 linking information
191 </para>
192 <indexterm zone="gpgme gpgme-config">
193 <primary sortas="b-gpgme-config">gpgme-config</primary>
194 </indexterm>
195 </listitem>
196 </varlistentry>
197
198 <varlistentry id="gpgme-json">
199 <term><command>gpgme-json</command></term>
200 <listitem>
201 <para>
202 outputs <application>GPGME</application> commands in JSON format
203 </para>
204 <indexterm zone="gpgme gpgme-json">
205 <primary sortas="b-gpgme-json">gpgme-json</primary>
206 </indexterm>
207 </listitem>
208 </varlistentry>
209
210 <varlistentry id="gpgme-tool">
211 <term><command>gpgme-tool</command></term>
212 <listitem>
213 <para>
214 is an assuan server exposing <application>GPGME</application>
215 operations, such as printing fingerprints and keyids with
216 keyservers
217 </para>
218 <indexterm zone="gpgme gpgme-tool">
219 <primary sortas="b-gpgme-tool">gpgme-tool</primary>
220 </indexterm>
221 </listitem>
222 </varlistentry>
223
224 <!-- As of 1.13.1, this library isn't present anymore.
225 <varlistentry id="libgpgme-pthread">
226 <term><filename class="libraryfile">libgpgme-pthread.so</filename></term>
227 <listitem>
228 <para>
229 contains the <application>GPGME</application> API functions for
230 applications using pthread.
231 </para>
232 <indexterm zone="gpgme libgpgme-pthread">
233 <primary sortas="c-libgpgme-pthread">libgpgme-pthread.so</primary>
234 </indexterm>
235 </listitem>
236 </varlistentry>
237 -->
238
239 <varlistentry id="libgpgme">
240 <term><filename class="libraryfile">libgpgme.so</filename></term>
241 <listitem>
242 <para>
243 contains the <application>GPGME</application> API functions
244 </para>
245 <indexterm zone="gpgme libgpgme">
246 <primary sortas="c-libgpgme">libgpgme.so</primary>
247 </indexterm>
248 </listitem>
249 </varlistentry>
250
251 <varlistentry id="libgpgmepp">
252 <term><filename class="libraryfile">libgpgmepp.so</filename></term>
253 <listitem>
254 <para>
255 contains the C++ <application>GPGME</application> API functions
256 </para>
257 <indexterm zone="gpgme libgpgmepp">
258 <primary sortas="c-libgpgmepp">libgpgmepp.so</primary>
259 </indexterm>
260 </listitem>
261 </varlistentry>
262
263 <varlistentry id="libqgpgme">
264 <term><filename class="libraryfile">libqgpgme.so</filename></term>
265 <listitem>
266 <para>
267 contains API functions for handling GPG operations in
268 <application>Qt</application> applications
269 </para>
270 <indexterm zone="gpgme libqgpgme">
271 <primary sortas="c-libqgpgme">libqgpgme.so</primary>
272 </indexterm>
273 </listitem>
274 </varlistentry>
275
276 </variablelist>
277
278 </sect2>
279
280</sect1>
Note: See TracBrowser for help on using the repository browser.