source: general/graphlib/harfbuzz.xml@ 4b67e8b

12.1 ken/TL2024 ken/tuningfonts lazarus plabs/newcss python3.11 rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18
Last change on this file since 4b67e8b was f1baf8d6, checked in by Bruce Dubbs <bdubbs@…>, 8 months ago

Update to harfbuzz-8.2.2.

  • Property mode set to 100644
File size: 10.9 KB
RevLine 
[32e13498]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
[0d7900a]7 <!ENTITY harfbuzz-download-http
[d2f49a6]8 "https://github.com/harfbuzz/harfbuzz/releases/download/&harfbuzz-version;/harfbuzz-&harfbuzz-version;.tar.xz">
[32e13498]9 <!ENTITY harfbuzz-download-ftp " ">
[f1baf8d6]10 <!ENTITY harfbuzz-md5sum "a9bdd356798cf1ea68794576429442d4">
[b3a11f45]11 <!ENTITY harfbuzz-size "18 MB">
[f1baf8d6]12 <!ENTITY harfbuzz-buildsize "152 MB (with tests)">
13 <!ENTITY harfbuzz-time "0.8 SBU (Using parallelism=4; with tests)">
[32e13498]14]>
15
[8374093]16<sect1 id="harfbuzz" xreflabel="HarfBuzz-&harfbuzz-version;">
[32e13498]17 <?dbhtml filename="harfbuzz.html"?>
18
19
[8374093]20 <title>HarfBuzz-&harfbuzz-version;</title>
[32e13498]21
22 <indexterm zone="harfbuzz">
[8374093]23 <primary sortas="a-HarfBuzz">HarfBuzz</primary>
[32e13498]24 </indexterm>
25
26 <sect2 role="package">
27 <title>Introduction to Harfbuzz</title>
28
29 <para>
[8374093]30 The <application>HarfBuzz</application> package contains an OpenType text
[32e13498]31 shaping engine.
32 </para>
33
[a9779b9]34 &lfs120_checked;
[32e13498]35
36 <bridgehead renderas="sect3">Package Information</bridgehead>
37 <itemizedlist spacing="compact">
38 <listitem>
39 <para>
40 Download (HTTP): <ulink url="&harfbuzz-download-http;"/>
41 </para>
42 </listitem>
43 <listitem>
44 <para>
45 Download (FTP): <ulink url="&harfbuzz-download-ftp;"/>
46 </para>
47 </listitem>
48 <listitem>
49 <para>
50 Download MD5 sum: &harfbuzz-md5sum;
51 </para>
52 </listitem>
53 <listitem>
54 <para>
55 Download size: &harfbuzz-size;
56 </para>
57 </listitem>
58 <listitem>
59 <para>
60 Estimated disk space required: &harfbuzz-buildsize;
61 </para>
62 </listitem>
63 <listitem>
64 <para>
65 Estimated build time: &harfbuzz-time;
66 </para>
67 </listitem>
68 </itemizedlist>
69
[8374093]70 <bridgehead renderas="sect3">HarfBuzz Dependencies</bridgehead>
[32e13498]71
72 <bridgehead renderas="sect4">Recommended</bridgehead>
73 <para role="recommended">
[39291c7]74 <xref linkend="gobject-introspection"/> (required if building GNOME),
[dccc4d4]75 <xref linkend="glib2"/> (required for Pango),
[f62b93bb]76 <xref role="first" linkend="graphite2"/> (required for building
[8558044]77 <xref role="nodep" linkend="texlive"/> or
[f62b93bb]78 <xref role="nodep" linkend="libreoffice"/> with system harfbuzz),
[572553b]79 <xref linkend="icu"/>, and
[13df334]80 <xref role="first" linkend="freetype2"/>
[572553b]81 (after <xref role="nodep" linkend="harfbuzz"/> is installed, reinstall
82 <xref role="nodep" linkend="freetype2"/>)
[32e13498]83 </para>
84
85 <bridgehead renderas="sect4">Optional</bridgehead>
86 <para role="optional">
[a0484a14]87 <xref linkend="cairo"/> (circular: build cairo and all its recommended
88 dependencies, including harfbuzz, first, then rebuild harfbuzz if the
89 cairo backend is needed),
[b9f03437]90 <xref linkend="git"/>,
[92e3023]91 <xref linkend="gtk-doc"/>,
[1ea4deb]92 <ulink url="https://pypi.org/project/FontTools/">FontTools</ulink>
[be05688]93 (Python 3 module, for the test suite),
94 <ulink url="https://www.colm.net/open-source/ragel/">ragel</ulink>,
95 and <ulink url="https://github.com/bytecodealliance/wasm-micro-runtime">wasm-micro-runtime</ulink>
[32e13498]96 </para>
97
98 <warning>
99 <para>
100 Recommended dependencies are not strictly required to build
101 the package. However, you might not get expected results at
102 runtime if you don't install them. Please do not report bugs
103 with this package if you <emphasis>have not</emphasis>
104 installed the recommended dependencies.
105 </para>
106 </warning>
107
108 </sect2>
109
110 <sect2 role="installation">
[8374093]111 <title>Installation of HarfBuzz</title>
[32e13498]112
113 <para>
[8374093]114 Install <application>HarfBuzz</application> by running the following
[32e13498]115 commands:
116 </para>
117
[9b8c04ed]118<screen><userinput>mkdir build &amp;&amp;
119cd build &amp;&amp;
120
[91318eb]121meson setup .. \
122 --prefix=/usr \
123 --buildtype=release \
124 -Dgraphite2=enabled &amp;&amp;
[9b8c04ed]125ninja</userinput></screen>
[32e13498]126
127 <para>
[9b8c04ed]128 To test the results, issue: <command>ninja test</command>.
[9db393f1]129 </para>
[32e13498]130
131 <para>
132 Now, as the <systemitem class="username">root</systemitem> user:
133 </para>
134
[9b8c04ed]135<screen role="root"><userinput>ninja install</userinput></screen>
[32e13498]136 </sect2>
137
[1e4ca8bb]138 <sect2 role="commands">
139 <title>Command Explanations</title>
140
[20f070d8]141 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
142 href="../../xincludes/meson-buildtype-release.xml"/>
143
[1e4ca8bb]144 <para>
[b1ff43b]145 <parameter>-Dgraphite2=enabled</parameter>: This switch enables
[8b8a6c4]146 <application>Graphite2</application> support, which is required for
[6121fe5]147 building <xref linkend="texlive"/> or <xref linkend="libreoffice"/>
148 with system harfbuzz.
[1e4ca8bb]149 </para>
[b1ff43b]150<!--
[9b8c04ed]151 <para>
[5c14fb68]152 <parameter>-Dbenchmark=disabled</parameter>: This switch disables
153 downloading and building the <application>google-benchmark</application>
154 subproject, which requires <xref linkend="git"/>, and is of no
[2c87187]155 use for non developers.
[9b8c04ed]156 </para>
[b1ff43b]157-->
[ee98f114]158 <para>
[1eb2916]159 <option>-Ddocs=disabled</option>: If <xref linkend="gtk-doc"/> is
160 installed, the documentation is built and installed. This switch
161 prevents that.
[ee98f114]162 </para>
163
[1e4ca8bb]164 </sect2>
165
[32e13498]166 <sect2 role="content">
167 <title>Contents</title>
168
169 <segmentedlist>
170 <segtitle>Installed Programs</segtitle>
[f82ac3f]171 <segtitle>Installed Libraries</segtitle>
172 <segtitle>Installed Directories</segtitle>
[32e13498]173
174 <seglistitem>
175 <seg>
[429b408]176 hb-info,
177 hb-ot-shape-closure,
178 hb-shape,
179 hb-subset, and
180 hb-view (only if Cairo is installed)
[32e13498]181 </seg>
182 <seg>
[429b408]183 libharfbuzz.so,
184 libharfbuzz-cairo.so (only if Cairo is installed),
185 libharfbuzz-gobject.so,
186 libharfbuzz-icu.so, and
[41e68a2d]187 libharfbuzz-subset.so
[32e13498]188 </seg>
189 <seg>
[221df934]190 /usr/include/harbuzz,
191 /usr/lib/cmake/harfbuzz, and
192 /usr/share/gtk-doc/html/harfbuzz (optional)
[32e13498]193 </seg>
194 </seglistitem>
195 </segmentedlist>
196
197 <variablelist>
198 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
199 <?dbfo list-presentation="list"?>
200 <?dbhtml list-presentation="table"?>
[c7d631c]201
[429b408]202 <varlistentry id="hb-info">
203 <term><command>hb-info</command></term>
204 <listitem>
205 <para>
206 is used for gathering information about fonts installed on the
207 system
208 </para>
209 <indexterm zone="harfbuzz hb-info">
210 <primary sortas="b-hb-info">hb-info</primary>
211 </indexterm>
212 </listitem>
213 </varlistentry>
214
[0d12bbe]215 <varlistentry id="hb-ot-shape-closure">
216 <term><command>hb-ot-shape-closure</command></term>
217 <listitem>
218 <para>
219 gives the set of characters contained in a string, represented as
220 single characters and/or single character names. Example:
[c7d631c]221 <command>hb-ot-shape-closure
[4c24eb0a]222 /usr/share/fonts/dejavu/DejaVuSans.ttf "Hello World."</command>
[0d12bbe]223 </para>
224 <indexterm zone="harfbuzz hb-ot-shape-closure">
225 <primary sortas="b-hb-ot-shape-closure">hb-ot-shape-closure</primary>
226 </indexterm>
227 </listitem>
228 </varlistentry>
[32e13498]229
230 <varlistentry id="hb-shape">
231 <term><command>hb-shape</command></term>
232 <listitem>
233 <para>
[4c24eb0a]234 is used for the conversion of text strings into positioned glyphs
[32e13498]235 </para>
236 <indexterm zone="harfbuzz hb-shape">
237 <primary sortas="b-hb-shape">hb-shape</primary>
238 </indexterm>
239 </listitem>
240 </varlistentry>
[18f18c2]241
242 <varlistentry id="hb-subset">
243 <term><command>hb-subset</command></term>
244 <listitem>
245 <para>
[4c24eb0a]246 is used to create subsets of fonts, and display text using them
[18f18c2]247 </para>
248 <indexterm zone="harfbuzz hb-subset">
249 <primary sortas="b-hb-subset">hb-subset</primary>
250 </indexterm>
251 </listitem>
252 </varlistentry>
[c7d631c]253
[0d12bbe]254 <varlistentry id="hb-view">
255 <term><command>hb-view</command></term>
256 <listitem>
257 <para>
[f1ae52ff]258 displays a graphical view of a string shape using a
[8558044]259 particular font as a set of glyphs. The output format is
260 automatically defined by the file extension, the supported ones
[f1ae52ff]261 being ansi/png/svg/pdf/ps/eps. For example:
[c7d631c]262 <command>hb-view --output-file=hello.png
[4c24eb0a]263 /usr/share/fonts/dejavu/DejaVuSans.ttf "Hello World."</command>
[0d12bbe]264 </para>
265 <indexterm zone="harfbuzz hb-view">
266 <primary sortas="b-hb-view">hb-view</primary>
267 </indexterm>
268 </listitem>
269 </varlistentry>
[32e13498]270
271 <varlistentry id="libharfbuzz">
272 <term><filename class="libraryfile">libharfbuzz.so</filename></term>
273 <listitem>
274 <para>
[4c24eb0a]275 is the HarfBuzz text shaping library
[32e13498]276 </para>
277 <indexterm zone="harfbuzz libharfbuzz">
278 <primary sortas="c-libharfbuzz">libharfbuzz.so</primary>
279 </indexterm>
280 </listitem>
281 </varlistentry>
[0d7900a]282
[429b408]283 <varlistentry id="libharfbuzz-cairo">
284 <term><filename class="libraryfile">libharfbuzz-cairo.so</filename></term>
285 <listitem>
286 <para>
287 provides Cairo integration for the Harfbuzz text shaping library
288 </para>
289 <indexterm zone="harfbuzz libharfbuzz-cairo">
290 <primary sortas="c-libharfbuzz-cairo">libharfbuzz-cairo</primary>
291 </indexterm>
292 </listitem>
293 </varlistentry>
294
[8374093]295 <varlistentry id="libharfbuzz-gobject">
296 <term><filename class="libraryfile">libharfbuzz-gobject.so</filename></term>
297 <listitem>
298 <para>
[4c24eb0a]299 provides GObject integration for the HarfBuzz text shaping library
[8374093]300 </para>
301 <indexterm zone="harfbuzz libharfbuzz-gobject">
302 <primary sortas="c-libharfbuzz-gobject">libharfbuzz-gobject.so</primary>
303 </indexterm>
304 </listitem>
305 </varlistentry>
306
307 <varlistentry id="libharfbuzz-icu">
308 <term><filename class="libraryfile">libharfbuzz-icu.so</filename></term>
309 <listitem>
310 <para>
[4c24eb0a]311 provides ICU integration for the HarfBuzz text shaping library
[8374093]312 </para>
313 <indexterm zone="harfbuzz libharfbuzz-icu">
314 <primary sortas="c-libharfbuzz-icu">libharfbuzz-icu.so</primary>
315 </indexterm>
316 </listitem>
317 </varlistentry>
318
[429b408]319 <varlistentry id="libharfbuzz-subset">
320 <term><filename class="libraryfile">libharfbuzz-subset.so</filename></term>
321 <listitem>
322 <para>
323 provides API functions for performing subsetting operations on font
324 files
325 </para>
326 <indexterm zone="harfbuzz libharfbuzz-subset">
327 <primary sortas="c-libharfbuzz-subset">libharfbuzz-subset.so</primary>
328 </indexterm>
329 </listitem>
330 </varlistentry>
331
[32e13498]332 </variablelist>
[0d7900a]333
[32e13498]334 </sect2>
[0d7900a]335
[32e13498]336</sect1>
Note: See TracBrowser for help on using the repository browser.