]> git.wh0rd.org - fontconfig.git/blame - README
Reimplement FcConfigAppFontAddDir; function was lost in 2.4.0.
[fontconfig.git] / README
CommitLineData
24330d27
KP
1 Fontconfig
2 Font configuration and customization library
76c44322
KP
3 Version 2.4.0
4 2006-09-09
c001a192 5
d5346181 6
845a0bf3
KP
7Check INSTALL for compilation and installation instructions.
8Report bugs to https://bugs.freedesktop.org in the fontconfig module.
9
76c44322
KP
102.4.0
11
12David Turner:
13 Replace character discovery loop with simpler, faster version.
14
15James Cloos:
16 Move files from conf.d to conf.avail
17 Standardize conf.avail number prefixing convention
18 Support all five possibilities for sub-pixel
19 Move user and local conf file loading into conf.avail files
20 Number the remaining conf.avail files
21 Update Makefile.am to match conf.avail changes
22 Replace load of conf.d in fonts.conf.in
23 Make room for chunks from fonts.conf in conf.avail
24 Re-order old conf.d files
25 Move some section from fonts.conf into conf.avail files
26 Update Makefile.am files
27 Make conf.avail and conf.d work
28
29Keith Packard:
30 Create fc_cachedir at install time. Bug 8157.
31 Reference patterns in FcCacheCopySet.
32 Replace gnu-specific sed command with simple grep.
33 Attempt to fix makealias usage for build on Mac OS X.
34 Accept locale environment variables that do not contain territory.
35 Merge branch 'jhcloos'
36 Insert newly created caches into reference data structure.
37 Add XML headers to new conf files. Move link make commands to conf.avail dir
38 Rename conf.avail to conf.d
39 Fix conf.d directory sorting.
40 Include cachedir in fonts.dtd.
41 Don't display tests for DESTDIR on make install.
42 Split much of the configuration into separate files. Renumber files
43
88b6bebc
KP
442.3.97
45
46Carl Worth:
47 Rename FcPatternThawAll to FcPatternFini.
48 Add a configuration file that disables hinting for the Lohit Gujarati font
49
50Keith Packard:
51 Various GCC 4 cleanups for signed vs unsigned char
52 Finish INSTALL changes. .gitignore ChangeLog
53 Merge branch 'fc-2_4_branch' to master
54 Remove all .cvsignore files
55 Hide private functions in shared library. Export functionality for utilities.
56 Hide FreeType glue code from library ABI.
57 Can't typecheck values for objects with no known type.
58 Leave cache files mapped permanently.
59 Reference count cache objects.
60 Make cache reference counting more efficient.
61 Oops, fc-lang broke when I added cache referencing.
62 Correct reference count when sharing cache file objects.
63 Eliminate .so PLT entries for local symbols. (thanks to Arjan van de Ven)
64 Update architecture signatures for x86-64 and ppc.
65 Parallel build fix for fcalias.h and fcaliastail.h
66 Charset hashing depended on uniqueness of leaves.
67
68Patrick Lam:
69 file Makefile.am was initially added on branch fc-2_4_branch.
70 Modify config file to use Greek fonts before Asian fonts with Greek glyphs.
71 Use libtool -no-undefined flag on all platforms.
72 file ftglue.c was initially added on branch fc-2_4_branch.
73 2005-11-23 Frederic Crozat <fcrozat@mandriva.com>: reviewed by: plam
74 file 10-fonts-persian.conf was initially added on branch fc-2_4_branch.
75 Sort directory entries while scanning them from disk; prevents Heisenbugs
76 file ln.orth was initially added on branch fc-2_4_branch.
77 Fix typos in orth files. Reported by Denis Jacquerye.
78 On Windows, unlink before rename. Reported by Tim Evans.
79 file fc-match.sgml was initially added on branch fc-2_4_branch.
80
0945cbe7
KP
812.3.96
82
83Keith Packard:
84 Make path names in cache files absolute (NB, cache format change) Stop
85 Eliminate pattern freezing
86 Add .gitignore
87 Construct short architecture name from architecture signature.
88 Write caches to first directory with permission. Valid cache in FcDirCacheOpen.
89 Eliminate NormalizeDir. Eliminate gratuitous stat/access calls per dir.
90 Add architecture to cache filename.
91 Eliminate global cache. Eliminate multi-arch cache code.
92 Fix up fc-cache and fc-cat for no global cache changes.
93 Eliminate ./ and ../ elements from font directory names when scanning.
94 Regenerate x86 line in fcarch.tmpl.h to match change in cache data.
95 Add x86-64 architecture and signature.
96 During test run, remove cache directory to avoid stale cache usage.
97 Add ppc architecture
98 Revert to original FcFontSetMatch algorithm to avoid losing fonts.
99 Rework cache files to use offsets for all data structures.
100 Fix build problems caused by cache rework.
101 FcCharSetSerialize was using wrong offset for leaves. Make fc-cat work.
102 Rework Object name database to unify typechecking and object lookup.
103 Skip broken caches. Cache files are auto-written, don't rewrite in fc-cache.
104 Fix fc-cat again. Sigh.
105 Use intptr_t instead of off_t inside FcCache structure.
106 Serialized value lists were only including one value.
107 Automatically remove invalid cache files.
108 With no args, fc-cat now dumps all directories.
109 Revert ABI changes from version 2.3
110 Change $(pkgcachedir) to $(fc_cachedir) in fc-cat and fc-cache Makefile.am
111 Allow FcTypeLangSet to match either FcTypeLangSet or FcTypeString.
112 Remove stale architecture signatures.
113 Pass directory information around in FcCache structure. Freeze charsets.
114 Fix fc-lang to use new charset freezer API.
115 Fontset pattern references are relative to fontset, not array.
116 Add some ignores
117 Only rebuild caches for system fonts at make install time.
118 Fix memory leaks in fc-cache directory cleaning code.
119 Add @EXPAT_LIBS@ to Libs.private in fontconfig.pc (bug 7683)
120 Avoid #warning directives on non-GCC compilers. (bug 7683)
121 Chinese/Macau needs the Hong Kong orthography instead of Taiwan (bug 7884)
122 Add Assamese orthography (as.orth). Bug #8050
123 Really only rebuild caches for system fonts at make install time.
124 Fonts matching lang not territory should satisfy sort pattern lang.
125 Prefer Bitstream Vera to DejaVu families.
126 Guess that mac roman names with lots of high bits are actually SJIS.
127 Document FC_DEBUG values (bug 6393). Document name \ escape syntax.
128 Move Free family names to bottom of respective aliases. (bug 7429)
129 Unify directory canonicalization into FcStrAddFilename.
130 Allow font caches to contain newer version numbers
131 Add FcMatchScan to resolve Delicious font matching issues (bug #6769)
132 Fix missing initialization/destruction of new 'scan' target subst list.
133 Don't segfault when string values can't be parsed as charsets or langsets.
134 Using uninitialized (and wrong) variable in FcStrCopyFilename.
135 Oops; missed the 60-delicious.conf file.
136
137Patrick Lam:
138 Keith Packard <keithp@keithp.com>
139 2006-04-27 Paolo Borelli (pborelli@katamail.com) reviewed by: plam
140 2006-05-31 Yong Li (rigel863@gmail.com) reviewed by: plam, Bedhad Esfahbod
141 2006-07-19 Jon Burgess (jburgess@uklinux.net) reviewed by: plam
142 2006-08-04 Keith Packard (keithp@keithp.com) reviewed by: plam
143
c001a192
PL
1442.3.95
145
146Match 'Standard Symbols L' for 'Symbol'. Add URW fonts as aliases for
147all of the PostScript fonts. (reported by Miguel Rodriguez). Fix a
148number of Coverity defects (Frederic Crozat). Speed up FcFontSort
149(fix suggested by Kenichi Handa). Fix error with charsets. Survive
150missing docbook2pdf. Compile on HP-UX, AIX, SGI and Windows (Cygwin,
151MinGW). Fix intel compiler warnings. Fix multiarch support (don't
152destroy multiarch files!) Require pkg-config. (Thanks Behdad; better
153solution wanted for libxml2 detection!) Fix typos in orth files and
154add orth for Lingala (reported by Denis Jacquerye). Remove debian/
155directory. Add a configuration file that disables hinting for the
156Lohit Gujarati font (since the hinting distorts some glyphs quite
157badly). Sort directory entries while scanning them from disk;
158prevents Heisenbugs due to file ordering in a directory (due to Egmont
159Koblinger). Fix Wine's problem with finding fonts. (Reported by
3b013a03
PL
160Bernhard Rosenkraenzer.) Fix the issues with GNU libiconv vs. libc
161iconv (which especially appear on Solarii); patch by Behdad Esfahbod,
162approach suggested by Tim Mooney.
c001a192 163
63d2df3f
PL
1642.3.94
165
166fc-cat can take directories as input and creates old-style fonts.cache
167listings.
168fc-cache takes -r --really-force which blows away all old caches and
169regenerates.
170Robustness fixes, integer overflow fixes (notably to cache handling
171code), toast broken global cache files.
172Change binary format to make it compatible with static langset
173information (thanks to Takashi Iwai).
174Open hashed caches before fonts.cache-2 (Takashi Iwai).
175Fix FcFontSetMatch's algorithm, which used to unjustly kill fonts for
176not declaring certain elements (Takashi Iwai).
177Fix matching bug when multiple elements match; don't use
178the sum of all scores, but the best score (James Su).
179Make fc-lang more friendly to Windows systems.
180Remove archaic chars from Georgian charset; add Euro character to
181charsets for European languages.
182Fix treatment of broken PCF fonts that don't declare family names.
183Pass O_BINARY to open if appropriate (reported by Doodle).
184Normalize font directories to the form in which they appear in
185config files.
186Add a record of the cached directory to the cache file.
187Perf optimizations (Dirk Mueller; some reported by Michael Meeks.)
188Don't loop infinitely on recursive symlinks.
189Make 'make distcheck' work with automake 1.6.3.
190Replace 'stamp' target with mkinstalldirs.
191Don't stop scanning if a directory in fonts.conf doesn't exist,
192because subsequent directories might exist.
193Put directory names into global cache (reported by Ronny V. Vindenes).
194Treat zh-hk fonts differently from zh-tw fonts. This patch may cause
195fontconfig to treat A-X fonts differently from A-Y fonts; please mail
196the fontconfig list if this causes any problems.
197Fix for unaligned memory accesses (Andreas Schwab).
198Fix treatment of cache directory as read from cache file; don't use
199string equality to determine if we have the right file, use inode
200equality.
201Properly skip past dir caches that contain zero fonts, as occurs
202in global caches (reported by Mike Fabian).
203Print out full pathname in fc-match -v (reported by Frederic Crozat).
204Fix bug where fc-match crashes when given __DUMMY__ property to
205match on.
206
3bfae75d
PL
2072.3.93
208
209Create cache files in /var/cache/fontconfig with hashed filenames, if
210possible, for added FHS compliance.
211Make fc-cat read both per-directory and global cache files.
212Add config file for Persian fonts from Sharif FarsiWeb, Inc.
213Major performance improvements by Dirk Mueller, Stephen Kulow, and Michael Matz at SuSE: in particular, speed up FcFontSetMatch, and inline many functions.
214Fix treatment of globs in config files, broken since 2.3.2 and discovered by Mathias Clasen.
215Don't use freetype internal headers (patch by Matthias Clasen).
216Further space improvements: create langsets statically, so that they can live in .rodata.
217Properly align mmapped data structures to make e.g. ia64 happy.
218Bug fixes.
219
e6d3e251
PL
2202.3.92
221
222Fix corrupted caches bugs from 2.3.91 (reported by Mike Fabian).
223Store only basename in the cache, reconstitute on demand
224(reported by James Cloos).
225Change the rule for artificial emboldening in fonts.conf.in. This
226enables the support for artificial emboldening included in cairo
227(patch by Zhe Su).
228Add FC_EMBEDDED_BITMAP object type to tell Xft/Cairo whether
229to load embedded bitmaps or not (patch by Jinghua Luo).
230Fix GCC4 warnings (some by Behdad Esfahbod).
231Support localized font family and style names; this has been reported
232to break old apps like xfd, but modern (gtk+/qt/mozilla) apps work
233fine (patch by Zhe Su).
234Prevent fc-list from escaping strings when printing them (reported by
235Matthias Clasen).
236Add valist sentinel markup for FcObjectSetBuild and
237FcPatternBuild (patch by Marcus Meissner).
238Add consts to variables so as to move arrays into .rodata (patch by
239Ross Burton).
240Modify config file to use Greek fonts before Asian fonts with
241Greek glyphs. (patch by Simos Xenitellis).
242Use libtool -no-undefined flag on all platforms (patch by Christian
243Biesinger).
244
bc5784ff
PL
2452.3.91
246
247Use libxml2 if requested or if expat not available. (Mathias Hasselmann)
248Fix multi-arch cache files: compute the position for the
249block to be added using info from OrigFile, not NewFile. (plam)
250Cast results of sizeof() to unsigned int to get rid of
251warnings on x86_64 (reported by Matthias Clasen).
252Use FcAtomic to rewrite cache files; don't unlink the fonts.cache-2
253file even if there's no data to write; just write an empty cache file.
254(Reported by Lubos Lunak)
255Allocate room for the subdirectory names in each directory cache.
256(Reported by James Cloos)
257
f28f090d
PL
2582.3.90
259
260Development release of mmap patch: load pattern information
261directly from cache files. (Patrick Lam)
262
1cb309ad
KP
2632.3.2
264
87c88746
KP
265Patch memory leaks in using iconv. (Reported by Chris Capoccia)
266Patch memory leaks in fc-cache. (Reported by Chris Capoccia)
1cb309ad
KP
267Fetch bitmap glyphs to get widths during font evaluation. (keithp)
268Share strings through FcObjectStaticName (Ross Burton)
269Windows build updates (Tor Lillqvist)
270
d49dde9f
KP
2712.3.1
272
273Be more careful about broken GSUB/GPOS tables (Manish Singh)
274Include debian packaging stuff in CVS (Josselin Mouette)
275Add more conf.d examples (Keith Packard)
276Make manuals build again (Keith Packard)
277Johap -> Johab (Funda Wang)
278
4afc00ca
KP
2792.3.0
280
281Fix memory leak of patterns rejected by configuration (#2518)
282
283Create prototype /etc/fonts/conf.d directory and populate it with a few
284sample files. These samples are unused as the file names don't start with
285numbers.
286
287Update documentation.
288
afca7836
KP
2892.2.99
290
291Verify cache for FC_FILE and FC_FAMILY in every entry (#2219)
292
293Update blanks list from recent Unicode docs (#86)
294
295Various small build fixes (#280, #2278,
296
297Documentation fixes (#2085, #2284, #2285)
298
299Add polite typechecking to config file loader (#229)
300
d5346181
KP
3012.2.98
302
303Share object name strings (Michael Meeks)
304
305Eliminate a couple of codepoints from Russian orthography (John Thacker)
306
307Add synthetic emboldening configuration changes (Jakub Pavelek)
308
309Change FcFontSetSort to ignore language after fonts with the requested
310languages have been found. (Owen Taylor)
311
312Add some RedHat font configuration changes (Owen Tayler).
313
314Add full Unicode case folding support to case-ignoring string functions
315(Keith Packard)
316
317Remove Han characters from Korean orthography (Tor Andersson)
308dc9c3
KP
318
3192.2.97
320
321Fc-cache sleeps before exiting to ensure filesystem timestamps are well
322ordered.
323
324Added Punjai orthography.
325
326The timestamp in fonts.conf is gone now. Too many problems.
327
328The default font path includes all of the X fonts; use selectfont/rejectfont
329to eliminate bitmaps, as shown in the sample local.conf file.
330
331<include> configuration elements may now reference a directory. Files
332in that directory matching [0-9]* are loaded in UTF-8 collating sequence order.
333
334<selectfont> configuration added to control which fonts are used.
335
336fontformat font pattern elements built from the FT_Get_X11_Font_Format
337function in newer versions of FreeType.
338
339'capability' list constructed from gsub/gpos and silf values in TrueType
340files.
341
342Multi-lingual names (style, family, fullname) extracted and stored with
343parallel <foo>lang properties marking language.
b5f36ca0
KP
344
3452.2.96
346
347Fix FcConfigUpToDate to actually check all font directories and eliminate
348a typo which completely prevented it from working (Lubos Lunak
349<l.lunak@suse.cz>)
350
351Remove comma at end of FcResult enum definition for picky compilers.
d81271eb
KP
352
3532.2.95
354
355Add FcResultOutOfMemory so FcFontSetMatch can return accurate error.
356
357Replace MIN/MAX/ABS macros which happened to be in old FreeType releases
358with FC_MIN/FC_MAX/FC_ABS macros owned by fontconfig.
626a7016
KP
359
3602.2.94
361
362The 2.2.93 release was prepared with a broken libtool which created
363the shared library without the '.so' in the file names.
6ae6acf3
KP
364
3652.2.93
366
367This is the third prerelease of fontconfig 2.3. Significant changes from
3682.2.92 are:
369
370 o Use new FreeType #include syntax
371 o use y_ppem field instead of 'height' in bitmap sizes rec -
372 FreeType changed the semantics. Still uses height for
373 older versions of FreeType
374 o Don't construct program manuals unless docbook is available
375
3762.2.92
377
378 o make distcheck work
379
3802.2.91
381
382 o Switch to SGML manuals
383 o Add FC_DUAL width spacing value
384 o Add FcFini to close out fontconfig and release all memory
385
3862.2
2eafe090 387
8fc10a72 388This is the third public release of fontconfig, a font configuration and
2eafe090
KP
389customization library. Fontconfig is designed to locate fonts within the
390system and select them according to requirements specified by applications.
391
392Fontconfig is not a rasterization library, nor does it impose a particular
393rasterization library on the application. The X-specific library
394'Xft' uses fontconfig along with freetype to specify and rasterize fonts.
395
396Keith Packard
397keithp@keithp.com