source: general/genlib/brotli.xml@ 8965351

10.1 11.0 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 8965351 was 8965351, checked in by Ken Moffat <ken@…>, 3 years ago

asymptote-2.68,
dvisvgm-2.10.1

Also note that the main tests in brotli are ok,
only the python tests are missing test data.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@23937 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 7.2 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 brotli-download-http "https://github.com/google/brotli/archive/v&brotli-version;/brotli-&brotli-version;.tar.gz">
8 <!ENTITY brotli-download-ftp " ">
9 <!ENTITY brotli-md5sum "c2274f0c7af8470ad514637c35bcee7d">
10 <!ENTITY brotli-size "476 KB">
11 <!ENTITY brotli-buildsize "24 MB (with python3 bindings)">
12 <!-- The python tests for this package are broken. The tarball is missing a lot of test files -->
13 <!ENTITY brotli-time "0.4 SBU (with python3 bindings)">
14]>
15
16<sect1 id="brotli" xreflabel="Brotli-&brotli-version;">
17 <?dbhtml filename="brotli.html"?>
18
19 <sect1info>
20 <othername>$LastChangedBy$</othername>
21 <date>$Date$</date>
22 </sect1info>
23
24 <title>brotli-&brotli-version;</title>
25
26 <indexterm zone="brotli">
27 <primary sortas="a-brotli">Brotli</primary>
28 </indexterm>
29
30 <sect2 role="package">
31 <title>Introduction to Brotli</title>
32
33 <para>
34 <application>Brotli</application> provides a general-purpose lossless
35 compression algorithm that compresses data using a combination of a
36 modern variant of the LZ77 algorithm, Huffman coding and 2nd order
37 context modeling. Its libraries are particularly used for WOFF2 fonts
38 on webpages.
39 </para>
40
41 &lfs10_checked;
42
43 <bridgehead renderas="sect3">Package Information</bridgehead>
44 <itemizedlist spacing="compact">
45 <listitem>
46 <para>
47 Download (HTTP): <ulink url="&brotli-download-http;"/>
48 </para>
49 </listitem>
50 <listitem>
51 <para>
52 Download (FTP): <ulink url="&brotli-download-ftp;"/>
53 </para>
54 </listitem>
55 <listitem>
56 <para>
57 Download MD5 sum: &brotli-md5sum;
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Download size: &brotli-size;
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Estimated disk space required: &brotli-buildsize;
68 </para>
69 </listitem>
70 <listitem>
71 <para>
72 Estimated build time: &brotli-time;
73 </para>
74 </listitem>
75 </itemizedlist>
76
77 <bridgehead renderas="sect3">Brotli Dependencies</bridgehead>
78
79 <bridgehead renderas="sect4">Required</bridgehead>
80 <para role="required">
81 <xref linkend="cmake"/>
82 </para>
83
84 <!-- Brotli doesn't have any lua bindings, at least not with 1.0.7. -->
85 <bridgehead renderas="sect4">Optional</bridgehead>
86 <para role="optional">
87 <!--<xref linkend="lua"/> (to create Lua bindings) and -->
88 <xref linkend="python2"/> (to create python2 bindings)
89 </para>
90
91 <para condition="html" role="usernotes">
92 User Notes: <ulink url="&blfs-wiki;/brotli"/>
93 </para>
94 </sect2>
95
96
97 <sect2 role="installation">
98 <title>Installation of Brotli</title>
99
100 <para>
101 At first, fix an issue in pkg-config files:
102 </para>
103
104<screen><userinput>sed -i 's@-R..libdir.@@' scripts/*.pc.in</userinput></screen>
105
106 <para>
107 Install <application>brotli</application> by running the following
108 commands:
109 </para>
110
111<screen><userinput>mkdir out &amp;&amp;
112cd out &amp;&amp;
113
114cmake -DCMAKE_INSTALL_PREFIX=/usr \
115 -DCMAKE_BUILD_TYPE=Release \
116 .. &amp;&amp;
117make</userinput></screen>
118
119
120 <para>
121 To test the results, issue: <command>make test</command>
122 </para>
123
124 <para>
125 If desired, either or both sets of python bindings can be built and
126 installed without any conflicts. If you need the
127 <application>Python2</application> bindings, add or substitute
128 <command>python2</command> for <command>python3</command> in the
129 following instructions:
130 </para>
131
132<screen><userinput>pushd .. &amp;&amp;
133python3 setup.py build &amp;&amp;
134popd</userinput></screen>
135<!-- These are broken
136-->
137 <para>
138 The python tests are missing most of the necessary testdata files and
139 therefore 240 of 311 tests fail.
140 If you nevertheless wish to test the bindings, go back to the top-level directory and
141 issue: <command>python3 setup.py test</command>.
142 </para>
143 <para>
144 Now, as the <systemitem class="username">root</systemitem> user:
145 </para>
146
147<screen role="root"><userinput>make install &amp;&amp;
148cd ..</userinput></screen>
149
150 <para>
151 If you have built either or both sets of <application>python</application>
152 bindings, install them as the <systemitem class="username">root</systemitem>
153 user (as before, use the appropriate version(s) of
154 <application>python</application>:
155 </para>
156
157<!-- EDITORS: for DESTDIR style installs use
158python3 setup.py install \-\-root /some/where -->
159<screen role="root"><userinput>python3 setup.py install --optimize=1</userinput></screen>
160
161 </sect2>
162
163 <sect2 role="content">
164 <title>Contents</title>
165
166 <segmentedlist>
167 <segtitle>Installed Programs</segtitle>
168 <segtitle>Installed Libraries</segtitle>
169 <segtitle>Installed Directory</segtitle>
170
171 <seglistitem>
172 <seg>
173 brotli
174 </seg>
175 <seg>
176 libbrotlicommon{-static.a,.so}, libbrotlidec{,-static,.so} and libbrotlienc{,-static,.so}
177 </seg>
178 <seg>
179 /usr/include/brotli
180 </seg>
181 </seglistitem>
182 </segmentedlist>
183
184 <variablelist>
185 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
186 <?dbfo list-presentation="list"?>
187 <?dbhtml list-presentation="table"?>
188
189 <varlistentry id="brotli-prog">
190 <term><command>brotli</command></term>
191 <listitem>
192 <para>
193 can compress or decompress files, or test the integrity of
194 compressed files.
195 </para>
196 <indexterm zone="brotli brotli-prog">
197 <primary sortas="b-brotli">brotli</primary>
198 </indexterm>
199 </listitem>
200 </varlistentry>
201
202 <varlistentry id="libbrotlicommon">
203 <term><filename class="libraryfile">libbrotlicommon{-static.a,.so}</filename></term>
204 <listitem>
205 <para>
206 is the Brotli common dictionary library.
207 </para>
208 <indexterm zone="brotli libbrotlicommon">
209 <primary sortas="c-libbrotlicommon">libbrotlicommon{,-static.a,.so}</primary>
210 </indexterm>
211 </listitem>
212 </varlistentry>
213
214 <varlistentry id="libbrotlidec">
215 <term><filename class="libraryfile">libbrotlidec{-static.a,.so}</filename></term>
216 <listitem>
217 <para>
218 is the Brotli decoder library.
219 </para>
220 <indexterm zone="brotli libbrotlidec">
221 <primary sortas="c-libbrotlidec">libbrotlidec{,-static.a,.so}</primary>
222 </indexterm>
223 </listitem>
224 </varlistentry>
225
226 <varlistentry id="libbrotlienc">
227 <term><filename class="libraryfile">libbrotlienc{-static.a,.so}</filename></term>
228 <listitem>
229 <para>
230 is the Brotli common encoder library.
231 </para>
232 <indexterm zone="brotli libbrotlienc">
233 <primary sortas="c-libbrotlienc">libbrotlienc{,-static.a,.so}</primary>
234 </indexterm>
235 </listitem>
236 </varlistentry>
237 </variablelist>
238
239 </sect2>
240</sect1>
Note: See TracBrowser for help on using the repository browser.