source: general/graphlib/freetype2.xml@ b6ba207

trunk
Last change on this file since b6ba207 was 7bec6f23, checked in by Bruce Dubbs <bdubbs@…>, 2 months ago

Clarify circular dependency between harfbuzz and freetype

  • Property mode set to 100644
File size: 7.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 freetype2-download-http "&sourceforge-dl;/freetype/freetype-&freetype2-version;.tar.xz">
8 <!ENTITY freetype2-download-ftp " ">
9 <!ENTITY freetype2-md5sum "1f625f0a913c449551b1e3790a1817d7">
10 <!ENTITY freetype2-size "2.4 MB">
11 <!ENTITY freetype2-buildsize "33 MB (with additional documentation)">
12 <!ENTITY freetype2-time "0.2 SBU (with additional documentation)">
13
14 <!ENTITY freetype2-doc-version "&freetype2-version;">
15 <!ENTITY freetype2-doc-download-http "&sourceforge-dl;/freetype/freetype-doc-&freetype2-doc-version;.tar.xz">
16 <!ENTITY freetype2-doc-download-ftp " ">
17 <!ENTITY freetype2-doc-md5sum "e6466f08934ebf2d7f711b0464d7a6cf">
18 <!ENTITY freetype2-doc-size "2.1 MB">
19]>
20
21<sect1 id="freetype2" xreflabel="FreeType-&freetype2-version;">
22 <?dbhtml filename="freetype2.html"?>
23
24
25 <title>FreeType-&freetype2-version;</title>
26
27 <indexterm zone="freetype2">
28 <primary sortas="a-FreeType">FreeType</primary>
29 </indexterm>
30
31 <sect2 role="package">
32 <title>Introduction to FreeType2</title>
33
34 <para>
35 The <application>FreeType2</application> package contains
36 a library which allows applications to properly render
37 <application>TrueType</application> fonts.
38 </para>
39
40 &lfs121_checked;
41
42 <bridgehead renderas="sect3">Package Information</bridgehead>
43 <itemizedlist spacing="compact">
44 <listitem>
45 <para>
46 Download (HTTP): <ulink url="&freetype2-download-http;"/>
47 </para>
48 </listitem>
49 <listitem>
50 <para>
51 Download (FTP): <ulink url="&freetype2-download-ftp;"/>
52 </para>
53 </listitem>
54 <listitem>
55 <para>
56 Download MD5 sum: &freetype2-md5sum;
57 </para>
58 </listitem>
59 <listitem>
60 <para>
61 Download size: &freetype2-size;
62 </para>
63 </listitem>
64 <listitem>
65 <para>
66 Estimated disk space required: &freetype2-buildsize;
67 </para>
68 </listitem>
69 <listitem>
70 <para>
71 Estimated build time: &freetype2-time;
72 </para>
73 </listitem>
74 </itemizedlist>
75
76 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
77 <itemizedlist spacing="compact">
78 <title>Additional Documentation</title>
79 <listitem>
80 <para>
81 Download (HTTP): <ulink url="&freetype2-doc-download-http;"/>
82 </para>
83 </listitem>
84 <listitem>
85 <para>
86 Download MD5 sum: &freetype2-doc-md5sum;
87 </para>
88 </listitem>
89 <listitem>
90 <para>
91 Download size: &freetype2-doc-size;
92 </para>
93 </listitem>
94 </itemizedlist>
95
96 <bridgehead renderas="sect3">FreeType2 Dependencies</bridgehead>
97
98 <bridgehead renderas="sect4">Recommended</bridgehead>
99 <para role="recommended">
100 <xref linkend="harfbuzz"/>
101 (circular: build freetype, then harfbuzz, then reinstall freetype),
102 <xref linkend="libpng"/>, and
103 <xref linkend="which"/>
104 </para>
105
106 <bridgehead renderas="sect4">Optional</bridgehead>
107 <para role="optional">
108 <xref linkend="brotli"/> and
109 <xref linkend="librsvg"/>
110 </para>
111
112 <bridgehead renderas="sect4">Optional (for documentation)</bridgehead>
113 <para role="optional">
114 <ulink url="https://pypi.org/project/docwriter/">docwriter</ulink>
115 </para>
116
117 </sect2>
118
119 <sect2 role="installation">
120 <title>Installation of FreeType2</title>
121
122 <para>
123 If you downloaded the additional documentation, unpack it into the
124 source tree using the following command:
125 </para>
126
127<screen><userinput>tar -xf ../freetype-doc-&freetype2-doc-version;.tar.xz --strip-components=2 -C docs</userinput></screen>
128
129 <para>
130 Install <application>FreeType2</application> by running the following
131 commands:
132 </para>
133
134<screen><userinput>sed -ri "s:.*(AUX_MODULES.*valid):\1:" modules.cfg &amp;&amp;
135
136sed -r "s:.*(#.*SUBPIXEL_RENDERING) .*:\1:" \
137 -i include/freetype/config/ftoption.h &amp;&amp;
138
139./configure --prefix=/usr --enable-freetype-config --disable-static &amp;&amp;
140make</userinput></screen>
141
142 <para>
143 This package does not come with a test suite.
144 </para>
145
146 <para>
147 Now, as the <systemitem class="username">root</systemitem> user:
148 </para>
149
150<screen role="root"><userinput>make install</userinput></screen>
151
152 <para>
153 If you downloaded the optional documentation, install it as the
154 <systemitem class="username">root</systemitem> user:
155 </para>
156
157<screen role="root"><userinput>cp -v -R docs -T /usr/share/doc/freetype-&freetype2-version; &amp;&amp;
158rm -v /usr/share/doc/freetype-&freetype2-version;/freetype-config.1</userinput></screen>
159
160 </sect2>
161
162 <sect2 role="commands">
163 <title>Command Explanations</title>
164
165 <para>
166 <command>sed -ri ...</command>: First command enables GX/AAT and OpenType
167 table validation and second command enables Subpixel Rendering. Note that
168 Subpixel Rendering may have patent issues. Be sure to read the
169 <literal>'Other patent issues'</literal> part of <ulink
170 url="https://freetype.org/patents.html"/> before enabling this option.
171 </para>
172
173 <para>
174 <parameter>--enable-freetype-config</parameter>: This switch
175 ensure that the man page for freetype-config is installed.
176 </para>
177
178 <para>
179 <option>--without-harfbuzz</option>: If
180 <application>harfbuzz</application> is installed prior to
181 <application>freetype</application> without
182 <application>freetype</application> support, use this switch to avoid a
183 build failure.
184 </para>
185
186 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
187 href="../../xincludes/static-libraries.xml"/>
188 <!-- No longer valid with 2.10.1, /usr/bin/freetype-config is installed
189 by the 'make install' command.
190 <para>
191 <command>cp builds/unix/freetype-config /usr/bin</command>: Manually
192 place the freetype configureation program needed by other programs when
193 using the freetype library.
194 </para>
195 -->
196
197 </sect2>
198
199 <sect2 role="content">
200 <title>Contents</title>
201
202 <segmentedlist>
203 <segtitle>Installed Program</segtitle>
204 <segtitle>Installed Library</segtitle>
205 <segtitle>Installed Directories</segtitle>
206
207 <seglistitem>
208 <seg>
209 freetype-config
210 </seg>
211 <seg>
212 libfreetype.so
213 </seg>
214 <seg>
215 /usr/include/freetype2 and
216 /usr/share/doc/freetype-&freetype2-version;
217 </seg>
218 </seglistitem>
219 </segmentedlist>
220
221 <variablelist>
222 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
223 <?dbfo list-presentation="list"?>
224 <?dbhtml list-presentation="table"?>
225
226 <varlistentry id="freetype-config">
227 <term><command>freetype-config</command></term>
228 <listitem>
229 <para>
230 is used to get <application>FreeType</application> compilation
231 and linking information
232 </para>
233 <indexterm zone="freetype2 freetype-config">
234 <primary sortas="b-freetype-config">freetype2-config</primary>
235 </indexterm>
236 </listitem>
237 </varlistentry>
238
239 <varlistentry id="libfreetype">
240 <term><filename class="libraryfile">libfreetype.so</filename></term>
241 <listitem>
242 <para>
243 contains functions for rendering various font types, such
244 as TrueType and Type1
245 </para>
246 <indexterm zone="freetype2 libfreetype">
247 <primary sortas="c-libfreetype">libfreetype.so</primary>
248 </indexterm>
249 </listitem>
250 </varlistentry>
251
252 </variablelist>
253
254 </sect2>
255
256</sect1>
Note: See TracBrowser for help on using the repository browser.