source: general/graphlib/harfbuzz.xml@ 92e3023

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 92e3023 was 92e3023, checked in by Douglas R. Reno <renodr@…>, 3 years ago

Update to xkbcomp-1.4.5 (Xorg Application)
Update to harfbuzz-2.8.0
Update to nspr-4.30

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

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