]> git.wh0rd.org Git - fontconfig.git/blob - ChangeLog
9a11603be8c190b213817c8ca123d3674e3195ea
[fontconfig.git] / ChangeLog
1 2006-01-08  James Su  <james.su@gmail.com>
2         * src/fcmatch.c (FcFontSetMatch):
3
4         Fix matching bug when multiple elements match; don't use
5         the sum of all scores, but the best score.
6
7         Also more perf opts, e.g. evaluate best over all font sets
8         rather than on a per-set basis (and other changes).
9
10 2006-01-08  Patrick Lam  <plam@mit.edu>
11         * src/fccache.c (FcDirCacheConsume):
12
13         Properly skip past dir caches that contain zero fonts (as occurs
14         in global caches.)  Reported by Mike Fabian.
15
16 2006-01-06  Patrick Lam  <plam@mit.edu>
17         * src/fcdbg.c (FcPatternPrint):
18
19         Print out full pathname in fc-match -v as well.  Reported by
20         Frederic Crozat.
21         
22 2006-01-06  Mike Fabian  <mfabian@suse.de>
23         reviewed by: plam
24         
25         * src/fcname.c (FcNameParse):
26
27         Fix bug where fc-match crashes when given __DUMMY__ property to
28         match on.
29
30         (I added the __DUMMY__ string to enable callers of
31         FcObjectToPtrLookup to distinguish an error return from a
32         successful return. -PL)
33
34 2006-01-05  Patrick Lam  <plam@mit.edu>
35         * AUTHORS:
36
37         Add self to AUTHORS list.
38
39         * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, 
40                            FcCacheFileRead, FcCachePrintSet, main): 
41         * src/fccache.c (FcGlobalCacheLoad, FcGlobalCacheUpdate, 
42                          FcGlobalCacheSave, FcCacheNextOffset, 
43                          FcDirCacheHasCurrentArch, FcDirCacheRead, 
44                          FcDirCacheConsume, FcDirCacheWrite): 
45         * src/fcint.h:
46         * src/fcpat.c (comment):
47
48         Minor change to global cache file format to fix fc-cat bug
49         reported by Frederic Crozat, and buglet with not globally caching
50         directories with zero fonts cached.
51
52 2006-01-02  Lubos Lunak  <l.lunak@suse.cz>
53         reviewed by: plam
54         
55         * src/fccfg.c (FcConfigEvaluate):
56
57         Fix double-free which occurs because FcValueCanonicalize doesn't
58         create an extra copy of the returned value, it only canonicalizes
59         it.
60
61 2006-01-02  Patrick Lam  <plam@mit.edu>
62         * doc/fontconfig-user.sgml:
63
64         Fix version of .cache file (currently 1 -> currently 2).  Reported
65         by Jim Osborn.
66
67 2005-12-21  Jinghua Luo  <sunmoon1997@gmail.com>
68         reviewed by: plam
69
70         * src/fcpat.c (FcPatternAddFullFname, FcPatternFindFullFname):
71
72         Shut up GCC warnings on amd.
73
74 2005-12-20  Patrick Lam  <plam@mit.edu>
75         * ChangeLog:
76         * README:
77         * configure.in:
78         * fontconfig/fontconfig.h:
79
80         Bump version to 2.3.93.
81
82 2005-12-20  Patrick Lam  <plam@mit.edu>
83         * src/fccharset.c (FcLangCharSetPopulate):
84         * src/fcint.h (FcCacheBankToIndex):
85
86         Avoid check on _fcBankId nullness and fix case where it used to
87         crash.
88
89 2005-12-20  Patrick Lam  <plam@mit.edu>
90         * src/fcxml.c (FcConfigParseAndLoad):
91
92         Use open instead of fopen (requested by Phil Race for Sun).
93
94 2005-12-20  Patrick Lam  <plam@mit.edu>
95         * src/fccache.c (FcDirCacheWrite);
96         * fc-cache/Makefile.am:
97
98         Fix GCC4 warning and Makefile brokenness for /var/cache/fontconfig
99         dir.
100
101 2005-12-20  Patrick Lam  <plam@mit.edu>
102         * src/fcfreetype.c (FcFreeTypeQuery):
103
104         Restore code to skip over PCF fonts that have no encoded
105         characters.
106         (We guess that a font is PCF by presence of the PIXEL_SIZE
107         BDF property.)
108
109 2005-12-12  Patrick Lam  <plam@mit.edu>
110         * src/fccache.c (FcDirCacheOpen, FcDirCacheWrite):
111
112         Read and write the original location as a fallback for the
113         hashed cache file locations.  This is mostly for users to be
114         able to have per-directory cache files.
115
116 2005-12-12  Patrick Lam  <plam@mit.edu>
117         * fc-cache/fc-cache.c (scanDirs):
118         * fc-cache/Makefile.am:
119         * src/fccache.c (FcDirCacheHashName):
120
121         Improve error message when fc-cache can't write the cache.  Add
122         missing slash.  Reported by Behdad.  Incorporate Behdad's patch to
123         create /var/cache/fontconfig when appropriate.
124
125 2005-12-12  Behdad Esfahbod  <behdad@cs.toronto.edu>
126         reviewed by: plam
127         
128         * src/fcxml.c (FcConfigGetAttribute):
129
130         Fix crash reported by Frederic Crozat when using libxml2.
131
132 2005-12-09  Patrick Lam  <plam@mit.edu>
133         * INSTALL:
134         * configure.in:
135         * fc-cache/Makefile.am:
136         * fc-cat/Makefile.am:
137         * src/Makefile.am:
138         * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, FcCacheFileRead):
139         * fontconfig/fontconfig.h (FC_CACHE_SUFFIX):
140         * src/fccache.c (FcCacheSkipString, FcGlobalCacheLoad,
141                         FcGlobalCacheSave, FcCacheNextOffset, FcDirCacheValid,
142                         FcDirCacheHasCurrentArch, FcDirCacheHashName,
143                         FcDirCacheOpen, FcDirCacheRead, FcDirCacheWrite):
144
145         Migrate cache files from fonts directories to
146         /var/cache/fontconfig.  This helps make fontconfig FHS-compliant,
147         but requires that all caches get rebuilt.
148
149         Also, autogen.sh now needs the additional parameter
150         --localstatedir=/var.
151         
152 2005-12-07  Patrick Lam  <plam@mit.edu>
153         * src/fcpat.c (FcPatternAddString):
154
155         Because we've changed FcPatternAddString to use FcStrStaticName
156         and not FcValueSave, explicitly handle the case of a null string.
157
158 2005-12-06  Patrick Lam  <plam@mit.edu>
159         * fc-cat/fc-cat.c (FcCachePrintSet, FcCacheGlobalFileReadAndPrint):
160
161         Fix warnings.
162
163 2005-12-05  Patrick Lam  <plam@mit.edu>
164         * src/fcname.c (FcNameGetObjectType):
165
166         Don't assign types to user object names.
167
168 2005-12-05  Patrick Lam  <plam@mit.edu>
169         * src/fcpat.c (FcValueDestroy, FcValueListDestroy, FcStrHashed):
170
171         Don't free strings that have been returned from FcStrStaticName.
172
173 2005-12-01  Patrick Lam  <plam@mit.edu>
174         * fc-cat/fc-cat.c (FcCacheGlobalFileReadAndPrint, main):
175
176         Add codepath for reading global cache files as well.
177
178 2005-12-01  Behdad Esfahbod  <behdad@cs.toronto.edu>
179         reviewed by: plam
180
181         * conf.d/10-fonts.persian.conf:
182         * conf.d/Makefile.am:
183
184         Add config file for Persian fonts from Sharif FarsiWeb, Inc.
185
186 2005-11-30  Behdad Esfahbod  <behdad@cs.toronto.edu>
187         reviewed by: plam
188
189         * src/fcxml.c (FcConfigParseAndLoad):
190
191         Only add a config file to the set of config files once.
192
193 2005-11-29  Patrick Lam  <plam@mit.edu>
194         * src/fcint.h (FcCacheBankToIndex);
195
196         Fix segfault by guarding array dereference.
197
198 2005-11-29  Dirk Mueller  <dmueller@suse.de>
199         reviewed by: plam
200         
201         * fc-lang/fc-lang.c:
202         * src/fccache.c (FcDirCacheConsume, FcCacheHaveBank,
203                          FcCacheBankToIndex, FcCacheBankToIndexMTF,
204                          FcCacheAddBankDir):
205         * src/fcint.h:
206
207         Refactor FcCacheBankToIndex into an inlineable part
208         (in fcint.h) which checks the front of the list and a
209         non-inlineable part which finds and moves the appropriate element
210         to the front of the list.
211
212 2005-11-29  Patrick Lam  <plam@mit.edu>
213         * src/fccfg.c (FcConfigBuildFonts):
214         * src/fccache.c (FcCacheReadDirs):
215
216         Make the perf guys hate me a bit less: hoist the directory-name
217         FcConfigAcceptFont check for cached fonts up to directory cache
218         read time, rather than running it for each font.
219
220 2005-11-29  Patrick Lam  <plam@mit.edu>
221         * src/fccfg.c (FcConfigBuildFonts):
222         * src/fcint.h:
223         * src/fcpat.c (FcPatternFindFullFname):
224
225         Don't make FcPatternFindFullFname available to fccfg, it's not
226         really safe.  Instead go through FcPatternGetString (sorry,
227         perf guys.)  Also, use globs for dirs as well.
228
229 2005-11-28  Patrick Lam  <plam@mit.edu>
230         * src/fccfg.c (FcConfigBuildFonts):
231
232         Fix segfault.
233
234 2005-11-28  Patrick Lam  <plam@mit.edu>
235         * src/fcint.h:
236         * src/fcpat.c (FcPatternFindFullFname):
237         * src/fccfg.c (FcConfigBuildFonts):
238
239         Fix problem dating back at least to 2.3.2 where globs weren't
240         being applied to patterns loaded from a cache.
241
242 2005-11-28  Patrick Lam  <plam@mit.edu>
243         * doc/fontconfig-user.sgml:
244
245         Fix some obvious spelling mistakes.
246         
247 2005-11-28  Dirk Mueller  <dmueller@suse.com>
248             Stephan Kulow  <coolo@suse.de>
249         reviewed by: plam
250
251         * src/fcmatch.c (FcFontSetMatch):
252
253         Don't kill all fonts during match (oops!)
254
255
256 2005-11-25  Dirk Mueller  <dmueller@suse.com>
257             Stephan Kulow  <coolo@suse.de>
258             Michael Matz  <matz@suse.de>
259         reviewed by: plam
260
261         * src/fcmatch.c (FcObjectPtrToMatcher, FcCompareValueList,
262                 FcFontSetMatch):
263
264         Rewrite FcFontSetMatch to a path-finding based algorithm, i.e.
265         inline FcCompare into FcFontSetMatch and reorder the
266         loops, adding a boolean array which blocks patterns from future
267         consideration if they're known to not be best on some past
268         criterion.
269
270 2005-11-26  Dirk Mueller  <dmueller@suse.com>
271         reviewed by: plam
272         
273         * src/fcmatch.c (FcCompareValueList):
274
275         Fix incorrect merge.
276
277 2005-11-25  Patrick Lam  <plam@mit.edu>
278         * src/fcmatch.c (FcMatchObjectPtrsInit, FcCompareValueList):
279
280         Don't do random matching when bad objects are passed into
281         FcCompareValueList.
282
283 2005-11-25  Patrick Lam  <plam@mit.edu>
284         * src/fcint.h:
285         * src/fcpat.c (FcPatternEnsureBank, FcPatternDistributeBytes, 
286                         FcPatternSerialize, FcPatternUnserialize, 
287                         FcValueListEnsureBank, FcValueListDistributeBytes,
288                         FcValueListUnserialize):
289
290         Rename fcpatterns, fcpatternelts, fcvaluelists to _fcPatterns,
291         _fcPatternElts, _fcValueLists for consistency.
292
293 2005-11-25  Dirk Mueller  <dmueller@suse.com>
294         reviewed by: plam
295
296         * src/fcmatch.c:
297
298         Pass the FcObjectPtr to FcCompareValueList, not the char * (perf).
299
300 2005-11-25  Patrick Lam  <plam@mit.edu>
301         * src/fcint.h:
302         * src/fccache.c (FcDirCacheConsume):
303         * src/fccharset.c (FcCharSetUnserialize):
304         * src/fcfs.c (FcFontSetUnserialize):
305         * src/fclang.c (FcLangSetUnserialize):
306         * src/fcname.c (FcObjectUnserialize):
307         * src/fcpat.c (FcStrUnserialize, FcValueListUnserialize, 
308                         FcPatternUnserialize):
309
310         Pass around FcCache *s to the Unserialize functions for extra
311         consistency (and less overhead, for what that's worth).
312
313 2005-11-24  Dirk Mueller  <dmueller@suse.com>
314         reviewed by: plam
315
316         * src/fcint.h:
317         * src/fcmatch.c (FcCompare*, FcFontSetSort):
318         * src/fcname.c (FcNameUnparseValue):
319
320         Inline the *PtrU functions to gain perf.
321         Remove unneeded params for the FcCompare* functions.
322
323 2005-11-24  Dirk Mueller  <dmueller@suse.com>
324         reviewed by: plam
325         
326         * src/fcint.h, fontconfig/fontconfig.h: 
327         
328         Move FC_BANK_DYNAMIC, FC_BANK_FIRST to internal header.
329
330         * src/fcpat.c, src/fcint.h, src/fcname.c:
331           
332         Check for type validity during FcPatternAddWithBinding, don't
333         verify type in FcFontMatch, don't call FcCanonicalize here
334         (which always does a deep copy).
335
336 2005-11-24  Dirk Mueller  <dmueller@suse.com>
337         reviewed by: plam
338
339         * src/fcmatch.c (FcCompareNumber, FcCompareString, FcCompareFamily):
340         * src/fcpat.c (FcPatternAddWithBinding):
341
342         Make FcCompareString and FcCompareFamily less expensive.
343         Only add a value for FC_FAMILY if the proposed value is a string.
344
345 2005-11-24  Dirk Mueller  <dmueller@suse.com>
346         reviewed by: plam
347         
348         * src/fcdbg.c (FcDebug, FcDebugInit, FcPatternPrint):
349         * src/fcinit.c (FcInitLoadConfig, FcInitLoadConfigAndFonts):
350         * src/fcint.h (FcDebug):
351         
352         Inline FcDebug invocations and only initialize once, in FcInit*.
353         Improve debug msg in FcPatternPrint.
354
355 2005-11-23  Frederic Crozat  <fcrozat@mandriva.com>:
356         reviewed by: plam
357         
358         * fontconfig/fontconfig.h:
359         * fc-cat/fc-cat.c:
360
361         Minor code warning cleanups.
362
363 2005-11-23  Frederic Crozat  <fcrozat@mandriva.com>:
364         reviewed by: plam
365         
366         * fc-match/fc-match.c (main):
367
368         Make getopt_long accept -s parameter to fc-match as well.
369
370 2005-11-21  Dirk Mueller <dmueller@suse.com>
371         reviewed by: plam
372
373         * src/fcmatch.c (FcCompareValueList):
374
375         Manually perform inlining & partial redundancy elimination to
376         reduce calls to FcValueListPtrU.
377
378 2005-11-21  Dirk Mueller <dmueller@suse.com>
379         reviewed by: plam
380
381         * src/fcstr.c (FcStrFree, FcStrCaseWalkerInit, FcStrCaseWalkerLong,
382                        FcStrCaseWalkerNext, FcStrCaseWalkerNextIgnoreBlanks): 
383
384         Only invoke strlen() when really necessary.
385         
386 2005-11-19  Matthias Clasen  <mclasen@redhat.com>
387         reviewed by: plam
388
389         * src/Makefile.am:
390         * src/fcfreetype.c (FcGetPixelSize, FcFreeTypeQuery, GetScriptTags,
391                             FcFontCapabilities):
392         * src/ftglue.c:
393         * src/ftglue.h:
394
395         Get rid of the use of freetype internal headers in fcfreetype.c,
396         since those headers will go away with freetype 2.2.  Replace with
397         public domain ftglue code from pango.  Note that the patch removes
398         some extra error checking in FT_Get_BDF_Property() and comments
399         out the skipping of empty pcf fonts.
400
401 2005-11-19  Jinghua Luo  <sunmoon1997@gmail.com>
402         reviewed by: plam
403
404         * fc-lang/fc-lang.c (main):
405
406         Further fix of patch from 2005-11-04: miscounted numbers count
407         (numbers_count); didn't strip duplicate numbers (langBankNumbers);
408         and leafidx_offset and numbers_offset in fcLangCharSets are wrong.
409
410         Removed leafidx_count and numbers_count since they are the same
411         and replaced them with offset_count.
412
413 2005-11-18  Frederic Crozat  <fcrozat@mandriva.com>
414         reviewed by: plam
415
416         * fc-cat/fc-cat.c (main):
417
418         Don't crash when fc-cat invoked with no arguments.
419
420 2005-11-18  Frederic Crozat  <fcrozat@mandriva.com>
421         reviewed by: plam
422
423         * src/fcxml.c (FcConfigSaveAttr, FcConfigParseAndLoad):
424
425         Fix invalid read access caused by premature free and
426         GCC4 warnings in libxml2 codepath.
427
428 2005-11-17  Jinghua Luo  <sunmoon1997@gmail.com>
429         reviewed by: plam
430
431         * src/fccfg.c (FcConfigValues):
432
433         List iteration not needed in FcConfigValues, since it's building
434         up the list itself; we can just strip FcVoid elements during
435         construction.
436
437 2005-11-17  Patrick Lam  <plam@mit.edu>
438         * src/fccfg.c (FcConfigValues):
439
440         Fix crash on invalid constants in config files (forgot to update
441         a pointer upon list iteration.)
442
443 2005-11-17  Frederic Crozat  <fcrozat@mandriva.com>
444         reviewed by: plam
445
446         * src/fcxml.c (FcTypecheckExpr):
447
448         Complain about invalid constants in config files.
449
450 2005-11-17  Andreas Schwab  <schwab@suse.de>
451         reviewed by: plam
452         
453         * src/fccache.c (FcGlobalCacheSave): 
454
455         Don't add current_arch_start more than once.
456
457 2005-11-16  Patrick Lam  <plam@mit.edu>
458         * src/fccharset.c (FcCharSetDistributeBytes, FcCharSetUnserialize):
459         * src/fcfs.c (FcFontSetUnserialize):
460         * src/fcname.c (FcObjectDistributeBytes, FcObjectUnserialize):
461         * src/fcpat.c (FcStrUnserialize):
462
463         Fix ordering of ALIGN with respect to saving block_ptr; add
464         another ALIGN to fcfs.c.
465
466 2005-11-16  Patrick Lam  <plam@mit.edu>
467         * src/fccache.c (FcDirCacheProduce)
468         
469         Fix case where alignment bytes bumped up metadata->count
470         causing unwarranted failures to write cache files.  
471         (Reported by Stephan Kulow).
472
473 2005-11-16  Patrick Lam  <plam@mit.edu>
474         * src/fccache.c (FcDirCacheProduce):
475         * src/fccharset.c (FcCharSetDistributeBytes):
476         * src/fcfs.c (FcFontSetDistributeBytes):
477         * src/fcint.h:
478         * src/fclang.c (FcLangSetDistributeBytes):
479         * src/fcname.c (FcObjectDistributeBytes):
480         * src/fcpat.c (FcPatternNeededBytes, FcValueListNeededBytes,
481                 FcStrNeededBytes):
482         
483         Add *NeededBytesAlign(), which overestimates the padding which is
484         later added by the new ALIGN macro.  Fix alignment problems on
485         ia64 and s390 by bumping up block_ptr appropriately.  (Earlier
486         version by Andreas Schwab).
487
488 2005-11-16  Stephan Kulow  <coolo@kde.org>
489         reviewed by: plam
490         
491         * src/fccache.c:
492
493         Use sysconf to determine proper PAGESIZE value; this
494         appears to be POSIX-compliant. (reported by Andreas Schwab)
495
496 2005-11-04  Patrick Lam  <plam@mit.edu>
497         * fc-lang/fc-lang.c:
498         * src/fccharset.c:
499         * src/fcint.h:
500         * src/fclang.c:
501
502         Fix bug 2878 (excessive relocations at startup for charsets,
503         reported by Ross Burton): fc-lang/fc-lang now creates the
504         static form of the langset, not the dynamic form, so that
505         the charsets should now be in .rodata.
506
507 2005-11-04  Patrick Lam  <plam@mit.edu>
508         * src/fcdir.c (FcDirScanConfig):
509
510         Add test for validity of directory caches that
511         somehow got lost (reported by make distcheck).
512
513 2005-11-04  Patrick Lam  <plam@mit.edu>
514         * ChangeLog:
515         * README:
516         * configure.in:
517         * fontconfig/fontconfig.h:
518         
519         Bump version to 2.3.92.
520
521 2005-11-02  Patrick Lam  <plam@mit.edu>
522         * src/fcpat.c (FcPatternDuplicate):
523
524         Fix argument ordering problem in call to FcPatternTransferFullFname.
525
526 2005-11-02  Patrick Lam  <plam@mit.edu>
527         * src/fcfreetype.c (FcFreetypeQuery):
528         * src/fcpat.c (FcPatternDestroy, FcPatternDuplicate, 
529                        FcPatternTransferFullFname):
530
531         Fix warnings and embarrassing double-free error.
532
533 2005-11-02  Zhe Su  <zsu@novell.com>
534         reviewed by: plam
535         
536         * fonts.conf.in:
537
538         Change the rule for artificial emboldening in fonts.conf.in.  This
539         enables the support for artificial emboldening included in cairo.
540
541 2005-11-02  Patrick Lam  <plam@mit.edu>
542         * src/fcpat.c (FcPatternDestroy, FcPatternTransferFullName):
543
544         Don't zero out full names for FC_REF_CONSTANT fonts;
545         also, duplicate full names when transferring, and free
546         full names when freeing the associated font.
547         Reported by Jinghua Luo.
548
549 2005-11-02  Patrick Lam  <plam@mit.edu>
550         * fc-cache/fc-cache.c (scanDirs):
551         * src/fcpat.c (FcValueListSerialize):
552
553         Revert the previous patch and commit the correct patch:
554         I forgot a canonicalization in FcValueListSerialize, so
555         that it would choke on already-serialized input files.  Duh!
556
557 2005-11-02  Patrick Lam  <plam@mit.edu>
558         * fc-cache/fc-cache.c (scanDirs):
559
560         Forcibly rescan a directory before writing a fresh local
561         cache file for that directory, fixing the losing-fonts
562         problem reported by Mike Fabian and also apparently the 
563         font cache file corruption.
564
565 2005-11-02  Patrick Lam  <plam@mit.edu>
566         * src/fccache.c (FcGlobalCacheLoad):
567
568         Fix thinko: actually, the whole global cache is stale 
569         if the global cache is older than the (newest) config file.
570
571 2005-11-02  Patrick Lam  <plam@mit.edu>
572         * src/fccache.c (FcGlobalCacheLoad):
573         * src/fccfg.c (FcConfigModifiedTime, FcConfigBuildFonts):
574         * src/fcint.h:
575
576         Declare the global cache of a directory's contents to be stale if
577         the directory is newer than the (newest) configuration file.
578
579 2005-10-31  Patrick Lam  <plam@mit.edu>
580         * src/fcint.h:
581         * src/fclist.c (FcListAppend):
582         * src/fcmatch.c (FcFontRenderPrepare):
583         * src/fcpat.c (FcPatternTransferFullFname, FcPatternDuplicate,
584                        FcPatternFreeze, FcPatternBaseFreeze):
585
586         Copy the full pathname whenever duplicating an FcPattern; otherwise,
587         applications continue breaking.
588
589 2005-10-31  Patrick Lam  <plam@mit.edu>
590         * fc-cat/fc-cat.c (FcCacheFileRead, main):
591         * src/fcfreetype.c (FcFreeTypeQuery):
592
593         Fix small memory error (tried to free argv); use basename and
594         dirname correctly (they can modify their arguments).
595
596 2005-10-31  Patrick Lam  <plam@mit.edu>
597         * fc-cat/fc-cat.c:
598         * src/fccache.c:
599         * src/fcfreetype.c:
600         * src/fcint.h:
601         * src/fclist.c:
602         * src/fcpat.c:
603
604         Reinstate basename patch, but keep a hash table linking FcPatterns
605         to their fully-qualified font names for clients' benefit.  Clients
606         only pay for the font names once they request the FC_FILE property
607         from an FcPattern, but the font name is malloc'd at that point (i.e.
608         not mmapped: that's impossible, since it may vary between machines.)
609         Clients do have to pay for a copy of the path name per cache file.
610
611         Note that FcPatternGetString now does some rewriting if you ask
612         for an FC_FILE, appending the pathname as appropriate.
613         
614 2005-10-31  Patrick Lam  <plam@mit.edu>
615         * src/fcfreetype.c (FcFreeTypeQuery):
616
617         Revert basename patch, which breaks fontconfig clients on my system.
618
619 2005-10-25  Jinghua Luo  <sunmoon1997@gmail.com>
620         reviewed by: plam
621
622         * fontconfig/fonts.conf.in:
623         * fontconfig/fontconfig.h:
624         * src/fcdefault.c:
625         * src/fcname.c:
626
627         Add FC_EMBEDDED_BITMAP object type to tell Xft/Cairo whether
628         to load embedded bitmaps or not.
629
630 2005-10-25  Patrick Lam  <plam@mit.edu>
631         * src/fcfreetype.c (FcFreeTypeQuery):
632
633         Only add basename to patterns' FC_FILE element, not any part of
634         the dirname.
635
636 2005-10-22  Patrick Lam  <plam@mit.edu>
637         * src/fcfreetype.c:
638
639         Add some more consts, fixing more GCC4 warnings.
640
641 2005-10-22  Zhe Su  <zsu@novell.com>
642         reviewed by: plam
643
644         Support localized font family and style names.
645         This has been reported to break old apps like xfd, but modern
646         (gtk+/qt/mozilla) apps work fine.
647
648 2005-10-21  Patrick Lam  <plam@mit.edu>
649         * src/fccache.c (FcGlobalCacheLoad):
650
651         Destroy the global cache file if it's terminally broken.  (reported by
652         Mike Fabian)
653
654 2005-10-21  Patrick Lam  <plam@mit.edu>
655         * fc-list/fc-list.c (main):
656         * src/fcname.c (FcNameUnparse, FcNameUnparseEscaped):
657         * fontconfig/fontconfig.h:
658
659         Prevent fc-list from escaping strings when printing them (reported by
660         Matthias Clasen).
661
662 2005-10-20  Marcus Meissner  <meissner@suse.de>
663         reviewed by: plam
664
665         * fontconfig/fontconfig.h:
666
667         Add valist sentinel markup for FcObjectSetBuild and FcPatternBuild.
668         
669 2005-10-14  Ross Burton  <ross@burtonini.com>
670         reviewed by: plam
671
672         * fc-glyphname/fc-glyphname.c:
673         * src/fclang.c:
674
675         Add consts to variables so as to move arrays into .rodata.
676
677 2005-10-14  Mike Fabian  <mfabian@suse.de>
678         reviewed by: plam
679
680         * src/fccache.c (FcDirCacheUnlink):
681
682         Check existence of directory cache file before attempting to unlink.
683
684 2005-10-13  Patrick Lam  <plam@mit.edu>
685         * src/fccache.c (FcDirCacheUnlink):
686
687         Fix flipped return value on unlink.  (Reported by Mike Fabian)
688
689 2005-10-12  Patrick Lam  <plam@mit.edu>
690
691         * src/fccache.c:
692         * src/fcdir.c (FcDirScanConfig):
693         * src/fcint.h:
694
695         When fc-cache is run without --force, use directory cache files
696         to speed up fc-cache run time.  (Reported by Mike Fabian)
697
698 2005-10-06  Patrick Lam  <plam@mit.edu>
699
700         * src/fcname.c (FcObjectToPtr):
701         * src/fcpat.c (FcStrStaticName):
702
703         Add padding to make valgrind and glibc not hate each other
704         when calling strlen().
705
706 2005-10-05  Simos Xenitellis  <simos74@gmx.net>
707         reviewed by: plam & keithp
708
709         * fonts.conf.in:
710
711         Modify config file to use Greek fonts before Asian fonts with
712         Greek glyphs.
713
714 2005-10-05  Christian Biesinger  <cbiesinger@web.de>
715         reviewed by: plam & keithp
716
717         * src/Makefile.am:
718
719         Use libtool -no-undefined flag on all platforms.
720
721 2005-10-05  Patrick Lam  <plam@mit.edu>
722         * src/fccache.c (FcCacheHaveBank):
723
724         Implement move-to-front array for banks (perf regression
725         reported by Ronny V. Vindenes).
726
727 2005-10-04  Patrick Lam  <plam@mit.edu>
728         * src/fccache.c (FcDirCacheValid, FcDirCacheUnlink, 
729                          FcDirCacheHasCurrentArch):
730         * fc-cache/fc-cache.c (scanDirs):
731         * fontconfig/fontconfig.h:
732
733         Add new API which unlinks directory caches and checks dir caches
734         for existence of appropriate sections.  Fix fc-cache to unlink
735         stale cache files and save directory caches that lack relevant
736         sections.
737
738 2005-10-03  Patrick Lam  <plam@mit.edu>
739         * src/fccache.c (FcDirCacheValid):
740
741         Ensure that a directory cache has the appropriate section
742         before reporting that it is valid (reported by Matthias Clasen).
743
744 2005-09-29  Mathias Hasselmann  <mathias.hasselmann@gmx.de>
745
746         reviewed by: plam
747         
748         * configure.in:
749         * src/Makefile.am:
750         * src/fcxml.c:
751
752         Use libxml2 if requested (with --enable-libxml2) or if
753         expat is not available.
754
755 2005-09-29  Patrick Lam  <plam@mit.edu>
756         * src/fccache.c (FcGlobalCacheSave, FcDirCacheWrite):
757
758         Fix multi-arch cache files: compute the position for the
759         block to be added using info from OrigFile, not NewFile.
760
761 2005-09-28  Patrick Lam  <plam@mit.edu>
762         * src/fccache.c (FcCacheMachineSignature):
763
764         Cast results of sizeof() to unsigned int to get rid of
765         warnings on x86_64 (thanks Matthias Clasen).
766
767 2005-09-27  Patrick Lam  <plam@mit.edu>
768         * src/fccache.c (FcGlobalCacheSave, FcCacheCopyOld,
769                 FcDirCacheWrite):
770
771         Use FcAtomic to rewrite cache files.
772
773 2005-09-27  Patrick Lam  <plam@mit.edu>
774
775         * src/fccache.c (FcDirCacheWrite):
776
777         Don't unlink the fonts.cache-2 file even if there's no data
778         to write; just write an empty cache file.  (thanks Lubos Lunak)
779
780 2005-09-27  Patrick Lam  <plam@mit.edu>
781
782         * src/fccache.c (FcDirCacheWrite):
783
784         Allocate room for the subdirectory names in each
785         directory cache.  Thanks to James Cloos for finding
786         and diagnosing this bug!
787
788 2005-09-22  Patrick Lam  <plam@mit.edu>
789
790         * fc-cache/fc-cache.sgml:
791         * src/fccache.c (FcDirCacheWrite):
792         * src/fccache.h (struct FcCache):
793
794         Update documentation -- fc-cache's man page now says that you
795         need to run fc-cache once per cached architecture; add some
796         documentation to the FcCache structure.
797
798         Make fc-cache write out fonts.cache-2 files for directories with
799         no fonts (i.e. only subdirectories).
800         
801 2005-09-22  Patrick Lam    <plam@mit.edu>
802         * doc/edit-sgml.c:
803         * fc-cache/fc-cache.sgml:
804         * fc-case/fc-case.c:
805         * fc-glyphname/fc-glyphname.c:
806         * src/fcdefault.c:
807         * src/fcfreetype.c:
808         * src/fcinit.c:
809         * src/fcxml.c:
810
811         More GCC 4 cleanups, due to Behhad Esfahbod <behdad@beddad.org>.
812
813         * Makefile.am:
814         * configure.in:
815         * fc-lang/fc-lang.c:
816         * fontconfig/fcprivate.h:
817         * fontconfig/fontconfig.h:
818         * src/fccache.c:
819         * src/fccfg.c:
820         * src/fccharset.c:
821         * src/fcdbg.c:
822         * src/fcdir.c:
823         * src/fcfs.c:
824         * src/fcint.h:
825         * src/fclang.c:
826         * src/fclist.c:
827         * src/fcmatch.c:
828         * src/fcname.c:
829         * src/fcpat.c:
830
831         Implement new mmaped cache for font information.
832         Bump so revision to 2.3.90.
833
834 2005-07-25  Keith Packard  <keithp@keithp.com>
835
836         * doc/fontconfig-user.sgml:
837         * fc-glyphname/fc-glyphname.c: (scan), (main):
838         * fc-lang/fc-lang.c: (FcConfigHome):
839         * fc-match/fc-match.c: (main):
840         * src/fccfg.c: (FcConfigHome):
841         * src/fcfreetype.c: (FcSfntNameTranscode), (FcSfntNameLanguage),
842         (FcVendorMatch), (FcFreeTypeQuery), (FcFreeTypeCharSetAndSpacing),
843         (addtag), (FcFontCapabilities):
844         * src/fcpat.c: (FcValueListEntCreate):
845         * src/fcstr.c: (FcStrCaseWalkerInit):
846         * src/fcxml.c: (FcParsePatelt), (FcConfigParseAndLoadDir):
847
848         Various GCC 4 cleanups for signed vs unsigned char
849
850         Match only [0-9]*.conf files in <include>{directory}</include>
851         elements to avoid loading *.rpmsave or .dpkg-old files. (otaylor)
852
853 2005-07-15  Carl Worth  <cworth@cworth.org>
854
855         * src/fcint.h:
856         * src/fcinit.c: (FcFini):
857         * src/fcpat.c: (FcPatternFini): Rename FcPatternThawAll to
858         FcPatternFini.
859         
860         * src/fcpat.c: (FcObjectStaticName), (FcObjectStaticNameFini):
861         Pull the FcObjectStateName hash table out to file scope, and add
862         FcObjectStaticNameFini so that FcFini will cleanup this hash table
863         as well.
864
865         * src/fcxml.c: (FcConfigParseAndLoad): Clear FILE* to NULL after
866         fclose.
867
868 2005-06-16  Patrick Lam <plam@MIT.EDU>
869
870         reviewed by: keithp
871
872         * src/fccfg.c: (FcConfigCompareValue):
873         Make FcOpNotContains use FcStrStr for strings so that
874         it matches semantics for !FcOpContains.
875
876 2005-05-20  Keith Packard  <keithp@keithp.com>
877
878         * debian/changelog:
879         * debian/control:
880         Move fontconfig source package to libs as per override
881
882 2005-05-20  Aiet Kolkhi <aietkolkhi@gmail.com>
883
884         reviewed by: Mike Fabian
885
886         * fc-lang/ka.orth:
887         The ka.orth file requires several characters which are not 
888         used anymore in modern Georgian and which are missing in the free 
889         Georgian TrueType fonts downloadable at: 
890         
891         http://aiet.qartuli.net/docs/georgian_on_linux_en.php
892
893 2005-04-27  Keith Packard  <keithp@keithp.com>
894
895         * README:
896         * debian/changelog:
897         Update date to real 2.3.2 release date.
898         Fix change attributions
899         
900 2005-04-27  Keith Packard  <keithp@keithp.com>
901
902         * configure.in:
903         Bump so revision for 2.3.2
904         * fc-cache/fc-cache.c: (scanDirs):
905         Fix a few minor leaks in error cases.
906
907 2005-04-23  Keith Packard  <keithp@keithp.com>
908
909         * README:
910         * configure.in:
911         * debian/changelog:
912         * fontconfig/fontconfig.h:
913         Update for version 2.3.2
914
915 2005-04-21  Keith Packard  <keithp@keithp.com>
916
917         * debian/fontconfig.postinst:
918         Don't force bitmap font enable in default
919         configuration; allows users to override this in
920         ~/.fonts.conf
921         * debian/po/cs.po:
922         * debian/po/da.po:
923         * debian/po/de.po:
924         * debian/po/es.po:
925         * debian/po/fr.po:
926         * debian/po/ja.po:
927         * debian/po/nl.po:
928         * debian/po/pt.po:
929         * debian/po/pt_BR.po:
930         * debian/po/templates.pot:
931         * debian/po/tr.po:
932         * debian/po/zh_CN.po:
933         Updated translations
934         
935         * fc-cache/fc-cache.c: (main):
936         Destroy font configuration on exit to help valgrind
937         
938         * fonts.conf.in:
939         * src/fcfreetype.c: (FcSfntNameTranscode), (FcFreeTypeCharIndex),
940         (FcFreeTypeCheckGlyph):
941         Use own transcoding routines in preference to iconv
942         which appears to have leaks in some translators.
943         Call iconv_close after using iconv (oops).
944         
945         Prefer unicode encoding of Euro char as some
946         fonts mis-encode Euro in other ones.
947
948         Must fetch bitmap glyphs to get width values
949         to check for monospace/dual-width fonts.
950
951 2005-04-13  Ross Burton  <ross@burtonini.com>
952
953         * src/fcpat.c:
954         Check that a pattern isn't already frozen in FcPatternFreeze.
955
956 2005-03-31  Ross Burton  <ross@burtonini.com>
957
958         * src/fclist.c:
959         * src/fcmatch.c:
960         * src/fcpat.c:
961         Run all FcPattern objects through FcObjectStaticName, so that
962         compares can be done on pointers instead of strings (#2659)
963
964 2005-03-17  Tor Lillqvist  <tml@novell.com>
965
966         * src/fontconfig.def.in: Add the .dll to the dll name.
967
968 2005-03-10  Keith Packard  <keithp@keithp.com>
969
970         * debian/README.Debian:
971         Update to reflect configuration changes
972         * debian/changelog:
973         * debian/fontconfig.postinst:
974         Fix Autohint vs Autohinter mistake
975         * debian/fontconfig.templates:
976         Adopt changes from Josselin Mouette for configuration descriptions
977         Update debian to version 2.3.1-2
978
979 2005-03-08  Keith Packard  <keithp@keithp.com>
980
981         * debian/changelog:
982         * debian/rules:
983         Update debian for 2.3.1
984
985 2005-03-09  Tor Lillqvist  <tml@novell.com>
986
987         * fontconfig-zip.in: Get the DLL from "bin" where modern libtools
988         put it, not "lib".
989
990         * src/fccfg.c (FcConfigFileExists): Check also drive letter
991         prefix on Win32.
992
993 2005-03-08  Keith Packard  <keithp@keithp.com>
994
995         * README:
996         * configure.in:
997         * fontconfig/fontconfig.h:
998         Update for 2.3.1
999
1000 2005-03-05  Keith Packard  <keithp@keithp.com>
1001
1002         * src/fcfreetype.c: (addtag), (FcFontCapabilities):
1003         Include space and remove numbers from valid script tags.
1004         This ensures that tags like 'lao ' work while rejecting
1005         those which have any digits.
1006         Eliminate a spurious debugging variable (len)
1007
1008 2005-03-05  Keith Packard  <keithp@keithp.com>
1009
1010         * src/fcfreetype.c: (addtag), (GetScriptTags),
1011         (FcFontCapabilities):
1012         Rework GSUB/GPOS script parsing to survive broken fonts.
1013         Thanks for the broken font go to Manish Singh
1014
1015 2005-03-05  Keith Packard  <keithp@keithp.com>
1016
1017         Josselin Mouette:
1018         * debian/changelog:
1019         * debian/control:
1020         * debian/fontconfig.config:
1021         * debian/fontconfig.templates:
1022         * debian/rules:
1023                 Include 2.3 release information in changelog
1024                 Add Josselin Mouette as an Uploader
1025                 Set hinting_type to low priority configuration option
1026                 
1027         Manish Singh:
1028         * debian/fontconfig.postinst:
1029                 yes_bitmaps.conf -> yes-bitmaps.conf
1030                 
1031         Funda Wang:
1032         * src/fcfreetype.c:
1033                 Johap -> Johab
1034                 
1035 2005-03-02  Keith Packard  <keithp@keithp.com>
1036
1037         * Makefile.am:
1038         * conf.d/Makefile.am:
1039         * conf.d/autohint.conf:
1040         * conf.d/no-sub-pixel.conf:
1041         * conf.d/sub-pixel.conf:
1042         * conf.d/unhinted.conf:
1043         * debian/autohint.conf:
1044         * debian/fontconfig.install:
1045         * debian/fontconfig.postinst:
1046         * debian/fontconfig.templates:
1047         * debian/no-sub-pixel.conf:
1048         * debian/unhinted.conf:
1049         Move debian-specific conf file examples upstream.
1050         
1051         Sub-pixel configuration examples must smash subpixel value
1052         as Xft always sets it from X.
1053
1054         Change sub-pixel rendering debconf descriptions from
1055         Enable/Disable to Always/Never.
1056
1057 2005-03-02  Keith Packard  <keithp@keithp.com>
1058
1059         * .cvsignore:
1060         * conf.d/.cvsignore:
1061         * doc/.cvsignore:
1062         Ignore more build detritus
1063
1064         * Makefile.am:
1065         Add debian package construction stuff.
1066         
1067         * config/config.guess:
1068         * config/config.sub:
1069         Update to newer versions of these tools
1070         
1071         * doc/Makefile.am:
1072         Get library manuals to build again (we love automake).
1073         
1074         * debian/README.Debian:
1075         * debian/autohint.conf:
1076         * debian/changelog:
1077         * debian/compat:
1078         * debian/control:
1079         * debian/copyright:
1080         * debian/fontconfig-udeb.install:
1081         * debian/fontconfig.config:
1082         * debian/fontconfig.defoma:
1083         * debian/fontconfig.dirs:
1084         * debian/fontconfig.install:
1085         * debian/fontconfig.postinst:
1086         * debian/fontconfig.postrm:
1087         * debian/fontconfig.templates:
1088         * debian/libfontconfig1-dev.install:
1089         * debian/libfontconfig1.install:
1090         * debian/local.conf.md5sum:
1091         * debian/no-sub-pixel.conf:
1092         * debian/po/POTFILES.in:
1093         * debian/po/cs.po:
1094         * debian/po/da.po:
1095         * debian/po/de.po:
1096         * debian/po/es.po:
1097         * debian/po/fr.po:
1098         * debian/po/ja.po:
1099         * debian/po/nl.po:
1100         * debian/po/pt.po:
1101         * debian/po/pt_BR.po:
1102         * debian/po/templates.pot:
1103         * debian/po/tr.po:
1104         * debian/po/zh_CN.po:
1105         * debian/rules:
1106         * debian/unhinted.conf:
1107         Update debian build system to switch maintainers and
1108         deal with 2.3 functionality
1109
1110 2005-03-01  Keith Packard  <keithp@keithp.com>
1111
1112         * README:
1113         * configure.in:
1114         * fontconfig/fontconfig.h:
1115         Update for 2.3.0
1116
1117 2005-03-01  Keith Packard  <keithp@keithp.com>
1118
1119         * doc/Makefile.am:
1120         Generate and install PDF versions of the manuals
1121
1122         * doc/fcpattern.fncs:
1123         Fix formatting
1124         
1125         * doc/fcstring.fncs:
1126         Add missing exported functions, fix data types
1127         
1128         * doc/fontconfig-devel.sgml:
1129         Add missing pattern elements.
1130         
1131         * doc/fontconfig-user.sgml:
1132         Add missing pattern elements.  Document conf.d usage,
1133         clarify available orthography list.  Fix some config file
1134         attributes.  Complete list of constants.
1135         
1136         * fontconfig/fontconfig.h:
1137         Mark FC_SOURCE deprecated.
1138         
1139         * src/fcfreetype.c: (FcFreeTypeQuery):
1140         Don't set FC_SOURCE any longer.
1141
1142 2005-02-28  Keith Packard  <keithp@keithp.com>
1143
1144         * Makefile.am:
1145         * conf.d/Makefile.am:
1146         * conf.d/README:
1147         * conf.d/no-bitmaps.conf:
1148         * conf.d/sub-pixel.conf:
1149         * conf.d/yes-bitmaps.conf:
1150         * configure.in:
1151         Create prototype /etc/fonts/conf.d directory with a few
1152         sample configuration files.
1153         Deprecate use of local.conf for local customizations in favor of
1154         this directory based scheme which is more easily integrated into
1155         installation systems.
1156         
1157         * src/fcname.c:
1158         Tag FC_EMBOLDEN as a boolean variable
1159
1160 2005-02-10  Keith Packard  <keithp@keithp.com>
1161
1162         reviewed by: pborelli@katamail.com
1163
1164         * src/fcdir.c: (FcFileScanConfig):
1165         Free patterns from fonts which are rejected by configuration
1166         (bug #2518)
1167
1168 2005-01-28  Keith Packard  <keithp@keithp.com>
1169
1170         * README:
1171         * configure.in:
1172         * fontconfig/fontconfig.h:
1173         Update for version 2.2.99
1174
1175 2005-01-28  Keith Packard  <keithp@keithp.com>
1176
1177         * README:
1178         Add a few pointers (#2284, #2285)
1179
1180 2005-01-28  Keith Packard  <keithp@keithp.com>
1181
1182         * src/fcint.h:
1183         * src/fcname.c: (FcNameBool):
1184         * src/fcxml.c: (FcTypeName), (FcTypecheckValue), (FcTypecheckExpr),
1185         (FcTestCreate), (FcEditCreate), (FcConfigLexBool), (FcParseBool),
1186         (FcParseAlias), (FcParseInclude), (FcParseTest), (FcParseEdit):
1187         Polite typechecking for test and edit expressions.  Helps
1188         catch errors in the font configuration. (bug 229)
1189
1190 2005-01-15  Alan Coopersmith <alan.coopersmith@sun.com>
1191
1192         reviewed by: Keith Packard <keithp@keithp.com>
1193
1194         * configure.in:
1195         Have --with-expat set EXPAT_CFLAGS (bug 2278)
1196
1197 2005-01-13  Keith Packard  <keithp@keithp.com>
1198
1199         * doc/fontconfig-user.sgml:
1200         Add SEE ALSO section (bug 2085)
1201         
1202 2005-01-13  J. Ali Harlow <ali@juiblex.co.uk>
1203
1204         reviewed by: Keith Packard  <keithp@keithp.com>
1205
1206         * Makefile.am:
1207         * configure.in:
1208         * doc/Makefile.am:
1209         * fc-case/Makefile.am:
1210         * fc-glyphname/Makefile.am:
1211         * fc-lang/Makefile.am:
1212         * src/fontconfig.def.in:
1213         Cross compiling fixes (bug 280)
1214
1215 2005-01-13  Keith Packard  <keithp@keithp.com>
1216
1217         * fonts.conf.in:
1218         Update blanks list (Closes bug 86)
1219
1220 2005-01-04  Keith Packard  <keithp@keithp.com>
1221
1222         * src/fccache.c: (FcCacheFontSetAdd):
1223         Verify that every font pattern loaded from cache has
1224         both FC_FILE and FC_FAMILY entries.
1225         Attempt to fix bug #2219.
1226
1227 2004-12-29  Keith Packard  <keithp@keithp.com>
1228
1229         * README:
1230         * configure.in:
1231         * fontconfig/fontconfig.h:
1232         Update for version 2.2.98
1233
1234 2004-12-29  Keith Packard  <keithp@keithp.com>
1235
1236         * fontconfig/fontconfig.h:
1237         Document ASCII limitations of Fc character conversion macros
1238         * src/fcstr.c: (FcStrCaseWalkerLong), (FcStrDowncase):
1239         Fix off-by-one error in utf-8 case walking code.
1240         Add FcStrDowncase (useful for testing case conversion functions)
1241
1242 2004-12-29  Keith Packard  <keithp@keithp.com>
1243
1244         * .cvsignore:
1245         * fc-case/.cvsignore:
1246         clean up CVS ignore lists
1247         * fc-lang/iso-3166.txt:
1248         Add territory database
1249         
1250 2004-12-29   Tor Andersson <tor.andersson@gmail.com>
1251
1252         Reviewed by: Keith Packard
1253         
1254         * fc-lang/ko.orth:
1255         Remove Han characters from Korean orthography
1256
1257 2004-12-29  Keith Packard  <keithp@keithp.com>
1258
1259         * Makefile.am:
1260         Reorder utility programs to make sure fc-case is run before fc-lang
1261         as fc-lang uses fcstr.c which uses fccase.h
1262         * fonts.conf.in:
1263         Fix broken XML
1264
1265 2004-12-29  Keith Packard  <keithp@keithp.com>
1266
1267         * fonts.conf.in:
1268         Adopt some RedHat suggestions for standard font configuration.
1269
1270         * Makefile.am:
1271         * configure.in:
1272         * fc-case/CaseFolding.txt:
1273         * fc-case/Makefile.am:
1274         * fc-case/fc-case.c: (panic), (addFold), (ucs4_to_utf8),
1275         (utf8_size), (addChar), (foldExtends), (case_fold_method_name),
1276         (dump), (parseRaw), (caseFoldReadRaw), (main):
1277         * fc-case/fccase.tmpl.h:
1278         Add new helper program 'fc-case' to construct case folding
1279         tables from standard Unicode CaseFolding.txt file
1280         
1281         * src/fcint.h:
1282         * src/fclist.c: (FcListValueHash):
1283         * src/fcstr.c: (FcStrCaseWalkerInit), (FcStrCaseWalkerLong),
1284         (FcStrCaseWalkerNext), (FcStrCaseWalkerNextIgnoreBlanks),
1285         (FcStrCmpIgnoreCase), (FcStrCmpIgnoreBlanksAndCase),
1286         (FcStrHashIgnoreCase), (FcStrIsAtIgnoreBlanksAndCase),
1287         (FcStrIsAtIgnoreCase), (FcStrStrIgnoreCase):
1288         Re-implement case insensitive functions with Unicode
1289         aware versions (including full case folding mappings)
1290
1291 2004-12-13  Keith Packard  <keithp@keithp.com>
1292
1293         reviewed by: Owen Taylor <otaylor@redhat.com>
1294
1295         * src/fcmatch.c: (FcFontSetSort):
1296         I changed FcFontSetSort to respect the generic aliases better
1297         in the face of language matching.
1298         
1299         What I did was to ammend the strict sort order used by FcFontSort so
1300         that it 'satisfies' the language specified in the pattern by locating
1301         the best matching font supporting each pattern language and then
1302         ignores language in the remaining fonts for purposes of matching.
1303
1304         So, when asking for 'sans:lang=en', you'll get an English font first,
1305         and then the remaining fonts sorted with respect to the 'sans' alias
1306         alone -- pushing Kochi fonts ahead of other English-supporting Han fonts.
1307
1308 2004-12-10  Jakub Pavelek <jakub.pavelek@nokia.com>
1309
1310         reviewed by: Keith Packard  <keithp@keithp.com>
1311
1312         * fontconfig/fontconfig.h:
1313         * fonts.conf.in:
1314
1315         Configuration changes to request synthetic emboldening of
1316         fonts.  The actual emboldening code will live in Xft.
1317
1318 2004-12-09  John Thacker <thacker@math.cornell.edu>
1319
1320         reviewed by: Keith Packard  <keithp@keithp.com>
1321
1322         * fc-lang/ru.orth:
1323         
1324         Currently Russian (ru) requires 0406 and 0456 (І and Ñ–), but these
1325         were eliminated in Russian in 1918 in favor of 0418 and 0438 (И and
1326         Ð¸), and don't even appear in KOI8-R.  (The hypothesis that they
1327         don't appear in KOI8-R due to their similarity with Latin I and i is
1328         eliminated by their presence in KOI8-U.)  I have a couple of fonts
1329         with Russian support that don't have the letter.
1330
1331         Therefore, 0406 and 0456 should be removed from or commented out of
1332         ru.orth
1333
1334 2004-12-06  michael meeks <mmeeks@novell.com>
1335
1336         Reviewed by: Keith Packard  <keithp@keithp.com>
1337
1338         * src/fcinit.c: (FcMemReport):
1339         * src/fcint.h:
1340         * src/fclist.c: (FcObjectSetAdd):
1341         * src/fcpat.c: (FcValueListEntCreate), (FcPatternBaseFreeze),
1342         (FcPatternInsertElt), (FcPatternEqual), (FcObjectStaticName):
1343         * src/fcxml.c: (FcParsePatelt):
1344         memoize strings and share a single copy for all uses.  Note that
1345         this could be improved further by using statically allocated blocks
1346         and gluing multiple strings together, but I'm basically lazy.
1347         In my environment with 800 font files, I get a savings of about 90KB.
1348
1349 2004-12-06  Keith Packard  <keithp@keithp.com>
1350
1351         * COPYING:
1352         * Makefile.am:
1353         * config/Makedefs.in:
1354         * configure.in:
1355         * doc/edit-sgml.c:
1356         * doc/fcatomic.fncs:
1357         * doc/fcblanks.fncs:
1358         * doc/fccharset.fncs:
1359         * doc/fcconfig.fncs:
1360         * doc/fcconstant.fncs:
1361         * doc/fcfile.fncs:
1362         * doc/fcfontset.fncs:
1363         * doc/fcfreetype.fncs:
1364         * doc/fcinit.fncs:
1365         * doc/fcmatrix.fncs:
1366         * doc/fcobjectset.fncs:
1367         * doc/fcobjecttype.fncs:
1368         * doc/fcpattern.fncs:
1369         * doc/fcstring.fncs:
1370         * doc/fcstrset.fncs:
1371         * doc/fcvalue.fncs:
1372         * doc/fontconfig-devel.sgml:
1373         * doc/fontconfig-user.sgml:
1374         * doc/func.sgml:
1375         * doc/version.sgml.in:
1376         * fc-cache/Makefile.am:
1377         * fc-cache/fc-cache.c:
1378         * fc-glyphname/Makefile.am:
1379         * fc-glyphname/fc-glyphname.c:
1380         * fc-glyphname/fcglyphname.tmpl.h:
1381         * fc-lang/Makefile.am:
1382         * fc-lang/aa.orth:
1383         * fc-lang/ab.orth:
1384         * fc-lang/af.orth:
1385         * fc-lang/am.orth:
1386         * fc-lang/ar.orth:
1387         * fc-lang/ast.orth:
1388         * fc-lang/ava.orth:
1389         * fc-lang/ay.orth:
1390         * fc-lang/az.orth:
1391         * fc-lang/az_ir.orth:
1392         * fc-lang/ba.orth:
1393         * fc-lang/bam.orth:
1394         * fc-lang/be.orth:
1395         * fc-lang/bg.orth:
1396         * fc-lang/bh.orth:
1397         * fc-lang/bho.orth:
1398         * fc-lang/bi.orth:
1399         * fc-lang/bin.orth:
1400         * fc-lang/bn.orth:
1401         * fc-lang/bo.orth:
1402         * fc-lang/br.orth:
1403         * fc-lang/bs.orth:
1404         * fc-lang/bua.orth:
1405         * fc-lang/ca.orth:
1406         * fc-lang/ce.orth:
1407         * fc-lang/ch.orth:
1408         * fc-lang/chm.orth:
1409         * fc-lang/chr.orth:
1410         * fc-lang/co.orth:
1411         * fc-lang/cs.orth:
1412         * fc-lang/cu.orth:
1413         * fc-lang/cv.orth:
1414         * fc-lang/cy.orth:
1415         * fc-lang/da.orth:
1416         * fc-lang/de.orth:
1417         * fc-lang/dz.orth:
1418         * fc-lang/el.orth:
1419         * fc-lang/en.orth:
1420         * fc-lang/eo.orth:
1421         * fc-lang/es.orth:
1422         * fc-lang/et.orth:
1423         * fc-lang/eu.orth:
1424         * fc-lang/fa.orth:
1425         * fc-lang/fc-lang.c:
1426         * fc-lang/fc-lang.man:
1427         * fc-lang/fclang.tmpl.h:
1428         * fc-lang/fi.orth:
1429         * fc-lang/fj.orth:
1430         * fc-lang/fo.orth:
1431         * fc-lang/fr.orth:
1432         * fc-lang/ful.orth:
1433         * fc-lang/fur.orth:
1434         * fc-lang/fy.orth:
1435         * fc-lang/ga.orth:
1436         * fc-lang/gd.orth:
1437         * fc-lang/gez.orth:
1438         * fc-lang/gl.orth:
1439         * fc-lang/gn.orth:
1440         * fc-lang/gu.orth:
1441         * fc-lang/gv.orth:
1442         * fc-lang/ha.orth:
1443         * fc-lang/haw.orth:
1444         * fc-lang/he.orth:
1445         * fc-lang/hi.orth:
1446         * fc-lang/ho.orth:
1447         * fc-lang/hr.orth:
1448         * fc-lang/hu.orth:
1449         * fc-lang/hy.orth:
1450         * fc-lang/ia.orth:
1451         * fc-lang/ibo.orth:
1452         * fc-lang/id.orth:
1453         * fc-lang/ie.orth:
1454         * fc-lang/ik.orth:
1455         * fc-lang/io.orth:
1456         * fc-lang/is.orth:
1457         * fc-lang/iso639-2:
1458         * fc-lang/it.orth:
1459         * fc-lang/iu.orth:
1460         * fc-lang/ja.orth:
1461         * fc-lang/ka.orth:
1462         * fc-lang/kaa.orth:
1463         * fc-lang/ki.orth:
1464         * fc-lang/kk.orth:
1465         * fc-lang/kl.orth:
1466         * fc-lang/km.orth:
1467         * fc-lang/kn.orth:
1468         * fc-lang/ko.orth:
1469         * fc-lang/kok.orth:
1470         * fc-lang/ks.orth:
1471         * fc-lang/ku.orth:
1472         * fc-lang/ku_ir.orth:
1473         * fc-lang/kum.orth:
1474         * fc-lang/kv.orth:
1475         * fc-lang/kw.orth:
1476         * fc-lang/ky.orth:
1477         * fc-lang/la.orth:
1478         * fc-lang/lb.orth:
1479         * fc-lang/lez.orth:
1480         * fc-lang/lo.orth:
1481         * fc-lang/lt.orth:
1482         * fc-lang/lv.orth:
1483         * fc-lang/mg.orth:
1484         * fc-lang/mh.orth:
1485         * fc-lang/mi.orth:
1486         * fc-lang/mk.orth:
1487         * fc-lang/ml.orth:
1488         * fc-lang/mn.orth:
1489         * fc-lang/mo.orth:
1490         * fc-lang/mr.orth:
1491         * fc-lang/mt.orth:
1492         * fc-lang/my.orth:
1493         * fc-lang/nb.orth:
1494         * fc-lang/nds.orth:
1495         * fc-lang/ne.orth:
1496         * fc-lang/nl.orth:
1497         * fc-lang/nn.orth:
1498         * fc-lang/no.orth:
1499         * fc-lang/ny.orth:
1500         * fc-lang/oc.orth:
1501         * fc-lang/om.orth:
1502         * fc-lang/or.orth:
1503         * fc-lang/os.orth:
1504         * fc-lang/pl.orth:
1505         * fc-lang/ps_af.orth:
1506         * fc-lang/ps_pk.orth:
1507         * fc-lang/pt.orth:
1508         * fc-lang/rm.orth:
1509         * fc-lang/ro.orth:
1510         * fc-lang/ru.orth:
1511         * fc-lang/sa.orth:
1512         * fc-lang/sah.orth:
1513         * fc-lang/sco.orth:
1514         * fc-lang/se.orth:
1515         * fc-lang/sel.orth:
1516         * fc-lang/sh.orth:
1517         * fc-lang/si.orth:
1518         * fc-lang/sk.orth:
1519         * fc-lang/sl.orth:
1520         * fc-lang/sm.orth:
1521         * fc-lang/sma.orth:
1522         * fc-lang/smj.orth:
1523         * fc-lang/smn.orth:
1524         * fc-lang/sms.orth:
1525         * fc-lang/so.orth:
1526         * fc-lang/sq.orth:
1527         * fc-lang/sr.orth:
1528         * fc-lang/sv.orth:
1529         * fc-lang/sw.orth:
1530         * fc-lang/syr.orth:
1531         * fc-lang/ta.orth:
1532         * fc-lang/te.orth:
1533         * fc-lang/tg.orth:
1534         * fc-lang/th.orth:
1535         * fc-lang/ti_er.orth:
1536         * fc-lang/ti_et.orth:
1537         * fc-lang/tig.orth:
1538         * fc-lang/tk.orth:
1539         * fc-lang/tl.orth:
1540         * fc-lang/tn.orth:
1541         * fc-lang/to.orth:
1542         * fc-lang/tr.orth:
1543         * fc-lang/ts.orth:
1544         * fc-lang/tt.orth:
1545         * fc-lang/tw.orth:
1546         * fc-lang/tyv.orth:
1547         * fc-lang/ug.orth:
1548         * fc-lang/uk.orth:
1549         * fc-lang/ur.orth:
1550         * fc-lang/uz.orth:
1551         * fc-lang/ven.orth:
1552         * fc-lang/vi.orth:
1553         * fc-lang/vo.orth:
1554         * fc-lang/vot.orth:
1555         * fc-lang/wa.orth:
1556         * fc-lang/wen.orth:
1557         * fc-lang/wo.orth:
1558         * fc-lang/xh.orth:
1559         * fc-lang/yap.orth:
1560         * fc-lang/yi.orth:
1561         * fc-lang/yo.orth:
1562         * fc-lang/zh_cn.orth:
1563         * fc-lang/zh_hk.orth:
1564         * fc-lang/zh_mo.orth:
1565         * fc-lang/zh_sg.orth:
1566         * fc-lang/zh_tw.orth:
1567         * fc-lang/zu.orth:
1568         * fc-list/Makefile.am:
1569         * fc-list/fc-list.c:
1570         * fc-match/Makefile.am:
1571         * fc-match/fc-match.1:
1572         * fc-match/fc-match.c:
1573         * fontconfig/fcfreetype.h:
1574         * fontconfig/fcprivate.h:
1575         * fontconfig/fontconfig.h:
1576         * src/fcatomic.c:
1577         * src/fcblanks.c:
1578         * src/fccache.c:
1579         * src/fccfg.c:
1580         * src/fccharset.c:
1581         * src/fcdbg.c:
1582         * src/fcdefault.c:
1583         * src/fcdir.c:
1584         * src/fcfreetype.c:
1585         * src/fcfs.c:
1586         * src/fcinit.c:
1587         * src/fcint.h:
1588         * src/fclang.c:
1589         * src/fclist.c:
1590         * src/fcmatch.c:
1591         * src/fcmatrix.c:
1592         * src/fcname.c:
1593         * src/fcpat.c:
1594         * src/fcstr.c:
1595         * src/fcxml.c:
1596         Change files from ISO-Latin-1 to UTF-8
1597
1598 2004-12-04  Keith Packard  <keithp@keithp.com>
1599
1600         * INSTALL:
1601         Update links to new freedesktop.org locations
1602         * Makefile.am:
1603         Add uninstall-local to get rid of fonts.conf and local.conf if they
1604         match the distributed versions.  Fixes 'make distcheck'
1605
1606 2004-12-04  Keith Packard  <keithp@keithp.com>
1607
1608         * README:
1609         * configure.in:
1610         * fontconfig/fontconfig.h:
1611         Updates for version 2.2.97
1612
1613 2004-12-04  Owen Taylor  <otaylor@redhat.com>
1614
1615         reviewed by: Keith Packard  <keithp@keithp.com>
1616
1617         * fc-cache/fc-cache.c: (main):
1618         Sleep for two seconds before exiting to make sure timestamps
1619         for future changes have distinct mod times in the file system.
1620         Bug #1982.
1621         * fc-lang/pa.orth:
1622         Add Punjabi orthography.  Bug #1671.
1623
1624 2004-12-04  Keith Packard  <keithp@keithp.com>
1625
1626         * fonts.conf.in:
1627         Just remove the FC_FONTDATE -- it has locale issues and
1628         annoys redhat multi-arch installs.  Now that all X fonts are
1629         included without prejudice, the chances of the date being at
1630         all interesting are rather limited.  Bug #505.
1631         * src/Makefile.am:
1632         Add copyright and license
1633
1634 2004-12-04  Keith Packard  <keithp@keithp.com>
1635
1636         * configure.in:
1637         Change default set of fonts to include all of
1638         /usr/X11R6/lib/X11/fonts (or wherever the X fonts are located).
1639         * doc/fontconfig-user.sgml:
1640         Document new <include>directory-name</include> semantics
1641         * fonts.conf.in:
1642         add <include ignore_missing="yes">conf.d</include>
1643         * local.conf:
1644         Add selectfont to ignore bitmap fonts, add comment for
1645         selectfont which accepts bitmap fonts.
1646         * src/fcdir.c:
1647         * src/fcint.h:
1648         * src/fcxml.c: (FcConfigParseAndLoadDir), (FcConfigParseAndLoad):
1649         Allow <include> configuration elements to reference directories.
1650         Parse and load all files of the form [0-9]* in sorted order.
1651
1652 2004-12-04  Keith Packard  <keithp@keithp.com>
1653
1654         * autogen.sh:
1655         Report command line for $srcdir/configure accurately.
1656         Bug #212.
1657
1658 2004-12-04  Keith Packard  <keithp@keithp.com>
1659
1660         * src/fcfreetype.c: (FcFreeTypeQuery):
1661         Check for non-empty face->family_name and face->style_name
1662         before using those for the font.  Empty names match everything.
1663         Bug #210.
1664
1665 2004-12-04  Keith Packard  <keithp@keithp.com>
1666
1667         * configure.in:
1668         * fontconfig/fontconfig.h:
1669         * src/fcfreetype.c: (FcFreeTypeQuery):
1670         * src/fcname.c:
1671         Create FC_FONTFORMAT from FT_Get_X11_Font_Format function where
1672         available.  This provides font file format information (BDF, Type 1,
1673         PCF, TrueType) for each font.  Closes #109.
1674
1675 2004-12-04  Daniel Glassey <danglassey@ntlworld.com>
1676
1677         reviewed by: Keith Packard  <keithp@keithp.com>
1678
1679         * doc/fontconfig-user.sgml:
1680         Fix typo.
1681         
1682         * fontconfig/fontconfig.h:
1683         * src/fcfreetype.c: (FcFreeTypeQuery), (addtag), (compareulong),
1684         (GetScriptTags), (FcFontCapabilities):
1685         * src/fcname.c:
1686         Add detection for font capabilities (bug #105)
1687
1688 2004-12-04  Keith Packard  <keithp@keithp.com>
1689
1690         * Makefile.am:
1691         Move existing fonts.conf to fonts.conf.bak
1692         
1693         * configure.in:
1694         Add detection of iconv
1695         
1696         * doc/fcpattern.fncs:
1697         * doc/fontconfig-devel.sgml:
1698         * doc/fontconfig-user.sgml:
1699         * fonts.dtd:
1700         Document new selectfont elements
1701         
1702         * fc-lang/nb.orth:
1703         Switch to UTF-8 in comment
1704         
1705         * fontconfig/fontconfig.h:
1706         * src/fcname.c:
1707         Add fullname, and family/style/fullname language entries
1708         
1709         * src/fccache.c: (FcCacheFontSetAdd):
1710         * src/fcdir.c: (FcFileScanConfig):
1711         Respect selectfont/*/glob
1712         
1713         * src/fcint.h:
1714         * src/fccfg.c: (FcConfigCreate), (FcConfigDestroy),
1715         (FcConfigCompareValue), (FcConfigPatternsAdd),
1716         (FcConfigPatternsMatch), (FcConfigAcceptFont):
1717         * src/fcxml.c: (FcElementMap), (FcVStackDestroy),
1718         (FcVStackPushPattern), (FcPopExpr), (FcParseAcceptRejectFont),
1719         (FcPopValue), (FcParsePatelt), (FcParsePattern), (FcEndElement):
1720         Add support for selectfont
1721         
1722         * src/fcfreetype.c: (FcSfntNameTranscode), (FcSfntNameLanguage),
1723         (FcStringInPatternElement), (FcFreeTypeQuery):
1724         Add multi-lingual family/style/fullname support
1725         
1726         * src/fclist.c: (FcListPatternMatchAny):
1727         Expose FcListPatternMatchAny (which selectfont/*/pattern uses)
1728         
1729         * src/fcpat.c: (FcPatternRemove), (FcPatternAppend),
1730         (FcObjectStaticName):
1731         Add new FcPatternRemove/FcPatternAppend.
1732         FcObjectStaticName stores computed pattern element names which
1733         are required to be static.
1734         
1735 2004-09-09 "NAKAMURA Ken'ichi" <nakamura@sbp.fp.a.u-tokyo.ac.jp>
1736
1737         reviewed by: keithp
1738
1739         * Makefile.am:
1740         Remove spurious / after $(DESTDIR)
1741
1742 2004-06-30  Keith Packard  <keithp@keithp.com>
1743
1744         * README:
1745         * configure.in:
1746         * fontconfig/fontconfig.h:
1747         Update for 2.2.96
1748
1749 2004-06-30  Keith Packard  <keithp@keithp.com>
1750
1751         Provided by: Lubos Lunak <l.lunak@suse.cz>
1752
1753         * src/fccfg.c: (FcConfigUptoDate):
1754         However FcConfigUptoDate() doesn't seem to work. See the attached
1755         patch.  First there's an obvious misplaced parenthesis making it
1756         return always false, and second, even this call fails to detect font
1757         changes (e.g.  adding a new font to 
1758         /usr/X11R6/lib/X11/fonts/truetype). The patch should fix that as
1759         well. The problem seems to be triggered by my fonts.conf specifying
1760         only /usr/X11R6/lib/X11/fonts , and therefore config->configDirs
1761         doesn't include subdirs, unlike config->fontDirs.
1762
1763 2004-06-03  Keith Packard  <keithp@keithp.com>
1764
1765         * fontconfig/fontconfig.h:
1766         Remove comma at end of FcResult enum definition.
1767
1768 2004-05-29  Keith Packard  <keithp@keithp.com>
1769
1770         * INSTALL:
1771         Add steps to md5sum release
1772
1773 2004-05-29  Keith Packard  <keithp@keithp.com>
1774
1775         * README:
1776         * configure.in:
1777         * fontconfig/fontconfig.h:
1778         Update for 2.2.95
1779
1780 2004-05-29  Keith Packard  <keithp@keithp.com>
1781
1782         * fontconfig/fontconfig.h:
1783         * src/fcmatch.c: (FcFontSetMatch):
1784         Add FcResultOutOfMemory to provide an accurate error when
1785         FcFontSetMatch fails in this way
1786         
1787         * src/fcfreetype.c:
1788         Make #warning about lacking various FreeType features indicate
1789         which version those features appeared so users know how to
1790         fix the problem (Thanks to Anton Tropashko)
1791
1792 2004-05-05  Keith Packard  <keithp@keithp.com>
1793
1794         * src/fcfreetype.c: (FcFreeTypeCharSetAndSpacing):
1795         Replace MIN/MAX/ABS macros which happen to have come
1796         from FreeType with fontconfig-specific ones (FC_*)
1797
1798 2004-04-23  Keith Packard  <keithp@keithp.com>
1799
1800         * INSTALL:
1801         Extend release preparation instructions to include
1802         notification and distribution steps
1803
1804 2004-04-23  Keith Packard  <keithp@keithp.com>
1805
1806         * README:
1807         * configure.in:
1808         * fontconfig/fontconfig.h:
1809         Update to 2.2.94 (2.2.93 shipped with broken libtool bits)
1810
1811 2004-04-23  Keith Packard  <keithp@keithp.com>
1812
1813         * .cvsignore:
1814         Ignore a few more autotool files
1815
1816 2004-04-14  Keith Packard  <keithp@keithp.com>
1817
1818         * INSTALL:
1819         Add instructions for doing a release
1820         
1821         * fontconfig.spec.in:
1822         clean up .spec file; perhaps this will be useful to somebody...
1823
1824         * README:
1825         * configure.in:
1826         * fontconfig/fontconfig.h:
1827         Update to 2.2.93
1828         
1829         * fc-lang/fc-lang.c:
1830         Make 'scanopen' static so GCC doesn't whine about lacking prototype
1831         
1832         * fc-glyphname/Makefile.am:
1833         * fc-lang/Makefile.am:
1834         * fc-list/Makefile.am:
1835         * fc-match/Makefile.am:
1836         * src/Makefile.am:
1837         Add WARN_CFLAGS to pass -W flags for GCC systems
1838         
1839         * src/fcfreetype.c: (FcNoticeFoundry), (FcVendorMatch),
1840         (FcVendorFoundry), (FcGetPixelSize), (FcFreeTypeQuery):
1841         Change various char types around to match across
1842         function calls.
1843         Fixed bug in using available_sizes[i].height which 
1844         is in pixels, not 64ths of a pixel.
1845
1846 2004-03-06  Keith Packard  <keithp@keithp.com>
1847
1848         * src/fcfreetype.c: (FcFreeTypeQuery):
1849         Force FC_FOUNDRY and FC_WIDTH to always be set so that
1850         matches looking for explicit values prefer exact matches
1851
1852 2004-03-02  Keith Packard  <keithp@keithp.com>
1853
1854         Supplied by: mfabian@suse.de (Mike FABIAN)
1855
1856         * src/fcfreetype.c: (FcFreeTypeQuery):
1857         Bug #260 fc-cache generates wrong spacing values for bitmap fonts
1858         Was using (strcmp (a,b)) instead of (!strcmp(a,b)).
1859
1860 2004-02-21  Manish Singh  <yosh@gimp.org>
1861
1862         * fc-glyphname/fc-glyphname.c: (main):
1863         Cast strlen to int for printf, so we're 64-bit clean.
1864
1865 2004-02-11  Keith Packard  <keithp@keithp.com>
1866
1867         * configure.in:
1868         * src/fcfreetype.c: (FcGetPixelSize):
1869         Ok, so I messed up the test for y_ppem.  Let's see if I
1870         got it right this time.
1871
1872 2004-02-10  Keith Packard  <keithp@keithp.com>
1873
1874         * configure.in:
1875         * src/fcfreetype.c: (FcGetPixelSize):
1876         Pre-2.1.5 versions of FreeType didn't include y_ppem in the
1877         FT_Bitmap_Size record.  Add a configure.in test for this
1878         and change the code accordingly (using height instead).
1879
1880 2004-02-06  Keith Packard  <keithp@keithp.com>
1881
1882         * fc-lang/nds.orth:
1883         Add Low Saxon orthography 
1884                 (Kenneth Rohde Christiansen <kenneth@gnu.org>)
1885                 
1886         * src/fccfg.c: (FcConfigNewestFile):
1887         Oops.  Left 'newest.set' unset, which would miscompute
1888         the newest file
1889         
1890         * src/fcfreetype.c: (FcGetPixelSize), (FcFreeTypeQuery),
1891         (FcFreeTypeCheckGlyph):
1892         Add FcGetPixelSize to extract correct pixel size from bdf/pcf
1893         font properties (which report the wrong value in current FreeType)
1894
1895         Don't attempt to check for empty glyphs in non-scalable fonts; they
1896         have no outlines...
1897
1898 2004-02-01  Tor Lillqvist  <tml@iki.fi>
1899
1900         * src/fccfg.c (FcConfigCreate): fontconfig, at least as used by
1901         GIMP and/or PangoFT2 on Windows, crashes when trying to save the
1902         cache if config->cache is NULL, which happens if FcConfigHome() is
1903         NULL. Guard against that by using the temp folder in that case.
1904
1905 2004-01-03  Roozbeh Pournader  <roozbeh@sharif.edu>
1906
1907         * fc-lang/az_ir.orth:
1908         * fc-lang/ku_ir.orth:
1909         * fc-lang/ps_af.orth:
1910         * fc-lang/ps_pk.orth:
1911         Added orthographies for Iranian Azerbaijani and Kurdish, and Pashto
1912         (Afghan and Pakistani).
1913         * fc-lang/ur.orth:
1914         Updated Urdu orthography with real data.
1915
1916 2003-12-11  Carl Worth  <cworth@east.isi.edu>
1917
1918         * fc-list/Makefile.am (man_MANS): Move man_MANS into the 'if
1919         USEDOCBOOK' block.
1920
1921         * fc-cache/Makefile.am (man_MANS): Move man_MANS into the 'if
1922         USEDOCBOOK' block.
1923         (all-local): Remove excessive whitespace.
1924
1925         * autogen.sh: Add 'set -e' to abort when any program fails,
1926         (avoids printing of 'now type make' after configure aborts).
1927
1928 2003-11-17   Eric Christopherson  <rakko@charter.net>
1929
1930         reviewed by: Keith Packard  <keithp@keithp.com>
1931
1932         * doc/Makefile.am:
1933         * fontconfig/fcfreetype.h:
1934         * src/fcfreetype.c:
1935         Switch to FreeType 2.1.7 style includes.  Bug #150.
1936
1937 2003-11-16  Noah Levitt  <nlevitt@columbia.edu>
1938
1939         * fc-list/fc-list.sgml: Add some example usages.
1940
1941 2003-11-10  Roozbeh Pournader  <roozbeh@sharif.edu>
1942
1943         * src/fcxml.c:
1944         Fixed a bug "FcStrtod" in handling some cases with two-byte decimal
1945         separators.
1946
1947 2003-10-27  Keith Packard  <keith@keithp.com>
1948
1949         * configure.in:
1950         * fontconfig/fontconfig.h:
1951         Update to version 2.2.92
1952
1953 2003-10-27  Keith Packard  <keithp@keithp.com>
1954
1955         * Makefile.am:
1956         * configure.in:
1957         * doc/Makefile.am:
1958         * fc-cache/Makefile.am:
1959         * fc-glyphname/Makefile.am:
1960         * fc-lang/Makefile.am:
1961         * fc-list/Makefile.am:
1962         * fc-match/Makefile.am:
1963         * test/Makefile.am:
1964         * test/run-test.sh:
1965         Yet more cleanups to finish getting 'make distcheck' working
1966         This has been tested to ensure that it even works from a _build
1967         directory.
1968
1969 2003-10-26  Keith Packard  <keithp@keithp.com>
1970
1971         * configure.in:
1972         * doc/Makefile.am:
1973         * fc-cache/Makefile.am:
1974         * fc-glyphname/Makefile.am:
1975         * fc-lang/Makefile.am:
1976         * fc-lang/fc-lang.c: (scanopen), (scan), (main):
1977         * fc-list/Makefile.am:
1978         * fc-match/Makefile.am:
1979         Attempts to fix 'make distcheck' work.  Things are
1980         progressing pretty well, but there are still failures
1981         long into the process dealing with docs (as always).
1982         
1983         The big changes here are mostly to make $(srcdir) != "."
1984         work correctly, fixing the docbook related sections and
1985         fc-lang were particularily tricky.  Docbook refuses to load
1986         system entities from anywhere other than where the original .sgml
1987         file was located, so no luck looking in "." for the
1988         configure-generated version.sgml and confdir.sgml files.
1989
1990         fc-lang needed help finding .orth files; added a -d option
1991         to set the directory as the least evil of many options.
1992
1993         Now to go use a faster machine and try and wring out the last
1994         issues.
1995
1996 2003-10-26  Keith Packard  <keithp@keithp.com>
1997
1998         Tag version 2.2.91
1999
2000 2003-10-26  Keith Packard  <keithp@keithp.com>
2001
2002         * doc/Makefile.am:
2003         Include confdir.sgml.in in EXTRA_DIST
2004
2005 2003-10-09  Josselin Mouette  <joss@debian.org>
2006
2007         * fc-cache/fc-cache.sgml fc-cache/Makefile.am:
2008         * fc-list/fc-list.sgml fc-list/Makefile.am:
2009           Replace fc-cache and fc-list manpages with more detailed, SGML
2010           versions.
2011
2012 2003-09-23  Owen Taylor <otaylor@redhat.com>
2013
2014         * fontconfig/fontconfig.h  src/fcdefault.c (FcDefaultSubstitute)
2015         src/fcname.c: Add a FC_HINT_STYLE key for patterns, with
2016         possible values HINT_NONE/HINT_SLIGHT/HINT_MEDIUM/HINT_FULL.
2017         (Bug #117)
2018
2019 2003-09-23  Owen Taylor <otaylor@redhat.com>
2020
2021         * fc-lang/ka.orth: Remove Georgian capitals, they
2022         aren't used for normal writing. (Bug #116)
2023
2024 2003-09-06  Noah Levitt  <nlevitt@columbia.edu>
2025
2026         * doc/fontconfig-devel.sgml:
2027         * doc/fontconfig-user.sgml:
2028         * fontconfig/fontconfig.h:
2029         * src/fcname.c:
2030         * src/fcfreetype.c (FcFreeTypeCharSetAndSpacing): Add new spacing
2031         value FC_DUAL (dual-width, as some CJK fonts). (bug #111)
2032
2033         * src/fcfreetype.c (FcFreeTypeCharSetAndSpacing): When checking for
2034         monospace and dual-width fonts, allow roughly a 3% variance in the
2035         advances.
2036
2037 2003-08-31  Manish Singh  <yosh@gimp.org>
2038
2039         * src/fccfg.c (FcConfigAppFontClear): Support passing NULL to
2040         use default config.
2041
2042 2003-08-15  Carl Worth  <cworth@isi.edu>
2043
2044         * src/fcxml.c (FcEditDestroy): Fix leak of FcEdit.
2045         (FcPopExpr): Add comment about unhandled FcVStackGlob case.
2046
2047         * src/fcpat.c (FcValueListEntDestroy): New function to support
2048         FcFini memory cleanup. Some statistics are not kept in
2049         synch. here.
2050         (FcValueListFreeze): Move hashTable outside this function so it
2051         can be accessed by FcValueListThawAll.
2052         (FcValueListThawAll): New function complements FcValueListFreeze.
2053         (FcPatternBaseFreeze): Move hashTable outside this function so it
2054         can be accessed by FcPatternBaseThawAll.
2055         (FcPatternBaseThawAll): New function complements
2056         FcPatternBaseFreeze.
2057         (FcPatternThawAll): New function complements FcPatternFreeze.
2058
2059         * src/fcinit.c (FcFini): Add new FcFini to cleanup everything.
2060
2061         * src/fccharset.c (FcCharLeafEntCreate): Save pointers to all
2062         allocated FcCharLeafEnt "blocks" so they can be freed later.
2063         (FcCharSetFreezeLeaf): Move hashTable outside this function so it
2064         can be accessed by FcCharSetThawAllLeaf.
2065         (FcCharSetThawAllLeaf): New function complements FcCharSetFreezeLeaf.
2066         (FcCharSetFreezeBase): Move hashTable outside this function so it
2067         can be accessed by FcCharSetThawAll.
2068         (FcCharSetThawAll): New function complements FcCharSetFreeze.
2069
2070         * src/fccfg.c (FcSubstDestroy): Fix leak of outer FcSubst.
2071         (FcConfigDestroy): Fic leak of FcBlanks.
2072
2073         * fc-list/fc-list.c (main): Fix leak of FcObjectSet.
2074         (main): Add call to FcFini when finished.
2075
2076         * fc-glyphname/fc-glyphname.c: Mark several local functions as
2077         static. Add prototypes.
2078
2079         * doc/fcinit.fncs: Add documentation for FcFini function.
2080
2081         * doc/edit-sgml.c: Mark several local functions as static. Add
2082         prototypes.
2083
2084         * doc/Makefile.am (DOC_MODULE): Fix "suspicious" lines.
2085
2086 2003-06-15  Tor Lillqvist  <tml@iki.fi>
2087
2088         * test/run-test.sh (FONTCONFIG_FILE): Remove CRs from the out file
2089         before comparing (needed on Windows).
2090
2091         * src/Makefile.am (install-libtool-import-lib): Fix cut&paste error.
2092
2093 2003-06-13  Tor Lillqvist  <tml@iki.fi>
2094
2095         * fontconfig-zip.in (DEVZIP): Add share/doc directory. Add Fc*.3
2096         man pages.
2097
2098         * configure.in: Set FC_DEFAULT_FONTS on Win32 to the
2099         WINDOWSFONTDIR token.
2100
2101         * src/fontconfig.def.in: Move the LIBRARY and VERSION lines to the
2102         end, not to confuse libtool, which expects the EXPORTS line to be
2103         the first. Add FcConfigEnableHome.
2104
2105         * src/fccfg.c: Check also for DLL_EXPORT as indication of being
2106         built as a DLL on Win32.
2107
2108 2003-06-09  Keith Packard <keithp@keithp.com>
2109
2110         * Tag version 2.2.90
2111
2112 2003-06-09  Keith Packard <keithp@keithp.com>
2113
2114         * Optimization in FcLangSetIndex was broken, occasionally
2115           returning a pointer to the wrong location on miss
2116
2117         * Add fc-match to test font matching from the command line.
2118
2119 2003-05-31  Keith Packard <keithp@keithp.com>
2120
2121         * (Bug 85) add support for culmus fonts
2122         * (Bug 87) Automake 1.4 doesn't do man_MAN1 correctly
2123         * (Bug 88) Fix usage info on non-long option systems (Tim Mooney)
2124
2125 2003-05-28  James Su <suzhe@turbolinux.com.cn>
2126
2127         * Fix "contains" op for strings and langsets.
2128
2129 2003-05-17  Keith Packard <keithp@keithp.com>
2130
2131         * Fix build error with BDF prop local.  Free langset after query
2132
2133 2003-05-14  Keith Packard <keithp@keithp.com>
2134
2135         * Extract spacing from XLFD atom
2136
2137 2003-05-12  Juliusz Chroboczek <jch@pps.jussieu.fr>
2138
2139         * Reinstate SETWIDTH_NAME parsing for legacy fonts, 
2140           disappeared in 1.30.
2141
2142         * Generate FC_SIZE and FC_DPI for legacy bitmap fonts
2143
2144 2003-05-12  Keith Packard <keithp@keithp.com>
2145
2146         * Use FcIsWidth to share code
2147
2148         * Set FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH when scanning fonts to avoid
2149           misclassifying some Han fonts as monospaced.
2150           
2151 2003-05-07  Keith Packard <keithp@keithp.com>
2152
2153         * Add filename-based accept/reject to ammend available fonts.
2154
2155         * Change FT_ENCODING_ADOBE_CUSTOM to ft_encoding_adobe_custom for
2156           older FreeType releases.
2157
2158 2003-05-06  Keith Packard <keithp@keithp.com>
2159
2160         * Remove 0b82 and Tamil numbers from tamil 
2161           orthography (Jungshik Shin <jshin@mailaps.org>)
2162
2163 2003-05-04  Keith Packard <keithp@keithp.com>
2164
2165         + Map glyph names in fonts with adobe custom encoding to unicode
2166
2167 2003-05-02  Keith Packard <keithp@keithp.com>
2168
2169         * Add FC_WEIGHT_BOOK as weight 75
2170
2171 2003-04-30  Keith Packard <keithp@keithp.com>
2172
2173         * Typo in bitstream foundry name
2174
2175 2003-04-24  Keith Packard <keithp@keithp.com>
2176
2177         * Eliminate italic_angle check for PS fonts
2178
2179 2003-04-23  Noah Levitt <nlevitt@columbia.edu>
2180
2181         * Getting closer to fixing /etc/fonts hard-coding.
2182
2183 2003-04-22  Keith Packard <keithp@keithp.com>
2184
2185         * Update autogen.sh to work with newer automake versions
2186         * Handle pattern elements moving during multiple edits
2187
2188 2003-04-23  James Henstridge  <james@daa.com.au>
2189
2190         * doc/fontconfig-devel.sgml: close the <para> element.
2191
2192         * doc/fcpattern.fncs: close the <para> element.
2193
2194         * doc/func.sgml: close the <refsynopsisdiv> element.
2195
2196 2003-04-22  Keith Packard <keithp@keithp.com
2197
2198         * Update autogen.sh to work with newer automake versions
2199         * Handle pattern elements moving during multiple edits
2200
2201 2003-04-17  Colin Walters <walters@debian.org>
2202
2203         + Remove some unused variables, and initialize some other ones so
2204         gcc doesn't warn us.
2205
2206 2003-04-16  Keith Packard <keithp@keithp.com>
2207
2208         + tag version 2.1.94
2209
2210 2003-04-16  Keith Packard <keithp@keithp.com>
2211
2212         + add BDF property fetching support for foundry 
2213           (from Juliusz Chroboczek)
2214         + add BDF property fetching support for width
2215
2216 2003-04-11  Juliusz Chroboczek <jch@pps.jussieu.fr>
2217
2218         + Implemented foundry generation for Type 1 and TrueType
2219
2220 2003-04-11  Gerard Escalante <g2@magestudios.net>
2221
2222         + Retrieve information from Type1 FontInfo dictionaries
2223
2224 2003-04-07  Colin Walters <walters@verbum.org>
2225
2226         + src/Makefile.am: Fix dummy makefile target names when
2227         MS_LIB_AVAILABLE isn't set.
2228
2229 2003-03-22  Tor Lillqvist  <tml@iki.fi>
2230
2231         Changes for Windows:
2232           
2233         + On Windows with gcc (a.k.a. mingw) build as a DLL.
2234           
2235         + We don't want to hardcode the fonts.conf file location in the
2236           DLL, so we look up the DLL location at run-time in a DllMain()
2237           function. The fonts.conf location is deduced from that.
2238
2239         + The colon can't be used as path separator on Windows,
2240           semicolon is used instead. File path components can be separated
2241           with either slash or backslash. Absolute paths can also begin
2242           with a drive letter.
2243
2244         + Add internal function FcStrLastSlash that strrchr's the last
2245           slash, or backslash on Windows.
2246         
2247         + There is no link() on Windows. For atomicity checks, mkdir a
2248           lock directory instead.
2249           
2250         + In addition to HOME, also look for USERPROFILE.
2251
2252         + Recognize the special font directory token WINDOWSFONTDIR, to
2253           use the system's font directory.
2254           
2255         + Remove the fontconfig-def.cpp that was obsolete. Add
2256           fontconfig.def(.in), without internal functions.
2257           
2258         + Add a fontconfig-zip(.in) script, used to build a binary
2259           distribution.
2260
2261 Fri Mar  7 07:55:00 EST 2003    Mike A. Harris <mharris@redhat.com>
2262         + RPM specfile cleanups for 2.1.92: Removed man1/* and added man5/*
2263           to main package and man3/* to devel package
2264
2265         + Added missing defattr(-, root, root) to main RPM package
2266  
2267         + Added HTML and text development documentation to -devel subpackage
2268
2269 Wed Mar  5 05:08:00 EST 2003    Mike A. Harris <mharris@redhat.com>
2270         + Added back the configure macro options --disable-docs, otherwise
2271           fontconfig installs docs into /usr/share/doc/fontconfig (with no
2272           version number) unconditionally, causing RPM to fail the build due
2273           to _unpackaged_files_terminate_build.  We pick up the pregenerated
2274           docs with %doc already.
2275
2276 Wed Mar  5 04:26:20 EST 2003    Mike A. Harris <mharris@redhat.com>
2277         + Removed commented out rpm macro define at top of spec file,
2278           replacing it with a simple explanation, since rpm macros are
2279           expanded by rpm even in comments.
2280
2281         + Changed /usr/bin to _bindir in BuildRequires lines
2282
2283         + Cleaned up rpm postinstall script, and made fc-cache use _bindir
2284
2285         + Reorganized file manifest lists
2286
2287 Sun Mar  2 14:16:17 EST 2003    Owen Taylor <otaylor@redhat.com>
2288
2289         + fontconfig.spec.in: Improvements from Red Hat spec file.
2290
2291         + {fc-lang,fc-cache,fc-list}/Makefile.am: Add man pages.
2292
2293         + docs/*.sgml: SGML fixes.
2294
2295 Sat Mar  1 17:28:53 PST 2003    keithp
2296         + Ok, so the ChangeLog is a bit out of date
2297
2298         + Lots of bugs fixed; most are in bugzilla, the
2299           biggest problems were in cache management where
2300           Owen discovered the library would lose badly when
2301           combining fonts-cache and ~/.fonts-cache data
2302
2303         + Converted from autoconf to automake.  This after
2304           getting patches accepted into libtool to allow
2305           the '-version-number' argument which lets
2306           packages set version numbers explicitly rather
2307           than the roundabout libtool way
2308
2309         + Converted documentation to SGML using the docbook
2310           DTD.  Now .txt and .html documents are installed
2311           in /usr/share/doc/fontconfig and there's no
2312           man page.  Perhaps a man version can be written
2313           at some point.
2314
2315 Sat Aug 31 15:21:22 PDT 2002    keithp
2316         + Xrender and Xft had several bugs related to
2317           rendering manually placed or poly-face text
2318
2319         + Added more complete memory tracing in fontconfig
2320           Checked with (patched) mozilla and found no leaks
2321
2322         + Updated Latin orthographies by comparing those from
2323           evertype.com with those from eki.ee.  Tried to make
2324           sensible choices, including chars that occured in both
2325           and leaving some optional chars out that occured only
2326           in one.
2327
2328 Mon Aug 26 16:33:04 PDT 2002    keithp
2329         + Owen discovered that FcLangSetHasLang wasn't actually
2330           checking the language set.
2331
2332 Mon Aug 26 13:37:23 PDT 2002    keithp
2333         + Append a version number to cache filenames
2334
2335 Thu Aug 22 11:36:18 PDT 2002    keithp
2336
2337         + Add "contains" and "not_contains" operators and elements to
2338           font configuration
2339           
2340         + Changed semantics of eq operator for LangSets to check for
2341           FcLangEqual so that any match will do
2342         
2343         + FcFontList was using FcConfigCompareValue (...FcOpEqual) instead
2344           of FcValueEqual to check for identical values when inserting into
2345           the results.  This broke when the above semantic change was made,
2346           now it uses FcValueEqual which is "more correct" in any case.
2347
2348 Thu Aug 22 00:32:29 PDT 2002    keithp
2349
2350         + Reimplement FC_LANG as new datatype.  Lists of strings
2351           was consuming over a megabyte of memory for 401 fonts.
2352
2353         + Freeze patterns loaded from cache files.  This shares
2354           common value lists and common patterns which saves
2355           considerable memory.
2356
2357         + Change the denotation of 'constant' charsets to use special
2358           ref value instead of separate boolean.
2359
2360         + Clean up leak tracing stuff, found several unannoted alloc/free
2361           calls
2362
2363 Tue Aug 20 16:17:37 PDT 2002    keithp
2364
2365         + Fix memory leak when parsing matrices from XML
2366
2367 Mon Aug 19 11:57:27 PDT 2002    keithp
2368
2369         + Fix autoconf files to pass FONTCONFIG_PATH on
2370           compile line so that ${prefix} gets substituted
2371           correctly.
2372
2373         + Use getc_unlocked/putc_unlocked on systems that
2374           provide them to avoid damage done to stdio by posix
2375
2376         + Eliminate FC_PATTERN and FcTypePattern in favor of
2377           an extended api for FcConfigSubstitute which takes
2378           both the font and the pattern.
2379
2380         + Add 'sans serif' alias for 'sans-serif' as some apps
2381           can't handle hyphens in family names
2382
2383         + Eliminate pretense of support for libxml2
2384
2385         + Comment origins of Han orthographies
2386
2387 Tue Jul 30 18:37:09 PDT 2002    keithp
2388
2389         + Add binding property to edit element so that strong
2390           binding values may be inserted by the config file.
2391           The default remains weak.
2392
2393 Sun 28 Jul 04:16:55 PDT 2002    keithp
2394
2395         + Tagged release candidate 1 in the CVS tree and
2396           placed fcpackage.rc1.tar.gz for distribution
2397
2398 Thu Aug  1 08:55:08 PDT 2002    keithp
2399
2400         + Fixed autoconf builds to always specify install
2401           target files (for BSD).  Also fixed to
2402           define FONTCONFIG_PATH in config.h so that
2403           nonstandard installs will actually work.