]> git.wh0rd.org - fontconfig.git/blame - README
Simplify/improve 30-metric-aliases.conf
[fontconfig.git] / README
CommitLineData
24330d27
KP
1 Fontconfig
2 Font configuration and customization library
e66c65fd
KP
3 Version 2.4.91 (2.5 RC1)
4 2007-10-25
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
e66c65fd
KP
102.4.91 (2.5 RC1)
11
12Behdad Esfahbod (1):
13 Update CaseFolding.txt to Unicode 5.1.0
14
15Dwayne Bailey (1):
16 Add/fix *.orth files for South African languages
17
18Hideki Yamane (1):
19 Handle Japanese fonts better. (debian bug #435971)
20
21Keith Packard (32):
22 rehash increment could be zero, causing rehash infinite loop.
23 Work around FreeType bug when glyph name buffer is too small.
24 Free temporary string in FcDirCacheUnlink (Bug #11758)
25 Fix ChangeLog generation to avoid circular make dependency
26 Store font directory mtime in cache file.
27 Comment about mmaping cache files was misleading.
28 Make FC_FULLNAME include all fullname entries, elide nothing. [bug 12827]
29 Remove unneeded call to access(2) in fc-cache.
30 Improve verbose messages from fc-cache.
31 Verbose message about cleaning directories was imprecise
32 Don't use X_OK bit when checking for writable directories (bug 12438)
33 Have fc-cache remove invalid cache files from cache directories.
34 FcConfigParseAndLoad doc was missing the last param.
35 Place language name in constant array instead of pointer.
36 Must not insert cache into hash table before completely validating.
37 Eliminate relocations for glyph name table.
38 Eliminate relocations from FcCodePageRange structure (bug 10982).
39 Leave generated headers out of distribution (bug 12734).
40 Move <cachedir> elements to the end of fonts.conf.
41 Add BRAILLE PATTERN BLANK to list of blank glyphs.
42 Replace makealias pattern with something supported by POSIX grep (bug 11083)
43 FcInit should return FcFalse when FcInitLoadConfigAndFonts fails. (bug 10976)
44 There is no U+1257 (bug 10899).
45 Spelling errors in documentation. (bug 10879).
46 Oops. Left debugging printf in previous commit.
47 Handle UltraBlack weight.
48 Fix parallel build in fontconfig/docs (bug 10481).
49 Distribute man source files for command line programs (bug 9678).
50 Ensure weight/slant values present even when style is supplied (bug 9313).
51 fontconfig needs configure option to use gnu iconv (bug 4083).
52 Match 'ultra' on word boundaries to detect ultra bold fonts. (bug 2511)
53 Build fix for Solaris 10 with GCC.
54
55Mike FABIAN (1):
56 Avoid crashes if config files contain junk.
57
58Stephan Kulow (1):
59 Make FcPatternDuplicate copy the binding instead of always using Strong.
60
61Tilman Sauerbeck (2):
62 Store FcNoticeFoundries in read-only memory.
63 Store FcVendorFoundries in read-only memory.
64
2373f904
KP
652.4.2
66
67Han-Wen Nienhuys:
68 FcStrCanonFileName buggy for mingw. (bug 8311)
69 More fixes for Win32 building (bug 8311)
70
71Kean Johnston:
72 Don't use varargs CPP macros in fccache.c. (bug 8733)
73
74Keith Packard:
75 Remove documentation for non-existant FcConfigNormalizeFontDir.
76 Build fontconfig.def from header files when needed.
77 Detect and use available random number generator (bug 8308)
78 Add sparc64 architecture string.
79 FcStrCanonAbsoluteFilename should be static.
80 Use explicit platform/nameid order when scanning ttf files.
81 Warn (and recover) from config file without <cachedir> elements.
82 Avoid writing uninitialized structure pad bytes to cache files.
83 Fix grep pattern in makealias to work on non-Gnu grep (bug 8368).
84 Add FcFreeTypeQueryFace external API. Bug #7311.
85 Segfault scanning non-font files. Disallow scan edit of user vars. (#8767)
86 Add space between type and formal in devel man pages (bug 8935)
87
88Mike FABIAN:
89 Do not clean cache files for different architectures
90
91Peter Breitenlohner:
92 A VPATH build of fontconfig-2.4.1 fails for various reasons. Bug 8933.
93 Use <literal> instead of <sgmltag> when documenting fonts.conf. Bug 8935.
94 Fix fc-cat documentation (bug 8935).
95
96
b9cc1c4e
KP
972.4.1
98
99Keith Packard:
100 Update installation notes for 2.4 base.
101 Add ppc64 signature. Bug 8227
102 Add signatures for m68k and mipsel (thanks debian buildd)
103 Add warning flags to fc-cache build. Clean up warnings in fc-cache.
104 Reimplement FcConfigAppFontAddDir; function was lost in 2.4.0.
105
76c44322
KP
1062.4.0
107
108David Turner:
109 Replace character discovery loop with simpler, faster version.
110
111James Cloos:
112 Move files from conf.d to conf.avail
113 Standardize conf.avail number prefixing convention
114 Support all five possibilities for sub-pixel
115 Move user and local conf file loading into conf.avail files
116 Number the remaining conf.avail files
117 Update Makefile.am to match conf.avail changes
118 Replace load of conf.d in fonts.conf.in
119 Make room for chunks from fonts.conf in conf.avail
120 Re-order old conf.d files
121 Move some section from fonts.conf into conf.avail files
122 Update Makefile.am files
123 Make conf.avail and conf.d work
124
125Keith Packard:
126 Create fc_cachedir at install time. Bug 8157.
127 Reference patterns in FcCacheCopySet.
128 Replace gnu-specific sed command with simple grep.
129 Attempt to fix makealias usage for build on Mac OS X.
130 Accept locale environment variables that do not contain territory.
131 Merge branch 'jhcloos'
132 Insert newly created caches into reference data structure.
133 Add XML headers to new conf files. Move link make commands to conf.avail dir
134 Rename conf.avail to conf.d
135 Fix conf.d directory sorting.
136 Include cachedir in fonts.dtd.
137 Don't display tests for DESTDIR on make install.
138 Split much of the configuration into separate files. Renumber files
139
88b6bebc
KP
1402.3.97
141
142Carl Worth:
143 Rename FcPatternThawAll to FcPatternFini.
144 Add a configuration file that disables hinting for the Lohit Gujarati font
145
146Keith Packard:
147 Various GCC 4 cleanups for signed vs unsigned char
148 Finish INSTALL changes. .gitignore ChangeLog
149 Merge branch 'fc-2_4_branch' to master
150 Remove all .cvsignore files
151 Hide private functions in shared library. Export functionality for utilities.
152 Hide FreeType glue code from library ABI.
153 Can't typecheck values for objects with no known type.
154 Leave cache files mapped permanently.
155 Reference count cache objects.
156 Make cache reference counting more efficient.
157 Oops, fc-lang broke when I added cache referencing.
158 Correct reference count when sharing cache file objects.
159 Eliminate .so PLT entries for local symbols. (thanks to Arjan van de Ven)
160 Update architecture signatures for x86-64 and ppc.
161 Parallel build fix for fcalias.h and fcaliastail.h
162 Charset hashing depended on uniqueness of leaves.
163
164Patrick Lam:
165 file Makefile.am was initially added on branch fc-2_4_branch.
166 Modify config file to use Greek fonts before Asian fonts with Greek glyphs.
167 Use libtool -no-undefined flag on all platforms.
168 file ftglue.c was initially added on branch fc-2_4_branch.
169 2005-11-23 Frederic Crozat <fcrozat@mandriva.com>: reviewed by: plam
170 file 10-fonts-persian.conf was initially added on branch fc-2_4_branch.
171 Sort directory entries while scanning them from disk; prevents Heisenbugs
172 file ln.orth was initially added on branch fc-2_4_branch.
173 Fix typos in orth files. Reported by Denis Jacquerye.
174 On Windows, unlink before rename. Reported by Tim Evans.
175 file fc-match.sgml was initially added on branch fc-2_4_branch.
176
0945cbe7
KP
1772.3.96
178
179Keith Packard:
180 Make path names in cache files absolute (NB, cache format change) Stop
181 Eliminate pattern freezing
182 Add .gitignore
183 Construct short architecture name from architecture signature.
184 Write caches to first directory with permission. Valid cache in FcDirCacheOpen.
185 Eliminate NormalizeDir. Eliminate gratuitous stat/access calls per dir.
186 Add architecture to cache filename.
187 Eliminate global cache. Eliminate multi-arch cache code.
188 Fix up fc-cache and fc-cat for no global cache changes.
189 Eliminate ./ and ../ elements from font directory names when scanning.
190 Regenerate x86 line in fcarch.tmpl.h to match change in cache data.
191 Add x86-64 architecture and signature.
192 During test run, remove cache directory to avoid stale cache usage.
193 Add ppc architecture
194 Revert to original FcFontSetMatch algorithm to avoid losing fonts.
195 Rework cache files to use offsets for all data structures.
196 Fix build problems caused by cache rework.
197 FcCharSetSerialize was using wrong offset for leaves. Make fc-cat work.
198 Rework Object name database to unify typechecking and object lookup.
199 Skip broken caches. Cache files are auto-written, don't rewrite in fc-cache.
200 Fix fc-cat again. Sigh.
201 Use intptr_t instead of off_t inside FcCache structure.
202 Serialized value lists were only including one value.
203 Automatically remove invalid cache files.
204 With no args, fc-cat now dumps all directories.
205 Revert ABI changes from version 2.3
206 Change $(pkgcachedir) to $(fc_cachedir) in fc-cat and fc-cache Makefile.am
207 Allow FcTypeLangSet to match either FcTypeLangSet or FcTypeString.
208 Remove stale architecture signatures.
209 Pass directory information around in FcCache structure. Freeze charsets.
210 Fix fc-lang to use new charset freezer API.
211 Fontset pattern references are relative to fontset, not array.
212 Add some ignores
213 Only rebuild caches for system fonts at make install time.
214 Fix memory leaks in fc-cache directory cleaning code.
215 Add @EXPAT_LIBS@ to Libs.private in fontconfig.pc (bug 7683)
216 Avoid #warning directives on non-GCC compilers. (bug 7683)
217 Chinese/Macau needs the Hong Kong orthography instead of Taiwan (bug 7884)
218 Add Assamese orthography (as.orth). Bug #8050
219 Really only rebuild caches for system fonts at make install time.
220 Fonts matching lang not territory should satisfy sort pattern lang.
221 Prefer Bitstream Vera to DejaVu families.
222 Guess that mac roman names with lots of high bits are actually SJIS.
223 Document FC_DEBUG values (bug 6393). Document name \ escape syntax.
224 Move Free family names to bottom of respective aliases. (bug 7429)
225 Unify directory canonicalization into FcStrAddFilename.
226 Allow font caches to contain newer version numbers
227 Add FcMatchScan to resolve Delicious font matching issues (bug #6769)
228 Fix missing initialization/destruction of new 'scan' target subst list.
229 Don't segfault when string values can't be parsed as charsets or langsets.
230 Using uninitialized (and wrong) variable in FcStrCopyFilename.
231 Oops; missed the 60-delicious.conf file.
232
233Patrick Lam:
234 Keith Packard <keithp@keithp.com>
235 2006-04-27 Paolo Borelli (pborelli@katamail.com) reviewed by: plam
236 2006-05-31 Yong Li (rigel863@gmail.com) reviewed by: plam, Bedhad Esfahbod
237 2006-07-19 Jon Burgess (jburgess@uklinux.net) reviewed by: plam
238 2006-08-04 Keith Packard (keithp@keithp.com) reviewed by: plam
239
c001a192
PL
2402.3.95
241
242Match 'Standard Symbols L' for 'Symbol'. Add URW fonts as aliases for
243all of the PostScript fonts. (reported by Miguel Rodriguez). Fix a
244number of Coverity defects (Frederic Crozat). Speed up FcFontSort
245(fix suggested by Kenichi Handa). Fix error with charsets. Survive
246missing docbook2pdf. Compile on HP-UX, AIX, SGI and Windows (Cygwin,
247MinGW). Fix intel compiler warnings. Fix multiarch support (don't
248destroy multiarch files!) Require pkg-config. (Thanks Behdad; better
249solution wanted for libxml2 detection!) Fix typos in orth files and
250add orth for Lingala (reported by Denis Jacquerye). Remove debian/
251directory. Add a configuration file that disables hinting for the
252Lohit Gujarati font (since the hinting distorts some glyphs quite
253badly). Sort directory entries while scanning them from disk;
254prevents Heisenbugs due to file ordering in a directory (due to Egmont
255Koblinger). Fix Wine's problem with finding fonts. (Reported by
3b013a03
PL
256Bernhard Rosenkraenzer.) Fix the issues with GNU libiconv vs. libc
257iconv (which especially appear on Solarii); patch by Behdad Esfahbod,
258approach suggested by Tim Mooney.
c001a192 259
63d2df3f
PL
2602.3.94
261
262fc-cat can take directories as input and creates old-style fonts.cache
263listings.
264fc-cache takes -r --really-force which blows away all old caches and
265regenerates.
266Robustness fixes, integer overflow fixes (notably to cache handling
267code), toast broken global cache files.
268Change binary format to make it compatible with static langset
269information (thanks to Takashi Iwai).
270Open hashed caches before fonts.cache-2 (Takashi Iwai).
271Fix FcFontSetMatch's algorithm, which used to unjustly kill fonts for
272not declaring certain elements (Takashi Iwai).
273Fix matching bug when multiple elements match; don't use
274the sum of all scores, but the best score (James Su).
275Make fc-lang more friendly to Windows systems.
276Remove archaic chars from Georgian charset; add Euro character to
277charsets for European languages.
278Fix treatment of broken PCF fonts that don't declare family names.
279Pass O_BINARY to open if appropriate (reported by Doodle).
280Normalize font directories to the form in which they appear in
281config files.
282Add a record of the cached directory to the cache file.
283Perf optimizations (Dirk Mueller; some reported by Michael Meeks.)
284Don't loop infinitely on recursive symlinks.
285Make 'make distcheck' work with automake 1.6.3.
286Replace 'stamp' target with mkinstalldirs.
287Don't stop scanning if a directory in fonts.conf doesn't exist,
288because subsequent directories might exist.
289Put directory names into global cache (reported by Ronny V. Vindenes).
290Treat zh-hk fonts differently from zh-tw fonts. This patch may cause
291fontconfig to treat A-X fonts differently from A-Y fonts; please mail
292the fontconfig list if this causes any problems.
293Fix for unaligned memory accesses (Andreas Schwab).
294Fix treatment of cache directory as read from cache file; don't use
295string equality to determine if we have the right file, use inode
296equality.
297Properly skip past dir caches that contain zero fonts, as occurs
298in global caches (reported by Mike Fabian).
299Print out full pathname in fc-match -v (reported by Frederic Crozat).
300Fix bug where fc-match crashes when given __DUMMY__ property to
301match on.
302
3bfae75d
PL
3032.3.93
304
305Create cache files in /var/cache/fontconfig with hashed filenames, if
306possible, for added FHS compliance.
307Make fc-cat read both per-directory and global cache files.
308Add config file for Persian fonts from Sharif FarsiWeb, Inc.
309Major performance improvements by Dirk Mueller, Stephen Kulow, and Michael Matz at SuSE: in particular, speed up FcFontSetMatch, and inline many functions.
310Fix treatment of globs in config files, broken since 2.3.2 and discovered by Mathias Clasen.
311Don't use freetype internal headers (patch by Matthias Clasen).
312Further space improvements: create langsets statically, so that they can live in .rodata.
313Properly align mmapped data structures to make e.g. ia64 happy.
314Bug fixes.
315
e6d3e251
PL
3162.3.92
317
318Fix corrupted caches bugs from 2.3.91 (reported by Mike Fabian).
319Store only basename in the cache, reconstitute on demand
320(reported by James Cloos).
321Change the rule for artificial emboldening in fonts.conf.in. This
322enables the support for artificial emboldening included in cairo
323(patch by Zhe Su).
324Add FC_EMBEDDED_BITMAP object type to tell Xft/Cairo whether
325to load embedded bitmaps or not (patch by Jinghua Luo).
326Fix GCC4 warnings (some by Behdad Esfahbod).
327Support localized font family and style names; this has been reported
328to break old apps like xfd, but modern (gtk+/qt/mozilla) apps work
329fine (patch by Zhe Su).
330Prevent fc-list from escaping strings when printing them (reported by
331Matthias Clasen).
332Add valist sentinel markup for FcObjectSetBuild and
333FcPatternBuild (patch by Marcus Meissner).
334Add consts to variables so as to move arrays into .rodata (patch by
335Ross Burton).
336Modify config file to use Greek fonts before Asian fonts with
337Greek glyphs. (patch by Simos Xenitellis).
338Use libtool -no-undefined flag on all platforms (patch by Christian
339Biesinger).
340
bc5784ff
PL
3412.3.91
342
343Use libxml2 if requested or if expat not available. (Mathias Hasselmann)
344Fix multi-arch cache files: compute the position for the
345block to be added using info from OrigFile, not NewFile. (plam)
346Cast results of sizeof() to unsigned int to get rid of
347warnings on x86_64 (reported by Matthias Clasen).
348Use FcAtomic to rewrite cache files; don't unlink the fonts.cache-2
349file even if there's no data to write; just write an empty cache file.
350(Reported by Lubos Lunak)
351Allocate room for the subdirectory names in each directory cache.
352(Reported by James Cloos)
353
f28f090d
PL
3542.3.90
355
356Development release of mmap patch: load pattern information
357directly from cache files. (Patrick Lam)
358
1cb309ad
KP
3592.3.2
360
87c88746
KP
361Patch memory leaks in using iconv. (Reported by Chris Capoccia)
362Patch memory leaks in fc-cache. (Reported by Chris Capoccia)
1cb309ad
KP
363Fetch bitmap glyphs to get widths during font evaluation. (keithp)
364Share strings through FcObjectStaticName (Ross Burton)
365Windows build updates (Tor Lillqvist)
366
d49dde9f
KP
3672.3.1
368
369Be more careful about broken GSUB/GPOS tables (Manish Singh)
370Include debian packaging stuff in CVS (Josselin Mouette)
371Add more conf.d examples (Keith Packard)
372Make manuals build again (Keith Packard)
373Johap -> Johab (Funda Wang)
374
4afc00ca
KP
3752.3.0
376
377Fix memory leak of patterns rejected by configuration (#2518)
378
379Create prototype /etc/fonts/conf.d directory and populate it with a few
380sample files. These samples are unused as the file names don't start with
381numbers.
382
383Update documentation.
384
afca7836
KP
3852.2.99
386
387Verify cache for FC_FILE and FC_FAMILY in every entry (#2219)
388
389Update blanks list from recent Unicode docs (#86)
390
391Various small build fixes (#280, #2278,
392
393Documentation fixes (#2085, #2284, #2285)
394
395Add polite typechecking to config file loader (#229)
396
d5346181
KP
3972.2.98
398
399Share object name strings (Michael Meeks)
400
401Eliminate a couple of codepoints from Russian orthography (John Thacker)
402
403Add synthetic emboldening configuration changes (Jakub Pavelek)
404
405Change FcFontSetSort to ignore language after fonts with the requested
406languages have been found. (Owen Taylor)
407
408Add some RedHat font configuration changes (Owen Tayler).
409
410Add full Unicode case folding support to case-ignoring string functions
411(Keith Packard)
412
413Remove Han characters from Korean orthography (Tor Andersson)
308dc9c3
KP
414
4152.2.97
416
417Fc-cache sleeps before exiting to ensure filesystem timestamps are well
418ordered.
419
420Added Punjai orthography.
421
422The timestamp in fonts.conf is gone now. Too many problems.
423
424The default font path includes all of the X fonts; use selectfont/rejectfont
425to eliminate bitmaps, as shown in the sample local.conf file.
426
427<include> configuration elements may now reference a directory. Files
428in that directory matching [0-9]* are loaded in UTF-8 collating sequence order.
429
430<selectfont> configuration added to control which fonts are used.
431
432fontformat font pattern elements built from the FT_Get_X11_Font_Format
433function in newer versions of FreeType.
434
435'capability' list constructed from gsub/gpos and silf values in TrueType
436files.
437
438Multi-lingual names (style, family, fullname) extracted and stored with
439parallel <foo>lang properties marking language.
b5f36ca0
KP
440
4412.2.96
442
443Fix FcConfigUpToDate to actually check all font directories and eliminate
444a typo which completely prevented it from working (Lubos Lunak
445<l.lunak@suse.cz>)
446
447Remove comma at end of FcResult enum definition for picky compilers.
d81271eb
KP
448
4492.2.95
450
451Add FcResultOutOfMemory so FcFontSetMatch can return accurate error.
452
453Replace MIN/MAX/ABS macros which happened to be in old FreeType releases
454with FC_MIN/FC_MAX/FC_ABS macros owned by fontconfig.
626a7016
KP
455
4562.2.94
457
458The 2.2.93 release was prepared with a broken libtool which created
459the shared library without the '.so' in the file names.
6ae6acf3
KP
460
4612.2.93
462
463This is the third prerelease of fontconfig 2.3. Significant changes from
4642.2.92 are:
465
466 o Use new FreeType #include syntax
467 o use y_ppem field instead of 'height' in bitmap sizes rec -
468 FreeType changed the semantics. Still uses height for
469 older versions of FreeType
470 o Don't construct program manuals unless docbook is available
471
4722.2.92
473
474 o make distcheck work
475
4762.2.91
477
478 o Switch to SGML manuals
479 o Add FC_DUAL width spacing value
480 o Add FcFini to close out fontconfig and release all memory
481
4822.2
2eafe090 483
8fc10a72 484This is the third public release of fontconfig, a font configuration and
2eafe090
KP
485customization library. Fontconfig is designed to locate fonts within the
486system and select them according to requirements specified by applications.
487
488Fontconfig is not a rasterization library, nor does it impose a particular
489rasterization library on the application. The X-specific library
490'Xft' uses fontconfig along with freetype to specify and rasterize fonts.
491
492Keith Packard
493keithp@keithp.com