1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
|
Fontconfig
Font configuration and customization library
Version 2.7.1
2009-07-27
Check INSTALL for compilation and installation instructions.
Report bugs to https://bugs.freedesktop.org in the fontconfig module.
2.7.1
Behdad Esfahbod (16):
git-tag -s again
Fix win32 build
Replace spaces with tabs in conf files
Remove unused ftglue code
Add Inconsolata to monospace config (#22710)
Fix leak with string VStack objects
Improve libtool version parsing (#22122)
Use GetSystemWindowsDirectory() instead of GetWindowsDirectory() (#22037)
Remove unused macros
Fix FcNameUnparseLangSet()
Fix doc syntax (#22902)
TT_MS_ID_UCS_4 is really UTF-16BE, not UTF-32
[doc] Add ~/fonts.conf.d to user docs
Hardcode /etc/fonts instead of @CONFDIR@ in docs (#22911)
Bump libtool versions that 2.7.0 (I forgot to do back then)
Update .gitignore
Karl Tomlinson (1):
Don't change the order of names unnecessarily (#20128)
2.7
Alexey Khoroshilov (1):
Use human-readable file names in the docs (bug #16278)
Behdad Esfahbod (119):
Avoid C99ism in Win32 code (#16651)
[doc] Fix inaccuracy in FcFontRenderPrepare docs (#16985)
When canonizing filenames, squash // and remove final / (#bug 16286)
Add orth file for Maithili mai.orth (#15821)
Replace RCS Id tags with the file name
[doc] Fix signatures of FcPatternGetFTFace and FcPatternGetLangSet (#16272)
Update Thai default families (#16223)
Add ~/.fonts.conf.d to default config (#17100)
[fc-match] Fix list of getopt options in --help
Update man pages
Add fc-query (#13019)
Implement fc-list --verbose (#13015)
[doc] Add const decorator for FcPatternDuplicate()
Add FcPatternFilter() (#13016)
[doc] Document that a zero rescanInterval disables automatic checks (#17103)
Get rid of $Id$ tags
[doc] Fix signature of FcConfigHome()
Fix docs re 'orig' argument of FcPatternBuild and family
Update sr.orth to actul subset of Cyrillic used by Serbian (#17208)
Add Sindhi .orth file. (#17140)
Add WenQuanYi fonts to default conf (#17262, from Mandriva)
Handle -h and --help according to GNU Coding Standards (#17104)
Document when config can be NULL (#17105)
Add FcConfigReference() (#17124)
Document how to free return value of FcNameUnparse()
Don't leak FcValues string loaded through fcxml.c (#17661)
Don't call FcPatternGetCharSet in FcSortWalk unless we need to (#17361)
Fix two more doc typos
[.gitignore] Update
Cleanup symlinks in "make uninstall" (bug #18885)
[fccache] Consistently use FcStat() over stat() (bug #18195)
Consistently use FcStat() over stat() in all places
Use __builtin_popcount() when available (bug #17592)
Fix compile with old FreeType that doesn't have FT_Select_Size() (bug #17498)
Implement fc-list --quiet ala grep (bug #17141)
[65-fonts-persian.conf] Set foundry in target=scan instead of target=font
Don't use identifier named complex
Explicitly chmod() directories (bug #18934)
Remove special-casing of FC_FILE in FcPatternPrint()
[.gitignore] Update
Implement FcPatternFormat and use it in cmdline tools (bug #17107)
Fix comparison of family names to ignore leading space properly
[fcmatch.c] Fix debug formatting
[fcmatch] Use larger multipliers to enforce order
[fcmatch] When matching, reserve score 0 for when elements don't exist
[fcmatch] Move FcFontSetMatch() functionality into FcFontSetMatchInternal()
[doc] Note that fontset returned by FcConfigGetFonts should not be modified
Make FcCharSetMerge() public
Don't use FcCharSetCopy in FcCharSetMerge
Oops. Fix usage output.
Revive FcConfigScan() (bug #17121)
Add fc-scan too that runs FcFileScan/FcDirScan
Oops, fix FcPatternFilter
[fc-match] Accept list of elements like fc-list (bug #13017)
Cleanup all manpage.* files
[fcmatch] Fix crash when no fonts are available.
[fcfreetype] Fix typo in GB2312 encoding name string (#19845)
Add ICONV_LIBS to fontconfig.pc.in (#19606)
[win32] Fix usage of GetFullPathName()
[win32] Expand "APPSHAREFONTDIR" to ../share/fonts relative to binary location
[win32] Do not remove leading '\\' such that network paths work
[fccache] Make sure the cache is current when reusing from open caches
Update Sinhala orthography (#19288)
[cache] After writing cache to file, update the internal copy to reflect this
Further update Sinhala orthography (#19288)
[fcformat] Add support for width modifiers
[fcformat] Refactor and restructure code for upcoming changes
[fcformat] Add support for subexpressions
[fcformat] Add element filtering and deletion
[fcformat] Add conditionals
[fcformat] Add simple converters
[fcformat] Implement 'cescape', 'shescape', and 'xmlescape' converters
[FcStrBuf] better handle malloc failure
[fcformat] Add value-count syntax
[fcformat] Implement 'delete', 'escape', and 'translate' filter functions
[fcformat] Start adding builtins
[fcformat] Refactor code to avoid malloc
[fcformat] Add support for builtin formats
[fcformat] Support indexing simple tags
[fcformat] Support 'default value' for simple tags
[fcformat] Implement array enumeration
[fclang] Implement FcLangSetGetLangs() (#18846)
[fcformat] Enumerate langsets like we do arrays of values
[fcformat] Add a 'pkgkit' builtin that prints tags for font packages
[fcformat] Add list of undocumented language features
[fc-lang] Continue parsing after an "include" (#20179)
Fix Fanti (fat) orth file (#20390)
Fix Makefile's to not create target file in case of failure
[fcstr.c] Embed a static 64-byte buffer in FcStrBuf
[fcstr,fcxml] Don't copy FcStrBuf contents when we would free it soon
[fcxml] Don't allocate attr array if there are no attributes
[fcxml] Embed 8 static FcPStack objects in FcConfigParse
[fcxml] Embed 64 static FcVStack objects in FcConfigParse
[fcxml.c] Embed a static 64-byte attr buffer in FcPStack
Call git tools using "git cmd" instead of "git-cmd" syntax
Replace 'KEITH PACKARD' with 'THE AUTHOR(S)' in license text in all files
[fcformat] Fix default-value handling
Document FcPatternFormat() format
[Makefile.am] Don't clean ChangeLog in distclean
Revert "[conf] Disable hinting when emboldening (#19904)" (#20599)
[fc-lang] Fix bug in country map generation
[fcstr] Remove unused variable
[fc-lang] Make LangSet representation in the cache files stable
[fc-cache] Remove obsolete sentence from man page
Detect TrueType Collections by checking the font data header
Mark matchers array const (#21935)
Use/prefer WWS family/style (name table id 21/22)
Simplify FcValueSave() semantics
Add XXX note about Unicode Plane 16
Always set *changed in FcCharsetMerge
[charset] Grow internal FcCharset arrays exponentially
Remove unused prototypes and function
[xml] Centralize FcExpr allocation
[xml] Mark more symbols static
[xml] Allocate FcExpr's in a pool in FcConfig
[xml] Intern more strings
Bug 22154 -- fontconfig.pc doesn't include libxml2 link flags
Fix distcheck
Remove keithp's GPG key id
Benjamin Close (1):
Remove build manpage logfile if it exists
Chris Wilson (1):
Reduce number of allocations during FcSortWalk().
Dan Nicholson (1):
Let make expand fc_cachedir/FC_CACHEDIR (bug #18675)
Harald Fernengel (1):
Don't use variables named 'bool' (bug #18851)
Harshula Jayasuriya (1):
Fix Sinhala coverage (bug #19288)
Karl Tomlinson (1):
Change FcCharSetMerge API
Mike FABIAN (1):
[conf] Disable hinting when emboldening (#19904)
Peter (1):
Make sure alias files are built first (bug 16464)
Rahul Bhalerao (1):
Add config for new Indic fonts (bug #17856)
Roozbeh Pournader (60):
Correct Sindhi orthography to use Arabic script (bug #17140)
Remove Sinhala characters not in modern use (bug #19288)
Add Filipino orth, alias Tagalog to Filipino (bug #19846)
Split Mongolian orth to Mongolia and China (bug #19847)
Fix doubly encoded UTF-8 in comments (bug #19848)
Change Turkmen orth from Cyrillic to Latin (bug #19849)
Rename Venda from "ven" to "ve" (bug #19852)
Rename "ku" to "ku_am", add "ku_iq" (bug #19853).
Add Kashubian (csb) orth file (bug #19866)
Add Malay (ms) orthography (bug #19867)
Add Kinyarwanda (rw) orthography (bug #19868)
Add Upper Sorbian (hsb) orthography (bug #19870)
Add Berber orthographies in Latin and Tifinagh scripts (bug #19881)
Renamed az to az_az (bug #19889)
Rename Igbo from "ibo" to "ig" (bug #19892)
Remove punctuation symbols from Asturian orthography (bug #19893)
Add Chhattisgarhi (hne) orthography (bug #19891)
Use newly added Cyrillic letters for Kurdish (bug #20049)
Add Kurdish in Turkey (ku_tr) orthography (bug #19891)
Add Aragonese (an) orthography (bug #19891)
Add Haitian Creole (ht) orthography (bug #19891)
Ad Ganda (lg) orthography (bug #19891)
Add Limburgan (li) orthography (bug #19891)
Add Sardinian (sc) orthography (bug #19891)
Add Sidamo (sid) and Wolaitta (wal) orthographies (bug #19891)
Fix Bengali (bn) and Assamese (as) orthographies (bug #22924)
Remove Euro Sign from all orthographies (bug #19865)
Add Ottoman Turkish (ota) orthography (bug #20114)
Divide Panjabi (pa) to that of Pakistan and India (bug #19890)
Add Blin (byn) orthography (bug #19891)
Add Papiamento (pap_aw, pap_an) orthographies (bug #19891)
Add Crimean Tatar (crh) orthography (bug #19891)
Switch Uzbek (uz) orthography to Latin (bug #19851)
Update Azerbaijani in Latin (az_az) to present usage (bug #20173)
Rename Avaric orthography from 'ava' to 'av' (bug #20174)
Rename Bambara orthography from 'bam' to 'bm' (bug #20175)
Rename Fulah orthography from 'ful' to 'ff' (bug #20177)
Change Kashmiri (ks) orthography to Arabic script (bug #20200)
Tighten Central Khmer (km) orthography (bug #20202)
Remove digits and symbols from some Indic orthographies (bug #20204)
Add Divehi (dv) orthography (bug #20207)
Extend Crimean Tatar (crh) orthography (bug #19891)
Update Serbo-Croatian (sh) orthography (bug #20368)
Add Ewe (ee) orthography (bug #20386)
Add Herero (hz) orthograhy (bug #20387)
Add Akan (ak) and Fanti (fat) orthographies (bug #20390)
Added Quechua (qu) orthography (bug #20392)
Add Sango (sg) orthography (bug #20393)
Add Tahitian (ty) orthography (bug #20391)
Add Navajo (nv) orthography (bug #20395)
Add Rundi (rn) orthography (bug #20398)
Add Zhuang (za) orthography (bug #20399)
Add orthographies for Oshiwambo languages (bug #20401)
Add Shona (sn) orthography (bug #20394)
Add Sichuan Yi (ii) orthography (bug #20402)
Add Javanese (jv) orthography (bug #20403)
Add Nauru (na) orthography (bug #20418)
Add Kanuri (kr) orthography (bug #20438)
Add Sundanese (su) orthography (bug #20440)
Reorganize Panjabi/Punjabi and Lahnda orthographies (bug #19890)
Serge van den Boom (1):
Correctly handle mmap() failure (#21062)
2.6
2.5.93 (2.6 RC3)
Alexey Khoroshilov (1):
Fix FcStrDirname documentation. (bug 16068)
Behdad Esfahbod (1):
Persian conf update. (bug 16066).
Evgeniy Stepanov (1):
Fix index/offset for 'decorative' matcher. Bug 15890.
Glen Low (1):
Fix Win32 build error: install tries to run fc-cache locally (bug 15928).
Keith Packard (8):
Call FcFini to make memory debugging easier
Fix a few memory tracking mistakes.
Add extended, caps, dunhill style mappings.
Freetype 2.3.5 (2007-jul-02) fixes indic font hinting. re-enable (bug 15822)
Add a copy of dolt.m4 to acinclude.m4.
Libs.private needs freetype libraries
Oops. Fix for bug 15928 used wrong path for installed fc-cache.
Ignore empty <dir></dir> elements
Neskie Manuel (1):
Add Secwepemctsin Orthography. Bug 15996.
Sayamindu Dasgupta (1):
FcConfigUptoDate breaks if directory mtime is in the future. Bug 14424.
2.5.92 (2.6 RC2)
Carlo Bramini (1):
Add FreeType-dependent functions to fontconfig.def file. (bug 15415)
Changwoo Ryu (1):
Korean font in the default config - replacing baekmuk with un (bug 13569)
Dennis Schridde (1):
Proper config path for static libraries in win32
Eric Anholt (1):
Fix build with !ENABLE_DOCS and no built manpages.
Frederic Crozat (1):
Merge some of Mandriva configuration into upstream configuration. Bug 13247
Keith Packard (11):
Use DOLT if available
Work around for bitmap-only TrueType fonts that are missing the glyf table.
Remove size and dpi values from bitmap fonts. Bug 8765.
Add some sample cursive and fantasy families.
Add --all flag to fc-match to show the untrimmed list. Bug 13018.
Remove doltcompile in distclean
Use of ":=" in src/Makefile.am is unportable (bug 14420)
Make fc-match behave better when style is unknown (bug 15332)
Deal with libtool 2.2 which doesn't let us use LT_ variables. (bug 15692)
Allow for RC versions in README update
git ignore doltcompile
Ryan Schmidt (1):
fontconfig build fails if "head" is missing or unusable (bug 14304)
Sylvain Pasche (1):
Fontconfig options for freetype sub-pixel filter configuration
2.5.91 (2.6 RC1)
Hongbo Zhao (1):
Not_contain should use strstr, not strcmp on strings. (bug 13632)
Keith Packard (11):
Move conf.avail/README to conf.d/README (bug 13392)
Fix OOM failure case in FcPStackPush.
Remove freetype requirement for build-time applications.
Include fcftaliastail.h so that the freetype funcs are exported.
Eliminate references to freetype from utility Makefile.am's
Distribute new fcftint.h file
Create new-version.sh to help with releases, update INSTALL instructions
Distribute khmer font aliases
Add more files to .gitignore
new-version.sh was mis-editing files
git-tag requires space after -m flag
2.5
Keith Packard (4):
Document several function return values (Bug 13145).
Document that Match calls FcFontRenderPrepare (bug 13162).
Document that FcConfigGetFonts returns the internal fontset (bug 13197)
Revert "Remove fcprivate.h, move the remaining macros to fcint.h."
Tor Lillqvist (1):
Workaround for stat() brokenness in Microsoft's C library (bug 8526)
2.4.92 (2.5 RC2)
Behdad Esfahbod (14):
Make fc-match --sort call FcFontRenderPrepare.
Port fonts-persian.conf to new alias syntax with binding="same"
Fix trivial bugs in edit-sgml.c
Add FcGetLangs() and FcLangGetCharSet().
Add/update config files from Fedora.
Split 40-generic.conf into 40-nonlatin.conf and 45-latin.conf
Use binding="same" in 30-urw-aliases.conf and remove duplicate entries.
Remove redundant/obsolete comments from conf files.
Remove 20-lohit-gujarati.conf. It's covered by 25-unhint-nonlatin.conf now.
Oops, fix Makefile.am.
Remove 25-unhint-nonlatin.conf from default configuration by not linking it.
Fix documented conf-file naming format in README
Remove list of available conf files from README.
Simplify/improve 30-metric-aliases.conf
Keith Packard (25):
Also check configDirs mtimes in FcConfigUptoDate
Respect "binding" attribute in <alias> entries.
Correct documentation for FcAtomicLock (Bug 12947).
Remove fcprivate.h, move the remaining macros to fcint.h.
Correct documentation for FcConfigUptoDate (bug 12948).
Document skipping of fonts from FcFileScan/FcDirScan.
Make file_stat argument to FcDirCacheLoadFile optional.
Clean up exported names in fontconfig.h.
Track line numbers in sgml edit tool input.
Typo error in function name: Inverval -> interval
Don't check cache file time stamps when cleaning cache dir.
Use FcLangDifferentTerritory instead of FcLangDifferentCountry.
Verify documentation covers exposed symbols.
Document previously undocumented functions. (bug 12963)
Update documentation for FcStrCopyFilename (bug 12964).
Update documentation for stale FcConfigGetConfig function.
Have FcConfigSetCurrent accept the current configuration and simply return
Remove references to FcConfigParse and FcConfigLoad.
Replace incorrect documentation uses of 'char' with 'FcChar8' (bug 13002).
Fix formatting syntax in doc/fccache.fncs
Generate fccache.sgml, fcdircache.sgml and fclangset.sgml.
Formatting syntax mistake in doc/fclangset.fncs.
Link new function documentation into the fontconfig-devel.sgml
Ignore new generated documentation
Export FcConfig{G,S}etRescanInverval from .so, mark as deprecated.
2.4.91 (2.5 RC1)
Behdad Esfahbod (1):
Update CaseFolding.txt to Unicode 5.1.0
Dwayne Bailey (1):
Add/fix *.orth files for South African languages
Hideki Yamane (1):
Handle Japanese fonts better. (debian bug #435971)
Keith Packard (32):
rehash increment could be zero, causing rehash infinite loop.
Work around FreeType bug when glyph name buffer is too small.
Free temporary string in FcDirCacheUnlink (Bug #11758)
Fix ChangeLog generation to avoid circular make dependency
Store font directory mtime in cache file.
Comment about mmaping cache files was misleading.
Make FC_FULLNAME include all fullname entries, elide nothing. [bug 12827]
Remove unneeded call to access(2) in fc-cache.
Improve verbose messages from fc-cache.
Verbose message about cleaning directories was imprecise
Don't use X_OK bit when checking for writable directories (bug 12438)
Have fc-cache remove invalid cache files from cache directories.
FcConfigParseAndLoad doc was missing the last param.
Place language name in constant array instead of pointer.
Must not insert cache into hash table before completely validating.
Eliminate relocations for glyph name table.
Eliminate relocations from FcCodePageRange structure (bug 10982).
Leave generated headers out of distribution (bug 12734).
Move <cachedir> elements to the end of fonts.conf.
Add BRAILLE PATTERN BLANK to list of blank glyphs.
Replace makealias pattern with something supported by POSIX grep (bug 11083)
FcInit should return FcFalse when FcInitLoadConfigAndFonts fails. (bug 10976)
There is no U+1257 (bug 10899).
Spelling errors in documentation. (bug 10879).
Oops. Left debugging printf in previous commit.
Handle UltraBlack weight.
Fix parallel build in fontconfig/docs (bug 10481).
Distribute man source files for command line programs (bug 9678).
Ensure weight/slant values present even when style is supplied (bug 9313).
fontconfig needs configure option to use gnu iconv (bug 4083).
Match 'ultra' on word boundaries to detect ultra bold fonts. (bug 2511)
Build fix for Solaris 10 with GCC.
Mike FABIAN (1):
Avoid crashes if config files contain junk.
Stephan Kulow (1):
Make FcPatternDuplicate copy the binding instead of always using Strong.
Tilman Sauerbeck (2):
Store FcNoticeFoundries in read-only memory.
Store FcVendorFoundries in read-only memory.
2.4.2
Han-Wen Nienhuys:
FcStrCanonFileName buggy for mingw. (bug 8311)
More fixes for Win32 building (bug 8311)
Kean Johnston:
Don't use varargs CPP macros in fccache.c. (bug 8733)
Keith Packard:
Remove documentation for non-existant FcConfigNormalizeFontDir.
Build fontconfig.def from header files when needed.
Detect and use available random number generator (bug 8308)
Add sparc64 architecture string.
FcStrCanonAbsoluteFilename should be static.
Use explicit platform/nameid order when scanning ttf files.
Warn (and recover) from config file without <cachedir> elements.
Avoid writing uninitialized structure pad bytes to cache files.
Fix grep pattern in makealias to work on non-Gnu grep (bug 8368).
Add FcFreeTypeQueryFace external API. Bug #7311.
Segfault scanning non-font files. Disallow scan edit of user vars. (#8767)
Add space between type and formal in devel man pages (bug 8935)
Mike FABIAN:
Do not clean cache files for different architectures
Peter Breitenlohner:
A VPATH build of fontconfig-2.4.1 fails for various reasons. Bug 8933.
Use <literal> instead of <sgmltag> when documenting fonts.conf. Bug 8935.
Fix fc-cat documentation (bug 8935).
2.4.1
Keith Packard:
Update installation notes for 2.4 base.
Add ppc64 signature. Bug 8227
Add signatures for m68k and mipsel (thanks debian buildd)
Add warning flags to fc-cache build. Clean up warnings in fc-cache.
Reimplement FcConfigAppFontAddDir; function was lost in 2.4.0.
2.4.0
David Turner:
Replace character discovery loop with simpler, faster version.
James Cloos:
Move files from conf.d to conf.avail
Standardize conf.avail number prefixing convention
Support all five possibilities for sub-pixel
Move user and local conf file loading into conf.avail files
Number the remaining conf.avail files
Update Makefile.am to match conf.avail changes
Replace load of conf.d in fonts.conf.in
Make room for chunks from fonts.conf in conf.avail
Re-order old conf.d files
Move some section from fonts.conf into conf.avail files
Update Makefile.am files
Make conf.avail and conf.d work
Keith Packard:
Create fc_cachedir at install time. Bug 8157.
Reference patterns in FcCacheCopySet.
Replace gnu-specific sed command with simple grep.
Attempt to fix makealias usage for build on Mac OS X.
Accept locale environment variables that do not contain territory.
Merge branch 'jhcloos'
Insert newly created caches into reference data structure.
Add XML headers to new conf files. Move link make commands to conf.avail dir
Rename conf.avail to conf.d
Fix conf.d directory sorting.
Include cachedir in fonts.dtd.
Don't display tests for DESTDIR on make install.
Split much of the configuration into separate files. Renumber files
2.3.97
Carl Worth:
Rename FcPatternThawAll to FcPatternFini.
Add a configuration file that disables hinting for the Lohit Gujarati font
Keith Packard:
Various GCC 4 cleanups for signed vs unsigned char
Finish INSTALL changes. .gitignore ChangeLog
Merge branch 'fc-2_4_branch' to master
Remove all .cvsignore files
Hide private functions in shared library. Export functionality for utilities.
Hide FreeType glue code from library ABI.
Can't typecheck values for objects with no known type.
Leave cache files mapped permanently.
Reference count cache objects.
Make cache reference counting more efficient.
Oops, fc-lang broke when I added cache referencing.
Correct reference count when sharing cache file objects.
Eliminate .so PLT entries for local symbols. (thanks to Arjan van de Ven)
Update architecture signatures for x86-64 and ppc.
Parallel build fix for fcalias.h and fcaliastail.h
Charset hashing depended on uniqueness of leaves.
Patrick Lam:
file Makefile.am was initially added on branch fc-2_4_branch.
Modify config file to use Greek fonts before Asian fonts with Greek glyphs.
Use libtool -no-undefined flag on all platforms.
file ftglue.c was initially added on branch fc-2_4_branch.
2005-11-23 Frederic Crozat <fcrozat@mandriva.com>: reviewed by: plam
file 10-fonts-persian.conf was initially added on branch fc-2_4_branch.
Sort directory entries while scanning them from disk; prevents Heisenbugs
file ln.orth was initially added on branch fc-2_4_branch.
Fix typos in orth files. Reported by Denis Jacquerye.
On Windows, unlink before rename. Reported by Tim Evans.
file fc-match.sgml was initially added on branch fc-2_4_branch.
2.3.96
Keith Packard:
Make path names in cache files absolute (NB, cache format change) Stop
Eliminate pattern freezing
Add .gitignore
Construct short architecture name from architecture signature.
Write caches to first directory with permission. Valid cache in FcDirCacheOpen.
Eliminate NormalizeDir. Eliminate gratuitous stat/access calls per dir.
Add architecture to cache filename.
Eliminate global cache. Eliminate multi-arch cache code.
Fix up fc-cache and fc-cat for no global cache changes.
Eliminate ./ and ../ elements from font directory names when scanning.
Regenerate x86 line in fcarch.tmpl.h to match change in cache data.
Add x86-64 architecture and signature.
During test run, remove cache directory to avoid stale cache usage.
Add ppc architecture
Revert to original FcFontSetMatch algorithm to avoid losing fonts.
Rework cache files to use offsets for all data structures.
Fix build problems caused by cache rework.
FcCharSetSerialize was using wrong offset for leaves. Make fc-cat work.
Rework Object name database to unify typechecking and object lookup.
Skip broken caches. Cache files are auto-written, don't rewrite in fc-cache.
Fix fc-cat again. Sigh.
Use intptr_t instead of off_t inside FcCache structure.
Serialized value lists were only including one value.
Automatically remove invalid cache files.
With no args, fc-cat now dumps all directories.
Revert ABI changes from version 2.3
Change $(pkgcachedir) to $(fc_cachedir) in fc-cat and fc-cache Makefile.am
Allow FcTypeLangSet to match either FcTypeLangSet or FcTypeString.
Remove stale architecture signatures.
Pass directory information around in FcCache structure. Freeze charsets.
Fix fc-lang to use new charset freezer API.
Fontset pattern references are relative to fontset, not array.
Add some ignores
Only rebuild caches for system fonts at make install time.
Fix memory leaks in fc-cache directory cleaning code.
Add @EXPAT_LIBS@ to Libs.private in fontconfig.pc (bug 7683)
Avoid #warning directives on non-GCC compilers. (bug 7683)
Chinese/Macau needs the Hong Kong orthography instead of Taiwan (bug 7884)
Add Assamese orthography (as.orth). Bug #8050
Really only rebuild caches for system fonts at make install time.
Fonts matching lang not territory should satisfy sort pattern lang.
Prefer Bitstream Vera to DejaVu families.
Guess that mac roman names with lots of high bits are actually SJIS.
Document FC_DEBUG values (bug 6393). Document name \ escape syntax.
Move Free family names to bottom of respective aliases. (bug 7429)
Unify directory canonicalization into FcStrAddFilename.
Allow font caches to contain newer version numbers
Add FcMatchScan to resolve Delicious font matching issues (bug #6769)
Fix missing initialization/destruction of new 'scan' target subst list.
Don't segfault when string values can't be parsed as charsets or langsets.
Using uninitialized (and wrong) variable in FcStrCopyFilename.
Oops; missed the 60-delicious.conf file.
Patrick Lam:
Keith Packard <keithp@keithp.com>
2006-04-27 Paolo Borelli (pborelli@katamail.com) reviewed by: plam
2006-05-31 Yong Li (rigel863@gmail.com) reviewed by: plam, Bedhad Esfahbod
2006-07-19 Jon Burgess (jburgess@uklinux.net) reviewed by: plam
2006-08-04 Keith Packard (keithp@keithp.com) reviewed by: plam
2.3.95
Match 'Standard Symbols L' for 'Symbol'. Add URW fonts as aliases for
all of the PostScript fonts. (reported by Miguel Rodriguez). Fix a
number of Coverity defects (Frederic Crozat). Speed up FcFontSort
(fix suggested by Kenichi Handa). Fix error with charsets. Survive
missing docbook2pdf. Compile on HP-UX, AIX, SGI and Windows (Cygwin,
MinGW). Fix intel compiler warnings. Fix multiarch support (don't
destroy multiarch files!) Require pkg-config. (Thanks Behdad; better
solution wanted for libxml2 detection!) Fix typos in orth files and
add orth for Lingala (reported by Denis Jacquerye). Remove debian/
directory. Add a configuration file that disables hinting for the
Lohit Gujarati font (since the hinting distorts some glyphs quite
badly). Sort directory entries while scanning them from disk;
prevents Heisenbugs due to file ordering in a directory (due to Egmont
Koblinger). Fix Wine's problem with finding fonts. (Reported by
Bernhard Rosenkraenzer.) Fix the issues with GNU libiconv vs. libc
iconv (which especially appear on Solarii); patch by Behdad Esfahbod,
approach suggested by Tim Mooney.
2.3.94
fc-cat can take directories as input and creates old-style fonts.cache
listings.
fc-cache takes -r --really-force which blows away all old caches and
regenerates.
Robustness fixes, integer overflow fixes (notably to cache handling
code), toast broken global cache files.
Change binary format to make it compatible with static langset
information (thanks to Takashi Iwai).
Open hashed caches before fonts.cache-2 (Takashi Iwai).
Fix FcFontSetMatch's algorithm, which used to unjustly kill fonts for
not declaring certain elements (Takashi Iwai).
Fix matching bug when multiple elements match; don't use
the sum of all scores, but the best score (James Su).
Make fc-lang more friendly to Windows systems.
Remove archaic chars from Georgian charset; add Euro character to
charsets for European languages.
Fix treatment of broken PCF fonts that don't declare family names.
Pass O_BINARY to open if appropriate (reported by Doodle).
Normalize font directories to the form in which they appear in
config files.
Add a record of the cached directory to the cache file.
Perf optimizations (Dirk Mueller; some reported by Michael Meeks.)
Don't loop infinitely on recursive symlinks.
Make 'make distcheck' work with automake 1.6.3.
Replace 'stamp' target with mkinstalldirs.
Don't stop scanning if a directory in fonts.conf doesn't exist,
because subsequent directories might exist.
Put directory names into global cache (reported by Ronny V. Vindenes).
Treat zh-hk fonts differently from zh-tw fonts. This patch may cause
fontconfig to treat A-X fonts differently from A-Y fonts; please mail
the fontconfig list if this causes any problems.
Fix for unaligned memory accesses (Andreas Schwab).
Fix treatment of cache directory as read from cache file; don't use
string equality to determine if we have the right file, use inode
equality.
Properly skip past dir caches that contain zero fonts, as occurs
in global caches (reported by Mike Fabian).
Print out full pathname in fc-match -v (reported by Frederic Crozat).
Fix bug where fc-match crashes when given __DUMMY__ property to
match on.
2.3.93
Create cache files in /var/cache/fontconfig with hashed filenames, if
possible, for added FHS compliance.
Make fc-cat read both per-directory and global cache files.
Add config file for Persian fonts from Sharif FarsiWeb, Inc.
Major performance improvements by Dirk Mueller, Stephen Kulow, and Michael Matz at SuSE: in particular, speed up FcFontSetMatch, and inline many functions.
Fix treatment of globs in config files, broken since 2.3.2 and discovered by Mathias Clasen.
Don't use freetype internal headers (patch by Matthias Clasen).
Further space improvements: create langsets statically, so that they can live in .rodata.
Properly align mmapped data structures to make e.g. ia64 happy.
Bug fixes.
2.3.92
Fix corrupted caches bugs from 2.3.91 (reported by Mike Fabian).
Store only basename in the cache, reconstitute on demand
(reported by James Cloos).
Change the rule for artificial emboldening in fonts.conf.in. This
enables the support for artificial emboldening included in cairo
(patch by Zhe Su).
Add FC_EMBEDDED_BITMAP object type to tell Xft/Cairo whether
to load embedded bitmaps or not (patch by Jinghua Luo).
Fix GCC4 warnings (some by Behdad Esfahbod).
Support localized font family and style names; this has been reported
to break old apps like xfd, but modern (gtk+/qt/mozilla) apps work
fine (patch by Zhe Su).
Prevent fc-list from escaping strings when printing them (reported by
Matthias Clasen).
Add valist sentinel markup for FcObjectSetBuild and
FcPatternBuild (patch by Marcus Meissner).
Add consts to variables so as to move arrays into .rodata (patch by
Ross Burton).
Modify config file to use Greek fonts before Asian fonts with
Greek glyphs. (patch by Simos Xenitellis).
Use libtool -no-undefined flag on all platforms (patch by Christian
Biesinger).
2.3.91
Use libxml2 if requested or if expat not available. (Mathias Hasselmann)
Fix multi-arch cache files: compute the position for the
block to be added using info from OrigFile, not NewFile. (plam)
Cast results of sizeof() to unsigned int to get rid of
warnings on x86_64 (reported by Matthias Clasen).
Use FcAtomic to rewrite cache files; don't unlink the fonts.cache-2
file even if there's no data to write; just write an empty cache file.
(Reported by Lubos Lunak)
Allocate room for the subdirectory names in each directory cache.
(Reported by James Cloos)
2.3.90
Development release of mmap patch: load pattern information
directly from cache files. (Patrick Lam)
2.3.2
Patch memory leaks in using iconv. (Reported by Chris Capoccia)
Patch memory leaks in fc-cache. (Reported by Chris Capoccia)
Fetch bitmap glyphs to get widths during font evaluation. (keithp)
Share strings through FcObjectStaticName (Ross Burton)
Windows build updates (Tor Lillqvist)
2.3.1
Be more careful about broken GSUB/GPOS tables (Manish Singh)
Include debian packaging stuff in CVS (Josselin Mouette)
Add more conf.d examples (Keith Packard)
Make manuals build again (Keith Packard)
Johap -> Johab (Funda Wang)
2.3.0
Fix memory leak of patterns rejected by configuration (#2518)
Create prototype /etc/fonts/conf.d directory and populate it with a few
sample files. These samples are unused as the file names don't start with
numbers.
Update documentation.
2.2.99
Verify cache for FC_FILE and FC_FAMILY in every entry (#2219)
Update blanks list from recent Unicode docs (#86)
Various small build fixes (#280, #2278,
Documentation fixes (#2085, #2284, #2285)
Add polite typechecking to config file loader (#229)
2.2.98
Share object name strings (Michael Meeks)
Eliminate a couple of codepoints from Russian orthography (John Thacker)
Add synthetic emboldening configuration changes (Jakub Pavelek)
Change FcFontSetSort to ignore language after fonts with the requested
languages have been found. (Owen Taylor)
Add some RedHat font configuration changes (Owen Tayler).
Add full Unicode case folding support to case-ignoring string functions
(Keith Packard)
Remove Han characters from Korean orthography (Tor Andersson)
2.2.97
Fc-cache sleeps before exiting to ensure filesystem timestamps are well
ordered.
Added Punjai orthography.
The timestamp in fonts.conf is gone now. Too many problems.
The default font path includes all of the X fonts; use selectfont/rejectfont
to eliminate bitmaps, as shown in the sample local.conf file.
<include> configuration elements may now reference a directory. Files
in that directory matching [0-9]* are loaded in UTF-8 collating sequence order.
<selectfont> configuration added to control which fonts are used.
fontformat font pattern elements built from the FT_Get_X11_Font_Format
function in newer versions of FreeType.
'capability' list constructed from gsub/gpos and silf values in TrueType
files.
Multi-lingual names (style, family, fullname) extracted and stored with
parallel <foo>lang properties marking language.
2.2.96
Fix FcConfigUpToDate to actually check all font directories and eliminate
a typo which completely prevented it from working (Lubos Lunak
<l.lunak@suse.cz>)
Remove comma at end of FcResult enum definition for picky compilers.
2.2.95
Add FcResultOutOfMemory so FcFontSetMatch can return accurate error.
Replace MIN/MAX/ABS macros which happened to be in old FreeType releases
with FC_MIN/FC_MAX/FC_ABS macros owned by fontconfig.
2.2.94
The 2.2.93 release was prepared with a broken libtool which created
the shared library without the '.so' in the file names.
2.2.93
This is the third prerelease of fontconfig 2.3. Significant changes from
2.2.92 are:
o Use new FreeType #include syntax
o use y_ppem field instead of 'height' in bitmap sizes rec -
FreeType changed the semantics. Still uses height for
older versions of FreeType
o Don't construct program manuals unless docbook is available
2.2.92
o make distcheck work
2.2.91
o Switch to SGML manuals
o Add FC_DUAL width spacing value
o Add FcFini to close out fontconfig and release all memory
2.2
This is the third public release of fontconfig, a font configuration and
customization library. Fontconfig is designed to locate fonts within the
system and select them according to requirements specified by applications.
Fontconfig is not a rasterization library, nor does it impose a particular
rasterization library on the application. The X-specific library
'Xft' uses fontconfig along with freetype to specify and rasterize fonts.
Keith Packard
keithp@keithp.com
|