source: general/graphlib/libjxl.xml@ 3e71154

trunk
Last change on this file since 3e71154 was 1bb7583, checked in by Douglas R. Reno <renodr@…>, 5 days ago

libjxl: Add an optional dependency on asciidoc

asciidoc is required if you want to generate man pages

  • Property mode set to 100644
File size: 10.8 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
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 libjxl-download-http "https://github.com/libjxl/libjxl/archive/v&libjxl-version;/libjxl-&libjxl-version;.tar.gz">
8 <!ENTITY libjxl-md5sum "2b8433176a334480d21af02fd8bdc6fe">
9 <!ENTITY libjxl-size "1.8 MB">
10 <!ENTITY libjxl-buildsize "47 MB">
11 <!ENTITY libjxl-time "0.7 SBU (with parallelism=4)">
12
13]>
14
15<sect1 id="libjxl" xreflabel="libjxl-&libjxl-version;">
16 <?dbhtml filename="libjxl.html"?>
17
18 <title>libjxl-&libjxl-version;</title>
19
20 <indexterm zone="libjxl">
21 <primary sortas="a-libjxl">libjxl</primary>
22 </indexterm>
23
24 <sect2 role="package">
25 <title>Introduction to libjxl</title>
26
27 <para>
28 The <application>libjxl</application> package contains the reference
29 implementation of the JPEG XL image format.
30 </para>
31
32 &lfs122_checked;
33
34 <bridgehead renderas="sect3">Package Information</bridgehead>
35 <itemizedlist spacing="compact">
36 <listitem>
37 <para>
38 Download (HTTP): <ulink url="&libjxl-download-http;"/>
39 </para>
40 </listitem>
41 <listitem>
42 <para>
43 Download MD5 sum: &libjxl-md5sum;
44 </para>
45 </listitem>
46 <listitem>
47 <para>
48 Download size: &libjxl-size;
49 </para>
50 </listitem>
51 <listitem>
52 <para>
53 Estimated disk space required: &libjxl-buildsize;
54 </para>
55 </listitem>
56 <listitem>
57 <para>
58 Estimated build time: &libjxl-time;
59 </para>
60 </listitem>
61 </itemizedlist>
62
63 <bridgehead renderas="sect3">libjxl Dependencies</bridgehead>
64
65 <bridgehead renderas="sect4">Required</bridgehead>
66 <para role="required">
67 <xref linkend="brotli"/>,
68 <xref linkend="cmake"/>,
69 <xref linkend="giflib"/>,
70 <xref linkend="highway"/>,
71 <xref linkend="lcms2"/>,
72 <xref linkend="libjpeg"/>, and
73 <xref linkend="libpng"/>
74 </para>
75
76 <bridgehead renderas="sect4">Recommended</bridgehead>
77 <para role="recommended">
78 <xref linkend="gdk-pixbuf"/> (for the plugin)
79 </para>
80
81 <bridgehead renderas="sect4">Optional</bridgehead>
82 <para role="optional">
83 <xref linkend="asciidoc"/> (for man pages),
84 <xref linkend="doxygen"/> and <xref linkend="graphviz"/>
85 (for documentation),
86 <!--<xref linkend="gimp"/> (for the plugin),-->
87 <xref linkend="java"/> (for the JAR),
88 <xref linkend="libavif"/>,
89 <xref linkend="libwebp"/>,
90 <ulink url="https://github.com/google/googletest">gtest</ulink>,
91 <ulink url="https://www.openexr.com/">OpenEXR</ulink>,
92 <ulink url="https://github.com/webmproject/sjpeg">sjpeg</ulink>, and
93 <ulink url="https://skia.googlesource.com/skcms/">skcms</ulink>
94 </para>
95
96 </sect2>
97
98 <sect2 role="installation">
99 <title>Installation of libjxl</title>
100
101 <para>
102 Install <application>libjxl</application> by running the following
103 commands:
104 </para>
105
106<screen><userinput>mkdir build &amp;&amp;
107cd build &amp;&amp;
108
109cmake -D CMAKE_INSTALL_PREFIX=/usr \
110 -D CMAKE_BUILD_TYPE=Release \
111 -D BUILD_TESTING=OFF \
112 -D BUILD_SHARED_LIBS=ON \
113 -D JPEGXL_ENABLE_SKCMS=OFF \
114 -D JPEGXL_ENABLE_SJPEG=OFF \
115 -D JPEGXL_ENABLE_PLUGINS=ON \
116 -D JPEGXL_INSTALL_JARDIR=/usr/share/java \
117 -G Ninja .. &amp;&amp;
118ninja</userinput></screen>
119
120 <para>
121 This package does come with a test suite, but it requires
122 <ulink url="https://github.com/google/googletest">gtest</ulink>, which
123 is not in BLFS.
124 </para>
125
126 <para>
127 Now, as the &root; user:
128 </para>
129
130<screen role="root"><userinput>ninja install &amp;&amp;
131gdk-pixbuf-query-loaders --update-cache</userinput></screen>
132
133 </sect2>
134
135 <sect2 role="commands">
136 <title>Command Explanations</title>
137
138 <para>
139 <command>gdk-pixbuf-query-loaders --update-cache</command>: This command
140 regenerates the <application>GDK Pixbuf</application> loader cache so
141 that it is aware of the JPEG-XL loader.
142 </para>
143
144 <para>
145 <parameter>-D BUILD_TESTING=OFF</parameter>: This parameter disables the
146 tests because they require
147 <ulink url="https://github.com/google/googletest">gtest</ulink>, which
148 is not in BLFS. If you wish to run the tests and have
149 <ulink url="https://github.com/google/googletest">gtest</ulink> installed,
150 remove this parameter.
151 </para>
152
153 <para>
154 <parameter>-D BUILD_SHARED_LIBS=ON</parameter>: This parameter enables
155 building shared versions of the libraries instead of static ones.
156 </para>
157
158 <para>
159 <parameter>-D JPEGXL_ENABLE_SKCMS=OFF</parameter>: This parameter disables
160 building support for Skia's <application>skcms</application> since it is
161 not necessary for BLFS purposes and requires
162 <ulink url="https://skia.googlesource.com/skcms/">skcms</ulink>.
163 </para>
164
165 <para>
166 <parameter>-D JPEGXL_ENABLE_SJPEG=OFF</parameter>: This parameter disables
167 support for SimpleJPEG since it is not necessary for BLFS purposes and
168 requires <ulink url="https://github.com/webmproject/sjpeg">sjpeg</ulink>.
169 </para>
170
171 <para>
172 <parameter>-D JPEGXL_ENABLE_PLUGINS=ON</parameter>: This parameter enables
173 Plugin support, which creates plugins for <!--<xref linkend="gimp"/> and-->
174 <xref linkend="gdk-pixbuf"/> if the package is installed.
175 </para>
176
177 <para>
178 <parameter>-D JPEGXL_INSTALL_JARDIR=/usr/share/java</parameter>: This
179 parameter places the JAR file for JPEG XL support in the correct
180 directory if <xref linkend="java"/> is installed.
181 </para>
182
183 </sect2>
184
185 <sect2 role="content">
186 <title>Contents</title>
187
188 <segmentedlist>
189 <segtitle>Installed Programs</segtitle>
190 <segtitle>Installed Libraries</segtitle>
191 <segtitle>Installed Directories</segtitle>
192
193 <seglistitem>
194 <seg>
195 benchmark_xl,
196 cjxl,
197 djxl, and
198 jxlinfo
199 </seg>
200 <seg>
201 libjxl.so,
202 libjxl_cms.so,
203 libjxl_extras_codec.so,
204 libjxl_jni.so,
205 libjxl_threads.so, and
206 libpixbufloader-jxl.so (in /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders)
207 </seg>
208 <seg>
209 /usr/include/jxl
210 </seg>
211 </seglistitem>
212 </segmentedlist>
213
214 <variablelist>
215 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
216 <?dbfo list-presentation="list"?>
217 <?dbhtml list-presentation="table"?>
218
219 <varlistentry id="benchmark_xl">
220 <term><command>benchmark_xl</command></term>
221 <listitem>
222 <para>
223 runs performance benchmarks against libjxl
224 </para>
225 <indexterm zone="libjxl benchmark_xl">
226 <primary sortas="b-benchmark_xl">benchmark_xl</primary>
227 </indexterm>
228 </listitem>
229 </varlistentry>
230
231 <varlistentry id="cjxl">
232 <term><command>cjxl</command></term>
233 <listitem>
234 <para>
235 compresses images into JPEG XL format
236 </para>
237 <indexterm zone="libjxl cjxl">
238 <primary sortas="b-cjxl">cjxl</primary>
239 </indexterm>
240 </listitem>
241 </varlistentry>
242
243 <varlistentry id="djxl">
244 <term><command>djxl</command></term>
245 <listitem>
246 <para>
247 decompresses images from JPEG XL format into other formats
248 </para>
249 <indexterm zone="libjxl djxl">
250 <primary sortas="b-djxl">djxl</primary>
251 </indexterm>
252 </listitem>
253 </varlistentry>
254
255 <varlistentry id="jxlinfo">
256 <term><command>jxlinfo</command></term>
257 <listitem>
258 <para>
259 displays information about JPEG XL images
260 </para>
261 <indexterm zone="libjxl jxlinfo">
262 <primary sortas="b-jxlinfo">jxlinfo</primary>
263 </indexterm>
264 </listitem>
265 </varlistentry>
266
267 <varlistentry id="libjxl-lib">
268 <term><filename class="libraryfile">libjxl.so</filename></term>
269 <listitem>
270 <para>
271 contains the reference implementation of the JPEG XL standard
272 </para>
273 <indexterm zone="libjxl libjxl-lib">
274 <primary sortas="c-libjxl">libjxl.so</primary>
275 </indexterm>
276 </listitem>
277 </varlistentry>
278
279 <varlistentry id="libjxl_cms">
280 <term><filename class="libraryfile">libjxl_cms.so</filename></term>
281 <listitem>
282 <para>
283 contains support for Little CMS in libjxl
284 </para>
285 <indexterm zone="libjxl libjxl_cms">
286 <primary sortas="c-libjxl_cms">libjxl_cms.so</primary>
287 </indexterm>
288 </listitem>
289 </varlistentry>
290
291 <varlistentry id="libjxl_extras_codec">
292 <term><filename class="libraryfile">libjxl_extras_codec.so</filename></term>
293 <listitem>
294 <para>
295 contains additional codec support for JPEG XL images
296 </para>
297 <indexterm zone="libjxl libjxl_extras_codec">
298 <primary sortas="c-libjxl_extras_codec">libjxl_extras_codec.so</primary>
299 </indexterm>
300 </listitem>
301 </varlistentry>
302
303 <varlistentry id="libjxl_jni">
304 <term><filename class="libraryfile">libjxl_jni.so</filename></term>
305 <listitem>
306 <para>
307 contains a Java interface to support JPEG XL on systems where
308 <xref linkend="java"/> was installed at build time
309 </para>
310 <indexterm zone="libjxl libjxl_jni">
311 <primary sortas="c-libjxl_jni">libjxl_jni.so</primary>
312 </indexterm>
313 </listitem>
314 </varlistentry>
315
316 <varlistentry id="libjxl_threads">
317 <term><filename class="libraryfile">libjxl_threads.so</filename></term>
318 <listitem>
319 <para>
320 contains threading functions for JPEG XL
321 </para>
322 <indexterm zone="libjxl libjxl_threads">
323 <primary sortas="c-libjxl_threads">libjxl_threads.so</primary>
324 </indexterm>
325 </listitem>
326 </varlistentry>
327
328 <varlistentry id="libpixbufloader-jxl">
329 <term><filename class="libraryfile">libpixbufloader-jxl.so</filename></term>
330 <listitem>
331 <para>
332 contains a loader for gdk-pixbuf to allow it to load JPEG XL images
333 </para>
334 <indexterm zone="libjxl libpixbufloader-jxl">
335 <primary sortas="c-libpixbufloader-jxl">libpixbufloader-jxl.so</primary>
336 </indexterm>
337 </listitem>
338 </varlistentry>
339 </variablelist>
340 </sect2>
341</sect1>
Note: See TracBrowser for help on using the repository browser.