Imported Upstream version 2.11.93 57/50357/1 upstream/2.11.93
authorJaeun Choi <jaeun12.choi@samsung.com>
Wed, 28 Oct 2015 06:45:18 +0000 (15:45 +0900)
committerJaeun Choi <jaeun12.choi@samsung.com>
Wed, 28 Oct 2015 06:49:42 +0000 (15:49 +0900)
Change-Id: I0625d1bfdedbfcb7cbf279d779d33468e0a775b0

570 files changed:
ChangeLog
Makefile.am
Makefile.in
README
Tools.mk
aclocal.m4
compile [new file with mode: 0755]
conf.d/10-autohint.conf
conf.d/10-no-sub-pixel.conf
conf.d/10-sub-pixel-bgr.conf
conf.d/10-sub-pixel-rgb.conf
conf.d/10-sub-pixel-vbgr.conf
conf.d/10-sub-pixel-vrgb.conf
conf.d/10-unhinted.conf
conf.d/11-lcdfilter-default.conf
conf.d/11-lcdfilter-legacy.conf
conf.d/11-lcdfilter-light.conf
conf.d/30-metric-aliases.conf
conf.d/30-urw-aliases.conf
conf.d/45-latin.conf
conf.d/60-latin.conf
conf.d/Makefile.am
conf.d/Makefile.in
conf.d/README
conf.d/README.in [new file with mode: 0644]
config.guess
config.h.in
config.sub
configure
configure.ac
depcomp
doc/FcAtomicCreate.3
doc/FcAtomicDeleteNew.3
doc/FcAtomicDestroy.3
doc/FcAtomicLock.3
doc/FcAtomicNewFile.3
doc/FcAtomicOrigFile.3
doc/FcAtomicReplaceOrig.3
doc/FcAtomicUnlock.3
doc/FcBlanksAdd.3
doc/FcBlanksCreate.3
doc/FcBlanksDestroy.3
doc/FcBlanksIsMember.3
doc/FcCacheCopySet.3
doc/FcCacheCreateTagFile.3
doc/FcCacheDir.3
doc/FcCacheNumFont.3
doc/FcCacheNumSubdir.3
doc/FcCacheSubdir.3
doc/FcCharSetAddChar.3
doc/FcCharSetCopy.3
doc/FcCharSetCount.3
doc/FcCharSetCoverage.3
doc/FcCharSetCreate.3
doc/FcCharSetDelChar.3
doc/FcCharSetDestroy.3
doc/FcCharSetEqual.3
doc/FcCharSetFirstPage.3
doc/FcCharSetHasChar.3
doc/FcCharSetIntersect.3
doc/FcCharSetIntersectCount.3
doc/FcCharSetIsSubset.3
doc/FcCharSetMerge.3
doc/FcCharSetNew.3
doc/FcCharSetNextPage.3
doc/FcCharSetSubtract.3
doc/FcCharSetSubtractCount.3
doc/FcCharSetUnion.3
doc/FcConfigAppFontAddDir.3
doc/FcConfigAppFontAddFile.3
doc/FcConfigAppFontClear.3
doc/FcConfigBuildFonts.3
doc/FcConfigCreate.3
doc/FcConfigDestroy.3
doc/FcConfigEnableHome.3
doc/FcConfigFilename.3
doc/FcConfigGetBlanks.3
doc/FcConfigGetCache.3
doc/FcConfigGetCacheDirs.3
doc/FcConfigGetConfigDirs.3
doc/FcConfigGetConfigFiles.3
doc/FcConfigGetCurrent.3
doc/FcConfigGetFontDirs.3
doc/FcConfigGetFonts.3
doc/FcConfigGetRescanInterval.3
doc/FcConfigGetSysRoot.3 [new file with mode: 0644]
doc/FcConfigHome.3
doc/FcConfigParseAndLoad.3
doc/FcConfigReference.3
doc/FcConfigSetCurrent.3
doc/FcConfigSetRescanInterval.3
doc/FcConfigSetSysRoot.3 [new file with mode: 0644]
doc/FcConfigSubstitute.3
doc/FcConfigSubstituteWithPat.3
doc/FcConfigUptoDate.3
doc/FcDefaultSubstitute.3
doc/FcDirCacheClean.3
doc/FcDirCacheLoad.3
doc/FcDirCacheLoadFile.3
doc/FcDirCacheRead.3
doc/FcDirCacheRescan.3 [new file with mode: 0644]
doc/FcDirCacheUnlink.3
doc/FcDirCacheUnload.3
doc/FcDirCacheValid.3
doc/FcDirSave.3
doc/FcDirScan.3
doc/FcFileIsDir.3
doc/FcFileScan.3
doc/FcFini.3
doc/FcFontList.3
doc/FcFontMatch.3
doc/FcFontRenderPrepare.3
doc/FcFontSetAdd.3
doc/FcFontSetCreate.3
doc/FcFontSetDestroy.3
doc/FcFontSetList.3
doc/FcFontSetMatch.3
doc/FcFontSetPrint.3
doc/FcFontSetSort.3
doc/FcFontSetSortDestroy.3
doc/FcFontSort.3
doc/FcFreeTypeCharIndex.3
doc/FcFreeTypeCharSet.3
doc/FcFreeTypeCharSetAndSpacing.3
doc/FcFreeTypeQuery.3
doc/FcFreeTypeQueryFace.3
doc/FcGetDefaultLangs.3
doc/FcGetLangs.3
doc/FcGetVersion.3
doc/FcInit.3
doc/FcInitBringUptoDate.3
doc/FcInitLoadConfig.3
doc/FcInitLoadConfigAndFonts.3
doc/FcInitReinitialize.3
doc/FcIsLower.3
doc/FcIsUpper.3
doc/FcLangGetCharSet.3
doc/FcLangNormalize.3
doc/FcLangSetAdd.3
doc/FcLangSetCompare.3
doc/FcLangSetContains.3
doc/FcLangSetCopy.3
doc/FcLangSetCreate.3
doc/FcLangSetDel.3
doc/FcLangSetDestroy.3
doc/FcLangSetEqual.3
doc/FcLangSetGetLangs.3 [new file with mode: 0644]
doc/FcLangSetHasLang.3
doc/FcLangSetHash.3
doc/FcLangSetSubtract.3
doc/FcLangSetUnion.3
doc/FcMatrixCopy.3
doc/FcMatrixEqual.3
doc/FcMatrixInit.3
doc/FcMatrixMultiply.3
doc/FcMatrixRotate.3
doc/FcMatrixScale.3
doc/FcMatrixShear.3
doc/FcNameConstant.3
doc/FcNameGetConstant.3
doc/FcNameGetObjectType.3
doc/FcNameParse.3
doc/FcNameRegisterConstants.3
doc/FcNameRegisterObjectTypes.3
doc/FcNameUnparse.3
doc/FcNameUnregisterConstants.3
doc/FcNameUnregisterObjectTypes.3
doc/FcObjectSetAdd.3
doc/FcObjectSetBuild.3
doc/FcObjectSetCreate.3
doc/FcObjectSetDestroy.3
doc/FcPatternAdd-Type.3
doc/FcPatternAdd.3
doc/FcPatternAddWeak.3
doc/FcPatternBuild.3
doc/FcPatternCreate.3
doc/FcPatternDel.3
doc/FcPatternDestroy.3
doc/FcPatternDuplicate.3
doc/FcPatternEqual.3
doc/FcPatternEqualSubset.3
doc/FcPatternFilter.3
doc/FcPatternFormat.3
doc/FcPatternGet-Type.3
doc/FcPatternGet.3
doc/FcPatternHash.3
doc/FcPatternPrint.3
doc/FcPatternReference.3
doc/FcPatternRemove.3
doc/FcRangeCopy.3 [new file with mode: 0644]
doc/FcRangeCreateDouble.3 [new file with mode: 0644]
doc/FcRangeCreateInteger.3 [new file with mode: 0644]
doc/FcRangeDestroy.3 [new file with mode: 0644]
doc/FcRangeGetDouble.3 [new file with mode: 0644]
doc/FcStrBasename.3
doc/FcStrCmp.3
doc/FcStrCmpIgnoreCase.3
doc/FcStrCopy.3
doc/FcStrCopyFilename.3
doc/FcStrDirname.3
doc/FcStrDowncase.3
doc/FcStrFree.3
doc/FcStrListCreate.3
doc/FcStrListDone.3
doc/FcStrListFirst.3 [new file with mode: 0644]
doc/FcStrListNext.3
doc/FcStrPlus.3
doc/FcStrSetAdd.3
doc/FcStrSetAddFilename.3
doc/FcStrSetCreate.3
doc/FcStrSetDel.3
doc/FcStrSetDestroy.3
doc/FcStrSetEqual.3
doc/FcStrSetMember.3
doc/FcStrStr.3
doc/FcStrStrIgnoreCase.3
doc/FcToLower.3
doc/FcUcs4ToUtf8.3
doc/FcUtf16Len.3
doc/FcUtf16ToUcs4.3
doc/FcUtf8Len.3
doc/FcUtf8ToUcs4.3
doc/FcValueDestroy.3
doc/FcValueEqual.3
doc/FcValuePrint.3
doc/FcValueSave.3
doc/FcWeightFromOpenType.3 [new file with mode: 0644]
doc/FcWeightToOpenType.3 [new file with mode: 0644]
doc/Makefile.am
doc/Makefile.in
doc/fcatomic.sgml
doc/fcblanks.sgml
doc/fccache.fncs
doc/fccache.sgml
doc/fccharset.fncs
doc/fccharset.sgml
doc/fcconfig.fncs
doc/fcconfig.sgml
doc/fcconstant.sgml
doc/fcdircache.fncs
doc/fcdircache.sgml
doc/fcfile.sgml
doc/fcfontset.sgml
doc/fcformat.fncs
doc/fcformat.sgml
doc/fcfreetype.sgml
doc/fcinit.sgml
doc/fclangset.fncs
doc/fclangset.sgml
doc/fcmatrix.sgml
doc/fcobjectset.sgml
doc/fcobjecttype.sgml
doc/fcpattern.fncs
doc/fcpattern.sgml
doc/fcrange.fncs [new file with mode: 0644]
doc/fcrange.sgml [new file with mode: 0644]
doc/fcstring.sgml
doc/fcstrset.fncs
doc/fcstrset.sgml
doc/fcvalue.sgml
doc/fcweight.fncs [new file with mode: 0644]
doc/fcweight.sgml [new file with mode: 0644]
doc/fontconfig-devel.pdf
doc/fontconfig-devel.sgml
doc/fontconfig-devel.txt
doc/fontconfig-devel/fcatomiccreate.html
doc/fontconfig-devel/fcatomicdeletenew.html
doc/fontconfig-devel/fcatomicdestroy.html
doc/fontconfig-devel/fcatomiclock.html
doc/fontconfig-devel/fcatomicnewfile.html
doc/fontconfig-devel/fcatomicorigfile.html
doc/fontconfig-devel/fcatomicreplaceorig.html
doc/fontconfig-devel/fcatomicunlock.html
doc/fontconfig-devel/fcblanksadd.html
doc/fontconfig-devel/fcblankscreate.html
doc/fontconfig-devel/fcblanksdestroy.html
doc/fontconfig-devel/fcblanksismember.html
doc/fontconfig-devel/fccachecopyset.html
doc/fontconfig-devel/fccachecreatetagfile.html
doc/fontconfig-devel/fccachedir.html
doc/fontconfig-devel/fccachenumfont.html
doc/fontconfig-devel/fccachenumsubdir.html
doc/fontconfig-devel/fccachesubdir.html
doc/fontconfig-devel/fccharsetaddchar.html
doc/fontconfig-devel/fccharsetcopy.html
doc/fontconfig-devel/fccharsetcount.html
doc/fontconfig-devel/fccharsetcoverage.html
doc/fontconfig-devel/fccharsetcreate.html
doc/fontconfig-devel/fccharsetdelchar.html
doc/fontconfig-devel/fccharsetdestroy.html
doc/fontconfig-devel/fccharsetequal.html
doc/fontconfig-devel/fccharsetfirstpage.html
doc/fontconfig-devel/fccharsethaschar.html
doc/fontconfig-devel/fccharsetintersect.html
doc/fontconfig-devel/fccharsetintersectcount.html
doc/fontconfig-devel/fccharsetissubset.html
doc/fontconfig-devel/fccharsetmerge.html
doc/fontconfig-devel/fccharsetnew.html
doc/fontconfig-devel/fccharsetnextpage.html
doc/fontconfig-devel/fccharsetsubtract.html
doc/fontconfig-devel/fccharsetsubtractcount.html
doc/fontconfig-devel/fccharsetunion.html
doc/fontconfig-devel/fcconfigappfontadddir.html
doc/fontconfig-devel/fcconfigappfontaddfile.html
doc/fontconfig-devel/fcconfigappfontclear.html
doc/fontconfig-devel/fcconfigbuildfonts.html
doc/fontconfig-devel/fcconfigcreate.html
doc/fontconfig-devel/fcconfigdestroy.html
doc/fontconfig-devel/fcconfigenablehome.html
doc/fontconfig-devel/fcconfigfilename.html
doc/fontconfig-devel/fcconfiggetblanks.html
doc/fontconfig-devel/fcconfiggetcache.html
doc/fontconfig-devel/fcconfiggetcachedirs.html
doc/fontconfig-devel/fcconfiggetconfigdirs.html
doc/fontconfig-devel/fcconfiggetconfigfiles.html
doc/fontconfig-devel/fcconfiggetcurrent.html
doc/fontconfig-devel/fcconfiggetfontdirs.html
doc/fontconfig-devel/fcconfiggetfonts.html
doc/fontconfig-devel/fcconfiggetrescaninterval.html
doc/fontconfig-devel/fcconfiggetsysroot.html [new file with mode: 0644]
doc/fontconfig-devel/fcconfighome.html
doc/fontconfig-devel/fcconfigparseandload.html
doc/fontconfig-devel/fcconfigreference.html
doc/fontconfig-devel/fcconfigsetcurrent.html
doc/fontconfig-devel/fcconfigsetrescaninterval.html
doc/fontconfig-devel/fcconfigsetsysroot.html [new file with mode: 0644]
doc/fontconfig-devel/fcconfigsubstitute.html
doc/fontconfig-devel/fcconfigsubstitutewithpat.html
doc/fontconfig-devel/fcconfiguptodate.html
doc/fontconfig-devel/fcdefaultsubstitute.html
doc/fontconfig-devel/fcdircacheclean.html
doc/fontconfig-devel/fcdircacheload.html
doc/fontconfig-devel/fcdircacheloadfile.html
doc/fontconfig-devel/fcdircacheread.html
doc/fontconfig-devel/fcdircacherescan.html [new file with mode: 0644]
doc/fontconfig-devel/fcdircacheunlink.html
doc/fontconfig-devel/fcdircacheunload.html
doc/fontconfig-devel/fcdircachevalid.html
doc/fontconfig-devel/fcdirsave.html
doc/fontconfig-devel/fcdirscan.html
doc/fontconfig-devel/fcfileisdir.html
doc/fontconfig-devel/fcfilescan.html
doc/fontconfig-devel/fcfini.html
doc/fontconfig-devel/fcfontlist.html
doc/fontconfig-devel/fcfontmatch.html
doc/fontconfig-devel/fcfontrenderprepare.html
doc/fontconfig-devel/fcfontsetadd.html
doc/fontconfig-devel/fcfontsetcreate.html
doc/fontconfig-devel/fcfontsetdestroy.html
doc/fontconfig-devel/fcfontsetlist.html
doc/fontconfig-devel/fcfontsetmatch.html
doc/fontconfig-devel/fcfontsetprint.html
doc/fontconfig-devel/fcfontsetsort.html
doc/fontconfig-devel/fcfontsetsortdestroy.html
doc/fontconfig-devel/fcfontsort.html
doc/fontconfig-devel/fcfreetypecharindex.html
doc/fontconfig-devel/fcfreetypecharset.html
doc/fontconfig-devel/fcfreetypecharsetandspacing.html
doc/fontconfig-devel/fcfreetypequery.html
doc/fontconfig-devel/fcfreetypequeryface.html
doc/fontconfig-devel/fcgetdefaultlangs.html
doc/fontconfig-devel/fcgetlangs.html
doc/fontconfig-devel/fcgetversion.html
doc/fontconfig-devel/fcinit.html
doc/fontconfig-devel/fcinitbringuptodate.html
doc/fontconfig-devel/fcinitloadconfig.html
doc/fontconfig-devel/fcinitloadconfigandfonts.html
doc/fontconfig-devel/fcinitreinitialize.html
doc/fontconfig-devel/fcislower.html
doc/fontconfig-devel/fcisupper.html
doc/fontconfig-devel/fclanggetcharset.html
doc/fontconfig-devel/fclangnormalize.html
doc/fontconfig-devel/fclangsetadd.html
doc/fontconfig-devel/fclangsetcompare.html
doc/fontconfig-devel/fclangsetcontains.html
doc/fontconfig-devel/fclangsetcopy.html
doc/fontconfig-devel/fclangsetcreate.html
doc/fontconfig-devel/fclangsetdel.html
doc/fontconfig-devel/fclangsetdestroy.html
doc/fontconfig-devel/fclangsetequal.html
doc/fontconfig-devel/fclangsetgetlangs.html [new file with mode: 0644]
doc/fontconfig-devel/fclangsethash.html
doc/fontconfig-devel/fclangsethaslang.html
doc/fontconfig-devel/fclangsetsubtract.html
doc/fontconfig-devel/fclangsetunion.html
doc/fontconfig-devel/fcmatrixcopy.html
doc/fontconfig-devel/fcmatrixequal.html
doc/fontconfig-devel/fcmatrixinit.html
doc/fontconfig-devel/fcmatrixmultiply.html
doc/fontconfig-devel/fcmatrixrotate.html
doc/fontconfig-devel/fcmatrixscale.html
doc/fontconfig-devel/fcmatrixshear.html
doc/fontconfig-devel/fcnameconstant.html
doc/fontconfig-devel/fcnamegetconstant.html
doc/fontconfig-devel/fcnamegetobjecttype.html
doc/fontconfig-devel/fcnameparse.html
doc/fontconfig-devel/fcnameregisterconstants.html
doc/fontconfig-devel/fcnameregisterobjecttypes.html
doc/fontconfig-devel/fcnameunparse.html
doc/fontconfig-devel/fcnameunregisterconstants.html
doc/fontconfig-devel/fcnameunregisterobjecttypes.html
doc/fontconfig-devel/fcobjectsetadd.html
doc/fontconfig-devel/fcobjectsetbuild.html
doc/fontconfig-devel/fcobjectsetcreate.html
doc/fontconfig-devel/fcobjectsetdestroy.html
doc/fontconfig-devel/fcpatternadd-type.html
doc/fontconfig-devel/fcpatternadd.html
doc/fontconfig-devel/fcpatternaddweak.html
doc/fontconfig-devel/fcpatternbuild.html
doc/fontconfig-devel/fcpatterncreate.html
doc/fontconfig-devel/fcpatterndel.html
doc/fontconfig-devel/fcpatterndestroy.html
doc/fontconfig-devel/fcpatternduplicate.html
doc/fontconfig-devel/fcpatternequal.html
doc/fontconfig-devel/fcpatternequalsubset.html
doc/fontconfig-devel/fcpatternfilter.html
doc/fontconfig-devel/fcpatternformat.html
doc/fontconfig-devel/fcpatternget-type.html
doc/fontconfig-devel/fcpatternget.html
doc/fontconfig-devel/fcpatternhash.html
doc/fontconfig-devel/fcpatternprint.html
doc/fontconfig-devel/fcpatternreference.html
doc/fontconfig-devel/fcpatternremove.html
doc/fontconfig-devel/fcrangecopy.html [new file with mode: 0644]
doc/fontconfig-devel/fcrangecreatedouble.html [new file with mode: 0644]
doc/fontconfig-devel/fcrangecreateinteger.html [new file with mode: 0644]
doc/fontconfig-devel/fcrangedestroy.html [new file with mode: 0644]
doc/fontconfig-devel/fcrangegetdouble.html [new file with mode: 0644]
doc/fontconfig-devel/fcstrbasename.html
doc/fontconfig-devel/fcstrcmp.html
doc/fontconfig-devel/fcstrcmpignorecase.html
doc/fontconfig-devel/fcstrcopy.html
doc/fontconfig-devel/fcstrcopyfilename.html
doc/fontconfig-devel/fcstrdirname.html
doc/fontconfig-devel/fcstrdowncase.html
doc/fontconfig-devel/fcstrfree.html
doc/fontconfig-devel/fcstrlistcreate.html
doc/fontconfig-devel/fcstrlistdone.html
doc/fontconfig-devel/fcstrlistfirst.html [new file with mode: 0644]
doc/fontconfig-devel/fcstrlistnext.html
doc/fontconfig-devel/fcstrplus.html
doc/fontconfig-devel/fcstrsetadd.html
doc/fontconfig-devel/fcstrsetaddfilename.html
doc/fontconfig-devel/fcstrsetcreate.html
doc/fontconfig-devel/fcstrsetdel.html
doc/fontconfig-devel/fcstrsetdestroy.html
doc/fontconfig-devel/fcstrsetequal.html
doc/fontconfig-devel/fcstrsetmember.html
doc/fontconfig-devel/fcstrstr.html
doc/fontconfig-devel/fcstrstrignorecase.html
doc/fontconfig-devel/fctolower.html
doc/fontconfig-devel/fcucs4toutf8.html
doc/fontconfig-devel/fcutf16len.html
doc/fontconfig-devel/fcutf16toucs4.html
doc/fontconfig-devel/fcutf8len.html
doc/fontconfig-devel/fcutf8toucs4.html
doc/fontconfig-devel/fcvaluedestroy.html
doc/fontconfig-devel/fcvalueequal.html
doc/fontconfig-devel/fcvalueprint.html
doc/fontconfig-devel/fcvaluesave.html
doc/fontconfig-devel/fcweightfromopentype.html [new file with mode: 0644]
doc/fontconfig-devel/fcweighttoopentype.html [new file with mode: 0644]
doc/fontconfig-devel/t1.html
doc/fontconfig-devel/x102.html
doc/fontconfig-devel/x19.html
doc/fontconfig-user.html
doc/fontconfig-user.pdf
doc/fontconfig-user.sgml
doc/fontconfig-user.txt
doc/fonts-conf.5
doc/func.sgml
fc-blanks/Makefile.am [new file with mode: 0644]
fc-blanks/Makefile.in [new file with mode: 0644]
fc-blanks/fc-blanks.py [new file with mode: 0755]
fc-blanks/fcblanks.h [new file with mode: 0644]
fc-blanks/fcblanks.tmpl.h [new file with mode: 0644]
fc-cache/Makefile.am
fc-cache/Makefile.in
fc-cache/fc-cache.1
fc-cache/fc-cache.c
fc-cache/fc-cache.sgml
fc-case/CaseFolding.txt
fc-case/Makefile.in
fc-case/fccase.h
fc-cat/Makefile.am
fc-cat/Makefile.in
fc-cat/fc-cat.1
fc-cat/fc-cat.c
fc-cat/fc-cat.sgml
fc-glyphname/Makefile.in
fc-glyphname/fc-glyphname.c
fc-lang/Makefile.am
fc-lang/Makefile.in
fc-lang/README [new file with mode: 0644]
fc-lang/fc-lang.c
fc-lang/fclang.h
fc-lang/ja.orth
fc-lang/ko.orth
fc-lang/quz.orth [new file with mode: 0644]
fc-lang/zh_hk.orth
fc-list/Makefile.am
fc-list/Makefile.in
fc-list/fc-list.1
fc-list/fc-list.c
fc-list/fc-list.sgml
fc-match/Makefile.am
fc-match/Makefile.in
fc-match/fc-match.c
fc-pattern/Makefile.am
fc-pattern/Makefile.in
fc-pattern/fc-pattern.c
fc-query/Makefile.am
fc-query/Makefile.in
fc-scan/Makefile.am
fc-scan/Makefile.in
fc-validate/Makefile.am
fc-validate/Makefile.in
fontconfig.pc.in
fontconfig.spec
fontconfig/Makefile.in
fontconfig/fcprivate.h
fontconfig/fontconfig.h
fonts.conf.in
fonts.dtd
m4/ac_check_symbol.m4 [new file with mode: 0644]
m4/ax_pthread.m4
m4/libtool.m4
m4/pkg.m4 [new file with mode: 0644]
missing
src/Makefile.am
src/Makefile.in
src/fcarch.c
src/fcarch.h
src/fcatomic.c
src/fcatomic.h
src/fcblanks.c
src/fccache.c
src/fccfg.c
src/fccharset.c
src/fccompat.c
src/fcdbg.c
src/fcdefault.c
src/fcdir.c
src/fcfreetype.c
src/fcfs.c
src/fcinit.c
src/fcint.h
src/fclang.c
src/fclist.c
src/fcmatch.c
src/fcname.c
src/fcobjs.c
src/fcobjs.h
src/fcobjshash.gperf
src/fcobjshash.gperf.h
src/fcobjshash.h
src/fcpat.c
src/fcrange.c [new file with mode: 0644]
src/fcstat.c
src/fcstdint.h
src/fcstr.c
src/fcweight.c [new file with mode: 0644]
src/fcwindows.h
src/fcxml.c
test-driver [new file with mode: 0755]
test/Makefile.am
test/Makefile.in
test/run-test.sh
test/test-migration.c [new file with mode: 0644]
test/test-pthread.c

index 0be489a..9a05f9b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
+commit f6244d2cf231e1dc756f3e941e61b9bf124879bb
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed May 8 11:57:49 2013 +0900
+
+    Use the glob matching for filename
+
+    Regex is expensive to compare filenames. we already have the glob
+    matching
+    and it works enough in this case.
+
+    Prior to this change, renaming FcConfigGlobMatch() to FcStrGlobMatch()
+    and moving to fcstr.c
+
+ src/fccfg.c   | 46 +---------------------------------------------
+ src/fcint.h   |  4 ++++
+ src/fcmatch.c |  6 ++----
+ src/fcstr.c   | 44 ++++++++++++++++++++++++++++++++++++++++++++
+ 4 files changed, 51 insertions(+), 49 deletions(-)
+
+commit 03216ccf4ca0808f9c7b9513efcaeb7f4058b575
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Apr 10 18:41:22 2013 +0900
+
+    Bug 63329 - make check fails: .. contents:: :depth: 2
+
+    Add back FcHashGetSHA256DigestFromFile() and fall back to it
+    when font isn't SFNT-based font because FT_Load_Sfnt_Table
+    fails with FT_Err_Invalid_Face_Handle.
+
+ src/fcfreetype.c | 32 ++++++++++++++++++++---------
+ src/fchash.c     | 62
+ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ src/fcint.h      |  4 ++++
+ 3 files changed, 88 insertions(+), 10 deletions(-)
+
+commit 77419a4dfdf41ed34dd03e74d0e4e6f89dbc65e1
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Apr 10 11:14:39 2013 +0900
+
+    documented FC_HASH and FC_POSTSCRIPT_NAME
+
+ doc/fontconfig-devel.sgml | 3 +++
+ 1 file changed, 3 insertions(+)
+
+commit fc5a589abad0e8285f7d95007ebda76536e8fa7d
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Apr 9 17:18:43 2013 +0900
+
+    Revert the previous change and rework to not export freetype API
+    outside fcfreetype.c
+
+ src/fcfreetype.c | 23 ++++++++++++++++++++---
+ src/fchash.c     | 47 ++++++++++++-----------------------------------
+ src/fcint.h      |  5 ++---
+ 3 files changed, 34 insertions(+), 41 deletions(-)
+
+commit c93a8b8b54afe33e5ecf9870723543cb4058fa94
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Apr 9 12:46:30 2013 +0900
+
+    Obtain fonts data via FT_Face instead of opening a file directly
+
+ src/fcfreetype.c |  2 +-
+ src/fchash.c     | 50 +++++++++++++++++++++++++++++++++-----------------
+ src/fcint.h      |  4 +++-
+ 3 files changed, 37 insertions(+), 19 deletions(-)
+
+commit 9299155b5247255d6b6687448173056c3ca8d09b
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Apr 9 11:34:35 2013 +0900
+
+    Ensure closing fp on error
+
+ src/fchash.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 18bf57c70aafcad031c0b43756b754dcaf6a756a
+Author: Sebastian Freundt <hroptatyr@fresse.org>
+Date:   Sun Apr 7 00:02:58 2013 +0000
+
+    build-chain, replace INCLUDES directive by AM_CPPFLAGS
+
+    As of automake-13.1 the INCLUDES directive is no longer supported.
+    An automake run will return with an error.
+
+    This changeset simply follows automake's advice to replace INCLUDES
+    by AM_CPPFLAGS.
+
+ Tools.mk                | 4 ++--
+ fc-cache/Makefile.am    | 2 +-
+ fc-cat/Makefile.am      | 2 +-
+ fc-list/Makefile.am     | 2 +-
+ fc-match/Makefile.am    | 2 +-
+ fc-pattern/Makefile.am  | 2 +-
+ fc-query/Makefile.am    | 2 +-
+ fc-scan/Makefile.am     | 2 +-
+ fc-validate/Makefile.am | 2 +-
+ src/Makefile.am         | 2 +-
+ 10 files changed, 11 insertions(+), 11 deletions(-)
+
+commit 8fd0ed60a62cb7f36b2ade1bd16a66671eaf79da
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Apr 1 18:16:28 2013 +0900
+
+    Bug 62980 - matching native fonts with even :lang=en
+
+    Fix the matcher modified by 4eab908c8679a797ac7016b77a93ee41bb11b0fc
+    to deal with both strong and weak of FC_LANG as the same location
+    in the score
+
+ src/fcmatch.c | 23 +++++++----------------
+ 1 file changed, 7 insertions(+), 16 deletions(-)
+
+commit 73fa326d1e791b587da93b795f962c3405b7a96d
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 29 16:10:15 2013 +0900
+
+    Bump version to 2.10.92
+
+ README                  | 65
+ +++++++++++++++++++++++++++++++++++++++++++++++--
+ configure.ac            |  2 +-
+ fontconfig/fontconfig.h |  2 +-
+ 3 files changed, 65 insertions(+), 4 deletions(-)
+
+commit c842412c079e781d53f023616d9758223fb68323
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 29 16:07:30 2013 +0900
+
+    Minor fix
+
+ new-version.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit b3b435b87f1aec1b2779fd7edbbff5571c3c61a2
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 29 16:02:34 2013 +0900
+
+    Bump libtool revision
+
+ configure.ac | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+commit 3fc22cfe756fcb2d6c5a64aa305957c417c6cecd
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 29 12:46:04 2013 +0900
+
+    Minor cleanup
+
+ Makefile.am | 1 +
+ 1 file changed, 1 insertion(+)
+
+commit b561ff2016ce84eef3c81f16dfb0481be6a13f9b
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Jan 18 11:30:10 2013 +0900
+
+    Bug 38737 - Wishlist: support FC_POSTSCRIPT_NAME
+
+    Add the PostScript name into the cache and the matcher.
+    Scoring the better font against the PostScript name by
+    the forward-matching.
+
+ fontconfig/fontconfig.h |  1 +
+ src/fcfreetype.c        | 49 +++++++++++++++++++++++++++-
+ src/fcint.h             |  6 ++++
+ src/fcmatch.c           | 21 ++++++++++++
+ src/fcobjs.h            |  1 +
+ src/fcstr.c             | 85
+ ++++++++++++++++++++++++++++---------------------
+ 6 files changed, 125 insertions(+), 38 deletions(-)
+
+commit c758206e8c0e5b572bd34183b184ef4361745333
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Mar 21 11:58:06 2013 +0900
+
+    Fix a SIGSEGV on FcPatternGet* with NULL pattern
+
+ src/fcpat.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit bdf1581e3de5528f397f19bfd4ca9caaf9e7fe4a
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Mar 8 05:53:27 2013 -0500
+
+    Fix crash with FcConfigSetCurrent(NULL)
+
+ src/fccfg.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit aad4d6f6c68d06415333f5d0d3e4b4870114f11d
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Mar 7 13:19:50 2013 +0900
+
+    Do not copy FC_*LANG_OBJECT even if it's not available on the pattern
+
+    those objects are linked to the corresponding string objects.
+    this may causes inconsistency that those objects has more values
+    than them.
+
+ src/fcmatch.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+commit e96d7760886a3781a46b3271c76af99e15cb0146
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Feb 6 19:35:30 2013 +0900
+
+    Bug 59456 - Adding a --sysroot like option to fc-cache
+
+    Add an ability to set the system root to generate the caches.
+    In order to do this, new APIs, FcConfigGetSysRoot() and
+    FcConfigSetSysRoot() is available.
+
+ doc/fcconfig.fncs       | 21 +++++++++++
+ fc-cache/fc-cache.c     | 38 +++++++++++++------
+ fontconfig/fontconfig.h |  7 ++++
+ src/fccache.c           | 99
+ +++++++++++++++++++++++++++++++++----------------
+ src/fccfg.c             | 57 ++++++++++++++++++++++++++++
+ src/fcinit.c            | 30 ++++++++++-----
+ src/fcint.h             | 15 +++++++-
+ src/fcstr.c             | 62 ++++++++++++++++++++++++++++++-
+ 8 files changed, 275 insertions(+), 54 deletions(-)
+
+commit 569657a24ca11aedfd3b588984344d7ab97fe09f
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Mar 5 12:46:01 2013 +0900
+
+    Fix a memory leak
+
+ src/fclang.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+commit 612ee2a5c91b8929b2cc5abce4af84d8d7e66bd0
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 1 22:21:25 2013 +0900
+
+    Fix broken sort order with FcFontSort()
+
+    which was introduced by 4eab908c8679a797ac7016b77a93ee41bb11b0fc
+
+ src/fcmatch.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+commit ea4ebd59377d3dff3616bd20381f308a92781ae6
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 1 19:38:21 2013 +0900
+
+    Fix a crash when the object is non-builtin object
+
+ src/fcmatch.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+commit 10230497675fa4fcbb427efe8dd2883839ddaec0
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 1 18:41:27 2013 +0900
+
+    Fix a typo
+
+ conf.d/30-metric-aliases.conf | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit db69bf6ecd0da4d23bdfe38652bb53d2daa655a2
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Fri Mar 1 18:31:01 2013 +0900
+
+    Bug 60783 - Add Liberation Sans Narrow to 30-metric-aliases.conf
+
+    Add Liberation Sans Narrow as an alias for Arial Narrow
+
+ conf.d/30-metric-aliases.conf | 16 ++++++++++++++++
+ 1 file changed, 16 insertions(+)
+
+commit 2c696255749683e9a084f797eb033d222510a275
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Feb 18 13:17:53 2013 +0900
+
+    Bug 60748 - broken conf.d/10-autohint.conf and conf.d/10-unhinted.conf
+
+    Move the target of recipes to the "pattern" from the "font".
+    This is to ensure the targeted objects is updated by them
+    prior to FcDefaultSubstitute() so that it can adds the default
+    values properly.
+
+ conf.d/10-autohint.conf          | 2 +-
+ conf.d/10-no-sub-pixel.conf      | 2 +-
+ conf.d/10-sub-pixel-bgr.conf     | 2 +-
+ conf.d/10-sub-pixel-rgb.conf     | 2 +-
+ conf.d/10-sub-pixel-vbgr.conf    | 2 +-
+ conf.d/10-sub-pixel-vrgb.conf    | 2 +-
+ conf.d/10-unhinted.conf          | 2 +-
+ conf.d/11-lcdfilter-default.conf | 2 +-
+ conf.d/11-lcdfilter-legacy.conf  | 2 +-
+ conf.d/11-lcdfilter-light.conf   | 2 +-
+ 10 files changed, 10 insertions(+), 10 deletions(-)
+
+commit 83f679ce558de736ef1a095a362397da0ac3417f
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:   Fri Feb 15 09:48:38 2013 -0500
+
+    Accept digits as part of OpenType script tags
+
+    They've been used since 2005.
+
+ src/fcfreetype.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+commit 72b0480a21958f0f8c115d8e0a5bfbd8d358b5c3
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Thu Feb 7 17:56:17 2013 +0900
+
+    Add Culmus foundry to the vendor list
+
+    Maps fonts produced by the Culmus project
+    <http://culmus.sourceforge.net>
+    to the XLFD foundry name culmus.
+
+    For TrueType fonts, maps the vendor code CLM from the TrueType vendor
+    id field.
+
+    For Type1 fonts, which use heuristics to guess mappings to XLFD
+    foundries from
+    words in the copyright notice, add the names of the main contributors
+    to
+    the Culmus product to recognize the fonts under their copyright.
+
+    Patch from Maxim Iorsh
+
+ src/fcfreetype.c | 67
+ +++++++++++++++++++-------------------------------------
+ 1 file changed, 23 insertions(+), 44 deletions(-)
+
+commit 96220a5ed9d1d761b14a7ac516ac6786c132f280
+Author: Quentin Glidic <sardemff7+git@sardemff7.net>
+Date:   Sat Feb 2 17:01:07 2013 +0100
+
+    Use LOG_COMPILER and AM_TESTS_ENVIRONMENT
+
+    TESTS_ENVIRONMENT is deprecated and should be reserved to the user to
+    override the test environment
+
+    <ext>_LOG_COMPILER is meant to contain the program that runs the test
+    with <ext> extension
+    LOG_COMPILER is for extensionless tests
+    AM_TESTS_ENVIRONMENT is meant to set the environment for the tests
+
+      https://bugs.freedesktop.org/show_bug.cgi?id=60192
+
+    Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
+
+ Makefile.am      |  1 -
+ configure.ac     |  2 +-
+ doc/Makefile.am  |  5 ++++-
+ test/Makefile.am | 12 +++++++++++-
+ 4 files changed, 16 insertions(+), 4 deletions(-)
+
+commit 62b7d764ce994bb32e7614337fdfa0854445c380
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Feb 6 19:14:51 2013 +0900
+
+    Bump the cache version to 4
+
+ fontconfig/fontconfig.h | 2 +-
+ src/fcint.h             | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+commit 4eab908c8679a797ac7016b77a93ee41bb11b0fc
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Wed Feb 6 19:02:07 2013 +0900
+
+    Update _FcMatchers definition logic
+
+    to make it easier to maintain. also added FC_HASH_OBJECT to be matched
+    in the pattern, prior to FC_FILE_OBJECT.
+
+ src/fcint.h            |   2 +-
+ src/fcmatch.c          | 184
+ +++++++++++++++++++++++--------------------------
+ src/fcname.c           |   2 +-
+ src/fcobjs.h           |  90 ++++++++++++------------
+ src/fcobjshash.gperf.h |   2 +-
+ 5 files changed, 134 insertions(+), 146 deletions(-)
+
+commit 52b2b5c99268d5ad28dc0972c5f136720d55f21b
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Feb 5 20:44:18 2013 +0900
+
+    Bug 60312 - DIST_SUBDIRS should never appear in a conditional
+
+    As it is documented like this:
+
+    If SUBDIRS is defined conditionally using Automake conditionals,
+    Automake will define DIST_SUBDIRS automatically from the possible
+    values of SUBDIRS in all conditions.
+
+    So we don't need to re-define DIST_SUBDIRS in Makefile.am unless
+    we use AC_SUBST to define SUBDIRS.
+
+    Patch from Quentin Glidic
+
+ Makefile.am | 3 ---
+ 1 file changed, 3 deletions(-)
+
+commit 95af7447dba7c54ed162b667c0bb2ea6500e8f32
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Feb 4 16:03:29 2013 +0900
+
+    Bug 50733 - Add font-file hash?
+
+    Add "hash" object which contains SHA256 hash value (so far) computed
+    from the font file.
+
+ fontconfig/fontconfig.h |   1 +
+ src/Makefile.am         |   1 +
+ src/fcfreetype.c        |   9 ++
+ src/fchash.c            | 265
+ ++++++++++++++++++++++++++++++++++++++++++++++++
+ src/fcint.h             |   7 ++
+ src/fcobjs.h            |   1 +
+ 6 files changed, 284 insertions(+)
+
+commit d34643894f2dff7eec35345e8e9b32a9a32fa113
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Feb 5 14:17:16 2013 +0900
+
+    Use AM_MISSING_PROG instead of hardcoding missing
+
+ Makefile.am  | 2 +-
+ configure.ac | 1 +
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+commit 241cd53ff62599ecf557c6a4f975fc427dad9700
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Feb 5 11:33:47 2013 +0900
+
+    Revert "test: Use SH_LOG_COMPILER and AM_TESTS_ENVIRONMENT"
+
+    This reverts commit 2146b0307a3476892723104481f27f8484451c52.
+
+    That change introduces incompatibility and seems not working with
+    older releases of automake, including automake 1.12.2.
+
+ test/Makefile.am | 12 +-----------
+ 1 file changed, 1 insertion(+), 11 deletions(-)
+
+commit 2146b0307a3476892723104481f27f8484451c52
+Author: Quentin Glidic <sardemff7+git@sardemff7.net>
+Date:   Sat Feb 2 17:01:07 2013 +0100
+
+    test: Use SH_LOG_COMPILER and AM_TESTS_ENVIRONMENT
+
+    TESTS_ENVIRONMENT is deprecated and should be reserved to the user to
+    override the test environment
+
+    <ext>_LOG_COMPILER is meant to contain the program that runs the test
+    with <ext> extension
+    AM_TESTS_ENVIRONMENT is meant to set the environment for the tests
+
+      https://bugs.freedesktop.org/show_bug.cgi?id=60192
+
+    Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
+
+ test/Makefile.am | 12 +++++++++++-
+ 1 file changed, 11 insertions(+), 1 deletion(-)
+
+commit da0946721af3ab2dff3cd903065336b93592d067
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Feb 4 17:57:00 2013 +0900
+
+    Use AM_MISSING_PROG instead of hardcoding missing
+
+ configure.ac    | 2 ++
+ src/Makefile.am | 2 +-
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+commit 786ead52015573e7b60a53d79abc26d611f1fe93
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Mon Feb 4 17:20:03 2013 +0900
+
+    Modernize configure.ac
+
+ configure.ac | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+commit 20191810d1fea7c2f49b65ffee3e4d5e2bc0bac3
+Author: Akira TAGOH <akira@tagoh.org>
+Date:   Tue Jan 29 20:19:36 2013 +0900
+
+    Bug 23757 - Add mode="delete" to <edit>
+
+    Add two edit mode, "delete" and "delete_all".
+    what values are being deleted depends on <test> as documented.
+    if the target object is same to what is tested, matching value there
+    will be deleted. otherwise all of values in the object will be
+    deleted.
+    so this would means both edit mode will not take any expressions.
+
+    e.g.
+
+    Given that the testing is always true here, the following rules:
+
+      <match>
+        <test name="foo" compare="eq">
+          <string>bar</string>
+        </test>
+        <edit name="foo" mode="delete"/>
+      </match>
+
+    will removes "bar" string from "foo" object. and:
+
+      <match>
+        <test name="foo" compare="eq">
+          <string>foo</string>
+        </test>
+        <edit name="bar" mode="delete"/>
+      </match>
+
+    will removes all of values in "bar" object.
+
+ doc/fontconfig-user.sgml |  2 ++
+ fonts.dtd                |  2 +-
+ src/fccfg.c              | 10 ++++++++++
+ src/fcdbg.c              |  6 ++++--
+ src/fcint.h              |  1 +
+ src/fcxml.c              | 11 +++++++++++
+ 6 files changed, 29 insertions(+), 3 deletions(-)
+
+commit c1d9588890798e389d0f0ba633b704dee1ea8bf5
+Author: Colin Walters <walters@verbum.org>
+Date:   Thu Jan 31 21:32:46 2013 -0500
+
+    build: Only use PKG_INSTALLDIR if available
+
+    It's only in pkg-config 0.27 or newer, but 0.25 at least is still
+    fairly widespread.
+
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit e11f15628cff04c4a742f88abee22f440edcce52
+Author: Christoph J. Thompson <cjsthompson@gmail.com>
+Date:   Fri Feb 1 02:27:32 2013 +0100
+
+    Use the PKG_INSTALLDIR macro.
+
+       modified:   Makefile.am
+       modified:   configure.ac
+
+ Makefile.am  | 1 -
+ configure.ac | 1 +
+ 2 files changed, 1 insertion(+), 1 deletion(-)
+
+commit d26fb23c41abd87422778bb38eea39f25ba3dc4a
+Author: Akira TAGOH <akira@tagoh.org>
+Date:  Fri Jan 25 20:01:24 2013 +0900
+
+    Bug 59385 - Do the right thing for intermixed edit and test elements
+
+    This changes allows to have multiple mathcing rules in one <match>
+    block
+    in the same order.
+    After this changes, the following thing will works as two matching
+    rules:
+
+       <match>
+               <!-- rule 1 -->
+               <test name="family" compare="eq">
+                       <string>foo</string>
+               </test>
+               <edit name="foo" mode="append">
+                       <string>foo</string>
+               </edit>
+               <!-- rule 2 -->
+               <test name="foo" compare="eq">
+                       <string>foo</string>
+               </test>
+               <edit name="foo" mode="append">
+                       <string>bar</string>
+               </edit>
+       </match>
+
+ fonts.dtd   | 2 +-
+ src/fcxml.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 47 insertions(+), 1 deletion(-)
+
+commit fb3b410998aba8835999e2ca7003a180431cfaf4
+Author: Akira TAGOH <akira@tagoh.org>
+Date:  Wed Jan 23 12:37:51 2013 +0900
+
+    remove the unnecessary code
+
+ src/fccompat.c | 6 ------
+ 1 file changed, 6 deletions(-)
+
+commit 5400bb4fb43dc811b813f11d5b0c023db727f543
+Author: Akira TAGOH <akira@tagoh.org>
+Date:  Wed Jan 23 12:32:37 2013 +0900
+
+    Add another approach to FC_PRGNAME for Solaris 10 or before
+
+    Patch from Raimund Steger
+
+ configure.ac   | 2 +-
+ src/fcdefault.c | 5 ++++-
+ 2 files changed, 5 insertions(+), 2 deletions(-)
+
+commit 000ca9ccb03013a5b151f0d21148ab0ca4c2f2de
+Author: Akira TAGOH <akira@tagoh.org>
+Date:  Tue Jan 22 12:11:56 2013 +0900
+
+    Fix installation on MinGW32
+
+    Patch from LRN
+
+ src/Makefile.am | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+commit 6363193a0575cf6f58baf7f0a772ad8f92b7b904
+Author: Akira TAGOH <akira@tagoh.org>
+Date:  Tue Jan 22 12:03:28 2013 +0900
+
+    Fix mkstemp absence for some platform
+
+    Patch from LRN and modified to make more generic.
+
+ src/fccache.c |  57 ----------------------------
+ src/fccompat.c | 116
+ +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ src/fcint.h   |   3 ++
+ 3 files changed, 119 insertions(+), 57 deletions(-)
+
+commit 9dbc282796e9a4d5a2a8cc7d1c8e29b9154e91c0
+Author: Akira TAGOH <akira@tagoh.org>
+Date:  Tue Jan 22 10:26:41 2013 +0900
+
+    Add missing file descriptor to F_DUPFD_CLOEXEC
+
+    Patch from Matthieu Herrb
+
+ src/fccompat.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 6118781f7f5dba672d19a841cc231661bf5fb59d
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:  Thu Jan 17 19:27:20 2013 -0600
+
+    Fix readlink failure
+
+    As reported by Raimund Steger.
+
+ src/fcdefault.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+commit 671bcb34e23ed03b1f564af35560db81f8b12b96
+Author: Akira TAGOH <akira@tagoh.org>
+Date:  Thu Jan 17 12:49:16 2013 +0900
+
+    Better fix for 2fe5ddfd
+
+    Drop realpath() and fix breakage on Win32
+
+ configure.ac   |  2 +-
+ src/fcdefault.c | 14 +++++++-------
+ 2 files changed, 8 insertions(+), 8 deletions(-)
+
+commit 2fe5ddfdae6be80db5b7e622ab6c1ab985377542
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:  Wed Jan 16 21:01:28 2013 -0600
+
+    Fix FC_PRGNAME default
+
+    As reported by Raimund Steger.
+
+ src/fcdefault.c | 36 +++++++++++++++++++-----------------
+ 1 file changed, 19 insertions(+), 17 deletions(-)
+
+commit 55d39bcad0737e92e1207fabbd8c65fa9e5e0482
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:  Wed Jan 16 07:30:44 2013 -0600
+
+    Fix fc-cache crash caused by looking up NULL object incorrectly
+
+    We were returning a skiplist node when looking up NULL!
+
+ src/fccache.c | 7 +++++--
+ src/fccfg.c   | 4 ++--
+ 2 files changed, 7 insertions(+), 4 deletions(-)
+
+commit 106c4f73119e00a7804ef79ee556f1111d680e32
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:  Wed Jan 16 07:05:07 2013 -0600
+
+    Minor
+
+ src/fcfreetype.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+commit 1a5d0daea0173e2cc47d76d2022467f0dbd423f0
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:  Wed Jan 16 04:52:06 2013 -0600
+
+    Remove unused checks for common functions
+
+    The check results of these were never actually used.
+
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit f9ac4c84c90cbb57afbf1fa3a5c9ff3bfc4f537e
+Author: Akira TAGOH <akira@tagoh.org>
+Date:  Wed Jan 16 16:35:28 2013 +0900
+
+    Improve FcGetPrgname() to work on BSD
+
+ configure.ac   |  2 +-
+ src/fcdefault.c | 10 ++++++++++
+ 2 files changed, 11 insertions(+), 1 deletion(-)
+
+commit ec5ca08c807585a9230f83c95f7cca6b7065b142
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:  Tue Jan 15 20:41:26 2013 -0600
+
+    Bug 59379 - FC_PRGNAME
+
+    Can be used for per-application configuration.
+
+ configure.ac             |  2 +-
+ doc/fontconfig-devel.sgml |  3 +-
+ doc/fontconfig-user.sgml  |  1 +
+ fontconfig/fontconfig.h   |  1 +
+ src/fccfg.c              |  7 ++++
+ src/fcdefault.c          | 85
+ +++++++++++++++++++++++++++++++++++++++++++++--
+ src/fcint.h              |  3 ++
+ src/fcobjs.h             |  1 +
+ 8 files changed, 99 insertions(+), 4 deletions(-)
+
+commit 3f84695104b169fe25742ba3b91d04467f5debc4
+Author: Akira TAGOH <akira@tagoh.org>
+Date:  Tue Sep 4 12:39:48 2012 +0900
+
+    Bug 50497 - RFE: Add OpenType feature tags support
+
+    Add FC_FONT_FEATURES to store the feature tags to be enabled.
+
+ doc/fontconfig-devel.sgml | 2 ++
+ doc/fontconfig-user.sgml  | 1 +
+ fontconfig/fontconfig.h   | 1 +
+ src/fcobjs.h             | 1 +
+ 4 files changed, 5 insertions(+)
+
+commit dffb69ed8c7cf2e707bc692f94b51108b772d9d8
+Author: Akira TAGOH <akira@tagoh.org>
+Date:  Tue Jan 15 17:26:27 2013 +0900
+
+    Fix the build fail on MinGW
+
+    Reported at
+    http://lists.freedesktop.org/archives/fontconfig/2013-January/004601.html
+
+    just warn at the runtime instead of the compile time. it somewhat
+    works
+    on even MinGW since FcMakeTempfile() isn't used on Win32 so far.
+
+ src/fccompat.c | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+commit 8b8f0d21534aa9b82276815c84429ffca8941d2a
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:  Mon Jan 14 14:39:12 2013 -0600
+
+    Minor
+
+ src/fcmatch.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 8828fffd93c6b19bcfd7626ddc472aa8f055d034
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:  Mon Jan 14 14:36:38 2013 -0600
+
+    Copy all values from pattern to font if the font doesn't have
+    the element
+
+    Bug 59376 - FcFontRenderPrepare enhancement
+
+ src/fcmatch.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+commit 0831c1770e4bac7269a190936bbb0529d747e233
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:  Thu Jan 10 09:01:52 2013 -0600
+
+    Ensure we find the uninstalled fontconfig header
+
+    Patch from Colin Walters.
+
+ test/Makefile.am | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit 1527c395cbe0bbab9e66a42213ef3ac5ce1c0383
+Author: Behdad Esfahbod <behdad@behdad.org>
+Date:  Thu Jan 10 09:00:18 2013 -0600
+
+    Resepct $NOCONFIGURE
+
+    Patch from Colin Walters.
+
+ autogen.sh | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
 commit fcc3567847949ec422157d331c9640cd0453e169
 Author: Akira TAGOH <akira@tagoh.org>
-Date:   Thu Jan 10 17:57:12 2013 +0900
+Date:  Thu Jan 10 17:57:12 2013 +0900
 
     Bump version to 2.10.91
 
- README                  | 105
+ README                         | 105
  +++++++++++++++++++++++++++++++++++++++++++++++-
- configure.ac            |   2 +-
+ configure.ac           |   2 +-
  fontconfig/fontconfig.h |   2 +-
  3 files changed, 105 insertions(+), 4 deletions(-)
 
 commit 98352247f2ab01046c330485f73fd26eb15a08a4
 Author: Akira TAGOH <akira@tagoh.org>
-Date:   Thu Jan 10 17:56:51 2013 +0900
+Date:  Thu Jan 10 17:56:51 2013 +0900
 
     Update the date in README properly
 
@@ -21,7 +830,7 @@ Date:   Thu Jan 10 17:56:51 2013 +0900
 
 commit 9066fbe7855674ff51053b78f1d0d179486e22ea
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Thu Jan 10 01:23:07 2013 -0600
+Date:  Thu Jan 10 01:23:07 2013 -0600
 
     Make linker happy
 
@@ -30,39 +839,39 @@ Date:   Thu Jan 10 01:23:07 2013 -0600
 
 commit 98efed3bcafc92b573b193b5b38039aa717617d3
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Thu Jan 10 01:17:02 2013 -0600
+Date:  Thu Jan 10 01:17:02 2013 -0600
 
     Add atomic ops for Solaris
 
     Patch from Raimund Steger.
 
- configure.ac   | 22 ++++++++++++++++++++--
+ configure.ac  | 22 ++++++++++++++++++++--
  src/fcatomic.h | 12 ++++++++++++
  2 files changed, 32 insertions(+), 2 deletions(-)
 
 commit 8e8a99ae8a1c2e56c42093bee577d6de66248366
 Author: Akira TAGOH <akira@tagoh.org>
-Date:   Mon Sep 10 16:09:04 2012 +0900
+Date:  Mon Sep 10 16:09:04 2012 +0900
 
     Bug 29312 - RFE: feature to indicate which characters are missing
     to satisfy the language support
 
     Add fc-validate to check the language coverage in a font.
 
- Makefile.am                  |   2 +-
- configure.ac                 |   1 +
- doc/fclangset.fncs           |   8 ++
+ Makefile.am                 |   2 +-
+ configure.ac                |   1 +
+ doc/fclangset.fncs          |   8 ++
  fc-validate/Makefile.am      |  60 +++++++++++
  fc-validate/fc-validate.c    | 242
  +++++++++++++++++++++++++++++++++++++++++++
  fc-validate/fc-validate.sgml | 182 ++++++++++++++++++++++++++++++++
  fontconfig/fontconfig.h      |   3 +
- src/fcint.h                  |   3 -
+ src/fcint.h                 |   3 -
  8 files changed, 497 insertions(+), 4 deletions(-)
 
 commit 16fd965171808c10f87d097f678ee9e10771be72
 Author: Akira TAGOH <akira@tagoh.org>
-Date:   Wed Jan 9 11:26:56 2013 +0900
+Date:  Wed Jan 9 11:26:56 2013 +0900
 
     Fix a typo in the manpages template
 
@@ -71,20 +880,20 @@ Date:   Wed Jan 9 11:26:56 2013 +0900
 
 commit 7680e9ee891a74f0e428e30604a5d0ff0e2e9383
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Tue Jan 8 14:51:00 2013 -0600
+Date:  Tue Jan 8 14:51:00 2013 -0600
 
     Add pthread test
 
     Not enabled by default since it requires config and fonts.
 
- test/Makefile.am    |  9 ++++++
+ test/Makefile.am    | 9 ++++++
  test/test-pthread.c | 79
  +++++++++++++++++++++++++++++++++++++++++++++++++++++
  2 files changed, 88 insertions(+)
 
 commit dc21ed28d69df279c6068d9cae862e02af72815f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Tue Jan 8 13:01:48 2013 -0600
+Date:  Tue Jan 8 13:01:48 2013 -0600
 
     Fix memory corruption!
 
@@ -97,22 +906,22 @@ Date:   Tue Jan 8 13:01:48 2013 -0600
     running to catch:
 
     ==4464== Invalid read of size 4
-    ==4464==    at 0x4E58FF3: FcStrListNext (fcstr.c:1256)
-    ==4464==    by 0x4E3F11D: FcConfigSubstituteWithPat (fccfg.c:1508)
-    ==4464==    by 0x4E3F8F4: FcConfigSubstitute (fccfg.c:1729)
-    ==4464==    by 0x4009FA: test_match (simple-pthread-test.c:53)
-    ==4464==    by 0x400A6E: run_test_in_thread (simple-pthread-test.c:68)
-    ==4464==    by 0x507EE99: start_thread (pthread_create.c:308)
+    ==4464==   at 0x4E58FF3: FcStrListNext (fcstr.c:1256)
+    ==4464==   by 0x4E3F11D: FcConfigSubstituteWithPat (fccfg.c:1508)
+    ==4464==   by 0x4E3F8F4: FcConfigSubstitute (fccfg.c:1729)
+    ==4464==   by 0x4009FA: test_match (simple-pthread-test.c:53)
+    ==4464==   by 0x400A6E: run_test_in_thread (simple-pthread-test.c:68)
+    ==4464==   by 0x507EE99: start_thread (pthread_create.c:308)
     ==4464==  Address 0x6bc0b44 is 4 bytes inside a block of size
     24 free'd
-    ==4464==    at 0x4C2A82E: free (in
+    ==4464==   at 0x4C2A82E: free (in
     /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
-    ==4464==    by 0x4E58F84: FcStrSetDestroy (fcstr.c:1236)
-    ==4464==    by 0x4E3F0C6: FcConfigSubstituteWithPat (fccfg.c:1507)
-    ==4464==    by 0x4E3F8F4: FcConfigSubstitute (fccfg.c:1729)
-    ==4464==    by 0x4009FA: test_match (simple-pthread-test.c:53)
-    ==4464==    by 0x400A6E: run_test_in_thread (simple-pthread-test.c:68)
-    ==4464==    by 0x507EE99: start_thread (pthread_create.c:308)
+    ==4464==   by 0x4E58F84: FcStrSetDestroy (fcstr.c:1236)
+    ==4464==   by 0x4E3F0C6: FcConfigSubstituteWithPat (fccfg.c:1507)
+    ==4464==   by 0x4E3F8F4: FcConfigSubstitute (fccfg.c:1729)
+    ==4464==   by 0x4009FA: test_match (simple-pthread-test.c:53)
+    ==4464==   by 0x400A6E: run_test_in_thread (simple-pthread-test.c:68)
+    ==4464==   by 0x507EE99: start_thread (pthread_create.c:308)
 
     Thread test is running happily now.  Will add the test in a moment.
 
@@ -121,19 +930,19 @@ Date:   Tue Jan 8 13:01:48 2013 -0600
 
 commit 4e6c7d0827c5b3b20205521bf9bd2e94e704b36d
 Author: Akira TAGOH <akira@tagoh.org>
-Date:   Tue Jan 8 16:20:28 2013 +0900
+Date:  Tue Jan 8 16:20:28 2013 +0900
 
     Fix a build fail on mingw
 
     Regarding the change of 596931c8b4a7a35cbff9c33437d3cd44395d9c3f
 
- configure.ac   | 2 +-
+ configure.ac  | 2 +-
  src/fccompat.c | 4 ++++
  2 files changed, 5 insertions(+), 1 deletion(-)
 
 commit d837a7a584bc1e908bc4370d337cd10ecc781fad
 Author: Akira TAGOH <akira@tagoh.org>
-Date:   Tue Jan 8 16:18:32 2013 +0900
+Date:  Tue Jan 8 16:18:32 2013 +0900
 
     missing header file to declare _mkdir
 
@@ -142,24 +951,24 @@ Date:   Tue Jan 8 16:18:32 2013 +0900
 
 commit 596931c8b4a7a35cbff9c33437d3cd44395d9c3f
 Author: Akira TAGOH <akira@tagoh.org>
-Date:   Thu Dec 6 20:01:52 2012 +0900
+Date:  Thu Dec 6 20:01:52 2012 +0900
 
     Bug 47705 - Using O_CLOEXEC
 
- configure.ac    |   4 ++-
+ configure.ac   |   4 ++-
  src/Makefile.am |   1 +
  src/fcatomic.c  |   3 +-
- src/fccache.c   |   6 ++--
+ src/fccache.c  |   6 ++--
  src/fccompat.c  | 103
  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- src/fcint.h     |   7 ++++
- src/fcstat.c    |   2 +-
- src/fcxml.c     |   2 +-
+ src/fcint.h    |   7 ++++
+ src/fcstat.c   |   2 +-
+ src/fcxml.c    |   2 +-
  8 files changed, 120 insertions(+), 8 deletions(-)
 
 commit d7de1b5c6d4b8800825913ac40a9cea00824f2f8
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Mon Jan 7 20:10:14 2013 -0600
+Date:  Mon Jan 7 20:10:14 2013 -0600
 
     Fix pthreads setup
 
@@ -170,7 +979,7 @@ Date:   Mon Jan 7 20:10:14 2013 -0600
 
 commit 1c4c4978adb0fa59767ac7d8c7f98a86928b2fdc
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Mon Jan 7 17:59:17 2013 -0600
+Date:  Mon Jan 7 17:59:17 2013 -0600
 
     Oops, add the actual file
 
@@ -180,7 +989,7 @@ Date:   Mon Jan 7 17:59:17 2013 -0600
 
 commit dc11dd581f228623f0f14b3a6a1e4beaa659266b
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Mon Jan 7 16:41:29 2013 -0600
+Date:  Mon Jan 7 16:41:29 2013 -0600
 
     Add 10-scale-bitmap-fonts.conf and enable by default
 
@@ -189,7 +998,7 @@ Date:   Mon Jan 7 16:41:29 2013 -0600
 
 commit ea3a35306617eec068ed961439cf76cdbcb10c28
 Author: Akira TAGOH <akira@tagoh.org>
-Date:   Mon Jan 7 17:55:04 2013 +0900
+Date:  Mon Jan 7 17:55:04 2013 +0900
 
     Clean up the unused variable
 
@@ -198,7 +1007,7 @@ Date:   Mon Jan 7 17:55:04 2013 +0900
 
 commit 17eda89ed2e24a3fc5f68538dd7fd9ada8efb087
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Thu Jan 3 20:33:34 2013 -0600
+Date:  Thu Jan 3 20:33:34 2013 -0600
 
     Remove FcInit() calls from tools
 
@@ -206,16 +1015,16 @@ Date:   Thu Jan 3 20:33:34 2013 -0600
     doesn't,
     it's a bug.
 
- fc-list/fc-list.c       | 5 -----
- fc-match/fc-match.c     | 5 -----
+ fc-list/fc-list.c      | 5 -----
+ fc-match/fc-match.c    | 5 -----
  fc-pattern/fc-pattern.c | 5 -----
- fc-query/fc-query.c     | 6 ------
- fc-scan/fc-scan.c       | 6 ------
+ fc-query/fc-query.c    | 6 ------
+ fc-scan/fc-scan.c      | 6 ------
  5 files changed, 27 deletions(-)
 
 commit 102a4344dd7f668cf03b9665c718505050e0ae78
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Thu Jan 3 20:31:22 2013 -0600
+Date:  Thu Jan 3 20:31:22 2013 -0600
 
     Don't use blanks for fc-query
 
@@ -226,7 +1035,7 @@ Date:   Thu Jan 3 20:31:22 2013 -0600
 
 commit b6b678e71eb0ba2b53335b7df0804058f6bd006d
 Author: Akira TAGOH <akira@tagoh.org>
-Date:   Fri Jan 4 11:29:50 2013 +0900
+Date:  Fri Jan 4 11:29:50 2013 +0900
 
     Missing header file for _mkdir declaration
 
@@ -235,7 +1044,7 @@ Date:   Fri Jan 4 11:29:50 2013 +0900
 
 commit 8e143b4ec447a7ee6c501e7488a3c94db7e6a035
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Thu Jan 3 04:19:12 2013 -0600
+Date:  Thu Jan 3 04:19:12 2013 -0600
 
     Minor
 
@@ -244,7 +1053,7 @@ Date:   Thu Jan 3 04:19:12 2013 -0600
 
 commit 16ddb9ff31a7d45ae477f5274c704523b2ec7330
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Wed Jan 2 22:37:33 2013 -0600
+Date:  Wed Jan 2 22:37:33 2013 -0600
 
     Ugh, add Tools.mk
 
@@ -254,7 +1063,7 @@ Date:   Wed Jan 2 22:37:33 2013 -0600
 
 commit 86e3255118e943bcc5c16cf1628ca381470ca34d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Wed Jan 2 20:16:55 2013 -0600
+Date:  Wed Jan 2 20:16:55 2013 -0600
 
     Second try to make Sun CPP happy
 
@@ -263,23 +1072,23 @@ Date:   Wed Jan 2 20:16:55 2013 -0600
 
 commit bc62c40597c3d95edfdc6a93b39d0bb3837d1d34
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Wed Jan 2 20:08:40 2013 -0600
+Date:  Wed Jan 2 20:08:40 2013 -0600
 
     Really fix cross-compiling and building of tools this time
 
- configure.ac                |  1 +
- fc-case/Makefile.am         | 47 +++++----------------------
+ configure.ac               |  1 +
+ fc-case/Makefile.am        | 47 +++++----------------------
  fc-glyphname/Makefile.am    | 47 +++++----------------------
- fc-glyphname/fc-glyphname.c |  2 +-
- fc-lang/Makefile.am         | 44 +++++---------------------
- fc-lang/fc-lang.c           |  8 ++---
- m4/ax_cc_for_build.m4       | 77
+ fc-glyphname/fc-glyphname.c | 2 +-
+ fc-lang/Makefile.am        | 44 +++++---------------------
+ fc-lang/fc-lang.c          |  8 ++---
+ m4/ax_cc_for_build.m4      | 77
  +++++++++++++++++++++++++++++++++++++++++++++
  7 files changed, 107 insertions(+), 119 deletions(-)
 
 commit 32c1d32cbd54686804481fedaa1881d4f3043f1b
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Wed Jan 2 19:04:17 2013 -0600
+Date:  Wed Jan 2 19:04:17 2013 -0600
 
     Work around Sun CPP
 
@@ -338,12 +1147,12 @@ Date:   Wed Jan 2 19:04:17 2013 -0600
 
     [...]
     fcobjshash.gperf: fcobjshash.gperf.h fcobjs.h
-        $(AM_V_GEN) $(CPP) -I$(top_srcdir) $< | \
-        $(SED) 's/^\s*//;s/\s*,\s*/,/;' | \
-        $(GREP) '^[^#]' | \
-        $(AWK) '/CUT_OUT_BEGIN/,/CUT_OUT_END/ { next; }; { print; };' \
-        > $@.tmp && \
-        mv -f $@.tmp $@
+       $(AM_V_GEN) $(CPP) -I$(top_srcdir) $< | \
+       $(SED) 's/^\s*//;s/\s*,\s*/,/;' | \
+       $(GREP) '^[^#]' | \
+       $(AWK) '/CUT_OUT_BEGIN/,/CUT_OUT_END/ { next; }; { print; };' \
+       > $@.tmp && \
+       mv -f $@.tmp $@
     [...]
 
     though I'm not sure what kind of guarantee CPP can give us/what
@@ -354,17 +1163,17 @@ Date:   Wed Jan 2 19:04:17 2013 -0600
 
 commit b1510145e7a38802bd544de6035fabf9f81f9710
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Wed Jan 2 18:57:47 2013 -0600
+Date:  Wed Jan 2 18:57:47 2013 -0600
 
     Fix build around true/false
 
  src/fcatomic.h |  4 ++--
- src/fcinit.c   | 10 ++++++++++
+ src/fcinit.c  | 10 ++++++++++
  2 files changed, 12 insertions(+), 2 deletions(-)
 
 commit 538f1579e86fdcf471cea58945bf8c674d5b91e7
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Wed Jan 2 18:07:13 2013 -0600
+Date:  Wed Jan 2 18:07:13 2013 -0600
 
     Trying to fix distcheck
 
@@ -372,26 +1181,26 @@ Date:   Wed Jan 2 18:07:13 2013 -0600
 
     At least, if docbook is present, distcheck passes now.
 
- Makefile.am     | 11 +++++++++--
- configure.ac    |  4 ----
+ Makefile.am    | 11 +++++++++--
+ configure.ac   |  4 ----
  doc/Makefile.am |  8 ++++++++
  3 files changed, 17 insertions(+), 6 deletions(-)
 
 commit 46ab96b8fa029fbc8ccf69a6f2fda89866e3ac9c
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Wed Jan 2 17:52:00 2013 -0600
+Date:  Wed Jan 2 17:52:00 2013 -0600
 
     Fix more warnings.
 
     Linux build and mingw32 cross build warning-free now.
 
- src/fcobjs.c           | 10 ++++++++--
+ src/fcobjs.c          | 10 ++++++++--
  src/fcobjshash.gperf.h |  2 +-
  2 files changed, 9 insertions(+), 3 deletions(-)
 
 commit 558b3c65f91b4b2dd65ce2242e1a21ace621e44b
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Wed Jan 2 17:49:41 2013 -0600
+Date:  Wed Jan 2 17:49:41 2013 -0600
 
     Use CC_FOR_BUILD to generate source files
 
@@ -401,36 +1210,36 @@ Date:   Wed Jan 2 17:49:41 2013 -0600
 
     One caveat: the fix is not fully correct since config.h is being
     included in the files built with CC_FOR_BUILD, but config.h has config
-    for the host system, not the build system.  Should be fine though.
+    for the host system, not the build system. Should be fine though.
 
- configure.ac             | 1 +
- doc/Makefile.am          | 6 +-----
- fc-case/Makefile.am      | 8 +-------
+ configure.ac            | 1 +
+ doc/Makefile.am         | 6 +-----
+ fc-case/Makefile.am     | 8 +-------
  fc-glyphname/Makefile.am | 9 ++++-----
- fc-lang/Makefile.am      | 9 +++------
+ fc-lang/Makefile.am     | 9 +++------
  5 files changed, 10 insertions(+), 23 deletions(-)
 
 commit ec8a40d2381014ad2e72b5da0e6357a85f078f9f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Wed Jan 2 17:35:56 2013 -0600
+Date:  Wed Jan 2 17:35:56 2013 -0600
 
     Fix build and warnings on win32
 
  src/Makefile.am |  1 +
  src/fcatomic.h  |  9 +++------
- src/fccache.c   |  2 +-
- src/fccfg.c     | 17 ++++++-----------
- src/fcint.h     |  7 +------
- src/fcmutex.h   |  5 ++---
- src/fcstat.c    |  3 ---
- src/fcstr.c     |  3 ---
+ src/fccache.c  |  2 +-
+ src/fccfg.c    | 17 ++++++-----------
+ src/fcint.h    |  7 +------
+ src/fcmutex.h  |  5 ++---
+ src/fcstat.c   |  3 ---
+ src/fcstr.c    |  3 ---
  src/fcwindows.h | 44 ++++++++++++++++++++++++++++++++++++++++++++
- src/fcxml.c     | 18 +++++++++---------
+ src/fcxml.c    | 18 +++++++++---------
  10 files changed, 67 insertions(+), 42 deletions(-)
 
 commit 5c0a4f2726fd1440bf3ec4bb375e5e4d146bd989
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Wed Jan 2 02:27:57 2013 -0600
+Date:  Wed Jan 2 02:27:57 2013 -0600
 
     Minor
 
@@ -440,7 +1249,7 @@ Date:   Wed Jan 2 02:27:57 2013 -0600
 
 commit 766bed901f7f4c648387fb403ef6e253be1c45e9
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Wed Jan 2 02:19:04 2013 -0600
+Date:  Wed Jan 2 02:19:04 2013 -0600
 
     Fix compiler warnings
 
@@ -449,24 +1258,24 @@ Date:   Wed Jan 2 02:19:04 2013 -0600
 
 commit 93fb1d4bab5fefb73393141bb3e96c9dc279e615
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Wed Jan 2 02:06:15 2013 -0600
+Date:  Wed Jan 2 02:06:15 2013 -0600
 
     Remove FcSharedStr*
 
- src/fccfg.c     |  2 +-
+ src/fccfg.c    |  2 +-
  src/fcdefault.c |  6 +++---
- src/fcint.h     |  9 +++------
- src/fclist.c    |  6 +++---
- src/fcname.c    |  2 +-
- src/fcobjs.c    |  2 +-
- src/fcpat.c     | 25 +++----------------------
- src/fcstr.c     | 11 +----------
- src/fcxml.c     | 10 +++++-----
+ src/fcint.h    |  9 +++------
+ src/fclist.c   |  6 +++---
+ src/fcname.c   |  2 +-
+ src/fcobjs.c   |  2 +-
+ src/fcpat.c    | 25 +++----------------------
+ src/fcstr.c    | 11 +----------
+ src/fcxml.c    | 10 +++++-----
  9 files changed, 21 insertions(+), 52 deletions(-)
 
 commit 6b143781073cf395fd6211c75bbdc9f5b5a54936
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Wed Jan 2 01:54:38 2013 -0600
+Date:  Wed Jan 2 01:54:38 2013 -0600
 
     Fixup fcobjs.c
 
@@ -477,7 +1286,7 @@ Date:   Wed Jan 2 01:54:38 2013 -0600
 
 commit 6047ce7b9fb793da4e693e3777bbd3e1baf3146e
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Wed Jan 2 01:31:34 2013 -0600
+Date:  Wed Jan 2 01:31:34 2013 -0600
 
     Warn about undefined/invalid attributes during config parsing
 
@@ -486,7 +1295,7 @@ Date:   Wed Jan 2 01:31:34 2013 -0600
 
 commit b604f10c0c31a56ae16154dfe6a2f13b795aaabf
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Wed Jan 2 01:09:20 2013 -0600
+Date:  Wed Jan 2 01:09:20 2013 -0600
 
     Make fcobjs.c thread-safe
 
@@ -498,7 +1307,7 @@ Date:   Wed Jan 2 01:09:20 2013 -0600
 
 commit 2ae07bbcd2a7650f2711b45e78e65e2ca1c4a17a
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Mon Oct 15 19:35:03 2012 -0500
+Date:  Mon Oct 15 19:35:03 2012 -0500
 
     Make FcDirCacheDispose() threadsafe
 
@@ -507,7 +1316,7 @@ Date:   Mon Oct 15 19:35:03 2012 -0500
 
 commit 68b8ae9af8b0f86dade6135b01aaf0b2f2077fb5
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Wed Oct 10 15:24:31 2012 -0400
+Date:  Wed Oct 10 15:24:31 2012 -0400
 
     Make cache hash threadsafe
 
@@ -519,7 +1328,7 @@ Date:   Wed Oct 10 15:24:31 2012 -0400
 
 commit adb03b730de5d090855f45bc23b934a65ef2399c
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Mon Oct 8 20:03:35 2012 -0400
+Date:  Mon Oct 8 20:03:35 2012 -0400
 
     Make random-state initialization threadsafe
 
@@ -528,7 +1337,7 @@ Date:   Mon Oct 8 20:03:35 2012 -0400
 
 commit 91dd7d28ffc397fb1389f76ac55b397e55da809d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Mon Oct 8 20:02:05 2012 -0400
+Date:  Mon Oct 8 20:02:05 2012 -0400
 
     Add a big cache lock
 
@@ -539,17 +1348,17 @@ Date:   Mon Oct 8 20:02:05 2012 -0400
 
 commit 8d2bbb193ae49ea6abd5a9b4d28d3d88ac97d7a2
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Sun Oct 7 21:03:58 2012 -0400
+Date:  Sun Oct 7 21:03:58 2012 -0400
 
     Make cache refcounting threadsafe
 
  src/fcatomic.h |  1 +
- src/fccache.c  | 13 ++++++-------
+ src/fccache.c | 13 ++++++-------
  2 files changed, 7 insertions(+), 7 deletions(-)
 
 commit 31ee38e541180db6d7bc58d5abde83136352e7ce
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Sun Oct 7 17:46:12 2012 -0400
+Date:  Sun Oct 7 17:46:12 2012 -0400
 
     Minor
 
@@ -558,7 +1367,7 @@ Date:   Sun Oct 7 17:46:12 2012 -0400
 
 commit b8f238e49d7b7e1cff787c518cd4490b32039cca
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Sun Oct 7 17:42:18 2012 -0400
+Date:  Sun Oct 7 17:42:18 2012 -0400
 
     Make FcCacheIsMmapSafe() threadsafe
 
@@ -567,7 +1376,7 @@ Date:   Sun Oct 7 17:42:18 2012 -0400
 
 commit b27a22aae9902d409c21e5bb19a97dcc5966ea24
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Sun Oct 7 17:29:45 2012 -0400
+Date:  Sun Oct 7 17:29:45 2012 -0400
 
     Minor
 
@@ -576,18 +1385,18 @@ Date:   Sun Oct 7 17:29:45 2012 -0400
 
 commit 0552f26016865b8a76819cf342fa0cf13afdc5e8
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Sun Oct 7 17:02:50 2012 -0400
+Date:  Sun Oct 7 17:02:50 2012 -0400
 
     Make default-FcConfig threadsafe
 
- src/fccfg.c     | 60
+ src/fccfg.c    | 60
  +++++++++++++++++++++++++++++++++++++--------------------
  src/fcdefault.c |  3 +--
  2 files changed, 40 insertions(+), 23 deletions(-)
 
 commit e53f5da54f066f73a53eba1f82f54521fa3f7ea2
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Sun Oct 7 16:42:36 2012 -0400
+Date:  Sun Oct 7 16:42:36 2012 -0400
 
     Minor
 
@@ -596,7 +1405,7 @@ Date:   Sun Oct 7 16:42:36 2012 -0400
 
 commit 7ae24b4554a8543d8cd41a83b6114e0143982758
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Sun Oct 7 16:37:03 2012 -0400
+Date:  Sun Oct 7 16:37:03 2012 -0400
 
     Refactor; contain default config in fccfg.c
 
@@ -608,7 +1417,7 @@ Date:   Sun Oct 7 16:37:03 2012 -0400
 
 commit 32b0d88923524c24f4be36733ebef5872b57b95a
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Sun Oct 7 16:26:53 2012 -0400
+Date:  Sun Oct 7 16:26:53 2012 -0400
 
     Make FcDefaultFini() threadsafe
 
@@ -617,7 +1426,7 @@ Date:   Sun Oct 7 16:26:53 2012 -0400
 
 commit 7019896c99872b23d89b1404b02754cbc4ea1456
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Sun Oct 7 16:09:35 2012 -0400
+Date:  Sun Oct 7 16:09:35 2012 -0400
 
     Make FcInitDebug() idempotent
 
@@ -626,66 +1435,66 @@ Date:   Sun Oct 7 16:09:35 2012 -0400
 
 commit b97ab0c94938448dc2b780b8f0f60fb68884899f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Sun Oct 7 15:52:25 2012 -0400
+Date:  Sun Oct 7 15:52:25 2012 -0400
 
     Make FcGetDefaultLang and FcGetDefaultLangs thread-safe
 
  src/fcdefault.c | 83
  +++++++++++++++++++++++++++++++++++++++++----------------
- src/fcinit.c    |  1 +
- src/fcint.h     |  3 +++
- src/fcstr.c     |  4 +++
+ src/fcinit.c   |  1 +
+ src/fcint.h    |  3 +++
+ src/fcstr.c    |  4 +++
  4 files changed, 68 insertions(+), 23 deletions(-)
 
 commit 64af9e1917114c789ad74dd28b3248f8c0525f45
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Sun Oct 7 14:41:38 2012 -0400
+Date:  Sun Oct 7 14:41:38 2012 -0400
 
     Make refcounts, patterns, charsets, strings, and FcLang thread-safe
 
  src/fcatomic.h  | 18 +++++++++---------
- src/fccfg.c     | 29 +++++++++++++++--------------
+ src/fccfg.c    | 29 +++++++++++++++--------------
  src/fccharset.c | 24 ++++++++++++------------
  src/fcdefault.c |  2 +-
- src/fcint.h     | 26 ++++++++++++++++++++------
- src/fclang.c    | 43 ++++++++++++++++++++++++-------------------
- src/fcmatch.c   |  4 ----
- src/fcmutex.h   |  2 ++
- src/fcpat.c     | 25 ++++++++++++-------------
- src/fcstr.c     | 24 +++++++++++++-----------
+ src/fcint.h    | 26 ++++++++++++++++++++------
+ src/fclang.c   | 43 ++++++++++++++++++++++++-------------------
+ src/fcmatch.c  |  4 ----
+ src/fcmutex.h  |  2 ++
+ src/fcpat.c    | 25 ++++++++++++-------------
+ src/fcstr.c    | 24 +++++++++++++-----------
  10 files changed, 108 insertions(+), 89 deletions(-)
 
 commit 814871b2aaa3a22ef711ca4656507fb69c952156
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Sun Oct 7 14:24:28 2012 -0400
+Date:  Sun Oct 7 14:24:28 2012 -0400
 
     Add thread-safety primitives
 
- COPYING         |   1 +
+ COPYING        |   1 +
  src/Makefile.am |   2 +
  src/fcatomic.h  | 123
  ++++++++++++++++++++++++++++++++++++++++++++++++++++++
- src/fcint.h     |   4 +-
- src/fcmutex.h   | 126
+ src/fcint.h    |   4 +-
+ src/fcmutex.h  | 126
  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  5 files changed, 254 insertions(+), 2 deletions(-)
 
 commit f6d8306e566dd1a4b8a13f433d2bc1ffbe667db7
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Sun Oct 7 13:49:45 2012 -0400
+Date:  Sun Oct 7 13:49:45 2012 -0400
 
     Add build stuff for threadsafety primitives
 
     Copied over from HarfBuzz.
 
- configure.ac     |  38 ++++++-
+ configure.ac    |  38 ++++++-
  m4/ax_pthread.m4 | 309
  +++++++++++++++++++++++++++++++++++++++++++++++++++++++
  2 files changed, 346 insertions(+), 1 deletion(-)
 
 commit b53744383dbefb3f80fb8a7365487669a499ad76
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Sat Oct 6 18:15:58 2012 -0400
+Date:  Sat Oct 6 18:15:58 2012 -0400
 
     Fix build stuff
 
@@ -694,11 +1503,11 @@ Date:   Sat Oct 6 18:15:58 2012 -0400
 
 commit db6d86a6c1b5bb15511e4e4015af889d4206be1d
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Sat Oct 6 18:12:19 2012 -0400
+Date:  Sat Oct 6 18:12:19 2012 -0400
 
     Remove shared-str pool
 
-    We used to have a shared-str pool.  Removed to make thread-safety
+    We used to have a shared-str pool. Removed to make thread-safety
     work easier.  My measurements show that the extra overhead is not
     significant by any means.
 
@@ -708,34 +1517,34 @@ Date:   Sat Oct 6 18:12:19 2012 -0400
 
 commit ed41b237658ba290d86795904701ace09b46f6c4
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Sat Oct 6 17:52:39 2012 -0400
+Date:  Sat Oct 6 17:52:39 2012 -0400
 
     Switch .gitignore to git.mk
 
- .gitignore               | 100 ---------------------
- Makefile.am              |   2 +
- conf.d/Makefile.am       |   2 +
- doc/Makefile.am          |   2 +
- fc-cache/Makefile.am     |   2 +
- fc-case/Makefile.am      |   2 +
- fc-cat/Makefile.am       |   2 +
+ .gitignore              | 100 ---------------------
+ Makefile.am             |   2 +
+ conf.d/Makefile.am      |   2 +
+ doc/Makefile.am         |   2 +
+ fc-cache/Makefile.am    |   2 +
+ fc-case/Makefile.am     |   2 +
+ fc-cat/Makefile.am      |   2 +
  fc-glyphname/Makefile.am |   2 +
- fc-lang/Makefile.am      |   2 +
- fc-list/Makefile.am      |   2 +
- fc-match/Makefile.am     |   2 +
+ fc-lang/Makefile.am     |   2 +
+ fc-list/Makefile.am     |   2 +
+ fc-match/Makefile.am    |   2 +
  fc-pattern/Makefile.am   |   2 +
- fc-query/Makefile.am     |   2 +
- fc-scan/Makefile.am      |   2 +
+ fc-query/Makefile.am    |   2 +
+ fc-scan/Makefile.am     |   2 +
  fontconfig/Makefile.am   |   2 +
- git.mk                   | 227
+ git.mk                          | 227
  +++++++++++++++++++++++++++++++++++++++++++++++
- src/Makefile.am          |   2 +
- test/Makefile.am         |   2 +
+ src/Makefile.am         |   2 +
+ test/Makefile.am        |   2 +
  18 files changed, 259 insertions(+), 100 deletions(-)
 
 commit d58c31e6dcfd8c5e6fe3ead4a69216b059558223
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Thu Sep 20 14:42:31 2012 -0400
+Date:  Thu Sep 20 14:42:31 2012 -0400
 
     Use a static perfect hash table for object-name lookup
 
@@ -745,19 +1554,19 @@ Date:   Thu Sep 20 14:42:31 2012 -0400
 
     A bit clumsy, but I think I got it right.
 
- src/Makefile.am        |  26 +++-
- src/fcinit.c           |   1 -
- src/fcint.h            |  79 ++++---------
- src/fcname.c           | 315
+ src/Makefile.am       |  26 +++-
+ src/fcinit.c          |   1 -
+ src/fcint.h           |  79 ++++---------
+ src/fcname.c          | 315
  +++++++------------------------------------------
- src/fcobjs.c           | 130 ++++++++++++++++++++
- src/fcobjs.h           |  44 +++++++
+ src/fcobjs.c          | 130 ++++++++++++++++++++
+ src/fcobjs.h          |  44 +++++++
  src/fcobjshash.gperf.h |  26 ++++
  7 files changed, 291 insertions(+), 330 deletions(-)
 
 commit 7c0f79c5fe9db50b55112a1048a8f1c6a80e96fa
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Thu Sep 20 14:01:47 2012 -0400
+Date:  Thu Sep 20 14:01:47 2012 -0400
 
     Deprecate FcName(Un)RegisterObjectTypes / FcName(Un)RegisterConstants
 
@@ -772,16 +1581,16 @@ Date:   Thu Sep 20 14:01:47 2012 -0400
     One inch closer to thread-safety since we can fix the object-type hash
     table at compile time.
 
- doc/fcconstant.fncs     |   8 +---
- doc/fcobjecttype.fncs   |   6 +--
+ doc/fcconstant.fncs    |   8 +---
+ doc/fcobjecttype.fncs  |   6 +--
  fontconfig/fontconfig.h |  10 +++--
- src/fcname.c            | 100
+ src/fcname.c           | 100
  ++++++------------------------------------------
  4 files changed, 23 insertions(+), 101 deletions(-)
 
 commit 1e2c0d70527c39f761c5770d93a5c1f8e87522bc
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Tue Jan 1 20:28:08 2013 -0600
+Date:  Tue Jan 1 20:28:08 2013 -0600
 
     Whitespace
 
@@ -790,7 +1599,7 @@ Date:   Tue Jan 1 20:28:08 2013 -0600
 
 commit a498f2f717a73c3fff9784dd92173583fb37a596
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Tue Jan 1 20:27:54 2013 -0600
+Date:  Tue Jan 1 20:27:54 2013 -0600
 
     Minor
 
@@ -799,7 +1608,7 @@ Date:   Tue Jan 1 20:27:54 2013 -0600
 
 commit 8198127b2525084bfe2378b83c185fa0da7f583b
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Tue Jan 1 20:20:31 2013 -0600
+Date:  Tue Jan 1 20:20:31 2013 -0600
 
     Don't crash in FcPatternFormat() with NULL pattern
 
@@ -808,7 +1617,7 @@ Date:   Tue Jan 1 20:20:31 2013 -0600
 
 commit c9581b47c4409612e8f2d4f67a402c566ba8330e
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Tue Jan 1 20:20:12 2013 -0600
+Date:  Tue Jan 1 20:20:12 2013 -0600
 
     Don't crash in FcPatternDestroy with NULL pattern
 
@@ -817,7 +1626,7 @@ Date:   Tue Jan 1 20:20:12 2013 -0600
 
 commit e7d3e2163280ffb970b60c6ed18e26325d0241e4
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Tue Jan 1 20:10:18 2013 -0600
+Date:  Tue Jan 1 20:10:18 2013 -0600
 
     Add NULL check
 
@@ -826,7 +1635,7 @@ Date:   Tue Jan 1 20:10:18 2013 -0600
 
 commit 5bb5da4c4a34ca7c0a7c513e38829f69654f9962
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Tue Jan 1 20:09:08 2013 -0600
+Date:  Tue Jan 1 20:09:08 2013 -0600
 
     Refuse to set value to unsupported types during config too
 
@@ -835,20 +1644,20 @@ Date:   Tue Jan 1 20:09:08 2013 -0600
 
 commit 3878a125410d1dd461aee1e40f9ac00d68be71f2
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Tue Jan 1 19:52:14 2013 -0600
+Date:  Tue Jan 1 19:52:14 2013 -0600
 
     Make FC_DBG_OBJTYPES debug messages into warnings
 
     And remove FC_DBG_OBJTYPES since it has no use now.
 
  src/fcdbg.c | 30 +++++++++++++++++++-----------
- src/fcint.h |  5 ++++-
+ src/fcint.h | 5 ++++-
  src/fcpat.c | 21 +++++++++------------
  3 files changed, 32 insertions(+), 24 deletions(-)
 
 commit 209750a4e0a3e1d7b8c5c971e9e2cbd5770d959f
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Mon Dec 31 20:11:12 2012 -0600
+Date:  Mon Dec 31 20:11:12 2012 -0600
 
     Warn if <name target="font"> appears in <match target="pattern">
 
@@ -857,7 +1666,7 @@ Date:   Mon Dec 31 20:11:12 2012 -0600
 
 commit 424cfa1684f8af8bb6ecb01dc83bfc3d0a14f20a
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Mon Dec 31 20:00:17 2012 -0600
+Date:  Mon Dec 31 20:00:17 2012 -0600
 
     Adjust docs for recent changes
 
@@ -866,7 +1675,7 @@ Date:   Mon Dec 31 20:00:17 2012 -0600
 
 commit 31ce352bb350a10c6ae08f1415d348458b64bf61
 Author: Behdad Esfahbod <behdad@behdad.org>
-Date:   Mon Dec 31 19:55:37 2012 -0600
+Date:  Mon Dec 31 19:55:37 2012 -0600
 
     Initialize matrix during name parsing
 
@@ -1353,7 +2162,8 @@ Date:     Tue Oct 30 09:56:24 2012 +0900
 
     Keep m4 directory in git.
 
- 0 files changed
+ m4/.gitkeep | 0
+ 1 file changed, 0 insertions(+), 0 deletions(-)
 
 commit 038aa930ae2c3b7972eefe334917e7222fe478ec
 Author: Akira TAGOH <akira@tagoh.org>
@@ -21540,8 +22350,10 @@ Date:  Thu Feb 14 23:34:13 2002 +0000
 
  AUTHORS                |    1 +
  COPYING                |   22 +
+ ChangeLog              |    0
  INSTALL                |    3 +
  Imakefile              |   25 +
+ NEWS                   |    0
  README                         |    2 +
  acconfig.h             |    2 +
  configure.in           |  202 +++++++
@@ -21583,4 +22395,4 @@ Date:   Thu Feb 14 23:34:13 2002 +0000
  src/fcstr.c            |  188 ++++++
  src/fcxml.c            | 1032 ++++++++++++++++++++++++++++++++
  src/fontconfig.man     | 1113 ++++++++++++++++++++++++++++++++++
- 44 files changed, 11349 insertions(+)
+ 46 files changed, 11349 insertions(+)
index 84c91ac..2b4a5b8 100644 (file)
 #  TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 #  PERFORMANCE OF THIS SOFTWARE.
 
-SUBDIRS=fontconfig fc-case fc-lang fc-glyphname src \
+SUBDIRS=fontconfig fc-blanks fc-case fc-lang fc-glyphname src \
        fc-cache fc-cat fc-list fc-match fc-pattern fc-query fc-scan \
        fc-validate conf.d test
 if ENABLE_DOCS
 SUBDIRS += doc
-DIST_SUBDIRS = $(SUBDIRS)
-else
-DIST_SUBDIRS = $(SUBDIRS) doc
 endif
 
-AUTOMAKE_OPTIONS = dist-bzip2
 ACLOCAL_AMFLAGS = -I m4
 
 EXTRA_DIST = \
@@ -57,9 +53,9 @@ MAINTAINERCLEANFILES = \
        $(srcdir)/ltmain.sh \
        $(srcdir)/missing \
        $(srcdir)/mkinstalldirs \
+       $(srcdir)/test-driver \
        `find "$(srcdir)" -type f -name Makefile.in -print`
 
-pkgconfigdir=$(libdir)/pkgconfig
 pkgconfig_DATA = fontconfig.pc
 
 baseconfigdir = $(BASECONFIGDIR)
@@ -81,7 +77,7 @@ EXTRA_DIST += ChangeLog
 ChangeLog: $(srcdir)/ChangeLog
 $(srcdir)/ChangeLog:
        if test -d "$(srcdir)/.git"; then \
-         (GIT_DIR=$(top_srcdir)/.git ./missing --run git log --stat) | fmt --split-only > $@.tmp \
+         (GIT_DIR=$(top_srcdir)/.git $(GIT) log --stat) | fmt --split-only > $@.tmp \
          && mv -f $@.tmp $@ \
          || ($(RM) $@.tmp; \
              echo Failed to generate ChangeLog, your ChangeLog may be outdated >&2; \
@@ -94,12 +90,14 @@ $(srcdir)/ChangeLog:
 
 .PHONY: ChangeLog
 
+FC_CONFIGDIR = $(subst $(BASECONFIGDIR)/,,$(CONFIGDIR))
+
 fonts.conf: fonts.conf.in Makefile
        sed \
                -e 's,@FC_CACHEDIR\@,$(FC_CACHEDIR),g' \
                -e 's,@FC_DEFAULT_FONTS\@,$(FC_DEFAULT_FONTS),g' \
                -e 's,@FC_FONTPATH\@,$(FC_FONTPATH),g' \
-               -e 's,@CONFIGDIR\@,$(CONFIGDIR),g' \
+               -e 's,@CONFIGDIR\@,$(FC_CONFIGDIR),g' \
                -e 's,@PACKAGE\@,$(PACKAGE),g' \
                -e 's,@VERSION\@,$(VERSION),g' \
                $(srcdir)/$@.in > $@.tmp && \
index 5c5d1b9..6a278f6 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 #  PERFORMANCE OF THIS SOFTWARE.
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -75,19 +103,21 @@ build_triplet = @build@
 host_triplet = @host@
 @ENABLE_DOCS_TRUE@am__append_1 = doc
 subdir = .
-DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
-       $(srcdir)/Makefile.in $(srcdir)/config.h.in \
-       $(srcdir)/fontconfig-zip.in $(srcdir)/fontconfig.pc.in \
-       $(srcdir)/fontconfig.spec.in $(top_srcdir)/configure AUTHORS \
-       COPYING ChangeLog INSTALL NEWS config.guess config.sub depcomp \
-       install-sh ltmain.sh missing
+DIST_COMMON = INSTALL NEWS README AUTHORS ChangeLog \
+       $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+       $(top_srcdir)/configure $(am__configure_deps) \
+       $(srcdir)/config.h.in $(srcdir)/fontconfig.spec.in \
+       $(srcdir)/fontconfig.pc.in $(srcdir)/fontconfig-zip.in COPYING \
+       compile config.guess config.sub depcomp install-sh missing \
+       ltmain.sh
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
@@ -110,13 +140,14 @@ am__v_at_0 = @
 am__v_at_1 = 
 SOURCES =
 DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
-       html-recursive info-recursive install-data-recursive \
-       install-dvi-recursive install-exec-recursive \
-       install-html-recursive install-info-recursive \
-       install-pdf-recursive install-ps-recursive install-recursive \
-       installcheck-recursive installdirs-recursive pdf-recursive \
-       ps-recursive uninstall-recursive
+RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
+       ctags-recursive dvi-recursive html-recursive info-recursive \
+       install-data-recursive install-dvi-recursive \
+       install-exec-recursive install-html-recursive \
+       install-info-recursive install-pdf-recursive \
+       install-ps-recursive install-recursive installcheck-recursive \
+       installdirs-recursive pdf-recursive ps-recursive \
+       tags-recursive uninstall-recursive
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
@@ -153,12 +184,36 @@ am__installdirs = "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(xmldir)"
 DATA = $(pkgconfig_DATA) $(xml_DATA)
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive        \
   distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
-       $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+am__recursive_targets = \
+  $(RECURSIVE_TARGETS) \
+  $(RECURSIVE_CLEAN_TARGETS) \
+  $(am__extra_recursive_targets)
+AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
        cscope distdir dist dist-all distcheck
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
+       $(LISP)config.h.in
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 CSCOPE = cscope
+DIST_SUBDIRS = fontconfig fc-blanks fc-case fc-lang fc-glyphname src \
+       fc-cache fc-cat fc-list fc-match fc-pattern fc-query fc-scan \
+       fc-validate conf.d test doc
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 distdir = $(PACKAGE)-$(VERSION)
 top_distdir = $(distdir)
@@ -241,6 +296,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -282,12 +339,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -311,7 +375,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = $(BASECONFIGDIR)
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -319,7 +382,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = $(CONFIGDIR)
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -344,25 +406,25 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = @templatedir@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = $(XMLDIR)
-SUBDIRS = fontconfig fc-case fc-lang fc-glyphname src fc-cache fc-cat \
-       fc-list fc-match fc-pattern fc-query fc-scan fc-validate \
-       conf.d test $(am__append_1)
-@ENABLE_DOCS_FALSE@DIST_SUBDIRS = $(SUBDIRS) doc
-@ENABLE_DOCS_TRUE@DIST_SUBDIRS = $(SUBDIRS)
-AUTOMAKE_OPTIONS = dist-bzip2
+SUBDIRS = fontconfig fc-blanks fc-case fc-lang fc-glyphname src \
+       fc-cache fc-cat fc-list fc-match fc-pattern fc-query fc-scan \
+       fc-validate conf.d test $(am__append_1)
 ACLOCAL_AMFLAGS = -I m4
 EXTRA_DIST = fontconfig.pc.in fonts.conf.in fonts.dtd \
        fontconfig.spec.in fontconfig.spec fontconfig-zip.in \
@@ -375,13 +437,17 @@ MAINTAINERCLEANFILES = $(srcdir)/aclocal.m4 $(srcdir)/autoscan.log \
        $(srcdir)/compile $(srcdir)/config.guess $(srcdir)/config.h.in \
        $(srcdir)/config.sub $(srcdir)/configure.scan \
        $(srcdir)/depcomp $(srcdir)/install-sh $(srcdir)/ltmain.sh \
-       $(srcdir)/missing $(srcdir)/mkinstalldirs `find "$(srcdir)" \
-       -type f -name Makefile.in -print` $(srcdir)/ChangeLog
-pkgconfigdir = $(libdir)/pkgconfig
+       $(srcdir)/missing $(srcdir)/mkinstalldirs \
+       $(srcdir)/test-driver `find "$(srcdir)" -type f -name \
+       Makefile.in -print` $(srcdir)/ChangeLog
 pkgconfig_DATA = fontconfig.pc
+baseconfigdir = $(BASECONFIGDIR)
+configdir = $(CONFIGDIR)
+xmldir = $(XMLDIR)
 xml_DATA = fonts.dtd
 @CROSS_COMPILING_FALSE@RUN_FC_CACHE_TEST = test -z "$(DESTDIR)"
 @CROSS_COMPILING_TRUE@RUN_FC_CACHE_TEST = false
+FC_CONFIGDIR = $(subst $(BASECONFIGDIR)/,,$(CONFIGDIR))
 DISTCHECK_CONFIGURE_FLAGS = 
 all: config.h
        $(MAKE) $(AM_MAKEFLAGS) all-recursive
@@ -423,8 +489,8 @@ $(ACLOCAL_M4):  $(am__aclocal_m4_deps)
 $(am__aclocal_m4_deps):
 
 config.h: stamp-h1
-       @if test ! -f $@; then rm -f stamp-h1; else :; fi
-       @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi
+       @test -f $@ || rm -f stamp-h1
+       @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
 
 stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
        @rm -f stamp-h1
@@ -500,14 +566,13 @@ uninstall-xmlDATA:
 # (1) if the variable is set in 'config.status', edit 'config.status'
 #     (which will cause the Makefiles to be regenerated when you run 'make');
 # (2) otherwise, pass the desired values on the 'make' command line.
-$(RECURSIVE_TARGETS) $(RECURSIVE_CLEAN_TARGETS):
-       @fail= failcom='exit 1'; \
-       for f in x $$MAKEFLAGS; do \
-         case $$f in \
-           *=* | --[!k]*);; \
-           *k*) failcom='fail=yes';; \
-         esac; \
-       done; \
+$(am__recursive_targets):
+       @fail=; \
+       if $(am__make_keepgoing); then \
+         failcom='fail=yes'; \
+       else \
+         failcom='exit 1'; \
+       fi; \
        dot_seen=no; \
        target=`echo $@ | sed s/-recursive//`; \
        case "$@" in \
@@ -528,31 +593,13 @@ $(RECURSIVE_TARGETS) $(RECURSIVE_CLEAN_TARGETS):
        if test "$$dot_seen" = "no"; then \
          $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
        fi; test -z "$$fail"
-tags-recursive:
-       list='$(SUBDIRS)'; for subdir in $$list; do \
-         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
-       done
-ctags-recursive:
-       list='$(SUBDIRS)'; for subdir in $$list; do \
-         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
-       done
-cscopelist-recursive:
-       list='$(SUBDIRS)'; for subdir in $$list; do \
-         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) cscopelist); \
-       done
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-recursive
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
        if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
@@ -568,12 +615,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
              set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
          fi; \
        done; \
-       list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -585,15 +627,11 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-recursive
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -602,18 +640,16 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
-
 cscope: cscope.files
        test ! -s cscope.files \
          || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
-
 clean-cscope:
        -rm -f cscope.files
+cscope.files: clean-cscope cscopelist
+cscopelist: cscopelist-recursive
 
-cscope.files: clean-cscope cscopelist-recursive cscopelist
-
-cscopelist: cscopelist-recursive $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
        case "$(srcdir)" in \
          [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
          *) sdir=$(subdir)/$(srcdir) ;; \
@@ -710,10 +746,16 @@ dist-xz: distdir
        $(am__post_remove_distdir)
 
 dist-tarZ: distdir
+       @echo WARNING: "Support for shar distribution archives is" \
+                      "deprecated." >&2
+       @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
        tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
        $(am__post_remove_distdir)
 
 dist-shar: distdir
+       @echo WARNING: "Support for distribution archives compressed with" \
+                      "legacy program 'compress' is deprecated." >&2
+       @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
        shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
        $(am__post_remove_distdir)
 
@@ -746,18 +788,19 @@ distcheck: dist
        *.zip*) \
          unzip $(distdir).zip ;;\
        esac
-       chmod -R a-w $(distdir); chmod u+w $(distdir)
-       mkdir $(distdir)/_build
-       mkdir $(distdir)/_inst
+       chmod -R a-w $(distdir)
+       chmod u+w $(distdir)
+       mkdir $(distdir)/_build $(distdir)/_inst
        chmod a-w $(distdir)
        test -d $(distdir)/_build || exit 0; \
        dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
          && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
          && am__cwd=`pwd` \
          && $(am__cd) $(distdir)/_build \
-         && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+         && ../configure \
            $(AM_DISTCHECK_CONFIGURE_FLAGS) \
            $(DISTCHECK_CONFIGURE_FLAGS) \
+           --srcdir=.. --prefix="$$dc_install_base" \
          && $(MAKE) $(AM_MAKEFLAGS) \
          && $(MAKE) $(AM_MAKEFLAGS) dvi \
          && $(MAKE) $(AM_MAKEFLAGS) check \
@@ -923,19 +966,16 @@ ps-am:
 uninstall-am: uninstall-local uninstall-pkgconfigDATA \
        uninstall-xmlDATA
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \
-       cscopelist-recursive ctags-recursive install-am install-strip \
-       tags-recursive
-
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
-       all all-am am--refresh check check-am clean clean-cscope \
-       clean-generic clean-libtool cscope cscopelist \
-       cscopelist-recursive ctags ctags-recursive dist dist-all \
-       dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ dist-xz \
-       dist-zip distcheck distclean distclean-generic distclean-hdr \
-       distclean-libtool distclean-tags distcleancheck distdir \
-       distuninstallcheck dvi dvi-am html html-am info info-am \
-       install install-am install-data install-data-am \
+.MAKE: $(am__recursive_targets) all install-am install-strip
+
+.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
+       am--refresh check check-am clean clean-cscope clean-generic \
+       clean-libtool cscope cscopelist-am ctags ctags-am dist \
+       dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \
+       dist-xz dist-zip distcheck distclean distclean-generic \
+       distclean-hdr distclean-libtool distclean-tags distcleancheck \
+       distdir distuninstallcheck dvi dvi-am html html-am info \
+       info-am install install-am install-data install-data-am \
        install-data-local install-dvi install-dvi-am install-exec \
        install-exec-am install-html install-html-am install-info \
        install-info-am install-man install-pdf install-pdf-am \
@@ -943,13 +983,13 @@ uninstall-am: uninstall-local uninstall-pkgconfigDATA \
        install-xmlDATA installcheck installcheck-am installdirs \
        installdirs-am maintainer-clean maintainer-clean-generic \
        mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
-       ps ps-am tags tags-recursive uninstall uninstall-am \
-       uninstall-local uninstall-pkgconfigDATA uninstall-xmlDATA
+       ps ps-am tags tags-am uninstall uninstall-am uninstall-local \
+       uninstall-pkgconfigDATA uninstall-xmlDATA
 
 ChangeLog: $(srcdir)/ChangeLog
 $(srcdir)/ChangeLog:
        if test -d "$(srcdir)/.git"; then \
-         (GIT_DIR=$(top_srcdir)/.git ./missing --run git log --stat) | fmt --split-only > $@.tmp \
+         (GIT_DIR=$(top_srcdir)/.git $(GIT) log --stat) | fmt --split-only > $@.tmp \
          && mv -f $@.tmp $@ \
          || ($(RM) $@.tmp; \
              echo Failed to generate ChangeLog, your ChangeLog may be outdated >&2; \
@@ -967,7 +1007,7 @@ fonts.conf: fonts.conf.in Makefile
                -e 's,@FC_CACHEDIR\@,$(FC_CACHEDIR),g' \
                -e 's,@FC_DEFAULT_FONTS\@,$(FC_DEFAULT_FONTS),g' \
                -e 's,@FC_FONTPATH\@,$(FC_FONTPATH),g' \
-               -e 's,@CONFIGDIR\@,$(CONFIGDIR),g' \
+               -e 's,@CONFIGDIR\@,$(FC_CONFIGDIR),g' \
                -e 's,@PACKAGE\@,$(PACKAGE),g' \
                -e 's,@VERSION\@,$(VERSION),g' \
                $(srcdir)/$@.in > $@.tmp && \
diff --git a/README b/README
index fcd3ab3..4a4dc30 100644 (file)
--- a/README
+++ b/README
                               Fontconfig
              Font configuration and customization library
-                      Version 2.10.91 (2.11 RC1)
-                              2013-01-10
+                      Version 2.11.93 (2.12 RC3)
+                              2015-03-09
 
 
 Check INSTALL for compilation and installation instructions.
 Report bugs to https://bugs.freedesktop.org in the fontconfig module.
 
+2.11.93 (2.12 RC3)
+
+Akira TAGOH (18):
+      Fix a typo in docs
+      Add pkg.m4 to git
+      Fix a build fail on some non-POSIX platforms
+      ifdef'd the unnecessary code for win32
+      Fix pointer cast warning on win32
+      filter can be null
+      Copy the real size of struct dirent
+      Rework again to copy the struct dirent
+      Hardcode the blanks in the library
+      Update the script to recognize the escaped space
+      Fix a build issue when $(srcdir) != $(builddir)
+      Don't add FC_LANG when it has "und"
+      Fix the array allocation
+      Improve the performance on searching blanks
+      Fix a segfault when OOM happened.
+      Fix a bug in the previous change forFcBlanksIsMember()
+      Fix an infinite loop in FcBlanksIsMember()
+      Fix a trivial bug for dist
+
+Alan Coopersmith (1):
+      Fix configure to work with Solaris Studio compilers
+
+Behdad Esfahbod (3):
+      Fix symbol cmap handling
+      Remove dead code after previous commit
+      Simplify some more
+
+Michael Haubenwallner (1):
+      Ensure config.h is included first, bug#89336.
+
+2.11.92 (2.12 RC2)
+
+Akira TAGOH (1):
+      Add missing docs
+
+2.11.91 (2.12 RC1)
+
+Akira TAGOH (28):
+      Bug 71287 - size specific design selection support in OS/2 table version 5
+      Fix a build issue with freetype <2.5.1
+      Fix missing docs
+      Fix a typo
+      Fix fc-cache fail with -r
+      Rebase ja.orth against Joyo kanji characters
+      Allow the modification on FcTypeVoid with FcTypeLangSet and FcTypeCharSet
+      Workaround another race condition issue
+      Read the config files and fonts on the sysroot when --sysroot is given to fc-cache
+      Fix a segfault
+      Update CaseFolding.txt to Unicode 7.0
+      Don't read/write from/to the XDG dirs if the home directory is disabled
+      Rework for 5004e8e01f5de30ad01904e57ea0eda006ab3a0c
+      Fix a crash when no sysroot is given and failed to load the default fonts.conf
+      Fix a gcc warning
+      Don't add duplicate lang
+      fallback to the another method to lock when link() failed
+      Increase the refcount in FcConfigSetCurrent()
+      Fix the memory leak in fc-cat
+      Note FcConfigSetCurrent() increases the refcount in document
+      Add FcRangeGetDouble()
+      Revert "Bug 73291 - poppler does not show fl ligature"
+      Update aliases for new URW fonts
+      Returns False if no fonts found
+      fc-cache: make a fail if no fonts processed on a given path
+      fc-cache: Add an option to raise an error if no fonts found
+      Bump the cache version to 5
+      Fix a typo
+
+Behdad Esfahbod (39):
+      Remove unused code
+      Simplify hash code
+      Further simplify hash code
+      Rewrite hashing to use FT_Stream directly
+      Allow passing NULL for file to FcFreeTypeQueryFace()
+      [ko.orth] Remove U+3164 HANGUL FILLER
+      Deprecate FC_HASH and don't compute it
+      Remove unused FcHash code now that FC_HASH is deprecated
+      Update list of blanks to Unicode 6.3.0
+      Update blanks to Unicode 7.0
+      Change charset parse/unparse format to be human readable
+      Minor
+      Fix charset unparse after recent changes
+      Comments
+      Remove HASH from matching priorities
+      Fixup previous commit
+      Update mingw32 MemoryBarrier from HarfBuzz
+      More mingw32 MemoryBarrier() fixup
+      Symlinks fix for DESTDIR
+      Revert "Symlinks fix for DESTDIR"
+      Call FcInitDebug from FcFreeTypeQueryFace
+      Decode MacRoman encoding in name table without iconv
+      Ouch, fix buffer
+      Use lang=und instead of lang=xx for "undetermined"
+      Remove unused regex code
+      Improve / cleanup namelang matching
+      Add FC_WEIGHT_DEMILIGHT
+      Change DemiLight from 65 to 55
+      Linearly interpolate weight values
+      Export recently added API
+      Remove unneeded FcPublic
+      Fix assertion failure
+      If OS/2 table says weight is 1 to 9, multiply by 100
+      Trebuchet MS is a sans-serif font, not serif
+      Fix previous commit
+      Revert "[fcmatch] When matching, reserve score 0 for when elements don't exist"
+      Fix buffer overflow in copying PS name
+      Add FC_COLOR
+      Treat color fonts as scalable
+
+Nick Alcock (1):
+      Generate documentation for FcWeight* functions.
+
+2.11.1
+
+Akira TAGOH (31):
+      do not build test-migration for Win32
+      Fix build issue on Debian/kFreeBSD 7.0
+      Update ax_pthread.m4 to the latest version
+      Fix the dynamic loading issue on NetBSD
+      Use stat() if there are no d_type in struct dirent
+      Fix a build issue on Solaris 10
+      Change the default weight on match to FC_WEIGHT_NORMAL
+      Warn if no <test> nor <edit> elements in <match>
+      Correct DTD
+      Re-scan font directories only when it contains subdirs
+      Fix typo
+      Bug 72086 - Check for gperf in autogen.sh
+      Simplify to validate the availability of posix_fadvise
+      Simplify to validate the availability of scandir
+      Fix a typo
+      Fix a build issue on platforms where doesn't support readlink()
+      Improve the performance issue on rescanning directories
+      Bug 73686 - confdir is not set correctly in fontconfig.pc
+      Update zh_hk.orth
+      clean up the unused files
+      Add missing license headers
+      Update the use of autotools' macro
+      Fix a crash issue when empty strings are set to the BDF properties
+      Add a doc for FcDirCacheRescan
+      Add missing #include <sys/statvfs.h> in fcstat.c
+      Fix incompatible API on AIX with random_r and initstate_r
+      Fallback to lstat() in case the filesystem doesn't support d_type in struct dirent
+      Update doc to include the version info of `since when'
+      Bug 73291 - poppler does not show fl ligature
+      Add README describes the criteria to add/modify the orthography files
+      Fix autoconf warning, warning: AC_COMPILE_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS
+
+Alan Coopersmith (3):
+      Leave room for null terminators in arrays
+      Avoid memory leak when NULL path passed to FcStrBuildFilename
+      Avoid null pointer dereference in FcNameParse if malloc fails
+
+Behdad Esfahbod (1):
+      Bug 72380 - Never drop first font when trimming
+
+Frederic Crozat (2):
+      Fix inversion between Tinos and Cousine in the comment
+      Add metric aliases for additional Google ChromeOS fonts
+
+Jehan (1):
+      Defaulting <cachedir> to LOCAL_APPDATA_FONTCONFIG_CACHE for Win32 build
+
+Ross Burton (1):
+      fc-cache: --sysroot option takes an argument
+
+2.11
+
+Akira TAGOH (15):
+      Do not create a config dir for migration when no config files nor dirs
+      Add a test case of the migration for config place
+      Fix memory leaks in FcFreeTypeQueryFace
+      Bug 68955 - Deprecate / remove FC_RASTERIZER
+      Copy all values from the font to the pattern if the pattern doesn't have the element
+      Fix a crash when FcPattern is set to null on FcFontSetList() and FcFontList()
+      Add the description of -q option to the man page
+      avoid reading config.h twice
+      clean up
+      Add the relative path for <include> to fonts.conf if the parent path is same to fonts.conf
+      Workaround the race condition issue on updating cache
+      exit with the error code when FcNameParse() failed
+      Add missing doc for FcStrListFirst and fix a typo
+      Bump libtool revision
+      Update CaseFolding.txt to Unicode 6.3
+
+Jan Alexander Steffens (heftig) (1):
+      Further changes to 30-metric-aliases.conf
+
+W. Trevor King (1):
+      doc/fccharset.fncs: Describe the map format in more detail
+
+2.10.95 (2.11 RC5)
+
+Akira TAGOH (2):
+      Fix a typo
+      Fix a crash
+
+2.10.94 (2.11 RC4)
+
+Akira TAGOH (25):
+      Bug 64906 - FcNameParse() should ignore leading whitespace in parameters
+      Fix a comparison of constant warning with clang
+      Fix a shift count overflow on 32bit box
+      Fix a incompatible pointer warning on NetBSD
+      Add FcTypeUnknown to FcType to avoid comparison of constant -1
+      Fix the behavior of intermixed tests end edits in match
+      Ignore scandir() check on mingw
+      Use INT_MAX instead of unreliable hardcoding value
+      Add FC_UNUSED to FC_ASSERT_STATIC macro to avoid compiler warning
+      Rework to apply the intermixed test and edit elements in one-pass
+      trivial code optimization
+      Correct fontconfig.pc to add certain dependencies for build
+      Correct fontconfig.pc to add certain dependencies for static build
+      Fix wrong edit position
+      Bug 67809 - Invalid read/write with valgrind when assigning something twice
+      warn deprecated only when migration failed
+      Bug 67845 - Match on FC_SCALABLE
+      Bug 16818 - fontformat in match pattern is not respected?
+      Bug 68340 - More metric compat fonts
+      Bug 63399 - Add default aliases for Georgia, Garamond, Palatino Linotype, Trebuchet MS
+      Fix a typo
+      Fix a crash when non-builtin objects are edited
+      Fix a wrong edit position when 'kind' is different
+      Bug 68587 - copy qu.orth to quz.orth
+      Add quz.orth to Makefile.am
+
+Behdad Esfahbod (2):
+      Minor
+      Fix assertion
+
+2.10.93 (2.11 RC3)
+
+Akira TAGOH (10):
+      Bug 62980 - matching native fonts with even :lang=en
+      Ensure closing fp on error
+      Obtain fonts data via FT_Face instead of opening a file directly
+      Revert the previous change and rework to not export freetype API outside fcfreetype.c
+      documented FC_HASH and FC_POSTSCRIPT_NAME
+      Bug 63329 - make check fails: .. contents:: :depth: 2
+      Use the glob matching for filename
+      Bug 63452 - conf.d/README outdated
+      Fix missing OSAtomicCompareAndSwapPtrBarrier() on Mac OS X 10.4
+      Bug 63922 - FcFreeTypeQueryFace fails on postscripts fonts loaded from memory
+
+Sebastian Freundt (1):
+      build-chain, replace INCLUDES directive by AM_CPPFLAGS
+
+2.10.92 (2.11 RC2)
+
+Akira TAGOH (33):
+      Fix the build fail on MinGW
+      Bug 50497 - RFE: Add OpenType feature tags support
+      Improve FcGetPrgname() to work on BSD
+      Better fix for 2fe5ddfd
+      Add missing file descriptor to F_DUPFD_CLOEXEC
+      Fix mkstemp absence for some platform
+      Fix installation on MinGW32
+      Add another approach to FC_PRGNAME for Solaris 10 or before
+      remove the unnecessary code
+      Bug 59385 - Do the right thing for intermixed edit and test elements
+      Bug 23757 - Add mode="delete" to <edit>
+      Modernize configure.ac
+      Use AM_MISSING_PROG instead of hardcoding missing
+      Revert "test: Use SH_LOG_COMPILER and AM_TESTS_ENVIRONMENT"
+      Use AM_MISSING_PROG instead of hardcoding missing
+      Bug 50733 - Add font-file hash?
+      Bug 60312 - DIST_SUBDIRS should never appear in a conditional
+      Update _FcMatchers definition logic
+      Bump the cache version to 4
+      Add Culmus foundry to the vendor list
+      Bug 60748 - broken conf.d/10-autohint.conf and conf.d/10-unhinted.conf
+      Bug 60783 - Add Liberation Sans Narrow to 30-metric-aliases.conf
+      Fix a typo
+      Fix a crash when the object is non-builtin object
+      Fix broken sort order with FcFontSort()
+      Fix a memory leak
+      Bug 59456 - Adding a --sysroot like option to fc-cache
+      Do not copy FC_*LANG_OBJECT even if it's not available on the pattern
+      Fix a SIGSEGV on FcPatternGet* with NULL pattern
+      Bug 38737 - Wishlist: support FC_POSTSCRIPT_NAME
+      Minor cleanup
+      Bump libtool revision
+      Minor fix
+
+Behdad Esfahbod (12):
+      Resepct $NOCONFIGURE
+      Ensure we find the uninstalled fontconfig header
+      Copy all values from pattern to font if the font doesn't have the element
+      Minor
+      Bug 59379 - FC_PRGNAME
+      Remove unused checks for common functions
+      Minor
+      Fix fc-cache crash caused by looking up NULL object incorrectly
+      Fix FC_PRGNAME default
+      Fix readlink failure
+      Accept digits as part of OpenType script tags
+      Fix crash with FcConfigSetCurrent(NULL)
+
+Christoph J. Thompson (1):
+      Use the PKG_INSTALLDIR macro.
+
+Colin Walters (1):
+      build: Only use PKG_INSTALLDIR if available
+
+Quentin Glidic (2):
+      test: Use SH_LOG_COMPILER and AM_TESTS_ENVIRONMENT
+      Use LOG_COMPILER and AM_TESTS_ENVIRONMENT
+
 2.10.91 (2.11 RC1)
 
 Akira TAGOH (19):
index 56766da..f0fa0ec 100644 (file)
--- a/Tools.mk
+++ b/Tools.mk
@@ -32,7 +32,7 @@ TOOL=./$(DIR)$(EXEEXT_FOR_BUILD)
 
 EXTRA_DIST = $(TARG) $(TMPL) $(TSRC) $(DIST)
 
-INCLUDES = \
+AM_CPPFLAGS = \
           -I$(builddir) \
           -I$(srcdir) \
           -I$(top_builddir)/src \
@@ -43,7 +43,7 @@ INCLUDES = \
           $(WARN_CFLAGS)
 
 $(TOOL): $(TSRC) $(ALIAS_FILES)
-       $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(INCLUDES)
+       $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(AM_CPPFLAGS)
 
 $(TARG): $(TMPL) $(TSRC) $(DEPS)
        $(AM_V_GEN) $(MAKE) $(TOOL) && \
index 9761103..c0115b2 100644 (file)
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.12.2 -*- Autoconf -*-
+# generated automatically by aclocal 1.14.1 -*- Autoconf -*-
 
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -11,6 +11,7 @@
 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 # PARTICULAR PURPOSE.
 
+m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
@@ -19,224 +20,22 @@ You have another version of autoconf.  It may work, but is not guaranteed to.
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# pkg.m4 - Macros to locate and utilise pkg-config.            -*- Autoconf -*-
-# serial 1 (pkg-config-0.24)
-# 
-# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# PKG_PROG_PKG_CONFIG([MIN-VERSION])
-# ----------------------------------
-AC_DEFUN([PKG_PROG_PKG_CONFIG],
-[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
-m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
-m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
-AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
-AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
-AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
-
-if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
-       AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
-fi
-if test -n "$PKG_CONFIG"; then
-       _pkg_min_version=m4_default([$1], [0.9.0])
-       AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
-       if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
-               AC_MSG_RESULT([yes])
-       else
-               AC_MSG_RESULT([no])
-               PKG_CONFIG=""
-       fi
-fi[]dnl
-])# PKG_PROG_PKG_CONFIG
-
-# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-#
-# Check to see whether a particular set of modules exists.  Similar
-# to PKG_CHECK_MODULES(), but does not set variables or print errors.
-#
-# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
-# only at the first occurence in configure.ac, so if the first place
-# it's called might be skipped (such as if it is within an "if", you
-# have to call PKG_CHECK_EXISTS manually
-# --------------------------------------------------------------
-AC_DEFUN([PKG_CHECK_EXISTS],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
-if test -n "$PKG_CONFIG" && \
-    AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
-  m4_default([$2], [:])
-m4_ifvaln([$3], [else
-  $3])dnl
-fi])
-
-# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
-# ---------------------------------------------
-m4_define([_PKG_CONFIG],
-[if test -n "$$1"; then
-    pkg_cv_[]$1="$$1"
- elif test -n "$PKG_CONFIG"; then
-    PKG_CHECK_EXISTS([$3],
-                     [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
-                     test "x$?" != "x0" && pkg_failed=yes ],
-                    [pkg_failed=yes])
- else
-    pkg_failed=untried
-fi[]dnl
-])# _PKG_CONFIG
-
-# _PKG_SHORT_ERRORS_SUPPORTED
-# -----------------------------
-AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
-        _pkg_short_errors_supported=yes
-else
-        _pkg_short_errors_supported=no
-fi[]dnl
-])# _PKG_SHORT_ERRORS_SUPPORTED
-
-
-# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
-# [ACTION-IF-NOT-FOUND])
-#
-#
-# Note that if there is a possibility the first call to
-# PKG_CHECK_MODULES might not happen, you should be sure to include an
-# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
-#
-#
-# --------------------------------------------------------------
-AC_DEFUN([PKG_CHECK_MODULES],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
-AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
-AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
-
-pkg_failed=no
-AC_MSG_CHECKING([for $1])
-
-_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
-_PKG_CONFIG([$1][_LIBS], [libs], [$2])
-
-m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
-and $1[]_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.])
-
-if test $pkg_failed = yes; then
-       AC_MSG_RESULT([no])
-        _PKG_SHORT_ERRORS_SUPPORTED
-        if test $_pkg_short_errors_supported = yes; then
-               $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
-        else 
-               $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
-        fi
-       # Put the nasty error message in config.log where it belongs
-       echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
-
-       m4_default([$4], [AC_MSG_ERROR(
-[Package requirements ($2) were not met:
-
-$$1_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-_PKG_TEXT])[]dnl
-        ])
-elif test $pkg_failed = untried; then
-       AC_MSG_RESULT([no])
-       m4_default([$4], [AC_MSG_FAILURE(
-[The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-_PKG_TEXT
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
-        ])
-else
-       $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
-       $1[]_LIBS=$pkg_cv_[]$1[]_LIBS
-        AC_MSG_RESULT([yes])
-       $3
-fi[]dnl
-])# PKG_CHECK_MODULES
-
-
-# PKG_INSTALLDIR(DIRECTORY)
-# -------------------------
-# Substitutes the variable pkgconfigdir as the location where a module
-# should install pkg-config .pc files. By default the directory is
-# $libdir/pkgconfig, but the default can be changed by passing
-# DIRECTORY. The user can override through the --with-pkgconfigdir
-# parameter.
-AC_DEFUN([PKG_INSTALLDIR],
-[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
-m4_pushdef([pkg_description],
-    [pkg-config installation directory @<:@]pkg_default[@:>@])
-AC_ARG_WITH([pkgconfigdir],
-    [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],,
-    [with_pkgconfigdir=]pkg_default)
-AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
-m4_popdef([pkg_default])
-m4_popdef([pkg_description])
-]) dnl PKG_INSTALLDIR
-
-
-# PKG_NOARCH_INSTALLDIR(DIRECTORY)
-# -------------------------
-# Substitutes the variable noarch_pkgconfigdir as the location where a
-# module should install arch-independent pkg-config .pc files. By
-# default the directory is $datadir/pkgconfig, but the default can be
-# changed by passing DIRECTORY. The user can override through the
-# --with-noarch-pkgconfigdir parameter.
-AC_DEFUN([PKG_NOARCH_INSTALLDIR],
-[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
-m4_pushdef([pkg_description],
-    [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@])
-AC_ARG_WITH([noarch-pkgconfigdir],
-    [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],,
-    [with_noarch_pkgconfigdir=]pkg_default)
-AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
-m4_popdef([pkg_default])
-m4_popdef([pkg_description])
-]) dnl PKG_NOARCH_INSTALLDIR
-
-# Copyright (C) 2002-2012 Free Software Foundation, Inc.
+# Copyright (C) 2002-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 8
-
 # AM_AUTOMAKE_VERSION(VERSION)
 # ----------------------------
 # Automake X.Y traces this macro to ensure aclocal.m4 has been
 # generated from the m4 files accompanying Automake X.Y.
 # (This private macro should not be called outside this file.)
 AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.12'
+[am__api_version='1.14'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.12.2], [],
+m4_if([$1], [1.14.1], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -252,21 +51,19 @@ m4_define([_AM_AUTOCONF_VERSION], [])
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.12.2])dnl
+[AM_AUTOMAKE_VERSION([1.14.1])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 2
-
 # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
 # $ac_aux_dir to '$srcdir/foo'.  In other projects, it is set to
 # '$srcdir', '$srcdir/..', or '$srcdir/../..'.
@@ -314,14 +111,12 @@ am_aux_dir=`cd $ac_aux_dir && pwd`
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2012 Free Software Foundation, Inc.
+# Copyright (C) 1997-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 10
-
 # AM_CONDITIONAL(NAME, SHELL-CONDITION)
 # -------------------------------------
 # Define a conditional.
@@ -347,13 +142,12 @@ AC_CONFIG_COMMANDS_PRE(
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2012 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 17
 
 # There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
 # written in clear, in which case automake, when reading aclocal.m4,
@@ -539,19 +333,18 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2012 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 6
 
 # _AM_OUTPUT_DEPENDENCY_COMMANDS
 # ------------------------------
 AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
 [{
-  # Autoconf 2.62 quotes --file arguments for eval, but not when files
+  # Older Autoconf quotes --file arguments for eval, but not when files
   # are listed without --file.  Let's play safe and only enable the eval
   # if we detect the quoting.
   case $CONFIG_FILES in
@@ -580,7 +373,7 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
     DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
     test -z "$DEPDIR" && continue
     am__include=`sed -n 's/^am__include = //p' < "$mf"`
-    test -z "am__include" && continue
+    test -z "$am__include" && continue
     am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
     # Find all dependency output files, they are included files with
     # $(DEPDIR) in their names.  We invoke sed twice because it is the
@@ -616,17 +409,21 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 19
-
 # This macro actually does too much.  Some checks are only needed if
 # your package does certain things.  But this isn't really a big deal.
 
+dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
+m4_define([AC_PROG_CC],
+m4_defn([AC_PROG_CC])
+[_AM_PROG_CC_C_O
+])
+
 # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
 # AM_INIT_AUTOMAKE([OPTIONS])
 # -----------------------------------------------
@@ -639,7 +436,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
 # arguments mandatory, and then we can depend on a new Autoconf
 # release and drop the old call support.
 AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_PREREQ([2.62])dnl
+[AC_PREREQ([2.65])dnl
 dnl Autoconf wants to disallow AM_ names.  We explicitly allow
 dnl the ones we care about.
 m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
@@ -669,8 +466,7 @@ AC_SUBST([CYGPATH_W])
 dnl Distinguish between old-style and new-style calls.
 m4_ifval([$2],
 [AC_DIAGNOSE([obsolete],
-[$0: two- and three-arguments forms are deprecated.  For more info, see:
-http://www.gnu.org/software/automake/manual/automake.html#Modernize-AM_INIT_AUTOMAKE-invocation])
+             [$0: two- and three-arguments forms are deprecated.])
 m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
  AC_SUBST([PACKAGE], [$1])dnl
  AC_SUBST([VERSION], [$2])],
@@ -724,22 +520,60 @@ AC_PROVIDE_IFELSE([AC_PROG_OBJC],
                  [_AM_DEPENDENCIES([OBJC])],
                  [m4_define([AC_PROG_OBJC],
                             m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
-dnl Support for Objective C++ was only introduced in Autoconf 2.65,
-dnl but we still cater to Autoconf 2.62.
-m4_ifdef([AC_PROG_OBJCXX],
-[AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
+AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
                  [_AM_DEPENDENCIES([OBJCXX])],
                  [m4_define([AC_PROG_OBJCXX],
-                            m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])])dnl
+                            m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
 ])
-_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
-dnl The 'parallel-tests' driver may need to know about EXEEXT, so add the
-dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This macro
-dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
+AC_REQUIRE([AM_SILENT_RULES])dnl
+dnl The testsuite driver may need to know about EXEEXT, so add the
+dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This
+dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
 AC_CONFIG_COMMANDS_PRE(dnl
 [m4_provide_if([_AM_COMPILER_EXEEXT],
   [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
-])
+
+# POSIX will say in a future version that running "rm -f" with no argument
+# is OK; and we want to be able to make that assumption in our Makefile
+# recipes.  So use an aggressive probe to check that the usage we want is
+# actually supported "in the wild" to an acceptable degree.
+# See automake bug#10828.
+# To make any issue more visible, cause the running configure to be aborted
+# by default if the 'rm' program in use doesn't match our expectations; the
+# user can still override this though.
+if rm -f && rm -fr && rm -rf; then : OK; else
+  cat >&2 <<'END'
+Oops!
+
+Your 'rm' program seems unable to run without file operands specified
+on the command line, even when the '-f' option is present.  This is contrary
+to the behaviour of most rm programs out there, and not conforming with
+the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
+
+Please tell bug-automake@gnu.org about your system, including the value
+of your $PATH and any error possibly output before this message.  This
+can help us improve future automake versions.
+
+END
+  if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
+    echo 'Configuration will proceed anyway, since you have set the' >&2
+    echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
+    echo >&2
+  else
+    cat >&2 <<'END'
+Aborting the configuration process, to ensure you take notice of the issue.
+
+You can download and install GNU coreutils to get an 'rm' implementation
+that behaves properly: <http://www.gnu.org/software/coreutils/>.
+
+If you want to complete the configuration process using your problematic
+'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
+to "yes", and re-run configure.
+
+END
+    AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
+  fi
+fi])
 
 dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
 dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
@@ -747,7 +581,6 @@ dnl mangled by Autoconf and run in a shell conditional statement.
 m4_define([_AC_COMPILER_EXEEXT],
 m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
 
-
 # When config.status generates a header, we must update the stamp-h file.
 # This file resides in the same directory as the config header
 # that is generated.  The stamp files are numbered to have different names.
@@ -769,14 +602,12 @@ for _am_header in $config_headers :; do
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 8
-
 # AM_PROG_INSTALL_SH
 # ------------------
 # Define $install_sh.
@@ -792,14 +623,12 @@ if test x"${install_sh}" != xset; then
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2012 Free Software Foundation, Inc.
+# Copyright (C) 2003-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 2
-
 # Check whether the underlying file-system supports filenames
 # with a leading dot.  For instance MS-DOS doesn't.
 AC_DEFUN([AM_SET_LEADING_DOT],
@@ -815,14 +644,12 @@ AC_SUBST([am__leading_dot])])
 
 # Check to see how 'make' treats includes.                 -*- Autoconf -*-
 
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 5
-
 # AM_MAKE_INCLUDE()
 # -----------------
 # Check to see how make treats includes.
@@ -867,14 +694,12 @@ rm -f confinc confmf
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2012 Free Software Foundation, Inc.
+# Copyright (C) 1997-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 7
-
 # AM_MISSING_PROG(NAME, PROGRAM)
 # ------------------------------
 AC_DEFUN([AM_MISSING_PROG],
@@ -882,11 +707,10 @@ AC_DEFUN([AM_MISSING_PROG],
 $1=${$1-"${am_missing_run}$2"}
 AC_SUBST($1)])
 
-
 # AM_MISSING_HAS_RUN
 # ------------------
-# Define MISSING if not defined so far and test if it supports --run.
-# If it does, set am_missing_run to use it, otherwise, to nothing.
+# Define MISSING if not defined so far and test if it is modern enough.
+# If it is, set am_missing_run to use it, otherwise, to nothing.
 AC_DEFUN([AM_MISSING_HAS_RUN],
 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
 AC_REQUIRE_AUX_FILE([missing])dnl
@@ -899,8 +723,8 @@ if test x"${MISSING+set}" != xset; then
   esac
 fi
 # Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
-  am_missing_run="$MISSING --run "
+if eval "$MISSING --is-lightweight"; then
+  am_missing_run="$MISSING "
 else
   am_missing_run=
   AC_MSG_WARN(['missing' script is too old or missing])
@@ -909,14 +733,12 @@ fi
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 6
-
 # _AM_MANGLE_OPTION(NAME)
 # -----------------------
 AC_DEFUN([_AM_MANGLE_OPTION],
@@ -940,15 +762,312 @@ AC_DEFUN([_AM_SET_OPTIONS],
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Check to make sure that the build environment is sane.    -*- Autoconf -*-
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# _AM_PROG_CC_C_O
+# ---------------
+# Like AC_PROG_CC_C_O, but changed for automake.  We rewrite AC_PROG_CC
+# to automatically call this.
+AC_DEFUN([_AM_PROG_CC_C_O],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+AC_REQUIRE_AUX_FILE([compile])dnl
+AC_LANG_PUSH([C])dnl
+AC_CACHE_CHECK(
+  [whether $CC understands -c and -o together],
+  [am_cv_prog_cc_c_o],
+  [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
+  # Make sure it works both with $CC and with simple cc.
+  # Following AC_PROG_CC_C_O, we do the test twice because some
+  # compilers refuse to overwrite an existing .o file with -o,
+  # though they will create one.
+  am_cv_prog_cc_c_o=yes
+  for am_i in 1 2; do
+    if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
+         && test -f conftest2.$ac_objext; then
+      : OK
+    else
+      am_cv_prog_cc_c_o=no
+      break
+    fi
+  done
+  rm -f core conftest*
+  unset am_i])
+if test "$am_cv_prog_cc_c_o" != yes; then
+   # Losing compiler, so override with the script.
+   # FIXME: It is wrong to rewrite CC.
+   # But if we don't then we get into trouble of one sort or another.
+   # A longer-term fix would be to have automake use am__CC in this case,
+   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
+   CC="$am_aux_dir/compile $CC"
+fi
+AC_LANG_POP([C])])
+
+# For backward compatibility.
+AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
+
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+
+# AM_PATH_PYTHON([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+# ---------------------------------------------------------------------------
+# Adds support for distributing Python modules and packages.  To
+# install modules, copy them to $(pythondir), using the python_PYTHON
+# automake variable.  To install a package with the same name as the
+# automake package, install to $(pkgpythondir), or use the
+# pkgpython_PYTHON automake variable.
+#
+# The variables $(pyexecdir) and $(pkgpyexecdir) are provided as
+# locations to install python extension modules (shared libraries).
+# Another macro is required to find the appropriate flags to compile
+# extension modules.
+#
+# If your package is configured with a different prefix to python,
+# users will have to add the install directory to the PYTHONPATH
+# environment variable, or create a .pth file (see the python
+# documentation for details).
+#
+# If the MINIMUM-VERSION argument is passed, AM_PATH_PYTHON will
+# cause an error if the version of python installed on the system
+# doesn't meet the requirement.  MINIMUM-VERSION should consist of
+# numbers and dots only.
+AC_DEFUN([AM_PATH_PYTHON],
+ [
+  dnl Find a Python interpreter.  Python versions prior to 2.0 are not
+  dnl supported. (2.0 was released on October 16, 2000).
+  m4_define_default([_AM_PYTHON_INTERPRETER_LIST],
+[python python2 python3 python3.3 python3.2 python3.1 python3.0 python2.7 dnl
+ python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0])
+
+  AC_ARG_VAR([PYTHON], [the Python interpreter])
+
+  m4_if([$1],[],[
+    dnl No version check is needed.
+    # Find any Python interpreter.
+    if test -z "$PYTHON"; then
+      AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST, :)
+    fi
+    am_display_PYTHON=python
+  ], [
+    dnl A version check is needed.
+    if test -n "$PYTHON"; then
+      # If the user set $PYTHON, use it and don't search something else.
+      AC_MSG_CHECKING([whether $PYTHON version is >= $1])
+      AM_PYTHON_CHECK_VERSION([$PYTHON], [$1],
+                             [AC_MSG_RESULT([yes])],
+                             [AC_MSG_RESULT([no])
+                              AC_MSG_ERROR([Python interpreter is too old])])
+      am_display_PYTHON=$PYTHON
+    else
+      # Otherwise, try each interpreter until we find one that satisfies
+      # VERSION.
+      AC_CACHE_CHECK([for a Python interpreter with version >= $1],
+       [am_cv_pathless_PYTHON],[
+       for am_cv_pathless_PYTHON in _AM_PYTHON_INTERPRETER_LIST none; do
+         test "$am_cv_pathless_PYTHON" = none && break
+         AM_PYTHON_CHECK_VERSION([$am_cv_pathless_PYTHON], [$1], [break])
+       done])
+      # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON.
+      if test "$am_cv_pathless_PYTHON" = none; then
+       PYTHON=:
+      else
+        AC_PATH_PROG([PYTHON], [$am_cv_pathless_PYTHON])
+      fi
+      am_display_PYTHON=$am_cv_pathless_PYTHON
+    fi
+  ])
 
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
+  if test "$PYTHON" = :; then
+  dnl Run any user-specified action, or abort.
+    m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])])
+  else
+
+  dnl Query Python for its version number.  Getting [:3] seems to be
+  dnl the best way to do this; it's what "site.py" does in the standard
+  dnl library.
+
+  AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version],
+    [am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`])
+  AC_SUBST([PYTHON_VERSION], [$am_cv_python_version])
+
+  dnl Use the values of $prefix and $exec_prefix for the corresponding
+  dnl values of PYTHON_PREFIX and PYTHON_EXEC_PREFIX.  These are made
+  dnl distinct variables so they can be overridden if need be.  However,
+  dnl general consensus is that you shouldn't need this ability.
+
+  AC_SUBST([PYTHON_PREFIX], ['${prefix}'])
+  AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}'])
+
+  dnl At times (like when building shared libraries) you may want
+  dnl to know which OS platform Python thinks this is.
+
+  AC_CACHE_CHECK([for $am_display_PYTHON platform], [am_cv_python_platform],
+    [am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`])
+  AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform])
+
+  # Just factor out some code duplication.
+  am_python_setup_sysconfig="\
+import sys
+# Prefer sysconfig over distutils.sysconfig, for better compatibility
+# with python 3.x.  See automake bug#10227.
+try:
+    import sysconfig
+except ImportError:
+    can_use_sysconfig = 0
+else:
+    can_use_sysconfig = 1
+# Can't use sysconfig in CPython 2.7, since it's broken in virtualenvs:
+# <https://github.com/pypa/virtualenv/issues/118>
+try:
+    from platform import python_implementation
+    if python_implementation() == 'CPython' and sys.version[[:3]] == '2.7':
+        can_use_sysconfig = 0
+except ImportError:
+    pass"
+
+  dnl Set up 4 directories:
+
+  dnl pythondir -- where to install python scripts.  This is the
+  dnl   site-packages directory, not the python standard library
+  dnl   directory like in previous automake betas.  This behavior
+  dnl   is more consistent with lispdir.m4 for example.
+  dnl Query distutils for this directory.
+  AC_CACHE_CHECK([for $am_display_PYTHON script directory],
+    [am_cv_python_pythondir],
+    [if test "x$prefix" = xNONE
+     then
+       am_py_prefix=$ac_default_prefix
+     else
+       am_py_prefix=$prefix
+     fi
+     am_cv_python_pythondir=`$PYTHON -c "
+$am_python_setup_sysconfig
+if can_use_sysconfig:
+    sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'})
+else:
+    from distutils import sysconfig
+    sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix')
+sys.stdout.write(sitedir)"`
+     case $am_cv_python_pythondir in
+     $am_py_prefix*)
+       am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
+       am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"`
+       ;;
+     *)
+       case $am_py_prefix in
+         /usr|/System*) ;;
+         *)
+         am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages
+         ;;
+       esac
+       ;;
+     esac
+    ])
+  AC_SUBST([pythondir], [$am_cv_python_pythondir])
+
+  dnl pkgpythondir -- $PACKAGE directory under pythondir.  Was
+  dnl   PYTHON_SITE_PACKAGE in previous betas, but this naming is
+  dnl   more consistent with the rest of automake.
+
+  AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE])
+
+  dnl pyexecdir -- directory for installing python extension modules
+  dnl   (shared libraries)
+  dnl Query distutils for this directory.
+  AC_CACHE_CHECK([for $am_display_PYTHON extension module directory],
+    [am_cv_python_pyexecdir],
+    [if test "x$exec_prefix" = xNONE
+     then
+       am_py_exec_prefix=$am_py_prefix
+     else
+       am_py_exec_prefix=$exec_prefix
+     fi
+     am_cv_python_pyexecdir=`$PYTHON -c "
+$am_python_setup_sysconfig
+if can_use_sysconfig:
+    sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_prefix'})
+else:
+    from distutils import sysconfig
+    sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_prefix')
+sys.stdout.write(sitedir)"`
+     case $am_cv_python_pyexecdir in
+     $am_py_exec_prefix*)
+       am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
+       am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"`
+       ;;
+     *)
+       case $am_py_exec_prefix in
+         /usr|/System*) ;;
+         *)
+          am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages
+          ;;
+       esac
+       ;;
+     esac
+    ])
+  AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir])
+
+  dnl pkgpyexecdir -- $(pyexecdir)/$(PACKAGE)
+
+  AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE])
+
+  dnl Run any user-specified action.
+  $2
+  fi
+
+])
+
+
+# AM_PYTHON_CHECK_VERSION(PROG, VERSION, [ACTION-IF-TRUE], [ACTION-IF-FALSE])
+# ---------------------------------------------------------------------------
+# Run ACTION-IF-TRUE if the Python interpreter PROG has version >= VERSION.
+# Run ACTION-IF-FALSE otherwise.
+# This test uses sys.hexversion instead of the string equivalent (first
+# word of sys.version), in order to cope with versions such as 2.2c1.
+# This supports Python 2.0 or higher. (2.0 was released on October 16, 2000).
+AC_DEFUN([AM_PYTHON_CHECK_VERSION],
+ [prog="import sys
+# split strings by '.' and convert to numeric.  Append some zeros
+# because we need at least 4 digits for the hex conversion.
+# map returns an iterator in Python 3.0 and a list in 2.x
+minver = list(map(int, '$2'.split('.'))) + [[0, 0, 0]]
+minverhex = 0
+# xrange is not present in Python 3.0 and range returns an iterator
+for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[[i]]
+sys.exit(sys.hexversion < minverhex)"
+  AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])])
+
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 9
+# AM_RUN_LOG(COMMAND)
+# -------------------
+# Run COMMAND, save the exit status in ac_status, and log it.
+# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
+AC_DEFUN([AM_RUN_LOG],
+[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
+   ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
+   ac_status=$?
+   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
+   (exit $ac_status); }])
+
+# Check to make sure that the build environment is sane.    -*- Autoconf -*-
+
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
 
 # AM_SANITY_CHECK
 # ---------------
@@ -1025,14 +1144,12 @@ AC_CONFIG_COMMANDS_PRE(
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2012 Free Software Foundation, Inc.
+# Copyright (C) 2009-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 3
-
 # AM_SILENT_RULES([DEFAULT])
 # --------------------------
 # Enable less verbose build rules; with the default set to DEFAULT
@@ -1087,14 +1204,12 @@ AC_SUBST([AM_BACKSLASH])dnl
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 2
-
 # AM_PROG_INSTALL_STRIP
 # ---------------------
 # One issue with vendor 'install' (even GNU) is that you can't
@@ -1117,14 +1232,12 @@ fi
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2012 Free Software Foundation, Inc.
+# Copyright (C) 2006-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 3
-
 # _AM_SUBST_NOTMAKE(VARIABLE)
 # ---------------------------
 # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
@@ -1138,14 +1251,12 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2012 Free Software Foundation, Inc.
+# Copyright (C) 2004-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 3
-
 # _AM_PROG_TAR(FORMAT)
 # --------------------
 # Check how to create a tarball in format FORMAT.
@@ -1159,80 +1270,119 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
 # Substitute a variable $(am__untar) that extract such
 # a tarball read from stdin.
 #     $(am__untar) < result.tar
+#
 AC_DEFUN([_AM_PROG_TAR],
 [# Always define AMTAR for backward compatibility.  Yes, it's still used
 # in the wild :-(  We should find a proper way to deprecate it ...
 AC_SUBST([AMTAR], ['$${TAR-tar}'])
-m4_if([$1], [v7],
-     [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
-     [m4_case([$1], [ustar],, [pax],,
-              [m4_fatal([Unknown tar format])])
-AC_MSG_CHECKING([how to create a $1 tar archive])
-# Loop over all known methods to create a tar archive until one works.
+
+# We'll loop over all known methods to create a tar archive until one works.
 _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
-_am_tools=${am_cv_prog_tar_$1-$_am_tools}
-# Do not fold the above two line into one, because Tru64 sh and
-# Solaris sh will not grok spaces in the rhs of '-'.
-for _am_tool in $_am_tools
-do
-  case $_am_tool in
-  gnutar)
-    for _am_tar in tar gnutar gtar;
-    do
-      AM_RUN_LOG([$_am_tar --version]) && break
-    done
-    am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
-    am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
-    am__untar="$_am_tar -xf -"
-    ;;
-  plaintar)
-    # Must skip GNU tar: if it does not support --format= it doesn't create
-    # ustar tarball either.
-    (tar --version) >/dev/null 2>&1 && continue
-    am__tar='tar chf - "$$tardir"'
-    am__tar_='tar chf - "$tardir"'
-    am__untar='tar xf -'
-    ;;
-  pax)
-    am__tar='pax -L -x $1 -w "$$tardir"'
-    am__tar_='pax -L -x $1 -w "$tardir"'
-    am__untar='pax -r'
-    ;;
-  cpio)
-    am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
-    am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
-    am__untar='cpio -i -H $1 -d'
-    ;;
-  none)
-    am__tar=false
-    am__tar_=false
-    am__untar=false
-    ;;
-  esac
 
-  # If the value was cached, stop now.  We just wanted to have am__tar
-  # and am__untar set.
-  test -n "${am_cv_prog_tar_$1}" && break
+m4_if([$1], [v7],
+  [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
+
+  [m4_case([$1],
+    [ustar],
+     [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
+      # There is notably a 21 bits limit for the UID and the GID.  In fact,
+      # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
+      # and bug#13588).
+      am_max_uid=2097151 # 2^21 - 1
+      am_max_gid=$am_max_uid
+      # The $UID and $GID variables are not portable, so we need to resort
+      # to the POSIX-mandated id(1) utility.  Errors in the 'id' calls
+      # below are definitely unexpected, so allow the users to see them
+      # (that is, avoid stderr redirection).
+      am_uid=`id -u || echo unknown`
+      am_gid=`id -g || echo unknown`
+      AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
+      if test $am_uid -le $am_max_uid; then
+         AC_MSG_RESULT([yes])
+      else
+         AC_MSG_RESULT([no])
+         _am_tools=none
+      fi
+      AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
+      if test $am_gid -le $am_max_gid; then
+         AC_MSG_RESULT([yes])
+      else
+        AC_MSG_RESULT([no])
+        _am_tools=none
+      fi],
+
+  [pax],
+    [],
+
+  [m4_fatal([Unknown tar format])])
+
+  AC_MSG_CHECKING([how to create a $1 tar archive])
+
+  # Go ahead even if we have the value already cached.  We do so because we
+  # need to set the values for the 'am__tar' and 'am__untar' variables.
+  _am_tools=${am_cv_prog_tar_$1-$_am_tools}
+
+  for _am_tool in $_am_tools; do
+    case $_am_tool in
+    gnutar)
+      for _am_tar in tar gnutar gtar; do
+        AM_RUN_LOG([$_am_tar --version]) && break
+      done
+      am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
+      am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
+      am__untar="$_am_tar -xf -"
+      ;;
+    plaintar)
+      # Must skip GNU tar: if it does not support --format= it doesn't create
+      # ustar tarball either.
+      (tar --version) >/dev/null 2>&1 && continue
+      am__tar='tar chf - "$$tardir"'
+      am__tar_='tar chf - "$tardir"'
+      am__untar='tar xf -'
+      ;;
+    pax)
+      am__tar='pax -L -x $1 -w "$$tardir"'
+      am__tar_='pax -L -x $1 -w "$tardir"'
+      am__untar='pax -r'
+      ;;
+    cpio)
+      am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
+      am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
+      am__untar='cpio -i -H $1 -d'
+      ;;
+    none)
+      am__tar=false
+      am__tar_=false
+      am__untar=false
+      ;;
+    esac
 
-  # tar/untar a dummy directory, and stop if the command works
-  rm -rf conftest.dir
-  mkdir conftest.dir
-  echo GrepMe > conftest.dir/file
-  AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+    # If the value was cached, stop now.  We just wanted to have am__tar
+    # and am__untar set.
+    test -n "${am_cv_prog_tar_$1}" && break
+
+    # tar/untar a dummy directory, and stop if the command works.
+    rm -rf conftest.dir
+    mkdir conftest.dir
+    echo GrepMe > conftest.dir/file
+    AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+    rm -rf conftest.dir
+    if test -s conftest.tar; then
+      AM_RUN_LOG([$am__untar <conftest.tar])
+      AM_RUN_LOG([cat conftest.dir/file])
+      grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
+    fi
+  done
   rm -rf conftest.dir
-  if test -s conftest.tar; then
-    AM_RUN_LOG([$am__untar <conftest.tar])
-    grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
-  fi
-done
-rm -rf conftest.dir
 
-AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
-AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+  AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
+  AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+
 AC_SUBST([am__tar])
 AC_SUBST([am__untar])
 ]) # _AM_PROG_TAR
 
+m4_include([m4/ac_check_symbol.m4])
 m4_include([m4/ax_cc_for_build.m4])
 m4_include([m4/ax_create_stdint_h.m4])
 m4_include([m4/ax_pthread.m4])
@@ -1241,3 +1391,4 @@ m4_include([m4/ltoptions.m4])
 m4_include([m4/ltsugar.m4])
 m4_include([m4/ltversion.m4])
 m4_include([m4/lt~obsolete.m4])
+m4_include([m4/pkg.m4])
diff --git a/compile b/compile
new file mode 100755 (executable)
index 0000000..531136b
--- /dev/null
+++ b/compile
@@ -0,0 +1,347 @@
+#! /bin/sh
+# Wrapper for compilers which do not understand '-c -o'.
+
+scriptversion=2012-10-14.11; # UTC
+
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
+# Written by Tom Tromey <tromey@cygnus.com>.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# This file is maintained in Automake, please report
+# bugs to <bug-automake@gnu.org> or send patches to
+# <automake-patches@gnu.org>.
+
+nl='
+'
+
+# We need space, tab and new line, in precisely that order.  Quoting is
+# there to prevent tools from complaining about whitespace usage.
+IFS=" ""       $nl"
+
+file_conv=
+
+# func_file_conv build_file lazy
+# Convert a $build file to $host form and store it in $file
+# Currently only supports Windows hosts. If the determined conversion
+# type is listed in (the comma separated) LAZY, no conversion will
+# take place.
+func_file_conv ()
+{
+  file=$1
+  case $file in
+    / | /[!/]*) # absolute file, and not a UNC file
+      if test -z "$file_conv"; then
+       # lazily determine how to convert abs files
+       case `uname -s` in
+         MINGW*)
+           file_conv=mingw
+           ;;
+         CYGWIN*)
+           file_conv=cygwin
+           ;;
+         *)
+           file_conv=wine
+           ;;
+       esac
+      fi
+      case $file_conv/,$2, in
+       *,$file_conv,*)
+         ;;
+       mingw/*)
+         file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
+         ;;
+       cygwin/*)
+         file=`cygpath -m "$file" || echo "$file"`
+         ;;
+       wine/*)
+         file=`winepath -w "$file" || echo "$file"`
+         ;;
+      esac
+      ;;
+  esac
+}
+
+# func_cl_dashL linkdir
+# Make cl look for libraries in LINKDIR
+func_cl_dashL ()
+{
+  func_file_conv "$1"
+  if test -z "$lib_path"; then
+    lib_path=$file
+  else
+    lib_path="$lib_path;$file"
+  fi
+  linker_opts="$linker_opts -LIBPATH:$file"
+}
+
+# func_cl_dashl library
+# Do a library search-path lookup for cl
+func_cl_dashl ()
+{
+  lib=$1
+  found=no
+  save_IFS=$IFS
+  IFS=';'
+  for dir in $lib_path $LIB
+  do
+    IFS=$save_IFS
+    if $shared && test -f "$dir/$lib.dll.lib"; then
+      found=yes
+      lib=$dir/$lib.dll.lib
+      break
+    fi
+    if test -f "$dir/$lib.lib"; then
+      found=yes
+      lib=$dir/$lib.lib
+      break
+    fi
+    if test -f "$dir/lib$lib.a"; then
+      found=yes
+      lib=$dir/lib$lib.a
+      break
+    fi
+  done
+  IFS=$save_IFS
+
+  if test "$found" != yes; then
+    lib=$lib.lib
+  fi
+}
+
+# func_cl_wrapper cl arg...
+# Adjust compile command to suit cl
+func_cl_wrapper ()
+{
+  # Assume a capable shell
+  lib_path=
+  shared=:
+  linker_opts=
+  for arg
+  do
+    if test -n "$eat"; then
+      eat=
+    else
+      case $1 in
+       -o)
+         # configure might choose to run compile as 'compile cc -o foo foo.c'.
+         eat=1
+         case $2 in
+           *.o | *.[oO][bB][jJ])
+             func_file_conv "$2"
+             set x "$@" -Fo"$file"
+             shift
+             ;;
+           *)
+             func_file_conv "$2"
+             set x "$@" -Fe"$file"
+             shift
+             ;;
+         esac
+         ;;
+       -I)
+         eat=1
+         func_file_conv "$2" mingw
+         set x "$@" -I"$file"
+         shift
+         ;;
+       -I*)
+         func_file_conv "${1#-I}" mingw
+         set x "$@" -I"$file"
+         shift
+         ;;
+       -l)
+         eat=1
+         func_cl_dashl "$2"
+         set x "$@" "$lib"
+         shift
+         ;;
+       -l*)
+         func_cl_dashl "${1#-l}"
+         set x "$@" "$lib"
+         shift
+         ;;
+       -L)
+         eat=1
+         func_cl_dashL "$2"
+         ;;
+       -L*)
+         func_cl_dashL "${1#-L}"
+         ;;
+       -static)
+         shared=false
+         ;;
+       -Wl,*)
+         arg=${1#-Wl,}
+         save_ifs="$IFS"; IFS=','
+         for flag in $arg; do
+           IFS="$save_ifs"
+           linker_opts="$linker_opts $flag"
+         done
+         IFS="$save_ifs"
+         ;;
+       -Xlinker)
+         eat=1
+         linker_opts="$linker_opts $2"
+         ;;
+       -*)
+         set x "$@" "$1"
+         shift
+         ;;
+       *.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
+         func_file_conv "$1"
+         set x "$@" -Tp"$file"
+         shift
+         ;;
+       *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
+         func_file_conv "$1" mingw
+         set x "$@" "$file"
+         shift
+         ;;
+       *)
+         set x "$@" "$1"
+         shift
+         ;;
+      esac
+    fi
+    shift
+  done
+  if test -n "$linker_opts"; then
+    linker_opts="-link$linker_opts"
+  fi
+  exec "$@" $linker_opts
+  exit 1
+}
+
+eat=
+
+case $1 in
+  '')
+     echo "$0: No command.  Try '$0 --help' for more information." 1>&2
+     exit 1;
+     ;;
+  -h | --h*)
+    cat <<\EOF
+Usage: compile [--help] [--version] PROGRAM [ARGS]
+
+Wrapper for compilers which do not understand '-c -o'.
+Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
+arguments, and rename the output as expected.
+
+If you are trying to build a whole package this is not the
+right script to run: please start by reading the file 'INSTALL'.
+
+Report bugs to <bug-automake@gnu.org>.
+EOF
+    exit $?
+    ;;
+  -v | --v*)
+    echo "compile $scriptversion"
+    exit $?
+    ;;
+  cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
+    func_cl_wrapper "$@"      # Doesn't return...
+    ;;
+esac
+
+ofile=
+cfile=
+
+for arg
+do
+  if test -n "$eat"; then
+    eat=
+  else
+    case $1 in
+      -o)
+       # configure might choose to run compile as 'compile cc -o foo foo.c'.
+       # So we strip '-o arg' only if arg is an object.
+       eat=1
+       case $2 in
+         *.o | *.obj)
+           ofile=$2
+           ;;
+         *)
+           set x "$@" -o "$2"
+           shift
+           ;;
+       esac
+       ;;
+      *.c)
+       cfile=$1
+       set x "$@" "$1"
+       shift
+       ;;
+      *)
+       set x "$@" "$1"
+       shift
+       ;;
+    esac
+  fi
+  shift
+done
+
+if test -z "$ofile" || test -z "$cfile"; then
+  # If no '-o' option was seen then we might have been invoked from a
+  # pattern rule where we don't need one.  That is ok -- this is a
+  # normal compilation that the losing compiler can handle.  If no
+  # '.c' file was seen then we are probably linking.  That is also
+  # ok.
+  exec "$@"
+fi
+
+# Name of file we expect compiler to create.
+cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
+
+# Create the lock directory.
+# Note: use '[/\\:.-]' here to ensure that we don't use the same name
+# that we are using for the .o file.  Also, base the name on the expected
+# object file name, since that is what matters with a parallel build.
+lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
+while true; do
+  if mkdir "$lockdir" >/dev/null 2>&1; then
+    break
+  fi
+  sleep 1
+done
+# FIXME: race condition here if user kills between mkdir and trap.
+trap "rmdir '$lockdir'; exit 1" 1 2 15
+
+# Run the compile.
+"$@"
+ret=$?
+
+if test -f "$cofile"; then
+  test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
+elif test -f "${cofile}bj"; then
+  test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
+fi
+
+rmdir "$lockdir"
+exit $ret
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
+# End:
index bf08de8..f9032ba 100644 (file)
@@ -2,7 +2,7 @@
 <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
 <fontconfig>
 <!--  Use the Autohinter --> 
-  <match target="font">
+  <match target="pattern">
     <!--
       This configuration is available on the major desktop environments.
       We shouldn't overwrite it with "assign" unconditionally.
index e650160..635847c 100644 (file)
@@ -1,8 +1,8 @@
 <?xml version="1.0"?>
 <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
 <fontconfig>
-<!--  Enable sub-pixel rendering --> 
-  <match target="font">
+<!--  Disable sub-pixel rendering --> 
+  <match target="pattern">
     <!--
       This configuration is available on the major desktop environments.
       We shouldn't overwrite it with "assign" unconditionally.
index 74574ad..1378195 100644 (file)
@@ -2,7 +2,7 @@
 <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
 <fontconfig>
 <!--  Enable sub-pixel rendering --> 
-  <match target="font">
+  <match target="pattern">
     <!--
       This configuration is available on the major desktop environments.
       We shouldn't overwrite it with "assign" unconditionally.
index 3c558e5..757c3b6 100644 (file)
@@ -2,7 +2,7 @@
 <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
 <fontconfig>
 <!--  Enable sub-pixel rendering --> 
-  <match target="font">
+  <match target="pattern">
     <!--
       This configuration is available on the major desktop environments.
       We shouldn't overwrite it with "assign" unconditionally.
index 392634d..c807e5c 100644 (file)
@@ -2,7 +2,7 @@
 <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
 <fontconfig>
 <!--  Enable sub-pixel rendering --> 
-  <match target="font">
+  <match target="pattern">
     <!--
       This configuration is available on the major desktop environments.
       We shouldn't overwrite it with "assign" unconditionally.
index 1b7b5f6..b5985e0 100644 (file)
@@ -2,7 +2,7 @@
 <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
 <fontconfig>
 <!--  Enable sub-pixel rendering --> 
-  <match target="font">
+  <match target="pattern">
     <!--
       This configuration is available on the major desktop environments.
       We shouldn't overwrite it with "assign" unconditionally.
index 67037b4..a25e3b1 100644 (file)
@@ -2,7 +2,7 @@
 <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
 <fontconfig>
 <!--  Disable hinting --> 
-  <match target="font">
+  <match target="pattern">
     <!--
       This configuration is available on the major desktop environments.
       We shouldn't overwrite it with "assign" unconditionally.
index e251edd..9d7d11f 100644 (file)
@@ -2,7 +2,7 @@
 <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
 <fontconfig>
 <!--  Use lcddefault as default for LCD filter -->
-  <match target="font">
+  <match target="pattern">
     <!--
       This configuration is available on the major desktop environments.
       We shouldn't overwrite it with "assign" unconditionally.
index 63a4116..7e2b256 100644 (file)
@@ -2,7 +2,7 @@
 <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
 <fontconfig>
 <!--  Use lcdlegacy as default for LCD filter -->
-  <match target="font">
+  <match target="pattern">
     <!--
       This configuration is available on the major desktop environments.
       We shouldn't overwrite it with "assign" unconditionally.
index af50b2c..0dd0a90 100644 (file)
@@ -2,7 +2,7 @@
 <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
 <fontconfig>
 <!--  Use lcdlight as default for LCD filter -->
-  <match target="font">
+  <match target="pattern">
     <!--
       This configuration is available on the major desktop environments.
       We shouldn't overwrite it with "assign" unconditionally.
index ccc3e24..cd1e924 100644 (file)
@@ -2,55 +2,49 @@
 <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
 <fontconfig>
 
-       <!-- Alias similar/metric-compatible families from various sources:
-
-               PostScript fonts:
-                       Helvetica
-                       Times
-                       Courier
-               URW fonts:
-                       Nimbus Sans L
-                       Nimbus Roman No9 L
-                       Nimbus Mono L
-
-               Microsoft fonts:
-                       Arial
-                       Times New Roman
-                       Courier New
-               Liberation fonts:
-                       Liberation Sans
-                       Liberation Serif
-                       Liberation Mono
-               StarOffice fonts:
-                       Albany
-                       Thorndale
-                       Cumberland
-               AMT fonts:
-                       Albany AMT
-                       Thorndale AMT
-                       Cumberland AMT
-               Google CrOS Core fonts:
-                       Arimo
-                       Cousine
-                       Tinos
-
-            Of these, URW fonts are design compatible with PostScrict fonts,
-            and the Liberation, StarOffice, AMT and CrOS Core ones are
-            compatible with Microsoft fonts.
-
-            We want for each of them to fallback to any of these
-            available, but in an order preferring similar designs
-            first.  We do this in three steps:
-
-               1) Alias each specific to it's generic family.
-                  eg. Liberation Sans to Arial
-
-               2) Weak alias each generic to the other generic of its family.
-                  eg. Arial to Helvetica
-
-               3) Alias each generic to its specifics.
-                  eg. Arial to Liberation Sans, Albany, and Albany AMT
-       -->
+<!--
+
+Alias similar/metric-compatible families from various sources:
+
+PostScript fonts:       URW fonts:              GUST fonts:        Windows fonts:
+======================  ======================  =================  ==================
+Helvetica               Nimbus Sans             TeX Gyre Heros
+Helvetica Condensed     Nimbus Sans Narrow      TeX Gyre Heros Cn
+Times                   Nimbus Roman            TeX Gyre Termes
+Courier                 Nimbus Mono             TeX Gyre Cursor
+ITC Avant Garde Gothic  URW Gothic              TeX Gyre Adventor
+ITC Bookman             Bookman URW             TeX Gyre Bonum     Bookman Old Style
+ITC Zapf Chancery       Chancery URW            TeX Gyre Chorus
+Palatino                Palladio URW            TeX Gyre Pagella   Palatino Linotype
+New Century Schoolbook  Century SchoolBook URW  TeX Gyre Schola    Century Schoolbook
+
+Microsoft fonts:  Liberation fonts:       Google CrOS core fonts:  StarOffice fonts:  AMT fonts:
+================  ======================  =======================  =================  ==============
+Arial             Liberation Sans         Arimo                    Albany             Albany AMT
+Arial Narrow      Liberation Sans Narrow
+Times New Roman   Liberation Serif        Tinos                    Thorndale          Thorndale AMT
+Courier New       Liberation Mono         Cousine                  Cumberland         Cumberland AMT
+Cambria                                   Caladea
+Calibri                                   Carlito
+Symbol                                    SymbolNeu
+
+Microsoft fonts:  Other fonts:
+================  ============
+Georgia           Gelasio
+
+We want for each of them to fallback to any of these available,
+but in an order preferring similar designs first.  We do this in three steps:
+
+1) Alias each specific to its generic family.
+   e.g. Liberation Sans to Arial
+
+2) Weak alias each generic to the other generic of its family.
+   e.g. Arial to Helvetica
+
+3) Alias each generic to its specifics.
+   e.g. Arial to Liberation Sans, Arimo, Albany, and Albany AMT
+
+-->
 
 <!-- Map specifics to generics -->
 
        </alias>
 
        <alias binding="same">
+         <family>Nimbus Sans</family>
+         <default>
+         <family>Helvetica</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>TeX Gyre Heros</family>
+         <default>
+         <family>Helvetica</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>Nimbus Sans Narrow</family>
+         <default>
+         <family>Helvetica Condensed</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>TeX Gyre Heros Cn</family>
+         <default>
+         <family>Helvetica Condensed</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
          <family>Nimbus Roman No9 L</family>
          <default>
          <family>Times</family>
        </alias>
 
        <alias binding="same">
+         <family>Nimbus Roman</family>
+         <default>
+         <family>Times</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>TeX Gyre Termes</family>
+         <default>
+         <family>Times</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
          <family>Nimbus Mono L</family>
          <default>
          <family>Courier</family>
          </default>
        </alias>
 
+       <alias binding="same">
+         <family>Nimbus Mono</family>
+         <default>
+         <family>Courier</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>TeX Gyre Cursor</family>
+         <default>
+         <family>Courier</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>Avant Garde</family>
+         <default>
+         <family>ITC Avant Garde Gothic</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>URW Gothic L</family>
+         <default>
+         <family>ITC Avant Garde Gothic</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>URW Gothic</family>
+         <default>
+         <family>ITC Avant Garde Gothic</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>TeX Gyre Adventor</family>
+         <default>
+         <family>ITC Avant Garde Gothic</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>Bookman</family>
+         <default>
+         <family>ITC Bookman</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>URW Bookman L</family>
+         <default>
+         <family>ITC Bookman</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>Bookman URW</family>
+         <default>
+         <family>ITC Bookman</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>TeX Gyre Bonum</family>
+         <default>
+         <family>ITC Bookman</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>Bookman Old Style</family>
+         <default>
+         <family>ITC Bookman</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>Zapf Chancery</family>
+         <default>
+         <family>ITC Zapf Chancery</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>URW Chancery L</family>
+         <default>
+         <family>ITC Zapf Chancery</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>Chancery URW</family>
+         <default>
+         <family>ITC Zapf Chancery</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>TeX Gyre Chorus</family>
+         <default>
+         <family>ITC Zapf Chancery</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>URW Palladio L</family>
+         <default>
+         <family>Palatino</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>Palladio URW</family>
+         <default>
+         <family>Palatino</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>TeX Gyre Pagella</family>
+         <default>
+         <family>Palatino</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>Palatino Linotype</family>
+         <default>
+         <family>Palatino</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>Century Schoolbook L</family>
+         <default>
+         <family>New Century Schoolbook</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>Century SchoolBook URW</family>
+         <default>
+         <family>New Century Schoolbook</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>TeX Gyre Schola</family>
+         <default>
+         <family>New Century Schoolbook</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>Century Schoolbook</family>
+         <default>
+         <family>New Century Schoolbook</family>
+         </default>
+       </alias>
+
 
        <!-- Microsoft -->
        <alias binding="same">
        </alias>
 
        <alias binding="same">
+         <family>Liberation Sans Narrow</family>
+         <default>
+           <family>Arial Narrow</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
          <family>Albany</family>
          <default>
          <family>Arial</family>
          </default>
        </alias>
 
+       <alias binding="same">
+         <family>Gelasio</family>
+         <default>
+         <family>Georgia</family>
+         </default>
+       </alias>
 
+       <alias binding="same">
+         <family>Caladea</family>
+         <default>
+         <family>Cambria</family>
+         </default>
+       </alias>
 
-<!-- Accept the other group as fallback -->
+       <alias binding="same">
+         <family>Carlito</family>
+         <default>
+         <family>Calibri</family>
+         </default>
+       </alias>
+
+       <alias binding="same">
+         <family>SymbolNeu</family>
+         <default>
+         <family>Symbol</family>
+         </default>
+  </alias>
 
+<!-- Accept the other group as fallback -->
 
        <!-- PostScript -->
        <alias>
        </alias>
 
        <alias>
+         <family>Helvetica Condensed</family>
+         <default>
+         <family>Arial Narrow</family>
+         </default>
+       </alias>
+
+       <alias>
          <family>Times</family>
          <default>
          <family>Times New Roman</family>
        </alias>
 
        <alias>
+         <family>Arial Narrow</family>
+         <default>
+         <family>Helvetica Condensed</family>
+         </default>
+       </alias>
+
+       <alias>
          <family>Times New Roman</family>
          <default>
          <family>Times</family>
 
 <!-- Map generics to specifics -->
 
-
        <!-- PostScript -->
        <alias binding="same">
          <family>Helvetica</family>
          <accept>
+         <family>TeX Gyre Heros</family>
+         <family>Nimbus Sans</family>
          <family>Nimbus Sans L</family>
          </accept>
        </alias>
 
        <alias binding="same">
+         <family>Helvetica Condensed</family>
+         <accept>
+         <family>TeX Gyre Heros Cn</family>
+         <family>Nimbus Sans Narrow</family>
+         </accept>
+       </alias>
+
+       <alias binding="same">
          <family>Times</family>
          <accept>
+         <family>TeX Gyre Termes</family>
+         <family>Nimbus Roman</family>
          <family>Nimbus Roman No9 L</family>
          </accept>
        </alias>
        <alias binding="same">
          <family>Courier</family>
          <accept>
+         <family>TeX Gyre Cursor</family>
+         <family>Nimbus Mono</family>
          <family>Nimbus Mono L</family>
          </accept>
        </alias>
 
+       <alias binding="same">
+         <family>ITC Avant Garde Gothic</family>
+         <accept>
+         <family>TeX Gyre Adventor</family>
+         <family>URW Gothic</family>
+         <family>URW Gothic L</family>
+         </accept>
+       </alias>
+
+       <alias binding="same">
+         <family>ITC Bookman</family>
+         <accept>
+         <family>Bookman Old Style</family>
+         <family>TeX Gyre Bonum</family>
+         <family>Bookman URW</family>
+         <family>URW Bookman L</family>
+         </accept>
+       </alias>
+
+       <alias binding="same">
+         <family>ITC Zapf Chancery</family>
+         <accept>
+         <family>TeX Gyre Chorus</family>
+         <family>Chancery URW</family>
+         <family>URW Chancery L</family>
+         </accept>
+       </alias>
+
+       <alias binding="same">
+         <family>Palatino</family>
+         <accept>
+         <family>Palatino Linotype</family>
+         <family>TeX Gyre Pagella</family>
+         <family>Palladio URW</family>
+         <family>URW Palladio L</family>
+         </accept>
+       </alias>
+
+       <alias binding="same">
+         <family>New Century Schoolbook</family>
+         <accept>
+         <family>Century Schoolbook</family>
+         <family>TeX Gyre Schola</family>
+         <family>Century SchoolBook URW</family>
+         <family>Century Schoolbook L</family>
+         </accept>
+       </alias>
 
        <!-- Microsoft -->
        <alias binding="same">
        </alias>
 
        <alias binding="same">
+         <family>Arial Narrow</family>
+         <accept>
+           <family>Liberation Sans Narrow</family>
+         </accept>
+       </alias>
+
+       <alias binding="same">
          <family>Times New Roman</family>
          <accept>
            <family>Tinos</family>
          </accept>
        </alias>
 
+       <alias binding="same">
+         <family>Georgia</family>
+         <accept>
+           <family>Gelasio</family>
+         </accept>
+       </alias>
+
+       <alias binding="same">
+         <family>Cambria</family>
+         <accept>
+           <family>Caladea</family>
+         </accept>
+       </alias>
+
+       <alias binding="same">
+         <family>Calibri</family>
+         <accept>
+           <family>Carlito</family>
+         </accept>
+  </alias>
+
+       <alias binding="same">
+         <family>Symbol</family>
+         <accept>
+           <family>SymbolNeu</family>
+         </accept>
+  </alias>
 
 </fontconfig>
index aae06ac..e0d45da 100644 (file)
@@ -3,30 +3,14 @@
 <fontconfig>
 <!--
   URW provides metric and shape compatible fonts for some Adobe families.
-  Helvetica, Courier, and Times are handled in 30-metric-aliases.conf.
+  Most of these are handled in 30-metric-aliases.conf.
   -->
        <alias binding="same">
-         <family>Avant Garde</family>
-         <accept><family>URW Gothic L</family></accept>
-       </alias>
-       <alias binding="same">
-         <family>Bookman</family>
-         <accept><family>URW Bookman L</family></accept>
-       </alias>
-       <alias binding="same">
-         <family>New Century Schoolbook</family>
-         <accept><family>Century Schoolbook L</family></accept>
-       </alias>
-       <alias binding="same">
-         <family>Palatino</family>
-         <accept><family>URW Palladio L</family></accept>
-       </alias>
-       <alias binding="same">
-         <family>Zapf Chancery</family>
-         <accept><family>URW Chancery L</family></accept>
+         <family>Zapf Dingbats</family>
+         <accept><family>Dingbats</family></accept>
        </alias>
        <alias binding="same">
-         <family>Zapf Dingbats</family>
+         <family>ITC Zapf Dingbats</family>
          <accept><family>Dingbats</family></accept>
        </alias>
        <match target="pattern">
index 09fd526..72490f3 100644 (file)
                <default><family>serif</family></default>
        </alias>
        <alias>
+               <family>Nimbus Roman</family>
+               <default><family>serif</family></default>
+       </alias>
+       <alias>
                <family>Luxi Serif</family>
                <default><family>serif</family></default>
        </alias>
                <family>Thorndale</family>
                <default><family>serif</family></default>
        </alias>
+       <alias>
+               <family>Georgia</family>
+               <default><family>serif</family></default>
+       </alias>
+       <alias>
+               <family>Garamond</family>
+               <default><family>serif</family></default>
+       </alias>
+       <alias>
+               <family>Palatino Linotype</family>
+               <default><family>serif</family></default>
+       </alias>
 <!--
   Sans-serif faces
  -->
                <default><family>sans-serif</family></default>
        </alias>
        <alias>
+               <family>Nimbus Sans</family>
+               <default><family>sans-serif</family></default>
+       </alias>
+       <alias>
                <family>Luxi Sans</family>
                <default><family>sans-serif</family></default>
        </alias>
+       <alias>
+               <family>Trebuchet MS</family>
+               <default><family>sans-serif</family></default>
+       </alias>
 <!--
   Monospace faces
  -->
                <family>Nimbus Mono L</family>
                <default><family>monospace</family></default>
        </alias>
+       <alias>
+               <family>Nimbus Mono</family>
+               <default><family>monospace</family></default>
+       </alias>
 <!--
   Fantasy faces
  -->
index 2107e31..35600ea 100644 (file)
@@ -10,6 +10,7 @@
                        <family>Thorndale AMT</family>
                        <family>Luxi Serif</family>
                        <family>Nimbus Roman No9 L</family>
+                       <family>Nimbus Roman</family>
                        <family>Times</family>
                </prefer>
        </alias>
@@ -23,6 +24,7 @@
                        <family>Albany AMT</family>
                        <family>Luxi Sans</family>
                        <family>Nimbus Sans L</family>
+                       <family>Nimbus Sans</family>
                        <family>Helvetica</family>
                        <family>Lucida Sans Unicode</family>
                        <family>BPG Glaho International</family> <!-- lat,cyr,arab,geor -->
@@ -40,6 +42,7 @@
                        <family>Cumberland AMT</family>
                        <family>Luxi Mono</family>
                        <family>Nimbus Mono L</family>
+                       <family>Nimbus Mono</family>
                        <family>Courier</family>
                </prefer>
        </alias>
index 77597e5..d61756b 100644 (file)
@@ -21,8 +21,9 @@
 #  TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 #  PERFORMANCE OF THIS SOFTWARE.
 
-DOC_FILES= \
-       README
+BUILT_SOURCES = README
+DOC_SOURCES = README.in
+DOC_FILES = $(DOC_SOURCES:.in=)
 
 CONF_LINKS = \
        10-scale-bitmap-fonts.conf \
@@ -41,9 +42,10 @@ CONF_LINKS = \
        80-delicious.conf \
        90-synthetic.conf
 
-EXTRA_DIST = $(template_DATA) $(DOC_FILES)
+EXTRA_DIST = $(template_DATA) $(DOC_SOURCES)
+CLEANFILES = $(DOC_FILES)
 
-configdir=$(CONFIGDIR)
+configdir = $(CONFIGDIR)
 config_DATA = $(DOC_FILES)
 
 templatedir = $(TEMPLATEDIR)
@@ -78,6 +80,9 @@ template_DATA =                               \
        80-delicious.conf               \
        90-synthetic.conf
 
+README: $(srcdir)/README.in
+       sed "s|\@TEMPLATEDIR\@|$(templatedir)|" $< > $@
+
 install-data-hook:
        mkdir -p $(DESTDIR)$(configdir)
        @(echo cd $(DESTDIR)$(configdir);                       \
index dadefb3..42f12c7 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 #  PERFORMANCE OF THIS SOFTWARE.
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -74,14 +102,15 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = conf.d
-DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am README
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
@@ -136,6 +165,7 @@ am__uninstall_files_from_dir = { \
   }
 am__installdirs = "$(DESTDIR)$(configdir)" "$(DESTDIR)$(templatedir)"
 DATA = $(config_DATA) $(template_DATA)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -177,6 +207,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -218,12 +250,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -247,7 +286,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -255,7 +293,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = $(CONFIGDIR)
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -280,22 +317,25 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = $(TEMPLATEDIR)
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = @xmldir@
-DOC_FILES = \
-       README
-
+BUILT_SOURCES = README
+DOC_SOURCES = README.in
+DOC_FILES = $(DOC_SOURCES:.in=)
 CONF_LINKS = \
        10-scale-bitmap-fonts.conf \
        20-unhint-small-vera.conf \
@@ -313,8 +353,11 @@ CONF_LINKS = \
        80-delicious.conf \
        90-synthetic.conf
 
-EXTRA_DIST = $(template_DATA) $(DOC_FILES)
+EXTRA_DIST = $(template_DATA) $(DOC_SOURCES)
+CLEANFILES = $(DOC_FILES)
+configdir = $(CONFIGDIR)
 config_DATA = $(DOC_FILES)
+templatedir = $(TEMPLATEDIR)
 template_DATA = \
        10-autohint.conf                \
        10-no-sub-pixel.conf            \
@@ -346,7 +389,8 @@ template_DATA = \
        80-delicious.conf               \
        90-synthetic.conf
 
-all: all-am
+all: $(BUILT_SOURCES)
+       $(MAKE) $(AM_MAKEFLAGS) all-am
 
 .SUFFIXES:
 $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
@@ -427,11 +471,9 @@ uninstall-templateDATA:
        @list='$(template_DATA)'; test -n "$(templatedir)" || list=; \
        files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
        dir='$(DESTDIR)$(templatedir)'; $(am__uninstall_files_from_dir)
-tags: TAGS
-TAGS:
+tags TAGS:
 
-ctags: CTAGS
-CTAGS:
+ctags CTAGS:
 
 cscope cscopelist:
 
@@ -467,13 +509,15 @@ distdir: $(DISTFILES)
          fi; \
        done
 check-am: all-am
-check: check-am
+check: $(BUILT_SOURCES)
+       $(MAKE) $(AM_MAKEFLAGS) check-am
 all-am: Makefile $(DATA)
 installdirs:
        for dir in "$(DESTDIR)$(configdir)" "$(DESTDIR)$(templatedir)"; do \
          test -z "$$dir" || $(MKDIR_P) "$$dir"; \
        done
-install: install-am
+install: $(BUILT_SOURCES)
+       $(MAKE) $(AM_MAKEFLAGS) install-am
 install-exec: install-exec-am
 install-data: install-data-am
 uninstall: uninstall-am
@@ -495,6 +539,7 @@ install-strip:
 mostlyclean-generic:
 
 clean-generic:
+       -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
 
 distclean-generic:
        -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
@@ -503,6 +548,7 @@ distclean-generic:
 maintainer-clean-generic:
        @echo "This command is intended for maintainers to use"
        @echo "it deletes files that may require special tools to rebuild."
+       -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
 clean: clean-am
 
 clean-am: clean-generic clean-libtool mostlyclean-am
@@ -571,21 +617,25 @@ ps-am:
 uninstall-am: uninstall-configDATA uninstall-local \
        uninstall-templateDATA
 
-.MAKE: install-am install-data-am install-strip
+.MAKE: all check install install-am install-data-am install-strip
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
-       distclean distclean-generic distclean-libtool distdir dvi \
-       dvi-am html html-am info info-am install install-am \
-       install-configDATA install-data install-data-am \
-       install-data-hook install-dvi install-dvi-am install-exec \
-       install-exec-am install-html install-html-am install-info \
-       install-info-am install-man install-pdf install-pdf-am \
-       install-ps install-ps-am install-strip install-templateDATA \
-       installcheck installcheck-am installdirs maintainer-clean \
-       maintainer-clean-generic mostlyclean mostlyclean-generic \
-       mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
-       uninstall-configDATA uninstall-local uninstall-templateDATA
-
+       cscopelist-am ctags-am distclean distclean-generic \
+       distclean-libtool distdir dvi dvi-am html html-am info info-am \
+       install install-am install-configDATA install-data \
+       install-data-am install-data-hook install-dvi install-dvi-am \
+       install-exec install-exec-am install-html install-html-am \
+       install-info install-info-am install-man install-pdf \
+       install-pdf-am install-ps install-ps-am install-strip \
+       install-templateDATA installcheck installcheck-am installdirs \
+       maintainer-clean maintainer-clean-generic mostlyclean \
+       mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+       tags-am uninstall uninstall-am uninstall-configDATA \
+       uninstall-local uninstall-templateDATA
+
+
+README: $(srcdir)/README.in
+       sed "s|\@TEMPLATEDIR\@|$(templatedir)|" $< > $@
 
 install-data-hook:
        mkdir -p $(DESTDIR)$(configdir)
index c2fb52c..6a774c5 100644 (file)
@@ -2,9 +2,9 @@ conf.d/README
 
 Each file in this directory is a fontconfig configuration file.  Fontconfig
 scans this directory, loading all files of the form [0-9][0-9]*.conf.
-These files are normally installed in ../conf.avail and then symlinked here,
-allowing them to be easily installed and then enabled/disabled by adjusting
-the symlinks.
+These files are normally installed in /usr/share/fontconfig/conf.avail
+and then symlinked here, allowing them to be easily installed and then
+enabled/disabled by adjusting the symlinks.
 
 The files are loaded in numeric order, the structure of the configuration
 has led to the following conventions in usage:
diff --git a/conf.d/README.in b/conf.d/README.in
new file mode 100644 (file)
index 0000000..90c45de
--- /dev/null
@@ -0,0 +1,23 @@
+conf.d/README
+
+Each file in this directory is a fontconfig configuration file.  Fontconfig
+scans this directory, loading all files of the form [0-9][0-9]*.conf.
+These files are normally installed in @TEMPLATEDIR@
+and then symlinked here, allowing them to be easily installed and then
+enabled/disabled by adjusting the symlinks.
+
+The files are loaded in numeric order, the structure of the configuration
+has led to the following conventions in usage:
+
+ Files begining with:  Contain:
+ 00 through 09         Font directories
+ 10 through 19         system rendering defaults (AA, etc)
+ 20 through 29         font rendering options
+ 30 through 39         family substitution
+ 40 through 49         generic identification, map family->generic
+ 50 through 59         alternate config file loading
+ 60 through 69         generic aliases, map generic->family
+ 70 through 79         select font (adjust which fonts are available)
+ 80 through 89         match target="scan" (modify scanned patterns)
+ 90 through 99         font synthesis
index c0adba9..1f5c50c 100755 (executable)
@@ -1,14 +1,12 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
-#   2011, 2012 Free Software Foundation, Inc.
+#   Copyright 1992-2014 Free Software Foundation, Inc.
 
-timestamp='2012-06-10'
+timestamp='2014-03-23'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# the Free Software Foundation; either version 3 of the License, or
 # (at your option) any later version.
 #
 # This program is distributed in the hope that it will be useful, but
@@ -22,19 +20,17 @@ timestamp='2012-06-10'
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
 # configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Originally written by Per Bothner.  Please send patches (context
-# diff format) to <config-patches@gnu.org> and include a ChangeLog
-# entry.
+# the same distribution terms that you use for the rest of that
+# program.  This Exception is an additional permission under section 7
+# of the GNU General Public License, version 3 ("GPLv3").
 #
-# This script attempts to guess a canonical system name similar to
-# config.sub.  If it succeeds, it prints the system name on stdout, and
-# exits with 0.  Otherwise, it exits with 1.
+# Originally written by Per Bothner.
 #
 # You can get the latest version of this script from:
 # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
+#
+# Please send patches with a ChangeLog entry to config-patches@gnu.org.
+
 
 me=`echo "$0" | sed -e 's,.*/,,'`
 
@@ -54,9 +50,7 @@ version="\
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
-Free Software Foundation, Inc.
+Copyright 1992-2014 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -138,6 +132,27 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
 UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
 
+case "${UNAME_SYSTEM}" in
+Linux|GNU|GNU/*)
+       # If the system lacks a compiler, then just pick glibc.
+       # We could probably try harder.
+       LIBC=gnu
+
+       eval $set_cc_for_build
+       cat <<-EOF > $dummy.c
+       #include <features.h>
+       #if defined(__UCLIBC__)
+       LIBC=uclibc
+       #elif defined(__dietlibc__)
+       LIBC=dietlibc
+       #else
+       LIBC=gnu
+       #endif
+       EOF
+       eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
+       ;;
+esac
+
 # Note: order is significant - the case branches are not exclusive.
 
 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
@@ -200,6 +215,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
        # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
        echo "${machine}-${os}${release}"
        exit ;;
+    *:Bitrig:*:*)
+       UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
+       echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
+       exit ;;
     *:OpenBSD:*:*)
        UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
        echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
@@ -302,7 +321,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
        echo arm-acorn-riscix${UNAME_RELEASE}
        exit ;;
-    arm:riscos:*:*|arm:RISCOS:*:*)
+    arm*:riscos:*:*|arm*:RISCOS:*:*)
        echo arm-unknown-riscos
        exit ;;
     SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
@@ -801,10 +820,13 @@ EOF
     i*:CYGWIN*:*)
        echo ${UNAME_MACHINE}-pc-cygwin
        exit ;;
+    *:MINGW64*:*)
+       echo ${UNAME_MACHINE}-pc-mingw64
+       exit ;;
     *:MINGW*:*)
        echo ${UNAME_MACHINE}-pc-mingw32
        exit ;;
-    i*:MSYS*:*)
+    *:MSYS*:*)
        echo ${UNAME_MACHINE}-pc-msys
        exit ;;
     i*:windows32*:*)
@@ -852,21 +874,21 @@ EOF
        exit ;;
     *:GNU:*:*)
        # the GNU system
-       echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+       echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
        exit ;;
     *:GNU/*:*:*)
        # other systems with GNU libc and userland
-       echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+       echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
        exit ;;
     i*86:Minix:*:*)
        echo ${UNAME_MACHINE}-pc-minix
        exit ;;
     aarch64:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     aarch64_be:Linux:*:*)
        UNAME_MACHINE=aarch64_be
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     alpha:Linux:*:*)
        case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
@@ -879,59 +901,54 @@ EOF
          EV68*) UNAME_MACHINE=alphaev68 ;;
        esac
        objdump --private-headers /bin/sh | grep -q ld.so.1
-       if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
-       echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+       if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+       exit ;;
+    arc:Linux:*:* | arceb:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     arm*:Linux:*:*)
        eval $set_cc_for_build
        if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
            | grep -q __ARM_EABI__
        then
-           echo ${UNAME_MACHINE}-unknown-linux-gnu
+           echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        else
            if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
                | grep -q __ARM_PCS_VFP
            then
-               echo ${UNAME_MACHINE}-unknown-linux-gnueabi
+               echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
            else
-               echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
+               echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
            fi
        fi
        exit ;;
     avr32*:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     cris:Linux:*:*)
-       echo ${UNAME_MACHINE}-axis-linux-gnu
+       echo ${UNAME_MACHINE}-axis-linux-${LIBC}
        exit ;;
     crisv32:Linux:*:*)
-       echo ${UNAME_MACHINE}-axis-linux-gnu
+       echo ${UNAME_MACHINE}-axis-linux-${LIBC}
        exit ;;
     frv:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     hexagon:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     i*86:Linux:*:*)
-       LIBC=gnu
-       eval $set_cc_for_build
-       sed 's/^        //' << EOF >$dummy.c
-       #ifdef __dietlibc__
-       LIBC=dietlibc
-       #endif
-EOF
-       eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
-       echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
+       echo ${UNAME_MACHINE}-pc-linux-${LIBC}
        exit ;;
     ia64:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     m32r*:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     m68*:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     mips:Linux:*:* | mips64:Linux:*:*)
        eval $set_cc_for_build
@@ -950,54 +967,63 @@ EOF
        #endif
 EOF
        eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
-       test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+       test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
        ;;
-    or32:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
+    openrisc*:Linux:*:*)
+       echo or1k-unknown-linux-${LIBC}
+       exit ;;
+    or32:Linux:*:* | or1k*:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     padre:Linux:*:*)
-       echo sparc-unknown-linux-gnu
+       echo sparc-unknown-linux-${LIBC}
        exit ;;
     parisc64:Linux:*:* | hppa64:Linux:*:*)
-       echo hppa64-unknown-linux-gnu
+       echo hppa64-unknown-linux-${LIBC}
        exit ;;
     parisc:Linux:*:* | hppa:Linux:*:*)
        # Look for CPU level
        case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
-         PA7*) echo hppa1.1-unknown-linux-gnu ;;
-         PA8*) echo hppa2.0-unknown-linux-gnu ;;
-         *)    echo hppa-unknown-linux-gnu ;;
+         PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
+         PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
+         *)    echo hppa-unknown-linux-${LIBC} ;;
        esac
        exit ;;
     ppc64:Linux:*:*)
-       echo powerpc64-unknown-linux-gnu
+       echo powerpc64-unknown-linux-${LIBC}
        exit ;;
     ppc:Linux:*:*)
-       echo powerpc-unknown-linux-gnu
+       echo powerpc-unknown-linux-${LIBC}
+       exit ;;
+    ppc64le:Linux:*:*)
+       echo powerpc64le-unknown-linux-${LIBC}
+       exit ;;
+    ppcle:Linux:*:*)
+       echo powerpcle-unknown-linux-${LIBC}
        exit ;;
     s390:Linux:*:* | s390x:Linux:*:*)
-       echo ${UNAME_MACHINE}-ibm-linux
+       echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
        exit ;;
     sh64*:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     sh*:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     sparc:Linux:*:* | sparc64:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     tile*:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     vax:Linux:*:*)
-       echo ${UNAME_MACHINE}-dec-linux-gnu
+       echo ${UNAME_MACHINE}-dec-linux-${LIBC}
        exit ;;
     x86_64:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     xtensa*:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
        exit ;;
     i*86:DYNIX/ptx:4*:*)
        # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
@@ -1201,6 +1227,9 @@ EOF
     BePC:Haiku:*:*)    # Haiku running on Intel PC compatible.
        echo i586-pc-haiku
        exit ;;
+    x86_64:Haiku:*:*)
+       echo x86_64-unknown-haiku
+       exit ;;
     SX-4:SUPER-UX:*:*)
        echo sx4-nec-superux${UNAME_RELEASE}
        exit ;;
@@ -1227,19 +1256,31 @@ EOF
        exit ;;
     *:Darwin:*:*)
        UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-       case $UNAME_PROCESSOR in
-           i386)
-               eval $set_cc_for_build
-               if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
-                 if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
-                     (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
-                     grep IS_64BIT_ARCH >/dev/null
-                 then
-                     UNAME_PROCESSOR="x86_64"
-                 fi
-               fi ;;
-           unknown) UNAME_PROCESSOR=powerpc ;;
-       esac
+       eval $set_cc_for_build
+       if test "$UNAME_PROCESSOR" = unknown ; then
+           UNAME_PROCESSOR=powerpc
+       fi
+       if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
+           if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+               if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+                   (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+                   grep IS_64BIT_ARCH >/dev/null
+               then
+                   case $UNAME_PROCESSOR in
+                       i386) UNAME_PROCESSOR=x86_64 ;;
+                       powerpc) UNAME_PROCESSOR=powerpc64 ;;
+                   esac
+               fi
+           fi
+       elif test "$UNAME_PROCESSOR" = i386 ; then
+           # Avoid executing cc on OS X 10.9, as it ships with a stub
+           # that puts up a graphical alert prompting to install
+           # developer tools.  Any system running Mac OS X 10.7 or
+           # later (Darwin 11 and later) is required to have a 64-bit
+           # processor. This is not true of the ARM version of Darwin
+           # that Apple uses in portable devices.
+           UNAME_PROCESSOR=x86_64
+       fi
        echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
        exit ;;
     *:procnto*:*:* | *:QNX:[0123456789]*:*)
@@ -1330,157 +1371,6 @@ EOF
        exit ;;
 esac
 
-#echo '(No uname command or uname output not recognized.)' 1>&2
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
-  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
-     I don't know....  */
-  printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
-  printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
-       "4"
-#else
-       ""
-#endif
-       ); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
-  printf ("arm-acorn-riscix\n"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
-  printf ("m68k-hp-bsd\n"); exit (0);
-#endif
-
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
-  int version;
-  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
-  if (version < 4)
-    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
-  else
-    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
-  exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
-  printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
-  printf ("ns32k-encore-mach\n"); exit (0);
-#else
-  printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
-  printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
-  printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
-  printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
-    struct utsname un;
-
-    uname(&un);
-
-    if (strncmp(un.version, "V2", 2) == 0) {
-       printf ("i386-sequent-ptx2\n"); exit (0);
-    }
-    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
-       printf ("i386-sequent-ptx1\n"); exit (0);
-    }
-    printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-#  include <sys/param.h>
-#  if defined (BSD)
-#   if BSD == 43
-      printf ("vax-dec-bsd4.3\n"); exit (0);
-#   else
-#    if BSD == 199006
-      printf ("vax-dec-bsd4.3reno\n"); exit (0);
-#    else
-      printf ("vax-dec-bsd\n"); exit (0);
-#    endif
-#   endif
-#  else
-    printf ("vax-dec-bsd\n"); exit (0);
-#  endif
-# else
-    printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
-  printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
-  exit (1);
-}
-EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
-       { echo "$SYSTEM_NAME"; exit; }
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
-    case `getsysinfo -f cpu_type` in
-    c1*)
-       echo c1-convex-bsd
-       exit ;;
-    c2*)
-       if getsysinfo -f scalar_acc
-       then echo c32-convex-bsd
-       else echo c2-convex-bsd
-       fi
-       exit ;;
-    c34*)
-       echo c34-convex-bsd
-       exit ;;
-    c38*)
-       echo c38-convex-bsd
-       exit ;;
-    c4*)
-       echo c4-convex-bsd
-       exit ;;
-    esac
-fi
-
 cat >&2 <<EOF
 $0: unable to guess system type
 
index 3e7e668..f05c09b 100644 (file)
@@ -6,6 +6,9 @@
 /* The normal alignment of `double', in bytes. */
 #undef ALIGNOF_DOUBLE
 
+/* The normal alignment of `void *', in bytes. */
+#undef ALIGNOF_VOID_P
+
 /* Use libxml2 instead of Expat */
 #undef ENABLE_LIBXML2
 
@@ -27,9 +30,6 @@
    MSVC and with C++ compilers. */
 #undef FLEXIBLE_ARRAY_MEMBER
 
-/* Define to 1 if you have the `chsize' function. */
-#undef HAVE_CHSIZE
-
 /* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
    */
 #undef HAVE_DIRENT_H
@@ -49,9 +49,6 @@
 /* Define to 1 if you have the `fstatvfs' function. */
 #undef HAVE_FSTATVFS
 
-/* Define to 1 if you have the `ftruncate' function. */
-#undef HAVE_FTRUNCATE
-
 /* FT_Bitmap_Size structure includes y_ppem field */
 #undef HAVE_FT_BITMAP_SIZE_Y_PPEM
 
@@ -73,8 +70,8 @@
 /* Define to 1 if you have the `FT_Select_Size' function. */
 #undef HAVE_FT_SELECT_SIZE
 
-/* Define to 1 if you have the `geteuid' function. */
-#undef HAVE_GETEUID
+/* Define to 1 if you have the `getexecname' function. */
+#undef HAVE_GETEXECNAME
 
 /* Define to 1 if you have the `getopt' function. */
 #undef HAVE_GETOPT
@@ -85,8 +82,8 @@
 /* Define to 1 if you have the `getpagesize' function. */
 #undef HAVE_GETPAGESIZE
 
-/* Define to 1 if you have the `getuid' function. */
-#undef HAVE_GETUID
+/* Define to 1 if you have the `getprogname' function. */
+#undef HAVE_GETPROGNAME
 
 /* Have Intel __sync_* atomic primitives */
 #undef HAVE_INTEL_ATOMIC_PRIMITIVES
 /* Define to 1 if you have the `lstat' function. */
 #undef HAVE_LSTAT
 
-/* Define to 1 if you have the `memmove' function. */
-#undef HAVE_MEMMOVE
-
 /* Define to 1 if you have the <memory.h> header file. */
 #undef HAVE_MEMORY_H
 
-/* Define to 1 if you have the `memset' function. */
-#undef HAVE_MEMSET
+/* Define to 1 if you have the `mkdtemp' function. */
+#undef HAVE_MKDTEMP
 
 /* Define to 1 if you have the `mkostemp' function. */
 #undef HAVE_MKOSTEMP
 /* Define to 1 if you have the `rand_r' function. */
 #undef HAVE_RAND_R
 
-/* Define to 1 if you have the `regcomp' function. */
-#undef HAVE_REGCOMP
-
-/* Define to 1 if you have the `regerror' function. */
-#undef HAVE_REGERROR
-
-/* Define to 1 if you have the `regexec' function. */
-#undef HAVE_REGEXEC
-
-/* Define to 1 if you have the <regex.h> header file. */
-#undef HAVE_REGEX_H
-
-/* Define to 1 if you have the `regfree' function. */
-#undef HAVE_REGFREE
+/* Define to 1 if you have the `readlink' function. */
+#undef HAVE_READLINK
 
 /* Define to 1 if you have the <sched.h> header file. */
 #undef HAVE_SCHED_H
 /* Define to 1 if you have the <stdlib.h> header file. */
 #undef HAVE_STDLIB_H
 
-/* Define to 1 if you have the `strchr' function. */
-#undef HAVE_STRCHR
-
 /* Define to 1 if you have the <strings.h> header file. */
 #undef HAVE_STRINGS_H
 
 /* Define to 1 if you have the <string.h> header file. */
 #undef HAVE_STRING_H
 
-/* Define to 1 if you have the `strrchr' function. */
-#undef HAVE_STRRCHR
-
-/* Define to 1 if you have the `strtol' function. */
-#undef HAVE_STRTOL
-
 /* Define to 1 if `d_type' is a member of `struct dirent'. */
 #undef HAVE_STRUCT_DIRENT_D_TYPE
 
 /* Define to 1 if `f_fstypename' is a member of `struct statvfs'. */
 #undef HAVE_STRUCT_STATVFS_F_FSTYPENAME
 
-/* Define to 1 if you have the `sysconf' function. */
-#undef HAVE_SYSCONF
-
 /* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
    */
 #undef HAVE_SYS_DIR_H
 /* Define to 1 if you have the <sys/statfs.h> header file. */
 #undef HAVE_SYS_STATFS_H
 
+/* Define to 1 if you have the <sys/statvfs.h> header file. */
+#undef HAVE_SYS_STATVFS_H
+
 /* Define to 1 if you have the <sys/stat.h> header file. */
 #undef HAVE_SYS_STAT_H
 
 /* Define to 1 if you have the <sys/vfs.h> header file. */
 #undef HAVE_SYS_VFS_H
 
+/* Define to 1 if `usLowerOpticalPointSize' is a member of `TT_OS2'. */
+#undef HAVE_TT_OS2_USLOWEROPTICALPOINTSIZE
+
+/* Define to 1 if `usUpperOpticalPointSize' is a member of `TT_OS2'. */
+#undef HAVE_TT_OS2_USUPPEROPTICALPOINTSIZE
+
 /* Define to 1 if you have the <unistd.h> header file. */
 #undef HAVE_UNISTD_H
 
 /* Use iconv. */
 #undef USE_ICONV
 
-/* Use regex */
-#undef USE_REGEX
-
 /* Enable extensions on AIX 3, Interix.  */
 #ifndef _ALL_SOURCE
 # undef _ALL_SOURCE
index 6205f84..66c5074 100755 (executable)
@@ -1,24 +1,18 @@
 #! /bin/sh
 # Configuration validation subroutine script.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
-#   2011, 2012 Free Software Foundation, Inc.
+#   Copyright 1992-2014 Free Software Foundation, Inc.
 
-timestamp='2012-04-18'
+timestamp='2014-07-28'
 
-# This file is (in principle) common to ALL GNU software.
-# The presence of a machine in this file suggests that SOME GNU software
-# can handle that machine.  It does not imply ALL GNU software can.
-#
-# This file is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# This file is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
 # (at your option) any later version.
 #
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, see <http://www.gnu.org/licenses/>.
@@ -26,11 +20,12 @@ timestamp='2012-04-18'
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
 # configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
+# the same distribution terms that you use for the rest of that
+# program.  This Exception is an additional permission under section 7
+# of the GNU General Public License, version 3 ("GPLv3").
 
 
-# Please send patches to <config-patches@gnu.org>.  Submit a context
-# diff and a properly formatted GNU ChangeLog entry.
+# Please send patches with a ChangeLog entry to config-patches@gnu.org.
 #
 # Configuration subroutine to validate and canonicalize a configuration type.
 # Supply the specified configuration type as an argument.
@@ -73,9 +68,7 @@ Report bugs and patches to <config-patches@gnu.org>."
 version="\
 GNU config.sub ($timestamp)
 
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
-Free Software Foundation, Inc.
+Copyright 1992-2014 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -123,7 +116,7 @@ esac
 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
 case $maybe_os in
   nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
-  linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
+  linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
   knetbsd*-gnu* | netbsd*-gnu* | \
   kopensolaris*-gnu* | \
   storm-chaos* | os2-emx* | rtmk-nova*)
@@ -156,7 +149,7 @@ case $os in
        -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
        -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
        -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-       -apple | -axis | -knuth | -cray | -microblaze)
+       -apple | -axis | -knuth | -cray | -microblaze*)
                os=
                basic_machine=$1
                ;;
@@ -259,10 +252,12 @@ case $basic_machine in
        | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
        | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
        | am33_2.0 \
-       | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
-        | be32 | be64 \
+       | arc | arceb \
+       | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
+       | avr | avr32 \
+       | be32 | be64 \
        | bfin \
-       | c4x | clipper \
+       | c4x | c8051 | clipper \
        | d10v | d30v | dlx | dsp16xx \
        | epiphany \
        | fido | fr30 | frv \
@@ -270,10 +265,11 @@ case $basic_machine in
        | hexagon \
        | i370 | i860 | i960 | ia64 \
        | ip2k | iq2000 \
+       | k1om \
        | le32 | le64 \
        | lm32 \
        | m32c | m32r | m32rle | m68000 | m68k | m88k \
-       | maxq | mb | microblaze | mcore | mep | metag \
+       | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
        | mips | mipsbe | mipseb | mipsel | mipsle \
        | mips16 \
        | mips64 | mips64el \
@@ -287,20 +283,22 @@ case $basic_machine in
        | mips64vr5900 | mips64vr5900el \
        | mipsisa32 | mipsisa32el \
        | mipsisa32r2 | mipsisa32r2el \
+       | mipsisa32r6 | mipsisa32r6el \
        | mipsisa64 | mipsisa64el \
        | mipsisa64r2 | mipsisa64r2el \
+       | mipsisa64r6 | mipsisa64r6el \
        | mipsisa64sb1 | mipsisa64sb1el \
        | mipsisa64sr71k | mipsisa64sr71kel \
+       | mipsr5900 | mipsr5900el \
        | mipstx39 | mipstx39el \
        | mn10200 | mn10300 \
        | moxie \
        | mt \
        | msp430 \
        | nds32 | nds32le | nds32be \
-       | nios | nios2 \
+       | nios | nios2 | nios2eb | nios2el \
        | ns16k | ns32k \
-       | open8 \
-       | or32 \
+       | open8 | or1k | or1knd | or32 \
        | pdp10 | pdp11 | pj | pjl \
        | powerpc | powerpc64 | powerpc64le | powerpcle \
        | pyramid \
@@ -328,7 +326,7 @@ case $basic_machine in
        c6x)
                basic_machine=tic6x-unknown
                ;;
-       m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
+       m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
                basic_machine=$basic_machine-unknown
                os=-none
                ;;
@@ -370,13 +368,13 @@ case $basic_machine in
        | aarch64-* | aarch64_be-* \
        | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
        | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
-       | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
+       | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
        | arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
        | avr-* | avr32-* \
        | be32-* | be64-* \
        | bfin-* | bs2000-* \
        | c[123]* | c30-* | [cjt]90-* | c4x-* \
-       | clipper-* | craynv-* | cydra-* \
+       | c8051-* | clipper-* | craynv-* | cydra-* \
        | d10v-* | d30v-* | dlx-* \
        | elxsi-* \
        | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
@@ -385,11 +383,13 @@ case $basic_machine in
        | hexagon-* \
        | i*86-* | i860-* | i960-* | ia64-* \
        | ip2k-* | iq2000-* \
+       | k1om-* \
        | le32-* | le64-* \
        | lm32-* \
        | m32c-* | m32r-* | m32rle-* \
        | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-       | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
+       | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
+       | microblaze-* | microblazeel-* \
        | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
        | mips16-* \
        | mips64-* | mips64el-* \
@@ -403,18 +403,22 @@ case $basic_machine in
        | mips64vr5900-* | mips64vr5900el-* \
        | mipsisa32-* | mipsisa32el-* \
        | mipsisa32r2-* | mipsisa32r2el-* \
+       | mipsisa32r6-* | mipsisa32r6el-* \
        | mipsisa64-* | mipsisa64el-* \
        | mipsisa64r2-* | mipsisa64r2el-* \
+       | mipsisa64r6-* | mipsisa64r6el-* \
        | mipsisa64sb1-* | mipsisa64sb1el-* \
        | mipsisa64sr71k-* | mipsisa64sr71kel-* \
+       | mipsr5900-* | mipsr5900el-* \
        | mipstx39-* | mipstx39el-* \
        | mmix-* \
        | mt-* \
        | msp430-* \
        | nds32-* | nds32le-* | nds32be-* \
-       | nios-* | nios2-* \
+       | nios-* | nios2-* | nios2eb-* | nios2el-* \
        | none-* | np1-* | ns16k-* | ns32k-* \
        | open8-* \
+       | or1k*-* \
        | orion-* \
        | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
        | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
@@ -788,11 +792,15 @@ case $basic_machine in
                basic_machine=ns32k-utek
                os=-sysv
                ;;
-       microblaze)
+       microblaze*)
                basic_machine=microblaze-xilinx
                ;;
+       mingw64)
+               basic_machine=x86_64-pc
+               os=-mingw64
+               ;;
        mingw32)
-               basic_machine=i386-pc
+               basic_machine=i686-pc
                os=-mingw32
                ;;
        mingw32ce)
@@ -820,6 +828,10 @@ case $basic_machine in
                basic_machine=powerpc-unknown
                os=-morphos
                ;;
+       moxiebox)
+               basic_machine=moxie-unknown
+               os=-moxiebox
+               ;;
        msdos)
                basic_machine=i386-pc
                os=-msdos
@@ -828,7 +840,7 @@ case $basic_machine in
                basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
                ;;
        msys)
-               basic_machine=i386-pc
+               basic_machine=i686-pc
                os=-msys
                ;;
        mvs)
@@ -1004,7 +1016,7 @@ case $basic_machine in
                ;;
        ppc64)  basic_machine=powerpc64-unknown
                ;;
-       ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
+       ppc64-* | ppc64p7-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
                ;;
        ppc64le | powerpc64little | ppc64-le | powerpc64-little)
                basic_machine=powerpc64le-unknown
@@ -1019,7 +1031,11 @@ case $basic_machine in
                basic_machine=i586-unknown
                os=-pw32
                ;;
-       rdos)
+       rdos | rdos64)
+               basic_machine=x86_64-pc
+               os=-rdos
+               ;;
+       rdos32)
                basic_machine=i386-pc
                os=-rdos
                ;;
@@ -1346,29 +1362,29 @@ case $os in
        -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
              | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
              | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
-             | -sym* | -kopensolaris* \
+             | -sym* | -kopensolaris* | -plan9* \
              | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
              | -aos* | -aros* \
              | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
              | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
              | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
-             | -openbsd* | -solidbsd* \
+             | -bitrig* | -openbsd* | -solidbsd* \
              | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
              | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
              | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
              | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
              | -chorusos* | -chorusrdb* | -cegcc* \
              | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-             | -mingw32* | -linux-gnu* | -linux-android* \
-             | -linux-newlib* | -linux-uclibc* \
-             | -uxpv* | -beos* | -mpeix* | -udk* \
+             | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
+             | -linux-newlib* | -linux-musl* | -linux-uclibc* \
+             | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
              | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
              | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
              | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
              | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
              | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
              | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-             | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
+             | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*)
        # Remember, each alternative MUST END IN *, to match a version number.
                ;;
        -qnx*)
@@ -1492,9 +1508,6 @@ case $os in
        -aros*)
                os=-aros
                ;;
-       -kaos*)
-               os=-kaos
-               ;;
        -zvmoe)
                os=-zvmoe
                ;;
@@ -1543,6 +1556,9 @@ case $basic_machine in
        c4x-* | tic4x-*)
                os=-coff
                ;;
+       c8051-*)
+               os=-elf
+               ;;
        hexagon-*)
                os=-elf
                ;;
index cc5da94..775eb80 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,6 +1,8 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69.
+# Generated by GNU Autoconf 2.69 for fontconfig 2.11.93.
+#
+# Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig>.
 #
 #
 # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -272,10 +274,12 @@ fi
     $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
     $as_echo "$0: be upgraded to zsh 4.3.4 or later."
   else
-    $as_echo "$0: Please tell bug-autoconf@gnu.org about your system,
-$0: including any error possibly output before this
-$0: message. Then install a modern shell, or manually run
-$0: the script under such a shell if you do have one."
+    $as_echo "$0: Please tell bug-autoconf@gnu.org and
+$0: https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig
+$0: about your system, including any error possibly output
+$0: before this message. Then install a modern shell, or
+$0: manually run the script under such a shell if you do
+$0: have one."
   fi
   exit 1
 fi
@@ -585,14 +589,13 @@ MFLAGS=
 MAKEFLAGS=
 
 # Identity of this package.
-PACKAGE_NAME=
-PACKAGE_TARNAME=
-PACKAGE_VERSION=
-PACKAGE_STRING=
-PACKAGE_BUGREPORT=
-PACKAGE_URL=
-
-ac_unique_file="fonts.dtd"
+PACKAGE_NAME='fontconfig'
+PACKAGE_TARNAME='fontconfig'
+PACKAGE_VERSION='2.11.93'
+PACKAGE_STRING='fontconfig 2.11.93'
+PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig'
+PACKAGE_URL=''
+
 # Factoring default headers for most tests.
 ac_includes_default="\
 #include <stdio.h>
@@ -634,6 +637,8 @@ ac_subst_vars='am__EXEEXT_FALSE
 am__EXEEXT_TRUE
 LTLIBOBJS
 LIBOBJS
+PKGCONFIG_REQUIRES_PRIVATELY
+PKGCONFIG_REQUIRES
 DOCMAN3
 ENABLE_DOCS_FALSE
 ENABLE_DOCS_TRUE
@@ -647,13 +652,9 @@ PTHREAD_LIBS
 PTHREAD_CC
 ax_pthread_config
 XMLDIR
-xmldir
 CONFIGDIR
-configdir
 BASECONFIGDIR
-baseconfigdir
 TEMPLATEDIR
-templatedir
 FC_FONTDATE
 FC_CACHEDIR
 fc_cachedir
@@ -681,10 +682,10 @@ MS_LIB_AVAILABLE_TRUE
 ms_librarian
 OS_WIN32_FALSE
 OS_WIN32_TRUE
-RM
-PKG_CONFIG_LIBDIR
-PKG_CONFIG_PATH
-PKG_CONFIG
+LIBT_CURRENT_MINUS_AGE
+LIBT_VERSION_INFO
+LIBT_REVISION
+LIBT_CURRENT
 OTOOL64
 OTOOL
 LIPO
@@ -700,10 +701,6 @@ DUMPBIN
 LD
 FGREP
 SED
-LIBTOOL
-OBJDUMP
-DLLTOOL
-AS
 host_os
 host_vendor
 host_cpu
@@ -712,6 +709,26 @@ build_os
 build_vendor
 build_cpu
 build
+LIBTOOL
+OBJDUMP
+DLLTOOL
+AS
+RM
+pkgpyexecdir
+pyexecdir
+pkgpythondir
+pythondir
+PYTHON_PLATFORM
+PYTHON_EXEC_PREFIX
+PYTHON_PREFIX
+PYTHON_VERSION
+PYTHON
+GPERF
+GIT
+pkgconfigdir
+PKG_CONFIG_LIBDIR
+PKG_CONFIG_PATH
+PKG_CONFIG
 LN_S
 EGREP
 GREP
@@ -733,10 +750,6 @@ CPPFLAGS
 LDFLAGS
 CFLAGS
 CC
-LIBT_CURRENT_MINUS_AGE
-LIBT_VERSION_INFO
-LIBT_REVISION
-LIBT_CURRENT
 AM_BACKSLASH
 AM_DEFAULT_VERBOSITY
 AM_DEFAULT_V
@@ -808,8 +821,9 @@ enable_option_checking
 enable_silent_rules
 enable_dependency_tracking
 enable_largefile
-enable_shared
+with_pkgconfigdir
 enable_static
+enable_shared
 with_pic
 enable_fast_install
 with_gnu_ld
@@ -845,6 +859,7 @@ CPP
 PKG_CONFIG
 PKG_CONFIG_PATH
 PKG_CONFIG_LIBDIR
+PYTHON
 CC_FOR_BUILD
 FREETYPE_CFLAGS
 FREETYPE_LIBS
@@ -892,7 +907,7 @@ sharedstatedir='${prefix}/com'
 localstatedir='${prefix}/var'
 includedir='${prefix}/include'
 oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE}'
+docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
 infodir='${datarootdir}/info'
 htmldir='${docdir}'
 dvidir='${docdir}'
@@ -1392,7 +1407,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures this package to adapt to many kinds of systems.
+\`configure' configures fontconfig 2.11.93 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1440,7 +1455,7 @@ Fine tuning of the installation directories:
   --infodir=DIR           info documentation [DATAROOTDIR/info]
   --localedir=DIR         locale-dependent data [DATAROOTDIR/locale]
   --mandir=DIR            man documentation [DATAROOTDIR/man]
-  --docdir=DIR            documentation root [DATAROOTDIR/doc/PACKAGE]
+  --docdir=DIR            documentation root [DATAROOTDIR/doc/fontconfig]
   --htmldir=DIR           html documentation [DOCDIR]
   --dvidir=DIR            dvi documentation [DOCDIR]
   --pdfdir=DIR            pdf documentation [DOCDIR]
@@ -1461,7 +1476,9 @@ _ACEOF
 fi
 
 if test -n "$ac_init_help"; then
-
+  case $ac_init_help in
+     short | recursive ) echo "Configuration of fontconfig 2.11.93:";;
+   esac
   cat <<\_ACEOF
 
 Optional Features:
@@ -1475,8 +1492,8 @@ Optional Features:
   --disable-dependency-tracking
                           speeds up one-time build
   --disable-largefile     omit support for large files
+  --enable-static[=PKGS]  build static libraries [default=no]
   --enable-shared[=PKGS]  build shared libraries [default=yes]
-  --enable-static[=PKGS]  build static libraries [default=yes]
   --enable-fast-install[=PKGS]
                           optimize for fast installation [default=yes]
   --disable-libtool-lock  avoid locking (might break parallel builds)
@@ -1487,6 +1504,8 @@ Optional Features:
 Optional Packages:
   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
   --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
+  --with-pkgconfigdir     pkg-config installation directory
+                          ['${libdir}/pkgconfig']
   --with-pic[=PKGS]       try to use only PIC/non-PIC objects [default=use
                           both]
   --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
@@ -1531,6 +1550,7 @@ Some influential environment variables:
               directories to add to pkg-config's search path
   PKG_CONFIG_LIBDIR
               path overriding pkg-config's built-in search path
+  PYTHON      the Python interpreter
   CC_FOR_BUILD
               build system C compiler
   FREETYPE_CFLAGS
@@ -1548,7 +1568,7 @@ Some influential environment variables:
 Use these variables to override the choices made by `configure' or to help
 it to find libraries and programs with nonstandard names/locations.
 
-Report bugs to the package provider.
+Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig>.
 _ACEOF
 ac_status=$?
 fi
@@ -1611,7 +1631,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-configure
+fontconfig configure 2.11.93
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1770,6 +1790,10 @@ $as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
 $as_echo "$as_me: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&2;}
     { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
+( $as_echo "## ---------------------------------------------------------------------------- ##
+## Report this to https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig ##
+## ---------------------------------------------------------------------------- ##"
+     ) | sed "s/^/$as_me: WARNING:     /" >&2
     ;;
 esac
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
@@ -1973,6 +1997,52 @@ $as_echo "$ac_res" >&6; }
 
 } # ac_fn_c_check_func
 
+# ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES
+# ---------------------------------------------
+# Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
+# accordingly.
+ac_fn_c_check_decl ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  as_decl_name=`echo $2|sed 's/ *(.*//'`
+  as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
+$as_echo_n "checking whether $as_decl_name is declared... " >&6; }
+if eval \${$3+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+int
+main ()
+{
+#ifndef $as_decl_name
+#ifdef __cplusplus
+  (void) $as_decl_use;
+#else
+  (void) $as_decl_name;
+#endif
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  eval "$3=yes"
+else
+  eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_decl
+
 # ac_fn_c_check_type LINENO TYPE VAR INCLUDES
 # -------------------------------------------
 # Tests whether TYPE exists after having included INCLUDES, setting cache
@@ -2270,7 +2340,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by $as_me, which was
+It was created by fontconfig $as_me 2.11.93, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2621,9 +2691,7 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 
-
-
-am__api_version='1.12'
+am__api_version='1.14'
 
 ac_aux_dir=
 for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
@@ -2836,8 +2904,8 @@ if test x"${MISSING+set}" != xset; then
   esac
 fi
 # Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
-  am_missing_run="$MISSING --run "
+if eval "$MISSING --is-lightweight"; then
+  am_missing_run="$MISSING "
 else
   am_missing_run=
   { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
@@ -3077,6 +3145,45 @@ else
 fi
 rmdir .tst 2>/dev/null
 
+# Check whether --enable-silent-rules was given.
+if test "${enable_silent_rules+set}" = set; then :
+  enableval=$enable_silent_rules;
+fi
+
+case $enable_silent_rules in # (((
+  yes) AM_DEFAULT_VERBOSITY=0;;
+   no) AM_DEFAULT_VERBOSITY=1;;
+    *) AM_DEFAULT_VERBOSITY=1;;
+esac
+am_make=${MAKE-make}
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
+$as_echo_n "checking whether $am_make supports nested variables... " >&6; }
+if ${am_cv_make_support_nested_variables+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if $as_echo 'TRUE=$(BAR$(V))
+BAR0=false
+BAR1=true
+V=1
+am__doit:
+       @$(TRUE)
+.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then
+  am_cv_make_support_nested_variables=yes
+else
+  am_cv_make_support_nested_variables=no
+fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
+$as_echo "$am_cv_make_support_nested_variables" >&6; }
+if test $am_cv_make_support_nested_variables = yes; then
+    AM_V='$(V)'
+  AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
+else
+  AM_V=$AM_DEFAULT_VERBOSITY
+  AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
+fi
+AM_BACKSLASH='\'
+
 if test "`cd $srcdir && pwd`" != "`pwd`"; then
   # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
   # is not polluted with repeated "-I."
@@ -3098,9 +3205,8 @@ fi
 
 
 # Define the identity of the package.
-
- PACKAGE=fontconfig
- VERSION=2.10.91
+ PACKAGE='fontconfig'
+ VERSION='2.11.93'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -3140,12 +3246,58 @@ mkdir_p='$(MKDIR_P)'
 # in the wild :-(  We should find a proper way to deprecate it ...
 AMTAR='$${TAR-tar}'
 
+
+# We'll loop over all known methods to create a tar archive until one works.
+_am_tools='gnutar  pax cpio none'
+
 am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
 
 
 
 
 
+
+# POSIX will say in a future version that running "rm -f" with no argument
+# is OK; and we want to be able to make that assumption in our Makefile
+# recipes.  So use an aggressive probe to check that the usage we want is
+# actually supported "in the wild" to an acceptable degree.
+# See automake bug#10828.
+# To make any issue more visible, cause the running configure to be aborted
+# by default if the 'rm' program in use doesn't match our expectations; the
+# user can still override this though.
+if rm -f && rm -fr && rm -rf; then : OK; else
+  cat >&2 <<'END'
+Oops!
+
+Your 'rm' program seems unable to run without file operands specified
+on the command line, even when the '-f' option is present.  This is contrary
+to the behaviour of most rm programs out there, and not conforming with
+the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
+
+Please tell bug-automake@gnu.org about your system, including the value
+of your $PATH and any error possibly output before this message.  This
+can help us improve future automake versions.
+
+END
+  if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
+    echo 'Configuration will proceed anyway, since you have set the' >&2
+    echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
+    echo >&2
+  else
+    cat >&2 <<'END'
+Aborting the configuration process, to ensure you take notice of the issue.
+
+You can download and install GNU coreutils to get an 'rm' implementation
+that behaves properly: <http://www.gnu.org/software/coreutils/>.
+
+If you want to complete the configuration process using your problematic
+'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
+to "yes", and re-run configure.
+
+END
+    as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5
+  fi
+fi
 # Check whether --enable-silent-rules was given.
 if test "${enable_silent_rules+set}" = set; then :
   enableval=$enable_silent_rules;
@@ -3187,19 +3339,6 @@ AM_BACKSLASH='\'
 
 
 
-LIBT_CURRENT=7
-LIBT_REVISION=2
-
-
-LIBT_AGE=6
-
-LIBT_VERSION_INFO="$LIBT_CURRENT:$LIBT_REVISION:$LIBT_AGE"
-
-
-LIBT_CURRENT_MINUS_AGE=`expr $LIBT_CURRENT - $LIBT_AGE`
-
-
-
 ac_config_headers="$ac_config_headers config.h"
 
 
@@ -3992,6 +4131,65 @@ ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
+$as_echo_n "checking whether $CC understands -c and -o together... " >&6; }
+if ${am_cv_prog_cc_c_o+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+  # Make sure it works both with $CC and with simple cc.
+  # Following AC_PROG_CC_C_O, we do the test twice because some
+  # compilers refuse to overwrite an existing .o file with -o,
+  # though they will create one.
+  am_cv_prog_cc_c_o=yes
+  for am_i in 1 2; do
+    if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5
+   ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5
+   ac_status=$?
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } \
+         && test -f conftest2.$ac_objext; then
+      : OK
+    else
+      am_cv_prog_cc_c_o=no
+      break
+    fi
+  done
+  rm -f core conftest*
+  unset am_i
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
+$as_echo "$am_cv_prog_cc_c_o" >&6; }
+if test "$am_cv_prog_cc_c_o" != yes; then
+   # Losing compiler, so override with the script.
+   # FIXME: It is wrong to rewrite CC.
+   # But if we don't then we get into trouble of one sort or another.
+   # A longer-term fix would be to have automake use am__CC in this case,
+   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
+   CC="$am_aux_dir/compile $CC"
+fi
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
 DEPDIR="${am__leading_dot}deps"
 
 ac_config_commands="$ac_config_commands depfiles"
@@ -4855,100 +5053,66 @@ else
 $as_echo "no, using $LN_S" >&6; }
 fi
 
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
-  as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
-$as_echo_n "checking build system type... " >&6; }
-if ${ac_cv_build+:} false; then :
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
+set x ${MAKE-make}
+ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
+if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  ac_build_alias=$build_alias
-test "x$ac_build_alias" = x &&
-  ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
-test "x$ac_build_alias" = x &&
-  as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
-  as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
-$as_echo "$ac_cv_build" >&6; }
-case $ac_cv_build in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
+  cat >conftest.make <<\_ACEOF
+SHELL = /bin/sh
+all:
+       @echo '@@@%%%=$(MAKE)=@@@%%%'
+_ACEOF
+# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
+case `${MAKE-make} -f conftest.make 2>/dev/null` in
+  *@@@%%%=?*=@@@%%%*)
+    eval ac_cv_prog_make_${ac_make}_set=yes;;
+  *)
+    eval ac_cv_prog_make_${ac_make}_set=no;;
 esac
-build=$ac_cv_build
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_build
-shift
-build_cpu=$1
-build_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-build_os=$*
-IFS=$ac_save_IFS
-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
-$as_echo_n "checking host system type... " >&6; }
-if ${ac_cv_host+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test "x$host_alias" = x; then
-  ac_cv_host=$ac_cv_build
+rm -f conftest.make
+fi
+if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+  SET_MAKE=
 else
-  ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
-    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+  SET_MAKE="MAKE=${MAKE-make}"
 fi
 
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
-$as_echo "$ac_cv_host" >&6; }
-case $ac_cv_host in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
-esac
-host=$ac_cv_host
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_host
-shift
-host_cpu=$1
-host_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-host_os=$*
-IFS=$ac_save_IFS
-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
 
 
-enable_win32_dll=yes
 
-case $host in
-*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
-  if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
-set dummy ${ac_tool_prefix}as; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+
+
+
+
+if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
+       if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
+set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AS+:} false; then :
+if ${ac_cv_path_PKG_CONFIG+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  if test -n "$AS"; then
-  ac_cv_prog_AS="$AS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+  case $PKG_CONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
   if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_prog_AS="${ac_tool_prefix}as"
+    ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
@@ -4956,12 +5120,13 @@ done
   done
 IFS=$as_save_IFS
 
+  ;;
+esac
 fi
-fi
-AS=$ac_cv_prog_AS
-if test -n "$AS"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AS" >&5
-$as_echo "$AS" >&6; }
+PKG_CONFIG=$ac_cv_path_PKG_CONFIG
+if test -n "$PKG_CONFIG"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
+$as_echo "$PKG_CONFIG" >&6; }
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
@@ -4969,26 +5134,28 @@ fi
 
 
 fi
-if test -z "$ac_cv_prog_AS"; then
-  ac_ct_AS=$AS
-  # Extract the first word of "as", so it can be a program name with args.
-set dummy as; ac_word=$2
+if test -z "$ac_cv_path_PKG_CONFIG"; then
+  ac_pt_PKG_CONFIG=$PKG_CONFIG
+  # Extract the first word of "pkg-config", so it can be a program name with args.
+set dummy pkg-config; ac_word=$2
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_AS+:} false; then :
+if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  if test -n "$ac_ct_AS"; then
-  ac_cv_prog_ac_ct_AS="$ac_ct_AS" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+  case $ac_pt_PKG_CONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
   if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_prog_ac_ct_AS="as"
+    ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
@@ -4996,19 +5163,20 @@ done
   done
 IFS=$as_save_IFS
 
+  ;;
+esac
 fi
-fi
-ac_ct_AS=$ac_cv_prog_ac_ct_AS
-if test -n "$ac_ct_AS"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5
-$as_echo "$ac_ct_AS" >&6; }
+ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
+if test -n "$ac_pt_PKG_CONFIG"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5
+$as_echo "$ac_pt_PKG_CONFIG" >&6; }
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
-  if test "x$ac_ct_AS" = x; then
-    AS="false"
+  if test "x$ac_pt_PKG_CONFIG" = x; then
+    PKG_CONFIG=""
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
@@ -5016,31 +5184,78 @@ yes:)
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
-    AS=$ac_ct_AS
+    PKG_CONFIG=$ac_pt_PKG_CONFIG
   fi
 else
-  AS="$ac_cv_prog_AS"
+  PKG_CONFIG="$ac_cv_path_PKG_CONFIG"
 fi
 
-  if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
-set dummy ${ac_tool_prefix}dlltool; ac_word=$2
+fi
+if test -n "$PKG_CONFIG"; then
+       _pkg_min_version=0.9.0
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5
+$as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; }
+       if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
+               { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+       else
+               { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+               PKG_CONFIG=""
+       fi
+fi
+
+
+
+# Check whether --with-pkgconfigdir was given.
+if test "${with_pkgconfigdir+set}" = set; then :
+  withval=$with_pkgconfigdir;
+else
+  with_pkgconfigdir='${libdir}/pkgconfig'
+fi
+
+pkgconfigdir=$with_pkgconfigdir
+
+
+
+
+
+
+GIT=${GIT-"${am_missing_run}git"}
+
+
+GPERF=${GPERF-"${am_missing_run}gperf"}
+
+
+
+
+
+
+
+        # Find any Python interpreter.
+    if test -z "$PYTHON"; then
+      for ac_prog in python python2 python3 python3.3 python3.2 python3.1 python3.0 python2.7  python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0
+do
+  # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DLLTOOL+:} false; then :
+if ${ac_cv_path_PYTHON+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  if test -n "$DLLTOOL"; then
-  ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+  case $PYTHON in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_PYTHON="$PYTHON" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
   if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
+    ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
@@ -5048,82 +5263,192 @@ done
   done
 IFS=$as_save_IFS
 
+  ;;
+esac
 fi
-fi
-DLLTOOL=$ac_cv_prog_DLLTOOL
-if test -n "$DLLTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
-$as_echo "$DLLTOOL" >&6; }
+PYTHON=$ac_cv_path_PYTHON
+if test -n "$PYTHON"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5
+$as_echo "$PYTHON" >&6; }
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
 
+  test -n "$PYTHON" && break
+done
+test -n "$PYTHON" || PYTHON=":"
+
+    fi
+    am_display_PYTHON=python
+
+
+  if test "$PYTHON" = :; then
+      as_fn_error $? "no suitable Python interpreter found" "$LINENO" 5
+  else
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5
+$as_echo_n "checking for $am_display_PYTHON version... " >&6; }
+if ${am_cv_python_version+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[:3])"`
 fi
-if test -z "$ac_cv_prog_DLLTOOL"; then
-  ac_ct_DLLTOOL=$DLLTOOL
-  # Extract the first word of "dlltool", so it can be a program name with args.
-set dummy dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5
+$as_echo "$am_cv_python_version" >&6; }
+  PYTHON_VERSION=$am_cv_python_version
+
+
+
+  PYTHON_PREFIX='${prefix}'
+
+  PYTHON_EXEC_PREFIX='${exec_prefix}'
+
+
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5
+$as_echo_n "checking for $am_display_PYTHON platform... " >&6; }
+if ${am_cv_python_platform+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  if test -n "$ac_ct_DLLTOOL"; then
-  ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
+  am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5
+$as_echo "$am_cv_python_platform" >&6; }
+  PYTHON_PLATFORM=$am_cv_python_platform
+
+
+  # Just factor out some code duplication.
+  am_python_setup_sysconfig="\
+import sys
+# Prefer sysconfig over distutils.sysconfig, for better compatibility
+# with python 3.x.  See automake bug#10227.
+try:
+    import sysconfig
+except ImportError:
+    can_use_sysconfig = 0
+else:
+    can_use_sysconfig = 1
+# Can't use sysconfig in CPython 2.7, since it's broken in virtualenvs:
+# <https://github.com/pypa/virtualenv/issues/118>
+try:
+    from platform import python_implementation
+    if python_implementation() == 'CPython' and sys.version[:3] == '2.7':
+        can_use_sysconfig = 0
+except ImportError:
+    pass"
+
+
+            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory" >&5
+$as_echo_n "checking for $am_display_PYTHON script directory... " >&6; }
+if ${am_cv_python_pythondir+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_prog_ac_ct_DLLTOOL="dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
+  if test "x$prefix" = xNONE
+     then
+       am_py_prefix=$ac_default_prefix
+     else
+       am_py_prefix=$prefix
+     fi
+     am_cv_python_pythondir=`$PYTHON -c "
+$am_python_setup_sysconfig
+if can_use_sysconfig:
+    sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'})
+else:
+    from distutils import sysconfig
+    sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix')
+sys.stdout.write(sitedir)"`
+     case $am_cv_python_pythondir in
+     $am_py_prefix*)
+       am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
+       am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"`
+       ;;
+     *)
+       case $am_py_prefix in
+         /usr|/System*) ;;
+         *)
+         am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages
+         ;;
+       esac
+       ;;
+     esac
 
 fi
-fi
-ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
-if test -n "$ac_ct_DLLTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
-$as_echo "$ac_ct_DLLTOOL" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5
+$as_echo "$am_cv_python_pythondir" >&6; }
+  pythondir=$am_cv_python_pythondir
+
+
+
+  pkgpythondir=\${pythondir}/$PACKAGE
+
+
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory" >&5
+$as_echo_n "checking for $am_display_PYTHON extension module directory... " >&6; }
+if ${am_cv_python_pyexecdir+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  if test "x$exec_prefix" = xNONE
+     then
+       am_py_exec_prefix=$am_py_prefix
+     else
+       am_py_exec_prefix=$exec_prefix
+     fi
+     am_cv_python_pyexecdir=`$PYTHON -c "
+$am_python_setup_sysconfig
+if can_use_sysconfig:
+    sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_prefix'})
+else:
+    from distutils import sysconfig
+    sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_prefix')
+sys.stdout.write(sitedir)"`
+     case $am_cv_python_pyexecdir in
+     $am_py_exec_prefix*)
+       am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
+       am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"`
+       ;;
+     *)
+       case $am_py_exec_prefix in
+         /usr|/System*) ;;
+         *)
+          am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages
+          ;;
+       esac
+       ;;
+     esac
+
 fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5
+$as_echo "$am_cv_python_pyexecdir" >&6; }
+  pyexecdir=$am_cv_python_pyexecdir
+
+
+
+  pkgpyexecdir=\${pyexecdir}/$PACKAGE
+
+
 
-  if test "x$ac_ct_DLLTOOL" = x; then
-    DLLTOOL="false"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    DLLTOOL=$ac_ct_DLLTOOL
   fi
-else
-  DLLTOOL="$ac_cv_prog_DLLTOOL"
-fi
 
-  if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
-set dummy ${ac_tool_prefix}objdump; ac_word=$2
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for RM macro" >&5
+$as_echo_n "checking for RM macro... " >&6; }
+_predefined_rm=`make -p -f /dev/null 2>/dev/null|grep '^RM ='|sed -e 's/^RM = //'`
+if test "x$_predefined_rm" = "x"; then
+       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no predefined RM" >&5
+$as_echo "no predefined RM" >&6; }
+       # Extract the first word of "rm", so it can be a program name with args.
+set dummy rm; ac_word=$2
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OBJDUMP+:} false; then :
+if ${ac_cv_prog_RM+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  if test -n "$OBJDUMP"; then
-  ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
+  if test -n "$RM"; then
+  ac_cv_prog_RM="$RM" # Let the user override the test.
 else
 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
@@ -5132,7 +5457,7 @@ do
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
   if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
+    ac_cv_prog_RM="rm -f"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
@@ -5142,92 +5467,21 @@ IFS=$as_save_IFS
 
 fi
 fi
-OBJDUMP=$ac_cv_prog_OBJDUMP
-if test -n "$OBJDUMP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
-$as_echo "$OBJDUMP" >&6; }
+RM=$ac_cv_prog_RM
+if test -n "$RM"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RM" >&5
+$as_echo "$RM" >&6; }
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
 
-fi
-if test -z "$ac_cv_prog_OBJDUMP"; then
-  ac_ct_OBJDUMP=$OBJDUMP
-  # Extract the first word of "objdump", so it can be a program name with args.
-set dummy objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$ac_ct_OBJDUMP"; then
-  ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
 else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_prog_ac_ct_OBJDUMP="objdump"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
-if test -n "$ac_ct_OBJDUMP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
-$as_echo "$ac_ct_OBJDUMP" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-  if test "x$ac_ct_OBJDUMP" = x; then
-    OBJDUMP="false"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    OBJDUMP=$ac_ct_OBJDUMP
-  fi
-else
-  OBJDUMP="$ac_cv_prog_OBJDUMP"
+       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $_predefined_rm" >&5
+$as_echo "$_predefined_rm" >&6; }
 fi
 
-  ;;
-esac
-
-test -z "$AS" && AS=as
-
-
-
-
-
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-
-
-
-
-
-test -z "$OBJDUMP" && OBJDUMP=objdump
-
-
-
-
-
-
 
 case `pwd` in
   *\ * | *\    *)
@@ -5254,6 +5508,77 @@ macro_revision='1.3337'
 
 ltmain="$ac_aux_dir/ltmain.sh"
 
+# Make sure we can run config.sub.
+$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
+  as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
+$as_echo_n "checking build system type... " >&6; }
+if ${ac_cv_build+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_build_alias=$build_alias
+test "x$ac_build_alias" = x &&
+  ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
+test "x$ac_build_alias" = x &&
+  as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
+ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
+  as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
+$as_echo "$ac_cv_build" >&6; }
+case $ac_cv_build in
+*-*-*) ;;
+*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
+esac
+build=$ac_cv_build
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_build
+shift
+build_cpu=$1
+build_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+build_os=$*
+IFS=$ac_save_IFS
+case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
+$as_echo_n "checking host system type... " >&6; }
+if ${ac_cv_host+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test "x$host_alias" = x; then
+  ac_cv_host=$ac_cv_build
+else
+  ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
+    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
+$as_echo "$ac_cv_host" >&6; }
+case $ac_cv_host in
+*-*-*) ;;
+*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
+esac
+host=$ac_cv_host
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_host
+shift
+host_cpu=$1
+host_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+host_os=$*
+IFS=$ac_save_IFS
+case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
+
+
 # Backslashify metacharacters that are still active within
 # double-quoted strings.
 sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
@@ -7420,7 +7745,7 @@ ia64-*-hpux*)
   rm -rf conftest*
   ;;
 
-x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
+x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
   # Find out which ABI we are using.
   echo 'int i;' > conftest.$ac_ext
@@ -7438,7 +7763,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
          x86_64-*linux*)
            LD="${LD-ld} -m elf_i386"
            ;;
-         ppc64-*linux*|powerpc64-*linux*)
+         powerpc64le-*linux*)
+           LD="${LD-ld} -m elf32lppclinux"
+           ;;
+         powerpc64-*linux*)
            LD="${LD-ld} -m elf32ppclinux"
            ;;
          s390x-*linux*)
@@ -7457,7 +7785,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
          x86_64-*linux*)
            LD="${LD-ld} -m elf_x86_64"
            ;;
-         ppc*-*linux*|powerpc*-*linux*)
+         powerpcle-*linux*)
+           LD="${LD-ld} -m elf64lppc"
+           ;;
+         powerpc-*linux*)
            LD="${LD-ld} -m elf64ppc"
            ;;
          s390*-*linux*|s390*-*tpf*)
@@ -7941,31 +8272,430 @@ else
 $as_echo "no" >&6; }
 fi
 
-  if test "x$ac_ct_LIPO" = x; then
-    LIPO=":"
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    LIPO=$ac_ct_LIPO
-  fi
+  if test "x$ac_ct_LIPO" = x; then
+    LIPO=":"
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    LIPO=$ac_ct_LIPO
+  fi
+else
+  LIPO="$ac_cv_prog_LIPO"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_OTOOL+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test -n "$OTOOL"; then
+  ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+OTOOL=$ac_cv_prog_OTOOL
+if test -n "$OTOOL"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
+$as_echo "$OTOOL" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_OTOOL"; then
+  ac_ct_OTOOL=$OTOOL
+  # Extract the first word of "otool", so it can be a program name with args.
+set dummy otool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_ac_ct_OTOOL+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test -n "$ac_ct_OTOOL"; then
+  ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OTOOL="otool"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
+if test -n "$ac_ct_OTOOL"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
+$as_echo "$ac_ct_OTOOL" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+  if test "x$ac_ct_OTOOL" = x; then
+    OTOOL=":"
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    OTOOL=$ac_ct_OTOOL
+  fi
+else
+  OTOOL="$ac_cv_prog_OTOOL"
+fi
+
+    if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
+set dummy ${ac_tool_prefix}otool64; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_OTOOL64+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test -n "$OTOOL64"; then
+  ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+OTOOL64=$ac_cv_prog_OTOOL64
+if test -n "$OTOOL64"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
+$as_echo "$OTOOL64" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_OTOOL64"; then
+  ac_ct_OTOOL64=$OTOOL64
+  # Extract the first word of "otool64", so it can be a program name with args.
+set dummy otool64; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test -n "$ac_ct_OTOOL64"; then
+  ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OTOOL64="otool64"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
+if test -n "$ac_ct_OTOOL64"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
+$as_echo "$ac_ct_OTOOL64" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+  if test "x$ac_ct_OTOOL64" = x; then
+    OTOOL64=":"
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    OTOOL64=$ac_ct_OTOOL64
+  fi
+else
+  OTOOL64="$ac_cv_prog_OTOOL64"
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
+$as_echo_n "checking for -single_module linker flag... " >&6; }
+if ${lt_cv_apple_cc_single_mod+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  lt_cv_apple_cc_single_mod=no
+      if test -z "${LT_MULTI_MODULE}"; then
+       # By default we will add the -single_module flag. You can override
+       # by either setting the environment variable LT_MULTI_MODULE
+       # non-empty at configure time, or by adding -multi_module to the
+       # link flags.
+       rm -rf libconftest.dylib*
+       echo "int foo(void){return 1;}" > conftest.c
+       echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+-dynamiclib -Wl,-single_module conftest.c" >&5
+       $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
+         -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
+        _lt_result=$?
+       # If there is a non-empty error log, and "single_module"
+       # appears in it, assume the flag caused a linker warning
+        if test -s conftest.err && $GREP single_module conftest.err; then
+         cat conftest.err >&5
+       # Otherwise, if the output was created with a 0 exit code from
+       # the compiler, it worked.
+       elif test -f libconftest.dylib && test $_lt_result -eq 0; then
+         lt_cv_apple_cc_single_mod=yes
+       else
+         cat conftest.err >&5
+       fi
+       rm -rf libconftest.dylib*
+       rm -f conftest.*
+      fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
+$as_echo "$lt_cv_apple_cc_single_mod" >&6; }
+
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
+$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }
+if ${lt_cv_ld_exported_symbols_list+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  lt_cv_ld_exported_symbols_list=no
+      save_LDFLAGS=$LDFLAGS
+      echo "_main" > conftest.sym
+      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
+      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  lt_cv_ld_exported_symbols_list=yes
+else
+  lt_cv_ld_exported_symbols_list=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+       LDFLAGS="$save_LDFLAGS"
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
+$as_echo "$lt_cv_ld_exported_symbols_list" >&6; }
+
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5
+$as_echo_n "checking for -force_load linker flag... " >&6; }
+if ${lt_cv_ld_force_load+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  lt_cv_ld_force_load=no
+      cat > conftest.c << _LT_EOF
+int forced_loaded() { return 2;}
+_LT_EOF
+      echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5
+      $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
+      echo "$AR cru libconftest.a conftest.o" >&5
+      $AR cru libconftest.a conftest.o 2>&5
+      echo "$RANLIB libconftest.a" >&5
+      $RANLIB libconftest.a 2>&5
+      cat > conftest.c << _LT_EOF
+int main() { return 0;}
+_LT_EOF
+      echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5
+      $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
+      _lt_result=$?
+      if test -s conftest.err && $GREP force_load conftest.err; then
+       cat conftest.err >&5
+      elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
+       lt_cv_ld_force_load=yes
+      else
+       cat conftest.err >&5
+      fi
+        rm -f conftest.err libconftest.a conftest conftest.c
+        rm -rf conftest.dSYM
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5
+$as_echo "$lt_cv_ld_force_load" >&6; }
+    case $host_os in
+    rhapsody* | darwin1.[012])
+      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+    darwin1.*)
+      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+    darwin*) # darwin 5.x on
+      # if running on 10.5 or later, the deployment target defaults
+      # to the OS version, if on x86, and 10.4, the deployment
+      # target defaults to 10.4. Don't you love it?
+      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+       10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+         _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+       10.[012]*)
+         _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+       10.*)
+         _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+      esac
+    ;;
+  esac
+    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+      _lt_dar_single_mod='$single_module'
+    fi
+    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
+      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+    else
+      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+    fi
+    if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
+      _lt_dsymutil='~$DSYMUTIL $lib || :'
+    else
+      _lt_dsymutil=
+    fi
+    ;;
+  esac
+
+for ac_header in dlfcn.h
+do :
+  ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
+"
+if test "x$ac_cv_header_dlfcn_h" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_DLFCN_H 1
+_ACEOF
+
+fi
+
+done
+
+
+
+
+
+# Set options
+# Check whether --enable-static was given.
+if test "${enable_static+set}" = set; then :
+  enableval=$enable_static; p=${PACKAGE-default}
+    case $enableval in
+    yes) enable_static=yes ;;
+    no) enable_static=no ;;
+    *)
+     enable_static=no
+      # Look at the argument we got.  We use all the common list separators.
+      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      for pkg in $enableval; do
+       IFS="$lt_save_ifs"
+       if test "X$pkg" = "X$p"; then
+         enable_static=yes
+       fi
+      done
+      IFS="$lt_save_ifs"
+      ;;
+    esac
 else
-  LIPO="$ac_cv_prog_LIPO"
+  enable_static=no
 fi
 
-    if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
-set dummy ${ac_tool_prefix}otool; ac_word=$2
+
+
+
+
+
+
+enable_win32_dll=yes
+
+case $host in
+*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
+set dummy ${ac_tool_prefix}as; ac_word=$2
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OTOOL+:} false; then :
+if ${ac_cv_prog_AS+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  if test -n "$OTOOL"; then
-  ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
+  if test -n "$AS"; then
+  ac_cv_prog_AS="$AS" # Let the user override the test.
 else
 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
@@ -7974,7 +8704,7 @@ do
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
   if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
+    ac_cv_prog_AS="${ac_tool_prefix}as"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
@@ -7984,10 +8714,10 @@ IFS=$as_save_IFS
 
 fi
 fi
-OTOOL=$ac_cv_prog_OTOOL
-if test -n "$OTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
-$as_echo "$OTOOL" >&6; }
+AS=$ac_cv_prog_AS
+if test -n "$AS"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AS" >&5
+$as_echo "$AS" >&6; }
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
@@ -7995,17 +8725,17 @@ fi
 
 
 fi
-if test -z "$ac_cv_prog_OTOOL"; then
-  ac_ct_OTOOL=$OTOOL
-  # Extract the first word of "otool", so it can be a program name with args.
-set dummy otool; ac_word=$2
+if test -z "$ac_cv_prog_AS"; then
+  ac_ct_AS=$AS
+  # Extract the first word of "as", so it can be a program name with args.
+set dummy as; ac_word=$2
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OTOOL+:} false; then :
+if ${ac_cv_prog_ac_ct_AS+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  if test -n "$ac_ct_OTOOL"; then
-  ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
+  if test -n "$ac_ct_AS"; then
+  ac_cv_prog_ac_ct_AS="$ac_ct_AS" # Let the user override the test.
 else
 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
@@ -8014,7 +8744,7 @@ do
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
   if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_prog_ac_ct_OTOOL="otool"
+    ac_cv_prog_ac_ct_AS="as"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
@@ -8024,17 +8754,17 @@ IFS=$as_save_IFS
 
 fi
 fi
-ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
-if test -n "$ac_ct_OTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
-$as_echo "$ac_ct_OTOOL" >&6; }
+ac_ct_AS=$ac_cv_prog_ac_ct_AS
+if test -n "$ac_ct_AS"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5
+$as_echo "$ac_ct_AS" >&6; }
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
-  if test "x$ac_ct_OTOOL" = x; then
-    OTOOL=":"
+  if test "x$ac_ct_AS" = x; then
+    AS="false"
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
@@ -8042,22 +8772,22 @@ yes:)
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
-    OTOOL=$ac_ct_OTOOL
+    AS=$ac_ct_AS
   fi
 else
-  OTOOL="$ac_cv_prog_OTOOL"
+  AS="$ac_cv_prog_AS"
 fi
 
-    if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
-set dummy ${ac_tool_prefix}otool64; ac_word=$2
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
+set dummy ${ac_tool_prefix}dlltool; ac_word=$2
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OTOOL64+:} false; then :
+if ${ac_cv_prog_DLLTOOL+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  if test -n "$OTOOL64"; then
-  ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
+  if test -n "$DLLTOOL"; then
+  ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
 else
 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
@@ -8066,7 +8796,7 @@ do
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
   if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
+    ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
@@ -8076,10 +8806,10 @@ IFS=$as_save_IFS
 
 fi
 fi
-OTOOL64=$ac_cv_prog_OTOOL64
-if test -n "$OTOOL64"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
-$as_echo "$OTOOL64" >&6; }
+DLLTOOL=$ac_cv_prog_DLLTOOL
+if test -n "$DLLTOOL"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
+$as_echo "$DLLTOOL" >&6; }
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
@@ -8087,17 +8817,17 @@ fi
 
 
 fi
-if test -z "$ac_cv_prog_OTOOL64"; then
-  ac_ct_OTOOL64=$OTOOL64
-  # Extract the first word of "otool64", so it can be a program name with args.
-set dummy otool64; ac_word=$2
+if test -z "$ac_cv_prog_DLLTOOL"; then
+  ac_ct_DLLTOOL=$DLLTOOL
+  # Extract the first word of "dlltool", so it can be a program name with args.
+set dummy dlltool; ac_word=$2
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then :
+if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  if test -n "$ac_ct_OTOOL64"; then
-  ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
+  if test -n "$ac_ct_DLLTOOL"; then
+  ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
 else
 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
@@ -8106,7 +8836,7 @@ do
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
   if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_prog_ac_ct_OTOOL64="otool64"
+    ac_cv_prog_ac_ct_DLLTOOL="dlltool"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
@@ -8116,17 +8846,17 @@ IFS=$as_save_IFS
 
 fi
 fi
-ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
-if test -n "$ac_ct_OTOOL64"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
-$as_echo "$ac_ct_OTOOL64" >&6; }
+ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
+if test -n "$ac_ct_DLLTOOL"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
+$as_echo "$ac_ct_DLLTOOL" >&6; }
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
-  if test "x$ac_ct_OTOOL64" = x; then
-    OTOOL64=":"
+  if test "x$ac_ct_DLLTOOL" = x; then
+    DLLTOOL="false"
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
@@ -8134,194 +8864,124 @@ yes:)
 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
-    OTOOL64=$ac_ct_OTOOL64
+    DLLTOOL=$ac_ct_DLLTOOL
   fi
 else
-  OTOOL64="$ac_cv_prog_OTOOL64"
+  DLLTOOL="$ac_cv_prog_DLLTOOL"
 fi
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
-$as_echo_n "checking for -single_module linker flag... " >&6; }
-if ${lt_cv_apple_cc_single_mod+:} false; then :
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
+set dummy ${ac_tool_prefix}objdump; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_OBJDUMP+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  lt_cv_apple_cc_single_mod=no
-      if test -z "${LT_MULTI_MODULE}"; then
-       # By default we will add the -single_module flag. You can override
-       # by either setting the environment variable LT_MULTI_MODULE
-       # non-empty at configure time, or by adding -multi_module to the
-       # link flags.
-       rm -rf libconftest.dylib*
-       echo "int foo(void){return 1;}" > conftest.c
-       echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
--dynamiclib -Wl,-single_module conftest.c" >&5
-       $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
-         -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
-        _lt_result=$?
-       # If there is a non-empty error log, and "single_module"
-       # appears in it, assume the flag caused a linker warning
-        if test -s conftest.err && $GREP single_module conftest.err; then
-         cat conftest.err >&5
-       # Otherwise, if the output was created with a 0 exit code from
-       # the compiler, it worked.
-       elif test -f libconftest.dylib && test $_lt_result -eq 0; then
-         lt_cv_apple_cc_single_mod=yes
-       else
-         cat conftest.err >&5
-       fi
-       rm -rf libconftest.dylib*
-       rm -f conftest.*
-      fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
-$as_echo "$lt_cv_apple_cc_single_mod" >&6; }
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
-$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }
-if ${lt_cv_ld_exported_symbols_list+:} false; then :
-  $as_echo_n "(cached) " >&6
+  if test -n "$OBJDUMP"; then
+  ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
 else
-  lt_cv_ld_exported_symbols_list=no
-      save_LDFLAGS=$LDFLAGS
-      echo "_main" > conftest.sym
-      LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-int
-main ()
-{
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
 
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  lt_cv_ld_exported_symbols_list=yes
+fi
+fi
+OBJDUMP=$ac_cv_prog_OBJDUMP
+if test -n "$OBJDUMP"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
+$as_echo "$OBJDUMP" >&6; }
 else
-  lt_cv_ld_exported_symbols_list=no
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-       LDFLAGS="$save_LDFLAGS"
 
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
-$as_echo "$lt_cv_ld_exported_symbols_list" >&6; }
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5
-$as_echo_n "checking for -force_load linker flag... " >&6; }
-if ${lt_cv_ld_force_load+:} false; then :
+fi
+if test -z "$ac_cv_prog_OBJDUMP"; then
+  ac_ct_OBJDUMP=$OBJDUMP
+  # Extract the first word of "objdump", so it can be a program name with args.
+set dummy objdump; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  lt_cv_ld_force_load=no
-      cat > conftest.c << _LT_EOF
-int forced_loaded() { return 2;}
-_LT_EOF
-      echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5
-      $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
-      echo "$AR cru libconftest.a conftest.o" >&5
-      $AR cru libconftest.a conftest.o 2>&5
-      echo "$RANLIB libconftest.a" >&5
-      $RANLIB libconftest.a 2>&5
-      cat > conftest.c << _LT_EOF
-int main() { return 0;}
-_LT_EOF
-      echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5
-      $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
-      _lt_result=$?
-      if test -s conftest.err && $GREP force_load conftest.err; then
-       cat conftest.err >&5
-      elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
-       lt_cv_ld_force_load=yes
-      else
-       cat conftest.err >&5
-      fi
-        rm -f conftest.err libconftest.a conftest conftest.c
-        rm -rf conftest.dSYM
+  if test -n "$ac_ct_OBJDUMP"; then
+  ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_OBJDUMP="objdump"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5
-$as_echo "$lt_cv_ld_force_load" >&6; }
-    case $host_os in
-    rhapsody* | darwin1.[012])
-      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
-    darwin1.*)
-      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
-    darwin*) # darwin 5.x on
-      # if running on 10.5 or later, the deployment target defaults
-      # to the OS version, if on x86, and 10.4, the deployment
-      # target defaults to 10.4. Don't you love it?
-      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
-       10.0,*86*-darwin8*|10.0,*-darwin[91]*)
-         _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
-       10.[012]*)
-         _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
-       10.*)
-         _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
-      esac
-    ;;
-  esac
-    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
-      _lt_dar_single_mod='$single_module'
-    fi
-    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
-      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
-    else
-      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
-    fi
-    if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
-      _lt_dsymutil='~$DSYMUTIL $lib || :'
-    else
-      _lt_dsymutil=
-    fi
-    ;;
-  esac
-
-for ac_header in dlfcn.h
-do :
-  ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
-"
-if test "x$ac_cv_header_dlfcn_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_DLFCN_H 1
-_ACEOF
+fi
+ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
+if test -n "$ac_ct_OBJDUMP"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
+$as_echo "$ac_ct_OBJDUMP" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
 
+  if test "x$ac_ct_OBJDUMP" = x; then
+    OBJDUMP="false"
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    OBJDUMP=$ac_ct_OBJDUMP
+  fi
+else
+  OBJDUMP="$ac_cv_prog_OBJDUMP"
 fi
 
-done
+  ;;
+esac
+
+test -z "$AS" && AS=as
 
 
 
 
 
-# Set options
+test -z "$DLLTOOL" && DLLTOOL=dlltool
+
+
+
+
+
+test -z "$OBJDUMP" && OBJDUMP=objdump
+
+
+
+
 
 
 
@@ -8360,36 +9020,6 @@ fi
 
 
 
-  # Check whether --enable-static was given.
-if test "${enable_static+set}" = set; then :
-  enableval=$enable_static; p=${PACKAGE-default}
-    case $enableval in
-    yes) enable_static=yes ;;
-    no) enable_static=no ;;
-    *)
-     enable_static=no
-      # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
-      for pkg in $enableval; do
-       IFS="$lt_save_ifs"
-       if test "X$pkg" = "X$p"; then
-         enable_static=yes
-       fi
-      done
-      IFS="$lt_save_ifs"
-      ;;
-    esac
-else
-  enable_static=yes
-fi
-
-
-
-
-
-
-
-
 
 
 # Check whether --with-pic was given.
@@ -12324,208 +12954,25 @@ CC="$lt_save_CC"
 
 
 
-# Only expand once:
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
-set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat >conftest.make <<\_ACEOF
-SHELL = /bin/sh
-all:
-       @echo '@@@%%%=$(MAKE)=@@@%%%'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
-case `${MAKE-make} -f conftest.make 2>/dev/null` in
-  *@@@%%%=?*=@@@%%%*)
-    eval ac_cv_prog_make_${ac_make}_set=yes;;
-  *)
-    eval ac_cv_prog_make_${ac_make}_set=no;;
-esac
-rm -f conftest.make
-fi
-if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-  SET_MAKE=
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-  SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-
-
-
-
-
-
-
-if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
-       if test -n "$ac_tool_prefix"; then
-  # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
-set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKG_CONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $PKG_CONFIG in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
-
-  ;;
-esac
-fi
-PKG_CONFIG=$ac_cv_path_PKG_CONFIG
-if test -n "$PKG_CONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
-$as_echo "$PKG_CONFIG" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
+# Only expand once:
 
 
-fi
-if test -z "$ac_cv_path_PKG_CONFIG"; then
-  ac_pt_PKG_CONFIG=$PKG_CONFIG
-  # Extract the first word of "pkg-config", so it can be a program name with args.
-set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  case $ac_pt_PKG_CONFIG in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path.
-  ;;
-  *)
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
 
-  ;;
-esac
-fi
-ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
-if test -n "$ac_pt_PKG_CONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5
-$as_echo "$ac_pt_PKG_CONFIG" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
 
-  if test "x$ac_pt_PKG_CONFIG" = x; then
-    PKG_CONFIG=""
-  else
-    case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
-    PKG_CONFIG=$ac_pt_PKG_CONFIG
-  fi
-else
-  PKG_CONFIG="$ac_cv_path_PKG_CONFIG"
-fi
+LIBT_CURRENT=10
+LIBT_REVISION=0
 
-fi
-if test -n "$PKG_CONFIG"; then
-       _pkg_min_version=0.9.0
-       { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5
-$as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; }
-       if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
-               { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-       else
-               { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-               PKG_CONFIG=""
-       fi
-fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for RM macro" >&5
-$as_echo_n "checking for RM macro... " >&6; }
-_predefined_rm=`make -p -f /dev/null 2>/dev/null|grep '^RM ='|sed -e 's/^RM = //'`
-if test "x$_predefined_rm" = "x"; then
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no predefined RM" >&5
-$as_echo "no predefined RM" >&6; }
-       # Extract the first word of "rm", so it can be a program name with args.
-set dummy rm; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_RM+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if test -n "$RM"; then
-  ac_cv_prog_RM="$RM" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_prog_RM="rm -f"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-  done
-IFS=$as_save_IFS
+LIBT_AGE=9
 
-fi
-fi
-RM=$ac_cv_prog_RM
-if test -n "$RM"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RM" >&5
-$as_echo "$RM" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
+LIBT_VERSION_INFO="$LIBT_CURRENT:$LIBT_REVISION:$LIBT_AGE"
 
 
-else
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $_predefined_rm" >&5
-$as_echo "$_predefined_rm" >&6; }
-fi
+LIBT_CURRENT_MINUS_AGE=`expr $LIBT_CURRENT - $LIBT_AGE`
+
+
+PKGCONFIG_REQUIRES=
+PKGCONFIG_REQUIRES_PRIVATELY=
 
 
 case "$host" in
@@ -12593,11 +13040,25 @@ else
 fi
 
 
+ac_fn_c_check_decl "$LINENO" "__SUNPRO_C" "ac_cv_have_decl___SUNPRO_C" "$ac_includes_default"
+if test "x$ac_cv_have_decl___SUNPRO_C" = xyes; then :
+  SUNCC="yes"
+else
+  SUNCC="no"
+fi
+
 WARN_CFLAGS=""
+WARNING_CPP_DIRECTIVE="no"
 if test "x$GCC" = "xyes"; then
        WARN_CFLAGS="-Wall -Wpointer-arith -Wstrict-prototypes \
        -Wmissing-prototypes -Wmissing-declarations \
        -Wnested-externs -fno-strict-aliasing"
+       WARNING_CPP_DIRECTIVE="yes"
+elif test "x$SUNCC" = "xyes"; then
+       WARN_CFLAGS="-v -fd"
+       WARNING_CPP_DIRECTIVE="yes"
+fi
+if test "x$WARNING_CPP_DIRECTIVE" = "xyes"; then
 
 cat >>confdefs.h <<_ACEOF
 #define HAVE_WARNING_CPP_DIRECTIVE 1
@@ -12954,7 +13415,7 @@ $as_echo "#define STDC_HEADERS 1" >>confdefs.h
 
 fi
 
-for ac_header in fcntl.h regex.h stdlib.h string.h unistd.h sys/vfs.h sys/statfs.h sys/param.h sys/mount.h
+for ac_header in fcntl.h stdlib.h string.h unistd.h sys/statvfs.h sys/vfs.h sys/statfs.h sys/param.h sys/mount.h
 do :
   as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
 ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
@@ -13829,7 +14290,7 @@ $as_echo "#define HAVE_MMAP 1" >>confdefs.h
 fi
 rm -f conftest.mmap conftest.txt
 
-for ac_func in geteuid getuid link memmove memset mkstemp mkostemp _mktemp_s strchr strrchr strtol getopt getopt_long sysconf ftruncate chsize rand random lrand48 random_r rand_r regcomp regerror regexec regfree fstatvfs fstatfs lstat
+for ac_func in link mkstemp mkostemp _mktemp_s mkdtemp getopt getopt_long getprogname getexecname rand random lrand48 random_r rand_r readlink fstatvfs fstatfs lstat
 do :
   as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
 ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
 done
 
 
-fc_saved_CFLAGS="$CFLAGS"
-CFLAGS="$CFLAGS $WARN_CFLAGS -Werror"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for posix_fadvise" >&5
-$as_echo_n "checking for posix_fadvise... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for posix_fadvise in fcntl.h" >&5
+$as_echo_n "checking for posix_fadvise in fcntl.h... " >&6; }
+if ${ac_cv_func_posix_fadvise+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  symbol="[^a-zA-Z_0-9]posix_fadvise[^a-zA-Z_0-9]"
+ac_found=no
+for ac_header in fcntl.h ; do
+  ac_safe=`echo "$ac_header" | sed 'y%./+-%__p_%' `
+  if test $ac_found != "yes" ; then
+      if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+            cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
-       #include <fcntl.h>
-       int main(void) {
-           return posix_fadvise(0, 0, 0, 0);
-       }
+#include <$ac_header>
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-               { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define HAVE_POSIX_FADVISE 1" >>confdefs.h
-
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  $EGREP "$symbol" >/dev/null 2>&1; then :
+  ac_found="$ac_header"
+fi
+rm -f conftest*
 
+      fi
+  fi
+done
+if test "$ac_found" != "no" ; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_found" >&5
+$as_echo "$ac_found" >&6; }
+  fc_func_posix_fadvise=1
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
+  fc_func_posix_fadvise=0
 fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-CFLAGS="$fc_saved_CFLAGS"
+
+fi
+
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_POSIX_FADVISE $fc_func_posix_fadvise
+_ACEOF
+
 
 #
 if test "x$ac_cv_func_fstatvfs" = "xyes"; then
@@ -13953,14 +14428,6 @@ _ACEOF
 
 fi
 
-#
-# regex
-#
-if test "x$ac_cv_func_regcomp" = "xyes" -a "x$ac_cv_func_regerror" = "xyes" -a "x$ac_cv_func_regexec" = "xyes" -a "x$ac_cv_func_regfree"; then
-
-$as_echo "#define USE_REGEX /**/" >>confdefs.h
-
-fi
 
 #
 # Checks for iconv
@@ -14045,6 +14512,9 @@ _ACEOF
 if ac_fn_c_try_link "$LINENO"; then :
   iconv_type="libiconv"
                         use_iconv=1
+                        ICONV_CFLAGS="$libiconv_cflags"
+                        ICONV_LIBS="$libiconv_libs"
+
 else
   use_iconv=0
 fi
@@ -14053,8 +14523,6 @@ rm -f core conftest.err conftest.$ac_objext \
 
                CFLAGS="$iconvsaved_CFLAGS"
                LIBS="$iconvsaved_LIBS"
-               ICONV_CFLAGS="$libiconv_cflags"
-               ICONV_LIBS="$libiconv_libs"
        fi
        if test "x$use_iconv" = "x0"; then
                cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -14183,6 +14651,7 @@ else
 $as_echo "yes" >&6; }
 
 fi
+PKGCONFIG_REQUIRES="$PKGCONFIG_REQUIRES freetype2"
 
 
 
@@ -14217,6 +14686,33 @@ cat >>confdefs.h <<_ACEOF
 #define HAVE_FT_BITMAP_SIZE_Y_PPEM $HAVE_FT_BITMAP_SIZE_Y_PPEM
 _ACEOF
 
+ac_fn_c_check_member "$LINENO" "TT_OS2" "usLowerOpticalPointSize" "ac_cv_member_TT_OS2_usLowerOpticalPointSize" "
+#include <ft2build.h>
+#include FT_FREETYPE_H
+#include FT_TRUETYPE_TABLES_H
+"
+if test "x$ac_cv_member_TT_OS2_usLowerOpticalPointSize" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_TT_OS2_USLOWEROPTICALPOINTSIZE 1
+_ACEOF
+
+
+fi
+ac_fn_c_check_member "$LINENO" "TT_OS2" "usUpperOpticalPointSize" "ac_cv_member_TT_OS2_usUpperOpticalPointSize" "
+#include <ft2build.h>
+#include FT_FREETYPE_H
+#include FT_TRUETYPE_TABLES_H
+"
+if test "x$ac_cv_member_TT_OS2_usUpperOpticalPointSize" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_TT_OS2_USUPPEROPTICALPOINTSIZE 1
+_ACEOF
+
+
+fi
+
 CFLAGS="$fontconfig_save_cflags"
 LIBS="$fontconfig_save_libs"
 
@@ -14340,6 +14836,8 @@ fi
                else
                        EXPAT_LIBS="-lexpat"
                fi
+       else
+               PKGCONFIG_REQUIRES_PRIVATELY="$PKGCONFIG_REQUIRES_PRIVATELY expat"
        fi
 
        expatsaved_CPPFLAGS="$CPPFLAGS"
@@ -14496,6 +14994,7 @@ else
 $as_echo "yes" >&6; }
 
 fi
+    PKGCONFIG_REQUIRES_PRIVATELY="$PKGCONFIG_REQUIRES_PRIVATELY libxml-2.0"
 
 cat >>confdefs.h <<_ACEOF
 #define ENABLE_LIBXML2 1
@@ -14655,7 +15154,7 @@ fi
 case $fc_cachedir in
 no|yes)
        if test "$os_win32" = "yes"; then
-               fc_cachedir="WINDOWSTEMPDIR_FONTCONFIG_CACHE"
+               fc_cachedir="LOCAL_APPDATA_FONTCONFIG_CACHE"
        else
                fc_cachedir='${localstatedir}/cache/${PACKAGE}'
        fi
@@ -14724,7 +15223,7 @@ no|yes)
 esac
 case "$configdir" in
 no|yes)
-       configdir='${baseconfigdir}'/conf.d
+       configdir='${BASECONFIGDIR}'/conf.d
        ;;
 *)
        ;;
@@ -14748,10 +15247,6 @@ XMLDIR=${xmldir}
 
 
 
-
-
-
-
 #
 # Thread-safety primitives
 #
@@ -15017,8 +15512,44 @@ case ${host_os} in
         darwin*)
         ax_pthread_flags="-pthread $ax_pthread_flags"
         ;;
+       netbsd*)
+       # use libc stubs, don't link against libpthread, to allow
+       # dynamic loading
+       ax_pthread_flags=""
+       ;;
 esac
 
+# Clang doesn't consider unrecognized options an error unless we specify
+# -Werror. We throw in some extra Clang-specific options to ensure that
+# this doesn't happen for GCC, which also accepts -Werror.
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler needs -Werror to reject unknown flags" >&5
+$as_echo_n "checking if compiler needs -Werror to reject unknown flags... " >&6; }
+save_CFLAGS="$CFLAGS"
+ax_pthread_extra_flags="-Werror"
+CFLAGS="$CFLAGS $ax_pthread_extra_flags -Wunknown-warning-option -Wsizeof-array-argument"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+int foo(void);
+int
+main ()
+{
+foo()
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+  ax_pthread_extra_flags=
+                   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+CFLAGS="$save_CFLAGS"
+
 if test x"$ax_pthread_ok" = xno; then
 for flag in $ax_pthread_flags; do
 
@@ -15088,7 +15619,7 @@ $as_echo_n "checking for the pthreads library -l$flag... " >&6; }
         save_LIBS="$LIBS"
         save_CFLAGS="$CFLAGS"
         LIBS="$PTHREAD_LIBS $LIBS"
-        CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
+        CFLAGS="$CFLAGS $PTHREAD_CFLAGS $ax_pthread_extra_flags"
 
         # Check for various functions.  We must include pthread.h,
         # since some functions may be macros.  (On the Sequent, we
@@ -15186,12 +15717,13 @@ $as_echo_n "checking if more special flags are required for pthreads... " >&6; }
             if test "$GCC" = "yes"; then
                 flag="-D_REENTRANT"
             else
+                # TODO: What about Clang on Solaris?
                 flag="-mt -D_REENTRANT"
             fi
             ;;
         esac
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${flag}" >&5
-$as_echo "${flag}" >&6; }
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flag" >&5
+$as_echo "$flag" >&6; }
         if test "x$flag" != xno; then
             PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS"
         fi
@@ -15204,8 +15736,7 @@ else
 
                 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-
-                    #include <pthread.h>
+#include <pthread.h>
 int
 main ()
 {
         LIBS="$save_LIBS"
         CFLAGS="$save_CFLAGS"
 
-        # More AIX lossage: must compile with xlc_r or cc_r
-        if test x"$GCC" != xyes; then
-          for ac_prog in xlc_r cc_r
+        # More AIX lossage: compile with *_r variant
+        if test "x$GCC" != xyes; then
+            case $host_os in
+                aix*)
+                case "x/$CC" in #(
+  x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6) :
+    #handle absolute path differently from PATH based program lookup
+                   case "x$CC" in #(
+  x/*) :
+    if as_fn_executable_p ${CC}_r; then :
+  PTHREAD_CC="${CC}_r"
+fi ;; #(
+  *) :
+    for ac_prog in ${CC}_r
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 
   test -n "$PTHREAD_CC" && break
 done
-test -n "$PTHREAD_CC" || PTHREAD_CC="${CC}"
-
-        else
-          PTHREAD_CC=$CC
+test -n "$PTHREAD_CC" || PTHREAD_CC="$CC"
+ ;;
+esac ;; #(
+  *) :
+     ;;
+esac
+                ;;
+            esac
         fi
-else
-        PTHREAD_CC="$CC"
 fi
 
+test -n "$PTHREAD_CC" || PTHREAD_CC="$CC"
+
 
 
 
@@ -15713,10 +16259,48 @@ cat >>confdefs.h <<_ACEOF
 _ACEOF
 
 
+# The cast to long int works around a bug in the HP C Compiler,
+# see AC_CHECK_SIZEOF for more information.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking alignment of void *" >&5
+$as_echo_n "checking alignment of void *... " >&6; }
+if ${ac_cv_alignof_void_p+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if ac_fn_c_compute_int "$LINENO" "(long int) offsetof (ac__type_alignof_, y)" "ac_cv_alignof_void_p"        "$ac_includes_default
+#ifndef offsetof
+# define offsetof(type, member) ((char *) &((type *) 0)->member - (char *) 0)
+#endif
+typedef struct { char x; void * y; } ac__type_alignof_;"; then :
+
+else
+  if test "$ac_cv_type_void_p" = yes; then
+     { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot compute alignment of void *
+See \`config.log' for more details" "$LINENO" 5; }
+   else
+     ac_cv_alignof_void_p=0
+   fi
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_alignof_void_p" >&5
+$as_echo "$ac_cv_alignof_void_p" >&6; }
+
+
+
+cat >>confdefs.h <<_ACEOF
+#define ALIGNOF_VOID_P $ac_cv_alignof_void_p
+_ACEOF
+
+
+
+
+
 
 
 
-ac_config_files="$ac_config_files Makefile fontconfig/Makefile fc-lang/Makefile fc-glyphname/Makefile fc-case/Makefile src/Makefile conf.d/Makefile fc-cache/Makefile fc-cat/Makefile fc-list/Makefile fc-match/Makefile fc-pattern/Makefile fc-query/Makefile fc-scan/Makefile fc-validate/Makefile doc/Makefile doc/version.sgml test/Makefile fontconfig.spec fontconfig.pc fontconfig-zip"
+ac_config_files="$ac_config_files Makefile fontconfig/Makefile fc-lang/Makefile fc-glyphname/Makefile fc-blanks/Makefile fc-case/Makefile src/Makefile conf.d/Makefile fc-cache/Makefile fc-cat/Makefile fc-list/Makefile fc-match/Makefile fc-pattern/Makefile fc-query/Makefile fc-scan/Makefile fc-validate/Makefile doc/Makefile doc/version.sgml test/Makefile fontconfig.spec fontconfig.pc fontconfig-zip"
 
 cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
@@ -16277,7 +16861,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by $as_me, which was
+This file was extended by fontconfig $as_me 2.11.93, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -16337,13 +16921,13 @@ $config_headers
 Configuration commands:
 $config_commands
 
-Report bugs to the package provider."
+Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig>."
 
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-config.status
+fontconfig config.status 2.11.93
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -16472,13 +17056,13 @@ AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
 sed_quote_subst='$sed_quote_subst'
 double_quote_subst='$double_quote_subst'
 delay_variable_subst='$delay_variable_subst'
+macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`'
+macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`'
+enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`'
 AS='`$ECHO "$AS" | $SED "$delay_single_quote_subst"`'
 DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`'
 OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`'
-macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`'
-macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`'
 enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`'
-enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`'
 pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`'
 enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`'
 SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`'
@@ -16777,6 +17361,7 @@ do
     "fontconfig/Makefile") CONFIG_FILES="$CONFIG_FILES fontconfig/Makefile" ;;
     "fc-lang/Makefile") CONFIG_FILES="$CONFIG_FILES fc-lang/Makefile" ;;
     "fc-glyphname/Makefile") CONFIG_FILES="$CONFIG_FILES fc-glyphname/Makefile" ;;
+    "fc-blanks/Makefile") CONFIG_FILES="$CONFIG_FILES fc-blanks/Makefile" ;;
     "fc-case/Makefile") CONFIG_FILES="$CONFIG_FILES fc-case/Makefile" ;;
     "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
     "conf.d/Makefile") CONFIG_FILES="$CONFIG_FILES conf.d/Makefile" ;;
@@ -17390,7 +17975,7 @@ $as_echo "$as_me: executing $ac_file commands" >&6;}
 
   case $ac_file$ac_mode in
     "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
-  # Autoconf 2.62 quotes --file arguments for eval, but not when files
+  # Older Autoconf quotes --file arguments for eval, but not when files
   # are listed without --file.  Let's play safe and only enable the eval
   # if we detect the quoting.
   case $CONFIG_FILES in
@@ -17441,7 +18026,7 @@ $as_echo X"$mf" |
     DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
     test -z "$DEPDIR" && continue
     am__include=`sed -n 's/^am__include = //p' < "$mf"`
-    test -z "am__include" && continue
+    test -z "$am__include" && continue
     am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
     # Find all dependency output files, they are included files with
     # $(DEPDIR) in their names.  We invoke sed twice because it is the
@@ -17536,6 +18121,13 @@ available_tags=""
 
 # ### BEGIN LIBTOOL CONFIG
 
+# Which release of libtool.m4 was used?
+macro_version=$macro_version
+macro_revision=$macro_revision
+
+# Whether or not to build static libraries.
+build_old_libs=$enable_static
+
 # Assembler program.
 AS=$lt_AS
 
@@ -17545,16 +18137,9 @@ DLLTOOL=$lt_DLLTOOL
 # Object dumper program.
 OBJDUMP=$lt_OBJDUMP
 
-# Which release of libtool.m4 was used?
-macro_version=$macro_version
-macro_revision=$macro_revision
-
 # Whether or not to build shared libraries.
 build_libtool_libs=$enable_shared
 
-# Whether or not to build static libraries.
-build_old_libs=$enable_static
-
 # What type of objects to build.
 pic_mode=$pic_mode
 
index 06ac8a2..bb98804 100644 (file)
@@ -24,7 +24,6 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.61)
-AC_INIT(fonts.dtd)
 
 dnl ==========================================================================
 dnl                               Versioning              
@@ -34,26 +33,10 @@ dnl This is the package version number, not the shared library
 dnl version.  This same version number must appear in fontconfig/fontconfig.h
 dnl Yes, it is a pain to synchronize version numbers.  Unfortunately, it's
 dnl not possible to extract the version number here from fontconfig.h
-AM_INIT_AUTOMAKE(fontconfig, 2.10.91)
+AC_INIT([fontconfig], [2.11.93], [https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig])
+AM_INIT_AUTOMAKE([1.11 parallel-tests dist-bzip2])
 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
 
-dnl libtool versioning
-
-dnl bump revision when fixing bugs
-dnl bump current and age, reset revision to zero when adding APIs
-dnl bump current, leave age, reset revision to zero when changing/removing APIS
-LIBT_CURRENT=7
-LIBT_REVISION=2
-AC_SUBST(LIBT_CURRENT)
-AC_SUBST(LIBT_REVISION)
-LIBT_AGE=6
-
-LIBT_VERSION_INFO="$LIBT_CURRENT:$LIBT_REVISION:$LIBT_AGE"
-AC_SUBST(LIBT_VERSION_INFO)
-
-LIBT_CURRENT_MINUS_AGE=`expr $LIBT_CURRENT - $LIBT_AGE`
-AC_SUBST(LIBT_CURRENT_MINUS_AGE)
-
 dnl ==========================================================================
 
 AC_CONFIG_HEADERS(config.h)
@@ -64,10 +47,13 @@ AC_USE_SYSTEM_EXTENSIONS
 AC_SYS_LARGEFILE
 AC_PROG_INSTALL
 AC_PROG_LN_S
-AC_LIBTOOL_WIN32_DLL
-AM_PROG_LIBTOOL
 AC_PROG_MAKE_SET
 PKG_PROG_PKG_CONFIG
+m4_ifdef([PKG_INSTALLDIR], [PKG_INSTALLDIR], AC_SUBST([pkgconfigdir], ${libdir}/pkgconfig))
+
+AM_MISSING_PROG([GIT], [git])
+AM_MISSING_PROG([GPERF], [gperf])
+AM_PATH_PYTHON
 
 AC_MSG_CHECKING([for RM macro])
 _predefined_rm=`make -p -f /dev/null 2>/dev/null|grep '^RM ='|sed -e 's/^RM = //'`
@@ -78,6 +64,30 @@ else
        AC_MSG_RESULT($_predefined_rm)
 fi
 
+dnl Initialize libtool
+LT_PREREQ([2.2])
+LT_INIT([disable-static win32-dll])
+
+dnl libtool versioning
+
+dnl bump revision when fixing bugs
+dnl bump current and age, reset revision to zero when adding APIs
+dnl bump current, leave age, reset revision to zero when changing/removing APIS
+LIBT_CURRENT=10
+LIBT_REVISION=0
+AC_SUBST(LIBT_CURRENT)
+AC_SUBST(LIBT_REVISION)
+LIBT_AGE=9
+
+LIBT_VERSION_INFO="$LIBT_CURRENT:$LIBT_REVISION:$LIBT_AGE"
+AC_SUBST(LIBT_VERSION_INFO)
+
+LIBT_CURRENT_MINUS_AGE=`expr $LIBT_CURRENT - $LIBT_AGE`
+AC_SUBST(LIBT_CURRENT_MINUS_AGE)
+
+PKGCONFIG_REQUIRES=
+PKGCONFIG_REQUIRES_PRIVATELY=
+
 dnl ==========================================================================
 
 case "$host" in
@@ -94,11 +104,19 @@ if test "$os_win32" = "yes"; then
 fi
 AM_CONDITIONAL(MS_LIB_AVAILABLE, test x$ms_librarian = xyes)
 
+AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
 WARN_CFLAGS=""
+WARNING_CPP_DIRECTIVE="no"
 if test "x$GCC" = "xyes"; then
        WARN_CFLAGS="-Wall -Wpointer-arith -Wstrict-prototypes \
        -Wmissing-prototypes -Wmissing-declarations \
        -Wnested-externs -fno-strict-aliasing"
+       WARNING_CPP_DIRECTIVE="yes"
+elif test "x$SUNCC" = "xyes"; then
+       WARN_CFLAGS="-v -fd"
+       WARNING_CPP_DIRECTIVE="yes"
+fi
+if test "x$WARNING_CPP_DIRECTIVE" = "xyes"; then
        AC_DEFINE_UNQUOTED(HAVE_WARNING_CPP_DIRECTIVE,1,
        [Can use #warning in C files])
 fi
@@ -129,7 +147,7 @@ dnl ==========================================================================
 # Checks for header files.
 AC_HEADER_DIRENT
 AC_HEADER_STDC
-AC_CHECK_HEADERS([fcntl.h regex.h stdlib.h string.h unistd.h sys/vfs.h sys/statfs.h sys/param.h sys/mount.h])
+AC_CHECK_HEADERS([fcntl.h stdlib.h string.h unistd.h sys/statvfs.h sys/vfs.h sys/statfs.h sys/param.h sys/mount.h])
 AX_CREATE_STDINT_H([src/fcstdint.h])
 
 # Checks for typedefs, structures, and compiler characteristics.
@@ -141,23 +159,12 @@ AC_TYPE_PID_T
 # Checks for library functions.
 AC_FUNC_VPRINTF
 AC_FUNC_MMAP
-AC_CHECK_FUNCS([geteuid getuid link memmove memset mkstemp mkostemp _mktemp_s strchr strrchr strtol getopt getopt_long sysconf ftruncate chsize rand random lrand48 random_r rand_r regcomp regerror regexec regfree fstatvfs fstatfs lstat])
+AC_CHECK_FUNCS([link mkstemp mkostemp _mktemp_s mkdtemp getopt getopt_long getprogname getexecname rand random lrand48 random_r rand_r readlink fstatvfs fstatfs lstat])
 
 dnl AC_CHECK_FUNCS doesn't check for header files.
 dnl posix_fadvise() may be not available in older libc.
-fc_saved_CFLAGS="$CFLAGS"
-CFLAGS="$CFLAGS $WARN_CFLAGS -Werror"
-AC_MSG_CHECKING([for posix_fadvise])
-AC_LINK_IFELSE([AC_LANG_SOURCE([[
-       #include <fcntl.h>
-       int main(void) {
-           return posix_fadvise(0, 0, 0, 0);
-       }
-       ]])],[
-               AC_MSG_RESULT([yes])
-               AC_DEFINE([HAVE_POSIX_FADVISE], [1], [Define to 1 if you have the 'posix_fadvise' function.])
-       ],[AC_MSG_RESULT([no])])
-CFLAGS="$fc_saved_CFLAGS"
+AC_CHECK_SYMBOL([posix_fadvise], [fcntl.h], [fc_func_posix_fadvise=1], [fc_func_posix_fadvise=0])
+AC_DEFINE_UNQUOTED([HAVE_POSIX_FADVISE], [$fc_func_posix_fadvise], [Define to 1 if you have the 'posix_fadvise' function.])
 
 #
 if test "x$ac_cv_func_fstatvfs" = "xyes"; then
@@ -181,12 +188,6 @@ if test "x$ac_cv_func_fstatfs" = "xyes"; then
 fi
 AC_CHECK_MEMBERS([struct dirent.d_type],,,
        [#include <dirent.h>])
-#
-# regex
-#
-if test "x$ac_cv_func_regcomp" = "xyes" -a "x$ac_cv_func_regerror" = "xyes" -a "x$ac_cv_func_regexec" = "xyes" -a "x$ac_cv_func_regfree"; then
-       AC_DEFINE(USE_REGEX,,[Use regex])
-fi
 
 #
 # Checks for iconv
@@ -247,13 +248,14 @@ if test "x$enable_iconv" != "xno"; then
                AC_TRY_LINK([#include <iconv.h>],
                        [iconv_open ("from", "to");],
                        [iconv_type="libiconv"
-                        use_iconv=1],
+                        use_iconv=1
+                        ICONV_CFLAGS="$libiconv_cflags"
+                        ICONV_LIBS="$libiconv_libs"
+                        ],
                        [use_iconv=0])
 
                CFLAGS="$iconvsaved_CFLAGS"
                LIBS="$iconvsaved_LIBS"
-               ICONV_CFLAGS="$libiconv_cflags"
-               ICONV_LIBS="$libiconv_libs"
        fi
        if test "x$use_iconv" = "x0"; then
                AC_TRY_LINK([#include <iconv.h>],
@@ -273,6 +275,7 @@ AC_DEFINE_UNQUOTED(USE_ICONV,$use_iconv,[Use iconv.])
 # Checks for FreeType
 #
 PKG_CHECK_MODULES(FREETYPE, freetype2)
+PKGCONFIG_REQUIRES="$PKGCONFIG_REQUIRES freetype2"
 
 AC_SUBST(FREETYPE_LIBS)
 AC_SUBST(FREETYPE_CFLAGS)
@@ -289,6 +292,10 @@ AC_CHECK_MEMBER(FT_Bitmap_Size.y_ppem,
 #include FT_FREETYPE_H])
 AC_DEFINE_UNQUOTED(HAVE_FT_BITMAP_SIZE_Y_PPEM,$HAVE_FT_BITMAP_SIZE_Y_PPEM,
                   [FT_Bitmap_Size structure includes y_ppem field])
+AC_CHECK_MEMBERS([TT_OS2.usLowerOpticalPointSize, TT_OS2.usUpperOpticalPointSize], [], [], [[
+#include <ft2build.h>
+#include FT_FREETYPE_H
+#include FT_TRUETYPE_TABLES_H]])
 CFLAGS="$fontconfig_save_cflags"
 LIBS="$fontconfig_save_libs"
 
@@ -332,6 +339,8 @@ if test "$enable_libxml2" != "yes"; then
                else
                        EXPAT_LIBS="-lexpat"
                fi
+       else
+               PKGCONFIG_REQUIRES_PRIVATELY="$PKGCONFIG_REQUIRES_PRIVATELY expat"
        fi
 
        expatsaved_CPPFLAGS="$CPPFLAGS"
@@ -373,6 +382,7 @@ AC_ARG_ENABLE(libxml2,
 
 if test "$enable_libxml2" = "yes"; then
     PKG_CHECK_MODULES([LIBXML2], [libxml-2.0 >= 2.6])
+    PKGCONFIG_REQUIRES_PRIVATELY="$PKGCONFIG_REQUIRES_PRIVATELY libxml-2.0"
     AC_DEFINE_UNQUOTED(ENABLE_LIBXML2,1,[Use libxml2 instead of Expat])
 
     AC_SUBST(LIBXML2_CFLAGS)
@@ -488,7 +498,7 @@ AC_ARG_WITH(cache-dir,
 case $fc_cachedir in
 no|yes)
        if test "$os_win32" = "yes"; then
-               fc_cachedir="WINDOWSTEMPDIR_FONTCONFIG_CACHE"
+               fc_cachedir="LOCAL_APPDATA_FONTCONFIG_CACHE"
        else
                fc_cachedir='${localstatedir}/cache/${PACKAGE}'
        fi
@@ -545,7 +555,7 @@ no|yes)
 esac
 case "$configdir" in
 no|yes)
-       configdir='${baseconfigdir}'/conf.d
+       configdir='${BASECONFIGDIR}'/conf.d
        ;;
 *)
        ;;
@@ -562,13 +572,9 @@ TEMPLATEDIR=${templatedir}
 BASECONFIGDIR=${baseconfigdir}
 CONFIGDIR=${configdir}
 XMLDIR=${xmldir}
-AC_SUBST(templatedir)
 AC_SUBST(TEMPLATEDIR)
-AC_SUBST(baseconfigdir)
 AC_SUBST(BASECONFIGDIR)
-AC_SUBST(configdir)
 AC_SUBST(CONFIGDIR)
-AC_SUBST(xmldir)
 AC_SUBST(XMLDIR)
 
 
@@ -675,16 +681,24 @@ dnl Figure out what cache format suffix to use for this architecture
 AC_C_BIGENDIAN
 AC_CHECK_SIZEOF([void *])
 AC_CHECK_ALIGNOF([double])
+AC_CHECK_ALIGNOF([void *])
 
 dnl include the header file for workaround of miscalculating size on autoconf
 dnl particularly for fat binaries
 AH_BOTTOM([#include "config-fixups.h"])
 
-AC_OUTPUT([
+dnl
+dnl
+AC_SUBST(PKGCONFIG_REQUIRES)
+AC_SUBST(PKGCONFIG_REQUIRES_PRIVATELY)
+
+dnl
+AC_CONFIG_FILES([
 Makefile
 fontconfig/Makefile
 fc-lang/Makefile
 fc-glyphname/Makefile
+fc-blanks/Makefile
 fc-case/Makefile
 src/Makefile
 conf.d/Makefile
@@ -703,3 +717,4 @@ fontconfig.spec
 fontconfig.pc
 fontconfig-zip
 ])
+AC_OUTPUT
diff --git a/depcomp b/depcomp
index debb6ff..4ebd5b3 100755 (executable)
--- a/depcomp
+++ b/depcomp
@@ -1,9 +1,9 @@
 #! /bin/sh
 # depcomp - compile a program generating dependencies as side-effects
 
-scriptversion=2012-03-27.16; # UTC
+scriptversion=2013-05-30.07; # UTC
 
-# Copyright (C) 1999-2012 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -27,9 +27,9 @@ scriptversion=2012-03-27.16; # UTC
 
 case $1 in
   '')
-     echo "$0: No command.  Try '$0 --help' for more information." 1>&2
-     exit 1;
-     ;;
+    echo "$0: No command.  Try '$0 --help' for more information." 1>&2
+    exit 1;
+    ;;
   -h | --h*)
     cat <<\EOF
 Usage: depcomp [--help] [--version] PROGRAM [ARGS]
@@ -56,11 +56,65 @@ EOF
     ;;
 esac
 
+# Get the directory component of the given path, and save it in the
+# global variables '$dir'.  Note that this directory component will
+# be either empty or ending with a '/' character.  This is deliberate.
+set_dir_from ()
+{
+  case $1 in
+    */*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
+      *) dir=;;
+  esac
+}
+
+# Get the suffix-stripped basename of the given path, and save it the
+# global variable '$base'.
+set_base_from ()
+{
+  base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
+}
+
+# If no dependency file was actually created by the compiler invocation,
+# we still have to create a dummy depfile, to avoid errors with the
+# Makefile "include basename.Plo" scheme.
+make_dummy_depfile ()
+{
+  echo "#dummy" > "$depfile"
+}
+
+# Factor out some common post-processing of the generated depfile.
+# Requires the auxiliary global variable '$tmpdepfile' to be set.
+aix_post_process_depfile ()
+{
+  # If the compiler actually managed to produce a dependency file,
+  # post-process it.
+  if test -f "$tmpdepfile"; then
+    # Each line is of the form 'foo.o: dependency.h'.
+    # Do two passes, one to just change these to
+    #   $object: dependency.h
+    # and one to simply output
+    #   dependency.h:
+    # which is needed to avoid the deleted-header problem.
+    { sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
+      sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
+    } > "$depfile"
+    rm -f "$tmpdepfile"
+  else
+    make_dummy_depfile
+  fi
+}
+
 # A tabulation character.
 tab='  '
 # A newline character.
 nl='
 '
+# Character ranges might be problematic outside the C locale.
+# These definitions help.
+upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
+lower=abcdefghijklmnopqrstuvwxyz
+digits=0123456789
+alpha=${upper}${lower}
 
 if test -z "$depmode" || test -z "$source" || test -z "$object"; then
   echo "depcomp: Variables source, object and depmode must be set" 1>&2
@@ -74,6 +128,9 @@ tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
 
 rm -f "$tmpdepfile"
 
+# Avoid interferences from the environment.
+gccflag= dashmflag=
+
 # Some modes work just like other modes, but use different flags.  We
 # parameterize here, but still list the modes in the big case below,
 # to make depend.m4 easier to write.  Note that we *cannot* use a case
@@ -85,32 +142,32 @@ if test "$depmode" = hp; then
 fi
 
 if test "$depmode" = dashXmstdout; then
-   # This is just like dashmstdout with a different argument.
-   dashmflag=-xM
-   depmode=dashmstdout
+  # This is just like dashmstdout with a different argument.
+  dashmflag=-xM
+  depmode=dashmstdout
 fi
 
 cygpath_u="cygpath -u -f -"
 if test "$depmode" = msvcmsys; then
-   # This is just like msvisualcpp but w/o cygpath translation.
-   # Just convert the backslash-escaped backslashes to single forward
-   # slashes to satisfy depend.m4
-   cygpath_u='sed s,\\\\,/,g'
-   depmode=msvisualcpp
+  # This is just like msvisualcpp but w/o cygpath translation.
+  # Just convert the backslash-escaped backslashes to single forward
+  # slashes to satisfy depend.m4
+  cygpath_u='sed s,\\\\,/,g'
+  depmode=msvisualcpp
 fi
 
 if test "$depmode" = msvc7msys; then
-   # This is just like msvc7 but w/o cygpath translation.
-   # Just convert the backslash-escaped backslashes to single forward
-   # slashes to satisfy depend.m4
-   cygpath_u='sed s,\\\\,/,g'
-   depmode=msvc7
+  # This is just like msvc7 but w/o cygpath translation.
+  # Just convert the backslash-escaped backslashes to single forward
+  # slashes to satisfy depend.m4
+  cygpath_u='sed s,\\\\,/,g'
+  depmode=msvc7
 fi
 
 if test "$depmode" = xlc; then
-   # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency informations.
-   gccflag=-qmakedep=gcc,-MF
-   depmode=gcc
+  # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.
+  gccflag=-qmakedep=gcc,-MF
+  depmode=gcc
 fi
 
 case "$depmode" in
@@ -133,8 +190,7 @@ gcc3)
   done
   "$@"
   stat=$?
-  if test $stat -eq 0; then :
-  else
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile"
     exit $stat
   fi
@@ -142,13 +198,17 @@ gcc3)
   ;;
 
 gcc)
+## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
+## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
+## (see the conditional assignment to $gccflag above).
 ## There are various ways to get dependency output from gcc.  Here's
 ## why we pick this rather obscure method:
 ## - Don't want to use -MD because we'd like the dependencies to end
 ##   up in a subdir.  Having to rename by hand is ugly.
 ##   (We might end up doing this anyway to support other compilers.)
 ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
-##   -MM, not -M (despite what the docs say).
+##   -MM, not -M (despite what the docs say).  Also, it might not be
+##   supported by the other compilers which use the 'gcc' depmode.
 ## - Using -M directly means running the compiler twice (even worse
 ##   than renaming).
   if test -z "$gccflag"; then
@@ -156,15 +216,14 @@ gcc)
   fi
   "$@" -Wp,"$gccflag$tmpdepfile"
   stat=$?
-  if test $stat -eq 0; then :
-  else
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile"
     exit $stat
   fi
   rm -f "$depfile"
   echo "$object : \\" > "$depfile"
-  alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
-## The second -e expression handles DOS-style file names with drive letters.
+  # The second -e expression handles DOS-style file names with drive
+  # letters.
   sed -e 's/^[^:]*: / /' \
       -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
 ## This next piece of magic avoids the "deleted header file" problem.
@@ -173,15 +232,15 @@ gcc)
 ## typically no way to rebuild the header).  We avoid this by adding
 ## dummy dependencies for each header file.  Too bad gcc doesn't do
 ## this for us directly.
-  tr ' ' "$nl" < "$tmpdepfile" |
 ## Some versions of gcc put a space before the ':'.  On the theory
 ## that the space means something, we add a space to the output as
 ## well.  hp depmode also adds that space, but also prefixes the VPATH
 ## to the object.  Take care to not repeat it in the output.
 ## Some versions of the HPUX 10.20 sed can't process this invocation
 ## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
-      | sed -e 's/$/ :/' >> "$depfile"
+  tr ' ' "$nl" < "$tmpdepfile" \
+    | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
+    | sed -e 's/$/ :/' >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
@@ -199,8 +258,7 @@ sgi)
     "$@" -MDupdate "$tmpdepfile"
   fi
   stat=$?
-  if test $stat -eq 0; then :
-  else
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile"
     exit $stat
   fi
@@ -208,7 +266,6 @@ sgi)
 
   if test -f "$tmpdepfile"; then  # yes, the sourcefile depend on other files
     echo "$object : \\" > "$depfile"
-
     # Clip off the initial element (the dependent).  Don't try to be
     # clever and replace this with sed code, as IRIX sed won't handle
     # lines with more than a fixed number of characters (4096 in
@@ -216,19 +273,15 @@ sgi)
     # the IRIX cc adds comments like '#:fec' to the end of the
     # dependency line.
     tr ' ' "$nl" < "$tmpdepfile" \
-    | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
-    tr "$nl" ' ' >> "$depfile"
+      | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \
+      | tr "$nl" ' ' >> "$depfile"
     echo >> "$depfile"
-
     # The second pass generates a dummy entry for each header file.
     tr ' ' "$nl" < "$tmpdepfile" \
-   | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
-   >> "$depfile"
+      | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
+      >> "$depfile"
   else
-    # The sourcefile does not contain any dependencies, so just
-    # store a dummy comment line, to avoid errors with the Makefile
-    # "include basename.Plo" scheme.
-    echo "#dummy" > "$depfile"
+    make_dummy_depfile
   fi
   rm -f "$tmpdepfile"
   ;;
@@ -246,9 +299,8 @@ aix)
   # current directory.  Also, the AIX compiler puts '$object:' at the
   # start of each line; $object doesn't have directory information.
   # Version 6 uses the directory in both cases.
-  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-  test "x$dir" = "x$object" && dir=
-  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+  set_dir_from "$object"
+  set_base_from "$object"
   if test "$libtool" = yes; then
     tmpdepfile1=$dir$base.u
     tmpdepfile2=$base.u
@@ -261,9 +313,7 @@ aix)
     "$@" -M
   fi
   stat=$?
-
-  if test $stat -eq 0; then :
-  else
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
     exit $stat
   fi
@@ -272,65 +322,113 @@ aix)
   do
     test -f "$tmpdepfile" && break
   done
-  if test -f "$tmpdepfile"; then
-    # Each line is of the form 'foo.o: dependent.h'.
-    # Do two passes, one to just change these to
-    # '$object: dependent.h' and one to simply 'dependent.h:'.
-    sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
-    sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
-  else
-    # The sourcefile does not contain any dependencies, so just
-    # store a dummy comment line, to avoid errors with the Makefile
-    # "include basename.Plo" scheme.
-    echo "#dummy" > "$depfile"
+  aix_post_process_depfile
+  ;;
+
+tcc)
+  # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26
+  # FIXME: That version still under development at the moment of writing.
+  #        Make that this statement remains true also for stable, released
+  #        versions.
+  # It will wrap lines (doesn't matter whether long or short) with a
+  # trailing '\', as in:
+  #
+  #   foo.o : \
+  #    foo.c \
+  #    foo.h \
+  #
+  # It will put a trailing '\' even on the last line, and will use leading
+  # spaces rather than leading tabs (at least since its commit 0394caf7
+  # "Emit spaces for -MD").
+  "$@" -MD -MF "$tmpdepfile"
+  stat=$?
+  if test $stat -ne 0; then
+    rm -f "$tmpdepfile"
+    exit $stat
   fi
+  rm -f "$depfile"
+  # Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.
+  # We have to change lines of the first kind to '$object: \'.
+  sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"
+  # And for each line of the second kind, we have to emit a 'dep.h:'
+  # dummy dependency, to avoid the deleted-header problem.
+  sed -n -e 's|^  *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
-icc)
-  # Intel's C compiler anf tcc (Tiny C Compiler) understand '-MD -MF file'.
-  # However on
-  #    $CC -MD -MF foo.d -c -o sub/foo.o sub/foo.c
-  # ICC 7.0 will fill foo.d with something like
-  #    foo.o: sub/foo.c
-  #    foo.o: sub/foo.h
-  # which is wrong.  We want
-  #    sub/foo.o: sub/foo.c
-  #    sub/foo.o: sub/foo.h
-  #    sub/foo.c:
-  #    sub/foo.h:
-  # ICC 7.1 will output
+## The order of this option in the case statement is important, since the
+## shell code in configure will try each of these formats in the order
+## listed in this file.  A plain '-MD' option would be understood by many
+## compilers, so we must ensure this comes after the gcc and icc options.
+pgcc)
+  # Portland's C compiler understands '-MD'.
+  # Will always output deps to 'file.d' where file is the root name of the
+  # source file under compilation, even if file resides in a subdirectory.
+  # The object file name does not affect the name of the '.d' file.
+  # pgcc 10.2 will output
   #    foo.o: sub/foo.c sub/foo.h
-  # and will wrap long lines using '\':
+  # and will wrap long lines using '\' :
   #    foo.o: sub/foo.c ... \
   #     sub/foo.h ... \
   #     ...
-  # tcc 0.9.26 (FIXME still under development at the moment of writing)
-  # will emit a similar output, but also prepend the continuation lines
-  # with horizontal tabulation characters.
-  "$@" -MD -MF "$tmpdepfile"
-  stat=$?
-  if test $stat -eq 0; then :
-  else
+  set_dir_from "$object"
+  # Use the source, not the object, to determine the base name, since
+  # that's sadly what pgcc will do too.
+  set_base_from "$source"
+  tmpdepfile=$base.d
+
+  # For projects that build the same source file twice into different object
+  # files, the pgcc approach of using the *source* file root name can cause
+  # problems in parallel builds.  Use a locking strategy to avoid stomping on
+  # the same $tmpdepfile.
+  lockdir=$base.d-lock
+  trap "
+    echo '$0: caught signal, cleaning up...' >&2
+    rmdir '$lockdir'
+    exit 1
+  " 1 2 13 15
+  numtries=100
+  i=$numtries
+  while test $i -gt 0; do
+    # mkdir is a portable test-and-set.
+    if mkdir "$lockdir" 2>/dev/null; then
+      # This process acquired the lock.
+      "$@" -MD
+      stat=$?
+      # Release the lock.
+      rmdir "$lockdir"
+      break
+    else
+      # If the lock is being held by a different process, wait
+      # until the winning process is done or we timeout.
+      while test -d "$lockdir" && test $i -gt 0; do
+        sleep 1
+        i=`expr $i - 1`
+      done
+    fi
+    i=`expr $i - 1`
+  done
+  trap - 1 2 13 15
+  if test $i -le 0; then
+    echo "$0: failed to acquire lock after $numtries attempts" >&2
+    echo "$0: check lockdir '$lockdir'" >&2
+    exit 1
+  fi
+
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile"
     exit $stat
   fi
   rm -f "$depfile"
-  # Each line is of the form 'foo.o: dependent.h',
-  # or 'foo.o: dep1.h dep2.h \', or ' dep3.h dep4.h \'.
+  # Each line is of the form `foo.o: dependent.h',
+  # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
   # Do two passes, one to just change these to
-  # '$object: dependent.h' and one to simply 'dependent.h:'.
-  sed -e "s/^[ $tab][ $tab]*/  /" -e "s,^[^:]*:,$object :," \
-    < "$tmpdepfile" > "$depfile"
-  sed '
-    s/[ '"$tab"'][ '"$tab"']*/ /g
-    s/^ *//
-    s/ *\\*$//
-    s/^[^:]*: *//
-    /^$/d
-    /:$/d
-    s/$/ :/
-  ' < "$tmpdepfile" >> "$depfile"
+  # `$object: dependent.h' and one to simply `dependent.h:'.
+  sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
+  # Some versions of the HPUX 10.20 sed can't process this invocation
+  # correctly.  Breaking it into two sed invocations is a workaround.
+  sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \
+    | sed -e 's/$/ :/' >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
@@ -341,9 +439,8 @@ hp2)
   # 'foo.d', which lands next to the object file, wherever that
   # happens to be.
   # Much of this is similar to the tru64 case; see comments there.
-  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-  test "x$dir" = "x$object" && dir=
-  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+  set_dir_from  "$object"
+  set_base_from "$object"
   if test "$libtool" = yes; then
     tmpdepfile1=$dir$base.d
     tmpdepfile2=$dir.libs/$base.d
@@ -354,8 +451,7 @@ hp2)
     "$@" +Maked
   fi
   stat=$?
-  if test $stat -eq 0; then :
-  else
+  if test $stat -ne 0; then
      rm -f "$tmpdepfile1" "$tmpdepfile2"
      exit $stat
   fi
@@ -365,76 +461,61 @@ hp2)
     test -f "$tmpdepfile" && break
   done
   if test -f "$tmpdepfile"; then
-    sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
+    sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile"
     # Add 'dependent.h:' lines.
     sed -ne '2,${
-              s/^ *//
-              s/ \\*$//
-              s/$/:/
-              p
-            }' "$tmpdepfile" >> "$depfile"
+               s/^ *//
+               s/ \\*$//
+               s/$/:/
+               p
+             }' "$tmpdepfile" >> "$depfile"
   else
-    echo "#dummy" > "$depfile"
+    make_dummy_depfile
   fi
   rm -f "$tmpdepfile" "$tmpdepfile2"
   ;;
 
 tru64)
-   # The Tru64 compiler uses -MD to generate dependencies as a side
-   # effect.  'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
-   # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
-   # dependencies in 'foo.d' instead, so we check for that too.
-   # Subdirectories are respected.
-   dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-   test "x$dir" = "x$object" && dir=
-   base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
-
-   if test "$libtool" = yes; then
-      # With Tru64 cc, shared objects can also be used to make a
-      # static library.  This mechanism is used in libtool 1.4 series to
-      # handle both shared and static libraries in a single compilation.
-      # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
-      #
-      # With libtool 1.5 this exception was removed, and libtool now
-      # generates 2 separate objects for the 2 libraries.  These two
-      # compilations output dependencies in $dir.libs/$base.o.d and
-      # in $dir$base.o.d.  We have to check for both files, because
-      # one of the two compilations can be disabled.  We should prefer
-      # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
-      # automatically cleaned when .libs/ is deleted, while ignoring
-      # the former would cause a distcleancheck panic.
-      tmpdepfile1=$dir.libs/$base.lo.d   # libtool 1.4
-      tmpdepfile2=$dir$base.o.d          # libtool 1.5
-      tmpdepfile3=$dir.libs/$base.o.d    # libtool 1.5
-      tmpdepfile4=$dir.libs/$base.d      # Compaq CCC V6.2-504
-      "$@" -Wc,-MD
-   else
-      tmpdepfile1=$dir$base.o.d
-      tmpdepfile2=$dir$base.d
-      tmpdepfile3=$dir$base.d
-      tmpdepfile4=$dir$base.d
-      "$@" -MD
-   fi
-
-   stat=$?
-   if test $stat -eq 0; then :
-   else
-      rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
-      exit $stat
-   fi
-
-   for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
-   do
-     test -f "$tmpdepfile" && break
-   done
-   if test -f "$tmpdepfile"; then
-      sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
-      sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
-   else
-      echo "#dummy" > "$depfile"
-   fi
-   rm -f "$tmpdepfile"
-   ;;
+  # The Tru64 compiler uses -MD to generate dependencies as a side
+  # effect.  'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
+  # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
+  # dependencies in 'foo.d' instead, so we check for that too.
+  # Subdirectories are respected.
+  set_dir_from  "$object"
+  set_base_from "$object"
+
+  if test "$libtool" = yes; then
+    # Libtool generates 2 separate objects for the 2 libraries.  These
+    # two compilations output dependencies in $dir.libs/$base.o.d and
+    # in $dir$base.o.d.  We have to check for both files, because
+    # one of the two compilations can be disabled.  We should prefer
+    # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
+    # automatically cleaned when .libs/ is deleted, while ignoring
+    # the former would cause a distcleancheck panic.
+    tmpdepfile1=$dir$base.o.d          # libtool 1.5
+    tmpdepfile2=$dir.libs/$base.o.d    # Likewise.
+    tmpdepfile3=$dir.libs/$base.d      # Compaq CCC V6.2-504
+    "$@" -Wc,-MD
+  else
+    tmpdepfile1=$dir$base.d
+    tmpdepfile2=$dir$base.d
+    tmpdepfile3=$dir$base.d
+    "$@" -MD
+  fi
+
+  stat=$?
+  if test $stat -ne 0; then
+    rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
+    exit $stat
+  fi
+
+  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
+  do
+    test -f "$tmpdepfile" && break
+  done
+  # Same post-processing that is required for AIX mode.
+  aix_post_process_depfile
+  ;;
 
 msvc7)
   if test "$libtool" = yes; then
@@ -445,8 +526,7 @@ msvc7)
   "$@" $showIncludes > "$tmpdepfile"
   stat=$?
   grep -v '^Note: including file: ' "$tmpdepfile"
-  if test "$stat" = 0; then :
-  else
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile"
     exit $stat
   fi
@@ -472,6 +552,7 @@ $ {
   G
   p
 }' >> "$depfile"
+  echo >> "$depfile" # make sure the fragment doesn't end with a backslash
   rm -f "$tmpdepfile"
   ;;
 
@@ -523,13 +604,14 @@ dashmstdout)
   # in the target name.  This is to cope with DOS-style filenames:
   # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
   "$@" $dashmflag |
-    sed 's:^['"$tab"' ]*[^:'"$tab"' ][^:][^:]*\:['"$tab"' ]*:'"$object"'\: :' > "$tmpdepfile"
+    sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"
   rm -f "$depfile"
   cat < "$tmpdepfile" > "$depfile"
-  tr ' ' "$nl" < "$tmpdepfile" | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+  # Some versions of the HPUX 10.20 sed can't process this sed invocation
+  # correctly.  Breaking it into two sed invocations is a workaround.
+  tr ' ' "$nl" < "$tmpdepfile" \
+    | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
+    | sed -e 's/$/ :/' >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
@@ -582,10 +664,12 @@ makedepend)
   # makedepend may prepend the VPATH from the source file name to the object.
   # No need to regex-escape $object, excess matching of '.' is harmless.
   sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
-  sed '1,2d' "$tmpdepfile" | tr ' ' "$nl" | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+  # Some versions of the HPUX 10.20 sed can't process the last invocation
+  # correctly.  Breaking it into two sed invocations is a workaround.
+  sed '1,2d' "$tmpdepfile" \
+    | tr ' ' "$nl" \
+    | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
+    | sed -e 's/$/ :/' >> "$depfile"
   rm -f "$tmpdepfile" "$tmpdepfile".bak
   ;;
 
@@ -621,10 +705,10 @@ cpp)
     esac
   done
 
-  "$@" -E |
-    sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
-       -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
-    sed '$ s: \\$::' > "$tmpdepfile"
+  "$@" -E \
+    sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
+             -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
+    sed '$ s: \\$::' > "$tmpdepfile"
   rm -f "$depfile"
   echo "$object : \\" > "$depfile"
   cat < "$tmpdepfile" >> "$depfile"
@@ -656,15 +740,15 @@ msvisualcpp)
       shift
       ;;
     "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
-       set fnord "$@"
-       shift
-       shift
-       ;;
+        set fnord "$@"
+        shift
+        shift
+        ;;
     *)
-       set fnord "$@" "$arg"
-       shift
-       shift
-       ;;
+        set fnord "$@" "$arg"
+        shift
+        shift
+        ;;
     esac
   done
   "$@" -E 2>/dev/null |
index 9025458..e5d12e8 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicCreate" "3" "10 1月 2013" "" ""
+.TH "FcAtomicCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcAtomicCreate \- create an FcAtomic object
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Creates a data structure containing data needed to control access to \fIfile\fR\
 Writing is done to a separate file. Once that file is complete, the original
 configuration file is atomically replaced so that reading process always see
 a consistent and complete file without the need to lock for reading.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index f322d51..bb1a1f4 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicDeleteNew" "3" "10 1月 2013" "" ""
+.TH "FcAtomicDeleteNew" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcAtomicDeleteNew \- delete new file
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ void FcAtomicDeleteNew (FcAtomic *\fIatomic\fB);
 .SH "DESCRIPTION"
 .PP
 Deletes the new file. Used in error recovery to back out changes.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index b6c5b99..c2fff80 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicDestroy" "3" "10 1月 2013" "" ""
+.TH "FcAtomicDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcAtomicDestroy \- destroy an FcAtomic object
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ void FcAtomicDestroy (FcAtomic *\fIatomic\fB);
 .SH "DESCRIPTION"
 .PP
 Destroys \fIatomic\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 3eb4307..0d4a94c 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicLock" "3" "10 1月 2013" "" ""
+.TH "FcAtomicLock" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcAtomicLock \- lock a file
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcAtomicLock (FcAtomic *\fIatomic\fB);
 Attempts to lock the file referenced by \fIatomic\fR\&.
 Returns FcFalse if the file is already locked, else returns FcTrue and
 leaves the file locked.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 21f286f..2c1fc6b 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicNewFile" "3" "10 1月 2013" "" ""
+.TH "FcAtomicNewFile" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcAtomicNewFile \- return new temporary file name
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcChar8 * FcAtomicNewFile (FcAtomic *\fIatomic\fB);
 .PP
 Returns the filename for writing a new version of the file referenced
 by \fIatomic\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 8c9efee..2aafaca 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicOrigFile" "3" "10 1月 2013" "" ""
+.TH "FcAtomicOrigFile" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcAtomicOrigFile \- return original file name
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcChar8 * FcAtomicOrigFile (FcAtomic *\fIatomic\fB);
 .SH "DESCRIPTION"
 .PP
 Returns the file referenced by \fIatomic\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index e93831f..1ff4285 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicReplaceOrig" "3" "10 1月 2013" "" ""
+.TH "FcAtomicReplaceOrig" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcAtomicReplaceOrig \- replace original with new
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcAtomicReplaceOrig (FcAtomic *\fIatomic\fB);
 Replaces the original file referenced by \fIatomic\fR with
 the new file. Returns FcFalse if the file cannot be replaced due to
 permission issues in the filesystem. Otherwise returns FcTrue.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index da83dc5..54b3374 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcAtomicUnlock" "3" "10 1月 2013" "" ""
+.TH "FcAtomicUnlock" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcAtomicUnlock \- unlock a file
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ void FcAtomicUnlock (FcAtomic *\fIatomic\fB);
 .SH "DESCRIPTION"
 .PP
 Unlocks the file.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 506b2ec..982347c 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcBlanksAdd" "3" "10 1月 2013" "" ""
+.TH "FcBlanksAdd" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcBlanksAdd \- Add a character to an FcBlanks
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcBlanksAdd (FcBlanks *\fIb\fB, FcChar32 \fIucs4\fB);
 .PP
 Adds a single character to an FcBlanks object, returning FcFalse
 if this process ran out of memory.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 773ac15..38dac0a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcBlanksCreate" "3" "10 1月 2013" "" ""
+.TH "FcBlanksCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcBlanksCreate \- Create an FcBlanks
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBlanks * FcBlanksCreate (void\fI\fB);
 .SH "DESCRIPTION"
 .PP
 Creates an empty FcBlanks object.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 035bcf9..220cd64 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcBlanksDestroy" "3" "10 1月 2013" "" ""
+.TH "FcBlanksDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcBlanksDestroy \- Destroy and FcBlanks
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ void FcBlanksDestroy (FcBlanks *\fIb\fB);
 .SH "DESCRIPTION"
 .PP
 Destroys an FcBlanks object, freeing any associated memory.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index fbeaede..afa8e56 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcBlanksIsMember" "3" "10 1月 2013" "" ""
+.TH "FcBlanksIsMember" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcBlanksIsMember \- Query membership in an FcBlanks
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcBlanksIsMember (FcBlanks *\fIb\fB, FcChar32 \fIucs4\fB);
 .PP
 Returns whether the specified FcBlanks object contains the indicated Unicode
 value.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 84e983b..20ecb22 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheCopySet" "3" "10 1月 2013" "" ""
+.TH "FcCacheCopySet" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCacheCopySet \- Returns a copy of the fontset from cache
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcFontSet * FcCacheCopySet (const FcCache *\fIcache\fB);
 The returned fontset contains each of the font patterns from
 \fIcache\fR\&. This fontset may be modified, but the patterns
 from the cache are read-only.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index f5e317d..b0dc4b1 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheCreateTagFile" "3" "10 1月 2013" "" ""
+.TH "FcCacheCreateTagFile" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCacheCreateTagFile \- Create CACHEDIR.TAG at cache directory.
 .SH SYNOPSIS
@@ -12,6 +12,6 @@ void FcCacheCreateTagFile (const FcConfig *\fIconfig\fB);
 .PP
 This tries to create CACHEDIR.TAG file at the cache directory registered
 to \fIconfig\fR\&.
-.SH "VERSION"
+.SH "SINCE"
 .PP
-Fontconfig version 2.10.91
+version 2.9.91
index bdb2901..dcf8756 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheDir" "3" "10 1月 2013" "" ""
+.TH "FcCacheDir" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCacheDir \- Return directory of cache
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ const FcChar8 * FcCacheDir (const FcCache *\fIcache\fB);
 .SH "DESCRIPTION"
 .PP
 This function returns the directory from which the cache was constructed.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 65b8c87..4e170a3 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheNumFont" "3" "10 1月 2013" "" ""
+.TH "FcCacheNumFont" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCacheNumFont \- Returns the number of fonts in cache.
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ int FcCacheNumFont (const FcCache *\fIcache\fB);
 .PP
 This returns the number of fonts which would be included in the return from
 FcCacheCopySet.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 7b78412..23ec4a2 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheNumSubdir" "3" "10 1月 2013" "" ""
+.TH "FcCacheNumSubdir" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCacheNumSubdir \- Return the number of subdirectories in cache.
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ int FcCacheNumSubdir (const FcCache *\fIcache\fB);
 .SH "DESCRIPTION"
 .PP
 This returns the total number of subdirectories in the cache.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 73cabd2..5a191dc 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCacheSubdir" "3" "10 1月 2013" "" ""
+.TH "FcCacheSubdir" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCacheSubdir \- Return the i'th subdirectory.
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ The set of subdirectories stored in a cache file are indexed by this
 function, \fIi\fR should range from 0 to
 \fIn\fR-1, where \fIn\fR is the return
 value from FcCacheNumSubdir.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index ff08dfe..bdebc13 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetAddChar" "3" "10 1月 2013" "" ""
+.TH "FcCharSetAddChar" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetAddChar \- Add a character to a charset
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcCharSetAddChar (FcCharSet *\fIfcs\fB, FcChar32 \fIucs4\fB);
 \fBFcCharSetAddChar\fR adds a single Unicode char to the set,
 returning FcFalse on failure, either as a result of a constant set or from
 running out of memory.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 37548c4..b192310 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetCopy" "3" "10 1月 2013" "" ""
+.TH "FcCharSetCopy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetCopy \- Copy a charset
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcCharSet * FcCharSetCopy (FcCharSet *\fIsrc\fB);
 .PP
 Makes a copy of \fIsrc\fR; note that this may not actually do anything more
 than increment the reference count on \fIsrc\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 2236a52..fda0f8f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetCount" "3" "10 1月 2013" "" ""
+.TH "FcCharSetCount" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetCount \- Count entries in a charset
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcChar32 FcCharSetCount (const FcCharSet *\fIa\fB);
 .SH "DESCRIPTION"
 .PP
 Returns the total number of Unicode chars in \fIa\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index cfaf2e6..0697e51 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetCoverage" "3" "10 1月 2013" "" ""
+.TH "FcCharSetCoverage" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetCoverage \- DEPRECATED return coverage for a Unicode page
 .SH SYNOPSIS
@@ -16,6 +16,3 @@ indicates which code points in
 \fIpage\fR are included in \fIa\fR\&.
 \fBFcCharSetCoverage\fR returns the next page in the charset which has any
 coverage.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 9fe664c..985e06a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetCreate" "3" "10 1月 2013" "" ""
+.TH "FcCharSetCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetCreate \- Create an empty character set
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcCharSet * FcCharSetCreate (void\fI\fB);
 .PP
 \fBFcCharSetCreate\fR allocates and initializes a new empty
 character set object.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index c3e45b4..da456d7 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetDelChar" "3" "10 1月 2013" "" ""
+.TH "FcCharSetDelChar" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetDelChar \- Add a character to a charset
 .SH SYNOPSIS
@@ -13,6 +13,6 @@ FcBool FcCharSetDelChar (FcCharSet *\fIfcs\fB, FcChar32 \fIucs4\fB);
 \fBFcCharSetDelChar\fR deletes a single Unicode char from the set,
 returning FcFalse on failure, either as a result of a constant set or from
 running out of memory.
-.SH "VERSION"
+.SH "SINCE"
 .PP
-Fontconfig version 2.10.91
+version 2.9.0
index 21c04b3..25ed7dc 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetDestroy" "3" "10 1月 2013" "" ""
+.TH "FcCharSetDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetDestroy \- Destroy a character set
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ void FcCharSetDestroy (FcCharSet *\fIfcs\fB);
 \fBFcCharSetDestroy\fR decrements the reference count 
 \fIfcs\fR\&. If the reference count becomes zero, all
 memory referenced is freed.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 89a725f..e333f60 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetEqual" "3" "10 1月 2013" "" ""
+.TH "FcCharSetEqual" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetEqual \- Compare two charsets
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcCharSetEqual (const FcCharSet *\fIa\fB, const FcCharSet *\fIb\fB);
 .PP
 Returns whether \fIa\fR and \fIb\fR
 contain the same set of Unicode chars.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 74f7775..c4fdba8 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetFirstPage" "3" "10 1月 2013" "" ""
+.TH "FcCharSetFirstPage" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetFirstPage \- Start enumerating charset contents
 .SH SYNOPSIS
@@ -10,9 +10,26 @@ FcChar32 FcCharSetFirstPage (const FcCharSet *\fIa\fB, FcChar32[FC_CHARSET_MAP_S
 .fi\fR
 .SH "DESCRIPTION"
 .PP
-Builds an array of bits marking the first page of Unicode coverage of
-\fIa\fR\&. Returns the base of the array. \fInext\fR contains the next page in the
-font.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
+Builds an array of bits in \fImap\fR marking the
+first page of Unicode coverage of \fIa\fR\&.
+\fI*next\fR is set to contains the base code point
+for the next page in \fIa\fR\&. Returns the base code
+point for the page, or FC_CHARSET_DONE if
+\fIa\fR contains no pages. As an example, if
+\fBFcCharSetFirstPage\fR returns
+0x300 and fills \fImap\fR with
+.sp
+.nf
+0xffffffff 0xffffffff 0x01000008 0x44300002 0xffffd7f0 0xfffffffb 0xffff7fff 0xffff0003
+.sp
+.fi
+Then the page contains code points 0x300 through
+0x33f (the first 64 code points on the page)
+because \fImap[0]\fR and
+\fImap[1]\fR both have all their bits set. It also
+contains code points 0x343 (\fI0x300 + 32*2
++ (4-1)\fR) and 0x35e (\fI0x300 +
+32*2 + (31-1)\fR) because \fImap[2]\fR has
+the 4th and 31st bits set. The code points represented by
+map[3] and later are left as an excercise for the
+reader ;).
index cc28185..e2392d4 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetHasChar" "3" "10 1月 2013" "" ""
+.TH "FcCharSetHasChar" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetHasChar \- Check a charset for a char
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBool FcCharSetHasChar (const FcCharSet *\fIfcs\fB, FcChar32 \fIucs4\fB);
 .SH "DESCRIPTION"
 .PP
 Returns whether \fIfcs\fR contains the char \fIucs4\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 4a59a21..a0c2331 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetIntersect" "3" "10 1月 2013" "" ""
+.TH "FcCharSetIntersect" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetIntersect \- Intersect charsets
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcCharSet * FcCharSetIntersect (const FcCharSet *\fIa\fB, const FcCharSet *\fIb\
 .PP
 Returns a set including only those chars found in both
 \fIa\fR and \fIb\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index aceb7a7..6c0fb9e 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetIntersectCount" "3" "10 1月 2013" "" ""
+.TH "FcCharSetIntersectCount" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetIntersectCount \- Intersect and count charsets
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcChar32 FcCharSetIntersectCount (const FcCharSet *\fIa\fB, const FcCharSet *\fI
 .SH "DESCRIPTION"
 .PP
 Returns the number of chars that are in both \fIa\fR and \fIb\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 02cf8cf..27980ac 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetIsSubset" "3" "10 1月 2013" "" ""
+.TH "FcCharSetIsSubset" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetIsSubset \- Test for charset inclusion
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBool FcCharSetIsSubset (const FcCharSet *\fIa\fB, const FcCharSet *\fIb\fB);
 .SH "DESCRIPTION"
 .PP
 Returns whether \fIa\fR is a subset of \fIb\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 3521b2b..540a1bc 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetMerge" "3" "10 1月 2013" "" ""
+.TH "FcCharSetMerge" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetMerge \- Merge charsets
 .SH SYNOPSIS
@@ -16,6 +16,3 @@ If \fIchanged\fR is not NULL, then it returns whether any new
 chars from \fIb\fR were added to \fIa\fR\&.
 Returns FcFalse on failure, either when \fIa\fR is a constant
 set or from running out of memory.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index e516a10..5b6165b 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetNew" "3" "10 1月 2013" "" ""
+.TH "FcCharSetNew" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetNew \- DEPRECATED alias for FcCharSetCreate
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcCharSet * FcCharSetNew (void\fI\fB);
 .SH "DESCRIPTION"
 .PP
 \fBFcCharSetNew\fR is a DEPRECATED alias for FcCharSetCreate.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index bc8904c..48e08e5 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetNextPage" "3" "10 1月 2013" "" ""
+.TH "FcCharSetNextPage" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetNextPage \- Continue enumerating charset contents
 .SH SYNOPSIS
@@ -10,9 +10,12 @@ FcChar32 FcCharSetNextPage (const FcCharSet *\fIa\fB, FcChar32[FC_CHARSET_MAP_SI
 .fi\fR
 .SH "DESCRIPTION"
 .PP
-Builds an array of bits marking the Unicode coverage of \fIa\fR for page
-\fI*next\fR\&. Returns the base of the array. \fInext\fR contains the next page in
-the font.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
+Builds an array of bits in \fImap\fR marking the
+Unicode coverage of \fIa\fR for page containing
+\fI*next\fR (see the
+\fBFcCharSetFirstPage\fR description for details).
+\fI*next\fR is set to contains the base code point
+for the next page in \fIa\fR\&. Returns the base of
+code point for the page, or FC_CHARSET_DONE if
+\fIa\fR does not contain
+\fI*next\fR\&.
index 413cde2..7e28ab8 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetSubtract" "3" "10 1月 2013" "" ""
+.TH "FcCharSetSubtract" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetSubtract \- Subtract charsets
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcCharSet * FcCharSetSubtract (const FcCharSet *\fIa\fB, const FcCharSet *\fIb\f
 .SH "DESCRIPTION"
 .PP
 Returns a set including only those chars found in \fIa\fR but not \fIb\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 12659b1..3364352 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetSubtractCount" "3" "10 1月 2013" "" ""
+.TH "FcCharSetSubtractCount" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetSubtractCount \- Subtract and count charsets
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcChar32 FcCharSetSubtractCount (const FcCharSet *\fIa\fB, const FcCharSet *\fIb
 .SH "DESCRIPTION"
 .PP
 Returns the number of chars that are in \fIa\fR but not in \fIb\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index a2e8269..fbfdff3 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcCharSetUnion" "3" "10 1月 2013" "" ""
+.TH "FcCharSetUnion" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcCharSetUnion \- Add charsets
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcCharSet * FcCharSetUnion (const FcCharSet *\fIa\fB, const FcCharSet *\fIb\fB);
 .SH "DESCRIPTION"
 .PP
 Returns a set including only those chars found in either \fIa\fR or \fIb\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 94adebb..706ed65 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigAppFontAddDir" "3" "10 1月 2013" "" ""
+.TH "FcConfigAppFontAddDir" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigAppFontAddDir \- Add fonts from directory to font database
 .SH SYNOPSIS
@@ -12,8 +12,6 @@ FcBool FcConfigAppFontAddDir (FcConfig *\fIconfig\fB, const FcChar8 *\fIdir\fB);
 .PP
 Scans the specified directory for fonts, adding each one found to the
 application-specific set of fonts. Returns FcFalse
-if the fonts cannot be added (due to allocation failure). Otherwise returns FcTrue.
-If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
+if the fonts cannot be added (due to allocation failure or no fonts found).
+Otherwise returns FcTrue. If \fIconfig\fR is NULL,
+the current configuration is used.
index 8d4614b..b77a3d1 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigAppFontAddFile" "3" "10 1月 2013" "" ""
+.TH "FcConfigAppFontAddFile" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigAppFontAddFile \- Add font file to font database
 .SH SYNOPSIS
@@ -11,8 +11,6 @@ FcBool FcConfigAppFontAddFile (FcConfig *\fIconfig\fB, const FcChar8 *\fIfile\fB
 .SH "DESCRIPTION"
 .PP
 Adds an application-specific font to the configuration. Returns FcFalse
-if the fonts cannot be added (due to allocation failure). Otherwise returns FcTrue.
-If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
+if the fonts cannot be added (due to allocation failure or no fonts found).
+Otherwise returns FcTrue. If \fIconfig\fR is NULL,
+the current configuration is used.
index 2b3fb82..36f804b 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigAppFontClear" "3" "10 1月 2013" "" ""
+.TH "FcConfigAppFontClear" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigAppFontClear \- Remove all app fonts from font database
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcConfigAppFontClear (FcConfig *\fIconfig\fB);
 .PP
 Clears the set of application-specific fonts.
 If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 17294f3..212d686 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigBuildFonts" "3" "10 1月 2013" "" ""
+.TH "FcConfigBuildFonts" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigBuildFonts \- Build font database
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Builds the set of available fonts for the given configuration. Note that
 any changes to the configuration after this call have indeterminate effects.
 Returns FcFalse if this operation runs out of memory.
 If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index ea27c10..978faf7 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigCreate" "3" "10 1月 2013" "" ""
+.TH "FcConfigCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigCreate \- Create a configuration
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcConfig * FcConfigCreate (void\fI\fB);
 .SH "DESCRIPTION"
 .PP
 Creates an empty configuration.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 31f5f01..3369340 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigDestroy" "3" "10 1月 2013" "" ""
+.TH "FcConfigDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigDestroy \- Destroy a configuration
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Decrements the config reference count. If all references are gone, destroys
 the configuration and any data associated with it.
 Note that calling this function with the return from FcConfigGetCurrent will
 cause a new configuration to be created for use as current configuration.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index fec12bb..c0711dd 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigEnableHome" "3" "10 1月 2013" "" ""
+.TH "FcConfigEnableHome" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigEnableHome \- controls use of the home directory.
 .SH SYNOPSIS
@@ -15,6 +15,3 @@ files which are specified relative to the user's home directory (using the ~
 notation in the configuration). When \fIenable\fR is
 FcFalse, then all use of the home directory in these contexts will be
 disabled. The previous setting of the value is returned.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index da06ed8..c48dc34 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigFilename" "3" "10 1月 2013" "" ""
+.TH "FcConfigFilename" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigFilename \- Find a config file
 .SH SYNOPSIS
@@ -21,6 +21,3 @@ refers to a file in the current users home directory. Otherwise if the name
 doesn't start with '/', it refers to a file in the default configuration
 directory; the built-in default directory can be overridden with the
 FONTCONFIG_PATH environment variable.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 08e619b..6065e41 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetBlanks" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetBlanks" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigGetBlanks \- Get config blanks
 .SH SYNOPSIS
@@ -15,6 +15,3 @@ blanks were present in the configuration, this function will return 0.
 The returned FcBlanks object if not NULL, is valid as long as the owning
 FcConfig is alive.
 If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 4409973..bb3c931 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetCache" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetCache" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigGetCache \- DEPRECATED used to return per-user cache filename
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcChar8 * FcConfigGetCache (FcConfig *\fIconfig\fB);
 .PP
 With fontconfig no longer using per-user cache files, this function now
 simply returns NULL to indicate that no per-user file exists.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index a58f37e..7a98be5 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetCacheDirs" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetCacheDirs" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigGetCacheDirs \- return the list of directories searched for cache files
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ FcStrList * FcConfigGetCacheDirs (const FcConfig *\fIconfig\fB);
 all of the directories that fontconfig will search when attempting to load a
 cache file for a font directory.
 If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index e9b3a97..0eba41d 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetConfigDirs" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetConfigDirs" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigGetConfigDirs \- Get config directories
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcStrList * FcConfigGetConfigDirs (FcConfig *\fIconfig\fB);
 Returns the list of font directories specified in the configuration files
 for \fIconfig\fR\&. Does not include any subdirectories.
 If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 7bbe9d3..6e8f2ad 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetConfigFiles" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetConfigFiles" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigGetConfigFiles \- Get config files
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcStrList * FcConfigGetConfigFiles (FcConfig *\fIconfig\fB);
 .PP
 Returns the list of known configuration files used to generate \fIconfig\fR\&.
 If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index ac223da..9fef8fd 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetCurrent" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetCurrent" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigGetCurrent \- Return current configuration
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcConfig * FcConfigGetCurrent (void\fI\fB);
 .SH "DESCRIPTION"
 .PP
 Returns the current default configuration.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 91d1d0b..46393d9 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetFontDirs" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetFontDirs" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigGetFontDirs \- Get font directories
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Returns the list of font directories in \fIconfig\fR\&. This includes the
 configured font directories along with any directories below those in the
 filesystem.
 If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index c34b5b8..db360e9 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetFonts" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetFonts" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigGetFonts \- Get config font set
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Returns one of the two sets of fonts from the configuration as specified
 by \fIset\fR\&. This font set is owned by the library and must
 not be modified or freed.
 If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 40acf02..2e40361 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigGetRescanInterval" "3" "10 1月 2013" "" ""
+.TH "FcConfigGetRescanInterval" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigGetRescanInterval \- Get config rescan interval
 .SH SYNOPSIS
@@ -15,6 +15,3 @@ seconds) specified in \fIconfig\fR\&. The configuration is checked during
 a call to FcFontList when this interval has passed since the last check.
 An interval setting of zero disables automatic checks.
 If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigGetSysRoot.3 b/doc/FcConfigGetSysRoot.3
new file mode 100644 (file)
index 0000000..45b7a15
--- /dev/null
@@ -0,0 +1,16 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcConfigGetSysRoot" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcConfigGetSysRoot \- Obtain the system root directory
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+const FcChar8 * FcConfigGetSysRoot (const FcConfig *\fIconfig\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+Obtrains the system root directory in 'config' if available.
+.SH "SINCE"
+.PP
+version 2.10.92
index 3aa6620..153218a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigHome" "3" "10 1月 2013" "" ""
+.TH "FcConfigHome" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigHome \- return the current home directory.
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcChar8 * FcConfigHome (void\fI\fB);
 Return the current user's home directory, if it is available, and if using it
 is enabled, and NULL otherwise.
 See also \fBFcConfigEnableHome\fR).
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index be015f5..0c16ea0 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigParseAndLoad" "3" "10 1月 2013" "" ""
+.TH "FcConfigParseAndLoad" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigParseAndLoad \- load a configuration file
 .SH SYNOPSIS
@@ -16,6 +16,3 @@ and parsed. If 'complain' is FcFalse, no warning will be displayed if
 \&'file' does not exist. Error and warning messages will be output to stderr.
 Returns FcFalse if some error occurred while loading the file, either a
 parse error, semantic error or allocation failure. Otherwise returns FcTrue.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 49bf72d..34215ab 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigReference" "3" "10 1月 2013" "" ""
+.TH "FcConfigReference" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigReference \- Increment config reference count
 .SH SYNOPSIS
@@ -16,6 +16,3 @@ If \fIconfig\fR is NULL, the current configuration is used.
 In that case this function will be similar to FcConfigGetCurrent() except that
 it increments the reference count before returning and the user is responsible
 for destroying the configuration when not needed anymore.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index abe0092..56be29f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigSetCurrent" "3" "10 1月 2013" "" ""
+.TH "FcConfigSetCurrent" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigSetCurrent \- Set configuration as default
 .SH SYNOPSIS
@@ -11,7 +11,5 @@ FcBool FcConfigSetCurrent (FcConfig *\fIconfig\fB);
 .SH "DESCRIPTION"
 .PP
 Sets the current default configuration to \fIconfig\fR\&. Implicitly calls
-FcConfigBuildFonts if necessary, returning FcFalse if that call fails.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
+FcConfigBuildFonts if necessary, and FcConfigReference() to inrease the reference count
+in \fIconfig\fR since 2.12.0, returning FcFalse if that call fails.
index eb4823a..7dbf59f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigSetRescanInterval" "3" "10 1月 2013" "" ""
+.TH "FcConfigSetRescanInterval" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigSetRescanInterval \- Set config rescan interval
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Sets the rescan interval. Returns FcFalse if the interval cannot be set (due
 to allocation failure). Otherwise returns FcTrue.
 An interval setting of zero disables automatic checks.
 If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcConfigSetSysRoot.3 b/doc/FcConfigSetSysRoot.3
new file mode 100644 (file)
index 0000000..fb1efa6
--- /dev/null
@@ -0,0 +1,19 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcConfigSetSysRoot" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcConfigSetSysRoot \- Set the system root directory
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+void FcConfigSetSysRoot (FcConfig *\fIconfig\fB, const FcChar8 *\fIsysroot\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+Set 'sysroot' as the system root directory. fontconfig prepend 'sysroot'
+to the cache directories in order to allow people to generate caches at
+the build time. Note that this causes changing current config. i.e.
+this function calls FcConfigSetCurrent() internally.
+.SH "SINCE"
+.PP
+version 2.10.92
index 25eef9c..1818595 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigSubstitute" "3" "10 1月 2013" "" ""
+.TH "FcConfigSubstitute" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigSubstitute \- Execute substitutions
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcConfigSubstitute (FcConfig *\fIconfig\fB, FcPattern *\fIp\fB, FcMatchKi
 Calls FcConfigSubstituteWithPat setting p_pat to NULL. Returns FcFalse
 if the substitution cannot be performed (due to allocation failure). Otherwise returns FcTrue.
 If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 667b70c..2324b87 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigSubstituteWithPat" "3" "10 1月 2013" "" ""
+.TH "FcConfigSubstituteWithPat" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigSubstituteWithPat \- Execute substitutions
 .SH SYNOPSIS
@@ -16,6 +16,3 @@ if \fIkind\fR is FcMatchFont, those tagged as font operations are applied and
 p_pat is used for <test> elements with target=pattern. Returns FcFalse
 if the substitution cannot be performed (due to allocation failure). Otherwise returns FcTrue.
 If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 9fe3b54..4ee810f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcConfigUptoDate" "3" "10 1月 2013" "" ""
+.TH "FcConfigUptoDate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcConfigUptoDate \- Check timestamps on config files
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcConfigUptoDate (FcConfig *\fIconfig\fB);
 Checks all of the files related to \fIconfig\fR and returns
 whether any of them has been modified since the configuration was created.
 If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 3945a71..ce76764 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDefaultSubstitute" "3" "10 1月 2013" "" ""
+.TH "FcDefaultSubstitute" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcDefaultSubstitute \- Perform default substitutions in a pattern
 .SH SYNOPSIS
@@ -22,6 +22,3 @@ Patterns without a specified style or slant are set to Roman
 Patterns without a specified pixel size are given one computed from any
 specified point size (default 12), dpi (default 75) and scale (default 1).
 .PP
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index cc9040d..600b815 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheClean" "3" "10 1月 2013" "" ""
+.TH "FcDirCacheClean" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcDirCacheClean \- This tries to clean up the cache directory of cache_dir.This returns FcTrue if the operation is successfully complete. otherwise FcFalse.
 .SH SYNOPSIS
@@ -10,6 +10,6 @@ FcBool FcDirCacheClean (const FcChar8 *\fIcache_dir\fB, FcBool\fIverbose\fB);
 .fi\fR
 .SH "DESCRIPTION"
 .PP
-.SH "VERSION"
+.SH "SINCE"
 .PP
-Fontconfig version 2.10.91
+version 2.9.91
index b003d84..c10d00b 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheLoad" "3" "10 1月 2013" "" ""
+.TH "FcDirCacheLoad" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcDirCacheLoad \- load a directory cache
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Loads the cache related to \fIdir\fR\&. If no cache file
 exists, returns NULL. The name of the cache file is returned in
 \fIcache_file\fR, unless that is NULL. See also
 FcDirCacheRead.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 19ebf76..86b8f65 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheLoadFile" "3" "10 1月 2013" "" ""
+.TH "FcDirCacheLoadFile" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcDirCacheLoadFile \- load a cache file
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcCache * FcDirCacheLoadFile (const FcChar8 *\fIcache_file\fB, struct stat *\fIf
 This function loads a directory cache from
 \fIcache_file\fR\&. If \fIfile_stat\fR is
 non-NULL, it will be filled with the results of stat(2) on the cache file.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index a16213d..74c8112 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheRead" "3" "10 1月 2013" "" ""
+.TH "FcDirCacheRead" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcDirCacheRead \- read or construct a directory cache
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ This returns a cache for \fIdir\fR\&. If
 \fIforce\fR is FcFalse, then an existing, valid cache file
 will be used. Otherwise, a new cache will be created by scanning the
 directory and that returned.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcDirCacheRescan.3 b/doc/FcDirCacheRescan.3
new file mode 100644 (file)
index 0000000..280ecdd
--- /dev/null
@@ -0,0 +1,17 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcDirCacheRescan" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcDirCacheRescan \- Re-scan a directory cache
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+FcCache * FcDirCacheRescan (const FcChar8 *\fIdir\fB, FcConfig *\fIconfig\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+Re-scan directories only at \fIdir\fR and update the cache.
+returns NULL if failed.
+.SH "SINCE"
+.PP
+version 2.11.1
index 980481e..0e1911a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheUnlink" "3" "10 1月 2013" "" ""
+.TH "FcDirCacheUnlink" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcDirCacheUnlink \- Remove all caches related to dir
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Scans the cache directories in \fIconfig\fR, removing any
 instances of the cache file for \fIdir\fR\&. Returns FcFalse
 when some internal error occurs (out of memory, etc). Errors actually
 unlinking any files are ignored.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 109f475..02e638f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheUnload" "3" "10 1月 2013" "" ""
+.TH "FcDirCacheUnload" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcDirCacheUnload \- unload a cache file
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcDirCacheUnload (FcCache *\fIcache\fB);
 .PP
 This function dereferences \fIcache\fR\&. When no other
 references to it remain, all memory associated with the cache will be freed.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 35a4c42..a60a8c8 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirCacheValid" "3" "10 1月 2013" "" ""
+.TH "FcDirCacheValid" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcDirCacheValid \- check directory cache
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcDirCacheValid (const FcChar8 *\fIdir\fB);
 .PP
 Returns FcTrue if \fIdir\fR has an associated valid cache
 file, else returns FcFalse
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 3a56763..3e95f5e 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirSave" "3" "10 1月 2013" "" ""
+.TH "FcDirSave" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcDirSave \- DEPRECATED: formerly used to save a directory cache
 .SH SYNOPSIS
@@ -15,6 +15,3 @@ per-directory cache file for \fIdir\fR and populates it
 with the fonts in \fIset\fR and subdirectories in
 \fIdirs\fR\&. All of this functionality is now automatically
 managed by FcDirCacheLoad and FcDirCacheRead.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 4c91e1c..a91a928 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcDirScan" "3" "10 1月 2013" "" ""
+.TH "FcDirScan" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcDirScan \- scan a font directory without caching it
 .SH SYNOPSIS
@@ -16,6 +16,3 @@ entire directory and adds all fonts found to \fIset\fR\&.
 Any subdirectories found are added to \fIdirs\fR\&. Calling
 this function does not create any cache files. Use FcDirCacheRead() if
 caching is desired.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index acb01ef..a5cd70a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFileIsDir" "3" "10 1月 2013" "" ""
+.TH "FcFileIsDir" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFileIsDir \- check whether a file is a directory
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcFileIsDir (const FcChar8 *\fIfile\fB);
 .PP
 Returns FcTrue if \fIfile\fR is a directory, otherwise
 returns FcFalse.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index ce06acc..7a8f834 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFileScan" "3" "10 1月 2013" "" ""
+.TH "FcFileScan" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFileScan \- scan a font file
 .SH SYNOPSIS
@@ -21,6 +21,3 @@ equivalent ISO Latin-1) encoding as those are not usable by Unicode-based
 applications. The configuration can ignore fonts based on filename or
 contents of the font file itself. Returns FcFalse if any of the fonts cannot be
 added (due to allocation failure). Otherwise returns FcTrue.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 76d3902..19c960b 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFini" "3" "10 1月 2013" "" ""
+.TH "FcFini" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFini \- finalize fontconfig library
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Frees all data structures allocated by previous calls to fontconfig
 functions. Fontconfig returns to an uninitialized state, requiring a
 new call to one of the FcInit functions before any other fontconfig
 function may be called.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 5ecafef..78f08a3 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontList" "3" "10 1月 2013" "" ""
+.TH "FcFontList" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFontList \- List fonts
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Selects fonts matching \fIp\fR, creates patterns from those fonts containing
 only the objects in \fIos\fR and returns the set of unique such patterns.
 If \fIconfig\fR is NULL, the default configuration is checked
 to be up to date, and used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 8aa9451..9f31b49 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontMatch" "3" "10 1月 2013" "" ""
+.TH "FcFontMatch" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFontMatch \- Return best font
 .SH SYNOPSIS
@@ -18,6 +18,3 @@ pattern. This function should be called only after
 \fBFcDefaultSubstitute\fR have been called for
 \fIp\fR; otherwise the results will not be correct.
 If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 30720e0..6b4282f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontRenderPrepare" "3" "10 1月 2013" "" ""
+.TH "FcFontRenderPrepare" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFontRenderPrepare \- Prepare pattern for loading font file
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Creates a new pattern consisting of elements of \fIfont\fR not appearing
 in \fIpat\fR, elements of \fIpat\fR not appearing in \fIfont\fR and the best matching
 value from \fIpat\fR for elements appearing in both. The result is passed to
 FcConfigSubstituteWithPat with \fIkind\fR FcMatchFont and then returned.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index f254ae6..f9722fe 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetAdd" "3" "10 1月 2013" "" ""
+.TH "FcFontSetAdd" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFontSetAdd \- Add to a font set
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcFontSetAdd (FcFontSet *\fIs\fB, FcPattern *\fIfont\fB);
 Adds a pattern to a font set. Note that the pattern is not copied before
 being inserted into the set. Returns FcFalse if the pattern cannot be
 inserted into the set (due to allocation failure). Otherwise returns FcTrue.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 0672914..83bd591 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetCreate" "3" "10 1月 2013" "" ""
+.TH "FcFontSetCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFontSetCreate \- Create a font set
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcFontSet * FcFontSetCreate (void\fI\fB);
 .SH "DESCRIPTION"
 .PP
 Creates an empty font set.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 32e6a70..37f08f7 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetDestroy" "3" "10 1月 2013" "" ""
+.TH "FcFontSetDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFontSetDestroy \- Destroy a font set
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcFontSetDestroy (FcFontSet *\fIs\fB);
 .PP
 Destroys a font set. Note that this destroys any referenced patterns as
 well.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 37b7d4e..31ae257 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetList" "3" "10 1月 2013" "" ""
+.TH "FcFontSetList" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFontSetList \- List fonts from a set of font sets
 .SH SYNOPSIS
@@ -16,6 +16,3 @@ fonts containing only the objects in \fIobject_set\fR and returns
 the set of unique such patterns.
 If \fIconfig\fR is NULL, the default configuration is checked
 to be up to date, and used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 93c3efa..8494f86 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetMatch" "3" "10 1月 2013" "" ""
+.TH "FcFontSetMatch" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFontSetMatch \- Return the best font from a set of font sets
 .SH SYNOPSIS
@@ -19,6 +19,3 @@ pattern. This function should be called only after
 \fIpattern\fR; otherwise the results will not be correct.
 If \fIconfig\fR is NULL, the current configuration is used.
 Returns NULL if an error occurs during this process.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 98419fc..36ee13f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetPrint" "3" "10 1月 2013" "" ""
+.TH "FcFontSetPrint" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFontSetPrint \- Print a set of patterns to stdout
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ This function is useful for diagnosing font related issues, printing the
 complete contents of every pattern in \fIset\fR\&. The format
 of the output is designed to be of help to users and developers, and may
 change at any time.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 1734c23..41b83f1 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetSort" "3" "10 1月 2013" "" ""
+.TH "FcFontSetSort" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFontSetSort \- Add to a font set
 .SH SYNOPSIS
@@ -28,6 +28,3 @@ modify these patterns. Instead, they should be passed, along with
 \fBFcFontRenderPrepare\fR which combines them into a complete pattern.
 .PP
 The FcFontSet returned by FcFontSetSort is destroyed by calling FcFontSetDestroy.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index bd8eaca..d54c97a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSetSortDestroy" "3" "10 1月 2013" "" ""
+.TH "FcFontSetSortDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFontSetSortDestroy \- DEPRECATED destroy a font set
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ This function is DEPRECATED. \fBFcFontSetSortDestroy\fR
 destroys \fIset\fR by calling
 \fBFcFontSetDestroy\fR\&. Applications should use
 \fBFcFontSetDestroy\fR directly instead.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 376a67c..2541608 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFontSort" "3" "10 1月 2013" "" ""
+.TH "FcFontSort" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFontSort \- Return list of matching fonts
 .SH SYNOPSIS
@@ -24,6 +24,3 @@ modify these patterns. Instead, they should be passed, along with \fIp\fR to
 .PP
 The FcFontSet returned by FcFontSort is destroyed by calling FcFontSetDestroy.
 If \fIconfig\fR is NULL, the current configuration is used.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 007a48d..7e139cd 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFreeTypeCharIndex" "3" "10 1月 2013" "" ""
+.TH "FcFreeTypeCharIndex" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFreeTypeCharIndex \- map Unicode to glyph id
 .SH SYNOPSIS
@@ -16,6 +16,3 @@ several possible underlying encoding tables to work around broken fonts.
 As a result, this function isn't designed to be used in performance
 sensitive areas; results from this function are intended to be cached by
 higher level functions.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 64237f5..1afde0c 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFreeTypeCharSet" "3" "10 1月 2013" "" ""
+.TH "FcFreeTypeCharSet" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFreeTypeCharSet \- compute Unicode coverage
 .SH SYNOPSIS
@@ -15,6 +15,3 @@ Scans a FreeType face and returns the set of encoded Unicode chars. This scans
 several encoding tables to build as complete a list as possible. 
 If 'blanks' is not 0, the glyphs in the font are examined and any blank glyphs
 not in 'blanks' are not placed in the returned FcCharSet.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 354daee..7853432 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFreeTypeCharSetAndSpacing" "3" "10 1月 2013" "" ""
+.TH "FcFreeTypeCharSetAndSpacing" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFreeTypeCharSetAndSpacing \- compute Unicode coverage and spacing type
 .SH SYNOPSIS
@@ -21,6 +21,3 @@ font, one of FC_MONO for a font where all glyphs have the same width,
 FC_DUAL, where the font has glyphs in precisely two widths, one twice as
 wide as the other, or FC_PROPORTIONAL where the font has glyphs of many
 widths.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index c09c7b1..b633df7 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFreeTypeQuery" "3" "10 1月 2013" "" ""
+.TH "FcFreeTypeQuery" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFreeTypeQuery \- compute pattern from font file (and index)
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcPattern * FcFreeTypeQuery (const FcChar8 *\fIfile\fB, int \fIid\fB, FcBlanks *
 .PP
 Constructs a pattern representing the 'id'th font in 'file'. The number
 of fonts in 'file' is returned in 'count'.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 95945d9..7435527 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcFreeTypeQueryFace" "3" "10 1月 2013" "" ""
+.TH "FcFreeTypeQueryFace" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcFreeTypeQueryFace \- compute pattern from FT_Face
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcPattern * FcFreeTypeQueryFace (const FT_Face \fIface\fB, const FcChar8 *\fIfil
 .PP
 Constructs a pattern representing 'face'. 'file' and 'id' are used solely as
 data for pattern elements (FC_FILE, FC_INDEX and sometimes FC_FAMILY).
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index ac26458..65d11cd 100644 (file)
@@ -1,18 +1,18 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcGetDefaultLangs" "3" "10 1月 2013" "" ""
+.TH "FcGetDefaultLangs" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcGetDefaultLangs \- Get the default languages list
 .SH SYNOPSIS
 .nf
 \fB#include <fontconfig/fontconfig.h>
 .sp
-FcStrSet * FcGetDefaultLangs (void\fIls\fB);
+FcStrSet * FcGetDefaultLangs (void\fI\fB);
 .fi\fR
 .SH "DESCRIPTION"
 .PP
 Returns a string set of the default languages according to the environment variables on the system.
 This function looks for them in order of FC_LANG, LC_ALL, LC_CTYPE and LANG then.
 If there are no valid values in those environment variables, "en" will be set as fallback.
-.SH "VERSION"
+.SH "SINCE"
 .PP
-Fontconfig version 2.10.91
+version 2.9.91
index 4de2e0a..1fbd516 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcGetLangs" "3" "10 1月 2013" "" ""
+.TH "FcGetLangs" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcGetLangs \- Get list of languages
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcStrSet * FcGetLangs (void\fI\fB);
 .SH "DESCRIPTION"
 .PP
 Returns a string set of all known languages.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index d8d3129..a4bbf00 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcGetVersion" "3" "10 1月 2013" "" ""
+.TH "FcGetVersion" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcGetVersion \- library version number
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ int FcGetVersion (void\fI\fB);
 .SH "DESCRIPTION"
 .PP
 Returns the version number of the library.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 65d1d5d..8d68d7a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcInit" "3" "10 1月 2013" "" ""
+.TH "FcInit" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcInit \- initialize fontconfig library
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Loads the default configuration file and the fonts referenced therein and
 sets the default configuration to that result. Returns whether this
 process succeeded or not. If the default configuration has already
 been loaded, this routine does nothing and returns FcTrue.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index ccf6e7f..adbe2bf 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcInitBringUptoDate" "3" "10 1月 2013" "" ""
+.TH "FcInitBringUptoDate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcInitBringUptoDate \- reload configuration files if needed
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Checks the rescan interval in the default configuration, checking the
 configuration if the interval has passed and reloading the configuration if
 when any changes are detected. Returns FcFalse if the configuration cannot
 be reloaded (see FcInitReinitialize). Otherwise returns FcTrue.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index a0c3956..64915a8 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcInitLoadConfig" "3" "10 1月 2013" "" ""
+.TH "FcInitLoadConfig" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcInitLoadConfig \- load configuration
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcConfig * FcInitLoadConfig (void\fI\fB);
 .PP
 Loads the default configuration file and returns the resulting configuration.
 Does not load any font information.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 39549c5..a8c51c2 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcInitLoadConfigAndFonts" "3" "10 1月 2013" "" ""
+.TH "FcInitLoadConfigAndFonts" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcInitLoadConfigAndFonts \- load configuration and font data
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcConfig * FcInitLoadConfigAndFonts (void\fI\fB);
 .PP
 Loads the default configuration file and builds information about the
 available fonts. Returns the resulting configuration.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 92a5fc4..c02fb11 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcInitReinitialize" "3" "10 1月 2013" "" ""
+.TH "FcInitReinitialize" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcInitReinitialize \- re-initialize library
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Forces the default configuration file to be reloaded and resets the default
 configuration. Returns FcFalse if the configuration cannot be reloaded (due
 to configuration file errors, allocation failures or other issues) and leaves the
 existing configuration unchanged. Otherwise returns FcTrue.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index ecc028f..c75046b 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcIsLower" "3" "10 1月 2013" "" ""
+.TH "FcIsLower" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcIsLower \- check for lower case ASCII character
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcIsLower (FcChar8\fIc\fB);
 .PP
 This macro checks whether \fIc\fR is an lower case ASCII
 letter.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 19761b2..3482228 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcIsUpper" "3" "10 1月 2013" "" ""
+.TH "FcIsUpper" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcIsUpper \- check for upper case ASCII character
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcIsUpper (FcChar8\fIc\fB);
 .PP
 This macro checks whether \fIc\fR is a upper case ASCII
 letter.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 35c8c37..8d79832 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangGetCharSet" "3" "10 1月 2013" "" ""
+.TH "FcLangGetCharSet" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcLangGetCharSet \- Get character map for a language
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ const FcCharSet * FcLangGetCharSet (const FcChar8 *\fIlang\fB);
 .SH "DESCRIPTION"
 .PP
 Returns the FcCharMap for a language.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 092c1fc..0963cb3 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangNormalize" "3" "10 1月 2013" "" ""
+.TH "FcLangNormalize" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcLangNormalize \- Normalize the language string
 .SH SYNOPSIS
@@ -11,6 +11,6 @@ FcChar8 * FcLangNormalize (const FcChar8 *\fIlang\fB);
 .SH "DESCRIPTION"
 .PP
 Returns a string to make \fIlang\fR suitable on fontconfig.
-.SH "VERSION"
+.SH "SINCE"
 .PP
-Fontconfig version 2.10.91
+version 2.10.91
index aca8430..e12c4ce 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetAdd" "3" "10 1月 2013" "" ""
+.TH "FcLangSetAdd" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcLangSetAdd \- add a language to a langset
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ FcBool FcLangSetAdd (FcLangSet *\fIls\fB, const FcChar8 *\fIlang\fB);
 \fIlang\fR should be of the form Ll-Tt where Ll is a
 two or three letter language from ISO 639 and Tt is a territory from ISO
 3166.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 6dcd788..193fa01 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetCompare" "3" "10 1月 2013" "" ""
+.TH "FcLangSetCompare" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcLangSetCompare \- compare language sets
 .SH SYNOPSIS
@@ -16,6 +16,3 @@ any language and territory pair, this function returns FcLangEqual. If they
 share a language but differ in which territory that language is for, this
 function returns FcLangDifferentTerritory. If they share no languages in
 common, this function returns FcLangDifferentLang.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 4236d84..294d08d 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetContains" "3" "10 1月 2013" "" ""
+.TH "FcLangSetContains" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcLangSetContains \- check langset subset relation
 .SH SYNOPSIS
@@ -16,6 +16,3 @@ FcBool FcLangSetContains (const FcLangSet *\fIls_a\fB, const FcLangSet *\fIls_b\
 language from \fIls_b\fR if \fIls_a\fR
 has exactly the language, or either the language or
 \fIls_a\fR has no territory.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 40ae962..a67b990 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetCopy" "3" "10 1月 2013" "" ""
+.TH "FcLangSetCopy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcLangSetCopy \- copy a langset object
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcLangSet * FcLangSetCopy (const FcLangSet *\fIls\fB);
 .PP
 \fBFcLangSetCopy\fR creates a new FcLangSet object and
 populates it with the contents of \fIls\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index e6c6bda..72d1ab6 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetCreate" "3" "10 1月 2013" "" ""
+.TH "FcLangSetCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcLangSetCreate \- create a langset object
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcLangSet * FcLangSetCreate (void\fI\fB);
 .SH "DESCRIPTION"
 .PP
 \fBFcLangSetCreate\fR creates a new FcLangSet object.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 70297f7..0d1830b 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetDel" "3" "10 1月 2013" "" ""
+.TH "FcLangSetDel" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcLangSetDel \- delete a language from a langset
 .SH SYNOPSIS
@@ -14,6 +14,6 @@ FcBool FcLangSetDel (FcLangSet *\fIls\fB, const FcChar8 *\fIlang\fB);
 \fIlang\fR should be of the form Ll-Tt where Ll is a
 two or three letter language from ISO 639 and Tt is a territory from ISO
 3166.
-.SH "VERSION"
+.SH "SINCE"
 .PP
-Fontconfig version 2.10.91
+version 2.9.0
index 6ad9ed1..b6d5d85 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetDestroy" "3" "10 1月 2013" "" ""
+.TH "FcLangSetDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcLangSetDestroy \- destroy a langset object
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcLangSetDestroy (FcLangSet *\fIls\fB);
 .PP
 \fBFcLangSetDestroy\fR destroys a FcLangSet object, freeing
 all memory associated with it.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index a2771aa..379406f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetEqual" "3" "10 1月 2013" "" ""
+.TH "FcLangSetEqual" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcLangSetEqual \- test for matching langsets
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcLangSetEqual (const FcLangSet *\fIls_a\fB, const FcLangSet *\fIls_b\fB)
 .PP
 Returns FcTrue if and only if \fIls_a\fR supports precisely
 the same language and territory combinations as \fIls_b\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcLangSetGetLangs.3 b/doc/FcLangSetGetLangs.3
new file mode 100644 (file)
index 0000000..8f201f5
--- /dev/null
@@ -0,0 +1,13 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcLangSetGetLangs" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcLangSetGetLangs \- get the list of languages in the langset
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+FcStrSet * FcLangSetGetLangs (const FcLangSet *\fIls\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+Returns a string set of all languages in \fIlangset\fR\&.
index 0aef116..96e0096 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetHasLang" "3" "10 1月 2013" "" ""
+.TH "FcLangSetHasLang" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcLangSetHasLang \- test langset for language support
 .SH SYNOPSIS
@@ -17,6 +17,3 @@ this function returns FcLangEqual. If \fIls\fR has
 a matching language but differs in which territory that language is for, this
 function returns FcLangDifferentTerritory. If \fIls\fR 
 has no matching language, this function returns FcLangDifferentLang.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index de30b7f..38cd577 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetHash" "3" "10 1月 2013" "" ""
+.TH "FcLangSetHash" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcLangSetHash \- return a hash value for a langset
 .SH SYNOPSIS
@@ -15,6 +15,3 @@ supported by \fIls\fR\&. Any language which equals
 \fIls\fR will have the same result from
 \fBFcLangSetHash\fR\&. However, two langsets with the same hash
 value may not be equal.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 1b7a37f..afa14ec 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetSubtract" "3" "10 1月 2013" "" ""
+.TH "FcLangSetSubtract" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcLangSetSubtract \- Subtract langsets
 .SH SYNOPSIS
@@ -11,6 +11,6 @@ FcLangSet * FcLangSetSubtract (const FcLangSet *\fIls_a\fB, const FcLangSet *\fI
 .SH "DESCRIPTION"
 .PP
 Returns a set including only those languages found in \fIls_a\fR but not in \fIls_b\fR\&.
-.SH "VERSION"
+.SH "SINCE"
 .PP
-Fontconfig version 2.10.91
+version 2.9.0
index cc42e7f..a67f8d3 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcLangSetUnion" "3" "10 1月 2013" "" ""
+.TH "FcLangSetUnion" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcLangSetUnion \- Add langsets
 .SH SYNOPSIS
@@ -11,6 +11,6 @@ FcLangSet * FcLangSetUnion (const FcLangSet *\fIls_a\fB, const FcLangSet *\fIls_
 .SH "DESCRIPTION"
 .PP
 Returns a set including only those languages found in either \fIls_a\fR or \fIls_b\fR\&.
-.SH "VERSION"
+.SH "SINCE"
 .PP
-Fontconfig version 2.10.91
+version 2.9.0
index 61f769b..a396ada 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixCopy" "3" "10 1月 2013" "" ""
+.TH "FcMatrixCopy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcMatrixCopy \- Copy a matrix
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcMatrixCopy (const FcMatrix *\fImatrix\fB);
 .PP
 \fBFcMatrixCopy\fR allocates a new FcMatrix
 and copies \fImat\fR into it.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index fe40127..e757636 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixEqual" "3" "10 1月 2013" "" ""
+.TH "FcMatrixEqual" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcMatrixEqual \- Compare two matrices
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ void FcMatrixEqual (const FcMatrix *\fImatrix1\fB, const FcMatrix *\fImatrix2\fB
 \fBFcMatrixEqual\fR compares \fImatrix1\fR
 and \fImatrix2\fR returning FcTrue when they are equal and
 FcFalse when they are not.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 76a134a..dd2dea1 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixInit" "3" "10 1月 2013" "" ""
+.TH "FcMatrixInit" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcMatrixInit \- initialize an FcMatrix structure
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcMatrixInit (FcMatrix *\fImatrix\fB);
 .PP
 \fBFcMatrixInit\fR initializes \fImatrix\fR
 to the identity matrix.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 896f4a6..4b2754d 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixMultiply" "3" "10 1月 2013" "" ""
+.TH "FcMatrixMultiply" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcMatrixMultiply \- Multiply matrices
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ void FcMatrixMultiply (FcMatrix *\fIresult\fB, const FcMatrix *\fImatrix1\fB, co
 \fBFcMatrixMultiply\fR multiplies
 \fImatrix1\fR and \fImatrix2\fR storing
 the result in \fIresult\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 7f6c730..cceb1a2 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixRotate" "3" "10 1月 2013" "" ""
+.TH "FcMatrixRotate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcMatrixRotate \- Rotate a matrix
 .SH SYNOPSIS
@@ -20,6 +20,3 @@ matrix:
   sin  cos
 .sp
 .fi
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index d7963f7..6d2cb9c 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixScale" "3" "10 1月 2013" "" ""
+.TH "FcMatrixScale" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcMatrixScale \- Scale a matrix
 .SH SYNOPSIS
@@ -20,6 +20,3 @@ the matrix:
    0   dy
 .sp
 .fi
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 70263b5..b3efd51 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcMatrixShear" "3" "10 1月 2013" "" ""
+.TH "FcMatrixShear" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcMatrixShear \- Shear a matrix
 .SH SYNOPSIS
@@ -20,6 +20,3 @@ the matrix:
   sv  1
 .sp
 .fi
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 5f1a127..d84f25f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameConstant" "3" "10 1月 2013" "" ""
+.TH "FcNameConstant" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcNameConstant \- Get the value for a symbolic constant
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcNameConstant (FcChar8 *\fIstring\fB, int *\fIresult\fB);
 .PP
 Returns whether a symbolic constant with name \fIstring\fR is registered,
 placing the value of the constant in \fIresult\fR if present.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index b2832f6..ea3da7a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameGetConstant" "3" "10 1月 2013" "" ""
+.TH "FcNameGetConstant" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcNameGetConstant \- Lookup symbolic constant
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ const FcConstant * FcNameGetConstant (FcChar8 *\fIstring\fB);
 .SH "DESCRIPTION"
 .PP
 Return the FcConstant structure related to symbolic constant \fIstring\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index ef01b41..2308ee1 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameGetObjectType" "3" "10 1月 2013" "" ""
+.TH "FcNameGetObjectType" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcNameGetObjectType \- Lookup an object type
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ const FcObjectType * FcNameGetObjectType (const char *\fIobject\fB);
 .SH "DESCRIPTION"
 .PP
 Return the object type for the pattern element named \fIobject\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index aac6da7..215c5db 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameParse" "3" "10 1月 2013" "" ""
+.TH "FcNameParse" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcNameParse \- Parse a pattern string
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcPattern * FcNameParse (const FcChar8 *\fIname\fB);
 .SH "DESCRIPTION"
 .PP
 Converts \fIname\fR from the standard text format described above into a pattern.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 98ec6d4..a84ea67 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameRegisterConstants" "3" "10 1月 2013" "" ""
+.TH "FcNameRegisterConstants" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcNameRegisterConstants \- Register symbolic constants
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBool FcNameRegisterConstants (const FcConstant *\fIconsts\fB, int \fInconsts\f
 .SH "DESCRIPTION"
 .PP
 Deprecated. Does nothing. Returns FcFalse.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 44b1a5a..df23c61 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameRegisterObjectTypes" "3" "10 1月 2013" "" ""
+.TH "FcNameRegisterObjectTypes" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcNameRegisterObjectTypes \- Register object types
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBool FcNameRegisterObjectTypes (const FcObjectType *\fItypes\fB, int \fIntype\
 .SH "DESCRIPTION"
 .PP
 Deprecated. Does nothing. Returns FcFalse.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index f3223b5..a477e21 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameUnparse" "3" "10 1月 2013" "" ""
+.TH "FcNameUnparse" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcNameUnparse \- Convert a pattern back into a string that can be parsed
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcChar8 * FcNameUnparse (FcPattern *\fIpat\fB);
 Converts the given pattern into the standard text format described above.
 The return value is not static, but instead refers to newly allocated memory
 which should be freed by the caller using free().
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 4b06be8..654714d 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameUnregisterConstants" "3" "10 1月 2013" "" ""
+.TH "FcNameUnregisterConstants" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcNameUnregisterConstants \- Unregister symbolic constants
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBool FcNameUnregisterConstants (const FcConstant *\fIconsts\fB, int \fInconsts
 .SH "DESCRIPTION"
 .PP
 Deprecated. Does nothing. Returns FcFalse.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 6fec367..adef4dd 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcNameUnregisterObjectTypes" "3" "10 1月 2013" "" ""
+.TH "FcNameUnregisterObjectTypes" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcNameUnregisterObjectTypes \- Unregister object types
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBool FcNameUnregisterObjectTypes (const FcObjectType *\fItypes\fB, int \fIntyp
 .SH "DESCRIPTION"
 .PP
 Deprecated. Does nothing. Returns FcFalse.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 9c13a8a..2ba055e 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcObjectSetAdd" "3" "10 1月 2013" "" ""
+.TH "FcObjectSetAdd" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcObjectSetAdd \- Add to an object set
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcObjectSetAdd (FcObjectSet *\fIos\fB, const char *\fIobject\fB);
 .PP
 Adds a property name to the set. Returns FcFalse if the property name cannot be
 inserted into the set (due to allocation failure). Otherwise returns FcTrue.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index e827712..184372d 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcObjectSetBuild" "3" "10 1月 2013" "" ""
+.TH "FcObjectSetBuild" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcObjectSetBuild, FcObjectSetVaBuild, FcObjectSetVapBuild \- Build object set from args
 .SH SYNOPSIS
@@ -17,6 +17,3 @@ void FcObjectSetVapBuild (FcObjectSet *\fIresult\fB, const char *\fIfirst\fB, va
 These build an object set from a null-terminated list of property names.
 FcObjectSetVapBuild is a macro version of FcObjectSetVaBuild which returns
 the result in the \fIresult\fR variable directly.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index cea29af..dee5739 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcObjectSetCreate" "3" "10 1月 2013" "" ""
+.TH "FcObjectSetCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcObjectSetCreate \- Create an object set
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcObjectSet * FcObjectSetCreate (void\fI\fB);
 .SH "DESCRIPTION"
 .PP
 Creates an empty set.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 6245c23..b9a91aa 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcObjectSetDestroy" "3" "10 1月 2013" "" ""
+.TH "FcObjectSetDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcObjectSetDestroy \- Destroy an object set
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ void FcObjectSetDestroy (FcObjectSet *\fIos\fB);
 .SH "DESCRIPTION"
 .PP
 Destroys an object set.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 59de521..a4e4935 100644 (file)
@@ -1,7 +1,7 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternAdd-Type" "3" "10 1月 2013" "" ""
+.TH "FcPatternAdd-Type" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
-FcPatternAddInteger, FcPatternAddDouble, FcPatternAddString, FcPatternAddMatrix, FcPatternAddCharSet, FcPatternAddBool, FcPatternAddFTFace, FcPatternAddLangSet \- Add a typed value to a pattern
+FcPatternAddInteger, FcPatternAddDouble, FcPatternAddString, FcPatternAddMatrix, FcPatternAddCharSet, FcPatternAddBool, FcPatternAddFTFace, FcPatternAddLangSet, FcPatternAddRange \- Add a typed value to a pattern
 .SH SYNOPSIS
 .nf
 \fB#include <fontconfig/fontconfig.h>
@@ -21,6 +21,8 @@ FcBool FcPatternAddBool (FcPattern *\fIp\fB, const char *\fIobject\fB, FcBool \f
 FcBool FcPatternAddFTFace (FcPattern *\fIp\fB, const char *\fIobject\fB, const FT_Face\fIf\fB);
 .sp
 FcBool FcPatternAddLangSet (FcPattern *\fIp\fB, const char *\fIobject\fB, const FcLangSet *\fIl\fB);
+.sp
+FcBool FcPatternAddRange (FcPattern *\fIp\fB, const char *\fIobject\fB, const FcRange *\fIr\fB);
 .fi\fR
 .SH "DESCRIPTION"
 .PP
@@ -28,6 +30,4 @@ These are all convenience functions that insert objects of the specified
 type into the pattern. Use these in preference to FcPatternAdd as they
 will provide compile-time typechecking. These all append values to
 any existing list of values.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
+\fBFcPatternAddRange\fR are available since 2.11.91.
index 4798aff..d0a6b70 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternAdd" "3" "10 1月 2013" "" ""
+.TH "FcPatternAdd" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcPatternAdd \- Add a value to a pattern
 .SH SYNOPSIS
@@ -15,6 +15,3 @@ Adds a single value to the list of values associated with the property named
 existing list, otherwise it is inserted at the beginning. `value' is saved
 (with FcValueSave) when inserted into the pattern so that the library
 retains no reference to any application-supplied data structure.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index c6d0813..9e8bc42 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternAddWeak" "3" "10 1月 2013" "" ""
+.TH "FcPatternAddWeak" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcPatternAddWeak \- Add a value to a pattern with weak binding
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcPatternAddWeak (FcPattern *\fIp\fB, const char *\fIobject\fB, FcValue \
 .PP
 FcPatternAddWeak is essentially the same as FcPatternAdd except that any
 values added to the list have binding \fIweak\fR instead of \fIstrong\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 4ccc300..4a5abc9 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternBuild" "3" "10 1月 2013" "" ""
+.TH "FcPatternBuild" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcPatternBuild, FcPatternVaBuild, FcPatternVapBuild \- Create patterns from arguments
 .SH SYNOPSIS
@@ -41,6 +41,3 @@ varargs value. FcPatternVapBuild is a macro version of FcPatternVaBuild
 which returns its result directly in the \fIresult\fR
 variable.
 .PP
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 3707754..ad3d6f6 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternCreate" "3" "10 1月 2013" "" ""
+.TH "FcPatternCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcPatternCreate \- Create a pattern
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcPattern * FcPatternCreate (void\fI\fB);
 .SH "DESCRIPTION"
 .PP
 Creates a pattern with no properties; used to build patterns from scratch.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index b44deeb..5934dd8 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternDel" "3" "10 1月 2013" "" ""
+.TH "FcPatternDel" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcPatternDel \- Delete a property from a pattern
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcPatternDel (FcPattern *\fIp\fB, const char *\fIobject\fB);
 .PP
 Deletes all values associated with the property `object', returning 
 whether the property existed or not.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index be2f5b3..525c6c5 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternDestroy" "3" "10 1月 2013" "" ""
+.TH "FcPatternDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcPatternDestroy \- Destroy a pattern
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcPatternDestroy (FcPattern *\fIp\fB);
 .PP
 Decrement the pattern reference count. If all references are gone, destroys
 the pattern, in the process destroying all related values.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 6c6cb84..b9d61ab 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternDuplicate" "3" "10 1月 2013" "" ""
+.TH "FcPatternDuplicate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcPatternDuplicate \- Copy a pattern
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcPattern * FcPatternDuplicate (const FcPattern *\fIp\fB);
 Copy a pattern, returning a new pattern that matches
 \fIp\fR\&. Each pattern may be modified without affecting the
 other.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 156feb7..5cb658b 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternEqual" "3" "10 1月 2013" "" ""
+.TH "FcPatternEqual" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcPatternEqual \- Compare patterns
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBool FcPatternEqual (const FcPattern *\fIpa\fB, const FcPattern *\fIpb\fB);
 .SH "DESCRIPTION"
 .PP
 Returns whether \fIpa\fR and \fIpb\fR are exactly alike.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index c87ac44..ef68066 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternEqualSubset" "3" "10 1月 2013" "" ""
+.TH "FcPatternEqualSubset" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcPatternEqualSubset \- Compare portions of patterns
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcPatternEqualSubset (const FcPattern *\fIpa\fB, const FcPattern *\fIpb\f
 .PP
 Returns whether \fIpa\fR and \fIpb\fR have exactly the same values for all of the
 objects in \fIos\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 59b371e..5bdd593 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternFilter" "3" "10 1月 2013" "" ""
+.TH "FcPatternFilter" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcPatternFilter \- Filter the objects of pattern
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Returns a new pattern that only has those objects from
 \fIp\fR that are in \fIos\fR\&.
 If \fIos\fR is NULL, a duplicate of
 \fIp\fR is returned.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 064de00..7040191 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternFormat" "3" "10 1月 2013" "" ""
+.TH "FcPatternFormat" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcPatternFormat \- Format a pattern into a string according to a format specifier
 .SH SYNOPSIS
@@ -203,6 +203,6 @@ FIXME: This converter is not UTF-8 aware yet.
 For example, the format "%{family|downcase|delete( )}\\n" will expand
 to the values of the family element in \fIpattern\fR,
 lower-cased and with spaces removed.
-.SH "VERSION"
+.SH "SINCE"
 .PP
-Fontconfig version 2.10.91
+version 2.9.0
index a1fa07f..d23a3ae 100644 (file)
@@ -1,7 +1,7 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternGet-Type" "3" "10 1月 2013" "" ""
+.TH "FcPatternGet-Type" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
-FcPatternGetInteger, FcPatternGetDouble, FcPatternGetString, FcPatternGetMatrix, FcPatternGetCharSet, FcPatternGetBool, FcPatternGetFTFace, FcPatternGetLangSet \- Return a typed value from a pattern
+FcPatternGetInteger, FcPatternGetDouble, FcPatternGetString, FcPatternGetMatrix, FcPatternGetCharSet, FcPatternGetBool, FcPatternGetFTFace, FcPatternGetLangSet, FcPatternGetRange \- Return a typed value from a pattern
 .SH SYNOPSIS
 .nf
 \fB#include <fontconfig/fontconfig.h>
@@ -18,9 +18,11 @@ FcResult FcPatternGetCharSet (FcPattern *\fIp\fB, const char *\fIobject\fB, int
 .sp
 FcResult FcPatternGetBool (FcPattern *\fIp\fB, const char *\fIobject\fB, int \fIn\fB, FcBool *\fIb\fB);
 .sp
-FcResult FcPatternGetFTFace (FcPattern *\fIp\fB, const char *\fIobject\fB, int \fIn\fB);
+FcResult FcPatternGetFTFace (FcPattern *\fIp\fB, const char *\fIobject\fB, int \fIn\fB, FT_Face *\fIf\fB);
 .sp
-FcResult FcPatternGetLangSet (FcPattern *\fIp\fB, const char *\fIobject\fB, FT_Face *\fIf\fB);
+FcResult FcPatternGetLangSet (FcPattern *\fIp\fB, const char *\fIobject\fB, int \fIn\fB, FcLangSet **\fIl\fB);
+.sp
+FcResult FcPatternGetRange (FcPattern *\fIp\fB, const char *\fIobject\fB, int \fIn\fB, FcRange **\fIr\fB);
 .fi\fR
 .SH "DESCRIPTION"
 .PP
@@ -29,6 +31,4 @@ returned data is of the expected type. They return FcResultTypeMismatch if
 this is not the case. Note that these (like FcPatternGet) do not make a
 copy of any data structure referenced by the return value. Use these
 in preference to FcPatternGet to provide compile-time typechecking.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
+\fBFcPatternGetRange\fR are available since 2.11.91.
index a96ef21..4cd50ac 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternGet" "3" "10 1月 2013" "" ""
+.TH "FcPatternGet" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcPatternGet \- Return a value from a pattern
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Returns in \fIv\fR the \fIid\fR\&'th value
 associated with the property \fIobject\fR\&.
 The value returned is not a copy, but rather refers to the data stored
 within the pattern directly. Applications must not free this value.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 99595cc..24da813 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternHash" "3" "10 1月 2013" "" ""
+.TH "FcPatternHash" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcPatternHash \- Compute a pattern hash value
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcChar32 FcPatternHash (const FcPattern *\fIp\fB);
 .PP
 Returns a 32-bit number which is the same for any two patterns which are
 equal.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index f4197ef..3d0c624 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternPrint" "3" "10 1月 2013" "" ""
+.TH "FcPatternPrint" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcPatternPrint \- Print a pattern for debugging
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ void FcPatternPrint (const FcPattern *\fIp\fB);
 Prints an easily readable version of the pattern to stdout. There is
 no provision for reparsing data in this format, it's just for diagnostics
 and debugging.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 9028bee..036df2b 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternReference" "3" "10 1月 2013" "" ""
+.TH "FcPatternReference" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcPatternReference \- Increment pattern reference count
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcPatternReference (FcPattern *\fIp\fB);
 .PP
 Add another reference to \fIp\fR\&. Patterns are freed only
 when the reference count reaches zero.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index f56f4c5..50007e9 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcPatternRemove" "3" "10 1月 2013" "" ""
+.TH "FcPatternRemove" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcPatternRemove \- Remove one object of the specified type from the pattern
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcPatternRemove (FcPattern *\fIp\fB, const char *\fIobject\fB, int \fIid\
 .PP
 Removes the value associated with the property `object' at position `id', returning 
 whether the property existed and had a value at that position or not.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcRangeCopy.3 b/doc/FcRangeCopy.3
new file mode 100644 (file)
index 0000000..7b6acc1
--- /dev/null
@@ -0,0 +1,17 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcRangeCopy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcRangeCopy \- Copy a range object
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+FcRange * FcRangeCopy (const FcRange *\fIrange\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+\fBFcRangeCopy\fR creates a new FcRange object and
+populates it with the contents of \fIrange\fR\&.
+.SH "SINCE"
+.PP
+version 2.11.91
diff --git a/doc/FcRangeCreateDouble.3 b/doc/FcRangeCreateDouble.3
new file mode 100644 (file)
index 0000000..554f756
--- /dev/null
@@ -0,0 +1,17 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcRangeCreateDouble" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcRangeCreateDouble \- create a range object for double
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+FcRange * FcRangeCreateDouble (double\fIbegin\fB, double\fIend\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+\fBFcRangeCreateDouble\fR creates a new FcRange object with
+double sized value.
+.SH "SINCE"
+.PP
+version 2.11.91
diff --git a/doc/FcRangeCreateInteger.3 b/doc/FcRangeCreateInteger.3
new file mode 100644 (file)
index 0000000..8ab4f60
--- /dev/null
@@ -0,0 +1,17 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcRangeCreateInteger" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcRangeCreateInteger \- create a range object for integer
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+FcRange * FcRangeCreateInteger (int\fIbegin\fB, int\fIend\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+\fBFcRangeCreateInteger\fR creates a new FcRange object with
+integer sized value.
+.SH "SINCE"
+.PP
+version 2.11.91
diff --git a/doc/FcRangeDestroy.3 b/doc/FcRangeDestroy.3
new file mode 100644 (file)
index 0000000..201de2a
--- /dev/null
@@ -0,0 +1,17 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcRangeDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcRangeDestroy \- destroy a range object
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+void FcRangeDestroy (FcRange *\fIrange\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+\fBFcRangeDestroy\fR destroys a FcRange object, freeing
+all memory associated with it.
+.SH "SINCE"
+.PP
+version 2.11.91
diff --git a/doc/FcRangeGetDouble.3 b/doc/FcRangeGetDouble.3
new file mode 100644 (file)
index 0000000..a39d55f
--- /dev/null
@@ -0,0 +1,16 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcRangeGetDouble" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcRangeGetDouble \- Get the range in double
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+FcBool FcRangeGetDouble (const FcRange *\fIrange\fB, double *\fIbegin\fB, double *\fIend\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+Returns in \fIbegin\fR and \fIend\fR as the range.
+.SH "SINCE"
+.PP
+version 2.11.91
index a183a90..81f8ccb 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrBasename" "3" "10 1月 2013" "" ""
+.TH "FcStrBasename" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrBasename \- last component of filename
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcChar8 * FcStrBasename (const FcChar8 *\fIfile\fB);
 Returns the filename of \fIfile\fR stripped of any leading
 directory names. This is returned in newly allocated storage which should
 be freed when no longer needed.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 2bc0b2b..82f4b13 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrCmp" "3" "10 1月 2013" "" ""
+.TH "FcStrCmp" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrCmp \- compare UTF-8 strings
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ int FcStrCmp (const FcChar8 *\fIs1\fB, const FcChar8 *\fIs2\fB);
 .PP
 Returns the usual <0, 0, >0 result of comparing
 \fIs1\fR and \fIs2\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index c27c645..9800fd2 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrCmpIgnoreCase" "3" "10 1月 2013" "" ""
+.TH "FcStrCmpIgnoreCase" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrCmpIgnoreCase \- compare UTF-8 strings ignoring case
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ int FcStrCmpIgnoreCase (const FcChar8 *\fIs1\fB, const FcChar8 *\fIs2\fB);
 Returns the usual <0, 0, >0 result of comparing
 \fIs1\fR and \fIs2\fR\&. This test is
 case-insensitive for all proper UTF-8 encoded strings.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 731e9bc..e1aa71f 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrCopy" "3" "10 1月 2013" "" ""
+.TH "FcStrCopy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrCopy \- duplicate a string
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcChar8 * FcStrCopy (const FcChar8 *\fIs\fB);
 Allocates memory, copies \fIs\fR and returns the resulting
 buffer. Yes, this is \fBstrdup\fR, but that function isn't
 available on every platform.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 996a7bc..c88b411 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrCopyFilename" "3" "10 1月 2013" "" ""
+.TH "FcStrCopyFilename" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrCopyFilename \- create a complete path from a filename
 .SH SYNOPSIS
@@ -18,6 +18,3 @@ of '/' characters are converted to a single '/', and names containing the
 current directory '.' or parent directory '..' are correctly reconstructed.
 Returns NULL if '~' is the leading character and HOME is unset or disabled
 (see \fBFcConfigEnableHome\fR).
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 8a6f695..9d03920 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrDirname" "3" "10 1月 2013" "" ""
+.TH "FcStrDirname" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrDirname \- directory part of filename
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcChar8 * FcStrDirname (const FcChar8 *\fIfile\fB);
 Returns the directory containing \fIfile\fR\&. This
 is returned in newly allocated storage which should be freed when no longer
 needed.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 9b83457..7db42c9 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrDowncase" "3" "10 1月 2013" "" ""
+.TH "FcStrDowncase" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrDowncase \- create a lower case translation of a string
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcChar8 * FcStrDowncase (const FcChar8 *\fIs\fB);
 .PP
 Allocates memory, copies \fIs\fR, converting upper case
 letters to lower case and returns the allocated buffer.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 910c790..8a02e58 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrFree" "3" "10 1月 2013" "" ""
+.TH "FcStrFree" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrFree \- free a string
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcStrFree (FcChar8 *\fIs\fB);
 .PP
 This is just a wrapper around free(3) which helps track memory usage of
 strings within the fontconfig library.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index df3cc9e..de4a25a 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrListCreate" "3" "10 1月 2013" "" ""
+.TH "FcStrListCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrListCreate \- create a string iterator
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcStrList * FcStrListCreate (FcStrSet *\fIset\fB);
 .SH "DESCRIPTION"
 .PP
 Creates an iterator to list the strings in \fIset\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 4da2bb2..ebcebf0 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrListDone" "3" "10 1月 2013" "" ""
+.TH "FcStrListDone" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrListDone \- destroy a string iterator
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ void FcStrListDone (FcStrList *\fIlist\fB);
 .SH "DESCRIPTION"
 .PP
 Destroys the enumerator \fIlist\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcStrListFirst.3 b/doc/FcStrListFirst.3
new file mode 100644 (file)
index 0000000..78b7567
--- /dev/null
@@ -0,0 +1,16 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcStrListFirst" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcStrListFirst \- get first string in iteration
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+void FcStrListFirst (FcStrList *\fIlist\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+Returns the first string in \fIlist\fR\&.
+.SH "SINCE"
+.PP
+version 2.11.0
index ea3ff48..bd69ae4 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrListNext" "3" "10 1月 2013" "" ""
+.TH "FcStrListNext" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrListNext \- get next string in iteration
 .SH SYNOPSIS
@@ -10,7 +10,4 @@ FcChar8 * FcStrListNext (FcStrList *\fIlist\fB);
 .fi\fR
 .SH "DESCRIPTION"
 .PP
-Returns the next string in \fIset\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
+Returns the next string in \fIlist\fR\&.
index bbf1321..e499ba6 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrPlus" "3" "10 1月 2013" "" ""
+.TH "FcStrPlus" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrPlus \- concatenate two strings
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcChar8 * FcStrPlus (const FcChar8 *\fIs1\fB, const FcChar8 *\fIs2\fB);
 This function allocates new storage and places the concatenation of
 \fIs1\fR and \fIs2\fR there, returning the
 new string.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 94983f5..ff4ccff 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetAdd" "3" "10 1月 2013" "" ""
+.TH "FcStrSetAdd" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrSetAdd \- add to a string set
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcBool FcStrSetAdd (FcStrSet *\fIset\fB, const FcChar8 *\fIs\fB);
 .SH "DESCRIPTION"
 .PP
 Adds a copy of \fIs\fR to \fIset\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index ec13180..eb2d874 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetAddFilename" "3" "10 1月 2013" "" ""
+.TH "FcStrSetAddFilename" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrSetAddFilename \- add a filename to a string set
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcStrSetAddFilename (FcStrSet *\fIset\fB, const FcChar8 *\fIs\fB);
 Adds a copy \fIs\fR to \fIset\fR, The copy
 is created with FcStrCopyFilename so that leading '~' values are replaced
 with the value of the HOME environment variable.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 6ff59ed..a88e328 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetCreate" "3" "10 1月 2013" "" ""
+.TH "FcStrSetCreate" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrSetCreate \- create a string set
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ FcStrSet * FcStrSetCreate (void\fI\fB);
 .SH "DESCRIPTION"
 .PP
 Create an empty set.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index ffb22eb..8480f4d 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetDel" "3" "10 1月 2013" "" ""
+.TH "FcStrSetDel" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrSetDel \- delete from a string set
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcStrSetDel (FcStrSet *\fIset\fB, const FcChar8 *\fIs\fB);
 .PP
 Removes \fIs\fR from \fIset\fR, returning
 FcTrue if \fIs\fR was a member else FcFalse.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 428a0af..ccc6240 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetDestroy" "3" "10 1月 2013" "" ""
+.TH "FcStrSetDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrSetDestroy \- destroy a string set
 .SH SYNOPSIS
@@ -11,6 +11,3 @@ void FcStrSetDestroy (FcStrSet *\fIset\fB);
 .SH "DESCRIPTION"
 .PP
 Destroys \fIset\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index fd7055f..0ff0960 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetEqual" "3" "10 1月 2013" "" ""
+.TH "FcStrSetEqual" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrSetEqual \- check sets for equality
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcStrSetEqual (FcStrSet *\fIset_a\fB, FcStrSet *\fIset_b\fB);
 Returns whether \fIset_a\fR contains precisely the same
 strings as \fIset_b\fR\&. Ordering of strings within the two
 sets is not considered.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index ec8178d..7b46579 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrSetMember" "3" "10 1月 2013" "" ""
+.TH "FcStrSetMember" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrSetMember \- check set for membership
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcBool FcStrSetMember (FcStrSet *\fIset\fB, const FcChar8 *\fIs\fB);
 .PP
 Returns whether \fIs\fR is a member of
 \fIset\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 7ec35ff..2c8de6c 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrStr" "3" "10 1月 2013" "" ""
+.TH "FcStrStr" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrStr \- locate UTF-8 substring
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Returns the location of \fIs2\fR in
 \fIs1\fR\&. Returns NULL if \fIs2\fR
 is not present in \fIs1\fR\&. This test will operate properly
 with UTF8 encoded strings.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index c4ff122..1e252cd 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcStrStrIgnoreCase" "3" "10 1月 2013" "" ""
+.TH "FcStrStrIgnoreCase" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcStrStrIgnoreCase \- locate UTF-8 substring ignoring ASCII case
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Returns the location of \fIs2\fR in
 \fIs1\fR, ignoring case. Returns NULL if
 \fIs2\fR is not present in \fIs1\fR\&.
 This test is case-insensitive for all proper UTF-8 encoded strings.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index e14d085..b67a656 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcToLower" "3" "10 1月 2013" "" ""
+.TH "FcToLower" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcToLower \- convert upper case ASCII to lower case
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcChar8 FcToLower (FcChar8\fIc\fB);
 .PP
 This macro converts upper case ASCII \fIc\fR to the
 equivalent lower case letter.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 32a55a4..7431381 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcUcs4ToUtf8" "3" "10 1月 2013" "" ""
+.TH "FcUcs4ToUtf8" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcUcs4ToUtf8 \- convert UCS4 to UTF-8
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ int FcUcs4ToUtf8 (FcChar32 \fIsrc\fB, FcChar8 \fIdst[FC_UTF8_MAX_LEN]\fB);
 Converts the Unicode char from \fIsrc\fR into
 \fIdst\fR and returns the number of bytes needed to encode
 the char.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index d5db3a1..c5e2cc0 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcUtf16Len" "3" "10 1月 2013" "" ""
+.TH "FcUtf16Len" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcUtf16Len \- count UTF-16 encoded chars
 .SH SYNOPSIS
@@ -18,6 +18,3 @@ Places that count in \fInchar\fR\&.
 bytes needed to hold the largest Unicode char counted. The return value
 indicates whether \fIstring\fR is a well-formed UTF16
 string.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index c88bee8..87814ab 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcUtf16ToUcs4" "3" "10 1月 2013" "" ""
+.TH "FcUtf16ToUcs4" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcUtf16ToUcs4 \- convert UTF-16 to UCS4
 .SH SYNOPSIS
@@ -15,6 +15,3 @@ Converts the next Unicode char from \fIsrc\fR into
 char. \fIsrc\fR must be at least \fIlen\fR
 bytes long. Bytes of \fIsrc\fR are combined into 16-bit
 units according to \fIendian\fR\&.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index bda55f4..6d9d348 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcUtf8Len" "3" "10 1月 2013" "" ""
+.TH "FcUtf8Len" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcUtf8Len \- count UTF-8 encoded chars
 .SH SYNOPSIS
@@ -16,6 +16,3 @@ Counts the number of Unicode chars in \fIlen\fR bytes of
 4 depending on the number of bytes needed to hold the largest Unicode char
 counted. The return value indicates whether \fIsrc\fR is a
 well-formed UTF8 string.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 4592a80..488c1b6 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcUtf8ToUcs4" "3" "10 1月 2013" "" ""
+.TH "FcUtf8ToUcs4" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcUtf8ToUcs4 \- convert UTF-8 to UCS4
 .SH SYNOPSIS
@@ -14,6 +14,3 @@ Converts the next Unicode char from \fIsrc\fR into
 \fIdst\fR and returns the number of bytes containing the
 char. \fIsrc\fR must be at least
 \fIlen\fR bytes long.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index e626450..6310cf6 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcValueDestroy" "3" "10 1月 2013" "" ""
+.TH "FcValueDestroy" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcValueDestroy \- Free a value
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ void FcValueDestroy (FcValue \fIv\fB);
 .PP
 Frees any memory referenced by \fIv\fR\&. Values of type FcTypeString,
 FcTypeMatrix and FcTypeCharSet reference memory, the other types do not.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index f80e9b7..ccdfa4c 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcValueEqual" "3" "10 1月 2013" "" ""
+.TH "FcValueEqual" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcValueEqual \- Test two values for equality
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ FcBool FcValueEqual (FcValue \fIv_a\fB, FcValue \fIv_b\fB);
 Compares two values. Integers and Doubles are compared as numbers; otherwise
 the two values have to be the same type to be considered equal. Strings are
 compared ignoring case.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index 5131ea5..9f67ec1 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcValuePrint" "3" "10 1月 2013" "" ""
+.TH "FcValuePrint" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcValuePrint \- Print a value to stdout
 .SH SYNOPSIS
@@ -13,6 +13,3 @@ void FcValuePrint (FcValue \fIv\fB);
 Prints a human-readable representation of \fIv\fR to
 stdout. The format should not be considered part of the library
 specification as it may change in the future.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
index ed13cce..58b15b2 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FcValueSave" "3" "10 1月 2013" "" ""
+.TH "FcValueSave" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
 .SH NAME
 FcValueSave \- Copy a value
 .SH SYNOPSIS
@@ -12,6 +12,3 @@ FcValue FcValueSave (FcValue \fIv\fB);
 .PP
 Returns a copy of \fIv\fR duplicating any object referenced by it so that \fIv\fR
 may be safely destroyed without harming the new value.
-.SH "VERSION"
-.PP
-Fontconfig version 2.10.91
diff --git a/doc/FcWeightFromOpenType.3 b/doc/FcWeightFromOpenType.3
new file mode 100644 (file)
index 0000000..371e261
--- /dev/null
@@ -0,0 +1,22 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcWeightFromOpenType" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcWeightFromOpenType \- Convert from OpenType weight values to fontconfig ones
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+int FcWeightFromOpenType (int\fIot_weight\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+\fBFcWeightFromOpenType\fR returns an integer value
+to use with FC_WEIGHT, from an integer in the 1..1000 range, resembling
+the numbers from OpenType specification's OS/2 usWeight numbers, which
+are also similar to CSS font-weight numbers. If input is negative,
+zero, or greater than 1000, returns -1. This function linearly interpolates
+between various FC_WEIGHT_* constants. As such, the returned value does not
+necessarily match any of the predefined constants.
+.SH "SINCE"
+.PP
+version 2.11.91
diff --git a/doc/FcWeightToOpenType.3 b/doc/FcWeightToOpenType.3
new file mode 100644 (file)
index 0000000..9477594
--- /dev/null
@@ -0,0 +1,19 @@
+.\" auto-generated by docbook2man-spec from docbook-utils package
+.TH "FcWeightToOpenType" "3" "09 3月 2015" "Fontconfig 2.11.93" ""
+.SH NAME
+FcWeightToOpenType \- Convert from fontconfig weight values to OpenType ones
+.SH SYNOPSIS
+.nf
+\fB#include <fontconfig/fontconfig.h>
+.sp
+int FcWeightToOpenType (int\fIot_weight\fB);
+.fi\fR
+.SH "DESCRIPTION"
+.PP
+\fBFcWeightToOpenType\fR is the inverse of
+\fBFcWeightFromOpenType\fR\&. If the input is less than
+FC_WEIGHT_THIN or greater than FC_WEIGHT_EXTRABLACK, returns -1. Otherwise
+returns a number in the range 1 to 1000.
+.SH "SINCE"
+.PP
+version 2.11.91
index c6b095c..9141ab2 100644 (file)
@@ -53,7 +53,10 @@ SUFFIXES =   \
 TESTS =                                \
        check-missing-doc       \
        $(NULL)
-TESTS_ENVIRONMENT=top_srcdir=${top_srcdir} sh
+TESTS_ENVIRONMENT = \
+       top_srcdir=${top_srcdir}; export top_srcdir; \
+       $(NULL)
+LOG_COMPILER = sh
 #
 DOC2HTML = docbook2html
 DOC2TXT  = docbook2txt
@@ -78,9 +81,11 @@ DOC_FUNCS_FNCS =             \
        fcobjectset.fncs        \
        fcobjecttype.fncs       \
        fcpattern.fncs          \
+       fcrange.fncs            \
        fcstring.fncs           \
        fcstrset.fncs           \
        fcvalue.fncs            \
+       fcweight.fncs           \
        $(NULL)
 SGML_FILES =                   \
        fontconfig-user.sgml    \
index e725ad1..1f38d78 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -88,15 +116,17 @@ noinst_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2)
 @USEDOCBOOK_TRUE@am__append_3 = $(HTML_DIR)/*
 @USEDOCBOOK_FALSE@am__append_4 = $(srcdir)/$(HTML_DIR)/*
 subdir = doc
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
-       $(srcdir)/version.sgml.in $(top_srcdir)/depcomp
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+       $(srcdir)/version.sgml.in $(top_srcdir)/depcomp \
+       $(top_srcdir)/test-driver
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
@@ -189,12 +219,202 @@ man5dir = $(mandir)/man5
 NROFF = nroff
 MANS = $(man3_MANS) $(man5_MANS)
 DATA = $(doc_DATA) $(htmldoc_DATA)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 am__tty_colors_dummy = \
   mgn= red= grn= lgn= blu= brg= std=; \
   am__color_tests=no
-am__tty_colors = $(am__tty_colors_dummy)
+am__tty_colors = { \
+  $(am__tty_colors_dummy); \
+  if test "X$(AM_COLOR_TESTS)" = Xno; then \
+    am__color_tests=no; \
+  elif test "X$(AM_COLOR_TESTS)" = Xalways; then \
+    am__color_tests=yes; \
+  elif test "X$$TERM" != Xdumb && { test -t 1; } 2>/dev/null; then \
+    am__color_tests=yes; \
+  fi; \
+  if test $$am__color_tests = yes; then \
+    red='\e[0;31m'; \
+    grn='\e[0;32m'; \
+    lgn='\e[1;32m'; \
+    blu='\e[1;34m'; \
+    mgn='\e[0;35m'; \
+    brg='\e[1m'; \
+    std='\e[m'; \
+  fi; \
+}
+am__recheck_rx = ^[    ]*:recheck:[    ]*
+am__global_test_result_rx = ^[         ]*:global-test-result:[         ]*
+am__copy_in_global_log_rx = ^[         ]*:copy-in-global-log:[         ]*
+# A command that, given a newline-separated list of test names on the
+# standard input, print the name of the tests that are to be re-run
+# upon "make recheck".
+am__list_recheck_tests = $(AWK) '{ \
+  recheck = 1; \
+  while ((rc = (getline line < ($$0 ".trs"))) != 0) \
+    { \
+      if (rc < 0) \
+        { \
+          if ((getline line2 < ($$0 ".log")) < 0) \
+           recheck = 0; \
+          break; \
+        } \
+      else if (line ~ /$(am__recheck_rx)[nN][Oo]/) \
+        { \
+          recheck = 0; \
+          break; \
+        } \
+      else if (line ~ /$(am__recheck_rx)[yY][eE][sS]/) \
+        { \
+          break; \
+        } \
+    }; \
+  if (recheck) \
+    print $$0; \
+  close ($$0 ".trs"); \
+  close ($$0 ".log"); \
+}'
+# A command that, given a newline-separated list of test names on the
+# standard input, create the global log from their .trs and .log files.
+am__create_global_log = $(AWK) ' \
+function fatal(msg) \
+{ \
+  print "fatal: making $@: " msg | "cat >&2"; \
+  exit 1; \
+} \
+function rst_section(header) \
+{ \
+  print header; \
+  len = length(header); \
+  for (i = 1; i <= len; i = i + 1) \
+    printf "="; \
+  printf "\n\n"; \
+} \
+{ \
+  copy_in_global_log = 1; \
+  global_test_result = "RUN"; \
+  while ((rc = (getline line < ($$0 ".trs"))) != 0) \
+    { \
+      if (rc < 0) \
+         fatal("failed to read from " $$0 ".trs"); \
+      if (line ~ /$(am__global_test_result_rx)/) \
+        { \
+          sub("$(am__global_test_result_rx)", "", line); \
+          sub("[       ]*$$", "", line); \
+          global_test_result = line; \
+        } \
+      else if (line ~ /$(am__copy_in_global_log_rx)[nN][oO]/) \
+        copy_in_global_log = 0; \
+    }; \
+  if (copy_in_global_log) \
+    { \
+      rst_section(global_test_result ": " $$0); \
+      while ((rc = (getline line < ($$0 ".log"))) != 0) \
+      { \
+        if (rc < 0) \
+          fatal("failed to read from " $$0 ".log"); \
+        print line; \
+      }; \
+      printf "\n"; \
+    }; \
+  close ($$0 ".trs"); \
+  close ($$0 ".log"); \
+}'
+# Restructured Text title.
+am__rst_title = { sed 's/.*/   &   /;h;s/./=/g;p;x;s/ *$$//;p;g' && echo; }
+# Solaris 10 'make', and several other traditional 'make' implementations,
+# pass "-e" to $(SHELL), and POSIX 2008 even requires this.  Work around it
+# by disabling -e (using the XSI extension "set +e") if it's set.
+am__sh_e_setup = case $$- in *e*) set +e;; esac
+# Default flags passed to test drivers.
+am__common_driver_flags = \
+  --color-tests "$$am__color_tests" \
+  --enable-hard-errors "$$am__enable_hard_errors" \
+  --expect-failure "$$am__expect_failure"
+# To be inserted before the command running the test.  Creates the
+# directory for the log if needed.  Stores in $dir the directory
+# containing $f, in $tst the test, in $log the log.  Executes the
+# developer- defined test setup AM_TESTS_ENVIRONMENT (if any), and
+# passes TESTS_ENVIRONMENT.  Set up options for the wrapper that
+# will run the test scripts (or their associated LOG_COMPILER, if
+# thy have one).
+am__check_pre = \
+$(am__sh_e_setup);                                     \
+$(am__vpath_adj_setup) $(am__vpath_adj)                        \
+$(am__tty_colors);                                     \
+srcdir=$(srcdir); export srcdir;                       \
+case "$@" in                                           \
+  */*) am__odir=`echo "./$@" | sed 's|/[^/]*$$||'`;;   \
+    *) am__odir=.;;                                    \
+esac;                                                  \
+test "x$$am__odir" = x"." || test -d "$$am__odir"      \
+  || $(MKDIR_P) "$$am__odir" || exit $$?;              \
+if test -f "./$$f"; then dir=./;                       \
+elif test -f "$$f"; then dir=;                         \
+else dir="$(srcdir)/"; fi;                             \
+tst=$$dir$$f; log='$@';                                \
+if test -n '$(DISABLE_HARD_ERRORS)'; then              \
+  am__enable_hard_errors=no;                           \
+else                                                   \
+  am__enable_hard_errors=yes;                          \
+fi;                                                    \
+case " $(XFAIL_TESTS) " in                             \
+  *[\ \        ]$$f[\ \        ]* | *[\ \      ]$$dir$$f[\ \   ]*) \
+    am__expect_failure=yes;;                           \
+  *)                                                   \
+    am__expect_failure=no;;                            \
+esac;                                                  \
+$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT)
+# A shell command to get the names of the tests scripts with any registered
+# extension removed (i.e., equivalently, the names of the test logs, with
+# the '.log' extension removed).  The result is saved in the shell variable
+# '$bases'.  This honors runtime overriding of TESTS and TEST_LOGS.  Sadly,
+# we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)",
+# since that might cause problem with VPATH rewrites for suffix-less tests.
+# See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'.
+am__set_TESTS_bases = \
+  bases='$(TEST_LOGS)'; \
+  bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \
+  bases=`echo $$bases`
+RECHECK_LOGS = $(TEST_LOGS)
+AM_RECURSIVE_TARGETS = check recheck
+TEST_SUITE_LOG = test-suite.log
+TEST_EXTENSIONS = @EXEEXT@ .test
+LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver
+LOG_COMPILE = $(LOG_COMPILER) $(AM_LOG_FLAGS) $(LOG_FLAGS)
+am__set_b = \
+  case '$@' in \
+    */*) \
+      case '$*' in \
+        */*) b='$*';; \
+          *) b=`echo '$@' | sed 's/\.log$$//'`; \
+       esac;; \
+    *) \
+      b='$*';; \
+  esac
+am__test_logs1 = $(TESTS:=.log)
+am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log)
+TEST_LOGS = $(am__test_logs2:.test.log=.log)
+TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver
+TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \
+       $(TEST_LOG_FLAGS)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -236,6 +456,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -277,12 +499,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -306,7 +535,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -314,7 +542,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = @configdir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -339,19 +566,22 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = @templatedir@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = @xmldir@
 NULL = 
 EXTRA_DIST = \
        $(BUILT_DOCS)           \
@@ -383,7 +613,11 @@ SUFFIXES = \
        .html   \
        $(NULL)
 
-TESTS_ENVIRONMENT = top_srcdir=${top_srcdir} sh
+TESTS_ENVIRONMENT = \
+       top_srcdir=${top_srcdir}; export top_srcdir; \
+       $(NULL)
+
+LOG_COMPILER = sh
 #
 DOC2HTML = docbook2html
 DOC2TXT = docbook2txt
@@ -407,9 +641,11 @@ DOC_FUNCS_FNCS = \
        fcobjectset.fncs        \
        fcobjecttype.fncs       \
        fcpattern.fncs          \
+       fcrange.fncs            \
        fcstring.fncs           \
        fcstrset.fncs           \
        fcvalue.fncs            \
+       fcweight.fncs           \
        $(NULL)
 
 SGML_FILES = \
@@ -477,7 +713,7 @@ all: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) all-am
 
 .SUFFIXES:
-.SUFFIXES: .fncs .sgml .txt .html .c .lo .o .obj .pdf
+.SUFFIXES: .fncs .sgml .txt .html .c .lo .log .o .obj .pdf .test .test$(EXEEXT) .trs
 $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        @for dep in $?; do \
          case '$(am__configure_deps)' in \
@@ -519,6 +755,7 @@ clean-noinstPROGRAMS:
        list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
        echo " rm -f" $$list; \
        rm -f $$list
+
 edit-sgml$(EXEEXT): $(edit_sgml_OBJECTS) $(edit_sgml_DEPENDENCIES) $(EXTRA_edit_sgml_DEPENDENCIES) 
        @rm -f edit-sgml$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(edit_sgml_OBJECTS) $(edit_sgml_LDADD) $(LIBS)
@@ -536,14 +773,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -682,26 +919,15 @@ uninstall-htmldocDATA:
        files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
        dir='$(DESTDIR)$(htmldocdir)'; $(am__uninstall_files_from_dir)
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -713,15 +939,11 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -730,9 +952,10 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
 
-cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
        case "$(srcdir)" in \
          [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
          *) sdir=$(subdir)/$(srcdir) ;; \
@@ -748,113 +971,170 @@ cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
-check-TESTS: $(TESTS)
-       @failed=0; all=0; xfail=0; xpass=0; skip=0; \
-       srcdir=$(srcdir); export srcdir; \
-       list=' $(TESTS) '; \
-       $(am__tty_colors); \
-       if test -n "$$list"; then \
-         for tst in $$list; do \
-           if test -f ./$$tst; then dir=./; \
-           elif test -f $$tst; then dir=; \
-           else dir="$(srcdir)/"; fi; \
-           if $(TESTS_ENVIRONMENT) $${dir}$$tst $(AM_TESTS_FD_REDIRECT); then \
-             all=`expr $$all + 1`; \
-             case " $(XFAIL_TESTS) " in \
-             *[\ \     ]$$tst[\ \      ]*) \
-               xpass=`expr $$xpass + 1`; \
-               failed=`expr $$failed + 1`; \
-               col=$$red; res=XPASS; \
-             ;; \
-             *) \
-               col=$$grn; res=PASS; \
-             ;; \
-             esac; \
-           elif test $$? -ne 77; then \
-             all=`expr $$all + 1`; \
-             case " $(XFAIL_TESTS) " in \
-             *[\ \     ]$$tst[\ \      ]*) \
-               xfail=`expr $$xfail + 1`; \
-               col=$$lgn; res=XFAIL; \
-             ;; \
-             *) \
-               failed=`expr $$failed + 1`; \
-               col=$$red; res=FAIL; \
-             ;; \
-             esac; \
-           else \
-             skip=`expr $$skip + 1`; \
-             col=$$blu; res=SKIP; \
-           fi; \
-           echo "$${col}$$res$${std}: $$tst"; \
-         done; \
-         if test "$$all" -eq 1; then \
-           tests="test"; \
-           All=""; \
-         else \
-           tests="tests"; \
-           All="All "; \
+# Recover from deleted '.trs' file; this should ensure that
+# "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create
+# both 'foo.log' and 'foo.trs'.  Break the recipe in two subshells
+# to avoid problems with "make -n".
+.log.trs:
+       rm -f $< $@
+       $(MAKE) $(AM_MAKEFLAGS) $<
+
+# Leading 'am--fnord' is there to ensure the list of targets does not
+# expand to empty, as could happen e.g. with make check TESTS=''.
+am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck)
+am--force-recheck:
+       @:
+
+$(TEST_SUITE_LOG): $(TEST_LOGS)
+       @$(am__set_TESTS_bases); \
+       am__f_ok () { test -f "$$1" && test -r "$$1"; }; \
+       redo_bases=`for i in $$bases; do \
+                     am__f_ok $$i.trs && am__f_ok $$i.log || echo $$i; \
+                   done`; \
+       if test -n "$$redo_bases"; then \
+         redo_logs=`for i in $$redo_bases; do echo $$i.log; done`; \
+         redo_results=`for i in $$redo_bases; do echo $$i.trs; done`; \
+         if $(am__make_dryrun); then :; else \
+           rm -f $$redo_logs && rm -f $$redo_results || exit 1; \
          fi; \
-         if test "$$failed" -eq 0; then \
-           if test "$$xfail" -eq 0; then \
-             banner="$$All$$all $$tests passed"; \
-           else \
-             if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
-             banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
-           fi; \
-         else \
-           if test "$$xpass" -eq 0; then \
-             banner="$$failed of $$all $$tests failed"; \
+       fi; \
+       if test -n "$$am__remaking_logs"; then \
+         echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \
+              "recursion detected" >&2; \
+       else \
+         am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \
+       fi; \
+       if $(am__make_dryrun); then :; else \
+         st=0;  \
+         errmsg="fatal: making $(TEST_SUITE_LOG): failed to create"; \
+         for i in $$redo_bases; do \
+           test -f $$i.trs && test -r $$i.trs \
+             || { echo "$$errmsg $$i.trs" >&2; st=1; }; \
+           test -f $$i.log && test -r $$i.log \
+             || { echo "$$errmsg $$i.log" >&2; st=1; }; \
+         done; \
+         test $$st -eq 0 || exit 1; \
+       fi
+       @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \
+       ws='[   ]'; \
+       results=`for b in $$bases; do echo $$b.trs; done`; \
+       test -n "$$results" || results=/dev/null; \
+       all=`  grep "^$$ws*:test-result:"           $$results | wc -l`; \
+       pass=` grep "^$$ws*:test-result:$$ws*PASS"  $$results | wc -l`; \
+       fail=` grep "^$$ws*:test-result:$$ws*FAIL"  $$results | wc -l`; \
+       skip=` grep "^$$ws*:test-result:$$ws*SKIP"  $$results | wc -l`; \
+       xfail=`grep "^$$ws*:test-result:$$ws*XFAIL" $$results | wc -l`; \
+       xpass=`grep "^$$ws*:test-result:$$ws*XPASS" $$results | wc -l`; \
+       error=`grep "^$$ws*:test-result:$$ws*ERROR" $$results | wc -l`; \
+       if test `expr $$fail + $$xpass + $$error` -eq 0; then \
+         success=true; \
+       else \
+         success=false; \
+       fi; \
+       br='==================='; br=$$br$$br$$br$$br; \
+       result_count () \
+       { \
+           if test x"$$1" = x"--maybe-color"; then \
+             maybe_colorize=yes; \
+           elif test x"$$1" = x"--no-color"; then \
+             maybe_colorize=no; \
            else \
-             if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
-             banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+             echo "$@: invalid 'result_count' usage" >&2; exit 4; \
            fi; \
-         fi; \
-         dashes="$$banner"; \
-         skipped=""; \
-         if test "$$skip" -ne 0; then \
-           if test "$$skip" -eq 1; then \
-             skipped="($$skip test was not run)"; \
+           shift; \
+           desc=$$1 count=$$2; \
+           if test $$maybe_colorize = yes && test $$count -gt 0; then \
+             color_start=$$3 color_end=$$std; \
            else \
-             skipped="($$skip tests were not run)"; \
+             color_start= color_end=; \
            fi; \
-           test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
-             dashes="$$skipped"; \
-         fi; \
-         report=""; \
-         if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
-           report="Please report to $(PACKAGE_BUGREPORT)"; \
-           test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
-             dashes="$$report"; \
-         fi; \
-         dashes=`echo "$$dashes" | sed s/./=/g`; \
-         if test "$$failed" -eq 0; then \
-           col="$$grn"; \
-         else \
-           col="$$red"; \
-         fi; \
-         echo "$${col}$$dashes$${std}"; \
-         echo "$${col}$$banner$${std}"; \
-         test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
-         test -z "$$report" || echo "$${col}$$report$${std}"; \
-         echo "$${col}$$dashes$${std}"; \
-         test "$$failed" -eq 0; \
-       else :; fi
+           echo "$${color_start}# $$desc $$count$${color_end}"; \
+       }; \
+       create_testsuite_report () \
+       { \
+         result_count $$1 "TOTAL:" $$all   "$$brg"; \
+         result_count $$1 "PASS: " $$pass  "$$grn"; \
+         result_count $$1 "SKIP: " $$skip  "$$blu"; \
+         result_count $$1 "XFAIL:" $$xfail "$$lgn"; \
+         result_count $$1 "FAIL: " $$fail  "$$red"; \
+         result_count $$1 "XPASS:" $$xpass "$$red"; \
+         result_count $$1 "ERROR:" $$error "$$mgn"; \
+       }; \
+       {                                                               \
+         echo "$(PACKAGE_STRING): $(subdir)/$(TEST_SUITE_LOG)" |       \
+           $(am__rst_title);                                           \
+         create_testsuite_report --no-color;                           \
+         echo;                                                         \
+         echo ".. contents:: :depth: 2";                               \
+         echo;                                                         \
+         for b in $$bases; do echo $$b; done                           \
+           | $(am__create_global_log);                                 \
+       } >$(TEST_SUITE_LOG).tmp || exit 1;                             \
+       mv $(TEST_SUITE_LOG).tmp $(TEST_SUITE_LOG);                     \
+       if $$success; then                                              \
+         col="$$grn";                                                  \
+        else                                                           \
+         col="$$red";                                                  \
+         test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG);               \
+       fi;                                                             \
+       echo "$${col}$$br$${std}";                                      \
+       echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}";   \
+       echo "$${col}$$br$${std}";                                      \
+       create_testsuite_report --maybe-color;                          \
+       echo "$$col$$br$$std";                                          \
+       if $$success; then :; else                                      \
+         echo "$${col}See $(subdir)/$(TEST_SUITE_LOG)$${std}";         \
+         if test -n "$(PACKAGE_BUGREPORT)"; then                       \
+           echo "$${col}Please report to $(PACKAGE_BUGREPORT)$${std}"; \
+         fi;                                                           \
+         echo "$$col$$br$$std";                                        \
+       fi;                                                             \
+       $$success || exit 1
+
+check-TESTS:
+       @list='$(RECHECK_LOGS)';           test -z "$$list" || rm -f $$list
+       @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list
+       @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
+       @set +e; $(am__set_TESTS_bases); \
+       log_list=`for i in $$bases; do echo $$i.log; done`; \
+       trs_list=`for i in $$bases; do echo $$i.trs; done`; \
+       log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \
+       $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \
+       exit $$?;
+recheck: all $(check_SCRIPTS)
+       @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
+       @set +e; $(am__set_TESTS_bases); \
+       bases=`for i in $$bases; do echo $$i; done \
+                | $(am__list_recheck_tests)` || exit 1; \
+       log_list=`for i in $$bases; do echo $$i.log; done`; \
+       log_list=`echo $$log_list`; \
+       $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \
+               am__force_recheck=am--force-recheck \
+               TEST_LOGS="$$log_list"; \
+       exit $$?
+check-missing-doc.log: check-missing-doc
+       @p='check-missing-doc'; \
+       b='check-missing-doc'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
+.test.log:
+       @p='$<'; \
+       $(am__set_b); \
+       $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
+@am__EXEEXT_TRUE@.test$(EXEEXT).log:
+@am__EXEEXT_TRUE@      @p='$<'; \
+@am__EXEEXT_TRUE@      $(am__set_b); \
+@am__EXEEXT_TRUE@      $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \
+@am__EXEEXT_TRUE@      --log-file $$b.log --trs-file $$b.trs \
+@am__EXEEXT_TRUE@      $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \
+@am__EXEEXT_TRUE@      "$$tst" $(AM_TESTS_FD_REDIRECT)
 
 distdir: $(DISTFILES)
-       @list='$(MANS)'; if test -n "$$list"; then \
-         list=`for p in $$list; do \
-           if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
-           if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
-         if test -n "$$list" && \
-           grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
-           echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
-           grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/         /' >&2; \
-           echo "       to fix them, install help2man, remove and regenerate the man pages;" >&2; \
-           echo "       typically 'make maintainer-clean' will remove them" >&2; \
-           exit 1; \
-         else :; fi; \
-       else :; fi
        @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        list='$(DISTFILES)'; \
@@ -915,6 +1195,9 @@ install-strip:
            "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
        fi
 mostlyclean-generic:
+       -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS)
+       -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs)
+       -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
 
 clean-generic:
        -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
@@ -1003,9 +1286,9 @@ uninstall-man: uninstall-man3 uninstall-man5
 
 .MAKE: all check check-am install install-am install-strip
 
-.PHONY: CTAGS GTAGS all all-am all-local check check-TESTS check-am \
-       clean clean-generic clean-libtool clean-local \
-       clean-noinstPROGRAMS cscopelist ctags distclean \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-TESTS \
+       check-am clean clean-generic clean-libtool clean-local \
+       clean-noinstPROGRAMS cscopelist-am ctags ctags-am distclean \
        distclean-compile distclean-generic distclean-libtool \
        distclean-tags distdir dvi dvi-am html html-am info info-am \
        install install-am install-data install-data-am \
@@ -1017,7 +1300,7 @@ uninstall-man: uninstall-man3 uninstall-man5
        installcheck-am installdirs maintainer-clean \
        maintainer-clean-generic mostlyclean mostlyclean-compile \
        mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
-       tags uninstall uninstall-am uninstall-docDATA \
+       recheck tags tags-am uninstall uninstall-am uninstall-docDATA \
        uninstall-htmldocDATA uninstall-man uninstall-man3 \
        uninstall-man5
 
index 33f81f0..65c8fd3 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcAtomicCreate</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcAtomicCreate</refname>
@@ -49,11 +50,6 @@ configuration file is atomically replaced so that reading process always see
 a consistent and complete file without the need to lock for reading.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -82,6 +78,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcAtomicLock</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcAtomicLock</refname>
@@ -105,11 +102,6 @@ Returns FcFalse if the file is already locked, else returns FcTrue and
 leaves the file locked.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -138,6 +130,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcAtomicNewFile</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcAtomicNewFile</refname>
@@ -160,11 +153,6 @@ Returns the filename for writing a new version of the file referenced
 by <parameter>atomic</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -193,6 +181,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcAtomicOrigFile</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcAtomicOrigFile</refname>
@@ -214,11 +203,6 @@ Fontconfig version &version;
 Returns the file referenced by <parameter>atomic</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -247,6 +231,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcAtomicReplaceOrig</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcAtomicReplaceOrig</refname>
@@ -270,11 +255,6 @@ the new file. Returns FcFalse if the file cannot be replaced due to
 permission issues in the filesystem. Otherwise returns FcTrue.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -303,6 +283,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcAtomicDeleteNew</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcAtomicDeleteNew</refname>
@@ -324,11 +305,6 @@ Fontconfig version &version;
 Deletes the new file.  Used in error recovery to back out changes.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -357,6 +333,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcAtomicUnlock</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcAtomicUnlock</refname>
@@ -378,11 +355,6 @@ Fontconfig version &version;
 Unlocks the file.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -411,6 +383,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcAtomicDestroy</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcAtomicDestroy</refname>
@@ -432,9 +405,4 @@ Fontconfig version &version;
 Destroys <parameter>atomic</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
index dd1a582..25dfdc1 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcBlanksCreate</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcBlanksCreate</refname>
 Creates an empty FcBlanks object.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -79,6 +75,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcBlanksDestroy</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcBlanksDestroy</refname>
@@ -100,11 +97,6 @@ Fontconfig version &version;
 Destroys an FcBlanks object, freeing any associated memory.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -133,6 +125,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcBlanksAdd</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcBlanksAdd</refname>
@@ -156,11 +149,6 @@ Adds a single character to an FcBlanks object, returning FcFalse
 if this process ran out of memory.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -189,6 +177,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcBlanksIsMember</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcBlanksIsMember</refname>
@@ -212,9 +201,4 @@ Returns whether the specified FcBlanks object contains the indicated Unicode
 value.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
index ca8ffa0..34ce63f 100644 (file)
@@ -74,6 +74,7 @@ FcCacheCopySet.
 @PURPOSE@
 This tries to clean up the cache directory of <parameter>cache_dir</parameter>.
 This returns FcTrue if the operation is successfully complete. otherwise FcFalse.
+@SINCE@                2.9.91
 @@
 
 @RET@          void
@@ -83,4 +84,5 @@ This returns FcTrue if the operation is successfully complete. otherwise FcFalse
 @DESC@
 This tries to create CACHEDIR.TAG file at the cache directory registered
 to <parameter>config</parameter>.
+@SINCE@                2.9.91
 @@
index 251ddf5..8cc6830 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcCacheDir</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCacheDir</refname>
 This function returns the directory from which the cache was constructed.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -79,6 +75,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCacheCopySet</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCacheCopySet</refname>
@@ -102,11 +99,6 @@ The returned fontset contains each of the font patterns from
 from the cache are read-only.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCacheSubdir</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCacheSubdir</refname>
@@ -160,11 +153,6 @@ function, <parameter>i</parameter> should range from 0 to
 value from FcCacheNumSubdir.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -193,6 +181,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCacheNumSubdir</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCacheNumSubdir</refname>
@@ -214,11 +203,6 @@ Fontconfig version &version;
 This returns the total number of subdirectories in the cache.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -247,6 +231,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCacheNumFont</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCacheNumFont</refname>
@@ -269,11 +254,6 @@ This returns the number of fonts which would be included in the return from
 FcCacheCopySet.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -302,6 +282,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcDirCacheClean</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcDirCacheClean</refname>
@@ -325,10 +306,8 @@ This returns FcTrue if the operation is successfully complete. otherwise FcFalse
 
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
+       <refsect1><title>Since</title>
+           <para>version 2.9.91</para>
        </refsect1>
     </refentry>
 <!--
@@ -358,6 +337,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCacheCreateTagFile</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCacheCreateTagFile</refname>
@@ -380,9 +360,7 @@ This tries to create CACHEDIR.TAG file at the cache directory registered
 to <parameter>config</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
+       <refsect1><title>Since</title>
+           <para>version 2.9.91</para>
        </refsect1>
     </refentry>
index 036870d..7245a2a 100644 (file)
@@ -60,6 +60,7 @@ running out of memory.
 <function>FcCharSetDelChar</function> deletes a single Unicode char from the set,
 returning FcFalse on failure, either as a result of a constant set or from
 running out of memory.
+@SINCE@                2.9.0
 @@
 
 @RET@          FcCharSet *
@@ -175,9 +176,27 @@ Returns whether <parameter>a</parameter> is a subset of <parameter>b</parameter>
 @TYPE3@                FcChar32 *              @ARG3@          next
 @PURPOSE@      Start enumerating charset contents
 @DESC@
-Builds an array of bits marking the first page of Unicode coverage of
-<parameter>a</parameter>. Returns the base of the array. <parameter>next</parameter> contains the next page in the
-font.
+Builds an array of bits in <parameter>map</parameter> marking the
+first page of Unicode coverage of <parameter>a</parameter>.
+<parameter>*next</parameter> is set to contains the base code point
+for the next page in <parameter>a</parameter>.  Returns the base code
+point for the page, or <constant>FC_CHARSET_DONE</constant> if
+<parameter>a</parameter> contains no pages.  As an example, if
+<function>FcCharSetFirstPage</function> returns
+<literal>0x300</literal> and fills <parameter>map</parameter> with
+<literallayout class="monospaced">
+0xffffffff 0xffffffff 0x01000008 0x44300002 0xffffd7f0 0xfffffffb 0xffff7fff 0xffff0003
+</literallayout>
+Then the page contains code points <literal>0x300</literal> through
+<literal>0x33f</literal> (the first 64 code points on the page)
+because <parameter>map[0]</parameter> and
+<parameter>map[1]</parameter> both have all their bits set.  It also
+contains code points <literal>0x343</literal> (<parameter>0x300 + 32*2
++ (4-1)</parameter>) and <literal>0x35e</literal> (<parameter>0x300 +
+32*2 + (31-1)</parameter>) because <parameter>map[2]</parameter> has
+the 4th and 31st bits set.  The code points represented by
+<literal>map[3]</literal> and later are left as an excercise for the
+reader ;).
 @@
 
 @RET@          FcChar32
@@ -187,9 +206,15 @@ font.
 @TYPE3@                FcChar32 *              @ARG3@          next
 @PURPOSE@      Continue enumerating charset contents
 @DESC@
-Builds an array of bits marking the Unicode coverage of <parameter>a</parameter> for page
-<parameter>*next</parameter>. Returns the base of the array. <parameter>next</parameter> contains the next page in
-the font. 
+Builds an array of bits in <parameter>map</parameter> marking the
+Unicode coverage of <parameter>a</parameter> for page containing
+<parameter>*next</parameter> (see the
+<function>FcCharSetFirstPage</function> description for details).
+<parameter>*next</parameter> is set to contains the base code point
+for the next page in <parameter>a</parameter>.  Returns the base of
+code point for the page, or <constant>FC_CHARSET_DONE</constant> if
+<parameter>a</parameter> does not contain
+<parameter>*next</parameter>.
 @@
 
 @RET@          FcChar32
index 4619a00..dd426cb 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcCharSetCreate</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetCreate</refname>
 character set object.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -80,6 +76,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetDestroy</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetDestroy</refname>
@@ -103,11 +100,6 @@ Fontconfig version &version;
 memory referenced is freed.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -136,6 +128,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetAddChar</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetAddChar</refname>
@@ -160,11 +153,6 @@ returning FcFalse on failure, either as a result of a constant set or from
 running out of memory.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -193,6 +181,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetDelChar</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetDelChar</refname>
@@ -217,10 +206,8 @@ returning FcFalse on failure, either as a result of a constant set or from
 running out of memory.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
+       <refsect1><title>Since</title>
+           <para>version 2.9.0</para>
        </refsect1>
     </refentry>
 <!--
@@ -250,6 +237,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetCopy</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetCopy</refname>
@@ -272,11 +260,6 @@ Makes a copy of <parameter>src</parameter>; note that this may not actually do a
 than increment the reference count on <parameter>src</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -305,6 +288,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetEqual</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetEqual</refname>
@@ -328,11 +312,6 @@ Returns whether <parameter>a</parameter> and <parameter>b</parameter>
 contain the same set of Unicode chars.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -361,6 +340,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetIntersect</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetIntersect</refname>
@@ -384,11 +364,6 @@ Returns a set including only those chars found in both
 <parameter>a</parameter> and <parameter>b</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -417,6 +392,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetUnion</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetUnion</refname>
@@ -439,11 +415,6 @@ Fontconfig version &version;
 Returns a set including only those chars found in either <parameter>a</parameter> or <parameter>b</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -472,6 +443,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetSubtract</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetSubtract</refname>
@@ -494,11 +466,6 @@ Fontconfig version &version;
 Returns a set including only those chars found in <parameter>a</parameter> but not <parameter>b</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -527,6 +494,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetMerge</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetMerge</refname>
@@ -555,11 +523,6 @@ Returns FcFalse on failure, either when <parameter>a</parameter> is a constant
 set or from running out of memory.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -588,6 +551,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetHasChar</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetHasChar</refname>
@@ -610,11 +574,6 @@ Fontconfig version &version;
 Returns whether <parameter>fcs</parameter> contains the char <parameter>ucs4</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -643,6 +602,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetCount</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetCount</refname>
@@ -664,11 +624,6 @@ Fontconfig version &version;
 Returns the total number of Unicode chars in <parameter>a</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -697,6 +652,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetIntersectCount</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetIntersectCount</refname>
@@ -719,11 +675,6 @@ Fontconfig version &version;
 Returns the number of chars that are in both <parameter>a</parameter> and <parameter>b</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -752,6 +703,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetSubtractCount</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetSubtractCount</refname>
@@ -774,11 +726,6 @@ Fontconfig version &version;
 Returns the number of chars that are in <parameter>a</parameter> but not in <parameter>b</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -807,6 +754,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetIsSubset</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetIsSubset</refname>
@@ -829,11 +777,6 @@ Fontconfig version &version;
 Returns whether <parameter>a</parameter> is a subset of <parameter>b</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -862,6 +805,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetFirstPage</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetFirstPage</refname>
@@ -882,14 +826,27 @@ Fontconfig version &version;
        </refsynopsisdiv>
        <refsect1><title>Description</title>
            <para>
-Builds an array of bits marking the first page of Unicode coverage of
-<parameter>a</parameter>. Returns the base of the array. <parameter>next</parameter> contains the next page in the
-font.
-           </para>
-       </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
+Builds an array of bits in <parameter>map</parameter> marking the
+first page of Unicode coverage of <parameter>a</parameter>.
+<parameter>*next</parameter> is set to contains the base code point
+for the next page in <parameter>a</parameter>.  Returns the base code
+point for the page, or <constant>FC_CHARSET_DONE</constant> if
+<parameter>a</parameter> contains no pages.  As an example, if
+<function>FcCharSetFirstPage</function> returns
+<literal>0x300</literal> and fills <parameter>map</parameter> with
+<literallayout class="monospaced">
+0xffffffff 0xffffffff 0x01000008 0x44300002 0xffffd7f0 0xfffffffb 0xffff7fff 0xffff0003
+</literallayout>
+Then the page contains code points <literal>0x300</literal> through
+<literal>0x33f</literal> (the first 64 code points on the page)
+because <parameter>map[0]</parameter> and
+<parameter>map[1]</parameter> both have all their bits set.  It also
+contains code points <literal>0x343</literal> (<parameter>0x300 + 32*2
++ (4-1)</parameter>) and <literal>0x35e</literal> (<parameter>0x300 +
+32*2 + (31-1)</parameter>) because <parameter>map[2]</parameter> has
+the 4th and 31st bits set.  The code points represented by
+<literal>map[3]</literal> and later are left as an excercise for the
+reader ;).
            </para>
        </refsect1>
     </refentry>
@@ -920,6 +877,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetNextPage</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetNextPage</refname>
@@ -940,14 +898,15 @@ Fontconfig version &version;
        </refsynopsisdiv>
        <refsect1><title>Description</title>
            <para>
-Builds an array of bits marking the Unicode coverage of <parameter>a</parameter> for page
-<parameter>*next</parameter>. Returns the base of the array. <parameter>next</parameter> contains the next page in
-the font.
-           </para>
-       </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
+Builds an array of bits in <parameter>map</parameter> marking the
+Unicode coverage of <parameter>a</parameter> for page containing
+<parameter>*next</parameter> (see the
+<function>FcCharSetFirstPage</function> description for details).
+<parameter>*next</parameter> is set to contains the base code point
+for the next page in <parameter>a</parameter>.  Returns the base of
+code point for the page, or <constant>FC_CHARSET_DONE</constant> if
+<parameter>a</parameter> does not contain
+<parameter>*next</parameter>.
            </para>
        </refsect1>
     </refentry>
@@ -978,6 +937,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetCoverage</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetCoverage</refname>
@@ -1006,11 +966,6 @@ indicates which code points in
 coverage.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1039,6 +994,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcCharSetNew</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcCharSetNew</refname>
@@ -1060,9 +1016,4 @@ Fontconfig version &version;
 <function>FcCharSetNew</function> is a DEPRECATED alias for FcCharSetCreate.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
index 10028b4..af328fc 100644 (file)
@@ -59,7 +59,8 @@ cause a new configuration to be created for use as current configuration.
 @PURPOSE@      Set configuration as default
 @DESC@
 Sets the current default configuration to <parameter>config</parameter>.  Implicitly calls
-FcConfigBuildFonts if necessary, returning FcFalse if that call fails.
+FcConfigBuildFonts if necessary, and FcConfigReference() to inrease the reference count
+in <parameter>config</parameter> since 2.12.0, returning FcFalse if that call fails.
 @@
 
 @RET@           FcConfig *
@@ -218,8 +219,9 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
 @PURPOSE@      Add font file to font database
 @DESC@
 Adds an application-specific font to the configuration. Returns FcFalse
-if the fonts cannot be added (due to allocation failure). Otherwise returns FcTrue.
-If <parameter>config</parameter> is NULL, the current configuration is used.
+if the fonts cannot be added (due to allocation failure or no fonts found).
+Otherwise returns FcTrue. If <parameter>config</parameter> is NULL,
+the current configuration is used.
 @@
 
 @RET@           FcBool
@@ -230,8 +232,9 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
 @DESC@
 Scans the specified directory for fonts, adding each one found to the
 application-specific set of fonts. Returns FcFalse
-if the fonts cannot be added (due to allocation failure). Otherwise returns FcTrue.
-If <parameter>config</parameter> is NULL, the current configuration is used.
+if the fonts cannot be added (due to allocation failure or no fonts found).
+Otherwise returns FcTrue. If <parameter>config</parameter> is NULL,
+the current configuration is used.
 @@
 
 @RET@           void
@@ -371,3 +374,26 @@ and parsed.  If 'complain' is FcFalse, no warning will be displayed if
 Returns FcFalse if some error occurred while loading the file, either a
 parse error, semantic error or allocation failure. Otherwise returns FcTrue.
 @@
+
+@RET@          const FcChar8 *
+@FUNC@         FcConfigGetSysRoot
+@TYPE1@                const FcConfig *                @ARG1@          config
+@PURPOSE@      Obtain the system root directory
+@DESC@
+Obtrains the system root directory in 'config' if available.
+@SINCE@                2.10.92
+@@
+
+@RET@          void
+@FUNC@         FcConfigSetSysRoot
+@TYPE1@                FcConfig *                      @ARG1@          config
+@TYPE2@                const FcChar8 *                 @ARG2@          sysroot
+@PURPOSE@      Set the system root directory
+@DESC@
+Set 'sysroot' as the system root directory. fontconfig prepend 'sysroot'
+to the cache directories in order to allow people to generate caches at
+the build time. Note that this causes changing current config. i.e.
+this function calls FcConfigSetCurrent() internally.
+@SINCE@                2.10.92
+@@
+
index 4159a79..448c501 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcConfigCreate</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigCreate</refname>
 Creates an empty configuration.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -79,6 +75,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigReference</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigReference</refname>
@@ -105,11 +102,6 @@ it increments the reference count before returning and the user is responsible
 for destroying the configuration when not needed anymore.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -138,6 +130,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigDestroy</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigDestroy</refname>
@@ -162,11 +155,6 @@ Note that calling this function with the return from FcConfigGetCurrent will
 cause a new configuration to be created for use as current configuration.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -195,6 +183,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigSetCurrent</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigSetCurrent</refname>
@@ -214,12 +203,8 @@ Fontconfig version &version;
        <refsect1><title>Description</title>
            <para>
 Sets the current default configuration to <parameter>config</parameter>.  Implicitly calls
-FcConfigBuildFonts if necessary, returning FcFalse if that call fails.
-           </para>
-       </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
+FcConfigBuildFonts if necessary, and FcConfigReference() to inrease the reference count
+in <parameter>config</parameter> since 2.12.0, returning FcFalse if that call fails.
            </para>
        </refsect1>
     </refentry>
@@ -250,6 +235,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigGetCurrent</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigGetCurrent</refname>
@@ -271,11 +257,6 @@ Fontconfig version &version;
 Returns the current default configuration.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -304,6 +285,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigUptoDate</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigUptoDate</refname>
@@ -327,11 +309,6 @@ whether any of them has been modified since the configuration was created.
 If <parameter>config</parameter> is NULL, the current configuration is used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -360,6 +337,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigHome</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigHome</refname>
@@ -383,11 +361,6 @@ is enabled, and NULL otherwise.
 See also <function>FcConfigEnableHome</function>).
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -416,6 +389,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigEnableHome</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigEnableHome</refname>
@@ -441,11 +415,6 @@ FcFalse, then all use of the home directory in these contexts will be
 disabled. The previous setting of the value is returned.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -474,6 +443,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigBuildFonts</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigBuildFonts</refname>
@@ -498,11 +468,6 @@ Returns FcFalse if this operation runs out of memory.
 If <parameter>config</parameter> is NULL, the current configuration is used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -531,6 +496,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigGetConfigDirs</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigGetConfigDirs</refname>
@@ -554,11 +520,6 @@ for <parameter>config</parameter>.  Does not include any subdirectories.
 If <parameter>config</parameter> is NULL, the current configuration is used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -587,6 +548,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigGetFontDirs</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigGetFontDirs</refname>
@@ -611,11 +573,6 @@ filesystem.
 If <parameter>config</parameter> is NULL, the current configuration is used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -644,6 +601,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigGetConfigFiles</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigGetConfigFiles</refname>
@@ -666,11 +624,6 @@ Returns the list of known configuration files used to generate <parameter>config
 If <parameter>config</parameter> is NULL, the current configuration is used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -699,6 +652,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigGetCache</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigGetCache</refname>
@@ -721,11 +675,6 @@ With fontconfig no longer using per-user cache files, this function now
 simply returns NULL to indicate that no per-user file exists.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -754,6 +703,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigGetCacheDirs</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigGetCacheDirs</refname>
@@ -778,11 +728,6 @@ cache file for a font directory.
 If <parameter>config</parameter> is NULL, the current configuration is used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -811,6 +756,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigGetFonts</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigGetFonts</refname>
@@ -836,11 +782,6 @@ not be modified or freed.
 If <parameter>config</parameter> is NULL, the current configuration is used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -869,6 +810,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigGetBlanks</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigGetBlanks</refname>
@@ -894,11 +836,6 @@ FcConfig is alive.
 If <parameter>config</parameter> is NULL, the current configuration is used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -927,6 +864,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigGetRescanInterval</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigGetRescanInterval</refname>
@@ -952,11 +890,6 @@ An interval setting of zero disables automatic checks.
 If <parameter>config</parameter> is NULL, the current configuration is used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -985,6 +918,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigSetRescanInterval</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigSetRescanInterval</refname>
@@ -1010,11 +944,6 @@ An interval setting of zero disables automatic checks.
 If <parameter>config</parameter> is NULL, the current configuration is used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1043,6 +972,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigAppFontAddFile</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigAppFontAddFile</refname>
@@ -1063,13 +993,9 @@ Fontconfig version &version;
        <refsect1><title>Description</title>
            <para>
 Adds an application-specific font to the configuration. Returns FcFalse
-if the fonts cannot be added (due to allocation failure). Otherwise returns FcTrue.
-If <parameter>config</parameter> is NULL, the current configuration is used.
-           </para>
-       </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
+if the fonts cannot be added (due to allocation failure or no fonts found).
+Otherwise returns FcTrue. If <parameter>config</parameter> is NULL,
+the current configuration is used.
            </para>
        </refsect1>
     </refentry>
@@ -1100,6 +1026,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigAppFontAddDir</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigAppFontAddDir</refname>
@@ -1121,13 +1048,9 @@ Fontconfig version &version;
            <para>
 Scans the specified directory for fonts, adding each one found to the
 application-specific set of fonts. Returns FcFalse
-if the fonts cannot be added (due to allocation failure). Otherwise returns FcTrue.
-If <parameter>config</parameter> is NULL, the current configuration is used.
-           </para>
-       </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
+if the fonts cannot be added (due to allocation failure or no fonts found).
+Otherwise returns FcTrue. If <parameter>config</parameter> is NULL,
+the current configuration is used.
            </para>
        </refsect1>
     </refentry>
@@ -1158,6 +1081,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigAppFontClear</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigAppFontClear</refname>
@@ -1180,11 +1104,6 @@ Clears the set of application-specific fonts.
 If <parameter>config</parameter> is NULL, the current configuration is used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1213,6 +1132,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigSubstituteWithPat</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigSubstituteWithPat</refname>
@@ -1242,11 +1162,6 @@ if the substitution cannot be performed (due to allocation failure). Otherwise r
 If <parameter>config</parameter> is NULL, the current configuration is used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1275,6 +1190,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigSubstitute</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigSubstitute</refname>
@@ -1300,11 +1216,6 @@ if the substitution cannot be performed (due to allocation failure). Otherwise r
 If <parameter>config</parameter> is NULL, the current configuration is used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1333,6 +1244,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFontMatch</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFontMatch</refname>
@@ -1363,11 +1275,6 @@ pattern. This function should be called only after
 If <parameter>config</parameter> is NULL, the current configuration is used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1396,6 +1303,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFontSort</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFontSort</refname>
@@ -1434,11 +1342,6 @@ The FcFontSet returned by FcFontSort is destroyed by calling FcFontSetDestroy.
 If <parameter>config</parameter> is NULL, the current configuration is used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1467,6 +1370,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFontRenderPrepare</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFontRenderPrepare</refname>
@@ -1493,11 +1397,6 @@ value from <parameter>pat</parameter> for elements appearing in both.  The resul
 FcConfigSubstituteWithPat with <parameter>kind</parameter> FcMatchFont and then returned.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1526,6 +1425,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFontList</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFontList</refname>
@@ -1552,11 +1452,6 @@ If <parameter>config</parameter> is NULL, the default configuration is checked
 to be up to date, and used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1585,6 +1480,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigFilename</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigFilename</refname>
@@ -1616,11 +1512,6 @@ directory; the built-in default directory can be overridden with the
 FONTCONFIG_PATH environment variable.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1649,6 +1540,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcConfigParseAndLoad</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcConfigParseAndLoad</refname>
@@ -1677,9 +1569,114 @@ Returns FcFalse if some error occurred while loading the file, either a
 parse error, semantic error or allocation failure. Otherwise returns FcTrue.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
+    </refentry>
+<!--
+   fontconfig/doc/func.sgml
+  
+   Copyright © 2003 Keith Packard
+  
+   Permission to use, copy, modify, distribute, and sell this software and its
+   documentation for any purpose is hereby granted without fee, provided that
+   the above copyright notice appear in all copies and that both that
+   copyright notice and this permission notice appear in supporting
+   documentation, and that the name of the author(s) not be used in
+   advertising or publicity pertaining to distribution of the software without
+   specific, written prior permission.  The authors make no
+   representations about the suitability of this software for any purpose.  It
+   is provided "as is" without express or implied warranty.
+  
+   THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+   INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+   EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+   DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+   TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+   PERFORMANCE OF THIS SOFTWARE.
+ -->
+    <refentry id="FcConfigGetSysRoot">
+       <refmeta>
+           <refentrytitle>FcConfigGetSysRoot</refentrytitle>
+           <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+       </refmeta>
+       <refnamediv>
+           <refname>FcConfigGetSysRoot</refname>
+           <refpurpose>Obtain the system root directory</refpurpose>
+       </refnamediv>
+       <refsynopsisdiv>
+       <funcsynopsis>
+       <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+       </funcsynopsisinfo>
+       <funcprototype>
+           <funcdef>const FcChar8 * <function>FcConfigGetSysRoot</function></funcdef>
+               <paramdef>const FcConfig *<parameter>config</parameter></paramdef>
+       </funcprototype>
+       </funcsynopsis>
+       </refsynopsisdiv>
+       <refsect1><title>Description</title>
            <para>
-Fontconfig version &version;
+Obtrains the system root directory in 'config' if available.
            </para>
        </refsect1>
+       <refsect1><title>Since</title>
+           <para>version 2.10.92</para>
+       </refsect1>
+    </refentry>
+<!--
+   fontconfig/doc/func.sgml
+  
+   Copyright © 2003 Keith Packard
+  
+   Permission to use, copy, modify, distribute, and sell this software and its
+   documentation for any purpose is hereby granted without fee, provided that
+   the above copyright notice appear in all copies and that both that
+   copyright notice and this permission notice appear in supporting
+   documentation, and that the name of the author(s) not be used in
+   advertising or publicity pertaining to distribution of the software without
+   specific, written prior permission.  The authors make no
+   representations about the suitability of this software for any purpose.  It
+   is provided "as is" without express or implied warranty.
+  
+   THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+   INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+   EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+   DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+   TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+   PERFORMANCE OF THIS SOFTWARE.
+ -->
+    <refentry id="FcConfigSetSysRoot">
+       <refmeta>
+           <refentrytitle>FcConfigSetSysRoot</refentrytitle>
+           <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+       </refmeta>
+       <refnamediv>
+           <refname>FcConfigSetSysRoot</refname>
+           <refpurpose>Set the system root directory</refpurpose>
+       </refnamediv>
+       <refsynopsisdiv>
+       <funcsynopsis>
+       <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+       </funcsynopsisinfo>
+       <funcprototype>
+           <funcdef>void <function>FcConfigSetSysRoot</function></funcdef>
+               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
+               <paramdef>const FcChar8 *<parameter>sysroot</parameter></paramdef>
+       </funcprototype>
+       </funcsynopsis>
+       </refsynopsisdiv>
+       <refsect1><title>Description</title>
+           <para>
+Set 'sysroot' as the system root directory. fontconfig prepend 'sysroot'
+to the cache directories in order to allow people to generate caches at
+the build time. Note that this causes changing current config. i.e.
+this function calls FcConfigSetCurrent() internally.
+           </para>
+       </refsect1>
+       <refsect1><title>Since</title>
+           <para>version 2.10.92</para>
+       </refsect1>
     </refentry>
index a562773..28097a5 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcNameRegisterConstants</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcNameRegisterConstants</refname>
 Deprecated.  Does nothing.  Returns FcFalse.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -80,6 +76,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcNameUnregisterConstants</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcNameUnregisterConstants</refname>
@@ -102,11 +99,6 @@ Fontconfig version &version;
 Deprecated.  Does nothing.  Returns FcFalse.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcNameGetConstant</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcNameGetConstant</refname>
@@ -156,11 +149,6 @@ Fontconfig version &version;
 Return the FcConstant structure related to symbolic constant <parameter>string</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -189,6 +177,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcNameConstant</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcNameConstant</refname>
@@ -212,9 +201,4 @@ Returns whether a symbolic constant with name <parameter>string</parameter> is r
 placing the value of the constant in <parameter>result</parameter> if present.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
index 24dea8b..faeba29 100644 (file)
@@ -55,6 +55,17 @@ FcDirCacheRead.
 @@
 
 @RET@          FcCache *
+@FUNC@         FcDirCacheRescan
+@TYPE1@                const FcChar8 *                 @ARG1@          dir
+@TYPE2@                FcConfig *                      @ARG2@          config
+@PURPOSE@      Re-scan a directory cache
+@DESC@
+Re-scan directories only at <parameter>dir</parameter> and update the cache.
+returns NULL if failed.
+@SINCE@                2.11.1
+@@
+
+@RET@          FcCache *
 @FUNC@         FcDirCacheRead
 @TYPE1@                const FcChar8 *                 @ARG1@          dir
 @TYPE2@                FcBool%                         @ARG2@          force
index b259b10..154ec41 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcDirCacheUnlink</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcDirCacheUnlink</refname>
@@ -50,11 +51,6 @@ when some internal error occurs (out of memory, etc). Errors actually
 unlinking any files are ignored.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -83,6 +79,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcDirCacheValid</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcDirCacheValid</refname>
@@ -105,11 +102,6 @@ Returns FcTrue if <parameter>dir</parameter> has an associated valid cache
 file, else returns FcFalse
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -138,6 +130,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcDirCacheLoad</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcDirCacheLoad</refname>
@@ -164,11 +157,61 @@ exists, returns NULL. The name of the cache file is returned in
 FcDirCacheRead.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
+    </refentry>
+<!--
+   fontconfig/doc/func.sgml
+  
+   Copyright © 2003 Keith Packard
+  
+   Permission to use, copy, modify, distribute, and sell this software and its
+   documentation for any purpose is hereby granted without fee, provided that
+   the above copyright notice appear in all copies and that both that
+   copyright notice and this permission notice appear in supporting
+   documentation, and that the name of the author(s) not be used in
+   advertising or publicity pertaining to distribution of the software without
+   specific, written prior permission.  The authors make no
+   representations about the suitability of this software for any purpose.  It
+   is provided "as is" without express or implied warranty.
+  
+   THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+   INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+   EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+   DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+   TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+   PERFORMANCE OF THIS SOFTWARE.
+ -->
+    <refentry id="FcDirCacheRescan">
+       <refmeta>
+           <refentrytitle>FcDirCacheRescan</refentrytitle>
+           <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+       </refmeta>
+       <refnamediv>
+           <refname>FcDirCacheRescan</refname>
+           <refpurpose>Re-scan a directory cache</refpurpose>
+       </refnamediv>
+       <refsynopsisdiv>
+       <funcsynopsis>
+       <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+       </funcsynopsisinfo>
+       <funcprototype>
+           <funcdef>FcCache * <function>FcDirCacheRescan</function></funcdef>
+               <paramdef>const FcChar8 *<parameter>dir</parameter></paramdef>
+               <paramdef>FcConfig *<parameter>config</parameter></paramdef>
+       </funcprototype>
+       </funcsynopsis>
+       </refsynopsisdiv>
+       <refsect1><title>Description</title>
            <para>
-Fontconfig version &version;
+Re-scan directories only at <parameter>dir</parameter> and update the cache.
+returns NULL if failed.
            </para>
        </refsect1>
+       <refsect1><title>Since</title>
+           <para>version 2.11.1</para>
+       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -197,6 +240,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcDirCacheRead</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcDirCacheRead</refname>
@@ -223,11 +267,6 @@ will be used. Otherwise, a new cache will be created by scanning the
 directory and that returned.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -256,6 +295,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcDirCacheLoadFile</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcDirCacheLoadFile</refname>
@@ -280,11 +320,6 @@ This function loads a directory cache from
 non-NULL, it will be filled with the results of stat(2) on the cache file.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -313,6 +348,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcDirCacheUnload</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcDirCacheUnload</refname>
@@ -335,9 +371,4 @@ This function dereferences <parameter>cache</parameter>. When no other
 references to it remain, all memory associated with the cache will be freed.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
index 617f690..0703d09 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcFileScan</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFileScan</refname>
@@ -61,11 +62,6 @@ contents of the font file itself. Returns FcFalse if any of the fonts cannot be
 added (due to allocation failure). Otherwise returns FcTrue.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -94,6 +90,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFileIsDir</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFileIsDir</refname>
@@ -116,11 +113,6 @@ Returns FcTrue if <parameter>file</parameter> is a directory, otherwise
 returns FcFalse.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -149,6 +141,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcDirScan</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcDirScan</refname>
@@ -180,11 +173,6 @@ this function does not create any cache files.  Use FcDirCacheRead() if
 caching is desired.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -213,6 +201,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcDirSave</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcDirSave</refname>
@@ -240,9 +229,4 @@ with the fonts in <parameter>set</parameter> and subdirectories in
 managed by FcDirCacheLoad and FcDirCacheRead.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
index b06aa56..bb6cd07 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcFontSetCreate</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFontSetCreate</refname>
 Creates an empty font set.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -79,6 +75,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFontSetDestroy</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFontSetDestroy</refname>
@@ -101,11 +98,6 @@ Destroys a font set.  Note that this destroys any referenced patterns as
 well.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -134,6 +126,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFontSetAdd</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFontSetAdd</refname>
@@ -158,11 +151,6 @@ being inserted into the set. Returns FcFalse if the pattern cannot be
 inserted into the set (due to allocation failure). Otherwise returns FcTrue.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -191,6 +179,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFontSetList</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFontSetList</refname>
@@ -221,11 +210,6 @@ If <parameter>config</parameter> is NULL, the default configuration is checked
 to be up to date, and used.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -254,6 +238,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFontSetMatch</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFontSetMatch</refname>
@@ -287,11 +272,6 @@ If <parameter>config</parameter> is NULL, the current configuration is used.
 Returns NULL if an error occurs during this process.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -320,6 +300,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFontSetPrint</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFontSetPrint</refname>
@@ -344,11 +325,6 @@ of the output is designed to be of help to users and developers, and may
 change at any time.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -377,6 +353,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFontSetSort</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFontSetSort</refname>
@@ -421,11 +398,6 @@ modify these patterns.  Instead, they should be passed, along with
 The FcFontSet returned by FcFontSetSort is destroyed by calling FcFontSetDestroy.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -454,6 +426,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFontSetSortDestroy</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFontSetSortDestroy</refname>
@@ -478,9 +451,4 @@ destroys <parameter>set</parameter> by calling
 <function>FcFontSetDestroy</function> directly instead.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
index c136e8c..71b866b 100644 (file)
@@ -305,4 +305,5 @@ For example, the format "%{family|downcase|delete( )}\n" will expand
 to the values of the family element in <parameter>pattern</parameter>,
 lower-cased and with spaces removed.
 
+@SINCE@                2.9.0
 @@
index 4df6e15..8f7a337 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcPatternFormat</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternFormat</refname>
@@ -321,9 +322,7 @@ to the values of the family element in <parameter>pattern</parameter>,
 lower-cased and with spaces removed.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
+       <refsect1><title>Since</title>
+           <para>version 2.9.0</para>
        </refsect1>
     </refentry>
index 8a0599d..12eb4f4 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcFreeTypeCharIndex</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFreeTypeCharIndex</refname>
@@ -52,11 +53,6 @@ sensitive areas; results from this function are intended to be cached by
 higher level functions.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -85,6 +81,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFreeTypeCharSet</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFreeTypeCharSet</refname>
@@ -111,11 +108,6 @@ If 'blanks' is not 0, the glyphs in the font are examined and any blank glyphs
 not in 'blanks' are not placed in the returned FcCharSet.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -144,6 +136,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFreeTypeCharSetAndSpacing</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFreeTypeCharSetAndSpacing</refname>
@@ -177,11 +170,6 @@ wide as the other, or FC_PROPORTIONAL where the font has glyphs of many
 widths.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -210,6 +198,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFreeTypeQuery</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFreeTypeQuery</refname>
@@ -236,11 +225,6 @@ Constructs a pattern representing the 'id'th font in 'file'.  The number
 of fonts in 'file' is returned in 'count'.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -269,6 +253,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFreeTypeQueryFace</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFreeTypeQueryFace</refname>
@@ -295,9 +280,4 @@ Constructs a pattern representing 'face'. 'file' and 'id' are used solely as
 data for pattern elements (FC_FILE, FC_INDEX and sometimes FC_FAMILY).
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
index 49a4c48..13a6543 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcInitLoadConfig</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcInitLoadConfig</refname>
@@ -47,11 +48,6 @@ Loads the default configuration file and returns the resulting configuration.
 Does not load any font information.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -80,6 +76,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcInitLoadConfigAndFonts</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcInitLoadConfigAndFonts</refname>
@@ -102,11 +99,6 @@ Loads the default configuration file and builds information about the
 available fonts.  Returns the resulting configuration.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcInit</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcInit</refname>
@@ -159,11 +152,6 @@ process succeeded or not.  If the default configuration has already
 been loaded, this routine does nothing and returns FcTrue.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -192,6 +180,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcFini</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcFini</refname>
@@ -216,11 +205,6 @@ new call to one of the FcInit functions before any other fontconfig
 function may be called.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -249,6 +233,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcGetVersion</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcGetVersion</refname>
@@ -270,11 +255,6 @@ Fontconfig version &version;
 Returns the version number of the library.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -303,6 +283,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcInitReinitialize</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcInitReinitialize</refname>
@@ -327,11 +308,6 @@ to configuration file errors, allocation failures or other issues) and leaves th
 existing configuration unchanged. Otherwise returns FcTrue.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -360,6 +336,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcInitBringUptoDate</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcInitBringUptoDate</refname>
@@ -384,9 +361,4 @@ when any changes are detected. Returns FcFalse if the configuration cannot
 be reloaded (see FcInitReinitialize). Otherwise returns FcTrue.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
index c08d60c..c7ed83b 100644 (file)
@@ -68,6 +68,7 @@ two or three letter language from ISO 639 and Tt is a territory from ISO
 <parameter>lang</parameter> should be of the form Ll-Tt where Ll is a
 two or three letter language from ISO 639 and Tt is a territory from ISO
 3166.
+@SINCE@                2.9.0
 @@
 
 @RET@          FcLangSet *
@@ -77,6 +78,7 @@ two or three letter language from ISO 639 and Tt is a territory from ISO
 @PURPOSE@      Add langsets
 @DESC@
 Returns a set including only those languages found in either <parameter>ls_a</parameter> or <parameter>ls_b</parameter>.
+@SINCE@                2.9.0
 @@
 
 @RET@          FcLangSet *
@@ -86,6 +88,7 @@ Returns a set including only those languages found in either <parameter>ls_a</pa
 @PURPOSE@      Subtract langsets
 @DESC@
 Returns a set including only those languages found in <parameter>ls_a</parameter> but not in <parameter>ls_b</parameter>.
+@SINCE@                2.9.0
 @@
 
 @RET@          FcLangResult
@@ -161,6 +164,8 @@ has no matching language, this function returns FcLangDifferentLang.
 Returns a string set of the default languages according to the environment variables on the system.
 This function looks for them in order of FC_LANG, LC_ALL, LC_CTYPE and LANG then.
 If there are no valid values in those environment variables, "en" will be set as fallback.
+@SINCE@                2.9.91
+@@
 
 @RET@          FcStrSet *
 @FUNC@         FcLangSetGetLangs
@@ -184,6 +189,7 @@ Returns a string set of all known languages.
 @PURPOSE@      Normalize the language string
 @DESC@
 Returns a string to make <parameter>lang</parameter> suitable on fontconfig.
+@SINCE@                2.10.91
 @@
 
 @RET@          const FcCharSet *
index db78822..a340755 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcLangSetCreate</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcLangSetCreate</refname>
 <function>FcLangSetCreate</function> creates a new FcLangSet object.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -79,6 +75,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcLangSetDestroy</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcLangSetDestroy</refname>
@@ -101,11 +98,6 @@ Fontconfig version &version;
 all memory associated with it.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -134,6 +126,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcLangSetCopy</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcLangSetCopy</refname>
@@ -156,11 +149,6 @@ Fontconfig version &version;
 populates it with the contents of <parameter>ls</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -189,6 +177,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcLangSetAdd</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcLangSetAdd</refname>
@@ -214,11 +203,6 @@ two or three letter language from ISO 639 and Tt is a territory from ISO
 3166.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -247,6 +231,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcLangSetDel</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcLangSetDel</refname>
@@ -272,10 +257,8 @@ two or three letter language from ISO 639 and Tt is a territory from ISO
 3166.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
+       <refsect1><title>Since</title>
+           <para>version 2.9.0</para>
        </refsect1>
     </refentry>
 <!--
@@ -305,6 +288,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcLangSetUnion</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcLangSetUnion</refname>
@@ -327,10 +311,8 @@ Fontconfig version &version;
 Returns a set including only those languages found in either <parameter>ls_a</parameter> or <parameter>ls_b</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
+       <refsect1><title>Since</title>
+           <para>version 2.9.0</para>
        </refsect1>
     </refentry>
 <!--
@@ -360,6 +342,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcLangSetSubtract</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcLangSetSubtract</refname>
@@ -382,10 +365,8 @@ Fontconfig version &version;
 Returns a set including only those languages found in <parameter>ls_a</parameter> but not in <parameter>ls_b</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
+       <refsect1><title>Since</title>
+           <para>version 2.9.0</para>
        </refsect1>
     </refentry>
 <!--
@@ -415,6 +396,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcLangSetCompare</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcLangSetCompare</refname>
@@ -442,11 +424,6 @@ function returns FcLangDifferentTerritory. If they share no languages in
 common, this function returns FcLangDifferentLang.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -475,6 +452,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcLangSetContains</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcLangSetContains</refname>
@@ -502,11 +480,6 @@ has exactly the language, or either the language or
 <parameter>ls_a</parameter> has no territory.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -535,6 +508,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcLangSetEqual</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcLangSetEqual</refname>
@@ -558,11 +532,6 @@ Returns FcTrue if and only if <parameter>ls_a</parameter> supports precisely
 the same language and territory combinations as <parameter>ls_b</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -591,6 +560,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcLangSetHash</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcLangSetHash</refname>
@@ -616,11 +586,6 @@ supported by <parameter>ls</parameter>. Any language which equals
 value may not be equal.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -649,6 +614,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcLangSetHasLang</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcLangSetHasLang</refname>
@@ -677,11 +643,6 @@ function returns FcLangDifferentTerritory. If <parameter>ls</parameter>
 has no matching language, this function returns FcLangDifferentLang.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -710,6 +671,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcGetDefaultLangs</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcGetDefaultLangs</refname>
@@ -722,7 +684,7 @@ Fontconfig version &version;
        </funcsynopsisinfo>
        <funcprototype>
            <funcdef>FcStrSet * <function>FcGetDefaultLangs</function></funcdef>
-               <paramdef>void<parameter>ls</parameter></paramdef>
+               <paramdef>void<parameter></parameter></paramdef>
        </funcprototype>
        </funcsynopsis>
        </refsynopsisdiv>
@@ -733,9 +695,57 @@ This function looks for them in order of FC_LANG, LC_ALL, LC_CTYPE and LANG then
 If there are no valid values in those environment variables, "en" will be set as fallback.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
+       <refsect1><title>Since</title>
+           <para>version 2.9.91</para>
+       </refsect1>
+    </refentry>
+<!--
+   fontconfig/doc/func.sgml
+  
+   Copyright © 2003 Keith Packard
+  
+   Permission to use, copy, modify, distribute, and sell this software and its
+   documentation for any purpose is hereby granted without fee, provided that
+   the above copyright notice appear in all copies and that both that
+   copyright notice and this permission notice appear in supporting
+   documentation, and that the name of the author(s) not be used in
+   advertising or publicity pertaining to distribution of the software without
+   specific, written prior permission.  The authors make no
+   representations about the suitability of this software for any purpose.  It
+   is provided "as is" without express or implied warranty.
+  
+   THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+   INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+   EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+   DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+   TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+   PERFORMANCE OF THIS SOFTWARE.
+ -->
+    <refentry id="FcLangSetGetLangs">
+       <refmeta>
+           <refentrytitle>FcLangSetGetLangs</refentrytitle>
+           <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+       </refmeta>
+       <refnamediv>
+           <refname>FcLangSetGetLangs</refname>
+           <refpurpose>get the list of languages in the langset</refpurpose>
+       </refnamediv>
+       <refsynopsisdiv>
+       <funcsynopsis>
+       <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+       </funcsynopsisinfo>
+       <funcprototype>
+           <funcdef>FcStrSet * <function>FcLangSetGetLangs</function></funcdef>
+               <paramdef>const FcLangSet *<parameter>ls</parameter></paramdef>
+       </funcprototype>
+       </funcsynopsis>
+       </refsynopsisdiv>
+       <refsect1><title>Description</title>
            <para>
-Fontconfig version &version;
+Returns a string set of all languages in <parameter>langset</parameter>.
            </para>
        </refsect1>
     </refentry>
@@ -766,6 +776,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcGetLangs</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcGetLangs</refname>
@@ -787,11 +798,6 @@ Fontconfig version &version;
 Returns a string set of all known languages.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -820,6 +826,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcLangNormalize</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcLangNormalize</refname>
@@ -841,10 +848,8 @@ Fontconfig version &version;
 Returns a string to make <parameter>lang</parameter> suitable on fontconfig.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
+       <refsect1><title>Since</title>
+           <para>version 2.10.91</para>
        </refsect1>
     </refentry>
 <!--
@@ -874,6 +879,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcLangGetCharSet</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcLangGetCharSet</refname>
@@ -895,9 +901,4 @@ Fontconfig version &version;
 Returns the FcCharMap for a language.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
index a0c7c3b..65ff64a 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcMatrixInit</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcMatrixInit</refname>
 to the identity matrix.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -80,6 +76,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcMatrixCopy</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcMatrixCopy</refname>
@@ -102,11 +99,6 @@ Fontconfig version &version;
 and copies <parameter>mat</parameter> into it.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcMatrixEqual</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcMatrixEqual</refname>
@@ -159,11 +152,6 @@ and <parameter>matrix2</parameter> returning FcTrue when they are equal and
 FcFalse when they are not.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -192,6 +180,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcMatrixMultiply</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcMatrixMultiply</refname>
@@ -217,11 +206,6 @@ Fontconfig version &version;
 the result in <parameter>result</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -250,6 +234,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcMatrixRotate</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcMatrixRotate</refname>
@@ -280,11 +265,6 @@ matrix:
 </programlisting>
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -313,6 +293,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcMatrixScale</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcMatrixScale</refname>
@@ -343,11 +324,6 @@ the matrix:
 </programlisting>
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -376,6 +352,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcMatrixShear</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcMatrixShear</refname>
@@ -406,9 +383,4 @@ the matrix:
 </programlisting>
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
index 4ccf94f..ccc7077 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcObjectSetCreate</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcObjectSetCreate</refname>
 Creates an empty set.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -79,6 +75,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcObjectSetAdd</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcObjectSetAdd</refname>
@@ -102,11 +99,6 @@ Adds a property name to the set. Returns FcFalse if the property name cannot be
 inserted into the set (due to allocation failure). Otherwise returns FcTrue.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcObjectSetDestroy</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcObjectSetDestroy</refname>
@@ -156,11 +149,6 @@ Fontconfig version &version;
 Destroys an object set.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -189,6 +177,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcObjectSetBuild</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcObjectSetBuild</refname>
@@ -226,9 +215,4 @@ FcObjectSetVapBuild is a macro version of FcObjectSetVaBuild which returns
 the result in the <parameter>result</parameter> variable directly.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
index 3575bbb..a9de506 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcNameRegisterObjectTypes</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcNameRegisterObjectTypes</refname>
 Deprecated.  Does nothing.  Returns FcFalse.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -80,6 +76,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcNameUnregisterObjectTypes</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcNameUnregisterObjectTypes</refname>
@@ -102,11 +99,6 @@ Fontconfig version &version;
 Deprecated.  Does nothing.  Returns FcFalse.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcNameGetObjectType</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcNameGetObjectType</refname>
@@ -156,9 +149,4 @@ Fontconfig version &version;
 Return the object type for the pattern element named <parameter>object</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
index 1df1c4f..1049d77 100644 (file)
@@ -181,12 +181,21 @@ values added to the list have binding <parameter>weak</parameter> instead of <pa
 @TYPE2+++++++@ const char *                    @ARG2+++++++@   object
 @TYPE3+++++++@ const FcLangSet *               @ARG3+++++++@   l
 
+@PROTOTYPE++++++++@
+@RET++++++++@  FcBool
+@FUNC++++++++@ FcPatternAddRange
+@TYPE1++++++++@        FcPattern *                     @ARG1++++++++@  p
+@TYPE2++++++++@        const char *                    @ARG2++++++++@  object
+@TYPE3++++++++@        const FcRange *                 @ARG3++++++++@  r
+
 @PURPOSE@      Add a typed value to a pattern
 @DESC@
 These are all convenience functions that insert objects of the specified
 type into the pattern.  Use these in preference to FcPatternAdd as they
 will provide compile-time typechecking.  These all append values to
 any existing list of values.
+
+<function>FcPatternAddRange</function> are available since 2.11.91.
 @@
 
 @RET@          FcResult
@@ -257,16 +266,24 @@ within the pattern directly.  Applications must not free this value.
 @FUNC++++++@   FcPatternGetFTFace
 @TYPE1++++++@  FcPattern *                     @ARG1++++++@    p
 @TYPE2++++++@  const char *                    @ARG2++++++@    object
-@TYPE3+++++@   int%                            @ARG3+++++@     n
-@TYPE3++++++@  FT_Face *                       @ARG3++++++@    f
+@TYPE3++++++@  int%                            @ARG3++++++@    n
+@TYPE4++++++@  FT_Face *                       @ARG4++++++@    f
 
 @PROTOTYPE+++++++@
 @RET+++++++@   FcResult
 @FUNC+++++++@  FcPatternGetLangSet
 @TYPE1+++++++@         FcPattern *                     @ARG1+++++++@   p
 @TYPE2+++++++@ const char *                    @ARG2+++++++@   object
-@TYPE3+++++@   int%                            @ARG3+++++@     n
-@TYPE3+++++++@ FcLangSet **                    @ARG3+++++++@   l
+@TYPE3+++++++@         int%                            @ARG3+++++++@   n
+@TYPE4+++++++@ FcLangSet **                    @ARG4+++++++@   l
+
+@PROTOTYPE++++++++@
+@RET++++++++@  FcResult
+@FUNC++++++++@ FcPatternGetRange
+@TYPE1++++++++@        FcPattern *                     @ARG1++++++++@  p
+@TYPE2++++++++@        const char *                    @ARG2++++++++@  object
+@TYPE3++++++++@        int%                            @ARG3++++++++@  n
+@TYPE4++++++++@        FcRange **                      @ARG4++++++++@  r
 
 @PURPOSE@      Return a typed value from a pattern
 @DESC@
@@ -275,6 +292,8 @@ returned data is of the expected type. They return FcResultTypeMismatch if
 this is not the case.  Note that these (like FcPatternGet) do not make a
 copy of any data structure referenced by the return value.  Use these
 in preference to FcPatternGet to provide compile-time typechecking.
+
+<function>FcPatternGetRange</function> are available since 2.11.91.
 @@
 
 @RET@          FcPattern *
index 9f635eb..7e31ea3 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcPatternCreate</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternCreate</refname>
 Creates a pattern with no properties; used to build patterns from scratch.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -79,6 +75,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcPatternDuplicate</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternDuplicate</refname>
@@ -102,11 +99,6 @@ Copy a pattern, returning a new pattern that matches
 other.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcPatternReference</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternReference</refname>
@@ -157,11 +150,6 @@ Add another reference to <parameter>p</parameter>. Patterns are freed only
 when the reference count reaches zero.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -190,6 +178,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcPatternDestroy</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternDestroy</refname>
@@ -212,11 +201,6 @@ Decrement the pattern reference count. If all references are gone, destroys
 the pattern, in the process destroying all related values.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -245,6 +229,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcPatternEqual</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternEqual</refname>
@@ -267,11 +252,6 @@ Fontconfig version &version;
 Returns whether <parameter>pa</parameter> and <parameter>pb</parameter> are exactly alike.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -300,6 +280,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcPatternEqualSubset</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternEqualSubset</refname>
@@ -324,11 +305,6 @@ Returns whether <parameter>pa</parameter> and <parameter>pb</parameter> have exa
 objects in <parameter>os</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -357,6 +333,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcPatternFilter</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternFilter</refname>
@@ -382,11 +359,6 @@ If <parameter>os</parameter> is NULL, a duplicate of
 <parameter>p</parameter> is returned.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -415,6 +387,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcPatternHash</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternHash</refname>
@@ -437,11 +410,6 @@ Returns a 32-bit number which is the same for any two patterns which are
 equal.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -470,6 +438,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcPatternAdd</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternAdd</refname>
@@ -498,11 +467,6 @@ existing list, otherwise it is inserted at the beginning.  `value' is saved
 retains no reference to any application-supplied data structure.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -531,6 +495,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcPatternAddWeak</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternAddWeak</refname>
@@ -556,11 +521,6 @@ FcPatternAddWeak is essentially the same as FcPatternAdd except that any
 values added to the list have binding <parameter>weak</parameter> instead of <parameter>strong</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -589,6 +549,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcPatternAdd-Type</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternAddInteger</refname>
@@ -599,6 +560,7 @@ Fontconfig version &version;
            <refname>FcPatternAddBool</refname>
            <refname>FcPatternAddFTFace</refname>
            <refname>FcPatternAddLangSet</refname>
+           <refname>FcPatternAddRange</refname>
            <refpurpose>Add a typed value to a pattern</refpurpose>
        </refnamediv>
        <refsynopsisdiv>
@@ -654,6 +616,12 @@ Fontconfig version &version;
                <paramdef>const char *<parameter>object</parameter></paramdef>
                <paramdef>const FcLangSet *<parameter>l</parameter></paramdef>
        </funcprototype>
+       <funcprototype>
+           <funcdef>FcBool <function>FcPatternAddRange</function></funcdef>
+               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
+               <paramdef>const char *<parameter>object</parameter></paramdef>
+               <paramdef>const FcRange *<parameter>r</parameter></paramdef>
+       </funcprototype>
        </funcsynopsis>
        </refsynopsisdiv>
        <refsect1><title>Description</title>
@@ -662,11 +630,8 @@ These are all convenience functions that insert objects of the specified
 type into the pattern.  Use these in preference to FcPatternAdd as they
 will provide compile-time typechecking.  These all append values to
 any existing list of values.
-           </para>
-       </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
+
+<function>FcPatternAddRange</function> are available since 2.11.91.
            </para>
        </refsect1>
     </refentry>
@@ -697,6 +662,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcPatternGet</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternGet</refname>
@@ -724,11 +690,6 @@ The value returned is not a copy, but rather refers to the data stored
 within the pattern directly.  Applications must not free this value.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -757,6 +718,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcPatternGet-Type</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternGetInteger</refname>
@@ -767,6 +729,7 @@ Fontconfig version &version;
            <refname>FcPatternGetBool</refname>
            <refname>FcPatternGetFTFace</refname>
            <refname>FcPatternGetLangSet</refname>
+           <refname>FcPatternGetRange</refname>
            <refpurpose>Return a typed value from a pattern</refpurpose>
        </refnamediv>
        <refsynopsisdiv>
@@ -821,12 +784,21 @@ Fontconfig version &version;
                <paramdef>FcPattern *<parameter>p</parameter></paramdef>
                <paramdef>const char *<parameter>object</parameter></paramdef>
                <paramdef>int <parameter>n</parameter></paramdef>
+               <paramdef>FT_Face *<parameter>f</parameter></paramdef>
        </funcprototype>
        <funcprototype>
            <funcdef>FcResult <function>FcPatternGetLangSet</function></funcdef>
                <paramdef>FcPattern *<parameter>p</parameter></paramdef>
                <paramdef>const char *<parameter>object</parameter></paramdef>
-               <paramdef>FT_Face *<parameter>f</parameter></paramdef>
+               <paramdef>int <parameter>n</parameter></paramdef>
+               <paramdef>FcLangSet **<parameter>l</parameter></paramdef>
+       </funcprototype>
+       <funcprototype>
+           <funcdef>FcResult <function>FcPatternGetRange</function></funcdef>
+               <paramdef>FcPattern *<parameter>p</parameter></paramdef>
+               <paramdef>const char *<parameter>object</parameter></paramdef>
+               <paramdef>int <parameter>n</parameter></paramdef>
+               <paramdef>FcRange **<parameter>r</parameter></paramdef>
        </funcprototype>
        </funcsynopsis>
        </refsynopsisdiv>
@@ -837,11 +809,8 @@ returned data is of the expected type. They return FcResultTypeMismatch if
 this is not the case.  Note that these (like FcPatternGet) do not make a
 copy of any data structure referenced by the return value.  Use these
 in preference to FcPatternGet to provide compile-time typechecking.
-           </para>
-       </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
+
+<function>FcPatternGetRange</function> are available since 2.11.91.
            </para>
        </refsect1>
     </refentry>
@@ -872,6 +841,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcPatternBuild</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternBuild</refname>
@@ -934,11 +904,6 @@ which returns its result directly in the <parameter>result</parameter>
 variable.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -967,6 +932,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcPatternDel</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternDel</refname>
@@ -990,11 +956,6 @@ Deletes all values associated with the property `object', returning
 whether the property existed or not.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1023,6 +984,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcPatternRemove</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternRemove</refname>
@@ -1047,11 +1009,6 @@ Removes the value associated with the property `object' at position `id', return
 whether the property existed and had a value at that position or not.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1080,6 +1037,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcPatternPrint</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcPatternPrint</refname>
@@ -1103,11 +1061,6 @@ no provision for reparsing data in this format, it's just for diagnostics
 and debugging.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1136,6 +1089,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcDefaultSubstitute</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcDefaultSubstitute</refname>
@@ -1169,11 +1123,6 @@ specified point size (default 12), dpi (default 75) and scale (default 1).
 </itemizedlist>
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1202,6 +1151,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcNameParse</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcNameParse</refname>
@@ -1223,11 +1173,6 @@ Fontconfig version &version;
 Converts <parameter>name</parameter> from the standard text format described above into a pattern.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1256,6 +1201,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcNameUnparse</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcNameUnparse</refname>
@@ -1279,9 +1225,4 @@ The return value is not static, but instead refers to newly allocated memory
 which should be freed by the caller using free().
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
diff --git a/doc/fcrange.fncs b/doc/fcrange.fncs
new file mode 100644 (file)
index 0000000..ba76f65
--- /dev/null
@@ -0,0 +1,75 @@
+/*
+ * fontconfig/doc/fcrange.fncs
+ *
+ * Copyright © 2003 Keith Packard
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission.  The authors make no
+ * representations about the suitability of this software for any purpose.  It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+@RET@          FcRange *
+@FUNC@         FcRangeCopy
+@TYPE1@                const FcRange *                 @ARG1@          range
+@PURPOSE@      Copy a range object
+@DESC@
+<function>FcRangeCopy</function> creates a new FcRange object and
+populates it with the contents of <parameter>range</parameter>.
+@SINCE@                2.11.91
+@@
+
+@RET@          FcRange *
+@FUNC@         FcRangeCreateDouble
+@TYPE1@                double                          @ARG1@          begin
+@TYPE2@                double                          @ARG2@          end
+@PURPOSE@      create a range object for double
+@DESC@
+<function>FcRangeCreateDouble</function> creates a new FcRange object with
+double sized value.
+@SINCE@                2.11.91
+@@
+
+@RET@          FcRange *
+@FUNC@         FcRangeCreateInteger
+@TYPE1@                int                             @ARG1@          begin
+@TYPE2@                int                             @ARG2@          end
+@PURPOSE@      create a range object for integer
+@DESC@
+<function>FcRangeCreateInteger</function> creates a new FcRange object with
+integer sized value.
+@SINCE@                2.11.91
+@@
+
+@RET@          void
+@FUNC@         FcRangeDestroy
+@TYPE1@                FcRange *                       @ARG1@          range
+@PURPOSE@      destroy a range object
+@DESC@
+<function>FcRangeDestroy</function> destroys a FcRange object, freeing
+all memory associated with it.
+@SINCE@                2.11.91
+@@
+
+@RET@          FcBool
+@FUNC@         FcRangeGetDouble
+@TYPE1@                const FcRange *                 @ARG1@          range
+@TYPE2@                double *                        @ARG2@          begin
+@TYPE3@                double *                        @ARG3@          end
+@PURPOSE@      Get the range in double
+@DESC@
+Returns in <parameter>begin</parameter> and <parameter>end</parameter> as the range.
+@SINCE@                2.11.91
+@@
diff --git a/doc/fcrange.sgml b/doc/fcrange.sgml
new file mode 100644 (file)
index 0000000..08d6be0
--- /dev/null
@@ -0,0 +1,273 @@
+<!--
+   fontconfig/doc/func.sgml
+  
+   Copyright © 2003 Keith Packard
+  
+   Permission to use, copy, modify, distribute, and sell this software and its
+   documentation for any purpose is hereby granted without fee, provided that
+   the above copyright notice appear in all copies and that both that
+   copyright notice and this permission notice appear in supporting
+   documentation, and that the name of the author(s) not be used in
+   advertising or publicity pertaining to distribution of the software without
+   specific, written prior permission.  The authors make no
+   representations about the suitability of this software for any purpose.  It
+   is provided "as is" without express or implied warranty.
+  
+   THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+   INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+   EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+   DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+   TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+   PERFORMANCE OF THIS SOFTWARE.
+ -->
+    <refentry id="FcRangeCopy">
+       <refmeta>
+           <refentrytitle>FcRangeCopy</refentrytitle>
+           <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+       </refmeta>
+       <refnamediv>
+           <refname>FcRangeCopy</refname>
+           <refpurpose>Copy a range object</refpurpose>
+       </refnamediv>
+       <refsynopsisdiv>
+       <funcsynopsis>
+       <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+       </funcsynopsisinfo>
+       <funcprototype>
+           <funcdef>FcRange * <function>FcRangeCopy</function></funcdef>
+               <paramdef>const FcRange *<parameter>range</parameter></paramdef>
+       </funcprototype>
+       </funcsynopsis>
+       </refsynopsisdiv>
+       <refsect1><title>Description</title>
+           <para>
+<function>FcRangeCopy</function> creates a new FcRange object and
+populates it with the contents of <parameter>range</parameter>.
+           </para>
+       </refsect1>
+       <refsect1><title>Since</title>
+           <para>version 2.11.91</para>
+       </refsect1>
+    </refentry>
+<!--
+   fontconfig/doc/func.sgml
+  
+   Copyright © 2003 Keith Packard
+  
+   Permission to use, copy, modify, distribute, and sell this software and its
+   documentation for any purpose is hereby granted without fee, provided that
+   the above copyright notice appear in all copies and that both that
+   copyright notice and this permission notice appear in supporting
+   documentation, and that the name of the author(s) not be used in
+   advertising or publicity pertaining to distribution of the software without
+   specific, written prior permission.  The authors make no
+   representations about the suitability of this software for any purpose.  It
+   is provided "as is" without express or implied warranty.
+  
+   THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+   INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+   EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+   DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+   TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+   PERFORMANCE OF THIS SOFTWARE.
+ -->
+    <refentry id="FcRangeCreateDouble">
+       <refmeta>
+           <refentrytitle>FcRangeCreateDouble</refentrytitle>
+           <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+       </refmeta>
+       <refnamediv>
+           <refname>FcRangeCreateDouble</refname>
+           <refpurpose>create a range object for double</refpurpose>
+       </refnamediv>
+       <refsynopsisdiv>
+       <funcsynopsis>
+       <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+       </funcsynopsisinfo>
+       <funcprototype>
+           <funcdef>FcRange * <function>FcRangeCreateDouble</function></funcdef>
+               <paramdef>double<parameter>begin</parameter></paramdef>
+               <paramdef>double<parameter>end</parameter></paramdef>
+       </funcprototype>
+       </funcsynopsis>
+       </refsynopsisdiv>
+       <refsect1><title>Description</title>
+           <para>
+<function>FcRangeCreateDouble</function> creates a new FcRange object with
+double sized value.
+           </para>
+       </refsect1>
+       <refsect1><title>Since</title>
+           <para>version 2.11.91</para>
+       </refsect1>
+    </refentry>
+<!--
+   fontconfig/doc/func.sgml
+  
+   Copyright © 2003 Keith Packard
+  
+   Permission to use, copy, modify, distribute, and sell this software and its
+   documentation for any purpose is hereby granted without fee, provided that
+   the above copyright notice appear in all copies and that both that
+   copyright notice and this permission notice appear in supporting
+   documentation, and that the name of the author(s) not be used in
+   advertising or publicity pertaining to distribution of the software without
+   specific, written prior permission.  The authors make no
+   representations about the suitability of this software for any purpose.  It
+   is provided "as is" without express or implied warranty.
+  
+   THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+   INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+   EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+   DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+   TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+   PERFORMANCE OF THIS SOFTWARE.
+ -->
+    <refentry id="FcRangeCreateInteger">
+       <refmeta>
+           <refentrytitle>FcRangeCreateInteger</refentrytitle>
+           <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+       </refmeta>
+       <refnamediv>
+           <refname>FcRangeCreateInteger</refname>
+           <refpurpose>create a range object for integer</refpurpose>
+       </refnamediv>
+       <refsynopsisdiv>
+       <funcsynopsis>
+       <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+       </funcsynopsisinfo>
+       <funcprototype>
+           <funcdef>FcRange * <function>FcRangeCreateInteger</function></funcdef>
+               <paramdef>int<parameter>begin</parameter></paramdef>
+               <paramdef>int<parameter>end</parameter></paramdef>
+       </funcprototype>
+       </funcsynopsis>
+       </refsynopsisdiv>
+       <refsect1><title>Description</title>
+           <para>
+<function>FcRangeCreateInteger</function> creates a new FcRange object with
+integer sized value.
+           </para>
+       </refsect1>
+       <refsect1><title>Since</title>
+           <para>version 2.11.91</para>
+       </refsect1>
+    </refentry>
+<!--
+   fontconfig/doc/func.sgml
+  
+   Copyright © 2003 Keith Packard
+  
+   Permission to use, copy, modify, distribute, and sell this software and its
+   documentation for any purpose is hereby granted without fee, provided that
+   the above copyright notice appear in all copies and that both that
+   copyright notice and this permission notice appear in supporting
+   documentation, and that the name of the author(s) not be used in
+   advertising or publicity pertaining to distribution of the software without
+   specific, written prior permission.  The authors make no
+   representations about the suitability of this software for any purpose.  It
+   is provided "as is" without express or implied warranty.
+  
+   THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+   INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+   EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+   DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+   TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+   PERFORMANCE OF THIS SOFTWARE.
+ -->
+    <refentry id="FcRangeDestroy">
+       <refmeta>
+           <refentrytitle>FcRangeDestroy</refentrytitle>
+           <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+       </refmeta>
+       <refnamediv>
+           <refname>FcRangeDestroy</refname>
+           <refpurpose>destroy a range object</refpurpose>
+       </refnamediv>
+       <refsynopsisdiv>
+       <funcsynopsis>
+       <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+       </funcsynopsisinfo>
+       <funcprototype>
+           <funcdef>void <function>FcRangeDestroy</function></funcdef>
+               <paramdef>FcRange *<parameter>range</parameter></paramdef>
+       </funcprototype>
+       </funcsynopsis>
+       </refsynopsisdiv>
+       <refsect1><title>Description</title>
+           <para>
+<function>FcRangeDestroy</function> destroys a FcRange object, freeing
+all memory associated with it.
+           </para>
+       </refsect1>
+       <refsect1><title>Since</title>
+           <para>version 2.11.91</para>
+       </refsect1>
+    </refentry>
+<!--
+   fontconfig/doc/func.sgml
+  
+   Copyright © 2003 Keith Packard
+  
+   Permission to use, copy, modify, distribute, and sell this software and its
+   documentation for any purpose is hereby granted without fee, provided that
+   the above copyright notice appear in all copies and that both that
+   copyright notice and this permission notice appear in supporting
+   documentation, and that the name of the author(s) not be used in
+   advertising or publicity pertaining to distribution of the software without
+   specific, written prior permission.  The authors make no
+   representations about the suitability of this software for any purpose.  It
+   is provided "as is" without express or implied warranty.
+  
+   THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+   INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+   EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+   DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+   TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+   PERFORMANCE OF THIS SOFTWARE.
+ -->
+    <refentry id="FcRangeGetDouble">
+       <refmeta>
+           <refentrytitle>FcRangeGetDouble</refentrytitle>
+           <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+       </refmeta>
+       <refnamediv>
+           <refname>FcRangeGetDouble</refname>
+           <refpurpose>Get the range in double</refpurpose>
+       </refnamediv>
+       <refsynopsisdiv>
+       <funcsynopsis>
+       <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+       </funcsynopsisinfo>
+       <funcprototype>
+           <funcdef>FcBool <function>FcRangeGetDouble</function></funcdef>
+               <paramdef>const FcRange *<parameter>range</parameter></paramdef>
+               <paramdef>double *<parameter>begin</parameter></paramdef>
+               <paramdef>double *<parameter>end</parameter></paramdef>
+       </funcprototype>
+       </funcsynopsis>
+       </refsynopsisdiv>
+       <refsect1><title>Description</title>
+           <para>
+Returns in <parameter>begin</parameter> and <parameter>end</parameter> as the range.
+           </para>
+       </refsect1>
+       <refsect1><title>Since</title>
+           <para>version 2.11.91</para>
+       </refsect1>
+    </refentry>
index 7ed2b25..4b511f4 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcUtf8ToUcs4</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcUtf8ToUcs4</refname>
@@ -51,11 +52,6 @@ char.  <parameter>src</parameter> must be at least
 <parameter>len</parameter> bytes long.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -84,6 +80,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcUcs4ToUtf8</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcUcs4ToUtf8</refname>
@@ -108,11 +105,6 @@ Converts the Unicode char from <parameter>src</parameter> into
 the char.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -141,6 +133,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcUtf8Len</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcUtf8Len</refname>
@@ -170,11 +163,6 @@ counted.  The return value indicates whether <parameter>src</parameter> is a
 well-formed UTF8 string.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -203,6 +191,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcUtf16ToUcs4</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcUtf16ToUcs4</refname>
@@ -231,11 +220,6 @@ bytes long.  Bytes of <parameter>src</parameter> are combined into 16-bit
 units according to <parameter>endian</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -264,6 +248,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcUtf16Len</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcUtf16Len</refname>
@@ -296,11 +281,6 @@ indicates whether <parameter>string</parameter> is a well-formed UTF16
 string.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -329,6 +309,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcIsLower</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcIsLower</refname>
@@ -351,11 +332,6 @@ This macro checks whether <parameter>c</parameter> is an lower case ASCII
 letter.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -384,6 +360,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcIsUpper</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcIsUpper</refname>
@@ -406,11 +383,6 @@ This macro checks whether <parameter>c</parameter> is a upper case ASCII
 letter.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -439,6 +411,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcToLower</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcToLower</refname>
@@ -461,11 +434,6 @@ This macro converts upper case ASCII <parameter>c</parameter> to the
 equivalent lower case letter.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -494,6 +462,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrCopy</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrCopy</refname>
@@ -517,11 +486,6 @@ buffer.  Yes, this is <function>strdup</function>, but that function isn't
 available on every platform.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -550,6 +514,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrDowncase</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrDowncase</refname>
@@ -572,11 +537,6 @@ Allocates memory, copies <parameter>s</parameter>, converting upper case
 letters to lower case and returns the allocated buffer.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -605,6 +565,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrCopyFilename</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrCopyFilename</refname>
@@ -633,11 +594,6 @@ Returns NULL if '~' is the leading character and HOME is unset or disabled
 (see <function>FcConfigEnableHome</function>).
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -666,6 +622,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrCmp</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrCmp</refname>
@@ -689,11 +646,6 @@ Returns the usual &lt;0, 0, &gt;0 result of comparing
 <parameter>s1</parameter> and <parameter>s2</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -722,6 +674,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrCmpIgnoreCase</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrCmpIgnoreCase</refname>
@@ -746,11 +699,6 @@ Returns the usual &lt;0, 0, &gt;0 result of comparing
 case-insensitive for all proper UTF-8 encoded strings.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -779,6 +727,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrStr</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrStr</refname>
@@ -804,11 +753,6 @@ is not present in <parameter>s1</parameter>. This test will operate properly
 with UTF8 encoded strings.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -837,6 +781,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrStrIgnoreCase</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrStrIgnoreCase</refname>
@@ -862,11 +807,6 @@ Returns the location of <parameter>s2</parameter> in
 This test is case-insensitive for all proper UTF-8 encoded strings.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -895,6 +835,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrPlus</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrPlus</refname>
@@ -919,11 +860,6 @@ This function allocates new storage and places the concatenation of
 new string.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -952,6 +888,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrFree</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrFree</refname>
@@ -974,11 +911,6 @@ This is just a wrapper around free(3) which helps track memory usage of
 strings within the fontconfig library.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1007,6 +939,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrDirname</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrDirname</refname>
@@ -1030,11 +963,6 @@ is returned in newly allocated storage which should be freed when no longer
 needed.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -1063,6 +991,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrBasename</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrBasename</refname>
@@ -1086,9 +1015,4 @@ directory names.  This is returned in newly allocated storage which should
 be freed when no longer needed.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
index 737347b..67aa61a 100644 (file)
@@ -98,12 +98,21 @@ Destroys <parameter>set</parameter>.
 Creates an iterator to list the strings in <parameter>set</parameter>.
 @@
 
+@RET@          void
+@FUNC@         FcStrListFirst
+@TYPE1@                FcStrList *                     @ARG1@          list
+@PURPOSE@      get first string in iteration
+@DESC@
+Returns the first string in <parameter>list</parameter>.
+@SINCE@                2.11.0
+@@
+
 @RET@          FcChar8 *
 @FUNC@         FcStrListNext
 @TYPE1@                FcStrList *                     @ARG1@          list    
 @PURPOSE@      get next string in iteration
 @DESC@
-Returns the next string in <parameter>set</parameter>.
+Returns the next string in <parameter>list</parameter>.
 @@
 
 @RET@          void
index 0ff5df9..c6aa493 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcStrSetCreate</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrSetCreate</refname>
 Create an empty set.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -79,6 +75,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrSetMember</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrSetMember</refname>
@@ -102,11 +99,6 @@ Returns whether <parameter>s</parameter> is a member of
 <parameter>set</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrSetEqual</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrSetEqual</refname>
@@ -159,11 +152,6 @@ strings as <parameter>set_b</parameter>. Ordering of strings within the two
 sets is not considered.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -192,6 +180,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrSetAdd</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrSetAdd</refname>
@@ -214,11 +203,6 @@ Fontconfig version &version;
 Adds a copy of <parameter>s</parameter> to <parameter>set</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -247,6 +231,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrSetAddFilename</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrSetAddFilename</refname>
@@ -271,11 +256,6 @@ is created with FcStrCopyFilename so that leading '~' values are replaced
 with the value of the HOME environment variable.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -304,6 +284,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrSetDel</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrSetDel</refname>
@@ -327,11 +308,6 @@ Removes <parameter>s</parameter> from <parameter>set</parameter>, returning
 FcTrue if <parameter>s</parameter> was a member else FcFalse.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -360,6 +336,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrSetDestroy</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrSetDestroy</refname>
@@ -381,11 +358,6 @@ Fontconfig version &version;
 Destroys <parameter>set</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -414,6 +386,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrListCreate</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrListCreate</refname>
@@ -435,11 +408,59 @@ Fontconfig version &version;
 Creates an iterator to list the strings in <parameter>set</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
+    </refentry>
+<!--
+   fontconfig/doc/func.sgml
+  
+   Copyright © 2003 Keith Packard
+  
+   Permission to use, copy, modify, distribute, and sell this software and its
+   documentation for any purpose is hereby granted without fee, provided that
+   the above copyright notice appear in all copies and that both that
+   copyright notice and this permission notice appear in supporting
+   documentation, and that the name of the author(s) not be used in
+   advertising or publicity pertaining to distribution of the software without
+   specific, written prior permission.  The authors make no
+   representations about the suitability of this software for any purpose.  It
+   is provided "as is" without express or implied warranty.
+  
+   THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+   INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+   EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+   DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+   TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+   PERFORMANCE OF THIS SOFTWARE.
+ -->
+    <refentry id="FcStrListFirst">
+       <refmeta>
+           <refentrytitle>FcStrListFirst</refentrytitle>
+           <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+       </refmeta>
+       <refnamediv>
+           <refname>FcStrListFirst</refname>
+           <refpurpose>get first string in iteration</refpurpose>
+       </refnamediv>
+       <refsynopsisdiv>
+       <funcsynopsis>
+       <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+       </funcsynopsisinfo>
+       <funcprototype>
+           <funcdef>void <function>FcStrListFirst</function></funcdef>
+               <paramdef>FcStrList *<parameter>list</parameter></paramdef>
+       </funcprototype>
+       </funcsynopsis>
+       </refsynopsisdiv>
+       <refsect1><title>Description</title>
            <para>
-Fontconfig version &version;
+Returns the first string in <parameter>list</parameter>.
            </para>
        </refsect1>
+       <refsect1><title>Since</title>
+           <para>version 2.11.0</para>
+       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -468,6 +489,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrListNext</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrListNext</refname>
@@ -486,12 +508,7 @@ Fontconfig version &version;
        </refsynopsisdiv>
        <refsect1><title>Description</title>
            <para>
-Returns the next string in <parameter>set</parameter>.
-           </para>
-       </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
+Returns the next string in <parameter>list</parameter>.
            </para>
        </refsect1>
     </refentry>
@@ -522,6 +539,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcStrListDone</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcStrListDone</refname>
@@ -543,9 +561,4 @@ Fontconfig version &version;
 Destroys the enumerator <parameter>list</parameter>.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
index b8f728b..51dbbe3 100644 (file)
@@ -25,6 +25,7 @@
        <refmeta>
            <refentrytitle>FcValueDestroy</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcValueDestroy</refname>
@@ -47,11 +48,6 @@ Frees any memory referenced by <parameter>v</parameter>.  Values of type FcTypeS
 FcTypeMatrix and FcTypeCharSet reference memory, the other types do not.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -80,6 +76,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcValueSave</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcValueSave</refname>
@@ -102,11 +99,6 @@ Returns a copy of <parameter>v</parameter> duplicating any object referenced by
 may be safely destroyed without harming the new value.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -135,6 +127,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcValuePrint</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcValuePrint</refname>
@@ -158,11 +151,6 @@ stdout. The format should not be considered part of the library
 specification as it may change in the future.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
 <!--
    fontconfig/doc/func.sgml
@@ -191,6 +179,7 @@ Fontconfig version &version;
        <refmeta>
            <refentrytitle>FcValueEqual</refentrytitle>
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
            <refname>FcValueEqual</refname>
@@ -215,9 +204,4 @@ the two values have to be the same type to be considered equal. Strings are
 compared ignoring case.
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
-       </refsect1>
     </refentry>
diff --git a/doc/fcweight.fncs b/doc/fcweight.fncs
new file mode 100644 (file)
index 0000000..2872dd6
--- /dev/null
@@ -0,0 +1,47 @@
+/*
+ * fontconfig/doc/fcweight.fncs
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission.  The authors make no
+ * representations about the suitability of this software for any purpose.  It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+@RET@          int
+@FUNC@         FcWeightFromOpenType
+@TYPE1@                int                             @ARG1@          ot_weight
+@PURPOSE@      Convert from OpenType weight values to fontconfig ones
+@DESC@
+<function>FcWeightFromOpenType</function> returns an integer value
+to use with FC_WEIGHT, from an integer in the 1..1000 range, resembling
+the numbers from OpenType specification's OS/2 usWeight numbers, which
+are also similar to CSS font-weight numbers.  If input is negative,
+zero, or greater than 1000, returns -1.  This function linearly interpolates
+between various FC_WEIGHT_* constants.  As such, the returned value does not
+necessarily match any of the predefined constants.
+@SINCE@                2.11.91
+@@
+
+@RET@          int
+@FUNC@         FcWeightToOpenType
+@TYPE1@                int                             @ARG1@          ot_weight
+@PURPOSE@      Convert from fontconfig weight values to OpenType ones
+@DESC@
+<function>FcWeightToOpenType</function> is the inverse of
+<function>FcWeightFromOpenType</function>.  If the input is less than
+FC_WEIGHT_THIN or greater than FC_WEIGHT_EXTRABLACK, returns -1.  Otherwise
+returns a number in the range 1 to 1000.
+@SINCE@                2.11.91
+@@
diff --git a/doc/fcweight.sgml b/doc/fcweight.sgml
new file mode 100644 (file)
index 0000000..a8a235f
--- /dev/null
@@ -0,0 +1,115 @@
+<!--
+   fontconfig/doc/func.sgml
+  
+   Copyright © 2003 Keith Packard
+  
+   Permission to use, copy, modify, distribute, and sell this software and its
+   documentation for any purpose is hereby granted without fee, provided that
+   the above copyright notice appear in all copies and that both that
+   copyright notice and this permission notice appear in supporting
+   documentation, and that the name of the author(s) not be used in
+   advertising or publicity pertaining to distribution of the software without
+   specific, written prior permission.  The authors make no
+   representations about the suitability of this software for any purpose.  It
+   is provided "as is" without express or implied warranty.
+  
+   THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+   INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+   EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+   DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+   TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+   PERFORMANCE OF THIS SOFTWARE.
+ -->
+    <refentry id="FcWeightFromOpenType">
+       <refmeta>
+           <refentrytitle>FcWeightFromOpenType</refentrytitle>
+           <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+       </refmeta>
+       <refnamediv>
+           <refname>FcWeightFromOpenType</refname>
+           <refpurpose>Convert from OpenType weight values to fontconfig ones</refpurpose>
+       </refnamediv>
+       <refsynopsisdiv>
+       <funcsynopsis>
+       <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+       </funcsynopsisinfo>
+       <funcprototype>
+           <funcdef>int <function>FcWeightFromOpenType</function></funcdef>
+               <paramdef>int<parameter>ot_weight</parameter></paramdef>
+       </funcprototype>
+       </funcsynopsis>
+       </refsynopsisdiv>
+       <refsect1><title>Description</title>
+           <para>
+<function>FcWeightFromOpenType</function> returns an integer value
+to use with FC_WEIGHT, from an integer in the 1..1000 range, resembling
+the numbers from OpenType specification's OS/2 usWeight numbers, which
+are also similar to CSS font-weight numbers.  If input is negative,
+zero, or greater than 1000, returns -1.  This function linearly interpolates
+between various FC_WEIGHT_* constants.  As such, the returned value does not
+necessarily match any of the predefined constants.
+           </para>
+       </refsect1>
+       <refsect1><title>Since</title>
+           <para>version 2.11.91</para>
+       </refsect1>
+    </refentry>
+<!--
+   fontconfig/doc/func.sgml
+  
+   Copyright © 2003 Keith Packard
+  
+   Permission to use, copy, modify, distribute, and sell this software and its
+   documentation for any purpose is hereby granted without fee, provided that
+   the above copyright notice appear in all copies and that both that
+   copyright notice and this permission notice appear in supporting
+   documentation, and that the name of the author(s) not be used in
+   advertising or publicity pertaining to distribution of the software without
+   specific, written prior permission.  The authors make no
+   representations about the suitability of this software for any purpose.  It
+   is provided "as is" without express or implied warranty.
+  
+   THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+   INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+   EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+   DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+   TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+   PERFORMANCE OF THIS SOFTWARE.
+ -->
+    <refentry id="FcWeightToOpenType">
+       <refmeta>
+           <refentrytitle>FcWeightToOpenType</refentrytitle>
+           <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
+       </refmeta>
+       <refnamediv>
+           <refname>FcWeightToOpenType</refname>
+           <refpurpose>Convert from fontconfig weight values to OpenType ones</refpurpose>
+       </refnamediv>
+       <refsynopsisdiv>
+       <funcsynopsis>
+       <funcsynopsisinfo>
+#include &lt;fontconfig/fontconfig.h&gt;
+       </funcsynopsisinfo>
+       <funcprototype>
+           <funcdef>int <function>FcWeightToOpenType</function></funcdef>
+               <paramdef>int<parameter>ot_weight</parameter></paramdef>
+       </funcprototype>
+       </funcsynopsis>
+       </refsynopsisdiv>
+       <refsect1><title>Description</title>
+           <para>
+<function>FcWeightToOpenType</function> is the inverse of
+<function>FcWeightFromOpenType</function>.  If the input is less than
+FC_WEIGHT_THIN or greater than FC_WEIGHT_EXTRABLACK, returns -1.  Otherwise
+returns a number in the range 1 to 1000.
+           </para>
+       </refsect1>
+       <refsect1><title>Since</title>
+           <para>version 2.11.91</para>
+       </refsect1>
+    </refentry>
index aef31d5..79de82c 100644 (file)
Binary files a/doc/fontconfig-devel.pdf and b/doc/fontconfig-devel.pdf differ
index 79cceb1..0fa4605 100644 (file)
 <!ENTITY fcobjectset SYSTEM "fcobjectset.sgml">
 <!ENTITY fcobjecttype SYSTEM "fcobjecttype.sgml">
 <!ENTITY fcpattern SYSTEM "fcpattern.sgml">
+<!ENTITY fcrange SYSTEM "fcrange.sgml">
 <!ENTITY fcstring SYSTEM "fcstring.sgml">
 <!ENTITY fcstrset SYSTEM "fcstrset.sgml">
 <!ENTITY fcvalue SYSTEM "fcvalue.sgml">
+<!ENTITY fcweight SYSTEM "fcweight.sgml">
 <!ENTITY version SYSTEM "version.sgml">
 ]>
 <!--
@@ -170,11 +172,12 @@ convenience for the application's rendering mechanism.
                                                   the file
     ftface         FC_FT_FACE             FT_Face Use the specified FreeType
                                                   face object
-    rasterizer     FC_RASTERIZER          String  Which rasterizer is in use
+    rasterizer     FC_RASTERIZER          String  Which rasterizer is in use (deprecated)
     outline        FC_OUTLINE             Bool    Whether the glyphs are outlines
     scalable       FC_SCALABLE            Bool    Whether glyphs can be scaled
     scale          FC_SCALE               Double  Scale factor for point->pixel
                                                   conversions
+    color          FC_COLOR               Bool    Whether any glyphs have color
     dpi            FC_DPI                 Double  Target dots per inch
     rgba           FC_RGBA                Int     unknown, rgb, bgr, vrgb,
                                                   vbgr, none - subpixel geometry
@@ -188,11 +191,22 @@ convenience for the application's rendering mechanism.
     fontversion    FC_FONTVERSION         Int     Version number of the font
     capability     FC_CAPABILITY          String  List of layout capabilities in
                                                   the font
+    fontformat     FC_FONTFORMAT          String  String name of the font format
     embolden       FC_EMBOLDEN            Bool    Rasterizer should
                                                   synthetically embolden the font
+    embeddedbitmap FC_EMBEDDED_BITMAP     Bool    Use the embedded bitmap instead
+                                                  of the outline
+    decorative     FC_DECORATIVE          Bool    Whether the style is a decorative
+                                                  variant
+    fontfeatures   FC_FONT_FEATURES       String  List of extra feature tags in
+                                                  OpenType to be enabled
     namelang       FC_NAMELANG            String  Language name to be used for the
                                                   default value of familylang,
                                                   stylelang and fullnamelang
+    prgname        FC_PRGNAME             String  Name of the running program
+    hash           FC_HASH                String  SHA256 hash value of the font data
+                                                  with "sha256:" prefix (deprecated)
+    postscriptname FC_POSTSCRIPT_NAME     String  Font name in PostScript
     </programlisting>
   </sect2>
 </sect1>
@@ -502,6 +516,12 @@ FcMatrix structures hold an affine transformation in matrix form.
     </para>
     &fcmatrix;
   </sect2>
+  <sect2><title>FcRange</title>
+    <para>
+An FcRange holds two variables to indicate a range in between.
+    </para>
+    &fcrange;
+  </sect2>
   <sect2><title>FcConfig</title>
     <para>
 An FcConfig object holds the internal representation of a configuration.
@@ -523,6 +543,12 @@ Provides for application-specified symbolic constants for font names.
     </para>
     &fcconstant;
   </sect2>
+  <sect2><title>FcWeight</title>
+    <para>
+Maps weights to and from OpenType weights.
+    </para>
+  &fcweight;
+  </sect2>
   <sect2><title>FcBlanks</title>
     <para>
 An FcBlanks object holds a list of Unicode chars which are expected to
index 7a07292..7150dfe 100644 (file)
-                Fontconfig Developers Reference, Version 2.10.91
+Fontconfig Developers Reference, Version 2.11.93
 
    Copyright © 2002 Keith Packard
 
-   Permission to use, copy, modify, distribute, and sell this software and
-   its documentation for any purpose is hereby granted without fee, provided
-   that the above copyright notice appear in all copies and that both that
-   copyright notice and this permission notice appear in supporting
-   documentation, and that the name of the author(s) not be used in
-   advertising or publicity pertaining to distribution of the software
-   without specific, written prior permission. The authors make no
-   representations about the suitability of this software for any purpose. It
-   is provided "as is" without express or implied warranty.
-
-   THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-   INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-   EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
-   USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
-   OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-   PERFORMANCE OF THIS SOFTWARE.
-
-            -------------------------------------------------------
+   Permission to use, copy, modify, distribute, and sell this
+   software and its documentation for any purpose is hereby
+   granted without fee, provided that the above copyright notice
+   appear in all copies and that both that copyright notice and
+   this permission notice appear in supporting documentation, and
+   that the name of the author(s) not be used in advertising or
+   publicity pertaining to distribution of the software without
+   specific, written prior permission. The authors make no
+   representations about the suitability of this software for any
+   purpose. It is provided "as is" without express or implied
+   warranty.
+
+   THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
+   SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
+   AND FITNESS, IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY
+   SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+   WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER
+   IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+   ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
+   THIS SOFTWARE.
+           _______________________________________________
 
    Table of Contents
-
-   [1]DESCRIPTION
-
-   [2]FUNCTIONAL OVERVIEW
-
-   [3]Datatypes
-
-   [4]FUNCTIONS
+   DESCRIPTION
+   FUNCTIONAL OVERVIEW
+   Datatypes
+   FUNCTIONS
 
 DESCRIPTION
 
    Fontconfig is a library designed to provide system-wide font
    configuration, customization and application access.
-
-   --------------------------------------------------------------------------
+     __________________________________________________________
 
 FUNCTIONAL OVERVIEW
 
-   Fontconfig contains two essential modules, the configuration module which
-   builds an internal configuration from XML files and the matching module
-   which accepts font patterns and returns the nearest matching font.
-
-   --------------------------------------------------------------------------
-
-  FONT CONFIGURATION
-
-   The configuration module consists of the FcConfig datatype, libexpat and
-   FcConfigParse which walks over an XML tree and amends a configuration with
-   data found within. From an external perspective, configuration of the
-   library consists of generating a valid XML tree and feeding that to
-   FcConfigParse. The only other mechanism provided to applications for
-   changing the running configuration is to add fonts and directories to the
-   list of application-provided font files.
-
-   The intent is to make font configurations relatively static, and shared by
-   as many applications as possible. It is hoped that this will lead to more
-   stable font selection when passing names from one application to another.
-   XML was chosen as a configuration file format because it provides a format
-   which is easy for external agents to edit while retaining the correct
+   Fontconfig contains two essential modules, the configuration
+   module which builds an internal configuration from XML files
+   and the matching module which accepts font patterns and returns
+   the nearest matching font.
+     __________________________________________________________
+
+FONT CONFIGURATION
+
+   The configuration module consists of the FcConfig datatype,
+   libexpat and FcConfigParse which walks over an XML tree and
+   amends a configuration with data found within. From an external
+   perspective, configuration of the library consists of
+   generating a valid XML tree and feeding that to FcConfigParse.
+   The only other mechanism provided to applications for changing
+   the running configuration is to add fonts and directories to
+   the list of application-provided font files.
+
+   The intent is to make font configurations relatively static,
+   and shared by as many applications as possible. It is hoped
+   that this will lead to more stable font selection when passing
+   names from one application to another. XML was chosen as a
+   configuration file format because it provides a format which is
+   easy for external agents to edit while retaining the correct
    structure and syntax.
 
-   Font configuration is separate from font matching; applications needing to
-   do their own matching can access the available fonts from the library and
-   perform private matching. The intent is to permit applications to pick and
-   choose appropriate functionality from the library instead of forcing them
-   to choose between this library and a private configuration mechanism. The
-   hope is that this will ensure that configuration of fonts for all
-   applications can be centralized in one place. Centralizing font
-   configuration will simplify and regularize font installation and
-   customization.
-
-   --------------------------------------------------------------------------
-
-  FONT PROPERTIES
-
-   While font patterns may contain essentially any properties, there are some
-   well known properties with associated types. Fontconfig uses some of these
-   properties for font matching and font completion. Others are provided as a
-   convenience for the application's rendering mechanism.
-
+   Font configuration is separate from font matching; applications
+   needing to do their own matching can access the available fonts
+   from the library and perform private matching. The intent is to
+   permit applications to pick and choose appropriate
+   functionality from the library instead of forcing them to
+   choose between this library and a private configuration
+   mechanism. The hope is that this will ensure that configuration
+   of fonts for all applications can be centralized in one place.
+   Centralizing font configuration will simplify and regularize
+   font installation and customization.
+     __________________________________________________________
+
+FONT PROPERTIES
+
+   While font patterns may contain essentially any properties,
+   there are some well known properties with associated types.
+   Fontconfig uses some of these properties for font matching and
+   font completion. Others are provided as a convenience for the
+   application's rendering mechanism.
                  Property Definitions
 
     Property       C Preprocessor Symbol  Type    Description
     ----------------------------------------------------
     family         FC_FAMILY              String  Font family names
-    familylang     FC_FAMILYLANG          String  Language corresponding to
+    familylang     FC_FAMILYLANG          String  Language corresponding
+ to
                                                   each family name
-    style          FC_STYLE               String  Font style. Overrides weight
+    style          FC_STYLE               String  Font style. Overrides
+weight
                                                   and slant
-    stylelang      FC_STYLELANG           String  Language corresponding to
+    stylelang      FC_STYLELANG           String  Language corresponding
+ to
                                                   each style name
-    fullname       FC_FULLNAME            String  Font face full name where
-                                                  different from family and
+    fullname       FC_FULLNAME            String  Font face full name wh
+ere
+                                                  different from family
+and
                                                   family + style
-    fullnamelang   FC_FULLNAMELANG        String  Language corresponding to
+    fullnamelang   FC_FULLNAMELANG        String  Language corresponding
+ to
                                                   each fullname
-    slant          FC_SLANT               Int     Italic, oblique or roman
-    weight         FC_WEIGHT              Int     Light, medium, demibold,
+    slant          FC_SLANT               Int     Italic, oblique or rom
+an
+    weight         FC_WEIGHT              Int     Light, medium, demibol
+d,
                                                   bold or black
     size           FC_SIZE                Double  Point size
-    width          FC_WIDTH               Int     Condensed, normal or expanded
-    aspect         FC_ASPECT              Double  Stretches glyphs horizontally
+    width          FC_WIDTH               Int     Condensed, normal or e
+xpanded
+    aspect         FC_ASPECT              Double  Stretches glyphs horiz
+ontally
                                                   before hinting
     pixelsize      FC_PIXEL_SIZE          Double  Pixel size
-    spacing        FC_SPACING             Int     Proportional, dual-width,
+    spacing        FC_SPACING             Int     Proportional, dual-wid
+th,
                                                   monospace or charcell
     foundry        FC_FOUNDRY             String  Font foundry name
     antialias      FC_ANTIALIAS           Bool    Whether glyphs can be
                                                   antialiased
-    hinting        FC_HINTING             Bool    Whether the rasterizer should
+    hinting        FC_HINTING             Bool    Whether the rasterizer
+ should
                                                   use hinting
-    hintstyle      FC_HINT_STYLE          Int     Automatic hinting style
+    hintstyle      FC_HINT_STYLE          Int     Automatic hinting styl
+e
     verticallayout FC_VERTICAL_LAYOUT     Bool    Use vertical layout
-    autohint       FC_AUTOHINT            Bool    Use autohinter instead of
+    autohint       FC_AUTOHINT            Bool    Use autohinter instead
+ of
                                                   normal hinter
-    globaladvance  FC_GLOBAL_ADVANCE      Bool    Use font global advance data (deprecated)
-    file           FC_FILE                String  The filename holding the font
-    index          FC_INDEX               Int     The index of the font within
+    globaladvance  FC_GLOBAL_ADVANCE      Bool    Use font global advanc
+e data (deprecated)
+    file           FC_FILE                String  The filename holding t
+he font
+    index          FC_INDEX               Int     The index of the font
+within
                                                   the file
-    ftface         FC_FT_FACE             FT_Face Use the specified FreeType
+    ftface         FC_FT_FACE             FT_Face Use the specified Free
+Type
                                                   face object
-    rasterizer     FC_RASTERIZER          String  Which rasterizer is in use
-    outline        FC_OUTLINE             Bool    Whether the glyphs are outlines
-    scalable       FC_SCALABLE            Bool    Whether glyphs can be scaled
-    scale          FC_SCALE               Double  Scale factor for point->pixel
+    rasterizer     FC_RASTERIZER          String  Which rasterizer is in
+ use (deprecated)
+    outline        FC_OUTLINE             Bool    Whether the glyphs are
+ outlines
+    scalable       FC_SCALABLE            Bool    Whether glyphs can be
+scaled
+    scale          FC_SCALE               Double  Scale factor for point
+->pixel
                                                   conversions
+    color          FC_COLOR               Bool    Whether any glyphs hav
+e color
     dpi            FC_DPI                 Double  Target dots per inch
-    rgba           FC_RGBA                Int     unknown, rgb, bgr, vrgb,
-                                                  vbgr, none - subpixel geometry
+    rgba           FC_RGBA                Int     unknown, rgb, bgr, vrg
+b,
+                                                  vbgr, none - subpixel
+geometry
     lcdfilter      FC_LCD_FILTER          Int     Type of LCD filter
-    minspace       FC_MINSPACE            Bool    Eliminate leading from line
+    minspace       FC_MINSPACE            Bool    Eliminate leading from
+ line
                                                   spacing
-    charset        FC_CHARSET             CharSet Unicode chars encoded by
+    charset        FC_CHARSET             CharSet Unicode chars encoded
+by
                                                   the font
     lang           FC_LANG                LangSet Set of RFC-3066-style
-                                                  languages this font supports
-    fontversion    FC_FONTVERSION         Int     Version number of the font
-    capability     FC_CAPABILITY          String  List of layout capabilities in
+                                                  languages this font su
+pports
+    fontversion    FC_FONTVERSION         Int     Version number of the
+font
+    capability     FC_CAPABILITY          String  List of layout capabil
+ities in
                                                   the font
+    fontformat     FC_FONTFORMAT          String  String name of the fon
+t format
     embolden       FC_EMBOLDEN            Bool    Rasterizer should
-                                                  synthetically embolden the font
-    namelang       FC_NAMELANG            String  Language name to be used for the
-                                                  default value of familylang,
-                                                  stylelang and fullnamelang
-
-
-   --------------------------------------------------------------------------
+                                                  synthetically embolden
+ the font
+    embeddedbitmap FC_EMBEDDED_BITMAP     Bool    Use the embedded bitma
+p instead
+                                                  of the outline
+    decorative     FC_DECORATIVE          Bool    Whether the style is a
+ decorative
+                                                  variant
+    fontfeatures   FC_FONT_FEATURES       String  List of extra feature
+tags in
+                                                  OpenType to be enabled
+    namelang       FC_NAMELANG            String  Language name to be us
+ed for the
+                                                  default value of famil
+ylang,
+                                                  stylelang and fullname
+lang
+    prgname        FC_PRGNAME             String  Name of the running pr
+ogram
+    hash           FC_HASH                String  SHA256 hash value of t
+he font data
+                                                  with "sha256:" prefix
+(deprecated)
+    postscriptname FC_POSTSCRIPT_NAME     String  Font name in PostScrip
+t
+     __________________________________________________________
 
 Datatypes
 
-   Fontconfig uses abstract data types to hide internal implementation
-   details for most data structures. A few structures are exposed where
-   appropriate.
-
-   --------------------------------------------------------------------------
-
-  FcChar8, FcChar16, FcChar32, FcBool
-
-   These are primitive data types; the FcChar* types hold precisely the
-   number of bits stated (if supported by the C implementation). FcBool holds
-   one of two C preprocessor symbols: FcFalse or FcTrue.
-
-   --------------------------------------------------------------------------
-
-  FcMatrix
-
-   An FcMatrix holds an affine transformation, usually used to reshape
-   glyphs. A small set of matrix operations are provided to manipulate these.
+   Fontconfig uses abstract data types to hide internal
+   implementation details for most data structures. A few
+   structures are exposed where appropriate.
+     __________________________________________________________
 
-           typedef struct _FcMatrix {
-                   double xx, xy, yx, yy;
-           } FcMatrix;
+FcChar8, FcChar16, FcChar32, FcBool
 
+   These are primitive data types; the FcChar* types hold
+   precisely the number of bits stated (if supported by the C
+   implementation). FcBool holds one of two C preprocessor
+   symbols: FcFalse or FcTrue.
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
+FcMatrix
 
-  FcCharSet
+   An FcMatrix holds an affine transformation, usually used to
+   reshape glyphs. A small set of matrix operations are provided
+   to manipulate these.
+        typedef struct _FcMatrix {
+                double xx, xy, yx, yy;
+        } FcMatrix;
+     __________________________________________________________
 
-   An FcCharSet is an abstract type that holds the set of encoded Unicode
-   chars in a font. Operations to build and compare these sets are provided.
+FcCharSet
 
-   --------------------------------------------------------------------------
+   An FcCharSet is an abstract type that holds the set of encoded
+   Unicode chars in a font. Operations to build and compare these
+   sets are provided.
+     __________________________________________________________
 
-  FcLangSet
+FcLangSet
 
-   An FcLangSet is an abstract type that holds the set of languages supported
-   by a font. Operations to build and compare these sets are provided. These
-   are computed for a font based on orthographic information built into the
-   fontconfig library. Fontconfig has orthographies for all of the ISO 639-1
-   languages except for MS, NA, PA, PS, QU, RN, RW, SD, SG, SN, SU and ZA. If
-   you have orthographic information for any of these languages, please
-   submit them.
+   An FcLangSet is an abstract type that holds the set of
+   languages supported by a font. Operations to build and compare
+   these sets are provided. These are computed for a font based on
+   orthographic information built into the fontconfig library.
+   Fontconfig has orthographies for all of the ISO 639-1 languages
+   except for MS, NA, PA, PS, QU, RN, RW, SD, SG, SN, SU and ZA.
+   If you have orthographic information for any of these
+   languages, please submit them.
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
+FcLangResult
 
-  FcLangResult
+   An FcLangResult is an enumeration used to return the results of
+   comparing two language strings or FcLangSet objects.
+   FcLangEqual means the objects match language and territory.
+   FcLangDifferentTerritory means the objects match in language
+   but differ in territory. FcLangDifferentLang means the objects
+   differ in language.
+     __________________________________________________________
 
-   An FcLangResult is an enumeration used to return the results of comparing
-   two language strings or FcLangSet objects. FcLangEqual means the objects
-   match language and territory. FcLangDifferentTerritory means the objects
-   match in language but differ in territory. FcLangDifferentLang means the
-   objects differ in language.
-
-   --------------------------------------------------------------------------
-
-  FcType
+FcType
 
    Tags the kind of data stored in an FcValue.
-
-   --------------------------------------------------------------------------
-
-  FcValue
-
-   An FcValue object holds a single value with one of a number of different
-   types. The 'type' tag indicates which member is valid.
-
-           typedef struct _FcValue {
-                   FcType type;
-                   union {
-                           const FcChar8 *s;
-                           int i;
-                           FcBool b;
-                           double d;
-                           const FcMatrix *m;
-                           const FcCharSet *c;
-                           void *f;
-                           const FcLangSet *l;
-                   } u;
-           } FcValue;
-
-
-                     FcValue Members
-
-           Type            Union member    Datatype
-           --------------------------------
-           FcTypeVoid      (none)          (none)
-           FcTypeInteger   i               int
-           FcTypeDouble    d               double
-           FcTypeString    s               FcChar8 *
-           FcTypeBool      b               b
-           FcTypeMatrix    m               FcMatrix *
-           FcTypeCharSet   c               FcCharSet *
-           FcTypeFTFace    f               void * (FT_Face)
-           FcTypeLangSet   l               FcLangSet *
-
-
-   --------------------------------------------------------------------------
-
-  FcPattern
-
-   holds a set of names with associated value lists; each name refers to a
-   property of a font. FcPatterns are used as inputs to the matching code as
-   well as holding information about specific fonts. Each property can hold
-   one or more values; conventionally all of the same type, although the
-   interface doesn't demand that.
-
-   --------------------------------------------------------------------------
-
-  FcFontSet
-
-           typedef struct _FcFontSet {
-                   int nfont;
-                   int sfont;
-                   FcPattern **fonts;
-           } FcFontSet;
-
-
-   An FcFontSet contains a list of FcPatterns. Internally fontconfig uses
-   this data structure to hold sets of fonts. Externally, fontconfig returns
-   the results of listing fonts in this format. 'nfont' holds the number of
-   patterns in the 'fonts' array; 'sfont' is used to indicate the size of
-   that array.
-
-   --------------------------------------------------------------------------
-
-  FcStrSet, FcStrList
-
-   FcStrSet holds a list of strings that can be appended to and enumerated.
-   Its unique characteristic is that the enumeration works even while strings
-   are appended during enumeration. FcStrList is used during enumeration to
-   safely and correctly walk the list of strings even while that list is
-   edited in the middle of enumeration.
-
-   --------------------------------------------------------------------------
-
-  FcObjectSet
-
-           typedef struct _FcObjectSet {
-                   int nobject;
-                   int sobject;
-                   const char **objects;
-           } FcObjectSet;
-
-
-   holds a set of names and is used to specify which fields from fonts are
-   placed in the the list of returned patterns when listing fonts.
-
-   --------------------------------------------------------------------------
-
-  FcObjectType
-
-           typedef struct _FcObjectType {
-                   const char *object;
-                   FcType type;
-           } FcObjectType;
-
-
-   marks the type of a pattern element generated when parsing font names.
-   Applications can add new object types so that font names may contain the
-   new elements.
-
-   --------------------------------------------------------------------------
-
-  FcConstant
-
-           typedef struct _FcConstant {
-               const FcChar8 *name;
-               const char *object;
-               int value;
-           } FcConstant;
-
-
-   Provides for symbolic constants for new pattern elements. When 'name' is
-   seen in a font name, an 'object' element is created with value 'value'.
-
-   --------------------------------------------------------------------------
-
-  FcBlanks
-
-   holds a list of Unicode chars which are expected to be blank; unexpectedly
-   blank chars are assumed to be invalid and are elided from the charset
-   associated with the font.
-
-   --------------------------------------------------------------------------
-
-  FcFileCache
-
-   holds the per-user cache information for use while loading the font
-   database. This is built automatically for the current configuration when
-   that is loaded. Applications must always pass '0' when one is requested.
-
-   --------------------------------------------------------------------------
-
-  FcConfig
-
-   holds a complete configuration of the library; there is one default
-   configuration, other can be constructed from XML data structures. All
-   public entry points that need global data can take an optional FcConfig*
-   argument; passing 0 uses the default configuration. FcConfig objects hold
-   two sets of fonts, the first contains those specified by the
-   configuration, the second set holds those added by the application at
-   run-time. Interfaces that need to reference a particular set use one of
+     __________________________________________________________
+
+FcValue
+
+   An FcValue object holds a single value with one of a number of
+   different types. The 'type' tag indicates which member is
+   valid.
+        typedef struct _FcValue {
+                FcType type;
+                union {
+                        const FcChar8 *s;
+                        int i;
+                        FcBool b;
+                        double d;
+                        const FcMatrix *m;
+                        const FcCharSet *c;
+                        void *f;
+                        const FcLangSet *l;
+                } u;
+        } FcValue;
+
+                  FcValue Members
+
+        Type            Union member    Datatype
+        --------------------------------
+        FcTypeVoid      (none)          (none)
+        FcTypeInteger   i               int
+        FcTypeDouble    d               double
+        FcTypeString    s               FcChar8 *
+        FcTypeBool      b               b
+        FcTypeMatrix    m               FcMatrix *
+        FcTypeCharSet   c               FcCharSet *
+        FcTypeFTFace    f               void * (FT_Face)
+        FcTypeLangSet   l               FcLangSet *
+     __________________________________________________________
+
+FcPattern
+
+   holds a set of names with associated value lists; each name
+   refers to a property of a font. FcPatterns are used as inputs
+   to the matching code as well as holding information about
+   specific fonts. Each property can hold one or more values;
+   conventionally all of the same type, although the interface
+   doesn't demand that.
+     __________________________________________________________
+
+FcFontSet
+
+        typedef struct _FcFontSet {
+                int nfont;
+                int sfont;
+                FcPattern **fonts;
+        } FcFontSet;
+
+   An FcFontSet contains a list of FcPatterns. Internally
+   fontconfig uses this data structure to hold sets of fonts.
+   Externally, fontconfig returns the results of listing fonts in
+   this format. 'nfont' holds the number of patterns in the
+   'fonts' array; 'sfont' is used to indicate the size of that
+   array.
+     __________________________________________________________
+
+FcStrSet, FcStrList
+
+   FcStrSet holds a list of strings that can be appended to and
+   enumerated. Its unique characteristic is that the enumeration
+   works even while strings are appended during enumeration.
+   FcStrList is used during enumeration to safely and correctly
+   walk the list of strings even while that list is edited in the
+   middle of enumeration.
+     __________________________________________________________
+
+FcObjectSet
+
+        typedef struct _FcObjectSet {
+                int nobject;
+                int sobject;
+                const char **objects;
+        } FcObjectSet;
+
+   holds a set of names and is used to specify which fields from
+   fonts are placed in the the list of returned patterns when
+   listing fonts.
+     __________________________________________________________
+
+FcObjectType
+
+        typedef struct _FcObjectType {
+                const char *object;
+                FcType type;
+        } FcObjectType;
+
+   marks the type of a pattern element generated when parsing font
+   names. Applications can add new object types so that font names
+   may contain the new elements.
+     __________________________________________________________
+
+FcConstant
+
+        typedef struct _FcConstant {
+            const FcChar8 *name;
+            const char *object;
+            int value;
+        } FcConstant;
+
+   Provides for symbolic constants for new pattern elements. When
+   'name' is seen in a font name, an 'object' element is created
+   with value 'value'.
+     __________________________________________________________
+
+FcBlanks
+
+   holds a list of Unicode chars which are expected to be blank;
+   unexpectedly blank chars are assumed to be invalid and are
+   elided from the charset associated with the font.
+     __________________________________________________________
+
+FcFileCache
+
+   holds the per-user cache information for use while loading the
+   font database. This is built automatically for the current
+   configuration when that is loaded. Applications must always
+   pass '0' when one is requested.
+     __________________________________________________________
+
+FcConfig
+
+   holds a complete configuration of the library; there is one
+   default configuration, other can be constructed from XML data
+   structures. All public entry points that need global data can
+   take an optional FcConfig* argument; passing 0 uses the default
+   configuration. FcConfig objects hold two sets of fonts, the
+   first contains those specified by the configuration, the second
+   set holds those added by the application at run-time.
+   Interfaces that need to reference a particular set use one of
    the FcSetName enumerated values.
-
-   --------------------------------------------------------------------------
-
-  FcSetName
-
-   Specifies one of the two sets of fonts available in a configuration;
-   FcSetSystem for those fonts specified in the configuration and
-   FcSetApplication which holds fonts provided by the application.
-
-   --------------------------------------------------------------------------
-
-  FcResult
-
-   Used as a return type for functions manipulating FcPattern objects.
-
-         FcResult Values
-           Result Code             Meaning
-           -----------------------------------------------------------
-           FcResultMatch           Object exists with the specified ID
-           FcResultNoMatch         Object doesn't exist at all
-           FcResultTypeMismatch    Object exists, but the type doesn't match
-           FcResultNoId            Object exists, but has fewer values
-                                   than specified
-           FcResultOutOfMemory     malloc failed
-
-
-   --------------------------------------------------------------------------
-
-  FcAtomic
-
-   Used for locking access to configuration files. Provides a safe way to
-   update configuration files.
-
-   --------------------------------------------------------------------------
-
-  FcCache
-
-   Holds information about the fonts contained in a single directory. Normal
-   applications need not worry about this as caches for font access are
-   automatically managed by the library. Applications dealing with cache
-   management may want to use some of these objects in their work, however
-   the included 'fc-cache' program generally suffices for all of that.
-
-   --------------------------------------------------------------------------
+     __________________________________________________________
+
+FcSetName
+
+   Specifies one of the two sets of fonts available in a
+   configuration; FcSetSystem for those fonts specified in the
+   configuration and FcSetApplication which holds fonts provided
+   by the application.
+     __________________________________________________________
+
+FcResult
+
+   Used as a return type for functions manipulating FcPattern
+   objects.
+      FcResult Values
+        Result Code             Meaning
+        -----------------------------------------------------------
+        FcResultMatch           Object exists with the specified ID
+        FcResultNoMatch         Object doesn't exist at all
+        FcResultTypeMismatch    Object exists, but the type doesn't matc
+h
+        FcResultNoId            Object exists, but has fewer values
+                                than specified
+        FcResultOutOfMemory     malloc failed
+     __________________________________________________________
+
+FcAtomic
+
+   Used for locking access to configuration files. Provides a safe
+   way to update configuration files.
+     __________________________________________________________
+
+FcCache
+
+   Holds information about the fonts contained in a single
+   directory. Normal applications need not worry about this as
+   caches for font access are automatically managed by the
+   library. Applications dealing with cache management may want to
+   use some of these objects in their work, however the included
+   'fc-cache' program generally suffices for all of that.
+     __________________________________________________________
 
 FUNCTIONS
 
-   These are grouped by functionality, often using the main data type being
-   manipulated.
+   These are grouped by functionality, often using the main data
+   type being manipulated.
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
-
-  Initialization
+Initialization
 
    Table of Contents
+   FcInitLoadConfig -- load configuration
+   FcInitLoadConfigAndFonts -- load configuration and font data
+   FcInit -- initialize fontconfig library
+   FcFini -- finalize fontconfig library
+   FcGetVersion -- library version number
+   FcInitReinitialize -- re-initialize library
+   FcInitBringUptoDate -- reload configuration files if needed
 
-   [5]FcInitLoadConfig -- load configuration
-
-   [6]FcInitLoadConfigAndFonts -- load configuration and font data
-
-   [7]FcInit -- initialize fontconfig library
-
-   [8]FcFini -- finalize fontconfig library
-
-   [9]FcGetVersion -- library version number
-
-   [10]FcInitReinitialize -- re-initialize library
-
-   [11]FcInitBringUptoDate -- reload configuration files if needed
+   These functions provide some control over how the library is
+   initialized.
 
-   These functions provide some control over how the library is initialized.
-
-                                FcInitLoadConfig
+FcInitLoadConfig
 
 Name
 
-   FcInitLoadConfig -- load configuration
+   FcInitLoadConfig -- load configuration
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcConfig * FcInitLoadConfig(void);
 
@@ -446,90 +474,71 @@ Description
    Loads the default configuration file and returns the resulting
    configuration. Does not load any font information.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                            FcInitLoadConfigAndFonts
+FcInitLoadConfigAndFonts
 
 Name
 
-   FcInitLoadConfigAndFonts -- load configuration and font data
+   FcInitLoadConfigAndFonts -- load configuration and font data
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcConfig * FcInitLoadConfigAndFonts(void);
 
 Description
 
-   Loads the default configuration file and builds information about the
-   available fonts. Returns the resulting configuration.
-
-Version
-
-   Fontconfig version 2.10.91
+   Loads the default configuration file and builds information
+   about the available fonts. Returns the resulting configuration.
 
-                                     FcInit
+FcInit
 
 Name
 
-   FcInit -- initialize fontconfig library
+   FcInit -- initialize fontconfig library
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcInit(void);
 
 Description
 
-   Loads the default configuration file and the fonts referenced therein and
-   sets the default configuration to that result. Returns whether this
-   process succeeded or not. If the default configuration has already been
-   loaded, this routine does nothing and returns FcTrue.
-
-Version
+   Loads the default configuration file and the fonts referenced
+   therein and sets the default configuration to that result.
+   Returns whether this process succeeded or not. If the default
+   configuration has already been loaded, this routine does
+   nothing and returns FcTrue.
 
-   Fontconfig version 2.10.91
-
-                                     FcFini
+FcFini
 
 Name
 
-   FcFini -- finalize fontconfig library
+   FcFini -- finalize fontconfig library
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcFini(void);
 
 Description
 
-   Frees all data structures allocated by previous calls to fontconfig
-   functions. Fontconfig returns to an uninitialized state, requiring a new
-   call to one of the FcInit functions before any other fontconfig function
-   may be called.
+   Frees all data structures allocated by previous calls to
+   fontconfig functions. Fontconfig returns to an uninitialized
+   state, requiring a new call to one of the FcInit functions
+   before any other fontconfig function may be called.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                  FcGetVersion
+FcGetVersion
 
 Name
 
-   FcGetVersion -- library version number
+   FcGetVersion -- library version number
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    int FcGetVersion(void);
 
@@ -537,580 +546,487 @@ Description
 
    Returns the version number of the library.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                               FcInitReinitialize
+FcInitReinitialize
 
 Name
 
-   FcInitReinitialize -- re-initialize library
+   FcInitReinitialize -- re-initialize library
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcInitReinitialize(void);
 
 Description
 
-   Forces the default configuration file to be reloaded and resets the
-   default configuration. Returns FcFalse if the configuration cannot be
-   reloaded (due to configuration file errors, allocation failures or other
-   issues) and leaves the existing configuration unchanged. Otherwise returns
-   FcTrue.
-
-Version
-
-   Fontconfig version 2.10.91
+   Forces the default configuration file to be reloaded and resets
+   the default configuration. Returns FcFalse if the configuration
+   cannot be reloaded (due to configuration file errors,
+   allocation failures or other issues) and leaves the existing
+   configuration unchanged. Otherwise returns FcTrue.
 
-                              FcInitBringUptoDate
+FcInitBringUptoDate
 
 Name
 
-   FcInitBringUptoDate -- reload configuration files if needed
+   FcInitBringUptoDate -- reload configuration files if needed
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcInitBringUptoDate(void);
 
 Description
 
-   Checks the rescan interval in the default configuration, checking the
-   configuration if the interval has passed and reloading the configuration
-   if when any changes are detected. Returns FcFalse if the configuration
-   cannot be reloaded (see FcInitReinitialize). Otherwise returns FcTrue.
-
-Version
-
-   Fontconfig version 2.10.91
-
-   --------------------------------------------------------------------------
+   Checks the rescan interval in the default configuration,
+   checking the configuration if the interval has passed and
+   reloading the configuration if when any changes are detected.
+   Returns FcFalse if the configuration cannot be reloaded (see
+   FcInitReinitialize). Otherwise returns FcTrue.
+     __________________________________________________________
 
-  FcPattern
+FcPattern
 
    Table of Contents
+   FcPatternCreate -- Create a pattern
+   FcPatternDuplicate -- Copy a pattern
+   FcPatternReference -- Increment pattern reference count
+   FcPatternDestroy -- Destroy a pattern
+   FcPatternEqual -- Compare patterns
+   FcPatternEqualSubset -- Compare portions of patterns
+   FcPatternFilter -- Filter the objects of pattern
+   FcPatternHash -- Compute a pattern hash value
+   FcPatternAdd -- Add a value to a pattern
+   FcPatternAddWeak -- Add a value to a pattern with weak binding
+   FcPatternAdd-Type -- Add a typed value to a pattern
+   FcPatternGet -- Return a value from a pattern
+   FcPatternGet-Type -- Return a typed value from a pattern
+   FcPatternBuild -- Create patterns from arguments
+   FcPatternDel -- Delete a property from a pattern
+   FcPatternRemove -- Remove one object of the specified type from
+          the pattern
 
-   [12]FcPatternCreate -- Create a pattern
-
-   [13]FcPatternDuplicate -- Copy a pattern
-
-   [14]FcPatternReference -- Increment pattern reference count
-
-   [15]FcPatternDestroy -- Destroy a pattern
-
-   [16]FcPatternEqual -- Compare patterns
-
-   [17]FcPatternEqualSubset -- Compare portions of patterns
-
-   [18]FcPatternFilter -- Filter the objects of pattern
-
-   [19]FcPatternHash -- Compute a pattern hash value
-
-   [20]FcPatternAdd -- Add a value to a pattern
-
-   [21]FcPatternAddWeak -- Add a value to a pattern with weak binding
-
-   [22]FcPatternAdd-Type -- Add a typed value to a pattern
+   FcPatternPrint -- Print a pattern for debugging
+   FcDefaultSubstitute -- Perform default substitutions in a
+          pattern
 
-   [23]FcPatternGet -- Return a value from a pattern
+   FcNameParse -- Parse a pattern string
+   FcNameUnparse -- Convert a pattern back into a string that can
+          be parsed
 
-   [24]FcPatternGet-Type -- Return a typed value from a pattern
+   FcPatternFormat -- Format a pattern into a string according to
+          a format specifier
 
-   [25]FcPatternBuild -- Create patterns from arguments
+   An FcPattern is an opaque type that holds both patterns to
+   match against the available fonts, as well as the information
+   about each font.
 
-   [26]FcPatternDel -- Delete a property from a pattern
-
-   [27]FcPatternRemove -- Remove one object of the specified type from the
-   pattern
-
-   [28]FcPatternPrint -- Print a pattern for debugging
-
-   [29]FcDefaultSubstitute -- Perform default substitutions in a pattern
-
-   [30]FcNameParse -- Parse a pattern string
-
-   [31]FcNameUnparse -- Convert a pattern back into a string that can be
-   parsed
-
-   [32]FcPatternFormat -- Format a pattern into a string according to a
-   format specifier
-
-   An FcPattern is an opaque type that holds both patterns to match against
-   the available fonts, as well as the information about each font.
-
-                                FcPatternCreate
+FcPatternCreate
 
 Name
 
-   FcPatternCreate -- Create a pattern
+   FcPatternCreate -- Create a pattern
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcPattern * FcPatternCreate(void);
 
 Description
 
-   Creates a pattern with no properties; used to build patterns from scratch.
+   Creates a pattern with no properties; used to build patterns
+   from scratch.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                               FcPatternDuplicate
+FcPatternDuplicate
 
 Name
 
-   FcPatternDuplicate -- Copy a pattern
+   FcPatternDuplicate -- Copy a pattern
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcPattern * FcPatternDuplicate(const FcPattern *p);
 
 Description
 
-   Copy a pattern, returning a new pattern that matches p. Each pattern may
-   be modified without affecting the other.
+   Copy a pattern, returning a new pattern that matches p. Each
+   pattern may be modified without affecting the other.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                               FcPatternReference
+FcPatternReference
 
 Name
 
-   FcPatternReference -- Increment pattern reference count
+   FcPatternReference -- Increment pattern reference count
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcPatternReference(FcPattern *p);
 
 Description
 
-   Add another reference to p. Patterns are freed only when the reference
-   count reaches zero.
-
-Version
+   Add another reference to p. Patterns are freed only when the
+   reference count reaches zero.
 
-   Fontconfig version 2.10.91
-
-                                FcPatternDestroy
+FcPatternDestroy
 
 Name
 
-   FcPatternDestroy -- Destroy a pattern
+   FcPatternDestroy -- Destroy a pattern
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcPatternDestroy(FcPattern *p);
 
 Description
 
-   Decrement the pattern reference count. If all references are gone,
-   destroys the pattern, in the process destroying all related values.
-
-Version
+   Decrement the pattern reference count. If all references are
+   gone, destroys the pattern, in the process destroying all
+   related values.
 
-   Fontconfig version 2.10.91
-
-                                 FcPatternEqual
+FcPatternEqual
 
 Name
 
-   FcPatternEqual -- Compare patterns
+   FcPatternEqual -- Compare patterns
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcPatternEqual(const FcPattern *pa, const FcPattern *pb);
+   FcBool FcPatternEqual(const FcPattern *pa, const FcPattern
+   *pb);
 
 Description
 
    Returns whether pa and pb are exactly alike.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                              FcPatternEqualSubset
+FcPatternEqualSubset
 
 Name
 
-   FcPatternEqualSubset -- Compare portions of patterns
+   FcPatternEqualSubset -- Compare portions of patterns
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcPatternEqualSubset(const FcPattern *pa, const FcPattern *pb,
-   const FcObjectSet *os);
+   FcBool FcPatternEqualSubset(const FcPattern *pa, const
+   FcPattern *pb, const FcObjectSet *os);
 
 Description
 
-   Returns whether pa and pb have exactly the same values for all of the
-   objects in os.
-
-Version
-
-   Fontconfig version 2.10.91
+   Returns whether pa and pb have exactly the same values for all
+   of the objects in os.
 
-                                FcPatternFilter
+FcPatternFilter
 
 Name
 
-   FcPatternFilter -- Filter the objects of pattern
+   FcPatternFilter -- Filter the objects of pattern
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcPattern * FcPatternFilter(FcPattern *p, const FcObjectSet *);
 
 Description
 
-   Returns a new pattern that only has those objects from p that are in os.
-   If os is NULL, a duplicate of p is returned.
-
-Version
+   Returns a new pattern that only has those objects from p that
+   are in os. If os is NULL, a duplicate of p is returned.
 
-   Fontconfig version 2.10.91
-
-                                 FcPatternHash
+FcPatternHash
 
 Name
 
-   FcPatternHash -- Compute a pattern hash value
+   FcPatternHash -- Compute a pattern hash value
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar32 FcPatternHash(const FcPattern *p);
 
 Description
 
-   Returns a 32-bit number which is the same for any two patterns which are
-   equal.
+   Returns a 32-bit number which is the same for any two patterns
+   which are equal.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                  FcPatternAdd
+FcPatternAdd
 
 Name
 
-   FcPatternAdd -- Add a value to a pattern
+   FcPatternAdd -- Add a value to a pattern
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcPatternAdd(FcPattern *p, const char *object, FcValue value,
-   FcBool append);
+   FcBool FcPatternAdd(FcPattern *p, const char *object, FcValue
+   value, FcBool append);
 
 Description
 
-   Adds a single value to the list of values associated with the property
-   named `object. If `append is FcTrue, the value is added at the end of any
-   existing list, otherwise it is inserted at the beginning. `value' is saved
-   (with FcValueSave) when inserted into the pattern so that the library
-   retains no reference to any application-supplied data structure.
+   Adds a single value to the list of values associated with the
+   property named `object. If `append is FcTrue, the value is
+   added at the end of any existing list, otherwise it is inserted
+   at the beginning. `value' is saved (with FcValueSave) when
+   inserted into the pattern so that the library retains no
+   reference to any application-supplied data structure.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcPatternAddWeak
+FcPatternAddWeak
 
 Name
 
-   FcPatternAddWeak -- Add a value to a pattern with weak binding
+   FcPatternAddWeak -- Add a value to a pattern with weak binding
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcPatternAddWeak(FcPattern *p, const char *object, FcValue value,
-   FcBool append);
+   FcBool FcPatternAddWeak(FcPattern *p, const char *object,
+   FcValue value, FcBool append);
 
 Description
 
-   FcPatternAddWeak is essentially the same as FcPatternAdd except that any
-   values added to the list have binding weak instead of strong.
+   FcPatternAddWeak is essentially the same as FcPatternAdd except
+   that any values added to the list have binding weak instead of
+   strong.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                               FcPatternAdd-Type
+FcPatternAdd-Type
 
 Name
 
    FcPatternAddInteger, FcPatternAddDouble, FcPatternAddString,
    FcPatternAddMatrix, FcPatternAddCharSet, FcPatternAddBool,
-   FcPatternAddFTFace, FcPatternAddLangSet -- Add a typed value to a pattern
+   FcPatternAddFTFace, FcPatternAddLangSet,
+   FcPatternAddRange -- Add a typed value to a pattern
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
+   FcBool FcPatternAddInteger(FcPattern *p, const char *object,
+   int i);
 
-   FcBool FcPatternAddInteger(FcPattern *p, const char *object, int i);
+   FcBool FcPatternAddDouble(FcPattern *p, const char *object,
+   double d);
 
-   FcBool FcPatternAddDouble(FcPattern *p, const char *object, double d);
+   FcBool FcPatternAddString(FcPattern *p, const char *object,
+   const FcChar8 *s);
 
-   FcBool FcPatternAddString(FcPattern *p, const char *object, const FcChar8
-   *s);
+   FcBool FcPatternAddMatrix(FcPattern *p, const char *object,
+   const FcMatrix *m);
 
-   FcBool FcPatternAddMatrix(FcPattern *p, const char *object, const FcMatrix
-   *m);
+   FcBool FcPatternAddCharSet(FcPattern *p, const char *object,
+   const FcCharSet *c);
 
-   FcBool FcPatternAddCharSet(FcPattern *p, const char *object, const
-   FcCharSet *c);
+   FcBool FcPatternAddBool(FcPattern *p, const char *object,
+   FcBool b);
 
-   FcBool FcPatternAddBool(FcPattern *p, const char *object, FcBool b);
+   FcBool FcPatternAddFTFace(FcPattern *p, const char *object,
+   const FT_Facef);
 
-   FcBool FcPatternAddFTFace(FcPattern *p, const char *object, const
-   FT_Facef);
+   FcBool FcPatternAddLangSet(FcPattern *p, const char *object,
+   const FcLangSet *l);
 
-   FcBool FcPatternAddLangSet(FcPattern *p, const char *object, const
-   FcLangSet *l);
+   FcBool FcPatternAddRange(FcPattern *p, const char *object,
+   const FcRange *r);
 
 Description
 
-   These are all convenience functions that insert objects of the specified
-   type into the pattern. Use these in preference to FcPatternAdd as they
-   will provide compile-time typechecking. These all append values to any
-   existing list of values.
-
-Version
+   These are all convenience functions that insert objects of the
+   specified type into the pattern. Use these in preference to
+   FcPatternAdd as they will provide compile-time typechecking.
+   These all append values to any existing list of values.
+   FcPatternAddRange are available since 2.11.91.
 
-   Fontconfig version 2.10.91
-
-                                  FcPatternGet
+FcPatternGet
 
 Name
 
-   FcPatternGet -- Return a value from a pattern
+   FcPatternGet -- Return a value from a pattern
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcResult FcPatternGet(FcPattern *p, const char *object, int id, FcValue
-   *v);
+   FcResult FcPatternGet(FcPattern *p, const char *object, int id,
+   FcValue *v);
 
 Description
 
-   Returns in v the id'th value associated with the property object. The
-   value returned is not a copy, but rather refers to the data stored within
-   the pattern directly. Applications must not free this value.
-
-Version
-
-   Fontconfig version 2.10.91
+   Returns in v the id'th value associated with the property
+   object. The value returned is not a copy, but rather refers to
+   the data stored within the pattern directly. Applications must
+   not free this value.
 
-                               FcPatternGet-Type
+FcPatternGet-Type
 
 Name
 
    FcPatternGetInteger, FcPatternGetDouble, FcPatternGetString,
    FcPatternGetMatrix, FcPatternGetCharSet, FcPatternGetBool,
-   FcPatternGetFTFace, FcPatternGetLangSet -- Return a typed value from a
-   pattern
+   FcPatternGetFTFace, FcPatternGetLangSet,
+   FcPatternGetRange -- Return a typed value from a pattern
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
+   FcResult FcPatternGetInteger(FcPattern *p, const char *object,
+   int n, int *i);
 
-   FcResult FcPatternGetInteger(FcPattern *p, const char *object, int n, int
-   *i);
+   FcResult FcPatternGetDouble(FcPattern *p, const char *object,
+   int n, double *d);
 
-   FcResult FcPatternGetDouble(FcPattern *p, const char *object, int n,
-   double *d);
+   FcResult FcPatternGetString(FcPattern *p, const char *object,
+   int n, FcChar8 **s);
 
-   FcResult FcPatternGetString(FcPattern *p, const char *object, int n,
-   FcChar8 **s);
+   FcResult FcPatternGetMatrix(FcPattern *p, const char *object,
+   int n, FcMatrix **s);
 
-   FcResult FcPatternGetMatrix(FcPattern *p, const char *object, int n,
-   FcMatrix **s);
+   FcResult FcPatternGetCharSet(FcPattern *p, const char *object,
+   int n, FcCharSet **c);
 
-   FcResult FcPatternGetCharSet(FcPattern *p, const char *object, int n,
-   FcCharSet **c);
+   FcResult FcPatternGetBool(FcPattern *p, const char *object, int
+   n, FcBool *b);
 
-   FcResult FcPatternGetBool(FcPattern *p, const char *object, int n, FcBool
-   *b);
+   FcResult FcPatternGetFTFace(FcPattern *p, const char *object,
+   int n, FT_Face *f);
 
-   FcResult FcPatternGetFTFace(FcPattern *p, const char *object, int n);
+   FcResult FcPatternGetLangSet(FcPattern *p, const char *object,
+   int n, FcLangSet **l);
 
-   FcResult FcPatternGetLangSet(FcPattern *p, const char *object, FT_Face
-   *f);
+   FcResult FcPatternGetRange(FcPattern *p, const char *object,
+   int n, FcRange **r);
 
 Description
 
-   These are convenience functions that call FcPatternGet and verify that the
-   returned data is of the expected type. They return FcResultTypeMismatch if
-   this is not the case. Note that these (like FcPatternGet) do not make a
-   copy of any data structure referenced by the return value. Use these in
-   preference to FcPatternGet to provide compile-time typechecking.
-
-Version
+   These are convenience functions that call FcPatternGet and
+   verify that the returned data is of the expected type. They
+   return FcResultTypeMismatch if this is not the case. Note that
+   these (like FcPatternGet) do not make a copy of any data
+   structure referenced by the return value. Use these in
+   preference to FcPatternGet to provide compile-time
+   typechecking. FcPatternGetRange are available since 2.11.91.
 
-   Fontconfig version 2.10.91
-
-                                 FcPatternBuild
+FcPatternBuild
 
 Name
 
-   FcPatternBuild, FcPatternVaBuild, FcPatternVapBuild -- Create patterns
-   from arguments
+   FcPatternBuild, FcPatternVaBuild, FcPatternVapBuild -- Create
+   patterns from arguments
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcPattern * FcPatternBuild(FcPattern *pattern, ...);
 
    FcPattern * FcPatternVaBuild(FcPattern *pattern, va_list va);
 
-   void FcPatternVapBuild(FcPattern *result, FcPattern *pattern, va_list va);
+   void FcPatternVapBuild(FcPattern *result, FcPattern *pattern,
+   va_list va);
 
 Description
 
-   Builds a pattern using a list of objects, types and values. Each value to
-   be entered in the pattern is specified with three arguments:
-
-    1. Object name, a string describing the property to be added.
-
-    2. Object type, one of the FcType enumerated values
-
-    3. Value, not an FcValue, but the raw type as passed to any of the
-       FcPatternAdd<type> functions. Must match the type of the second
-       argument.
-
-   The argument list is terminated by a null object name, no object type nor
-   value need be passed for this. The values are added to `pattern', if
-   `pattern' is null, a new pattern is created. In either case, the pattern
-   is returned. Example
-
-   pattern = FcPatternBuild (0, FC_FAMILY, FcTypeString, "Times", (char *) 0);
+   Builds a pattern using a list of objects, types and values.
+   Each value to be entered in the pattern is specified with three
+   arguments:
 
-   FcPatternVaBuild is used when the arguments are already in the form of a
-   varargs value. FcPatternVapBuild is a macro version of FcPatternVaBuild
-   which returns its result directly in the result variable.
+    1. Object name, a string describing the property to be added.
+    2. Object type, one of the FcType enumerated values
+    3. Value, not an FcValue, but the raw type as passed to any of
+       the FcPatternAdd<type> functions. Must match the type of
+       the second argument.
 
-Version
+   The argument list is terminated by a null object name, no
+   object type nor value need be passed for this. The values are
+   added to `pattern', if `pattern' is null, a new pattern is
+   created. In either case, the pattern is returned. Example
+pattern = FcPatternBuild (0, FC_FAMILY, FcTypeString, "Times", (char *)
+0);
 
-   Fontconfig version 2.10.91
+   FcPatternVaBuild is used when the arguments are already in the
+   form of a varargs value. FcPatternVapBuild is a macro version
+   of FcPatternVaBuild which returns its result directly in the
+   result variable.
 
-                                  FcPatternDel
+FcPatternDel
 
 Name
 
-   FcPatternDel -- Delete a property from a pattern
+   FcPatternDel -- Delete a property from a pattern
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcPatternDel(FcPattern *p, const char *object);
 
 Description
 
-   Deletes all values associated with the property `object', returning
-   whether the property existed or not.
-
-Version
+   Deletes all values associated with the property `object',
+   returning whether the property existed or not.
 
-   Fontconfig version 2.10.91
-
-                                FcPatternRemove
+FcPatternRemove
 
 Name
 
-   FcPatternRemove -- Remove one object of the specified type from the
-   pattern
+   FcPatternRemove -- Remove one object of the specified type from
+   the pattern
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcPatternRemove(FcPattern *p, const char *object, int id);
+   FcBool FcPatternRemove(FcPattern *p, const char *object, int
+   id);
 
 Description
 
-   Removes the value associated with the property `object' at position `id',
-   returning whether the property existed and had a value at that position or
-   not.
-
-Version
-
-   Fontconfig version 2.10.91
+   Removes the value associated with the property `object' at
+   position `id', returning whether the property existed and had a
+   value at that position or not.
 
-                                 FcPatternPrint
+FcPatternPrint
 
 Name
 
-   FcPatternPrint -- Print a pattern for debugging
+   FcPatternPrint -- Print a pattern for debugging
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcPatternPrint(const FcPattern *p);
 
 Description
 
-   Prints an easily readable version of the pattern to stdout. There is no
-   provision for reparsing data in this format, it's just for diagnostics and
-   debugging.
-
-Version
-
-   Fontconfig version 2.10.91
+   Prints an easily readable version of the pattern to stdout.
+   There is no provision for reparsing data in this format, it's
+   just for diagnostics and debugging.
 
-                              FcDefaultSubstitute
+FcDefaultSubstitute
 
 Name
 
-   FcDefaultSubstitute -- Perform default substitutions in a pattern
+   FcDefaultSubstitute -- Perform default substitutions in a
+   pattern
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcDefaultSubstitute(FcPattern *pattern);
 
@@ -1118,309 +1034,300 @@ Description
 
    Supplies default values for underspecified font patterns:
 
-     * Patterns without a specified style or weight are set to Medium
-
-     * Patterns without a specified style or slant are set to Roman
+     * Patterns without a specified style or weight are set to
+       Medium
+     * Patterns without a specified style or slant are set to
+       Roman
+     * Patterns without a specified pixel size are given one
+       computed from any specified point size (default 12), dpi
+       (default 75) and scale (default 1).
 
-     * Patterns without a specified pixel size are given one computed from
-       any specified point size (default 12), dpi (default 75) and scale
-       (default 1).
-
-Version
-
-   Fontconfig version 2.10.91
-
-                                  FcNameParse
+FcNameParse
 
 Name
 
-   FcNameParse -- Parse a pattern string
+   FcNameParse -- Parse a pattern string
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcPattern * FcNameParse(const FcChar8 *name);
 
 Description
 
-   Converts name from the standard text format described above into a
-   pattern.
+   Converts name from the standard text format described above
+   into a pattern.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                 FcNameUnparse
+FcNameUnparse
 
 Name
 
-   FcNameUnparse -- Convert a pattern back into a string that can be parsed
+   FcNameUnparse -- Convert a pattern back into a string that can
+   be parsed
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar8 * FcNameUnparse(FcPattern *pat);
 
 Description
 
-   Converts the given pattern into the standard text format described above.
-   The return value is not static, but instead refers to newly allocated
-   memory which should be freed by the caller using free().
-
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcPatternFormat
-
-Name
-
-   FcPatternFormat -- Format a pattern into a string according to a format
-   specifier
-
-Synopsis
-
-   #include <fontconfig/fontconfig.h>
-
-
-   FcChar8 * FcPatternFormat(FcPattern *pat, const FcChar8 *format);
-
-Description
-
-   Converts given pattern pat into text described by the format specifier
-   format. The return value refers to newly allocated memory which should be
-   freed by the caller using free(), or NULL if format is invalid.
-
-    The format is loosely modeled after printf-style format string. The
-   format string is composed of zero or more directives: ordinary characters
-   (not "%"), which are copied unchanged to the output stream; and tags which
-   are interpreted to construct text from the pattern in a variety of ways
-   (explained below). Special characters can be escaped using backslash.
-   C-string style special characters like \n and \r are also supported (this
-   is useful when the format string is not a C string literal). It is
-   advisable to always escape curly braces that are meant to be copied to the
-   output as ordinary characters.
-
-    Each tag is introduced by the character "%", followed by an optional
-   minimum field width, followed by tag contents in curly braces ({}). If the
-   minimum field width value is provided the tag will be expanded and the
-   result padded to achieve the minimum width. If the minimum field width is
-   positive, the padding will right-align the text. Negative field width will
-   left-align. The rest of this section describes various supported tag
-   contents and their expansion.
-
-    A simple tag is one where the content is an identifier. When simple tags
-   are expanded, the named identifier will be looked up in pattern and the
-   resulting list of values returned, joined together using comma. For
-   example, to print the family name and style of the pattern, use the format
-   "%{family} %{style}\n". To extend the family column to forty characters
-   use "%-40{family}%{style}\n".
-
-    Simple tags expand to list of all values for an element. To only choose
-   one of the values, one can index using the syntax "%{elt[idx]}". For
-   example, to get the first family name only, use "%{family[0]}".
-
-    If a simple tag ends with "=" and the element is found in the pattern,
-   the name of the element followed by "=" will be output before the list of
-   values. For example, "%{weight=}" may expand to the string "weight=80". Or
-   to the empty string if pattern does not have weight set.
-
-    If a simple tag starts with ":" and the element is found in the pattern,
-   ":" will be printed first. For example, combining this with the =, the
-   format "%{:weight=}" may expand to ":weight=80" or to the empty string if
-   pattern does not have weight set.
-
-    If a simple tag contains the string ":-", the rest of the the tag
-   contents will be used as a default string. The default string is output if
-   the element is not found in the pattern. For example, the format
-   "%{:weight=:-123}" may expand to ":weight=80" or to the string
-   ":weight=123" if pattern does not have weight set.
-
-    A count tag is one that starts with the character "#" followed by an
-   element name, and expands to the number of values for the element in the
-   pattern. For example, "%{#family}" expands to the number of family names
-   pattern has set, which may be zero.
-
-    A sub-expression tag is one that expands a sub-expression. The tag
-   contents are the sub-expression to expand placed inside another set of
-   curly braces. Sub-expression tags are useful for aligning an entire
-   sub-expression, or to apply converters (explained later) to the entire
-   sub-expression output. For example, the format "%40{{%{family} %{style}}}"
-   expands the sub-expression to construct the family name followed by the
-   style, then takes the entire string and pads it on the left to be at least
-   forty characters.
-
-    A filter-out tag is one starting with the character "-" followed by a
-   comma-separated list of element names, followed by a sub-expression
-   enclosed in curly braces. The sub-expression will be expanded but with a
-   pattern that has the listed elements removed from it. For example, the
-   format "%{-size,pixelsize{sub-expr}}" will expand "sub-expr" with pattern
-   sans the size and pixelsize elements.
-
-    A filter-in tag is one starting with the character "+" followed by a
-   comma-separated list of element names, followed by a sub-expression
-   enclosed in curly braces. The sub-expression will be expanded but with a
-   pattern that only has the listed elements from the surrounding pattern.
-   For example, the format "%{+family,familylang{sub-expr}}" will expand
-   "sub-expr" with a sub-pattern consisting only the family and family lang
-   elements of pattern.
-
-    A conditional tag is one starting with the character "?" followed by a
-   comma-separated list of element conditions, followed by two sub-expression
-   enclosed in curly braces. An element condition can be an element name, in
-   which case it tests whether the element is defined in pattern, or the
-   character "!" followed by an element name, in which case the test is
-   negated. The conditional passes if all the element conditions pass. The
-   tag expands the first sub-expression if the conditional passes, and
-   expands the second sub-expression otherwise. For example, the format
-   "%{?size,dpi,!pixelsize{pass}{fail}}" will expand to "pass" if pattern has
-   size and dpi elements but no pixelsize element, and to "fail" otherwise.
-
-    An enumerate tag is one starting with the string "[]" followed by a
-   comma-separated list of element names, followed by a sub-expression
-   enclosed in curly braces. The list of values for the named elements are
-   walked in parallel and the sub-expression expanded each time with a
-   pattern just having a single value for those elements, starting from the
-   first value and continuing as long as any of those elements has a value.
+   Converts the given pattern into the standard text format
+   described above. The return value is not static, but instead
+   refers to newly allocated memory which should be freed by the
+   caller using free().
+
+FcPatternFormat
+
+Name
+
+   FcPatternFormat -- Format a pattern into a string according to
+   a format specifier
+
+Synopsis
+
+#include <fontconfig/fontconfig.h>
+
+   FcChar8 * FcPatternFormat(FcPattern *pat, const FcChar8
+   *format);
+
+Description
+
+   Converts given pattern pat into text described by the format
+   specifier format. The return value refers to newly allocated
+   memory which should be freed by the caller using free(), or
+   NULL if format is invalid.
+
+   The format is loosely modeled after printf-style format string.
+   The format string is composed of zero or more directives:
+   ordinary characters (not "%"), which are copied unchanged to
+   the output stream; and tags which are interpreted to construct
+   text from the pattern in a variety of ways (explained below).
+   Special characters can be escaped using backslash. C-string
+   style special characters like \n and \r are also supported
+   (this is useful when the format string is not a C string
+   literal). It is advisable to always escape curly braces that
+   are meant to be copied to the output as ordinary characters.
+
+   Each tag is introduced by the character "%", followed by an
+   optional minimum field width, followed by tag contents in curly
+   braces ({}). If the minimum field width value is provided the
+   tag will be expanded and the result padded to achieve the
+   minimum width. If the minimum field width is positive, the
+   padding will right-align the text. Negative field width will
+   left-align. The rest of this section describes various
+   supported tag contents and their expansion.
+
+   A simple tag is one where the content is an identifier. When
+   simple tags are expanded, the named identifier will be looked
+   up in pattern and the resulting list of values returned, joined
+   together using comma. For example, to print the family name and
+   style of the pattern, use the format "%{family} %{style}\n". To
+   extend the family column to forty characters use
+   "%-40{family}%{style}\n".
+
+   Simple tags expand to list of all values for an element. To
+   only choose one of the values, one can index using the syntax
+   "%{elt[idx]}". For example, to get the first family name only,
+   use "%{family[0]}".
+
+   If a simple tag ends with "=" and the element is found in the
+   pattern, the name of the element followed by "=" will be output
+   before the list of values. For example, "%{weight=}" may expand
+   to the string "weight=80". Or to the empty string if pattern
+   does not have weight set.
+
+   If a simple tag starts with ":" and the element is found in the
+   pattern, ":" will be printed first. For example, combining this
+   with the =, the format "%{:weight=}" may expand to ":weight=80"
+   or to the empty string if pattern does not have weight set.
+
+   If a simple tag contains the string ":-", the rest of the the
+   tag contents will be used as a default string. The default
+   string is output if the element is not found in the pattern.
+   For example, the format "%{:weight=:-123}" may expand to
+   ":weight=80" or to the string ":weight=123" if pattern does not
+   have weight set.
+
+   A count tag is one that starts with the character "#" followed
+   by an element name, and expands to the number of values for the
+   element in the pattern. For example, "%{#family}" expands to
+   the number of family names pattern has set, which may be zero.
+
+   A sub-expression tag is one that expands a sub-expression. The
+   tag contents are the sub-expression to expand placed inside
+   another set of curly braces. Sub-expression tags are useful for
+   aligning an entire sub-expression, or to apply converters
+   (explained later) to the entire sub-expression output. For
+   example, the format "%40{{%{family} %{style}}}" expands the
+   sub-expression to construct the family name followed by the
+   style, then takes the entire string and pads it on the left to
+   be at least forty characters.
+
+   A filter-out tag is one starting with the character "-"
+   followed by a comma-separated list of element names, followed
+   by a sub-expression enclosed in curly braces. The
+   sub-expression will be expanded but with a pattern that has the
+   listed elements removed from it. For example, the format
+   "%{-size,pixelsize{sub-expr}}" will expand "sub-expr" with
+   pattern sans the size and pixelsize elements.
+
+   A filter-in tag is one starting with the character "+" followed
+   by a comma-separated list of element names, followed by a
+   sub-expression enclosed in curly braces. The sub-expression
+   will be expanded but with a pattern that only has the listed
+   elements from the surrounding pattern. For example, the format
+   "%{+family,familylang{sub-expr}}" will expand "sub-expr" with a
+   sub-pattern consisting only the family and family lang elements
+   of pattern.
+
+   A conditional tag is one starting with the character "?"
+   followed by a comma-separated list of element conditions,
+   followed by two sub-expression enclosed in curly braces. An
+   element condition can be an element name, in which case it
+   tests whether the element is defined in pattern, or the
+   character "!" followed by an element name, in which case the
+   test is negated. The conditional passes if all the element
+   conditions pass. The tag expands the first sub-expression if
+   the conditional passes, and expands the second sub-expression
+   otherwise. For example, the format
+   "%{?size,dpi,!pixelsize{pass}{fail}}" will expand to "pass" if
+   pattern has size and dpi elements but no pixelsize element, and
+   to "fail" otherwise.
+
+   An enumerate tag is one starting with the string "[]" followed
+   by a comma-separated list of element names, followed by a
+   sub-expression enclosed in curly braces. The list of values for
+   the named elements are walked in parallel and the
+   sub-expression expanded each time with a pattern just having a
+   single value for those elements, starting from the first value
+   and continuing as long as any of those elements has a value.
    For example, the format "%{[]family,familylang{%{family}
-   (%{familylang})\n}}" will expand the pattern "%{family} (%{familylang})\n"
-   with a pattern having only the first value of the family and familylang
-   elements, then expands it with the second values, then the third, etc.
+   (%{familylang})\n}}" will expand the pattern "%{family}
+   (%{familylang})\n" with a pattern having only the first value
+   of the family and familylang elements, then expands it with the
+   second values, then the third, etc.
 
-    As a special case, if an enumerate tag has only one element, and that
-   element has only one value in the pattern, and that value is of type
-   FcLangSet, the individual languages in the language set are enumerated.
+   As a special case, if an enumerate tag has only one element,
+   and that element has only one value in the pattern, and that
+   value is of type FcLangSet, the individual languages in the
+   language set are enumerated.
 
-    A builtin tag is one starting with the character "=" followed by a
-   builtin name. The following builtins are defined:
+   A builtin tag is one starting with the character "=" followed
+   by a builtin name. The following builtins are defined:
 
    unparse
-
-           Expands to the result of calling FcNameUnparse() on the pattern.
+          Expands to the result of calling FcNameUnparse() on the
+          pattern.
 
    fcmatch
-
-           Expands to the output of the default output format of the fc-match
-           command on the pattern, without the final newline.
+          Expands to the output of the default output format of
+          the fc-match command on the pattern, without the final
+          newline.
 
    fclist
-
-           Expands to the output of the default output format of the fc-list
-           command on the pattern, without the final newline.
+          Expands to the output of the default output format of
+          the fc-list command on the pattern, without the final
+          newline.
 
    fccat
-
-           Expands to the output of the default output format of the fc-cat
-           command on the pattern, without the final newline.
+          Expands to the output of the default output format of
+          the fc-cat command on the pattern, without the final
+          newline.
 
    pkgkit
-
-           Expands to the list of PackageKit font() tags for the pattern.
-           Currently this includes tags for each family name, and each
-           language from the pattern, enumerated and sanitized into a set of
-           tags terminated by newline. Package management systems can use
-           these tags to tag their packages accordingly.
-
-   For example, the format "%{+family,style{%{=unparse}}}\n" will expand to
-   an unparsed name containing only the family and style element values from
-   pattern.
-
-    The contents of any tag can be followed by a set of zero or more
-   converters. A converter is specified by the character "|" followed by the
-   converter name and arguments. The following converters are defined:
+          Expands to the list of PackageKit font() tags for the
+          pattern. Currently this includes tags for each family
+          name, and each language from the pattern, enumerated and
+          sanitized into a set of tags terminated by newline.
+          Package management systems can use these tags to tag
+          their packages accordingly.
+
+   For example, the format "%{+family,style{%{=unparse}}}\n" will
+   expand to an unparsed name containing only the family and style
+   element values from pattern.
+
+   The contents of any tag can be followed by a set of zero or
+   more converters. A converter is specified by the character "|"
+   followed by the converter name and arguments. The following
+   converters are defined:
 
    basename
-
-           Replaces text with the results of calling FcStrBasename() on it.
+          Replaces text with the results of calling
+          FcStrBasename() on it.
 
    dirname
-
-           Replaces text with the results of calling FcStrDirname() on it.
+          Replaces text with the results of calling FcStrDirname()
+          on it.
 
    downcase
-
-           Replaces text with the results of calling FcStrDowncase() on it.
+          Replaces text with the results of calling
+          FcStrDowncase() on it.
 
    shescape
-
-           Escapes text for one level of shell expansion. (Escapes
-           single-quotes, also encloses text in single-quotes.)
+          Escapes text for one level of shell expansion. (Escapes
+          single-quotes, also encloses text in single-quotes.)
 
    cescape
-
-           Escapes text such that it can be used as part of a C string
-           literal. (Escapes backslash and double-quotes.)
+          Escapes text such that it can be used as part of a C
+          string literal. (Escapes backslash and double-quotes.)
 
    xmlescape
-
-           Escapes text such that it can be used in XML and HTML. (Escapes
-           less-than, greater-than, and ampersand.)
+          Escapes text such that it can be used in XML and HTML.
+          (Escapes less-than, greater-than, and ampersand.)
 
    delete(chars)
-
-           Deletes all occurrences of each of the characters in chars from
-           the text. FIXME: This converter is not UTF-8 aware yet.
+          Deletes all occurrences of each of the characters in
+          chars from the text. FIXME: This converter is not UTF-8
+          aware yet.
 
    escape(chars)
-
-           Escapes all occurrences of each of the characters in chars by
-           prepending it by the first character in chars. FIXME: This
-           converter is not UTF-8 aware yet.
+          Escapes all occurrences of each of the characters in
+          chars by prepending it by the first character in chars.
+          FIXME: This converter is not UTF-8 aware yet.
 
    translate(from,to)
+          Translates all occurrences of each of the characters in
+          from by replacing them with their corresponding
+          character in to. If to has fewer characters than from,
+          it will be extended by repeating its last character.
+          FIXME: This converter is not UTF-8 aware yet.
 
-           Translates all occurrences of each of the characters in from by
-           replacing them with their corresponding character in to. If to has
-           fewer characters than from, it will be extended by repeating its
-           last character. FIXME: This converter is not UTF-8 aware yet.
+   For example, the format "%{family|downcase|delete( )}\n" will
+   expand to the values of the family element in pattern,
+   lower-cased and with spaces removed.
 
-   For example, the format "%{family|downcase|delete( )}\n" will expand to
-   the values of the family element in pattern, lower-cased and with spaces
-   removed.
+Since
 
-Version
+   version 2.9.0
+     __________________________________________________________
 
-   Fontconfig version 2.10.91
-
-   --------------------------------------------------------------------------
-
-  FcFontSet
+FcFontSet
 
    Table of Contents
+   FcFontSetCreate -- Create a font set
+   FcFontSetDestroy -- Destroy a font set
+   FcFontSetAdd -- Add to a font set
+   FcFontSetList -- List fonts from a set of font sets
+   FcFontSetMatch -- Return the best font from a set of font sets
+   FcFontSetPrint -- Print a set of patterns to stdout
+   FcFontSetSort -- Add to a font set
+   FcFontSetSortDestroy -- DEPRECATED destroy a font set
 
-   [33]FcFontSetCreate -- Create a font set
-
-   [34]FcFontSetDestroy -- Destroy a font set
-
-   [35]FcFontSetAdd -- Add to a font set
-
-   [36]FcFontSetList -- List fonts from a set of font sets
-
-   [37]FcFontSetMatch -- Return the best font from a set of font sets
+   An FcFontSet simply holds a list of patterns; these are used to
+   return the results of listing available fonts.
 
-   [38]FcFontSetPrint -- Print a set of patterns to stdout
-
-   [39]FcFontSetSort -- Add to a font set
-
-   [40]FcFontSetSortDestroy -- DEPRECATED destroy a font set
-
-   An FcFontSet simply holds a list of patterns; these are used to return the
-   results of listing available fonts.
-
-                                FcFontSetCreate
+FcFontSetCreate
 
 Name
 
-   FcFontSetCreate -- Create a font set
+   FcFontSetCreate -- Create a font set
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcFontSet * FcFontSetCreate(void);
 
@@ -1428,219 +1335,178 @@ Description
 
    Creates an empty font set.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcFontSetDestroy
+FcFontSetDestroy
 
 Name
 
-   FcFontSetDestroy -- Destroy a font set
+   FcFontSetDestroy -- Destroy a font set
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcFontSetDestroy(FcFontSet *s);
 
 Description
 
-   Destroys a font set. Note that this destroys any referenced patterns as
-   well.
-
-Version
+   Destroys a font set. Note that this destroys any referenced
+   patterns as well.
 
-   Fontconfig version 2.10.91
-
-                                  FcFontSetAdd
+FcFontSetAdd
 
 Name
 
-   FcFontSetAdd -- Add to a font set
+   FcFontSetAdd -- Add to a font set
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcFontSetAdd(FcFontSet *s, FcPattern *font);
 
 Description
 
-   Adds a pattern to a font set. Note that the pattern is not copied before
-   being inserted into the set. Returns FcFalse if the pattern cannot be
-   inserted into the set (due to allocation failure). Otherwise returns
-   FcTrue.
-
-Version
-
-   Fontconfig version 2.10.91
+   Adds a pattern to a font set. Note that the pattern is not
+   copied before being inserted into the set. Returns FcFalse if
+   the pattern cannot be inserted into the set (due to allocation
+   failure). Otherwise returns FcTrue.
 
-                                 FcFontSetList
+FcFontSetList
 
 Name
 
-   FcFontSetList -- List fonts from a set of font sets
+   FcFontSetList -- List fonts from a set of font sets
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcFontSet * FcFontSetList(FcConfig *config, FcFontSet **sets, intnsets,
-   FcPattern *pattern, FcObjectSet *object_set);
+   FcFontSet * FcFontSetList(FcConfig *config, FcFontSet **sets,
+   intnsets, FcPattern *pattern, FcObjectSet *object_set);
 
 Description
 
-   Selects fonts matching pattern from sets, creates patterns from those
-   fonts containing only the objects in object_set and returns the set of
-   unique such patterns. If config is NULL, the default configuration is
-   checked to be up to date, and used.
-
-Version
-
-   Fontconfig version 2.10.91
+   Selects fonts matching pattern from sets, creates patterns from
+   those fonts containing only the objects in object_set and
+   returns the set of unique such patterns. If config is NULL, the
+   default configuration is checked to be up to date, and used.
 
-                                 FcFontSetMatch
+FcFontSetMatch
 
 Name
 
-   FcFontSetMatch -- Return the best font from a set of font sets
+   FcFontSetMatch -- Return the best font from a set of font sets
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcPattern * FcFontSetMatch(FcConfig *config, FcFontSet **sets, intnsets,
-   FcPattern *pattern, FcResult *result);
+   FcPattern * FcFontSetMatch(FcConfig *config, FcFontSet **sets,
+   intnsets, FcPattern *pattern, FcResult *result);
 
 Description
 
-   Finds the font in sets most closely matching pattern and returns the
-   result of FcFontRenderPrepare for that font and the provided pattern. This
-   function should be called only after FcConfigSubstitute and
-   FcDefaultSubstitute have been called for pattern; otherwise the results
-   will not be correct. If config is NULL, the current configuration is used.
-   Returns NULL if an error occurs during this process.
-
-Version
-
-   Fontconfig version 2.10.91
+   Finds the font in sets most closely matching pattern and
+   returns the result of FcFontRenderPrepare for that font and the
+   provided pattern. This function should be called only after
+   FcConfigSubstitute and FcDefaultSubstitute have been called for
+   pattern; otherwise the results will not be correct. If config
+   is NULL, the current configuration is used. Returns NULL if an
+   error occurs during this process.
 
-                                 FcFontSetPrint
+FcFontSetPrint
 
 Name
 
-   FcFontSetPrint -- Print a set of patterns to stdout
+   FcFontSetPrint -- Print a set of patterns to stdout
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcFontSetPrint(FcFontSet *set);
 
 Description
 
-   This function is useful for diagnosing font related issues, printing the
-   complete contents of every pattern in set. The format of the output is
-   designed to be of help to users and developers, and may change at any
-   time.
-
-Version
-
-   Fontconfig version 2.10.91
+   This function is useful for diagnosing font related issues,
+   printing the complete contents of every pattern in set. The
+   format of the output is designed to be of help to users and
+   developers, and may change at any time.
 
-                                 FcFontSetSort
+FcFontSetSort
 
 Name
 
-   FcFontSetSort -- Add to a font set
+   FcFontSetSort -- Add to a font set
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcFontSetSort(FcConfig *config, FcFontSet **sets, intnsets, FcPattern
-   *pattern, FcBool trim, FcCharSet **csp, FcResult *result);
+   FcFontSetSort(FcConfig *config, FcFontSet **sets, intnsets,
+   FcPattern *pattern, FcBool trim, FcCharSet **csp, FcResult
+   *result);
 
 Description
 
-   Returns the list of fonts from sets sorted by closeness to pattern. If
-   trim is FcTrue, elements in the list which don't include Unicode coverage
-   not provided by earlier elements in the list are elided. The union of
-   Unicode coverage of all of the fonts is returned in csp, if csp is not
-   NULL. This function should be called only after FcConfigSubstitute and
-   FcDefaultSubstitute have been called for p; otherwise the results will not
-   be correct.
+   Returns the list of fonts from sets sorted by closeness to
+   pattern. If trim is FcTrue, elements in the list which don't
+   include Unicode coverage not provided by earlier elements in
+   the list are elided. The union of Unicode coverage of all of
+   the fonts is returned in csp, if csp is not NULL. This function
+   should be called only after FcConfigSubstitute and
+   FcDefaultSubstitute have been called for p; otherwise the
+   results will not be correct.
 
-   The returned FcFontSet references FcPattern structures which may be shared
-   by the return value from multiple FcFontSort calls, applications cannot
-   modify these patterns. Instead, they should be passed, along with pattern
-   to FcFontRenderPrepare which combines them into a complete pattern.
+   The returned FcFontSet references FcPattern structures which
+   may be shared by the return value from multiple FcFontSort
+   calls, applications cannot modify these patterns. Instead, they
+   should be passed, along with pattern to FcFontRenderPrepare
+   which combines them into a complete pattern.
 
    The FcFontSet returned by FcFontSetSort is destroyed by calling
    FcFontSetDestroy.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                              FcFontSetSortDestroy
+FcFontSetSortDestroy
 
 Name
 
-   FcFontSetSortDestroy -- DEPRECATED destroy a font set
+   FcFontSetSortDestroy -- DEPRECATED destroy a font set
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcFontSetSortDestroy(FcFontSet *set);
 
 Description
 
-   This function is DEPRECATED. FcFontSetSortDestroy destroys set by calling
-   FcFontSetDestroy. Applications should use FcFontSetDestroy directly
-   instead.
-
-Version
-
-   Fontconfig version 2.10.91
-
-   --------------------------------------------------------------------------
+   This function is DEPRECATED. FcFontSetSortDestroy destroys set
+   by calling FcFontSetDestroy. Applications should use
+   FcFontSetDestroy directly instead.
+     __________________________________________________________
 
-  FcObjectSet
+FcObjectSet
 
    Table of Contents
+   FcObjectSetCreate -- Create an object set
+   FcObjectSetAdd -- Add to an object set
+   FcObjectSetDestroy -- Destroy an object set
+   FcObjectSetBuild -- Build object set from args
 
-   [41]FcObjectSetCreate -- Create an object set
-
-   [42]FcObjectSetAdd -- Add to an object set
-
-   [43]FcObjectSetDestroy -- Destroy an object set
-
-   [44]FcObjectSetBuild -- Build object set from args
+   An FcObjectSet holds a list of pattern property names; it is
+   used to indicate which properties are to be returned in the
+   patterns from FcFontList.
 
-   An FcObjectSet holds a list of pattern property names; it is used to
-   indicate which properties are to be returned in the patterns from
-   FcFontList.
-
-                               FcObjectSetCreate
+FcObjectSetCreate
 
 Name
 
-   FcObjectSetCreate -- Create an object set
+   FcObjectSetCreate -- Create an object set
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcObjectSet * FcObjectSetCreate(void);
 
@@ -1648,43 +1514,33 @@ Description
 
    Creates an empty set.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                 FcObjectSetAdd
+FcObjectSetAdd
 
 Name
 
-   FcObjectSetAdd -- Add to an object set
+   FcObjectSetAdd -- Add to an object set
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcObjectSetAdd(FcObjectSet *os, const char *object);
 
 Description
 
-   Adds a property name to the set. Returns FcFalse if the property name
-   cannot be inserted into the set (due to allocation failure). Otherwise
-   returns FcTrue.
-
-Version
+   Adds a property name to the set. Returns FcFalse if the
+   property name cannot be inserted into the set (due to
+   allocation failure). Otherwise returns FcTrue.
 
-   Fontconfig version 2.10.91
-
-                               FcObjectSetDestroy
+FcObjectSetDestroy
 
 Name
 
-   FcObjectSetDestroy -- Destroy an object set
+   FcObjectSetDestroy -- Destroy an object set
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcObjectSetDestroy(FcObjectSet *os);
 
@@ -1692,471 +1548,375 @@ Description
 
    Destroys an object set.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcObjectSetBuild
+FcObjectSetBuild
 
 Name
 
-   FcObjectSetBuild, FcObjectSetVaBuild, FcObjectSetVapBuild -- Build object
-   set from args
+   FcObjectSetBuild, FcObjectSetVaBuild,
+   FcObjectSetVapBuild -- Build object set from args
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcObjectSet * FcObjectSetBuild(const char *first, ...);
 
-   FcObjectSet * FcObjectSetVaBuild(const char *first, va_list va);
-
-   void FcObjectSetVapBuild(FcObjectSet *result, const char *first, va_list
+   FcObjectSet * FcObjectSetVaBuild(const char *first, va_list
    va);
 
-Description
+   void FcObjectSetVapBuild(FcObjectSet *result, const char
+   *first, va_list va);
 
-   These build an object set from a null-terminated list of property names.
-   FcObjectSetVapBuild is a macro version of FcObjectSetVaBuild which returns
-   the result in the result variable directly.
-
-Version
-
-   Fontconfig version 2.10.91
+Description
 
-   --------------------------------------------------------------------------
+   These build an object set from a null-terminated list of
+   property names. FcObjectSetVapBuild is a macro version of
+   FcObjectSetVaBuild which returns the result in the result
+   variable directly.
+     __________________________________________________________
 
-  FreeType specific functions
+FreeType specific functions
 
    Table of Contents
+   FcFreeTypeCharIndex -- map Unicode to glyph id
+   FcFreeTypeCharSet -- compute Unicode coverage
+   FcFreeTypeCharSetAndSpacing -- compute Unicode coverage and
+          spacing type
 
-   [45]FcFreeTypeCharIndex -- map Unicode to glyph id
-
-   [46]FcFreeTypeCharSet -- compute Unicode coverage
-
-   [47]FcFreeTypeCharSetAndSpacing -- compute Unicode coverage and spacing
-   type
-
-   [48]FcFreeTypeQuery -- compute pattern from font file (and index)
+   FcFreeTypeQuery -- compute pattern from font file (and index)
+   FcFreeTypeQueryFace -- compute pattern from FT_Face
 
-   [49]FcFreeTypeQueryFace -- compute pattern from FT_Face
+   While the fontconfig library doesn't insist that FreeType be
+   used as the rasterization mechanism for fonts, it does provide
+   some convenience functions.
 
-   While the fontconfig library doesn't insist that FreeType be used as the
-   rasterization mechanism for fonts, it does provide some convenience
-   functions.
-
-                              FcFreeTypeCharIndex
+FcFreeTypeCharIndex
 
 Name
 
-   FcFreeTypeCharIndex -- map Unicode to glyph id
+   FcFreeTypeCharIndex -- map Unicode to glyph id
 
 Synopsis
 
-   #include <fontconfig.h>
-   #include <fcfreetype.h>
-
+#include <fontconfig.h>
+#include <fcfreetype.h>
 
    FT_UInt FcFreeTypeCharIndex(FT_Face face, FcChar32 ucs4);
 
 Description
 
-   Maps a Unicode char to a glyph index. This function uses information from
-   several possible underlying encoding tables to work around broken fonts.
-   As a result, this function isn't designed to be used in performance
-   sensitive areas; results from this function are intended to be cached by
-   higher level functions.
-
-Version
-
-   Fontconfig version 2.10.91
+   Maps a Unicode char to a glyph index. This function uses
+   information from several possible underlying encoding tables to
+   work around broken fonts. As a result, this function isn't
+   designed to be used in performance sensitive areas; results
+   from this function are intended to be cached by higher level
+   functions.
 
-                               FcFreeTypeCharSet
+FcFreeTypeCharSet
 
 Name
 
-   FcFreeTypeCharSet -- compute Unicode coverage
+   FcFreeTypeCharSet -- compute Unicode coverage
 
 Synopsis
 
-   #include <fontconfig.h>
-   #include <fcfreetype.h>
-
+#include <fontconfig.h>
+#include <fcfreetype.h>
 
    FcCharSet * FcFreeTypeCharSet(FT_Face face, FcBlanks *blanks);
 
 Description
 
-   Scans a FreeType face and returns the set of encoded Unicode chars. This
-   scans several encoding tables to build as complete a list as possible. If
-   'blanks' is not 0, the glyphs in the font are examined and any blank
-   glyphs not in 'blanks' are not placed in the returned FcCharSet.
+   Scans a FreeType face and returns the set of encoded Unicode
+   chars. This scans several encoding tables to build as complete
+   a list as possible. If 'blanks' is not 0, the glyphs in the
+   font are examined and any blank glyphs not in 'blanks' are not
+   placed in the returned FcCharSet.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                          FcFreeTypeCharSetAndSpacing
+FcFreeTypeCharSetAndSpacing
 
 Name
 
-   FcFreeTypeCharSetAndSpacing -- compute Unicode coverage and spacing type
+   FcFreeTypeCharSetAndSpacing -- compute Unicode coverage and
+   spacing type
 
 Synopsis
 
-   #include <fontconfig.h>
-   #include <fcfreetype.h>
+#include <fontconfig.h>
+#include <fcfreetype.h>
 
-
-   FcCharSet * FcFreeTypeCharSetAndSpacing(FT_Face face, FcBlanks *blanks,
-   int *spacing);
+   FcCharSet * FcFreeTypeCharSetAndSpacing(FT_Face face, FcBlanks
+   *blanks, int *spacing);
 
 Description
 
-   Scans a FreeType face and returns the set of encoded Unicode chars. This
-   scans several encoding tables to build as complete a list as possible. If
-   'blanks' is not 0, the glyphs in the font are examined and any blank
-   glyphs not in 'blanks' are not placed in the returned FcCharSet. spacing
-   receives the computed spacing type of the font, one of FC_MONO for a font
-   where all glyphs have the same width, FC_DUAL, where the font has glyphs
+   Scans a FreeType face and returns the set of encoded Unicode
+   chars. This scans several encoding tables to build as complete
+   a list as possible. If 'blanks' is not 0, the glyphs in the
+   font are examined and any blank glyphs not in 'blanks' are not
+   placed in the returned FcCharSet. spacing receives the computed
+   spacing type of the font, one of FC_MONO for a font where all
+   glyphs have the same width, FC_DUAL, where the font has glyphs
    in precisely two widths, one twice as wide as the other, or
    FC_PROPORTIONAL where the font has glyphs of many widths.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcFreeTypeQuery
+FcFreeTypeQuery
 
 Name
 
-   FcFreeTypeQuery -- compute pattern from font file (and index)
+   FcFreeTypeQuery -- compute pattern from font file (and index)
 
 Synopsis
 
-   #include <fontconfig.h>
-   #include <fcfreetype.h>
-
+#include <fontconfig.h>
+#include <fcfreetype.h>
 
-   FcPattern * FcFreeTypeQuery(const FcChar8 *file, int id, FcBlanks *blanks,
-   int *count);
+   FcPattern * FcFreeTypeQuery(const FcChar8 *file, int id,
+   FcBlanks *blanks, int *count);
 
 Description
 
-   Constructs a pattern representing the 'id'th font in 'file'. The number of
-   fonts in 'file' is returned in 'count'.
-
-Version
+   Constructs a pattern representing the 'id'th font in 'file'.
+   The number of fonts in 'file' is returned in 'count'.
 
-   Fontconfig version 2.10.91
-
-                              FcFreeTypeQueryFace
+FcFreeTypeQueryFace
 
 Name
 
-   FcFreeTypeQueryFace -- compute pattern from FT_Face
+   FcFreeTypeQueryFace -- compute pattern from FT_Face
 
 Synopsis
 
-   #include <fontconfig.h>
-   #include <fcfreetype.h>
-
+#include <fontconfig.h>
+#include <fcfreetype.h>
 
-   FcPattern * FcFreeTypeQueryFace(const FT_Face face, const FcChar8 *file,
-   int id, FcBlanks *blanks);
+   FcPattern * FcFreeTypeQueryFace(const FT_Face face, const
+   FcChar8 *file, int id, FcBlanks *blanks);
 
 Description
 
-   Constructs a pattern representing 'face'. 'file' and 'id' are used solely
-   as data for pattern elements (FC_FILE, FC_INDEX and sometimes FC_FAMILY).
-
-Version
-
-   Fontconfig version 2.10.91
+   Constructs a pattern representing 'face'. 'file' and 'id' are
+   used solely as data for pattern elements (FC_FILE, FC_INDEX and
+   sometimes FC_FAMILY).
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
-
-  FcValue
+FcValue
 
    Table of Contents
+   FcValueDestroy -- Free a value
+   FcValueSave -- Copy a value
+   FcValuePrint -- Print a value to stdout
+   FcValueEqual -- Test two values for equality
 
-   [50]FcValueDestroy -- Free a value
-
-   [51]FcValueSave -- Copy a value
-
-   [52]FcValuePrint -- Print a value to stdout
+   FcValue is a structure containing a type tag and a union of all
+   possible datatypes. The tag is an enum of type FcType and is
+   intended to provide a measure of run-time typechecking,
+   although that depends on careful programming.
 
-   [53]FcValueEqual -- Test two values for equality
-
-   FcValue is a structure containing a type tag and a union of all possible
-   datatypes. The tag is an enum of type FcType and is intended to provide a
-   measure of run-time typechecking, although that depends on careful
-   programming.
-
-                                 FcValueDestroy
+FcValueDestroy
 
 Name
 
-   FcValueDestroy -- Free a value
+   FcValueDestroy -- Free a value
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcValueDestroy(FcValue v);
 
 Description
 
    Frees any memory referenced by v. Values of type FcTypeString,
-   FcTypeMatrix and FcTypeCharSet reference memory, the other types do not.
+   FcTypeMatrix and FcTypeCharSet reference memory, the other
+   types do not.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                  FcValueSave
+FcValueSave
 
 Name
 
-   FcValueSave -- Copy a value
+   FcValueSave -- Copy a value
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcValue FcValueSave(FcValue v);
 
 Description
 
-   Returns a copy of v duplicating any object referenced by it so that v may
-   be safely destroyed without harming the new value.
+   Returns a copy of v duplicating any object referenced by it so
+   that v may be safely destroyed without harming the new value.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                  FcValuePrint
+FcValuePrint
 
 Name
 
-   FcValuePrint -- Print a value to stdout
+   FcValuePrint -- Print a value to stdout
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcValuePrint(FcValue v);
 
 Description
 
-   Prints a human-readable representation of v to stdout. The format should
-   not be considered part of the library specification as it may change in
-   the future.
-
-Version
+   Prints a human-readable representation of v to stdout. The
+   format should not be considered part of the library
+   specification as it may change in the future.
 
-   Fontconfig version 2.10.91
-
-                                  FcValueEqual
+FcValueEqual
 
 Name
 
-   FcValueEqual -- Test two values for equality
+   FcValueEqual -- Test two values for equality
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcValueEqual(FcValue v_a, FcValue v_b);
 
 Description
 
-   Compares two values. Integers and Doubles are compared as numbers;
-   otherwise the two values have to be the same type to be considered equal.
-   Strings are compared ignoring case.
-
-Version
+   Compares two values. Integers and Doubles are compared as
+   numbers; otherwise the two values have to be the same type to
+   be considered equal. Strings are compared ignoring case.
+     __________________________________________________________
 
-   Fontconfig version 2.10.91
-
-   --------------------------------------------------------------------------
-
-  FcCharSet
+FcCharSet
 
    Table of Contents
+   FcCharSetCreate -- Create an empty character set
+   FcCharSetDestroy -- Destroy a character set
+   FcCharSetAddChar -- Add a character to a charset
+   FcCharSetDelChar -- Add a character to a charset
+   FcCharSetCopy -- Copy a charset
+   FcCharSetEqual -- Compare two charsets
+   FcCharSetIntersect -- Intersect charsets
+   FcCharSetUnion -- Add charsets
+   FcCharSetSubtract -- Subtract charsets
+   FcCharSetMerge -- Merge charsets
+   FcCharSetHasChar -- Check a charset for a char
+   FcCharSetCount -- Count entries in a charset
+   FcCharSetIntersectCount -- Intersect and count charsets
+   FcCharSetSubtractCount -- Subtract and count charsets
+   FcCharSetIsSubset -- Test for charset inclusion
+   FcCharSetFirstPage -- Start enumerating charset contents
+   FcCharSetNextPage -- Continue enumerating charset contents
+   FcCharSetCoverage -- DEPRECATED return coverage for a Unicode
+          page
 
-   [54]FcCharSetCreate -- Create an empty character set
-
-   [55]FcCharSetDestroy -- Destroy a character set
-
-   [56]FcCharSetAddChar -- Add a character to a charset
-
-   [57]FcCharSetDelChar -- Add a character to a charset
-
-   [58]FcCharSetCopy -- Copy a charset
-
-   [59]FcCharSetEqual -- Compare two charsets
-
-   [60]FcCharSetIntersect -- Intersect charsets
-
-   [61]FcCharSetUnion -- Add charsets
-
-   [62]FcCharSetSubtract -- Subtract charsets
-
-   [63]FcCharSetMerge -- Merge charsets
-
-   [64]FcCharSetHasChar -- Check a charset for a char
-
-   [65]FcCharSetCount -- Count entries in a charset
-
-   [66]FcCharSetIntersectCount -- Intersect and count charsets
-
-   [67]FcCharSetSubtractCount -- Subtract and count charsets
-
-   [68]FcCharSetIsSubset -- Test for charset inclusion
-
-   [69]FcCharSetFirstPage -- Start enumerating charset contents
-
-   [70]FcCharSetNextPage -- Continue enumerating charset contents
-
-   [71]FcCharSetCoverage -- DEPRECATED return coverage for a Unicode page
-
-   [72]FcCharSetNew -- DEPRECATED alias for FcCharSetCreate
+   FcCharSetNew -- DEPRECATED alias for FcCharSetCreate
 
-   An FcCharSet is a boolean array indicating a set of Unicode chars. Those
-   associated with a font are marked constant and cannot be edited.
-   FcCharSets may be reference counted internally to reduce memory
-   consumption; this may be visible to applications as the result of
-   FcCharSetCopy may return it's argument, and that CharSet may remain
-   unmodifiable.
+   An FcCharSet is a boolean array indicating a set of Unicode
+   chars. Those associated with a font are marked constant and
+   cannot be edited. FcCharSets may be reference counted
+   internally to reduce memory consumption; this may be visible to
+   applications as the result of FcCharSetCopy may return it's
+   argument, and that CharSet may remain unmodifiable.
 
-                                FcCharSetCreate
+FcCharSetCreate
 
 Name
 
-   FcCharSetCreate -- Create an empty character set
+   FcCharSetCreate -- Create an empty character set
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcCharSet * FcCharSetCreate(void);
 
 Description
 
-   FcCharSetCreate allocates and initializes a new empty character set
-   object.
-
-Version
+   FcCharSetCreate allocates and initializes a new empty character
+   set object.
 
-   Fontconfig version 2.10.91
-
-                                FcCharSetDestroy
+FcCharSetDestroy
 
 Name
 
-   FcCharSetDestroy -- Destroy a character set
+   FcCharSetDestroy -- Destroy a character set
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcCharSetDestroy(FcCharSet *fcs);
 
 Description
 
-   FcCharSetDestroy decrements the reference count fcs. If the reference
-   count becomes zero, all memory referenced is freed.
+   FcCharSetDestroy decrements the reference count fcs. If the
+   reference count becomes zero, all memory referenced is freed.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcCharSetAddChar
+FcCharSetAddChar
 
 Name
 
-   FcCharSetAddChar -- Add a character to a charset
+   FcCharSetAddChar -- Add a character to a charset
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcCharSetAddChar(FcCharSet *fcs, FcChar32 ucs4);
 
 Description
 
-   FcCharSetAddChar adds a single Unicode char to the set, returning FcFalse
-   on failure, either as a result of a constant set or from running out of
-   memory.
+   FcCharSetAddChar adds a single Unicode char to the set,
+   returning FcFalse on failure, either as a result of a constant
+   set or from running out of memory.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcCharSetDelChar
+FcCharSetDelChar
 
 Name
 
-   FcCharSetDelChar -- Add a character to a charset
+   FcCharSetDelChar -- Add a character to a charset
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcCharSetDelChar(FcCharSet *fcs, FcChar32 ucs4);
 
 Description
 
-   FcCharSetDelChar deletes a single Unicode char from the set, returning
-   FcFalse on failure, either as a result of a constant set or from running
-   out of memory.
+   FcCharSetDelChar deletes a single Unicode char from the set,
+   returning FcFalse on failure, either as a result of a constant
+   set or from running out of memory.
 
-Version
+Since
 
-   Fontconfig version 2.10.91
+   version 2.9.0
 
-                                 FcCharSetCopy
+FcCharSetCopy
 
 Name
 
-   FcCharSetCopy -- Copy a charset
+   FcCharSetCopy -- Copy a charset
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcCharSet * FcCharSetCopy(FcCharSet *src);
 
 Description
 
-   Makes a copy of src; note that this may not actually do anything more than
-   increment the reference count on src.
+   Makes a copy of src; note that this may not actually do
+   anything more than increment the reference count on src.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                 FcCharSetEqual
+FcCharSetEqual
 
 Name
 
-   FcCharSetEqual -- Compare two charsets
+   FcCharSetEqual -- Compare two charsets
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcCharSetEqual(const FcCharSet *a, const FcCharSet *b);
 
@@ -2164,107 +1924,88 @@ Description
 
    Returns whether a and b contain the same set of Unicode chars.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                               FcCharSetIntersect
+FcCharSetIntersect
 
 Name
 
-   FcCharSetIntersect -- Intersect charsets
+   FcCharSetIntersect -- Intersect charsets
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcCharSet * FcCharSetIntersect(const FcCharSet *a, const FcCharSet *b);
+   FcCharSet * FcCharSetIntersect(const FcCharSet *a, const
+   FcCharSet *b);
 
 Description
 
    Returns a set including only those chars found in both a and b.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                 FcCharSetUnion
+FcCharSetUnion
 
 Name
 
-   FcCharSetUnion -- Add charsets
+   FcCharSetUnion -- Add charsets
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcCharSet * FcCharSetUnion(const FcCharSet *a, const FcCharSet *b);
+   FcCharSet * FcCharSetUnion(const FcCharSet *a, const FcCharSet
+   *b);
 
 Description
 
-   Returns a set including only those chars found in either a or b.
+   Returns a set including only those chars found in either a or
+   b.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                               FcCharSetSubtract
+FcCharSetSubtract
 
 Name
 
-   FcCharSetSubtract -- Subtract charsets
+   FcCharSetSubtract -- Subtract charsets
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcCharSet * FcCharSetSubtract(const FcCharSet *a, const FcCharSet *b);
+   FcCharSet * FcCharSetSubtract(const FcCharSet *a, const
+   FcCharSet *b);
 
 Description
 
    Returns a set including only those chars found in a but not b.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                 FcCharSetMerge
+FcCharSetMerge
 
 Name
 
-   FcCharSetMerge -- Merge charsets
+   FcCharSetMerge -- Merge charsets
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcCharSetMerge(FcCharSet *a, const FcCharSet *b, FcBool *changed);
+   FcBool FcCharSetMerge(FcCharSet *a, const FcCharSet *b, FcBool
+   *changed);
 
 Description
 
-   Adds all chars in b to a. In other words, this is an in-place version of
-   FcCharSetUnion. If changed is not NULL, then it returns whether any new
-   chars from b were added to a. Returns FcFalse on failure, either when a is
-   a constant set or from running out of memory.
+   Adds all chars in b to a. In other words, this is an in-place
+   version of FcCharSetUnion. If changed is not NULL, then it
+   returns whether any new chars from b were added to a. Returns
+   FcFalse on failure, either when a is a constant set or from
+   running out of memory.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcCharSetHasChar
+FcCharSetHasChar
 
 Name
 
-   FcCharSetHasChar -- Check a charset for a char
+   FcCharSetHasChar -- Check a charset for a char
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcCharSetHasChar(const FcCharSet *fcs, FcChar32 ucs4);
 
@@ -2272,20 +2013,15 @@ Description
 
    Returns whether fcs contains the char ucs4.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                 FcCharSetCount
+FcCharSetCount
 
 Name
 
-   FcCharSetCount -- Count entries in a charset
+   FcCharSetCount -- Count entries in a charset
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar32 FcCharSetCount(const FcCharSet *a);
 
@@ -2293,218 +2029,185 @@ Description
 
    Returns the total number of Unicode chars in a.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                            FcCharSetIntersectCount
+FcCharSetIntersectCount
 
 Name
 
-   FcCharSetIntersectCount -- Intersect and count charsets
+   FcCharSetIntersectCount -- Intersect and count charsets
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcChar32 FcCharSetIntersectCount(const FcCharSet *a, const FcCharSet *b);
+   FcChar32 FcCharSetIntersectCount(const FcCharSet *a, const
+   FcCharSet *b);
 
 Description
 
    Returns the number of chars that are in both a and b.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                             FcCharSetSubtractCount
+FcCharSetSubtractCount
 
 Name
 
-   FcCharSetSubtractCount -- Subtract and count charsets
+   FcCharSetSubtractCount -- Subtract and count charsets
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcChar32 FcCharSetSubtractCount(const FcCharSet *a, const FcCharSet *b);
+   FcChar32 FcCharSetSubtractCount(const FcCharSet *a, const
+   FcCharSet *b);
 
 Description
 
    Returns the number of chars that are in a but not in b.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                               FcCharSetIsSubset
+FcCharSetIsSubset
 
 Name
 
-   FcCharSetIsSubset -- Test for charset inclusion
+   FcCharSetIsSubset -- Test for charset inclusion
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcCharSetIsSubset(const FcCharSet *a, const FcCharSet *b);
+   FcBool FcCharSetIsSubset(const FcCharSet *a, const FcCharSet
+   *b);
 
 Description
 
    Returns whether a is a subset of b.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                               FcCharSetFirstPage
+FcCharSetFirstPage
 
 Name
 
-   FcCharSetFirstPage -- Start enumerating charset contents
+   FcCharSetFirstPage -- Start enumerating charset contents
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar32 FcCharSetFirstPage(const FcCharSet *a,
    FcChar32[FC_CHARSET_MAP_SIZE] map, FcChar32 *next);
 
 Description
 
-   Builds an array of bits marking the first page of Unicode coverage of a.
-   Returns the base of the array. next contains the next page in the font.
-
-Version
+   Builds an array of bits in map marking the first page of
+   Unicode coverage of a. *next is set to contains the base code
+   point for the next page in a. Returns the base code point for
+   the page, or FC_CHARSET_DONE if a contains no pages. As an
+   example, if FcCharSetFirstPage returns 0x300 and fills map with
+0xffffffff 0xffffffff 0x01000008 0x44300002 0xffffd7f0 0xfffffffb 0xffff
+7fff 0xffff0003
 
-   Fontconfig version 2.10.91
+   Then the page contains code points 0x300 through 0x33f (the
+   first 64 code points on the page) because map[0] and map[1]
+   both have all their bits set. It also contains code points
+   0x343 (0x300 + 32*2 + (4-1)) and 0x35e (0x300 + 32*2 + (31-1))
+   because map[2] has the 4th and 31st bits set. The code points
+   represented by map[3] and later are left as an excercise for
+   the reader ;).
 
-                               FcCharSetNextPage
+FcCharSetNextPage
 
 Name
 
-   FcCharSetNextPage -- Continue enumerating charset contents
+   FcCharSetNextPage -- Continue enumerating charset contents
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar32 FcCharSetNextPage(const FcCharSet *a,
    FcChar32[FC_CHARSET_MAP_SIZE] map, FcChar32 *next);
 
 Description
 
-   Builds an array of bits marking the Unicode coverage of a for page *next.
-   Returns the base of the array. next contains the next page in the font.
+   Builds an array of bits in map marking the Unicode coverage of
+   a for page containing *next (see the FcCharSetFirstPage
+   description for details). *next is set to contains the base
+   code point for the next page in a. Returns the base of code
+   point for the page, or FC_CHARSET_DONE if a does not contain
+   *next.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                               FcCharSetCoverage
+FcCharSetCoverage
 
 Name
 
-   FcCharSetCoverage -- DEPRECATED return coverage for a Unicode page
+   FcCharSetCoverage -- DEPRECATED return coverage for a Unicode
+   page
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar32 FcCharSetCoverage(const FcCharSet *a, FcChar32page,
    FcChar32[8]result);
 
-Description
-
-   DEPRECATED This function returns a bitmask in result which indicates which
-   code points in page are included in a. FcCharSetCoverage returns the next
-   page in the charset which has any coverage.
-
-Version
-
-   Fontconfig version 2.10.91
-
-                                  FcCharSetNew
-
-Name
-
-   FcCharSetNew -- DEPRECATED alias for FcCharSetCreate
-
-Synopsis
-
-   #include <fontconfig/fontconfig.h>
-
-
-   FcCharSet * FcCharSetNew(void);
-
-Description
-
-   FcCharSetNew is a DEPRECATED alias for FcCharSetCreate.
-
-Version
-
-   Fontconfig version 2.10.91
-
-   --------------------------------------------------------------------------
-
-  FcLangSet
-
-   Table of Contents
-
-   [73]FcLangSetCreate -- create a langset object
-
-   [74]FcLangSetDestroy -- destroy a langset object
-
-   [75]FcLangSetCopy -- copy a langset object
-
-   [76]FcLangSetAdd -- add a language to a langset
-
-   [77]FcLangSetDel -- delete a language from a langset
+Description
 
-   [78]FcLangSetUnion -- Add langsets
+   DEPRECATED This function returns a bitmask in result which
+   indicates which code points in page are included in a.
+   FcCharSetCoverage returns the next page in the charset which
+   has any coverage.
 
-   [79]FcLangSetSubtract -- Subtract langsets
+FcCharSetNew
 
-   [80]FcLangSetCompare -- compare language sets
+Name
 
-   [81]FcLangSetContains -- check langset subset relation
+   FcCharSetNew -- DEPRECATED alias for FcCharSetCreate
 
-   [82]FcLangSetEqual -- test for matching langsets
+Synopsis
 
-   [83]FcLangSetHash -- return a hash value for a langset
+#include <fontconfig/fontconfig.h>
 
-   [84]FcLangSetHasLang -- test langset for language support
+   FcCharSet * FcCharSetNew(void);
 
-   [85]FcGetDefaultLangs -- Get the default languages list
+Description
 
-   [86]FcGetLangs -- Get list of languages
+   FcCharSetNew is a DEPRECATED alias for FcCharSetCreate.
+     __________________________________________________________
 
-   [87]FcLangNormalize -- Normalize the language string
+FcLangSet
 
-   [88]FcLangGetCharSet -- Get character map for a language
+   Table of Contents
+   FcLangSetCreate -- create a langset object
+   FcLangSetDestroy -- destroy a langset object
+   FcLangSetCopy -- copy a langset object
+   FcLangSetAdd -- add a language to a langset
+   FcLangSetDel -- delete a language from a langset
+   FcLangSetUnion -- Add langsets
+   FcLangSetSubtract -- Subtract langsets
+   FcLangSetCompare -- compare language sets
+   FcLangSetContains -- check langset subset relation
+   FcLangSetEqual -- test for matching langsets
+   FcLangSetHash -- return a hash value for a langset
+   FcLangSetHasLang -- test langset for language support
+   FcGetDefaultLangs -- Get the default languages list
+   FcLangSetGetLangs -- get the list of languages in the langset
+   FcGetLangs -- Get list of languages
+   FcLangNormalize -- Normalize the language string
+   FcLangGetCharSet -- Get character map for a language
 
-   An FcLangSet is a set of language names (each of which include language
-   and an optional territory). They are used when selecting fonts to indicate
-   which languages the fonts need to support. Each font is marked, using
-   language orthography information built into fontconfig, with the set of
-   supported languages.
+   An FcLangSet is a set of language names (each of which include
+   language and an optional territory). They are used when
+   selecting fonts to indicate which languages the fonts need to
+   support. Each font is marked, using language orthography
+   information built into fontconfig, with the set of supported
+   languages.
 
-                                FcLangSetCreate
+FcLangSetCreate
 
 Name
 
-   FcLangSetCreate -- create a langset object
+   FcLangSetCreate -- create a langset object
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcLangSet * FcLangSetCreate(void);
 
@@ -2512,297 +2215,274 @@ Description
 
    FcLangSetCreate creates a new FcLangSet object.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcLangSetDestroy
+FcLangSetDestroy
 
 Name
 
-   FcLangSetDestroy -- destroy a langset object
+   FcLangSetDestroy -- destroy a langset object
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcLangSetDestroy(FcLangSet *ls);
 
 Description
 
-   FcLangSetDestroy destroys a FcLangSet object, freeing all memory
-   associated with it.
-
-Version
-
-   Fontconfig version 2.10.91
+   FcLangSetDestroy destroys a FcLangSet object, freeing all
+   memory associated with it.
 
-                                 FcLangSetCopy
+FcLangSetCopy
 
 Name
 
-   FcLangSetCopy -- copy a langset object
+   FcLangSetCopy -- copy a langset object
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcLangSet * FcLangSetCopy(const FcLangSet *ls);
 
 Description
 
-   FcLangSetCopy creates a new FcLangSet object and populates it with the
-   contents of ls.
-
-Version
+   FcLangSetCopy creates a new FcLangSet object and populates it
+   with the contents of ls.
 
-   Fontconfig version 2.10.91
-
-                                  FcLangSetAdd
+FcLangSetAdd
 
 Name
 
-   FcLangSetAdd -- add a language to a langset
+   FcLangSetAdd -- add a language to a langset
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcLangSetAdd(FcLangSet *ls, const FcChar8 *lang);
 
 Description
 
-   lang is added to ls. lang should be of the form Ll-Tt where Ll is a two or
-   three letter language from ISO 639 and Tt is a territory from ISO 3166.
-
-Version
-
-   Fontconfig version 2.10.91
+   lang is added to ls. lang should be of the form Ll-Tt where Ll
+   is a two or three letter language from ISO 639 and Tt is a
+   territory from ISO 3166.
 
-                                  FcLangSetDel
+FcLangSetDel
 
 Name
 
-   FcLangSetDel -- delete a language from a langset
+   FcLangSetDel -- delete a language from a langset
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcLangSetDel(FcLangSet *ls, const FcChar8 *lang);
 
 Description
 
-   lang is removed from ls. lang should be of the form Ll-Tt where Ll is a
-   two or three letter language from ISO 639 and Tt is a territory from ISO
-   3166.
+   lang is removed from ls. lang should be of the form Ll-Tt where
+   Ll is a two or three letter language from ISO 639 and Tt is a
+   territory from ISO 3166.
 
-Version
+Since
 
-   Fontconfig version 2.10.91
+   version 2.9.0
 
-                                 FcLangSetUnion
+FcLangSetUnion
 
 Name
 
-   FcLangSetUnion -- Add langsets
+   FcLangSetUnion -- Add langsets
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcLangSet * FcLangSetUnion(const FcLangSet *ls_a, const FcLangSet *ls_b);
+   FcLangSet * FcLangSetUnion(const FcLangSet *ls_a, const
+   FcLangSet *ls_b);
 
 Description
 
-   Returns a set including only those languages found in either ls_a or ls_b.
+   Returns a set including only those languages found in either
+   ls_a or ls_b.
 
-Version
+Since
 
-   Fontconfig version 2.10.91
+   version 2.9.0
 
-                               FcLangSetSubtract
+FcLangSetSubtract
 
 Name
 
-   FcLangSetSubtract -- Subtract langsets
+   FcLangSetSubtract -- Subtract langsets
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcLangSet * FcLangSetSubtract(const FcLangSet *ls_a, const FcLangSet
-   *ls_b);
+   FcLangSet * FcLangSetSubtract(const FcLangSet *ls_a, const
+   FcLangSet *ls_b);
 
 Description
 
-   Returns a set including only those languages found in ls_a but not in
-   ls_b.
+   Returns a set including only those languages found in ls_a but
+   not in ls_b.
 
-Version
+Since
 
-   Fontconfig version 2.10.91
+   version 2.9.0
 
-                                FcLangSetCompare
+FcLangSetCompare
 
 Name
 
-   FcLangSetCompare -- compare language sets
+   FcLangSetCompare -- compare language sets
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcLangResult FcLangSetCompare(const FcLangSet *ls_a, const FcLangSet
-   *ls_b);
+   FcLangResult FcLangSetCompare(const FcLangSet *ls_a, const
+   FcLangSet *ls_b);
 
 Description
 
-   FcLangSetCompare compares language coverage for ls_a and ls_b. If they
-   share any language and territory pair, this function returns FcLangEqual.
-   If they share a language but differ in which territory that language is
-   for, this function returns FcLangDifferentTerritory. If they share no
-   languages in common, this function returns FcLangDifferentLang.
-
-Version
-
-   Fontconfig version 2.10.91
+   FcLangSetCompare compares language coverage for ls_a and ls_b.
+   If they share any language and territory pair, this function
+   returns FcLangEqual. If they share a language but differ in
+   which territory that language is for, this function returns
+   FcLangDifferentTerritory. If they share no languages in common,
+   this function returns FcLangDifferentLang.
 
-                               FcLangSetContains
+FcLangSetContains
 
 Name
 
-   FcLangSetContains -- check langset subset relation
+   FcLangSetContains -- check langset subset relation
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcLangSetContains(const FcLangSet *ls_a, const FcLangSet *ls_b);
+   FcBool FcLangSetContains(const FcLangSet *ls_a, const FcLangSet
+   *ls_b);
 
 Description
 
-   FcLangSetContains returns FcTrue if ls_a contains every language in ls_b.
-   ls_a will 'contain' a language from ls_b if ls_a has exactly the language,
-   or either the language or ls_a has no territory.
-
-Version
-
-   Fontconfig version 2.10.91
+   FcLangSetContains returns FcTrue if ls_a contains every
+   language in ls_b. ls_a will 'contain' a language from ls_b if
+   ls_a has exactly the language, or either the language or ls_a
+   has no territory.
 
-                                 FcLangSetEqual
+FcLangSetEqual
 
 Name
 
-   FcLangSetEqual -- test for matching langsets
+   FcLangSetEqual -- test for matching langsets
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcLangSetEqual(const FcLangSet *ls_a, const FcLangSet *ls_b);
+   FcBool FcLangSetEqual(const FcLangSet *ls_a, const FcLangSet
+   *ls_b);
 
 Description
 
-   Returns FcTrue if and only if ls_a supports precisely the same language
-   and territory combinations as ls_b.
-
-Version
-
-   Fontconfig version 2.10.91
+   Returns FcTrue if and only if ls_a supports precisely the same
+   language and territory combinations as ls_b.
 
-                                 FcLangSetHash
+FcLangSetHash
 
 Name
 
-   FcLangSetHash -- return a hash value for a langset
+   FcLangSetHash -- return a hash value for a langset
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar32 FcLangSetHash(const FcLangSet *ls);
 
 Description
 
-   This function returns a value which depends solely on the languages
-   supported by ls. Any language which equals ls will have the same result
-   from FcLangSetHash. However, two langsets with the same hash value may not
-   be equal.
+   This function returns a value which depends solely on the
+   languages supported by ls. Any language which equals ls will
+   have the same result from FcLangSetHash. However, two langsets
+   with the same hash value may not be equal.
+
+FcLangSetHasLang
+
+Name
+
+   FcLangSetHasLang -- test langset for language support
+
+Synopsis
+
+#include <fontconfig/fontconfig.h>
 
-Version
+   FcLangResult FcLangSetHasLang(const FcLangSet *ls, const
+   FcChar8 *lang);
 
-   Fontconfig version 2.10.91
+Description
+
+   FcLangSetHasLang checks whether ls supports lang. If ls has a
+   matching language and territory pair, this function returns
+   FcLangEqual. If ls has a matching language but differs in which
+   territory that language is for, this function returns
+   FcLangDifferentTerritory. If ls has no matching language, this
+   function returns FcLangDifferentLang.
 
-                                FcLangSetHasLang
+FcGetDefaultLangs
 
 Name
 
-   FcLangSetHasLang -- test langset for language support
+   FcGetDefaultLangs -- Get the default languages list
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcLangResult FcLangSetHasLang(const FcLangSet *ls, const FcChar8 *lang);
+   FcStrSet * FcGetDefaultLangs(void);
 
 Description
 
-   FcLangSetHasLang checks whether ls supports lang. If ls has a matching
-   language and territory pair, this function returns FcLangEqual. If ls has
-   a matching language but differs in which territory that language is for,
-   this function returns FcLangDifferentTerritory. If ls has no matching
-   language, this function returns FcLangDifferentLang.
+   Returns a string set of the default languages according to the
+   environment variables on the system. This function looks for
+   them in order of FC_LANG, LC_ALL, LC_CTYPE and LANG then. If
+   there are no valid values in those environment variables, "en"
+   will be set as fallback.
 
-Version
+Since
 
-   Fontconfig version 2.10.91
+   version 2.9.91
 
-                               FcGetDefaultLangs
+FcLangSetGetLangs
 
 Name
 
-   FcGetDefaultLangs -- Get the default languages list
+   FcLangSetGetLangs -- get the list of languages in the langset
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcStrSet * FcGetDefaultLangs(voidls);
+   FcStrSet * FcLangSetGetLangs(const FcLangSet *ls);
 
 Description
 
-   Returns a string set of the default languages according to the environment
-   variables on the system. This function looks for them in order of FC_LANG,
-   LC_ALL, LC_CTYPE and LANG then. If there are no valid values in those
-   environment variables, "en" will be set as fallback.
+   Returns a string set of all languages in langset.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                   FcGetLangs
+FcGetLangs
 
 Name
 
-   FcGetLangs -- Get list of languages
+   FcGetLangs -- Get list of languages
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcStrSet * FcGetLangs(void);
 
@@ -2810,20 +2490,15 @@ Description
 
    Returns a string set of all known languages.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcLangNormalize
+FcLangNormalize
 
 Name
 
-   FcLangNormalize -- Normalize the language string
+   FcLangNormalize -- Normalize the language string
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar8 * FcLangNormalize(const FcChar8 *lang);
 
@@ -2831,63 +2506,50 @@ Description
 
    Returns a string to make lang suitable on fontconfig.
 
-Version
+Since
 
-   Fontconfig version 2.10.91
+   version 2.10.91
 
-                                FcLangGetCharSet
+FcLangGetCharSet
 
 Name
 
-   FcLangGetCharSet -- Get character map for a language
+   FcLangGetCharSet -- Get character map for a language
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    const FcCharSet * FcLangGetCharSet(const FcChar8 *lang);
 
 Description
 
    Returns the FcCharMap for a language.
+     __________________________________________________________
 
-Version
-
-   Fontconfig version 2.10.91
-
-   --------------------------------------------------------------------------
-
-  FcMatrix
+FcMatrix
 
    Table of Contents
+   FcMatrixInit -- initialize an FcMatrix structure
+   FcMatrixCopy -- Copy a matrix
+   FcMatrixEqual -- Compare two matrices
+   FcMatrixMultiply -- Multiply matrices
+   FcMatrixRotate -- Rotate a matrix
+   FcMatrixScale -- Scale a matrix
+   FcMatrixShear -- Shear a matrix
 
-   [89]FcMatrixInit -- initialize an FcMatrix structure
-
-   [90]FcMatrixCopy -- Copy a matrix
-
-   [91]FcMatrixEqual -- Compare two matrices
-
-   [92]FcMatrixMultiply -- Multiply matrices
-
-   [93]FcMatrixRotate -- Rotate a matrix
-
-   [94]FcMatrixScale -- Scale a matrix
-
-   [95]FcMatrixShear -- Shear a matrix
+   FcMatrix structures hold an affine transformation in matrix
+   form.
 
-   FcMatrix structures hold an affine transformation in matrix form.
-
-                                  FcMatrixInit
+FcMatrixInit
 
 Name
 
-   FcMatrixInit -- initialize an FcMatrix structure
+   FcMatrixInit -- initialize an FcMatrix structure
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcMatrixInit(FcMatrix *matrix);
 
@@ -2895,20 +2557,15 @@ Description
 
    FcMatrixInit initializes matrix to the identity matrix.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                  FcMatrixCopy
+FcMatrixCopy
 
 Name
 
-   FcMatrixCopy -- Copy a matrix
+   FcMatrixCopy -- Copy a matrix
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcMatrixCopy(const FcMatrix *matrix);
 
@@ -2916,209 +2573,272 @@ Description
 
    FcMatrixCopy allocates a new FcMatrix and copies mat into it.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                 FcMatrixEqual
+FcMatrixEqual
 
 Name
 
-   FcMatrixEqual -- Compare two matrices
+   FcMatrixEqual -- Compare two matrices
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   void FcMatrixEqual(const FcMatrix *matrix1, const FcMatrix *matrix2);
+   void FcMatrixEqual(const FcMatrix *matrix1, const FcMatrix
+   *matrix2);
 
 Description
 
-   FcMatrixEqual compares matrix1 and matrix2 returning FcTrue when they are
-   equal and FcFalse when they are not.
+   FcMatrixEqual compares matrix1 and matrix2 returning FcTrue
+   when they are equal and FcFalse when they are not.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcMatrixMultiply
+FcMatrixMultiply
 
 Name
 
-   FcMatrixMultiply -- Multiply matrices
+   FcMatrixMultiply -- Multiply matrices
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   void FcMatrixMultiply(FcMatrix *result, const FcMatrix *matrix1, const
-   FcMatrix *matrix2);
+   void FcMatrixMultiply(FcMatrix *result, const FcMatrix
+   *matrix1, const FcMatrix *matrix2);
 
 Description
 
-   FcMatrixMultiply multiplies matrix1 and matrix2 storing the result in
-   result.
-
-Version
+   FcMatrixMultiply multiplies matrix1 and matrix2 storing the
+   result in result.
 
-   Fontconfig version 2.10.91
-
-                                 FcMatrixRotate
+FcMatrixRotate
 
 Name
 
-   FcMatrixRotate -- Rotate a matrix
+   FcMatrixRotate -- Rotate a matrix
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcMatrixRotate(FcMatrix *matrix, double cos, double sin);
 
 Description
 
-   FcMatrixRotate rotates matrix by the angle who's sine is sin and cosine is
-   cos. This is done by multiplying by the matrix:
+   FcMatrixRotate rotates matrix by the angle who's sine is sin
+   and cosine is cos. This is done by multiplying by the matrix:
+  cos -sin
+  sin  cos
+
+FcMatrixScale
+
+Name
+
+   FcMatrixScale -- Scale a matrix
+
+Synopsis
 
-     cos -sin
-     sin  cos
+#include <fontconfig/fontconfig.h>
 
-Version
+   void FcMatrixScale(FcMatrix *matrix, double sx, double dy);
+
+Description
 
-   Fontconfig version 2.10.91
+   FcMatrixScale multiplies matrix x values by sx and y values by
+   dy. This is done by multiplying by the matrix:
+   sx  0
+   0   dy
 
-                                 FcMatrixScale
+FcMatrixShear
 
 Name
 
-   FcMatrixScale -- Scale a matrix
+   FcMatrixShear -- Shear a matrix
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   void FcMatrixScale(FcMatrix *matrix, double sx, double dy);
+   void FcMatrixShear(FcMatrix *matrix, double sh, double sv);
 
 Description
 
-   FcMatrixScale multiplies matrix x values by sx and y values by dy. This is
-   done by multiplying by the matrix:
+   FcMatrixShare shears matrix horizontally by sh and vertically
+   by sv. This is done by multiplying by the matrix:
+  1  sh
+  sv  1
+     __________________________________________________________
 
-      sx  0
-      0   dy
+FcRange
 
-Version
+   Table of Contents
+   FcRangeCopy -- Copy a range object
+   FcRangeCreateDouble -- create a range object for double
+   FcRangeCreateInteger -- create a range object for integer
+   FcRangeDestroy -- destroy a range object
+   FcRangeGetDouble -- Get the range in double
 
-   Fontconfig version 2.10.91
+   An FcRange holds two variables to indicate a range in between.
 
-                                 FcMatrixShear
+FcRangeCopy
 
 Name
 
-   FcMatrixShear -- Shear a matrix
+   FcRangeCopy -- Copy a range object
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   void FcMatrixShear(FcMatrix *matrix, double sh, double sv);
+   FcRange * FcRangeCopy(const FcRange *range);
 
 Description
 
-   FcMatrixShare shears matrix horizontally by sh and vertically by sv. This
-   is done by multiplying by the matrix:
+   FcRangeCopy creates a new FcRange object and populates it with
+   the contents of range.
 
-     1  sh
-     sv  1
+Since
 
-Version
+   version 2.11.91
 
-   Fontconfig version 2.10.91
+FcRangeCreateDouble
 
-   --------------------------------------------------------------------------
+Name
 
-  FcConfig
+   FcRangeCreateDouble -- create a range object for double
 
-   Table of Contents
+Synopsis
 
-   [96]FcConfigCreate -- Create a configuration
+#include <fontconfig/fontconfig.h>
 
-   [97]FcConfigReference -- Increment config reference count
+   FcRange * FcRangeCreateDouble(doublebegin, doubleend);
 
-   [98]FcConfigDestroy -- Destroy a configuration
+Description
+
+   FcRangeCreateDouble creates a new FcRange object with double
+   sized value.
 
-   [99]FcConfigSetCurrent -- Set configuration as default
+Since
 
-   [100]FcConfigGetCurrent -- Return current configuration
+   version 2.11.91
 
-   [101]FcConfigUptoDate -- Check timestamps on config files
+FcRangeCreateInteger
+
+Name
 
-   [102]FcConfigHome -- return the current home directory.
+   FcRangeCreateInteger -- create a range object for integer
 
-   [103]FcConfigEnableHome -- controls use of the home directory.
+Synopsis
 
-   [104]FcConfigBuildFonts -- Build font database
+#include <fontconfig/fontconfig.h>
 
-   [105]FcConfigGetConfigDirs -- Get config directories
+   FcRange * FcRangeCreateInteger(intbegin, intend);
 
-   [106]FcConfigGetFontDirs -- Get font directories
+Description
 
-   [107]FcConfigGetConfigFiles -- Get config files
+   FcRangeCreateInteger creates a new FcRange object with integer
+   sized value.
 
-   [108]FcConfigGetCache -- DEPRECATED used to return per-user cache filename
+Since
 
-   [109]FcConfigGetCacheDirs -- return the list of directories searched for
-   cache files
+   version 2.11.91
 
-   [110]FcConfigGetFonts -- Get config font set
+FcRangeDestroy
 
-   [111]FcConfigGetBlanks -- Get config blanks
+Name
 
-   [112]FcConfigGetRescanInterval -- Get config rescan interval
+   FcRangeDestroy -- destroy a range object
 
-   [113]FcConfigSetRescanInterval -- Set config rescan interval
+Synopsis
 
-   [114]FcConfigAppFontAddFile -- Add font file to font database
+#include <fontconfig/fontconfig.h>
 
-   [115]FcConfigAppFontAddDir -- Add fonts from directory to font database
+   void FcRangeDestroy(FcRange *range);
 
-   [116]FcConfigAppFontClear -- Remove all app fonts from font database
+Description
 
-   [117]FcConfigSubstituteWithPat -- Execute substitutions
+   FcRangeDestroy destroys a FcRange object, freeing all memory
+   associated with it.
 
-   [118]FcConfigSubstitute -- Execute substitutions
+Since
 
-   [119]FcFontMatch -- Return best font
+   version 2.11.91
 
-   [120]FcFontSort -- Return list of matching fonts
+FcRangeGetDouble
 
-   [121]FcFontRenderPrepare -- Prepare pattern for loading font file
+Name
 
-   [122]FcFontList -- List fonts
+   FcRangeGetDouble -- Get the range in double
 
-   [123]FcConfigFilename -- Find a config file
+Synopsis
 
-   [124]FcConfigParseAndLoad -- load a configuration file
+#include <fontconfig/fontconfig.h>
 
-   An FcConfig object holds the internal representation of a configuration.
-   There is a default configuration which applications may use by passing 0
-   to any function using the data within an FcConfig.
+   FcBool FcRangeGetDouble(const FcRange *range, double *begin,
+   double *end);
 
-                                 FcConfigCreate
+Description
 
-Name
+   Returns in begin and end as the range.
 
-   FcConfigCreate -- Create a configuration
+Since
 
-Synopsis
+   version 2.11.91
+     __________________________________________________________
 
-   #include <fontconfig/fontconfig.h>
+FcConfig
 
+   Table of Contents
+   FcConfigCreate -- Create a configuration
+   FcConfigReference -- Increment config reference count
+   FcConfigDestroy -- Destroy a configuration
+   FcConfigSetCurrent -- Set configuration as default
+   FcConfigGetCurrent -- Return current configuration
+   FcConfigUptoDate -- Check timestamps on config files
+   FcConfigHome -- return the current home directory.
+   FcConfigEnableHome -- controls use of the home directory.
+   FcConfigBuildFonts -- Build font database
+   FcConfigGetConfigDirs -- Get config directories
+   FcConfigGetFontDirs -- Get font directories
+   FcConfigGetConfigFiles -- Get config files
+   FcConfigGetCache -- DEPRECATED used to return per-user cache
+          filename
+
+   FcConfigGetCacheDirs -- return the list of directories searched
+          for cache files
+
+   FcConfigGetFonts -- Get config font set
+   FcConfigGetBlanks -- Get config blanks
+   FcConfigGetRescanInterval -- Get config rescan interval
+   FcConfigSetRescanInterval -- Set config rescan interval
+   FcConfigAppFontAddFile -- Add font file to font database
+   FcConfigAppFontAddDir -- Add fonts from directory to font
+          database
+
+   FcConfigAppFontClear -- Remove all app fonts from font database
+   FcConfigSubstituteWithPat -- Execute substitutions
+   FcConfigSubstitute -- Execute substitutions
+   FcFontMatch -- Return best font
+   FcFontSort -- Return list of matching fonts
+   FcFontRenderPrepare -- Prepare pattern for loading font file
+   FcFontList -- List fonts
+   FcConfigFilename -- Find a config file
+   FcConfigParseAndLoad -- load a configuration file
+   FcConfigGetSysRoot -- Obtain the system root directory
+   FcConfigSetSysRoot -- Set the system root directory
+
+   An FcConfig object holds the internal representation of a
+   configuration. There is a default configuration which
+   applications may use by passing 0 to any function using the
+   data within an FcConfig.
+
+FcConfigCreate
+
+Name
+
+   FcConfigCreate -- Create a configuration
+
+Synopsis
+
+#include <fontconfig/fontconfig.h>
 
    FcConfig * FcConfigCreate(void);
 
@@ -3126,91 +2846,76 @@ Description
 
    Creates an empty configuration.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                               FcConfigReference
+FcConfigReference
 
 Name
 
-   FcConfigReference -- Increment config reference count
+   FcConfigReference -- Increment config reference count
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcConfig * FcConfigReference(FcConfig *config);
 
 Description
 
-   Add another reference to config. Configs are freed only when the reference
-   count reaches zero. If config is NULL, the current configuration is used.
-   In that case this function will be similar to FcConfigGetCurrent() except
-   that it increments the reference count before returning and the user is
-   responsible for destroying the configuration when not needed anymore.
-
-Version
+   Add another reference to config. Configs are freed only when
+   the reference count reaches zero. If config is NULL, the
+   current configuration is used. In that case this function will
+   be similar to FcConfigGetCurrent() except that it increments
+   the reference count before returning and the user is
+   responsible for destroying the configuration when not needed
+   anymore.
 
-   Fontconfig version 2.10.91
-
-                                FcConfigDestroy
+FcConfigDestroy
 
 Name
 
-   FcConfigDestroy -- Destroy a configuration
+   FcConfigDestroy -- Destroy a configuration
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcConfigDestroy(FcConfig *config);
 
 Description
 
-   Decrements the config reference count. If all references are gone,
-   destroys the configuration and any data associated with it. Note that
-   calling this function with the return from FcConfigGetCurrent will cause a
-   new configuration to be created for use as current configuration.
-
-Version
-
-   Fontconfig version 2.10.91
+   Decrements the config reference count. If all references are
+   gone, destroys the configuration and any data associated with
+   it. Note that calling this function with the return from
+   FcConfigGetCurrent will cause a new configuration to be created
+   for use as current configuration.
 
-                               FcConfigSetCurrent
+FcConfigSetCurrent
 
 Name
 
-   FcConfigSetCurrent -- Set configuration as default
+   FcConfigSetCurrent -- Set configuration as default
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcConfigSetCurrent(FcConfig *config);
 
 Description
 
-   Sets the current default configuration to config. Implicitly calls
-   FcConfigBuildFonts if necessary, returning FcFalse if that call fails.
-
-Version
+   Sets the current default configuration to config. Implicitly
+   calls FcConfigBuildFonts if necessary, and FcConfigReference()
+   to inrease the reference count in config since 2.12.0,
+   returning FcFalse if that call fails.
 
-   Fontconfig version 2.10.91
-
-                               FcConfigGetCurrent
+FcConfigGetCurrent
 
 Name
 
-   FcConfigGetCurrent -- Return current configuration
+   FcConfigGetCurrent -- Return current configuration
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcConfig * FcConfigGetCurrent(void);
 
@@ -3218,814 +2923,783 @@ Description
 
    Returns the current default configuration.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcConfigUptoDate
+FcConfigUptoDate
 
 Name
 
-   FcConfigUptoDate -- Check timestamps on config files
+   FcConfigUptoDate -- Check timestamps on config files
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcConfigUptoDate(FcConfig *config);
 
 Description
 
-   Checks all of the files related to config and returns whether any of them
-   has been modified since the configuration was created. If config is NULL,
-   the current configuration is used.
-
-Version
+   Checks all of the files related to config and returns whether
+   any of them has been modified since the configuration was
+   created. If config is NULL, the current configuration is used.
 
-   Fontconfig version 2.10.91
-
-                                  FcConfigHome
+FcConfigHome
 
 Name
 
-   FcConfigHome -- return the current home directory.
+   FcConfigHome -- return the current home directory.
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar8 * FcConfigHome(void);
 
 Description
 
-   Return the current user's home directory, if it is available, and if using
-   it is enabled, and NULL otherwise. See also FcConfigEnableHome).
-
-Version
-
-   Fontconfig version 2.10.91
+   Return the current user's home directory, if it is available,
+   and if using it is enabled, and NULL otherwise. See also
+   FcConfigEnableHome).
 
-                               FcConfigEnableHome
+FcConfigEnableHome
 
 Name
 
-   FcConfigEnableHome -- controls use of the home directory.
+   FcConfigEnableHome -- controls use of the home directory.
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcConfigEnableHome(FcBool enable);
 
 Description
 
-   If enable is FcTrue, then Fontconfig will use various files which are
-   specified relative to the user's home directory (using the ~ notation in
-   the configuration). When enable is FcFalse, then all use of the home
-   directory in these contexts will be disabled. The previous setting of the
-   value is returned.
-
-Version
+   If enable is FcTrue, then Fontconfig will use various files
+   which are specified relative to the user's home directory
+   (using the ~ notation in the configuration). When enable is
+   FcFalse, then all use of the home directory in these contexts
+   will be disabled. The previous setting of the value is
+   returned.
 
-   Fontconfig version 2.10.91
-
-                               FcConfigBuildFonts
+FcConfigBuildFonts
 
 Name
 
-   FcConfigBuildFonts -- Build font database
+   FcConfigBuildFonts -- Build font database
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcConfigBuildFonts(FcConfig *config);
 
 Description
 
-   Builds the set of available fonts for the given configuration. Note that
-   any changes to the configuration after this call have indeterminate
-   effects. Returns FcFalse if this operation runs out of memory. If config
-   is NULL, the current configuration is used.
-
-Version
-
-   Fontconfig version 2.10.91
+   Builds the set of available fonts for the given configuration.
+   Note that any changes to the configuration after this call have
+   indeterminate effects. Returns FcFalse if this operation runs
+   out of memory. If config is NULL, the current configuration is
+   used.
 
-                             FcConfigGetConfigDirs
+FcConfigGetConfigDirs
 
 Name
 
-   FcConfigGetConfigDirs -- Get config directories
+   FcConfigGetConfigDirs -- Get config directories
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcStrList * FcConfigGetConfigDirs(FcConfig *config);
 
 Description
 
-   Returns the list of font directories specified in the configuration files
-   for config. Does not include any subdirectories. If config is NULL, the
-   current configuration is used.
-
-Version
-
-   Fontconfig version 2.10.91
+   Returns the list of font directories specified in the
+   configuration files for config. Does not include any
+   subdirectories. If config is NULL, the current configuration is
+   used.
 
-                              FcConfigGetFontDirs
+FcConfigGetFontDirs
 
 Name
 
-   FcConfigGetFontDirs -- Get font directories
+   FcConfigGetFontDirs -- Get font directories
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcStrList * FcConfigGetFontDirs(FcConfig *config);
 
 Description
 
-   Returns the list of font directories in config. This includes the
-   configured font directories along with any directories below those in the
-   filesystem. If config is NULL, the current configuration is used.
-
-Version
-
-   Fontconfig version 2.10.91
+   Returns the list of font directories in config. This includes
+   the configured font directories along with any directories
+   below those in the filesystem. If config is NULL, the current
+   configuration is used.
 
-                             FcConfigGetConfigFiles
+FcConfigGetConfigFiles
 
 Name
 
-   FcConfigGetConfigFiles -- Get config files
+   FcConfigGetConfigFiles -- Get config files
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcStrList * FcConfigGetConfigFiles(FcConfig *config);
 
 Description
 
-   Returns the list of known configuration files used to generate config. If
-   config is NULL, the current configuration is used.
-
-Version
-
-   Fontconfig version 2.10.91
+   Returns the list of known configuration files used to generate
+   config. If config is NULL, the current configuration is used.
 
-                                FcConfigGetCache
+FcConfigGetCache
 
 Name
 
-   FcConfigGetCache -- DEPRECATED used to return per-user cache filename
+   FcConfigGetCache -- DEPRECATED used to return per-user cache
+   filename
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar8 * FcConfigGetCache(FcConfig *config);
 
 Description
 
-   With fontconfig no longer using per-user cache files, this function now
-   simply returns NULL to indicate that no per-user file exists.
-
-Version
+   With fontconfig no longer using per-user cache files, this
+   function now simply returns NULL to indicate that no per-user
+   file exists.
 
-   Fontconfig version 2.10.91
-
-                              FcConfigGetCacheDirs
+FcConfigGetCacheDirs
 
 Name
 
-   FcConfigGetCacheDirs -- return the list of directories searched for cache
-   files
+   FcConfigGetCacheDirs -- return the list of directories searched
+   for cache files
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcStrList * FcConfigGetCacheDirs(const FcConfig *config);
 
 Description
 
-   FcConfigGetCacheDirs returns a string list containing all of the
-   directories that fontconfig will search when attempting to load a cache
-   file for a font directory. If config is NULL, the current configuration is
-   used.
-
-Version
-
-   Fontconfig version 2.10.91
+   FcConfigGetCacheDirs returns a string list containing all of
+   the directories that fontconfig will search when attempting to
+   load a cache file for a font directory. If config is NULL, the
+   current configuration is used.
 
-                                FcConfigGetFonts
+FcConfigGetFonts
 
 Name
 
-   FcConfigGetFonts -- Get config font set
+   FcConfigGetFonts -- Get config font set
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcFontSet * FcConfigGetFonts(FcConfig *config, FcSetName set);
 
 Description
 
-   Returns one of the two sets of fonts from the configuration as specified
-   by set. This font set is owned by the library and must not be modified or
-   freed. If config is NULL, the current configuration is used.
-
-Version
-
-   Fontconfig version 2.10.91
+   Returns one of the two sets of fonts from the configuration as
+   specified by set. This font set is owned by the library and
+   must not be modified or freed. If config is NULL, the current
+   configuration is used.
 
-                               FcConfigGetBlanks
+FcConfigGetBlanks
 
 Name
 
-   FcConfigGetBlanks -- Get config blanks
+   FcConfigGetBlanks -- Get config blanks
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBlanks * FcConfigGetBlanks(FcConfig *config);
 
 Description
 
-   Returns the FcBlanks object associated with the given configuration, if no
-   blanks were present in the configuration, this function will return 0. The
-   returned FcBlanks object if not NULL, is valid as long as the owning
-   FcConfig is alive. If config is NULL, the current configuration is used.
-
-Version
-
-   Fontconfig version 2.10.91
+   Returns the FcBlanks object associated with the given
+   configuration, if no blanks were present in the configuration,
+   this function will return 0. The returned FcBlanks object if
+   not NULL, is valid as long as the owning FcConfig is alive. If
+   config is NULL, the current configuration is used.
 
-                           FcConfigGetRescanInterval
+FcConfigGetRescanInterval
 
 Name
 
-   FcConfigGetRescanInterval -- Get config rescan interval
+   FcConfigGetRescanInterval -- Get config rescan interval
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    int FcConfigGetRescanInterval(FcConfig *config);
 
 Description
 
-   Returns the interval between automatic checks of the configuration (in
-   seconds) specified in config. The configuration is checked during a call
-   to FcFontList when this interval has passed since the last check. An
-   interval setting of zero disables automatic checks. If config is NULL, the
+   Returns the interval between automatic checks of the
+   configuration (in seconds) specified in config. The
+   configuration is checked during a call to FcFontList when this
+   interval has passed since the last check. An interval setting
+   of zero disables automatic checks. If config is NULL, the
    current configuration is used.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                           FcConfigSetRescanInterval
+FcConfigSetRescanInterval
 
 Name
 
-   FcConfigSetRescanInterval -- Set config rescan interval
+   FcConfigSetRescanInterval -- Set config rescan interval
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcConfigSetRescanInterval(FcConfig *config, int rescanInterval);
+   FcBool FcConfigSetRescanInterval(FcConfig *config, int
+   rescanInterval);
 
 Description
 
-   Sets the rescan interval. Returns FcFalse if the interval cannot be set
-   (due to allocation failure). Otherwise returns FcTrue. An interval setting
-   of zero disables automatic checks. If config is NULL, the current
-   configuration is used.
-
-Version
+   Sets the rescan interval. Returns FcFalse if the interval
+   cannot be set (due to allocation failure). Otherwise returns
+   FcTrue. An interval setting of zero disables automatic checks.
+   If config is NULL, the current configuration is used.
 
-   Fontconfig version 2.10.91
-
-                             FcConfigAppFontAddFile
+FcConfigAppFontAddFile
 
 Name
 
-   FcConfigAppFontAddFile -- Add font file to font database
+   FcConfigAppFontAddFile -- Add font file to font database
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcConfigAppFontAddFile(FcConfig *config, const FcChar8 *file);
+   FcBool FcConfigAppFontAddFile(FcConfig *config, const FcChar8
+   *file);
 
 Description
 
-   Adds an application-specific font to the configuration. Returns FcFalse if
-   the fonts cannot be added (due to allocation failure). Otherwise returns
-   FcTrue. If config is NULL, the current configuration is used.
-
-Version
-
-   Fontconfig version 2.10.91
+   Adds an application-specific font to the configuration. Returns
+   FcFalse if the fonts cannot be added (due to allocation failure
+   or no fonts found). Otherwise returns FcTrue. If config is
+   NULL, the current configuration is used.
 
-                             FcConfigAppFontAddDir
+FcConfigAppFontAddDir
 
 Name
 
-   FcConfigAppFontAddDir -- Add fonts from directory to font database
+   FcConfigAppFontAddDir -- Add fonts from directory to font
+   database
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcConfigAppFontAddDir(FcConfig *config, const FcChar8 *dir);
+   FcBool FcConfigAppFontAddDir(FcConfig *config, const FcChar8
+   *dir);
 
 Description
 
-   Scans the specified directory for fonts, adding each one found to the
-   application-specific set of fonts. Returns FcFalse if the fonts cannot be
-   added (due to allocation failure). Otherwise returns FcTrue. If config is
-   NULL, the current configuration is used.
-
-Version
-
-   Fontconfig version 2.10.91
+   Scans the specified directory for fonts, adding each one found
+   to the application-specific set of fonts. Returns FcFalse if
+   the fonts cannot be added (due to allocation failure or no
+   fonts found). Otherwise returns FcTrue. If config is NULL, the
+   current configuration is used.
 
-                              FcConfigAppFontClear
+FcConfigAppFontClear
 
 Name
 
-   FcConfigAppFontClear -- Remove all app fonts from font database
+   FcConfigAppFontClear -- Remove all app fonts from font database
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcConfigAppFontClear(FcConfig *config);
 
 Description
 
-   Clears the set of application-specific fonts. If config is NULL, the
-   current configuration is used.
-
-Version
-
-   Fontconfig version 2.10.91
+   Clears the set of application-specific fonts. If config is
+   NULL, the current configuration is used.
 
-                           FcConfigSubstituteWithPat
+FcConfigSubstituteWithPat
 
 Name
 
-   FcConfigSubstituteWithPat -- Execute substitutions
+   FcConfigSubstituteWithPat -- Execute substitutions
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcConfigSubstituteWithPat(FcConfig *config, FcPattern *p, FcPattern
-   *p_pat, FcMatchKind kind);
+   FcBool FcConfigSubstituteWithPat(FcConfig *config, FcPattern
+   *p, FcPattern *p_pat, FcMatchKind kind);
 
 Description
 
-   Performs the sequence of pattern modification operations, if kind is
-   FcMatchPattern, then those tagged as pattern operations are applied, else
-   if kind is FcMatchFont, those tagged as font operations are applied and
-   p_pat is used for <test> elements with target=pattern. Returns FcFalse if
-   the substitution cannot be performed (due to allocation failure).
-   Otherwise returns FcTrue. If config is NULL, the current configuration is
-   used.
-
-Version
-
-   Fontconfig version 2.10.91
+   Performs the sequence of pattern modification operations, if
+   kind is FcMatchPattern, then those tagged as pattern operations
+   are applied, else if kind is FcMatchFont, those tagged as font
+   operations are applied and p_pat is used for <test> elements
+   with target=pattern. Returns FcFalse if the substitution cannot
+   be performed (due to allocation failure). Otherwise returns
+   FcTrue. If config is NULL, the current configuration is used.
 
-                               FcConfigSubstitute
+FcConfigSubstitute
 
 Name
 
-   FcConfigSubstitute -- Execute substitutions
+   FcConfigSubstitute -- Execute substitutions
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcConfigSubstitute(FcConfig *config, FcPattern *p, FcMatchKind
-   kind);
+   FcBool FcConfigSubstitute(FcConfig *config, FcPattern *p,
+   FcMatchKind kind);
 
 Description
 
-   Calls FcConfigSubstituteWithPat setting p_pat to NULL. Returns FcFalse if
-   the substitution cannot be performed (due to allocation failure).
-   Otherwise returns FcTrue. If config is NULL, the current configuration is
-   used.
+   Calls FcConfigSubstituteWithPat setting p_pat to NULL. Returns
+   FcFalse if the substitution cannot be performed (due to
+   allocation failure). Otherwise returns FcTrue. If config is
+   NULL, the current configuration is used.
+
+FcFontMatch
+
+Name
+
+   FcFontMatch -- Return best font
+
+Synopsis
 
-Version
+#include <fontconfig/fontconfig.h>
 
-   Fontconfig version 2.10.91
+   FcPattern * FcFontMatch(FcConfig *config, FcPattern *p,
+   FcResult *result);
+
+Description
+
+   Finds the font in sets most closely matching pattern and
+   returns the result of FcFontRenderPrepare for that font and the
+   provided pattern. This function should be called only after
+   FcConfigSubstitute and FcDefaultSubstitute have been called for
+   p; otherwise the results will not be correct. If config is
+   NULL, the current configuration is used.
 
-                                  FcFontMatch
+FcFontSort
 
 Name
 
-   FcFontMatch -- Return best font
+   FcFontSort -- Return list of matching fonts
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcPattern * FcFontMatch(FcConfig *config, FcPattern *p, FcResult *result);
+   FcFontSet * FcFontSort(FcConfig *config, FcPattern *p, FcBool
+   trim, FcCharSet **csp, FcResult *result);
 
 Description
 
-   Finds the font in sets most closely matching pattern and returns the
-   result of FcFontRenderPrepare for that font and the provided pattern. This
-   function should be called only after FcConfigSubstitute and
-   FcDefaultSubstitute have been called for p; otherwise the results will not
-   be correct. If config is NULL, the current configuration is used.
+   Returns the list of fonts sorted by closeness to p. If trim is
+   FcTrue, elements in the list which don't include Unicode
+   coverage not provided by earlier elements in the list are
+   elided. The union of Unicode coverage of all of the fonts is
+   returned in csp, if csp is not NULL. This function should be
+   called only after FcConfigSubstitute and FcDefaultSubstitute
+   have been called for p; otherwise the results will not be
+   correct.
 
-Version
+   The returned FcFontSet references FcPattern structures which
+   may be shared by the return value from multiple FcFontSort
+   calls, applications must not modify these patterns. Instead,
+   they should be passed, along with p to FcFontRenderPrepare
+   which combines them into a complete pattern.
 
-   Fontconfig version 2.10.91
+   The FcFontSet returned by FcFontSort is destroyed by calling
+   FcFontSetDestroy. If config is NULL, the current configuration
+   is used.
 
-                                   FcFontSort
+FcFontRenderPrepare
 
 Name
 
-   FcFontSort -- Return list of matching fonts
+   FcFontRenderPrepare -- Prepare pattern for loading font file
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcFontSet * FcFontSort(FcConfig *config, FcPattern *p, FcBool trim,
-   FcCharSet **csp, FcResult *result);
+   FcPattern * FcFontRenderPrepare(FcConfig *config, FcPattern
+   *pat, FcPattern *font);
 
 Description
 
-   Returns the list of fonts sorted by closeness to p. If trim is FcTrue,
-   elements in the list which don't include Unicode coverage not provided by
-   earlier elements in the list are elided. The union of Unicode coverage of
-   all of the fonts is returned in csp, if csp is not NULL. This function
-   should be called only after FcConfigSubstitute and FcDefaultSubstitute
-   have been called for p; otherwise the results will not be correct.
+   Creates a new pattern consisting of elements of font not
+   appearing in pat, elements of pat not appearing in font and the
+   best matching value from pat for elements appearing in both.
+   The result is passed to FcConfigSubstituteWithPat with kind
+   FcMatchFont and then returned.
 
-   The returned FcFontSet references FcPattern structures which may be shared
-   by the return value from multiple FcFontSort calls, applications must not
-   modify these patterns. Instead, they should be passed, along with p to
-   FcFontRenderPrepare which combines them into a complete pattern.
+FcFontList
 
-   The FcFontSet returned by FcFontSort is destroyed by calling
-   FcFontSetDestroy. If config is NULL, the current configuration is used.
+Name
+
+   FcFontList -- List fonts
+
+Synopsis
 
-Version
+#include <fontconfig/fontconfig.h>
 
-   Fontconfig version 2.10.91
+   FcFontSet * FcFontList(FcConfig *config, FcPattern *p,
+   FcObjectSet *os);
 
-                              FcFontRenderPrepare
+Description
+
+   Selects fonts matching p, creates patterns from those fonts
+   containing only the objects in os and returns the set of unique
+   such patterns. If config is NULL, the default configuration is
+   checked to be up to date, and used.
+
+FcConfigFilename
 
 Name
 
-   FcFontRenderPrepare -- Prepare pattern for loading font file
+   FcConfigFilename -- Find a config file
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcPattern * FcFontRenderPrepare(FcConfig *config, FcPattern *pat,
-   FcPattern *font);
+   FcChar8 * FcConfigFilename(const FcChar8 *name);
 
 Description
 
-   Creates a new pattern consisting of elements of font not appearing in pat,
-   elements of pat not appearing in font and the best matching value from pat
-   for elements appearing in both. The result is passed to
-   FcConfigSubstituteWithPat with kind FcMatchFont and then returned.
+   Given the specified external entity name, return the associated
+   filename. This provides applications a way to convert various
+   configuration file references into filename form.
 
-Version
-
-   Fontconfig version 2.10.91
+   A null or empty name indicates that the default configuration
+   file should be used; which file this references can be
+   overridden with the FONTCONFIG_FILE environment variable. Next,
+   if the name starts with ~, it refers to a file in the current
+   users home directory. Otherwise if the name doesn't start with
+   '/', it refers to a file in the default configuration
+   directory; the built-in default directory can be overridden
+   with the FONTCONFIG_PATH environment variable.
 
-                                   FcFontList
+FcConfigParseAndLoad
 
 Name
 
-   FcFontList -- List fonts
+   FcConfigParseAndLoad -- load a configuration file
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcFontSet * FcFontList(FcConfig *config, FcPattern *p, FcObjectSet *os);
+   FcBool FcConfigParseAndLoad(FcConfig *config, const FcChar8
+   *file, FcBool complain);
 
 Description
 
-   Selects fonts matching p, creates patterns from those fonts containing
-   only the objects in os and returns the set of unique such patterns. If
-   config is NULL, the default configuration is checked to be up to date, and
-   used.
-
-Version
-
-   Fontconfig version 2.10.91
+   Walks the configuration in 'file' and constructs the internal
+   representation in 'config'. Any include files referenced from
+   within 'file' will be loaded and parsed. If 'complain' is
+   FcFalse, no warning will be displayed if 'file' does not exist.
+   Error and warning messages will be output to stderr. Returns
+   FcFalse if some error occurred while loading the file, either a
+   parse error, semantic error or allocation failure. Otherwise
+   returns FcTrue.
 
-                                FcConfigFilename
+FcConfigGetSysRoot
 
 Name
 
-   FcConfigFilename -- Find a config file
+   FcConfigGetSysRoot -- Obtain the system root directory
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcChar8 * FcConfigFilename(const FcChar8 *name);
+   const FcChar8 * FcConfigGetSysRoot(const FcConfig *config);
 
 Description
 
-   Given the specified external entity name, return the associated filename.
-   This provides applications a way to convert various configuration file
-   references into filename form.
+   Obtrains the system root directory in 'config' if available.
 
-   A null or empty name indicates that the default configuration file should
-   be used; which file this references can be overridden with the
-   FONTCONFIG_FILE environment variable. Next, if the name starts with ~, it
-   refers to a file in the current users home directory. Otherwise if the
-   name doesn't start with '/', it refers to a file in the default
-   configuration directory; the built-in default directory can be overridden
-   with the FONTCONFIG_PATH environment variable.
-
-Version
+Since
 
-   Fontconfig version 2.10.91
+   version 2.10.92
 
-                              FcConfigParseAndLoad
+FcConfigSetSysRoot
 
 Name
 
-   FcConfigParseAndLoad -- load a configuration file
+   FcConfigSetSysRoot -- Set the system root directory
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcConfigParseAndLoad(FcConfig *config, const FcChar8 *file, FcBool
-   complain);
+   void FcConfigSetSysRoot(FcConfig *config, const FcChar8
+   *sysroot);
 
 Description
 
-   Walks the configuration in 'file' and constructs the internal
-   representation in 'config'. Any include files referenced from within
-   'file' will be loaded and parsed. If 'complain' is FcFalse, no warning
-   will be displayed if 'file' does not exist. Error and warning messages
-   will be output to stderr. Returns FcFalse if some error occurred while
-   loading the file, either a parse error, semantic error or allocation
-   failure. Otherwise returns FcTrue.
-
-Version
+   Set 'sysroot' as the system root directory. fontconfig prepend
+   'sysroot' to the cache directories in order to allow people to
+   generate caches at the build time. Note that this causes
+   changing current config. i.e. this function calls
+   FcConfigSetCurrent() internally.
 
-   Fontconfig version 2.10.91
+Since
 
-   --------------------------------------------------------------------------
+   version 2.10.92
+     __________________________________________________________
 
-  FcObjectType
+FcObjectType
 
    Table of Contents
+   FcNameRegisterObjectTypes -- Register object types
+   FcNameUnregisterObjectTypes -- Unregister object types
+   FcNameGetObjectType -- Lookup an object type
+
+   Provides for application-specified font name object types so
+   that new pattern elements can be generated from font names.
+
+FcNameRegisterObjectTypes
+
+Name
+
+   FcNameRegisterObjectTypes -- Register object types
+
+Synopsis
 
-   [125]FcNameRegisterObjectTypes -- Register object types
+#include <fontconfig/fontconfig.h>
 
-   [126]FcNameUnregisterObjectTypes -- Unregister object types
+   FcBool FcNameRegisterObjectTypes(const FcObjectType *types, int
+   ntype);
 
-   [127]FcNameGetObjectType -- Lookup an object type
+Description
 
-   Provides for application-specified font name object types so that new
-   pattern elements can be generated from font names.
+   Deprecated. Does nothing. Returns FcFalse.
 
-                           FcNameRegisterObjectTypes
+FcNameUnregisterObjectTypes
 
 Name
 
-   FcNameRegisterObjectTypes -- Register object types
+   FcNameUnregisterObjectTypes -- Unregister object types
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcNameRegisterObjectTypes(const FcObjectType *types, int ntype);
+   FcBool FcNameUnregisterObjectTypes(const FcObjectType *types,
+   int ntype);
 
 Description
 
    Deprecated. Does nothing. Returns FcFalse.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                          FcNameUnregisterObjectTypes
+FcNameGetObjectType
 
 Name
 
-   FcNameUnregisterObjectTypes -- Unregister object types
+   FcNameGetObjectType -- Lookup an object type
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcNameUnregisterObjectTypes(const FcObjectType *types, int ntype);
+   const FcObjectType * FcNameGetObjectType(const char *object);
 
 Description
 
-   Deprecated. Does nothing. Returns FcFalse.
+   Return the object type for the pattern element named object.
+     __________________________________________________________
+
+FcConstant
 
-Version
+   Table of Contents
+   FcNameRegisterConstants -- Register symbolic constants
+   FcNameUnregisterConstants -- Unregister symbolic constants
+   FcNameGetConstant -- Lookup symbolic constant
+   FcNameConstant -- Get the value for a symbolic constant
 
-   Fontconfig version 2.10.91
+   Provides for application-specified symbolic constants for font
+   names.
 
-                              FcNameGetObjectType
+FcNameRegisterConstants
 
 Name
 
-   FcNameGetObjectType -- Lookup an object type
+   FcNameRegisterConstants -- Register symbolic constants
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   const FcObjectType * FcNameGetObjectType(const char *object);
+   FcBool FcNameRegisterConstants(const FcConstant *consts, int
+   nconsts);
 
 Description
 
-   Return the object type for the pattern element named object.
-
-Version
-
-   Fontconfig version 2.10.91
+   Deprecated. Does nothing. Returns FcFalse.
 
-   --------------------------------------------------------------------------
+FcNameUnregisterConstants
 
-  FcConstant
+Name
 
-   Table of Contents
+   FcNameUnregisterConstants -- Unregister symbolic constants
 
-   [128]FcNameRegisterConstants -- Register symbolic constants
+Synopsis
 
-   [129]FcNameUnregisterConstants -- Unregister symbolic constants
+#include <fontconfig/fontconfig.h>
 
-   [130]FcNameGetConstant -- Lookup symbolic constant
+   FcBool FcNameUnregisterConstants(const FcConstant *consts, int
+   nconsts);
 
-   [131]FcNameConstant -- Get the value for a symbolic constant
+Description
 
-   Provides for application-specified symbolic constants for font names.
+   Deprecated. Does nothing. Returns FcFalse.
 
-                            FcNameRegisterConstants
+FcNameGetConstant
 
 Name
 
-   FcNameRegisterConstants -- Register symbolic constants
+   FcNameGetConstant -- Lookup symbolic constant
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcNameRegisterConstants(const FcConstant *consts, int nconsts);
+   const FcConstant * FcNameGetConstant(FcChar8 *string);
 
 Description
 
-   Deprecated. Does nothing. Returns FcFalse.
-
-Version
+   Return the FcConstant structure related to symbolic constant
+   string.
 
-   Fontconfig version 2.10.91
-
-                           FcNameUnregisterConstants
+FcNameConstant
 
 Name
 
-   FcNameUnregisterConstants -- Unregister symbolic constants
+   FcNameConstant -- Get the value for a symbolic constant
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcNameUnregisterConstants(const FcConstant *consts, int nconsts);
+   FcBool FcNameConstant(FcChar8 *string, int *result);
 
 Description
 
-   Deprecated. Does nothing. Returns FcFalse.
+   Returns whether a symbolic constant with name string is
+   registered, placing the value of the constant in result if
+   present.
+     __________________________________________________________
+
+FcWeight
+
+   Table of Contents
+   FcWeightFromOpenType -- Convert from OpenType weight values to
+          fontconfig ones
 
-Version
+   FcWeightToOpenType -- Convert from fontconfig weight values to
+          OpenType ones
 
-   Fontconfig version 2.10.91
+   Maps weights to and from OpenType weights.
 
-                               FcNameGetConstant
+FcWeightFromOpenType
 
 Name
 
-   FcNameGetConstant -- Lookup symbolic constant
+   FcWeightFromOpenType -- Convert from OpenType weight values to
+   fontconfig ones
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   const FcConstant * FcNameGetConstant(FcChar8 *string);
+   int FcWeightFromOpenType(intot_weight);
 
 Description
 
-   Return the FcConstant structure related to symbolic constant string.
+   FcWeightFromOpenType returns an integer value to use with
+   FC_WEIGHT, from an integer in the 1..1000 range, resembling the
+   numbers from OpenType specification's OS/2 usWeight numbers,
+   which are also similar to CSS font-weight numbers. If input is
+   negative, zero, or greater than 1000, returns -1. This function
+   linearly interpolates between various FC_WEIGHT_* constants. As
+   such, the returned value does not necessarily match any of the
+   predefined constants.
 
-Version
+Since
 
-   Fontconfig version 2.10.91
+   version 2.11.91
 
-                                 FcNameConstant
+FcWeightToOpenType
 
 Name
 
-   FcNameConstant -- Get the value for a symbolic constant
+   FcWeightToOpenType -- Convert from fontconfig weight values to
+   OpenType ones
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcNameConstant(FcChar8 *string, int *result);
+   int FcWeightToOpenType(intot_weight);
 
 Description
 
-   Returns whether a symbolic constant with name string is registered,
-   placing the value of the constant in result if present.
-
-Version
+   FcWeightToOpenType is the inverse of FcWeightFromOpenType. If
+   the input is less than FC_WEIGHT_THIN or greater than
+   FC_WEIGHT_EXTRABLACK, returns -1. Otherwise returns a number in
+   the range 1 to 1000.
 
-   Fontconfig version 2.10.91
+Since
 
-   --------------------------------------------------------------------------
+   version 2.11.91
+     __________________________________________________________
 
-  FcBlanks
+FcBlanks
 
    Table of Contents
+   FcBlanksCreate -- Create an FcBlanks
+   FcBlanksDestroy -- Destroy and FcBlanks
+   FcBlanksAdd -- Add a character to an FcBlanks
+   FcBlanksIsMember -- Query membership in an FcBlanks
 
-   [132]FcBlanksCreate -- Create an FcBlanks
-
-   [133]FcBlanksDestroy -- Destroy and FcBlanks
-
-   [134]FcBlanksAdd -- Add a character to an FcBlanks
+   An FcBlanks object holds a list of Unicode chars which are
+   expected to be blank when drawn. When scanning new fonts, any
+   glyphs which are empty and not in this list will be assumed to
+   be broken and not placed in the FcCharSet associated with the
+   font. This provides a significantly more accurate CharSet for
+   applications.
 
-   [135]FcBlanksIsMember -- Query membership in an FcBlanks
-
-   An FcBlanks object holds a list of Unicode chars which are expected to be
-   blank when drawn. When scanning new fonts, any glyphs which are empty and
-   not in this list will be assumed to be broken and not placed in the
-   FcCharSet associated with the font. This provides a significantly more
-   accurate CharSet for applications.
-
-                                 FcBlanksCreate
+FcBlanksCreate
 
 Name
 
-   FcBlanksCreate -- Create an FcBlanks
+   FcBlanksCreate -- Create an FcBlanks
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBlanks * FcBlanksCreate(void);
 
@@ -4033,20 +3707,15 @@ Description
 
    Creates an empty FcBlanks object.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcBlanksDestroy
+FcBlanksDestroy
 
 Name
 
-   FcBlanksDestroy -- Destroy and FcBlanks
+   FcBlanksDestroy -- Destroy and FcBlanks
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcBlanksDestroy(FcBlanks *b);
 
@@ -4054,160 +3723,122 @@ Description
 
    Destroys an FcBlanks object, freeing any associated memory.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                  FcBlanksAdd
+FcBlanksAdd
 
 Name
 
-   FcBlanksAdd -- Add a character to an FcBlanks
+   FcBlanksAdd -- Add a character to an FcBlanks
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcBlanksAdd(FcBlanks *b, FcChar32 ucs4);
 
 Description
 
-   Adds a single character to an FcBlanks object, returning FcFalse if this
-   process ran out of memory.
-
-Version
+   Adds a single character to an FcBlanks object, returning
+   FcFalse if this process ran out of memory.
 
-   Fontconfig version 2.10.91
-
-                                FcBlanksIsMember
+FcBlanksIsMember
 
 Name
 
-   FcBlanksIsMember -- Query membership in an FcBlanks
+   FcBlanksIsMember -- Query membership in an FcBlanks
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcBlanksIsMember(FcBlanks *b, FcChar32 ucs4);
 
 Description
 
-   Returns whether the specified FcBlanks object contains the indicated
-   Unicode value.
+   Returns whether the specified FcBlanks object contains the
+   indicated Unicode value.
+     __________________________________________________________
 
-Version
-
-   Fontconfig version 2.10.91
-
-   --------------------------------------------------------------------------
-
-  FcAtomic
+FcAtomic
 
    Table of Contents
+   FcAtomicCreate -- create an FcAtomic object
+   FcAtomicLock -- lock a file
+   FcAtomicNewFile -- return new temporary file name
+   FcAtomicOrigFile -- return original file name
+   FcAtomicReplaceOrig -- replace original with new
+   FcAtomicDeleteNew -- delete new file
+   FcAtomicUnlock -- unlock a file
+   FcAtomicDestroy -- destroy an FcAtomic object
 
-   [136]FcAtomicCreate -- create an FcAtomic object
-
-   [137]FcAtomicLock -- lock a file
-
-   [138]FcAtomicNewFile -- return new temporary file name
-
-   [139]FcAtomicOrigFile -- return original file name
-
-   [140]FcAtomicReplaceOrig -- replace original with new
-
-   [141]FcAtomicDeleteNew -- delete new file
+   These functions provide a safe way to update configuration
+   files, allowing ongoing reading of the old configuration file
+   while locked for writing and ensuring that a consistent and
+   complete version of the configuration file is always available.
 
-   [142]FcAtomicUnlock -- unlock a file
-
-   [143]FcAtomicDestroy -- destroy an FcAtomic object
-
-   These functions provide a safe way to update configuration files, allowing
-   ongoing reading of the old configuration file while locked for writing and
-   ensuring that a consistent and complete version of the configuration file
-   is always available.
-
-                                 FcAtomicCreate
+FcAtomicCreate
 
 Name
 
-   FcAtomicCreate -- create an FcAtomic object
+   FcAtomicCreate -- create an FcAtomic object
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcAtomic * FcAtomicCreate(const FcChar8 *file);
 
 Description
 
-   Creates a data structure containing data needed to control access to file.
-   Writing is done to a separate file. Once that file is complete, the
-   original configuration file is atomically replaced so that reading process
-   always see a consistent and complete file without the need to lock for
-   reading.
+   Creates a data structure containing data needed to control
+   access to file. Writing is done to a separate file. Once that
+   file is complete, the original configuration file is atomically
+   replaced so that reading process always see a consistent and
+   complete file without the need to lock for reading.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                  FcAtomicLock
+FcAtomicLock
 
 Name
 
-   FcAtomicLock -- lock a file
+   FcAtomicLock -- lock a file
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcAtomicLock(FcAtomic *atomic);
 
 Description
 
-   Attempts to lock the file referenced by atomic. Returns FcFalse if the
-   file is already locked, else returns FcTrue and leaves the file locked.
-
-Version
+   Attempts to lock the file referenced by atomic. Returns FcFalse
+   if the file is already locked, else returns FcTrue and leaves
+   the file locked.
 
-   Fontconfig version 2.10.91
-
-                                FcAtomicNewFile
+FcAtomicNewFile
 
 Name
 
-   FcAtomicNewFile -- return new temporary file name
+   FcAtomicNewFile -- return new temporary file name
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar8 * FcAtomicNewFile(FcAtomic *atomic);
 
 Description
 
-   Returns the filename for writing a new version of the file referenced by
-   atomic.
-
-Version
-
-   Fontconfig version 2.10.91
+   Returns the filename for writing a new version of the file
+   referenced by atomic.
 
-                                FcAtomicOrigFile
+FcAtomicOrigFile
 
 Name
 
-   FcAtomicOrigFile -- return original file name
+   FcAtomicOrigFile -- return original file name
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar8 * FcAtomicOrigFile(FcAtomic *atomic);
 
@@ -4215,64 +3846,50 @@ Description
 
    Returns the file referenced by atomic.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                              FcAtomicReplaceOrig
+FcAtomicReplaceOrig
 
 Name
 
-   FcAtomicReplaceOrig -- replace original with new
+   FcAtomicReplaceOrig -- replace original with new
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcAtomicReplaceOrig(FcAtomic *atomic);
 
 Description
 
-   Replaces the original file referenced by atomic with the new file. Returns
-   FcFalse if the file cannot be replaced due to permission issues in the
-   filesystem. Otherwise returns FcTrue.
+   Replaces the original file referenced by atomic with the new
+   file. Returns FcFalse if the file cannot be replaced due to
+   permission issues in the filesystem. Otherwise returns FcTrue.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                               FcAtomicDeleteNew
+FcAtomicDeleteNew
 
 Name
 
-   FcAtomicDeleteNew -- delete new file
+   FcAtomicDeleteNew -- delete new file
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcAtomicDeleteNew(FcAtomic *atomic);
 
 Description
 
-   Deletes the new file. Used in error recovery to back out changes.
-
-Version
+   Deletes the new file. Used in error recovery to back out
+   changes.
 
-   Fontconfig version 2.10.91
-
-                                 FcAtomicUnlock
+FcAtomicUnlock
 
 Name
 
-   FcAtomicUnlock -- unlock a file
+   FcAtomicUnlock -- unlock a file
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcAtomicUnlock(FcAtomic *atomic);
 
@@ -4280,402 +3897,347 @@ Description
 
    Unlocks the file.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcAtomicDestroy
+FcAtomicDestroy
 
 Name
 
-   FcAtomicDestroy -- destroy an FcAtomic object
+   FcAtomicDestroy -- destroy an FcAtomic object
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcAtomicDestroy(FcAtomic *atomic);
 
 Description
 
    Destroys atomic.
+     __________________________________________________________
 
-Version
-
-   Fontconfig version 2.10.91
-
-   --------------------------------------------------------------------------
-
-  File and Directory routines
+File and Directory routines
 
    Table of Contents
+   FcFileScan -- scan a font file
+   FcFileIsDir -- check whether a file is a directory
+   FcDirScan -- scan a font directory without caching it
+   FcDirSave -- DEPRECATED: formerly used to save a directory
+          cache
 
-   [144]FcFileScan -- scan a font file
-
-   [145]FcFileIsDir -- check whether a file is a directory
-
-   [146]FcDirScan -- scan a font directory without caching it
-
-   [147]FcDirSave -- DEPRECATED: formerly used to save a directory cache
-
-   [148]FcDirCacheUnlink -- Remove all caches related to dir
+   FcDirCacheUnlink -- Remove all caches related to dir
+   FcDirCacheValid -- check directory cache
+   FcDirCacheLoad -- load a directory cache
+   FcDirCacheRescan -- Re-scan a directory cache
+   FcDirCacheRead -- read or construct a directory cache
+   FcDirCacheLoadFile -- load a cache file
+   FcDirCacheUnload -- unload a cache file
 
-   [149]FcDirCacheValid -- check directory cache
+   These routines work with font files and directories, including
+   font directory cache files.
 
-   [150]FcDirCacheLoad -- load a directory cache
-
-   [151]FcDirCacheRead -- read or construct a directory cache
-
-   [152]FcDirCacheLoadFile -- load a cache file
-
-   [153]FcDirCacheUnload -- unload a cache file
-
-   These routines work with font files and directories, including font
-   directory cache files.
-
-                                   FcFileScan
+FcFileScan
 
 Name
 
-   FcFileScan -- scan a font file
+   FcFileScan -- scan a font file
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcFileScan(FcFontSet *set, FcStrSet *dirs, FcFileCache *cache,
-   FcBlanks *blanks, const FcChar8 *file, FcBool force);
+   FcBool FcFileScan(FcFontSet *set, FcStrSet *dirs, FcFileCache
+   *cache, FcBlanks *blanks, const FcChar8 *file, FcBool force);
 
 Description
 
-   Scans a single file and adds all fonts found to set. If force is FcTrue,
-   then the file is scanned even if associated information is found in cache.
-   If file is a directory, it is added to dirs. Whether fonts are found
-   depends on fontconfig policy as well as the current configuration.
-   Internally, fontconfig will ignore BDF and PCF fonts which are not in
-   Unicode (or the effectively equivalent ISO Latin-1) encoding as those are
-   not usable by Unicode-based applications. The configuration can ignore
-   fonts based on filename or contents of the font file itself. Returns
-   FcFalse if any of the fonts cannot be added (due to allocation failure).
-   Otherwise returns FcTrue.
-
-Version
-
-   Fontconfig version 2.10.91
+   Scans a single file and adds all fonts found to set. If force
+   is FcTrue, then the file is scanned even if associated
+   information is found in cache. If file is a directory, it is
+   added to dirs. Whether fonts are found depends on fontconfig
+   policy as well as the current configuration. Internally,
+   fontconfig will ignore BDF and PCF fonts which are not in
+   Unicode (or the effectively equivalent ISO Latin-1) encoding as
+   those are not usable by Unicode-based applications. The
+   configuration can ignore fonts based on filename or contents of
+   the font file itself. Returns FcFalse if any of the fonts
+   cannot be added (due to allocation failure). Otherwise returns
+   FcTrue.
 
-                                  FcFileIsDir
+FcFileIsDir
 
 Name
 
-   FcFileIsDir -- check whether a file is a directory
+   FcFileIsDir -- check whether a file is a directory
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcFileIsDir(const FcChar8 *file);
 
 Description
 
-   Returns FcTrue if file is a directory, otherwise returns FcFalse.
-
-Version
-
-   Fontconfig version 2.10.91
+   Returns FcTrue if file is a directory, otherwise returns
+   FcFalse.
 
-                                   FcDirScan
+FcDirScan
 
 Name
 
-   FcDirScan -- scan a font directory without caching it
+   FcDirScan -- scan a font directory without caching it
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcDirScan(FcFontSet *set, FcStrSet *dirs, FcFileCache *cache,
-   FcBlanks *blanks, const FcChar8 *dir, FcBool force);
+   FcBool FcDirScan(FcFontSet *set, FcStrSet *dirs, FcFileCache
+   *cache, FcBlanks *blanks, const FcChar8 *dir, FcBool force);
 
 Description
 
-   If cache is not zero or if force is FcFalse, this function currently
-   returns FcFalse. Otherwise, it scans an entire directory and adds all
-   fonts found to set. Any subdirectories found are added to dirs. Calling
-   this function does not create any cache files. Use FcDirCacheRead() if
-   caching is desired.
-
-Version
+   If cache is not zero or if force is FcFalse, this function
+   currently returns FcFalse. Otherwise, it scans an entire
+   directory and adds all fonts found to set. Any subdirectories
+   found are added to dirs. Calling this function does not create
+   any cache files. Use FcDirCacheRead() if caching is desired.
 
-   Fontconfig version 2.10.91
-
-                                   FcDirSave
+FcDirSave
 
 Name
 
-   FcDirSave -- DEPRECATED: formerly used to save a directory cache
+   FcDirSave -- DEPRECATED: formerly used to save a directory
+   cache
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcDirSave(FcFontSet *set, FcStrSet *dirs, const FcChar8 *dir);
+   FcBool FcDirSave(FcFontSet *set, FcStrSet *dirs, const FcChar8
+   *dir);
 
 Description
 
-   This function now does nothing aside from returning FcFalse. It used to
-   creates the per-directory cache file for dir and populates it with the
-   fonts in set and subdirectories in dirs. All of this functionality is now
-   automatically managed by FcDirCacheLoad and FcDirCacheRead.
+   This function now does nothing aside from returning FcFalse. It
+   used to creates the per-directory cache file for dir and
+   populates it with the fonts in set and subdirectories in dirs.
+   All of this functionality is now automatically managed by
+   FcDirCacheLoad and FcDirCacheRead.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcDirCacheUnlink
+FcDirCacheUnlink
 
 Name
 
-   FcDirCacheUnlink -- Remove all caches related to dir
+   FcDirCacheUnlink -- Remove all caches related to dir
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcDirCacheUnlink(const FcChar8 *dir, FcConfig *config);
 
 Description
 
-   Scans the cache directories in config, removing any instances of the cache
-   file for dir. Returns FcFalse when some internal error occurs (out of
-   memory, etc). Errors actually unlinking any files are ignored.
-
-Version
+   Scans the cache directories in config, removing any instances
+   of the cache file for dir. Returns FcFalse when some internal
+   error occurs (out of memory, etc). Errors actually unlinking
+   any files are ignored.
 
-   Fontconfig version 2.10.91
-
-                                FcDirCacheValid
+FcDirCacheValid
 
 Name
 
-   FcDirCacheValid -- check directory cache
+   FcDirCacheValid -- check directory cache
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcDirCacheValid(const FcChar8 *dir);
 
 Description
 
-   Returns FcTrue if dir has an associated valid cache file, else returns
-   FcFalse
-
-Version
-
-   Fontconfig version 2.10.91
+   Returns FcTrue if dir has an associated valid cache file, else
+   returns FcFalse
 
-                                 FcDirCacheLoad
+FcDirCacheLoad
 
 Name
 
-   FcDirCacheLoad -- load a directory cache
+   FcDirCacheLoad -- load a directory cache
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcCache * FcDirCacheLoad(const FcChar8 *dir, FcConfig *config, FcChar8
-   **cache_file);
+   FcCache * FcDirCacheLoad(const FcChar8 *dir, FcConfig *config,
+   FcChar8 **cache_file);
 
 Description
 
-   Loads the cache related to dir. If no cache file exists, returns NULL. The
-   name of the cache file is returned in cache_file, unless that is NULL. See
-   also FcDirCacheRead.
-
-Version
+   Loads the cache related to dir. If no cache file exists,
+   returns NULL. The name of the cache file is returned in
+   cache_file, unless that is NULL. See also FcDirCacheRead.
 
-   Fontconfig version 2.10.91
-
-                                 FcDirCacheRead
+FcDirCacheRescan
 
 Name
 
-   FcDirCacheRead -- read or construct a directory cache
+   FcDirCacheRescan -- Re-scan a directory cache
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcCache * FcDirCacheRead(const FcChar8 *dir, FcBool force, FcConfig
+   FcCache * FcDirCacheRescan(const FcChar8 *dir, FcConfig
    *config);
 
 Description
 
-   This returns a cache for dir. If force is FcFalse, then an existing, valid
-   cache file will be used. Otherwise, a new cache will be created by
-   scanning the directory and that returned.
+   Re-scan directories only at dir and update the cache. returns
+   NULL if failed.
 
-Version
+Since
 
-   Fontconfig version 2.10.91
+   version 2.11.1
 
-                               FcDirCacheLoadFile
+FcDirCacheRead
 
 Name
 
-   FcDirCacheLoadFile -- load a cache file
+   FcDirCacheRead -- read or construct a directory cache
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcCache * FcDirCacheLoadFile(const FcChar8 *cache_file, struct stat
-   *file_stat);
+   FcCache * FcDirCacheRead(const FcChar8 *dir, FcBool force,
+   FcConfig *config);
 
 Description
 
-   This function loads a directory cache from cache_file. If file_stat is
-   non-NULL, it will be filled with the results of stat(2) on the cache file.
-
-Version
+   This returns a cache for dir. If force is FcFalse, then an
+   existing, valid cache file will be used. Otherwise, a new cache
+   will be created by scanning the directory and that returned.
 
-   Fontconfig version 2.10.91
-
-                                FcDirCacheUnload
+FcDirCacheLoadFile
 
 Name
 
-   FcDirCacheUnload -- unload a cache file
+   FcDirCacheLoadFile -- load a cache file
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   void FcDirCacheUnload(FcCache *cache);
+   FcCache * FcDirCacheLoadFile(const FcChar8 *cache_file, struct
+   stat *file_stat);
 
 Description
 
-   This function dereferences cache. When no other references to it remain,
-   all memory associated with the cache will be freed.
+   This function loads a directory cache from cache_file. If
+   file_stat is non-NULL, it will be filled with the results of
+   stat(2) on the cache file.
 
-Version
+FcDirCacheUnload
 
-   Fontconfig version 2.10.91
+Name
 
-   --------------------------------------------------------------------------
+   FcDirCacheUnload -- unload a cache file
 
-  FcCache routines
+Synopsis
 
-   Table of Contents
+#include <fontconfig/fontconfig.h>
 
-   [154]FcCacheDir -- Return directory of cache
+   void FcDirCacheUnload(FcCache *cache);
 
-   [155]FcCacheCopySet -- Returns a copy of the fontset from cache
+Description
 
-   [156]FcCacheSubdir -- Return the i'th subdirectory.
+   This function dereferences cache. When no other references to
+   it remain, all memory associated with the cache will be freed.
+     __________________________________________________________
 
-   [157]FcCacheNumSubdir -- Return the number of subdirectories in cache.
+FcCache routines
 
-   [158]FcCacheNumFont -- Returns the number of fonts in cache.
+   Table of Contents
+   FcCacheDir -- Return directory of cache
+   FcCacheCopySet -- Returns a copy of the fontset from cache
+   FcCacheSubdir -- Return the i'th subdirectory.
+   FcCacheNumSubdir -- Return the number of subdirectories in
+          cache.
 
-   [159]FcDirCacheClean -- This tries to clean up the cache directory of
-   cache_dir. This returns FcTrue if the operation is successfully complete.
-   otherwise FcFalse.
+   FcCacheNumFont -- Returns the number of fonts in cache.
+   FcDirCacheClean -- This tries to clean up the cache directory
+          of cache_dir. This returns FcTrue if the operation is
+          successfully complete. otherwise FcFalse.
 
-   [160]FcCacheCreateTagFile -- Create CACHEDIR.TAG at cache directory.
+   FcCacheCreateTagFile -- Create CACHEDIR.TAG at cache directory.
 
-   These routines work with font directory caches, accessing their contents
-   in limited ways. It is not expected that normal applications will need to
-   use these functions.
+   These routines work with font directory caches, accessing their
+   contents in limited ways. It is not expected that normal
+   applications will need to use these functions.
 
-                                   FcCacheDir
+FcCacheDir
 
 Name
 
-   FcCacheDir -- Return directory of cache
+   FcCacheDir -- Return directory of cache
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    const FcChar8 * FcCacheDir(const FcCache *cache);
 
 Description
 
-   This function returns the directory from which the cache was constructed.
+   This function returns the directory from which the cache was
+   constructed.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                 FcCacheCopySet
+FcCacheCopySet
 
 Name
 
-   FcCacheCopySet -- Returns a copy of the fontset from cache
+   FcCacheCopySet -- Returns a copy of the fontset from cache
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcFontSet * FcCacheCopySet(const FcCache *cache);
 
 Description
 
-   The returned fontset contains each of the font patterns from cache. This
-   fontset may be modified, but the patterns from the cache are read-only.
-
-Version
+   The returned fontset contains each of the font patterns from
+   cache. This fontset may be modified, but the patterns from the
+   cache are read-only.
 
-   Fontconfig version 2.10.91
-
-                                 FcCacheSubdir
+FcCacheSubdir
 
 Name
 
-   FcCacheSubdir -- Return the i'th subdirectory.
+   FcCacheSubdir -- Return the i'th subdirectory.
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    const FcChar8 * FcCacheSubdir(const FcCache *cache, inti);
 
 Description
 
-   The set of subdirectories stored in a cache file are indexed by this
-   function, i should range from 0 to n-1, where n is the return value from
-   FcCacheNumSubdir.
-
-Version
-
-   Fontconfig version 2.10.91
+   The set of subdirectories stored in a cache file are indexed by
+   this function, i should range from 0 to n-1, where n is the
+   return value from FcCacheNumSubdir.
 
-                                FcCacheNumSubdir
+FcCacheNumSubdir
 
 Name
 
-   FcCacheNumSubdir -- Return the number of subdirectories in cache.
+   FcCacheNumSubdir -- Return the number of subdirectories in
+   cache.
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    int FcCacheNumSubdir(const FcCache *cache);
 
@@ -4683,116 +4245,94 @@ Description
 
    This returns the total number of subdirectories in the cache.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                 FcCacheNumFont
+FcCacheNumFont
 
 Name
 
-   FcCacheNumFont -- Returns the number of fonts in cache.
+   FcCacheNumFont -- Returns the number of fonts in cache.
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    int FcCacheNumFont(const FcCache *cache);
 
 Description
 
-   This returns the number of fonts which would be included in the return
-   from FcCacheCopySet.
+   This returns the number of fonts which would be included in the
+   return from FcCacheCopySet.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcDirCacheClean
+FcDirCacheClean
 
 Name
 
-   FcDirCacheClean -- This tries to clean up the cache directory of
-   cache_dir. This returns FcTrue if the operation is successfully complete.
-   otherwise FcFalse.
+   FcDirCacheClean -- This tries to clean up the cache directory
+   of cache_dir. This returns FcTrue if the operation is
+   successfully complete. otherwise FcFalse.
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcDirCacheClean(const FcChar8 *cache_dir, FcBoolverbose);
+   FcBool FcDirCacheClean(const FcChar8 *cache_dir,
+   FcBoolverbose);
 
 Description
 
+Since
 
+   version 2.9.91
 
-Version
-
-   Fontconfig version 2.10.91
-
-                              FcCacheCreateTagFile
+FcCacheCreateTagFile
 
 Name
 
-   FcCacheCreateTagFile -- Create CACHEDIR.TAG at cache directory.
+   FcCacheCreateTagFile -- Create CACHEDIR.TAG at cache directory.
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcCacheCreateTagFile(const FcConfig *config);
 
 Description
 
-   This tries to create CACHEDIR.TAG file at the cache directory registered
-   to config.
+   This tries to create CACHEDIR.TAG file at the cache directory
+   registered to config.
 
-Version
+Since
 
-   Fontconfig version 2.10.91
+   version 2.9.91
+     __________________________________________________________
 
-   --------------------------------------------------------------------------
-
-  FcStrSet and FcStrList
+FcStrSet and FcStrList
 
    Table of Contents
+   FcStrSetCreate -- create a string set
+   FcStrSetMember -- check set for membership
+   FcStrSetEqual -- check sets for equality
+   FcStrSetAdd -- add to a string set
+   FcStrSetAddFilename -- add a filename to a string set
+   FcStrSetDel -- delete from a string set
+   FcStrSetDestroy -- destroy a string set
+   FcStrListCreate -- create a string iterator
+   FcStrListFirst -- get first string in iteration
+   FcStrListNext -- get next string in iteration
+   FcStrListDone -- destroy a string iterator
 
-   [161]FcStrSetCreate -- create a string set
-
-   [162]FcStrSetMember -- check set for membership
-
-   [163]FcStrSetEqual -- check sets for equality
-
-   [164]FcStrSetAdd -- add to a string set
-
-   [165]FcStrSetAddFilename -- add a filename to a string set
-
-   [166]FcStrSetDel -- delete from a string set
+   A data structure for enumerating strings, used to list
+   directories while scanning the configuration as directories are
+   added while scanning.
 
-   [167]FcStrSetDestroy -- destroy a string set
-
-   [168]FcStrListCreate -- create a string iterator
-
-   [169]FcStrListNext -- get next string in iteration
-
-   [170]FcStrListDone -- destroy a string iterator
-
-   A data structure for enumerating strings, used to list directories while
-   scanning the configuration as directories are added while scanning.
-
-                                 FcStrSetCreate
+FcStrSetCreate
 
 Name
 
-   FcStrSetCreate -- create a string set
+   FcStrSetCreate -- create a string set
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcStrSet * FcStrSetCreate(void);
 
@@ -4800,20 +4340,15 @@ Description
 
    Create an empty set.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                 FcStrSetMember
+FcStrSetMember
 
 Name
 
-   FcStrSetMember -- check set for membership
+   FcStrSetMember -- check set for membership
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcStrSetMember(FcStrSet *set, const FcChar8 *s);
 
@@ -4821,42 +4356,33 @@ Description
 
    Returns whether s is a member of set.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                 FcStrSetEqual
+FcStrSetEqual
 
 Name
 
-   FcStrSetEqual -- check sets for equality
+   FcStrSetEqual -- check sets for equality
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcStrSetEqual(FcStrSet *set_a, FcStrSet *set_b);
 
 Description
 
-   Returns whether set_a contains precisely the same strings as set_b.
-   Ordering of strings within the two sets is not considered.
+   Returns whether set_a contains precisely the same strings as
+   set_b. Ordering of strings within the two sets is not
+   considered.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                  FcStrSetAdd
+FcStrSetAdd
 
 Name
 
-   FcStrSetAdd -- add to a string set
+   FcStrSetAdd -- add to a string set
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcStrSetAdd(FcStrSet *set, const FcChar8 *s);
 
@@ -4864,64 +4390,50 @@ Description
 
    Adds a copy of s to set.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                              FcStrSetAddFilename
+FcStrSetAddFilename
 
 Name
 
-   FcStrSetAddFilename -- add a filename to a string set
+   FcStrSetAddFilename -- add a filename to a string set
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcStrSetAddFilename(FcStrSet *set, const FcChar8 *s);
 
 Description
 
-   Adds a copy s to set, The copy is created with FcStrCopyFilename so that
-   leading '~' values are replaced with the value of the HOME environment
-   variable.
-
-Version
-
-   Fontconfig version 2.10.91
+   Adds a copy s to set, The copy is created with
+   FcStrCopyFilename so that leading '~' values are replaced with
+   the value of the HOME environment variable.
 
-                                  FcStrSetDel
+FcStrSetDel
 
 Name
 
-   FcStrSetDel -- delete from a string set
+   FcStrSetDel -- delete from a string set
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcStrSetDel(FcStrSet *set, const FcChar8 *s);
 
 Description
 
-   Removes s from set, returning FcTrue if s was a member else FcFalse.
-
-Version
+   Removes s from set, returning FcTrue if s was a member else
+   FcFalse.
 
-   Fontconfig version 2.10.91
-
-                                FcStrSetDestroy
+FcStrSetDestroy
 
 Name
 
-   FcStrSetDestroy -- destroy a string set
+   FcStrSetDestroy -- destroy a string set
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcStrSetDestroy(FcStrSet *set);
 
@@ -4929,20 +4441,15 @@ Description
 
    Destroys set.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                FcStrListCreate
+FcStrListCreate
 
 Name
 
-   FcStrListCreate -- create a string iterator
+   FcStrListCreate -- create a string iterator
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcStrList * FcStrListCreate(FcStrSet *set);
 
@@ -4950,227 +4457,195 @@ Description
 
    Creates an iterator to list the strings in set.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                 FcStrListNext
+FcStrListFirst
 
 Name
 
-   FcStrListNext -- get next string in iteration
+   FcStrListFirst -- get first string in iteration
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcChar8 * FcStrListNext(FcStrList *list);
+   void FcStrListFirst(FcStrList *list);
 
 Description
 
-   Returns the next string in set.
+   Returns the first string in list.
 
-Version
+Since
 
-   Fontconfig version 2.10.91
+   version 2.11.0
 
-                                 FcStrListDone
+FcStrListNext
 
 Name
 
-   FcStrListDone -- destroy a string iterator
+   FcStrListNext -- get next string in iteration
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   void FcStrListDone(FcStrList *list);
+   FcChar8 * FcStrListNext(FcStrList *list);
 
 Description
 
-   Destroys the enumerator list.
-
-Version
-
-   Fontconfig version 2.10.91
-
-   --------------------------------------------------------------------------
-
-  String utilities
-
-   Table of Contents
-
-   [171]FcUtf8ToUcs4 -- convert UTF-8 to UCS4
-
-   [172]FcUcs4ToUtf8 -- convert UCS4 to UTF-8
-
-   [173]FcUtf8Len -- count UTF-8 encoded chars
-
-   [174]FcUtf16ToUcs4 -- convert UTF-16 to UCS4
-
-   [175]FcUtf16Len -- count UTF-16 encoded chars
-
-   [176]FcIsLower -- check for lower case ASCII character
-
-   [177]FcIsUpper -- check for upper case ASCII character
+   Returns the next string in list.
 
-   [178]FcToLower -- convert upper case ASCII to lower case
+FcStrListDone
 
-   [179]FcStrCopy -- duplicate a string
-
-   [180]FcStrDowncase -- create a lower case translation of a string
+Name
 
-   [181]FcStrCopyFilename -- create a complete path from a filename
+   FcStrListDone -- destroy a string iterator
 
-   [182]FcStrCmp -- compare UTF-8 strings
+Synopsis
 
-   [183]FcStrCmpIgnoreCase -- compare UTF-8 strings ignoring case
+#include <fontconfig/fontconfig.h>
 
-   [184]FcStrStr -- locate UTF-8 substring
+   void FcStrListDone(FcStrList *list);
 
-   [185]FcStrStrIgnoreCase -- locate UTF-8 substring ignoring ASCII case
+Description
 
-   [186]FcStrPlus -- concatenate two strings
+   Destroys the enumerator list.
+     __________________________________________________________
 
-   [187]FcStrFree -- free a string
+String utilities
 
-   [188]FcStrDirname -- directory part of filename
+   Table of Contents
+   FcUtf8ToUcs4 -- convert UTF-8 to UCS4
+   FcUcs4ToUtf8 -- convert UCS4 to UTF-8
+   FcUtf8Len -- count UTF-8 encoded chars
+   FcUtf16ToUcs4 -- convert UTF-16 to UCS4
+   FcUtf16Len -- count UTF-16 encoded chars
+   FcIsLower -- check for lower case ASCII character
+   FcIsUpper -- check for upper case ASCII character
+   FcToLower -- convert upper case ASCII to lower case
+   FcStrCopy -- duplicate a string
+   FcStrDowncase -- create a lower case translation of a string
+   FcStrCopyFilename -- create a complete path from a filename
+   FcStrCmp -- compare UTF-8 strings
+   FcStrCmpIgnoreCase -- compare UTF-8 strings ignoring case
+   FcStrStr -- locate UTF-8 substring
+   FcStrStrIgnoreCase -- locate UTF-8 substring ignoring ASCII
+          case
 
-   [189]FcStrBasename -- last component of filename
+   FcStrPlus -- concatenate two strings
+   FcStrFree -- free a string
+   FcStrDirname -- directory part of filename
+   FcStrBasename -- last component of filename
 
-   Fontconfig manipulates many UTF-8 strings represented with the FcChar8
-   type. These functions are exposed to help applications deal with these
-   UTF-8 strings in a locale-insensitive manner.
+   Fontconfig manipulates many UTF-8 strings represented with the
+   FcChar8 type. These functions are exposed to help applications
+   deal with these UTF-8 strings in a locale-insensitive manner.
 
-                                  FcUtf8ToUcs4
+FcUtf8ToUcs4
 
 Name
 
-   FcUtf8ToUcs4 -- convert UTF-8 to UCS4
+   FcUtf8ToUcs4 -- convert UTF-8 to UCS4
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    int FcUtf8ToUcs4(FcChar8 *src, FcChar32 *dst, int len);
 
 Description
 
-   Converts the next Unicode char from src into dst and returns the number of
-   bytes containing the char. src must be at least len bytes long.
+   Converts the next Unicode char from src into dst and returns
+   the number of bytes containing the char. src must be at least
+   len bytes long.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                  FcUcs4ToUtf8
+FcUcs4ToUtf8
 
 Name
 
-   FcUcs4ToUtf8 -- convert UCS4 to UTF-8
+   FcUcs4ToUtf8 -- convert UCS4 to UTF-8
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    int FcUcs4ToUtf8(FcChar32 src, FcChar8 dst[FC_UTF8_MAX_LEN]);
 
 Description
 
-   Converts the Unicode char from src into dst and returns the number of
-   bytes needed to encode the char.
-
-Version
+   Converts the Unicode char from src into dst and returns the
+   number of bytes needed to encode the char.
 
-   Fontconfig version 2.10.91
-
-                                   FcUtf8Len
+FcUtf8Len
 
 Name
 
-   FcUtf8Len -- count UTF-8 encoded chars
+   FcUtf8Len -- count UTF-8 encoded chars
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcBool FcUtf8Len(FcChar8 *src, int len, int *nchar, int *wchar);
+   FcBool FcUtf8Len(FcChar8 *src, int len, int *nchar, int
+   *wchar);
 
 Description
 
-   Counts the number of Unicode chars in len bytes of src. Places that count
-   in nchar. wchar contains 1, 2 or 4 depending on the number of bytes needed
-   to hold the largest Unicode char counted. The return value indicates
-   whether src is a well-formed UTF8 string.
-
-Version
+   Counts the number of Unicode chars in len bytes of src. Places
+   that count in nchar. wchar contains 1, 2 or 4 depending on the
+   number of bytes needed to hold the largest Unicode char
+   counted. The return value indicates whether src is a
+   well-formed UTF8 string.
 
-   Fontconfig version 2.10.91
-
-                                 FcUtf16ToUcs4
+FcUtf16ToUcs4
 
 Name
 
-   FcUtf16ToUcs4 -- convert UTF-16 to UCS4
+   FcUtf16ToUcs4 -- convert UTF-16 to UCS4
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   int FcUtf16ToUcs4(FcChar8 *src, FcEndian endian, FcChar32 *dst, int len);
+   int FcUtf16ToUcs4(FcChar8 *src, FcEndian endian, FcChar32 *dst,
+   int len);
 
 Description
 
-   Converts the next Unicode char from src into dst and returns the number of
-   bytes containing the char. src must be at least len bytes long. Bytes of
-   src are combined into 16-bit units according to endian.
-
-Version
-
-   Fontconfig version 2.10.91
+   Converts the next Unicode char from src into dst and returns
+   the number of bytes containing the char. src must be at least
+   len bytes long. Bytes of src are combined into 16-bit units
+   according to endian.
 
-                                   FcUtf16Len
+FcUtf16Len
 
 Name
 
-   FcUtf16Len -- count UTF-16 encoded chars
+   FcUtf16Len -- count UTF-16 encoded chars
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
+#include <fontconfig/fontconfig.h>
 
-
-   FcBool FcUtf16Len(FcChar8 *src, FcEndian endian, int len, int *nchar, int
-   *wchar);
+   FcBool FcUtf16Len(FcChar8 *src, FcEndian endian, int len, int
+   *nchar, int *wchar);
 
 Description
 
-   Counts the number of Unicode chars in len bytes of src. Bytes of src are
-   combined into 16-bit units according to endian. Places that count in
-   nchar. wchar contains 1, 2 or 4 depending on the number of bytes needed to
-   hold the largest Unicode char counted. The return value indicates whether
-   string is a well-formed UTF16 string.
-
-Version
-
-   Fontconfig version 2.10.91
+   Counts the number of Unicode chars in len bytes of src. Bytes
+   of src are combined into 16-bit units according to endian.
+   Places that count in nchar. wchar contains 1, 2 or 4 depending
+   on the number of bytes needed to hold the largest Unicode char
+   counted. The return value indicates whether string is a
+   well-formed UTF16 string.
 
-                                   FcIsLower
+FcIsLower
 
 Name
 
-   FcIsLower -- check for lower case ASCII character
+   FcIsLower -- check for lower case ASCII character
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcIsLower(FcChar8c);
 
@@ -5178,20 +4653,15 @@ Description
 
    This macro checks whether c is an lower case ASCII letter.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                   FcIsUpper
+FcIsUpper
 
 Name
 
-   FcIsUpper -- check for upper case ASCII character
+   FcIsUpper -- check for upper case ASCII character
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcBool FcIsUpper(FcChar8c);
 
@@ -5199,113 +4669,91 @@ Description
 
    This macro checks whether c is a upper case ASCII letter.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                   FcToLower
+FcToLower
 
 Name
 
-   FcToLower -- convert upper case ASCII to lower case
+   FcToLower -- convert upper case ASCII to lower case
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar8 FcToLower(FcChar8c);
 
 Description
 
-   This macro converts upper case ASCII c to the equivalent lower case
-   letter.
-
-Version
+   This macro converts upper case ASCII c to the equivalent lower
+   case letter.
 
-   Fontconfig version 2.10.91
-
-                                   FcStrCopy
+FcStrCopy
 
 Name
 
-   FcStrCopy -- duplicate a string
+   FcStrCopy -- duplicate a string
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar8 * FcStrCopy(const FcChar8 *s);
 
 Description
 
-   Allocates memory, copies s and returns the resulting buffer. Yes, this is
-   strdup, but that function isn't available on every platform.
-
-Version
-
-   Fontconfig version 2.10.91
+   Allocates memory, copies s and returns the resulting buffer.
+   Yes, this is strdup, but that function isn't available on every
+   platform.
 
-                                 FcStrDowncase
+FcStrDowncase
 
 Name
 
-   FcStrDowncase -- create a lower case translation of a string
+   FcStrDowncase -- create a lower case translation of a string
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar8 * FcStrDowncase(const FcChar8 *s);
 
 Description
 
-   Allocates memory, copies s, converting upper case letters to lower case
-   and returns the allocated buffer.
-
-Version
+   Allocates memory, copies s, converting upper case letters to
+   lower case and returns the allocated buffer.
 
-   Fontconfig version 2.10.91
-
-                               FcStrCopyFilename
+FcStrCopyFilename
 
 Name
 
-   FcStrCopyFilename -- create a complete path from a filename
+   FcStrCopyFilename -- create a complete path from a filename
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar8 * FcStrCopyFilename(const FcChar8 *s);
 
 Description
 
-   FcStrCopyFilename constructs an absolute pathname from s. It converts any
-   leading '~' characters in to the value of the HOME environment variable,
-   and any relative paths are converted to absolute paths using the current
-   working directory. Sequences of '/' characters are converted to a single
-   '/', and names containing the current directory '.' or parent directory
-   '..' are correctly reconstructed. Returns NULL if '~' is the leading
-   character and HOME is unset or disabled (see FcConfigEnableHome).
+   FcStrCopyFilename constructs an absolute pathname from s. It
+   converts any leading '~' characters in to the value of the HOME
+   environment variable, and any relative paths are converted to
+   absolute paths using the current working directory. Sequences
+   of '/' characters are converted to a single '/', and names
+   containing the current directory '.' or parent directory '..'
+   are correctly reconstructed. Returns NULL if '~' is the leading
+   character and HOME is unset or disabled (see
+   FcConfigEnableHome).
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                    FcStrCmp
+FcStrCmp
 
 Name
 
-   FcStrCmp -- compare UTF-8 strings
+   FcStrCmp -- compare UTF-8 strings
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    int FcStrCmp(const FcChar8 *s1, const FcChar8 *s2);
 
@@ -5313,355 +4761,127 @@ Description
 
    Returns the usual <0, 0, >0 result of comparing s1 and s2.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                               FcStrCmpIgnoreCase
+FcStrCmpIgnoreCase
 
 Name
 
-   FcStrCmpIgnoreCase -- compare UTF-8 strings ignoring case
+   FcStrCmpIgnoreCase -- compare UTF-8 strings ignoring case
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    int FcStrCmpIgnoreCase(const FcChar8 *s1, const FcChar8 *s2);
 
 Description
 
-   Returns the usual <0, 0, >0 result of comparing s1 and s2. This test is
-   case-insensitive for all proper UTF-8 encoded strings.
-
-Version
-
-   Fontconfig version 2.10.91
+   Returns the usual <0, 0, >0 result of comparing s1 and s2. This
+   test is case-insensitive for all proper UTF-8 encoded strings.
 
-                                    FcStrStr
+FcStrStr
 
 Name
 
-   FcStrStr -- locate UTF-8 substring
+   FcStrStr -- locate UTF-8 substring
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar8 * FcStrStr(const FcChar8 *s1, const FcChar8 *s2);
 
 Description
 
-   Returns the location of s2 in s1. Returns NULL if s2 is not present in s1.
-   This test will operate properly with UTF8 encoded strings.
-
-Version
+   Returns the location of s2 in s1. Returns NULL if s2 is not
+   present in s1. This test will operate properly with UTF8
+   encoded strings.
 
-   Fontconfig version 2.10.91
-
-                               FcStrStrIgnoreCase
+FcStrStrIgnoreCase
 
 Name
 
-   FcStrStrIgnoreCase -- locate UTF-8 substring ignoring ASCII case
+   FcStrStrIgnoreCase -- locate UTF-8 substring ignoring ASCII
+   case
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
-   FcChar8 * FcStrStrIgnoreCase(const FcChar8 *s1, const FcChar8 *s2);
+   FcChar8 * FcStrStrIgnoreCase(const FcChar8 *s1, const FcChar8
+   *s2);
 
 Description
 
-   Returns the location of s2 in s1, ignoring case. Returns NULL if s2 is not
-   present in s1. This test is case-insensitive for all proper UTF-8 encoded
-   strings.
+   Returns the location of s2 in s1, ignoring case. Returns NULL
+   if s2 is not present in s1. This test is case-insensitive for
+   all proper UTF-8 encoded strings.
 
-Version
-
-   Fontconfig version 2.10.91
-
-                                   FcStrPlus
+FcStrPlus
 
 Name
 
-   FcStrPlus -- concatenate two strings
+   FcStrPlus -- concatenate two strings
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar8 * FcStrPlus(const FcChar8 *s1, const FcChar8 *s2);
 
 Description
 
-   This function allocates new storage and places the concatenation of s1 and
-   s2 there, returning the new string.
-
-Version
+   This function allocates new storage and places the
+   concatenation of s1 and s2 there, returning the new string.
 
-   Fontconfig version 2.10.91
-
-                                   FcStrFree
+FcStrFree
 
 Name
 
-   FcStrFree -- free a string
+   FcStrFree -- free a string
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    void FcStrFree(FcChar8 *s);
 
 Description
 
-   This is just a wrapper around free(3) which helps track memory usage of
-   strings within the fontconfig library.
-
-Version
-
-   Fontconfig version 2.10.91
+   This is just a wrapper around free(3) which helps track memory
+   usage of strings within the fontconfig library.
 
-                                  FcStrDirname
+FcStrDirname
 
 Name
 
-   FcStrDirname -- directory part of filename
+   FcStrDirname -- directory part of filename
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar8 * FcStrDirname(const FcChar8 *file);
 
 Description
 
-   Returns the directory containing file. This is returned in newly allocated
-   storage which should be freed when no longer needed.
-
-Version
+   Returns the directory containing file. This is returned in
+   newly allocated storage which should be freed when no longer
+   needed.
 
-   Fontconfig version 2.10.91
-
-                                 FcStrBasename
+FcStrBasename
 
 Name
 
-   FcStrBasename -- last component of filename
+   FcStrBasename -- last component of filename
 
 Synopsis
 
-   #include <fontconfig/fontconfig.h>
-
+#include <fontconfig/fontconfig.h>
 
    FcChar8 * FcStrBasename(const FcChar8 *file);
 
 Description
 
-   Returns the filename of file stripped of any leading directory names. This
-   is returned in newly allocated storage which should be freed when no
-   longer needed.
-
-Version
-
-   Fontconfig version 2.10.91
-
-References
-
-   Visible links
-   1. file:///tmp/html-l8lfPm#AEN16
-   2. file:///tmp/html-l8lfPm#AEN19
-   3. file:///tmp/html-l8lfPm#AEN31
-   4. file:///tmp/html-l8lfPm#AEN102
-   5. file:///tmp/html-l8lfPm#FCINITLOADCONFIG
-   6. file:///tmp/html-l8lfPm#FCINITLOADCONFIGANDFONTS
-   7. file:///tmp/html-l8lfPm#FCINIT
-   8. file:///tmp/html-l8lfPm#FCFINI
-   9. file:///tmp/html-l8lfPm#FCGETVERSION
-  10. file:///tmp/html-l8lfPm#FCINITREINITIALIZE
-  11. file:///tmp/html-l8lfPm#FCINITBRINGUPTODATE
-  12. file:///tmp/html-l8lfPm#FCPATTERNCREATE
-  13. file:///tmp/html-l8lfPm#FCPATTERNDUPLICATE
-  14. file:///tmp/html-l8lfPm#FCPATTERNREFERENCE
-  15. file:///tmp/html-l8lfPm#FCPATTERNDESTROY
-  16. file:///tmp/html-l8lfPm#FCPATTERNEQUAL
-  17. file:///tmp/html-l8lfPm#FCPATTERNEQUALSUBSET
-  18. file:///tmp/html-l8lfPm#FCPATTERNFILTER
-  19. file:///tmp/html-l8lfPm#FCPATTERNHASH
-  20. file:///tmp/html-l8lfPm#FCPATTERNADD
-  21. file:///tmp/html-l8lfPm#FCPATTERNADDWEAK
-  22. file:///tmp/html-l8lfPm#FCPATTERNADD-TYPE
-  23. file:///tmp/html-l8lfPm#FCPATTERNGET
-  24. file:///tmp/html-l8lfPm#FCPATTERNGET-TYPE
-  25. file:///tmp/html-l8lfPm#FCPATTERNBUILD
-  26. file:///tmp/html-l8lfPm#FCPATTERNDEL
-  27. file:///tmp/html-l8lfPm#FCPATTERNREMOVE
-  28. file:///tmp/html-l8lfPm#FCPATTERNPRINT
-  29. file:///tmp/html-l8lfPm#FCDEFAULTSUBSTITUTE
-  30. file:///tmp/html-l8lfPm#FCNAMEPARSE
-  31. file:///tmp/html-l8lfPm#FCNAMEUNPARSE
-  32. file:///tmp/html-l8lfPm#FCPATTERNFORMAT
-  33. file:///tmp/html-l8lfPm#FCFONTSETCREATE
-  34. file:///tmp/html-l8lfPm#FCFONTSETDESTROY
-  35. file:///tmp/html-l8lfPm#FCFONTSETADD
-  36. file:///tmp/html-l8lfPm#FCFONTSETLIST
-  37. file:///tmp/html-l8lfPm#FCFONTSETMATCH
-  38. file:///tmp/html-l8lfPm#FCFONTSETPRINT
-  39. file:///tmp/html-l8lfPm#FCFONTSETSORT
-  40. file:///tmp/html-l8lfPm#FCFONTSETSORTDESTROY
-  41. file:///tmp/html-l8lfPm#FCOBJECTSETCREATE
-  42. file:///tmp/html-l8lfPm#FCOBJECTSETADD
-  43. file:///tmp/html-l8lfPm#FCOBJECTSETDESTROY
-  44. file:///tmp/html-l8lfPm#FCOBJECTSETBUILD
-  45. file:///tmp/html-l8lfPm#FCFREETYPECHARINDEX
-  46. file:///tmp/html-l8lfPm#FCFREETYPECHARSET
-  47. file:///tmp/html-l8lfPm#FCFREETYPECHARSETANDSPACING
-  48. file:///tmp/html-l8lfPm#FCFREETYPEQUERY
-  49. file:///tmp/html-l8lfPm#FCFREETYPEQUERYFACE
-  50. file:///tmp/html-l8lfPm#FCVALUEDESTROY
-  51. file:///tmp/html-l8lfPm#FCVALUESAVE
-  52. file:///tmp/html-l8lfPm#FCVALUEPRINT
-  53. file:///tmp/html-l8lfPm#FCVALUEEQUAL
-  54. file:///tmp/html-l8lfPm#FCCHARSETCREATE
-  55. file:///tmp/html-l8lfPm#FCCHARSETDESTROY
-  56. file:///tmp/html-l8lfPm#FCCHARSETADDCHAR
-  57. file:///tmp/html-l8lfPm#FCCHARSETDELCHAR
-  58. file:///tmp/html-l8lfPm#FCCHARSETCOPY
-  59. file:///tmp/html-l8lfPm#FCCHARSETEQUAL
-  60. file:///tmp/html-l8lfPm#FCCHARSETINTERSECT
-  61. file:///tmp/html-l8lfPm#FCCHARSETUNION
-  62. file:///tmp/html-l8lfPm#FCCHARSETSUBTRACT
-  63. file:///tmp/html-l8lfPm#FCCHARSETMERGE
-  64. file:///tmp/html-l8lfPm#FCCHARSETHASCHAR
-  65. file:///tmp/html-l8lfPm#FCCHARSETCOUNT
-  66. file:///tmp/html-l8lfPm#FCCHARSETINTERSECTCOUNT
-  67. file:///tmp/html-l8lfPm#FCCHARSETSUBTRACTCOUNT
-  68. file:///tmp/html-l8lfPm#FCCHARSETISSUBSET
-  69. file:///tmp/html-l8lfPm#FCCHARSETFIRSTPAGE
-  70. file:///tmp/html-l8lfPm#FCCHARSETNEXTPAGE
-  71. file:///tmp/html-l8lfPm#FCCHARSETCOVERAGE
-  72. file:///tmp/html-l8lfPm#FCCHARSETNEW
-  73. file:///tmp/html-l8lfPm#FCLANGSETCREATE
-  74. file:///tmp/html-l8lfPm#FCLANGSETDESTROY
-  75. file:///tmp/html-l8lfPm#FCLANGSETCOPY
-  76. file:///tmp/html-l8lfPm#FCLANGSETADD
-  77. file:///tmp/html-l8lfPm#FCLANGSETDEL
-  78. file:///tmp/html-l8lfPm#FCLANGSETUNION
-  79. file:///tmp/html-l8lfPm#FCLANGSETSUBTRACT
-  80. file:///tmp/html-l8lfPm#FCLANGSETCOMPARE
-  81. file:///tmp/html-l8lfPm#FCLANGSETCONTAINS
-  82. file:///tmp/html-l8lfPm#FCLANGSETEQUAL
-  83. file:///tmp/html-l8lfPm#FCLANGSETHASH
-  84. file:///tmp/html-l8lfPm#FCLANGSETHASLANG
-  85. file:///tmp/html-l8lfPm#FCGETDEFAULTLANGS
-  86. file:///tmp/html-l8lfPm#FCGETLANGS
-  87. file:///tmp/html-l8lfPm#FCLANGNORMALIZE
-  88. file:///tmp/html-l8lfPm#FCLANGGETCHARSET
-  89. file:///tmp/html-l8lfPm#FCMATRIXINIT
-  90. file:///tmp/html-l8lfPm#FCMATRIXCOPY
-  91. file:///tmp/html-l8lfPm#FCMATRIXEQUAL
-  92. file:///tmp/html-l8lfPm#FCMATRIXMULTIPLY
-  93. file:///tmp/html-l8lfPm#FCMATRIXROTATE
-  94. file:///tmp/html-l8lfPm#FCMATRIXSCALE
-  95. file:///tmp/html-l8lfPm#FCMATRIXSHEAR
-  96. file:///tmp/html-l8lfPm#FCCONFIGCREATE
-  97. file:///tmp/html-l8lfPm#FCCONFIGREFERENCE
-  98. file:///tmp/html-l8lfPm#FCCONFIGDESTROY
-  99. file:///tmp/html-l8lfPm#FCCONFIGSETCURRENT
- 100. file:///tmp/html-l8lfPm#FCCONFIGGETCURRENT
- 101. file:///tmp/html-l8lfPm#FCCONFIGUPTODATE
- 102. file:///tmp/html-l8lfPm#FCCONFIGHOME
- 103. file:///tmp/html-l8lfPm#FCCONFIGENABLEHOME
- 104. file:///tmp/html-l8lfPm#FCCONFIGBUILDFONTS
- 105. file:///tmp/html-l8lfPm#FCCONFIGGETCONFIGDIRS
- 106. file:///tmp/html-l8lfPm#FCCONFIGGETFONTDIRS
- 107. file:///tmp/html-l8lfPm#FCCONFIGGETCONFIGFILES
- 108. file:///tmp/html-l8lfPm#FCCONFIGGETCACHE
- 109. file:///tmp/html-l8lfPm#FCCONFIGGETCACHEDIRS
- 110. file:///tmp/html-l8lfPm#FCCONFIGGETFONTS
- 111. file:///tmp/html-l8lfPm#FCCONFIGGETBLANKS
- 112. file:///tmp/html-l8lfPm#FCCONFIGGETRESCANINTERVAL
- 113. file:///tmp/html-l8lfPm#FCCONFIGSETRESCANINTERVAL
- 114. file:///tmp/html-l8lfPm#FCCONFIGAPPFONTADDFILE
- 115. file:///tmp/html-l8lfPm#FCCONFIGAPPFONTADDDIR
- 116. file:///tmp/html-l8lfPm#FCCONFIGAPPFONTCLEAR
- 117. file:///tmp/html-l8lfPm#FCCONFIGSUBSTITUTEWITHPAT
- 118. file:///tmp/html-l8lfPm#FCCONFIGSUBSTITUTE
- 119. file:///tmp/html-l8lfPm#FCFONTMATCH
- 120. file:///tmp/html-l8lfPm#FCFONTSORT
- 121. file:///tmp/html-l8lfPm#FCFONTRENDERPREPARE
- 122. file:///tmp/html-l8lfPm#FCFONTLIST
- 123. file:///tmp/html-l8lfPm#FCCONFIGFILENAME
- 124. file:///tmp/html-l8lfPm#FCCONFIGPARSEANDLOAD
- 125. file:///tmp/html-l8lfPm#FCNAMEREGISTEROBJECTTYPES
- 126. file:///tmp/html-l8lfPm#FCNAMEUNREGISTEROBJECTTYPES
- 127. file:///tmp/html-l8lfPm#FCNAMEGETOBJECTTYPE
- 128. file:///tmp/html-l8lfPm#FCNAMEREGISTERCONSTANTS
- 129. file:///tmp/html-l8lfPm#FCNAMEUNREGISTERCONSTANTS
- 130. file:///tmp/html-l8lfPm#FCNAMEGETCONSTANT
- 131. file:///tmp/html-l8lfPm#FCNAMECONSTANT
- 132. file:///tmp/html-l8lfPm#FCBLANKSCREATE
- 133. file:///tmp/html-l8lfPm#FCBLANKSDESTROY
- 134. file:///tmp/html-l8lfPm#FCBLANKSADD
- 135. file:///tmp/html-l8lfPm#FCBLANKSISMEMBER
- 136. file:///tmp/html-l8lfPm#FCATOMICCREATE
- 137. file:///tmp/html-l8lfPm#FCATOMICLOCK
- 138. file:///tmp/html-l8lfPm#FCATOMICNEWFILE
- 139. file:///tmp/html-l8lfPm#FCATOMICORIGFILE
- 140. file:///tmp/html-l8lfPm#FCATOMICREPLACEORIG
- 141. file:///tmp/html-l8lfPm#FCATOMICDELETENEW
- 142. file:///tmp/html-l8lfPm#FCATOMICUNLOCK
- 143. file:///tmp/html-l8lfPm#FCATOMICDESTROY
- 144. file:///tmp/html-l8lfPm#FCFILESCAN
- 145. file:///tmp/html-l8lfPm#FCFILEISDIR
- 146. file:///tmp/html-l8lfPm#FCDIRSCAN
- 147. file:///tmp/html-l8lfPm#FCDIRSAVE
- 148. file:///tmp/html-l8lfPm#FCDIRCACHEUNLINK
- 149. file:///tmp/html-l8lfPm#FCDIRCACHEVALID
- 150. file:///tmp/html-l8lfPm#FCDIRCACHELOAD
- 151. file:///tmp/html-l8lfPm#FCDIRCACHEREAD
- 152. file:///tmp/html-l8lfPm#FCDIRCACHELOADFILE
- 153. file:///tmp/html-l8lfPm#FCDIRCACHEUNLOAD
- 154. file:///tmp/html-l8lfPm#FCCACHEDIR
- 155. file:///tmp/html-l8lfPm#FCCACHECOPYSET
- 156. file:///tmp/html-l8lfPm#FCCACHESUBDIR
- 157. file:///tmp/html-l8lfPm#FCCACHENUMSUBDIR
- 158. file:///tmp/html-l8lfPm#FCCACHENUMFONT
- 159. file:///tmp/html-l8lfPm#FCDIRCACHECLEAN
- 160. file:///tmp/html-l8lfPm#FCCACHECREATETAGFILE
- 161. file:///tmp/html-l8lfPm#FCSTRSETCREATE
- 162. file:///tmp/html-l8lfPm#FCSTRSETMEMBER
- 163. file:///tmp/html-l8lfPm#FCSTRSETEQUAL
- 164. file:///tmp/html-l8lfPm#FCSTRSETADD
- 165. file:///tmp/html-l8lfPm#FCSTRSETADDFILENAME
- 166. file:///tmp/html-l8lfPm#FCSTRSETDEL
- 167. file:///tmp/html-l8lfPm#FCSTRSETDESTROY
- 168. file:///tmp/html-l8lfPm#FCSTRLISTCREATE
- 169. file:///tmp/html-l8lfPm#FCSTRLISTNEXT
- 170. file:///tmp/html-l8lfPm#FCSTRLISTDONE
- 171. file:///tmp/html-l8lfPm#FCUTF8TOUCS4
- 172. file:///tmp/html-l8lfPm#FCUCS4TOUTF8
- 173. file:///tmp/html-l8lfPm#FCUTF8LEN
- 174. file:///tmp/html-l8lfPm#FCUTF16TOUCS4
- 175. file:///tmp/html-l8lfPm#FCUTF16LEN
- 176. file:///tmp/html-l8lfPm#FCISLOWER
- 177. file:///tmp/html-l8lfPm#FCISUPPER
- 178. file:///tmp/html-l8lfPm#FCTOLOWER
- 179. file:///tmp/html-l8lfPm#FCSTRCOPY
- 180. file:///tmp/html-l8lfPm#FCSTRDOWNCASE
- 181. file:///tmp/html-l8lfPm#FCSTRCOPYFILENAME
- 182. file:///tmp/html-l8lfPm#FCSTRCMP
- 183. file:///tmp/html-l8lfPm#FCSTRCMPIGNORECASE
- 184. file:///tmp/html-l8lfPm#FCSTRSTR
- 185. file:///tmp/html-l8lfPm#FCSTRSTRIGNORECASE
- 186. file:///tmp/html-l8lfPm#FCSTRPLUS
- 187. file:///tmp/html-l8lfPm#FCSTRFREE
- 188. file:///tmp/html-l8lfPm#FCSTRDIRNAME
- 189. file:///tmp/html-l8lfPm#FCSTRBASENAME
+   Returns the filename of file stripped of any leading directory
+   names. This is returned in newly allocated storage which should
+   be freed when no longer needed.
index 1aad80c..ee1c8f8 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcAtomic"
-HREF="x102.html#AEN3650"><LINK
+HREF="x102.html#AEN3706"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICCREATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3657"
+NAME="AEN3714"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3657"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3660"
+NAME="AEN3717"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3661"
+NAME="AEN3718"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3668"
+NAME="AEN3725"
 ></A
 ><H2
 >Description</H2
@@ -146,18 +146,6 @@ a consistent and complete file without the need to lock for reading.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3672"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -207,7 +195,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3650"
+HREF="x102.html#AEN3706"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 5263693..7602eb3 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcAtomic"
-HREF="x102.html#AEN3650"><LINK
+HREF="x102.html#AEN3706"><LINK
 REL="PREVIOUS"
 TITLE="FcAtomicReplaceOrig"
 HREF="fcatomicreplaceorig.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICDELETENEW"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3767"
+NAME="AEN3814"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3767"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3770"
+NAME="AEN3817"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3771"
+NAME="AEN3818"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3778"
+NAME="AEN3825"
 ></A
 ><H2
 >Description</H2
@@ -138,18 +138,6 @@ NAME="AEN3778"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3781"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3650"
+HREF="x102.html#AEN3706"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 0f2a007..7e05e7c 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcAtomic"
-HREF="x102.html#AEN3650"><LINK
+HREF="x102.html#AEN3706"><LINK
 REL="PREVIOUS"
 TITLE="FcAtomicUnlock"
 HREF="fcatomicunlock.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCATOMICDESTROY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3809"
+NAME="AEN3852"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN3809"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3812"
+NAME="AEN3855"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3813"
+NAME="AEN3856"
 ></A
 ><TABLE
 BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3820"
+NAME="AEN3863"
 ></A
 ><H2
 >Description</H2
@@ -136,18 +136,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3824"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -193,7 +181,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3650"
+HREF="x102.html#AEN3706"
 ACCESSKEY="U"
 >Up</A
 ></TD
index d770dd9..7d42433 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcAtomic"
-HREF="x102.html#AEN3650"><LINK
+HREF="x102.html#AEN3706"><LINK
 REL="PREVIOUS"
 TITLE="FcAtomicCreate"
 HREF="fcatomiccreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICLOCK"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3679"
+NAME="AEN3734"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3679"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3682"
+NAME="AEN3737"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3683"
+NAME="AEN3738"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3690"
+NAME="AEN3745"
 ></A
 ><H2
 >Description</H2
@@ -145,18 +145,6 @@ leaves the file locked.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3694"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -206,7 +194,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3650"
+HREF="x102.html#AEN3706"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 82a2ab2..952dcae 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcAtomic"
-HREF="x102.html#AEN3650"><LINK
+HREF="x102.html#AEN3706"><LINK
 REL="PREVIOUS"
 TITLE="FcAtomicLock"
 HREF="fcatomiclock.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICNEWFILE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3701"
+NAME="AEN3754"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3701"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3704"
+NAME="AEN3757"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3705"
+NAME="AEN3758"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3712"
+NAME="AEN3765"
 ></A
 ><H2
 >Description</H2
@@ -144,18 +144,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3716"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3650"
+HREF="x102.html#AEN3706"
 ACCESSKEY="U"
 >Up</A
 ></TD
index b9075ee..2f92fe7 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcAtomic"
-HREF="x102.html#AEN3650"><LINK
+HREF="x102.html#AEN3706"><LINK
 REL="PREVIOUS"
 TITLE="FcAtomicNewFile"
 HREF="fcatomicnewfile.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICORIGFILE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3723"
+NAME="AEN3774"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3723"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3726"
+NAME="AEN3777"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3727"
+NAME="AEN3778"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3734"
+NAME="AEN3785"
 ></A
 ><H2
 >Description</H2
@@ -143,18 +143,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3738"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3650"
+HREF="x102.html#AEN3706"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 07edae9..ba8076c 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcAtomic"
-HREF="x102.html#AEN3650"><LINK
+HREF="x102.html#AEN3706"><LINK
 REL="PREVIOUS"
 TITLE="FcAtomicOrigFile"
 HREF="fcatomicorigfile.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICREPLACEORIG"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3745"
+NAME="AEN3794"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3745"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3748"
+NAME="AEN3797"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3749"
+NAME="AEN3798"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3756"
+NAME="AEN3805"
 ></A
 ><H2
 >Description</H2
@@ -145,18 +145,6 @@ permission issues in the filesystem. Otherwise returns FcTrue.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3760"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -206,7 +194,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3650"
+HREF="x102.html#AEN3706"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 3cdd765..a7922e9 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcAtomic"
-HREF="x102.html#AEN3650"><LINK
+HREF="x102.html#AEN3706"><LINK
 REL="PREVIOUS"
 TITLE="FcAtomicDeleteNew"
 HREF="fcatomicdeletenew.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCATOMICUNLOCK"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3788"
+NAME="AEN3833"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3788"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3791"
+NAME="AEN3836"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3792"
+NAME="AEN3837"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3799"
+NAME="AEN3844"
 ></A
 ><H2
 >Description</H2
@@ -138,18 +138,6 @@ NAME="AEN3799"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3802"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3650"
+HREF="x102.html#AEN3706"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 6e38854..c2763f3 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcBlanks"
-HREF="x102.html#AEN3559"><LINK
+HREF="x102.html#AEN3623"><LINK
 REL="PREVIOUS"
 TITLE="FcBlanksDestroy"
 HREF="fcblanksdestroy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCBLANKSADD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3608"
+NAME="AEN3669"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3608"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3611"
+NAME="AEN3672"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3612"
+NAME="AEN3673"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3621"
+NAME="AEN3682"
 ></A
 ><H2
 >Description</H2
@@ -144,18 +144,6 @@ if this process ran out of memory.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3624"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3559"
+HREF="x102.html#AEN3623"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 73d27b6..68e1f1b 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcBlanks"
-HREF="x102.html#AEN3559"><LINK
+HREF="x102.html#AEN3623"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCBLANKSCREATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3566"
+NAME="AEN3631"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3566"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3569"
+NAME="AEN3634"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3570"
+NAME="AEN3635"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3577"
+NAME="AEN3642"
 ></A
 ><H2
 >Description</H2
@@ -138,18 +138,6 @@ NAME="AEN3577"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3580"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3559"
+HREF="x102.html#AEN3623"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 8f60c78..bdc45da 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcBlanks"
-HREF="x102.html#AEN3559"><LINK
+HREF="x102.html#AEN3623"><LINK
 REL="PREVIOUS"
 TITLE="FcBlanksCreate"
 HREF="fcblankscreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCBLANKSDESTROY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3587"
+NAME="AEN3650"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3587"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3590"
+NAME="AEN3653"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3591"
+NAME="AEN3654"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3598"
+NAME="AEN3661"
 ></A
 ><H2
 >Description</H2
@@ -138,18 +138,6 @@ NAME="AEN3598"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3601"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3559"
+HREF="x102.html#AEN3623"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 9f79068..a451855 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcBlanks"
-HREF="x102.html#AEN3559"><LINK
+HREF="x102.html#AEN3623"><LINK
 REL="PREVIOUS"
 TITLE="FcBlanksAdd"
 HREF="fcblanksadd.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCBLANKSISMEMBER"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3631"
+NAME="AEN3690"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN3631"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3634"
+NAME="AEN3693"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3635"
+NAME="AEN3694"
 ></A
 ><TABLE
 BORDER="0"
@@ -127,7 +127,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3644"
+NAME="AEN3703"
 ></A
 ><H2
 >Description</H2
@@ -137,18 +137,6 @@ value.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3647"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -194,7 +182,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3559"
+HREF="x102.html#AEN3623"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 0a9642d..20e3527 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCache routines"
-HREF="x102.html#AEN4100"><LINK
+HREF="x102.html#AEN4145"><LINK
 REL="PREVIOUS"
 TITLE="FcCacheDir"
 HREF="fccachedir.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCACHECOPYSET"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4129"
+NAME="AEN4173"
 ></A
 ><H2
 >Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4133"
+NAME="AEN4177"
 ></A
 ><H2
 >Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4134"
+NAME="AEN4178"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4141"
+NAME="AEN4185"
 ></A
 ><H2
 >Description</H2
@@ -150,18 +150,6 @@ from the cache are read-only.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4145"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -211,7 +199,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4100"
+HREF="x102.html#AEN4145"
 ACCESSKEY="U"
 >Up</A
 ></TD
index b7a1a60..b936ef3 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCache routines"
-HREF="x102.html#AEN4100"><LINK
+HREF="x102.html#AEN4145"><LINK
 REL="PREVIOUS"
 TITLE="FcDirCacheClean"
 HREF="fcdircacheclean.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCCACHECREATETAGFILE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4247"
+NAME="AEN4284"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN4247"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4250"
+NAME="AEN4287"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4251"
+NAME="AEN4288"
 ></A
 ><TABLE
 BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4258"
+NAME="AEN4295"
 ></A
 ><H2
 >Description</H2
@@ -139,14 +139,12 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4262"
+NAME="AEN4299"
 ></A
 ><H2
->Version</H2
+>Since</H2
 ><P
->Fontconfig version 2.10.91
-
-           </P
+>version 2.9.91</P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -194,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4100"
+HREF="x102.html#AEN4145"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 371e734..a4b7c14 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCache routines"
-HREF="x102.html#AEN4100"><LINK
+HREF="x102.html#AEN4145"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCACHEDIR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4107"
+NAME="AEN4153"
 ></A
 ><H2
 >Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4111"
+NAME="AEN4157"
 ></A
 ><H2
 >Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4112"
+NAME="AEN4158"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4119"
+NAME="AEN4165"
 ></A
 ><H2
 >Description</H2
@@ -143,18 +143,6 @@ NAME="AEN4119"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4122"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4100"
+HREF="x102.html#AEN4145"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 595d972..0bd1c19 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCache routines"
-HREF="x102.html#AEN4100"><LINK
+HREF="x102.html#AEN4145"><LINK
 REL="PREVIOUS"
 TITLE="FcCacheNumSubdir"
 HREF="fccachenumsubdir.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCACHENUMFONT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4201"
+NAME="AEN4239"
 ></A
 ><H2
 >Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4205"
+NAME="AEN4243"
 ></A
 ><H2
 >Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4206"
+NAME="AEN4244"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4213"
+NAME="AEN4251"
 ></A
 ><H2
 >Description</H2
@@ -144,18 +144,6 @@ FcCacheCopySet.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4216"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4100"
+HREF="x102.html#AEN4145"
 ACCESSKEY="U"
 >Up</A
 ></TD
index bad6157..3fe4450 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCache routines"
-HREF="x102.html#AEN4100"><LINK
+HREF="x102.html#AEN4145"><LINK
 REL="PREVIOUS"
 TITLE="FcCacheSubdir"
 HREF="fccachesubdir.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCACHENUMSUBDIR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4179"
+NAME="AEN4219"
 ></A
 ><H2
 >Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4183"
+NAME="AEN4223"
 ></A
 ><H2
 >Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4184"
+NAME="AEN4224"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4191"
+NAME="AEN4231"
 ></A
 ><H2
 >Description</H2
@@ -143,18 +143,6 @@ NAME="AEN4191"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4194"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4100"
+HREF="x102.html#AEN4145"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 2706169..705a485 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCache routines"
-HREF="x102.html#AEN4100"><LINK
+HREF="x102.html#AEN4145"><LINK
 REL="PREVIOUS"
 TITLE="FcCacheCopySet"
 HREF="fccachecopyset.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCACHESUBDIR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4152"
+NAME="AEN4194"
 ></A
 ><H2
 >Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4156"
+NAME="AEN4198"
 ></A
 ><H2
 >Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4157"
+NAME="AEN4199"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4166"
+NAME="AEN4208"
 ></A
 ><H2
 >Description</H2
@@ -166,18 +166,6 @@ value from FcCacheNumSubdir.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4172"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -227,7 +215,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4100"
+HREF="x102.html#AEN4145"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 7425f8b..8ab3ec2 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetDestroy"
 HREF="fccharsetdestroy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETADDCHAR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1668"
+NAME="AEN1598"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1668"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1671"
+NAME="AEN1601"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1672"
+NAME="AEN1602"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1681"
+NAME="AEN1611"
 ></A
 ><H2
 >Description</H2
@@ -148,18 +148,6 @@ running out of memory.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1685"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -209,7 +197,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 5801bb2..602a1d7 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetDelChar"
 HREF="fccharsetdelchar.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETCOPY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1716"
+NAME="AEN1645"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1716"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1719"
+NAME="AEN1648"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1720"
+NAME="AEN1649"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1727"
+NAME="AEN1656"
 ></A
 ><H2
 >Description</H2
@@ -149,18 +149,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1732"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -210,7 +198,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 32a3053..aaded09 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetHasChar"
 HREF="fccharsethaschar.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETCOUNT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1895"
+NAME="AEN1810"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1895"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1898"
+NAME="AEN1813"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1899"
+NAME="AEN1814"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1906"
+NAME="AEN1821"
 ></A
 ><H2
 >Description</H2
@@ -143,18 +143,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1910"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 8090cea..c47134a 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetNextPage"
 HREF="fccharsetnextpage.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETCOVERAGE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2047"
+NAME="AEN1974"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2047"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2050"
+NAME="AEN1977"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2051"
+NAME="AEN1978"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2062"
+NAME="AEN1989"
 ></A
 ><H2
 >Description</H2
@@ -171,18 +171,6 @@ coverage.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2069"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -232,7 +220,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 529648a..c21fa24 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETCREATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1623"
+NAME="AEN1557"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1623"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1626"
+NAME="AEN1560"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1627"
+NAME="AEN1561"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1634"
+NAME="AEN1568"
 ></A
 ><H2
 >Description</H2
@@ -142,18 +142,6 @@ character set object.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1638"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -203,7 +191,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 96512a9..1d70d66 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetAddChar"
 HREF="fccharsetaddchar.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETDELCHAR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1692"
+NAME="AEN1620"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1692"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1695"
+NAME="AEN1623"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1696"
+NAME="AEN1624"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1705"
+NAME="AEN1633"
 ></A
 ><H2
 >Description</H2
@@ -150,14 +150,12 @@ running out of memory.
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1709"
+NAME="AEN1637"
 ></A
 ><H2
->Version</H2
+>Since</H2
 ><P
->Fontconfig version 2.10.91
-
-           </P
+>version 2.9.0</P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -209,7 +207,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 9f5fc7d..1ab8a3a 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetCreate"
 HREF="fccharsetcreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETDESTROY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1645"
+NAME="AEN1577"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1645"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1648"
+NAME="AEN1580"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1649"
+NAME="AEN1581"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1656"
+NAME="AEN1588"
 ></A
 ><H2
 >Description</H2
@@ -148,18 +148,6 @@ memory referenced is freed.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1661"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -209,7 +197,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 08210df..c5b003b 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetCopy"
 HREF="fccharsetcopy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETEQUAL"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1739"
+NAME="AEN1666"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1739"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1742"
+NAME="AEN1669"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1743"
+NAME="AEN1670"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1752"
+NAME="AEN1679"
 ></A
 ><H2
 >Description</H2
@@ -154,18 +154,6 @@ contain the same set of Unicode chars.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1757"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -215,7 +203,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 8707a4d..f8f3bba 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetIsSubset"
 HREF="fccharsetissubset.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETFIRSTPAGE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1992"
+NAME="AEN1899"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1992"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1995"
+NAME="AEN1902"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1996"
+NAME="AEN1903"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,36 +139,121 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2007"
+NAME="AEN1914"
 ></A
 ><H2
 >Description</H2
 ><P
->Builds an array of bits marking the first page of Unicode coverage of
+>Builds an array of bits in <TT
+CLASS="PARAMETER"
+><I
+>map</I
+></TT
+> marking the
+first page of Unicode coverage of <TT
+CLASS="PARAMETER"
+><I
+>a</I
+></TT
+>.
 <TT
 CLASS="PARAMETER"
 ><I
+>*next</I
+></TT
+> is set to contains the base code point
+for the next page in <TT
+CLASS="PARAMETER"
+><I
 >a</I
 ></TT
->. Returns the base of the array. <TT
+>.  Returns the base code
+point for the page, or <CODE
+CLASS="CONSTANT"
+>FC_CHARSET_DONE</CODE
+> if
+<TT
 CLASS="PARAMETER"
 ><I
->next</I
+>a</I
 ></TT
-> contains the next page in the
-font.
-           </P
-></DIV
-><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2012"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
+> contains no pages.  As an example, if
+<TT
+CLASS="FUNCTION"
+>FcCharSetFirstPage</TT
+> returns
+<TT
+CLASS="LITERAL"
+>0x300</TT
+> and fills <TT
+CLASS="PARAMETER"
+><I
+>map</I
+></TT
+> with
+<TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="LITERALLAYOUT"
+>0xffffffff 0xffffffff 0x01000008 0x44300002 0xffffd7f0 0xfffffffb 0xffff7fff 0xffff0003</PRE
+></TD
+></TR
+></TABLE
+>
+Then the page contains code points <TT
+CLASS="LITERAL"
+>0x300</TT
+> through
+<TT
+CLASS="LITERAL"
+>0x33f</TT
+> (the first 64 code points on the page)
+because <TT
+CLASS="PARAMETER"
+><I
+>map[0]</I
+></TT
+> and
+<TT
+CLASS="PARAMETER"
+><I
+>map[1]</I
+></TT
+> both have all their bits set.  It also
+contains code points <TT
+CLASS="LITERAL"
+>0x343</TT
+> (<TT
+CLASS="PARAMETER"
+><I
+>0x300 + 32*2
++ (4-1)</I
+></TT
+>) and <TT
+CLASS="LITERAL"
+>0x35e</TT
+> (<TT
+CLASS="PARAMETER"
+><I
+>0x300 +
+32*2 + (31-1)</I
+></TT
+>) because <TT
+CLASS="PARAMETER"
+><I
+>map[2]</I
+></TT
+> has
+the 4th and 31st bits set.  The code points represented by
+<TT
+CLASS="LITERAL"
+>map[3]</TT
+> and later are left as an excercise for the
+reader ;).
            </P
 ></DIV
 ><DIV
@@ -221,7 +306,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 5023bd4..48832f1 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetMerge"
 HREF="fccharsetmerge.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETHASCHAR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1870"
+NAME="AEN1787"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1870"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1873"
+NAME="AEN1790"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1874"
+NAME="AEN1791"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1883"
+NAME="AEN1800"
 ></A
 ><H2
 >Description</H2
@@ -153,18 +153,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1888"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 685ca61..a05290b 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetEqual"
 HREF="fccharsetequal.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETINTERSECT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1764"
+NAME="AEN1689"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1764"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1767"
+NAME="AEN1692"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1768"
+NAME="AEN1693"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1777"
+NAME="AEN1702"
 ></A
 ><H2
 >Description</H2
@@ -154,18 +154,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1782"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -215,7 +203,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index be70a10..f85a9a9 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetCount"
 HREF="fccharsetcount.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETINTERSECTCOUNT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1917"
+NAME="AEN1830"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1917"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1920"
+NAME="AEN1833"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1921"
+NAME="AEN1834"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1930"
+NAME="AEN1843"
 ></A
 ><H2
 >Description</H2
@@ -153,18 +153,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1935"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index c4f9ad5..6db5af1 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetSubtractCount"
 HREF="fccharsetsubtractcount.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETISSUBSET"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1967"
+NAME="AEN1876"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1967"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1970"
+NAME="AEN1879"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1971"
+NAME="AEN1880"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1980"
+NAME="AEN1889"
 ></A
 ><H2
 >Description</H2
@@ -153,18 +153,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1985"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 0c661af..2a3002c 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetSubtract"
 HREF="fccharsetsubtract.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETMERGE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1839"
+NAME="AEN1758"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1839"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1842"
+NAME="AEN1761"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1843"
+NAME="AEN1762"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1854"
+NAME="AEN1773"
 ></A
 ><H2
 >Description</H2
@@ -183,18 +183,6 @@ set or from running out of memory.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1863"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -244,7 +232,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index d3c08a8..4f0117e 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetCoverage"
 HREF="fccharsetcoverage.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCCHARSETNEW"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2076"
+NAME="AEN2001"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN2076"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2079"
+NAME="AEN2004"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2080"
+NAME="AEN2005"
 ></A
 ><TABLE
 BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2087"
+NAME="AEN2012"
 ></A
 ><H2
 >Description</H2
@@ -134,18 +134,6 @@ CLASS="FUNCTION"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2091"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -191,7 +179,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 9f8d48a..5a7f429 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetFirstPage"
 HREF="fccharsetfirstpage.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETNEXTPAGE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2019"
+NAME="AEN1942"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2019"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2022"
+NAME="AEN1945"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2023"
+NAME="AEN1946"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,41 +139,61 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2034"
+NAME="AEN1957"
 ></A
 ><H2
 >Description</H2
 ><P
->Builds an array of bits marking the Unicode coverage of <TT
+>Builds an array of bits in <TT
+CLASS="PARAMETER"
+><I
+>map</I
+></TT
+> marking the
+Unicode coverage of <TT
 CLASS="PARAMETER"
 ><I
 >a</I
 ></TT
-> for page
+> for page containing
 <TT
 CLASS="PARAMETER"
 ><I
 >*next</I
 ></TT
->. Returns the base of the array. <TT
+> (see the
+<TT
+CLASS="FUNCTION"
+>FcCharSetFirstPage</TT
+> description for details).
+<TT
 CLASS="PARAMETER"
 ><I
->next</I
+>*next</I
 ></TT
-> contains the next page in
-the font.
-           </P
-></DIV
-><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2040"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
+> is set to contains the base code point
+for the next page in <TT
+CLASS="PARAMETER"
+><I
+>a</I
+></TT
+>.  Returns the base of
+code point for the page, or <CODE
+CLASS="CONSTANT"
+>FC_CHARSET_DONE</CODE
+> if
+<TT
+CLASS="PARAMETER"
+><I
+>a</I
+></TT
+> does not contain
+<TT
+CLASS="PARAMETER"
+><I
+>*next</I
+></TT
+>.
            </P
 ></DIV
 ><DIV
@@ -226,7 +246,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index cb41136..2a98b3f 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetUnion"
 HREF="fccharsetunion.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETSUBTRACT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1814"
+NAME="AEN1735"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1814"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1817"
+NAME="AEN1738"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1818"
+NAME="AEN1739"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1827"
+NAME="AEN1748"
 ></A
 ><H2
 >Description</H2
@@ -153,18 +153,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1832"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index a813242..d96772e 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetIntersectCount"
 HREF="fccharsetintersectcount.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETSUBTRACTCOUNT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1942"
+NAME="AEN1853"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1942"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1945"
+NAME="AEN1856"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1946"
+NAME="AEN1857"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1955"
+NAME="AEN1866"
 ></A
 ><H2
 >Description</H2
@@ -153,18 +153,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1960"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 5ec7583..f7d8ea1 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCharSet"
-HREF="x102.html#AEN1616"><LINK
+HREF="x102.html#AEN1549"><LINK
 REL="PREVIOUS"
 TITLE="FcCharSetIntersect"
 HREF="fccharsetintersect.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCHARSETUNION"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1789"
+NAME="AEN1712"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1789"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1792"
+NAME="AEN1715"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1793"
+NAME="AEN1716"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1802"
+NAME="AEN1725"
 ></A
 ><H2
 >Description</H2
@@ -153,18 +153,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1807"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1616"
+HREF="x102.html#AEN1549"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 625b406..071d312 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigAppFontAddFile"
 HREF="fcconfigappfontaddfile.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGAPPFONTADDDIR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3115"
+NAME="AEN3118"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3115"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3118"
+NAME="AEN3121"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3119"
+NAME="AEN3122"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,32 +134,21 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3128"
+NAME="AEN3131"
 ></A
 ><H2
 >Description</H2
 ><P
 >Scans the specified directory for fonts, adding each one found to the
 application-specific set of fonts. Returns FcFalse
-if the fonts cannot be added (due to allocation failure). Otherwise returns FcTrue.
-If <TT
+if the fonts cannot be added (due to allocation failure or no fonts found).
+Otherwise returns FcTrue. If <TT
 CLASS="PARAMETER"
 ><I
 >config</I
 ></TT
-> is NULL, the current configuration is used.
-           </P
-></DIV
-><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3132"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
+> is NULL,
+the current configuration is used.
            </P
 ></DIV
 ><DIV
@@ -212,7 +201,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 5051eb2..5fcf2dd 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigSetRescanInterval"
 HREF="fcconfigsetrescaninterval.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGAPPFONTADDFILE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3091"
+NAME="AEN3096"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3091"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3094"
+NAME="AEN3099"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3095"
+NAME="AEN3100"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,31 +134,20 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3104"
+NAME="AEN3109"
 ></A
 ><H2
 >Description</H2
 ><P
 >Adds an application-specific font to the configuration. Returns FcFalse
-if the fonts cannot be added (due to allocation failure). Otherwise returns FcTrue.
-If <TT
+if the fonts cannot be added (due to allocation failure or no fonts found).
+Otherwise returns FcTrue. If <TT
 CLASS="PARAMETER"
 ><I
 >config</I
 ></TT
-> is NULL, the current configuration is used.
-           </P
-></DIV
-><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3108"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
+> is NULL,
+the current configuration is used.
            </P
 ></DIV
 ><DIV
@@ -211,7 +200,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index f5c6b79..6494e9e 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigAppFontAddDir"
 HREF="fcconfigappfontadddir.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGAPPFONTCLEAR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3139"
+NAME="AEN3140"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3139"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3142"
+NAME="AEN3143"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3143"
+NAME="AEN3144"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3150"
+NAME="AEN3151"
 ></A
 ><H2
 >Description</H2
@@ -144,18 +144,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3154"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index da9ad9c..e02f951 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigEnableHome"
 HREF="fcconfigenablehome.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGBUILDFONTS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2862"
+NAME="AEN2887"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2862"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2865"
+NAME="AEN2890"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2866"
+NAME="AEN2891"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2873"
+NAME="AEN2898"
 ></A
 ><H2
 >Description</H2
@@ -146,18 +146,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2877"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -207,7 +195,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 3ed066a..2137724 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGCREATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2686"
+NAME="AEN2726"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2686"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2689"
+NAME="AEN2729"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2690"
+NAME="AEN2730"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2697"
+NAME="AEN2737"
 ></A
 ><H2
 >Description</H2
@@ -138,18 +138,6 @@ NAME="AEN2697"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2700"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index d048d6d..919ef4f 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigReference"
 HREF="fcconfigreference.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGDESTROY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2730"
+NAME="AEN2766"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2730"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2733"
+NAME="AEN2769"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2734"
+NAME="AEN2770"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2741"
+NAME="AEN2777"
 ></A
 ><H2
 >Description</H2
@@ -141,18 +141,6 @@ cause a new configuration to be created for use as current configuration.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2744"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -202,7 +190,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 0d4e580..42fd302 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigHome"
 HREF="fcconfighome.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGENABLEHOME"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2839"
+NAME="AEN2866"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2839"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2842"
+NAME="AEN2869"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2843"
+NAME="AEN2870"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2850"
+NAME="AEN2877"
 ></A
 ><H2
 >Description</H2
@@ -152,18 +152,6 @@ disabled. The previous setting of the value is returned.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2855"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -213,7 +201,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 1a8d1cb..71c09d8 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcFontList"
 HREF="fcfontlist.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGFILENAME"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3347"
+NAME="AEN3334"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3347"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3350"
+NAME="AEN3337"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3351"
+NAME="AEN3338"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3358"
+NAME="AEN3345"
 ></A
 ><H2
 >Description</H2
@@ -159,18 +159,6 @@ FONTCONFIG_PATH environment variable.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3364"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -220,7 +208,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 43e6248..76ab006 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigGetFonts"
 HREF="fcconfiggetfonts.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETBLANKS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3022"
+NAME="AEN3033"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3022"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3025"
+NAME="AEN3036"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3026"
+NAME="AEN3037"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3033"
+NAME="AEN3044"
 ></A
 ><H2
 >Description</H2
@@ -147,18 +147,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3037"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -208,7 +196,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 96db983..59f95ba 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigGetConfigFiles"
 HREF="fcconfiggetconfigfiles.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETCACHE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2953"
+NAME="AEN2970"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2953"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2956"
+NAME="AEN2973"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2957"
+NAME="AEN2974"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2964"
+NAME="AEN2981"
 ></A
 ><H2
 >Description</H2
@@ -139,18 +139,6 @@ simply returns NULL to indicate that no per-user file exists.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2967"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -200,7 +188,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index ba94487..875096f 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigGetCache"
 HREF="fcconfiggetcache.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETCACHEDIRS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2974"
+NAME="AEN2989"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2974"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2977"
+NAME="AEN2992"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2978"
+NAME="AEN2993"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2985"
+NAME="AEN3000"
 ></A
 ><H2
 >Description</H2
@@ -149,18 +149,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2990"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -210,7 +198,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index c98b25e..aca558c 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigBuildFonts"
 HREF="fcconfigbuildfonts.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETCONFIGDIRS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2884"
+NAME="AEN2907"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2884"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2887"
+NAME="AEN2910"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2888"
+NAME="AEN2911"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2895"
+NAME="AEN2918"
 ></A
 ><H2
 >Description</H2
@@ -150,18 +150,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2900"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -211,7 +199,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 2fa1528..3857800 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigGetFontDirs"
 HREF="fcconfiggetfontdirs.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETCONFIGFILES"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2930"
+NAME="AEN2949"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2930"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2933"
+NAME="AEN2952"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2934"
+NAME="AEN2953"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2941"
+NAME="AEN2960"
 ></A
 ><H2
 >Description</H2
@@ -149,18 +149,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2946"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -210,7 +198,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 3429ce6..38318e3 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigSetCurrent"
 HREF="fcconfigsetcurrent.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETCURRENT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2773"
+NAME="AEN2806"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2773"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2776"
+NAME="AEN2809"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2777"
+NAME="AEN2810"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2784"
+NAME="AEN2817"
 ></A
 ><H2
 >Description</H2
@@ -138,18 +138,6 @@ NAME="AEN2784"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2787"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 54d393f..0a16fb1 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigGetConfigDirs"
 HREF="fcconfiggetconfigdirs.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETFONTDIRS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2907"
+NAME="AEN2928"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2907"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2910"
+NAME="AEN2931"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2911"
+NAME="AEN2932"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2918"
+NAME="AEN2939"
 ></A
 ><H2
 >Description</H2
@@ -151,18 +151,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2923"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -212,7 +200,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 7791047..089f57a 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigGetCacheDirs"
 HREF="fcconfiggetcachedirs.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETFONTS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2997"
+NAME="AEN3010"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2997"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3000"
+NAME="AEN3013"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3001"
+NAME="AEN3014"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3010"
+NAME="AEN3023"
 ></A
 ><H2
 >Description</H2
@@ -156,18 +156,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3015"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -217,7 +205,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 9c4d705..cecb57c 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigGetBlanks"
 HREF="fcconfiggetblanks.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGGETRESCANINTERVAL"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3044"
+NAME="AEN3053"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3044"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3047"
+NAME="AEN3056"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3048"
+NAME="AEN3057"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3055"
+NAME="AEN3064"
 ></A
 ><H2
 >Description</H2
@@ -152,18 +152,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3060"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -213,7 +201,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
diff --git a/doc/fontconfig-devel/fcconfiggetsysroot.html b/doc/fontconfig-devel/fcconfiggetsysroot.html
new file mode 100644 (file)
index 0000000..bbe0a5f
--- /dev/null
@@ -0,0 +1,214 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcConfigGetSysRoot</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcConfig"
+HREF="x102.html#AEN2718"><LINK
+REL="PREVIOUS"
+TITLE="FcConfigParseAndLoad"
+HREF="fcconfigparseandload.html"><LINK
+REL="NEXT"
+TITLE="FcConfigSetSysRoot"
+HREF="fcconfigsetsysroot.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcconfigparseandload.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcconfigsetsysroot.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCCONFIGGETSYSROOT"
+></A
+>FcConfigGetSysRoot</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN3379"
+></A
+><H2
+>Name</H2
+>FcConfigGetSysRoot&nbsp;--&nbsp;Obtain the system root directory</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN3382"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3383"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+       </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>const FcChar8 * <TT
+CLASS="FUNCTION"
+>FcConfigGetSysRoot</TT
+></CODE
+>(const FcConfig *<TT
+CLASS="PARAMETER"
+><I
+>config</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3390"
+></A
+><H2
+>Description</H2
+><P
+>Obtrains the system root directory in 'config' if available.
+           </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3393"
+></A
+><H2
+>Since</H2
+><P
+>version 2.10.92</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcconfigparseandload.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcconfigsetsysroot.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcConfigParseAndLoad</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN2718"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcConfigSetSysRoot</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file
index 17568d6..4036a6b 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigUptoDate"
 HREF="fcconfiguptodate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGHOME"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2817"
+NAME="AEN2846"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2817"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2820"
+NAME="AEN2849"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2821"
+NAME="AEN2850"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2828"
+NAME="AEN2857"
 ></A
 ><H2
 >Description</H2
@@ -143,18 +143,6 @@ CLASS="FUNCTION"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2832"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 5c323dd..e7c1313 100644 (file)
@@ -10,10 +10,13 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigFilename"
-HREF="fcconfigfilename.html"></HEAD
+HREF="fcconfigfilename.html"><LINK
+REL="NEXT"
+TITLE="FcConfigGetSysRoot"
+HREF="fcconfiggetsysroot.html"></HEAD
 ><BODY
 CLASS="REFENTRY"
 BGCOLOR="#FFFFFF"
@@ -54,7 +57,11 @@ VALIGN="bottom"
 WIDTH="10%"
 ALIGN="right"
 VALIGN="bottom"
->&nbsp;</TD
+><A
+HREF="fcconfiggetsysroot.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
 ></TR
 ></TABLE
 ><HR
@@ -68,7 +75,7 @@ NAME="FCCONFIGPARSEANDLOAD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3371"
+NAME="AEN3356"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +83,7 @@ NAME="AEN3371"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3374"
+NAME="AEN3359"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3375"
+NAME="AEN3360"
 ></A
 ><TABLE
 BORDER="0"
@@ -132,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3386"
+NAME="AEN3371"
 ></A
 ><H2
 >Description</H2
@@ -146,18 +153,6 @@ parse error, semantic error or allocation failure. Otherwise returns FcTrue.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3389"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -190,7 +185,11 @@ ACCESSKEY="H"
 WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
->&nbsp;</TD
+><A
+HREF="fcconfiggetsysroot.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
 ></TR
 ><TR
 ><TD
@@ -203,7 +202,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
@@ -211,7 +210,7 @@ ACCESSKEY="U"
 WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
->&nbsp;</TD
+>FcConfigGetSysRoot</TD
 ></TR
 ></TABLE
 ></DIV
index d85dbe0..a7fb48c 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigCreate"
 HREF="fcconfigcreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGREFERENCE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2707"
+NAME="AEN2745"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2707"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2710"
+NAME="AEN2748"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2711"
+NAME="AEN2749"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2718"
+NAME="AEN2756"
 ></A
 ><H2
 >Description</H2
@@ -153,18 +153,6 @@ for destroying the configuration when not needed anymore.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2723"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 134f460..69cae7d 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigDestroy"
 HREF="fcconfigdestroy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGSETCURRENT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2751"
+NAME="AEN2785"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2751"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2754"
+NAME="AEN2788"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2755"
+NAME="AEN2789"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2762"
+NAME="AEN2796"
 ></A
 ><H2
 >Description</H2
@@ -140,19 +140,13 @@ CLASS="PARAMETER"
 >config</I
 ></TT
 >.  Implicitly calls
-FcConfigBuildFonts if necessary, returning FcFalse if that call fails.
-           </P
-></DIV
-><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2766"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
+FcConfigBuildFonts if necessary, and FcConfigReference() to inrease the reference count
+in <TT
+CLASS="PARAMETER"
+><I
+>config</I
+></TT
+> since 2.12.0, returning FcFalse if that call fails.
            </P
 ></DIV
 ><DIV
@@ -205,7 +199,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 383a90d..9fbb60f 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigGetRescanInterval"
 HREF="fcconfiggetrescaninterval.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGSETRESCANINTERVAL"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3067"
+NAME="AEN3074"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3067"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3070"
+NAME="AEN3077"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3071"
+NAME="AEN3078"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3080"
+NAME="AEN3087"
 ></A
 ><H2
 >Description</H2
@@ -151,18 +151,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3084"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -212,7 +200,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
diff --git a/doc/fontconfig-devel/fcconfigsetsysroot.html b/doc/fontconfig-devel/fcconfigsetsysroot.html
new file mode 100644 (file)
index 0000000..5b1238d
--- /dev/null
@@ -0,0 +1,211 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcConfigSetSysRoot</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcConfig"
+HREF="x102.html#AEN2718"><LINK
+REL="PREVIOUS"
+TITLE="FcConfigGetSysRoot"
+HREF="fcconfiggetsysroot.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcconfiggetsysroot.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+>&nbsp;</TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCCONFIGSETSYSROOT"
+></A
+>FcConfigSetSysRoot</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN3401"
+></A
+><H2
+>Name</H2
+>FcConfigSetSysRoot&nbsp;--&nbsp;Set the system root directory</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN3404"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3405"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+       </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>void <TT
+CLASS="FUNCTION"
+>FcConfigSetSysRoot</TT
+></CODE
+>(FcConfig *<TT
+CLASS="PARAMETER"
+><I
+>config</I
+></TT
+>, const FcChar8 *<TT
+CLASS="PARAMETER"
+><I
+>sysroot</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3414"
+></A
+><H2
+>Description</H2
+><P
+>Set 'sysroot' as the system root directory. fontconfig prepend 'sysroot'
+to the cache directories in order to allow people to generate caches at
+the build time. Note that this causes changing current config. i.e.
+this function calls FcConfigSetCurrent() internally.
+           </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3417"
+></A
+><H2
+>Since</H2
+><P
+>version 2.10.92</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcconfiggetsysroot.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>&nbsp;</TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcConfigGetSysRoot</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN2718"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>&nbsp;</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file
index a28fb23..4dc28d2 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigSubstituteWithPat"
 HREF="fcconfigsubstitutewithpat.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGSUBSTITUTE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3191"
+NAME="AEN3188"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3191"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3194"
+NAME="AEN3191"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3195"
+NAME="AEN3192"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3206"
+NAME="AEN3203"
 ></A
 ><H2
 >Description</H2
@@ -155,18 +155,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3210"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index d1d7f19..d42a9ba 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigAppFontClear"
 HREF="fcconfigappfontclear.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGSUBSTITUTEWITHPAT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3161"
+NAME="AEN3160"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3161"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3164"
+NAME="AEN3163"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3165"
+NAME="AEN3164"
 ></A
 ><TABLE
 BORDER="0"
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3178"
+NAME="AEN3177"
 ></A
 ><H2
 >Description</H2
@@ -173,18 +173,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3184"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -234,7 +222,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 2545872..8f405c6 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigGetCurrent"
 HREF="fcconfiggetcurrent.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCCONFIGUPTODATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2794"
+NAME="AEN2825"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2794"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2797"
+NAME="AEN2828"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2798"
+NAME="AEN2829"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2805"
+NAME="AEN2836"
 ></A
 ><H2
 >Description</H2
@@ -150,18 +150,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2810"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -211,7 +199,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index a5862fe..41768e2 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternPrint"
 HREF="fcpatternprint.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDEFAULTSUBSTITUTE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN859"
+NAME="AEN840"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN859"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN862"
+NAME="AEN843"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN863"
+NAME="AEN844"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN870"
+NAME="AEN851"
 ></A
 ><H2
 >Description</H2
@@ -156,18 +156,6 @@ specified point size (default 12), dpi (default 75) and scale (default 1).</P
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN880"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -217,7 +205,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 23f5265..f3f8903 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcCache routines"
-HREF="x102.html#AEN4100"><LINK
+HREF="x102.html#AEN4145"><LINK
 REL="PREVIOUS"
 TITLE="FcCacheNumFont"
 HREF="fccachenumfont.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRCACHECLEAN"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4223"
+NAME="AEN4259"
 ></A
 ><H2
 >Name</H2
@@ -89,7 +89,7 @@ This returns FcTrue if the operation is successfully complete. otherwise FcFalse
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4227"
+NAME="AEN4263"
 ></A
 ><H2
 >Synopsis</H2
@@ -98,7 +98,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4228"
+NAME="AEN4264"
 ></A
 ><TABLE
 BORDER="0"
@@ -140,7 +140,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4237"
+NAME="AEN4273"
 ></A
 ><H2
 >Description</H2
@@ -150,14 +150,12 @@ NAME="AEN4237"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4240"
+NAME="AEN4276"
 ></A
 ><H2
->Version</H2
+>Since</H2
 ><P
->Fontconfig version 2.10.91
-
-           </P
+>version 2.9.91</P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -209,7 +207,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4100"
+HREF="x102.html#AEN4145"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 3c29b3b..b3c303e 100644 (file)
@@ -10,13 +10,13 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
 REL="PREVIOUS"
 TITLE="FcDirCacheValid"
 HREF="fcdircachevalid.html"><LINK
 REL="NEXT"
-TITLE="FcDirCacheRead"
-HREF="fcdircacheread.html"></HEAD
+TITLE="FcDirCacheRescan"
+HREF="fcdircacherescan.html"></HEAD
 ><BODY
 CLASS="REFENTRY"
 BGCOLOR="#FFFFFF"
@@ -58,7 +58,7 @@ WIDTH="10%"
 ALIGN="right"
 VALIGN="bottom"
 ><A
-HREF="fcdircacheread.html"
+HREF="fcdircacherescan.html"
 ACCESSKEY="N"
 >Next &#62;&#62;&#62;</A
 ></TD
@@ -75,7 +75,7 @@ NAME="FCDIRCACHELOAD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4003"
+NAME="AEN4032"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4003"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4006"
+NAME="AEN4035"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4007"
+NAME="AEN4036"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4018"
+NAME="AEN4047"
 ></A
 ><H2
 >Description</H2
@@ -161,18 +161,6 @@ FcDirCacheRead.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4023"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -206,7 +194,7 @@ WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
 ><A
-HREF="fcdircacheread.html"
+HREF="fcdircacherescan.html"
 ACCESSKEY="N"
 >Next &#62;&#62;&#62;</A
 ></TD
@@ -222,7 +210,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
 ACCESSKEY="U"
 >Up</A
 ></TD
@@ -230,7 +218,7 @@ ACCESSKEY="U"
 WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
->FcDirCacheRead</TD
+>FcDirCacheRescan</TD
 ></TR
 ></TABLE
 ></DIV
index dc77da2..177e7d0 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
 REL="PREVIOUS"
 TITLE="FcDirCacheRead"
 HREF="fcdircacheread.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRCACHELOADFILE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4057"
+NAME="AEN4107"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4057"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4060"
+NAME="AEN4110"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4061"
+NAME="AEN4111"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4070"
+NAME="AEN4120"
 ></A
 ><H2
 >Description</H2
@@ -155,18 +155,6 @@ non-NULL, it will be filled with the results of stat(2) on the cache file.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4075"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 0b2342a..e08b7e1 100644 (file)
@@ -10,10 +10,10 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
 REL="PREVIOUS"
-TITLE="FcDirCacheLoad"
-HREF="fcdircacheload.html"><LINK
+TITLE="FcDirCacheRescan"
+HREF="fcdircacherescan.html"><LINK
 REL="NEXT"
 TITLE="FcDirCacheLoadFile"
 HREF="fcdircacheloadfile.html"></HEAD
@@ -44,7 +44,7 @@ WIDTH="10%"
 ALIGN="left"
 VALIGN="bottom"
 ><A
-HREF="fcdircacheload.html"
+HREF="fcdircacherescan.html"
 ACCESSKEY="P"
 >&#60;&#60;&#60; Previous</A
 ></TD
@@ -75,7 +75,7 @@ NAME="FCDIRCACHEREAD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4030"
+NAME="AEN4082"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4030"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4033"
+NAME="AEN4085"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4034"
+NAME="AEN4086"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4045"
+NAME="AEN4097"
 ></A
 ><H2
 >Description</H2
@@ -161,18 +161,6 @@ directory and that returned.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4050"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -188,7 +176,7 @@ WIDTH="33%"
 ALIGN="left"
 VALIGN="top"
 ><A
-HREF="fcdircacheload.html"
+HREF="fcdircacherescan.html"
 ACCESSKEY="P"
 >&#60;&#60;&#60; Previous</A
 ></TD
@@ -216,13 +204,13 @@ ACCESSKEY="N"
 WIDTH="33%"
 ALIGN="left"
 VALIGN="top"
->FcDirCacheLoad</TD
+>FcDirCacheRescan</TD
 ><TD
 WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
 ACCESSKEY="U"
 >Up</A
 ></TD
diff --git a/doc/fontconfig-devel/fcdircacherescan.html b/doc/fontconfig-devel/fcdircacherescan.html
new file mode 100644 (file)
index 0000000..20e9027
--- /dev/null
@@ -0,0 +1,225 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcDirCacheRescan</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="File and Directory routines"
+HREF="x102.html#AEN3867"><LINK
+REL="PREVIOUS"
+TITLE="FcDirCacheLoad"
+HREF="fcdircacheload.html"><LINK
+REL="NEXT"
+TITLE="FcDirCacheRead"
+HREF="fcdircacheread.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcdircacheload.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcdircacheread.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCDIRCACHERESCAN"
+></A
+>FcDirCacheRescan</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN4057"
+></A
+><H2
+>Name</H2
+>FcDirCacheRescan&nbsp;--&nbsp;Re-scan a directory cache</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN4060"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4061"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+       </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>FcCache * <TT
+CLASS="FUNCTION"
+>FcDirCacheRescan</TT
+></CODE
+>(const FcChar8 *<TT
+CLASS="PARAMETER"
+><I
+>dir</I
+></TT
+>, FcConfig *<TT
+CLASS="PARAMETER"
+><I
+>config</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN4070"
+></A
+><H2
+>Description</H2
+><P
+>Re-scan directories only at <TT
+CLASS="PARAMETER"
+><I
+>dir</I
+></TT
+> and update the cache.
+returns NULL if failed.
+           </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN4074"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.1</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcdircacheload.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcdircacheread.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcDirCacheLoad</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN3867"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcDirCacheRead</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file
index 9236f02..d7428bc 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
 REL="PREVIOUS"
 TITLE="FcDirSave"
 HREF="fcdirsave.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRCACHEUNLINK"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3955"
+NAME="AEN3988"
 ></A
 ><H2
 >Name</H2
@@ -88,7 +88,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3959"
+NAME="AEN3992"
 ></A
 ><H2
 >Synopsis</H2
@@ -97,7 +97,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3960"
+NAME="AEN3993"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3969"
+NAME="AEN4002"
 ></A
 ><H2
 >Description</H2
@@ -161,18 +161,6 @@ unlinking any files are ignored.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3974"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -222,7 +210,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 5d50d25..10b312e 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
 REL="PREVIOUS"
 TITLE="FcDirCacheLoadFile"
 HREF="fcdircacheloadfile.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCDIRCACHEUNLOAD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4082"
+NAME="AEN4130"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN4082"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4085"
+NAME="AEN4133"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4086"
+NAME="AEN4134"
 ></A
 ><TABLE
 BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4093"
+NAME="AEN4141"
 ></A
 ><H2
 >Description</H2
@@ -137,18 +137,6 @@ references to it remain, all memory associated with the cache will be freed.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4097"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -194,7 +182,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 6815a48..02feead 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
 REL="PREVIOUS"
 TITLE="FcDirCacheUnlink"
 HREF="fcdircacheunlink.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRCACHEVALID"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3981"
+NAME="AEN4012"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3981"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3984"
+NAME="AEN4015"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3985"
+NAME="AEN4016"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3992"
+NAME="AEN4023"
 ></A
 ><H2
 >Description</H2
@@ -144,18 +144,6 @@ file, else returns FcFalse
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3996"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
 ACCESSKEY="U"
 >Up</A
 ></TD
index b0f4d21..c57cca2 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
 REL="PREVIOUS"
 TITLE="FcDirScan"
 HREF="fcdirscan.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRSAVE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3927"
+NAME="AEN3962"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3927"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3930"
+NAME="AEN3965"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3931"
+NAME="AEN3966"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3942"
+NAME="AEN3977"
 ></A
 ><H2
 >Description</H2
@@ -167,18 +167,6 @@ managed by FcDirCacheLoad and FcDirCacheRead.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3948"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -228,7 +216,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
 ACCESSKEY="U"
 >Up</A
 ></TD
index bdc6e91..d424cf9 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
 REL="PREVIOUS"
 TITLE="FcFileIsDir"
 HREF="fcfileisdir.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCDIRSCAN"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3892"
+NAME="AEN3929"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3892"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3895"
+NAME="AEN3932"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3896"
+NAME="AEN3933"
 ></A
 ><TABLE
 BORDER="0"
@@ -154,7 +154,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3913"
+NAME="AEN3950"
 ></A
 ><H2
 >Description</H2
@@ -188,18 +188,6 @@ caching is desired.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3920"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -249,7 +237,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
 ACCESSKEY="U"
 >Up</A
 ></TD
index addd9b1..61f0ffd 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
 REL="PREVIOUS"
 TITLE="FcFileScan"
 HREF="fcfilescan.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFILEISDIR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3870"
+NAME="AEN3909"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3870"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3873"
+NAME="AEN3912"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3874"
+NAME="AEN3913"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3881"
+NAME="AEN3920"
 ></A
 ><H2
 >Description</H2
@@ -144,18 +144,6 @@ returns FcFalse.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3885"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
 ACCESSKEY="U"
 >Up</A
 ></TD
index e1f5637..448ea1b 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="File and Directory routines"
-HREF="x102.html#AEN3827"><LINK
+HREF="x102.html#AEN3867"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFILESCAN"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3834"
+NAME="AEN3875"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3834"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3837"
+NAME="AEN3878"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3838"
+NAME="AEN3879"
 ></A
 ><TABLE
 BORDER="0"
@@ -154,7 +154,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3855"
+NAME="AEN3896"
 ></A
 ><H2
 >Description</H2
@@ -198,18 +198,6 @@ added (due to allocation failure). Otherwise returns FcTrue.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3863"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -259,7 +247,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3827"
+HREF="x102.html#AEN3867"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 6ca0934..364242f 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCFINI"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN175"
+NAME="AEN170"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN175"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN178"
+NAME="AEN173"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN179"
+NAME="AEN174"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN186"
+NAME="AEN181"
 ></A
 ><H2
 >Description</H2
@@ -141,18 +141,6 @@ function may be called.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN189"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
index fee3b95..566bb1d 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcFontRenderPrepare"
 HREF="fcfontrenderprepare.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTLIST"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3319"
+NAME="AEN3308"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3319"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3322"
+NAME="AEN3311"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3323"
+NAME="AEN3312"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3334"
+NAME="AEN3323"
 ></A
 ><H2
 >Description</H2
@@ -166,18 +166,6 @@ to be up to date, and used.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3340"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -227,7 +215,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 405fec7..3d10a7a 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcConfigSubstitute"
 HREF="fcconfigsubstitute.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTMATCH"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3217"
+NAME="AEN3212"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3217"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3220"
+NAME="AEN3215"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3221"
+NAME="AEN3216"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3232"
+NAME="AEN3227"
 ></A
 ><H2
 >Description</H2
@@ -184,18 +184,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3242"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -245,7 +233,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index c5199f0..bec9484 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcFontSort"
 HREF="fcfontsort.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTRENDERPREPARE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3288"
+NAME="AEN3279"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3288"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3291"
+NAME="AEN3282"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3292"
+NAME="AEN3283"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3303"
+NAME="AEN3294"
 ></A
 ><H2
 >Description</H2
@@ -181,18 +181,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3312"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -242,7 +230,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 2915aa2..abc2561 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcFontSet"
-HREF="x102.html#AEN1056"><LINK
+HREF="x102.html#AEN1031"><LINK
 REL="PREVIOUS"
 TITLE="FcFontSetDestroy"
 HREF="fcfontsetdestroy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTSETADD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1105"
+NAME="AEN1077"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1105"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1108"
+NAME="AEN1080"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1109"
+NAME="AEN1081"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1118"
+NAME="AEN1090"
 ></A
 ><H2
 >Description</H2
@@ -145,18 +145,6 @@ inserted into the set (due to allocation failure). Otherwise returns FcTrue.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1121"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -206,7 +194,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1056"
+HREF="x102.html#AEN1031"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 29ca136..54f7527 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcFontSet"
-HREF="x102.html#AEN1056"><LINK
+HREF="x102.html#AEN1031"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTSETCREATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1063"
+NAME="AEN1039"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1063"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1066"
+NAME="AEN1042"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1067"
+NAME="AEN1043"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1074"
+NAME="AEN1050"
 ></A
 ><H2
 >Description</H2
@@ -138,18 +138,6 @@ NAME="AEN1074"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1077"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1056"
+HREF="x102.html#AEN1031"
 ACCESSKEY="U"
 >Up</A
 ></TD
index b1e21a6..be54e6e 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcFontSet"
-HREF="x102.html#AEN1056"><LINK
+HREF="x102.html#AEN1031"><LINK
 REL="PREVIOUS"
 TITLE="FcFontSetCreate"
 HREF="fcfontsetcreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTSETDESTROY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1084"
+NAME="AEN1058"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1084"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1087"
+NAME="AEN1061"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1088"
+NAME="AEN1062"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1095"
+NAME="AEN1069"
 ></A
 ><H2
 >Description</H2
@@ -139,18 +139,6 @@ well.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1098"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -200,7 +188,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1056"
+HREF="x102.html#AEN1031"
 ACCESSKEY="U"
 >Up</A
 ></TD
index c591e44..8a82e37 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcFontSet"
-HREF="x102.html#AEN1056"><LINK
+HREF="x102.html#AEN1031"><LINK
 REL="PREVIOUS"
 TITLE="FcFontSetAdd"
 HREF="fcfontsetadd.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTSETLIST"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1128"
+NAME="AEN1098"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1128"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1131"
+NAME="AEN1101"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1132"
+NAME="AEN1102"
 ></A
 ><TABLE
 BORDER="0"
@@ -149,7 +149,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1147"
+NAME="AEN1117"
 ></A
 ><H2
 >Description</H2
@@ -183,18 +183,6 @@ to be up to date, and used.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1154"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -244,7 +232,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1056"
+HREF="x102.html#AEN1031"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 16787a9..68add42 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcFontSet"
-HREF="x102.html#AEN1056"><LINK
+HREF="x102.html#AEN1031"><LINK
 REL="PREVIOUS"
 TITLE="FcFontSetList"
 HREF="fcfontsetlist.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTSETMATCH"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1161"
+NAME="AEN1129"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1161"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1164"
+NAME="AEN1132"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1165"
+NAME="AEN1133"
 ></A
 ><TABLE
 BORDER="0"
@@ -149,7 +149,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1180"
+NAME="AEN1148"
 ></A
 ><H2
 >Description</H2
@@ -195,18 +195,6 @@ Returns NULL if an error occurs during this process.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1190"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -256,7 +244,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1056"
+HREF="x102.html#AEN1031"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 0f016d4..615f697 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcFontSet"
-HREF="x102.html#AEN1056"><LINK
+HREF="x102.html#AEN1031"><LINK
 REL="PREVIOUS"
 TITLE="FcFontSetMatch"
 HREF="fcfontsetmatch.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTSETPRINT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1197"
+NAME="AEN1163"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1197"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1200"
+NAME="AEN1166"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1201"
+NAME="AEN1167"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1208"
+NAME="AEN1174"
 ></A
 ><H2
 >Description</H2
@@ -146,18 +146,6 @@ change at any time.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1212"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -207,7 +195,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1056"
+HREF="x102.html#AEN1031"
 ACCESSKEY="U"
 >Up</A
 ></TD
index b295378..c06a810 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcFontSet"
-HREF="x102.html#AEN1056"><LINK
+HREF="x102.html#AEN1031"><LINK
 REL="PREVIOUS"
 TITLE="FcFontSetPrint"
 HREF="fcfontsetprint.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTSETSORT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1219"
+NAME="AEN1183"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1219"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1222"
+NAME="AEN1186"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1223"
+NAME="AEN1187"
 ></A
 ><TABLE
 BORDER="0"
@@ -159,7 +159,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1242"
+NAME="AEN1206"
 ></A
 ><H2
 >Description</H2
@@ -225,18 +225,6 @@ CLASS="FUNCTION"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1255"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -286,7 +274,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1056"
+HREF="x102.html#AEN1031"
 ACCESSKEY="U"
 >Up</A
 ></TD
index b82d862..5a5e5b2 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcFontSet"
-HREF="x102.html#AEN1056"><LINK
+HREF="x102.html#AEN1031"><LINK
 REL="PREVIOUS"
 TITLE="FcFontSetSort"
 HREF="fcfontsetsort.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCFONTSETSORTDESTROY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1262"
+NAME="AEN1224"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN1262"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1265"
+NAME="AEN1227"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1266"
+NAME="AEN1228"
 ></A
 ><TABLE
 BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1273"
+NAME="AEN1235"
 ></A
 ><H2
 >Description</H2
@@ -148,18 +148,6 @@ CLASS="FUNCTION"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1280"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1056"
+HREF="x102.html#AEN1031"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 1b6231f..9352d4e 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConfig"
-HREF="x102.html#AEN2679"><LINK
+HREF="x102.html#AEN2718"><LINK
 REL="PREVIOUS"
 TITLE="FcFontMatch"
 HREF="fcfontmatch.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFONTSORT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3249"
+NAME="AEN3242"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3249"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3252"
+NAME="AEN3245"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3253"
+NAME="AEN3246"
 ></A
 ><TABLE
 BORDER="0"
@@ -149,7 +149,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3268"
+NAME="AEN3261"
 ></A
 ><H2
 >Description</H2
@@ -211,18 +211,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3281"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -272,7 +260,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2679"
+HREF="x102.html#AEN2718"
 ACCESSKEY="U"
 >Up</A
 ></TD
index ef9f975..845209b 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FreeType specific functions"
-HREF="x102.html#AEN1393"><LINK
+HREF="x102.html#AEN1344"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFREETYPECHARINDEX"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1400"
+NAME="AEN1352"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1400"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1403"
+NAME="AEN1355"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1404"
+NAME="AEN1356"
 ></A
 ><TABLE
 BORDER="0"
@@ -135,7 +135,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1413"
+NAME="AEN1365"
 ></A
 ><H2
 >Description</H2
@@ -148,18 +148,6 @@ higher level functions.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1416"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -209,7 +197,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1393"
+HREF="x102.html#AEN1344"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 43cc5f3..a40b520 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FreeType specific functions"
-HREF="x102.html#AEN1393"><LINK
+HREF="x102.html#AEN1344"><LINK
 REL="PREVIOUS"
 TITLE="FcFreeTypeCharIndex"
 HREF="fcfreetypecharindex.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFREETYPECHARSET"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1423"
+NAME="AEN1373"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1423"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1426"
+NAME="AEN1376"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1427"
+NAME="AEN1377"
 ></A
 ><TABLE
 BORDER="0"
@@ -135,7 +135,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1436"
+NAME="AEN1386"
 ></A
 ><H2
 >Description</H2
@@ -147,18 +147,6 @@ not in 'blanks' are not placed in the returned FcCharSet.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1439"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -208,7 +196,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1393"
+HREF="x102.html#AEN1344"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 7e95028..76eff8b 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FreeType specific functions"
-HREF="x102.html#AEN1393"><LINK
+HREF="x102.html#AEN1344"><LINK
 REL="PREVIOUS"
 TITLE="FcFreeTypeCharSet"
 HREF="fcfreetypecharset.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFREETYPECHARSETANDSPACING"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1446"
+NAME="AEN1394"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1446"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1449"
+NAME="AEN1397"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1450"
+NAME="AEN1398"
 ></A
 ><TABLE
 BORDER="0"
@@ -140,7 +140,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1461"
+NAME="AEN1409"
 ></A
 ><H2
 >Description</H2
@@ -163,18 +163,6 @@ widths.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1465"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -224,7 +212,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1393"
+HREF="x102.html#AEN1344"
 ACCESSKEY="U"
 >Up</A
 ></TD
index f457f94..a7c32da 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FreeType specific functions"
-HREF="x102.html#AEN1393"><LINK
+HREF="x102.html#AEN1344"><LINK
 REL="PREVIOUS"
 TITLE="FcFreeTypeCharSetAndSpacing"
 HREF="fcfreetypecharsetandspacing.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCFREETYPEQUERY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1472"
+NAME="AEN1418"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1472"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1475"
+NAME="AEN1421"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1476"
+NAME="AEN1422"
 ></A
 ><TABLE
 BORDER="0"
@@ -145,7 +145,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1489"
+NAME="AEN1435"
 ></A
 ><H2
 >Description</H2
@@ -155,18 +155,6 @@ of fonts in 'file' is returned in 'count'.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1492"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1393"
+HREF="x102.html#AEN1344"
 ACCESSKEY="U"
 >Up</A
 ></TD
index a3962de..5101caf 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FreeType specific functions"
-HREF="x102.html#AEN1393"><LINK
+HREF="x102.html#AEN1344"><LINK
 REL="PREVIOUS"
 TITLE="FcFreeTypeQuery"
 HREF="fcfreetypequery.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCFREETYPEQUERYFACE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1499"
+NAME="AEN1443"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN1499"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1502"
+NAME="AEN1446"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1503"
+NAME="AEN1447"
 ></A
 ><TABLE
 BORDER="0"
@@ -138,7 +138,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1516"
+NAME="AEN1460"
 ></A
 ><H2
 >Description</H2
@@ -148,18 +148,6 @@ data for pattern elements (FC_FILE, FC_INDEX and sometimes FC_FAMILY).
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1519"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1393"
+HREF="x102.html#AEN1344"
 ACCESSKEY="U"
 >Up</A
 ></TD
index f7f9ea0..18a4e38 100644 (file)
@@ -10,13 +10,13 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
 REL="PREVIOUS"
 TITLE="FcLangSetHasLang"
 HREF="fclangsethaslang.html"><LINK
 REL="NEXT"
-TITLE="FcGetLangs"
-HREF="fcgetlangs.html"></HEAD
+TITLE="FcLangSetGetLangs"
+HREF="fclangsetgetlangs.html"></HEAD
 ><BODY
 CLASS="REFENTRY"
 BGCOLOR="#FFFFFF"
@@ -58,7 +58,7 @@ WIDTH="10%"
 ALIGN="right"
 VALIGN="bottom"
 ><A
-HREF="fcgetlangs.html"
+HREF="fclangsetgetlangs.html"
 ACCESSKEY="N"
 >Next &#62;&#62;&#62;</A
 ></TD
@@ -75,7 +75,7 @@ NAME="FCGETDEFAULTLANGS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2404"
+NAME="AEN2312"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2404"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2407"
+NAME="AEN2315"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2408"
+NAME="AEN2316"
 ></A
 ><TABLE
 BORDER="0"
@@ -118,7 +118,7 @@ CLASS="FUNCTION"
 >(void<TT
 CLASS="PARAMETER"
 ><I
->ls</I
+></I
 ></TT
 >);</CODE
 ></P
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2415"
+NAME="AEN2323"
 ></A
 ><H2
 >Description</H2
@@ -142,14 +142,12 @@ If there are no valid values in those environment variables, "en" will be set as
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2418"
+NAME="AEN2326"
 ></A
 ><H2
->Version</H2
+>Since</H2
 ><P
->Fontconfig version 2.10.91
-
-           </P
+>version 2.9.91</P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -185,7 +183,7 @@ WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
 ><A
-HREF="fcgetlangs.html"
+HREF="fclangsetgetlangs.html"
 ACCESSKEY="N"
 >Next &#62;&#62;&#62;</A
 ></TD
@@ -201,7 +199,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
 ACCESSKEY="U"
 >Up</A
 ></TD
@@ -209,7 +207,7 @@ ACCESSKEY="U"
 WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
->FcGetLangs</TD
+>FcLangSetGetLangs</TD
 ></TR
 ></TABLE
 ></DIV
index b655245..11927b3 100644 (file)
@@ -10,10 +10,10 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
 REL="PREVIOUS"
-TITLE="FcGetDefaultLangs"
-HREF="fcgetdefaultlangs.html"><LINK
+TITLE="FcLangSetGetLangs"
+HREF="fclangsetgetlangs.html"><LINK
 REL="NEXT"
 TITLE="FcLangNormalize"
 HREF="fclangnormalize.html"></HEAD
@@ -44,7 +44,7 @@ WIDTH="10%"
 ALIGN="left"
 VALIGN="bottom"
 ><A
-HREF="fcgetdefaultlangs.html"
+HREF="fclangsetgetlangs.html"
 ACCESSKEY="P"
 >&#60;&#60;&#60; Previous</A
 ></TD
@@ -75,7 +75,7 @@ NAME="FCGETLANGS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2425"
+NAME="AEN2354"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2425"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2428"
+NAME="AEN2357"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2429"
+NAME="AEN2358"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2436"
+NAME="AEN2365"
 ></A
 ><H2
 >Description</H2
@@ -138,18 +138,6 @@ NAME="AEN2436"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2439"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -165,7 +153,7 @@ WIDTH="33%"
 ALIGN="left"
 VALIGN="top"
 ><A
-HREF="fcgetdefaultlangs.html"
+HREF="fclangsetgetlangs.html"
 ACCESSKEY="P"
 >&#60;&#60;&#60; Previous</A
 ></TD
@@ -193,13 +181,13 @@ ACCESSKEY="N"
 WIDTH="33%"
 ALIGN="left"
 VALIGN="top"
->FcGetDefaultLangs</TD
+>FcLangSetGetLangs</TD
 ><TD
 WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
 ACCESSKEY="U"
 >Up</A
 ></TD
index ee289bf..540be90 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCGETVERSION"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN196"
+NAME="AEN189"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN196"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN199"
+NAME="AEN192"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN200"
+NAME="AEN193"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN207"
+NAME="AEN200"
 ></A
 ><H2
 >Description</H2
@@ -138,18 +138,6 @@ NAME="AEN207"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN210"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
index 6967ef8..9810e77 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCINIT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN154"
+NAME="AEN151"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN154"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN157"
+NAME="AEN154"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN158"
+NAME="AEN155"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN165"
+NAME="AEN162"
 ></A
 ><H2
 >Description</H2
@@ -141,18 +141,6 @@ been loaded, this routine does nothing and returns FcTrue.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN168"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
index 6826be3..bea4237 100644 (file)
@@ -68,7 +68,7 @@ NAME="FCINITBRINGUPTODATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN238"
+NAME="AEN227"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN238"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN241"
+NAME="AEN230"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN242"
+NAME="AEN231"
 ></A
 ><TABLE
 BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN249"
+NAME="AEN238"
 ></A
 ><H2
 >Description</H2
@@ -134,18 +134,6 @@ be reloaded (see FcInitReinitialize). Otherwise returns FcTrue.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN252"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
index 6ed368c..38d42d4 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCINITLOADCONFIG"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN112"
+NAME="AEN113"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN112"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN115"
+NAME="AEN116"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN116"
+NAME="AEN117"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN123"
+NAME="AEN124"
 ></A
 ><H2
 >Description</H2
@@ -139,18 +139,6 @@ Does not load any font information.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN126"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
index dde015e..1b9b25f 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCINITLOADCONFIGANDFONTS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN133"
+NAME="AEN132"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN133"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN136"
+NAME="AEN135"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN137"
+NAME="AEN136"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN144"
+NAME="AEN143"
 ></A
 ><H2
 >Description</H2
@@ -139,18 +139,6 @@ available fonts.  Returns the resulting configuration.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN147"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
index 55f7172..6436806 100644 (file)
@@ -75,7 +75,7 @@ NAME="FCINITREINITIALIZE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN217"
+NAME="AEN208"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN217"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN220"
+NAME="AEN211"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN221"
+NAME="AEN212"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN228"
+NAME="AEN219"
 ></A
 ><H2
 >Description</H2
@@ -141,18 +141,6 @@ existing configuration unchanged. Otherwise returns FcTrue.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN231"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
index 17b747e..41b0932 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcUtf16Len"
 HREF="fcutf16len.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCISLOWER"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4665"
+NAME="AEN4696"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4665"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4668"
+NAME="AEN4699"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4669"
+NAME="AEN4700"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4676"
+NAME="AEN4707"
 ></A
 ><H2
 >Description</H2
@@ -144,18 +144,6 @@ letter.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4680"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 967ad71..2a31bcb 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcIsLower"
 HREF="fcislower.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCISUPPER"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4687"
+NAME="AEN4716"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4687"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4690"
+NAME="AEN4719"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4691"
+NAME="AEN4720"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4698"
+NAME="AEN4727"
 ></A
 ><H2
 >Description</H2
@@ -144,18 +144,6 @@ letter.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4702"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index aa8cba6..7f5e33c 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
 REL="PREVIOUS"
 TITLE="FcLangNormalize"
 HREF="fclangnormalize.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCLANGGETCHARSET"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2468"
+NAME="AEN2396"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN2468"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2471"
+NAME="AEN2399"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2472"
+NAME="AEN2400"
 ></A
 ><TABLE
 BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2479"
+NAME="AEN2407"
 ></A
 ><H2
 >Description</H2
@@ -131,18 +131,6 @@ NAME="AEN2479"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2482"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -188,7 +176,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 46d8812..0af8ae7 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
 REL="PREVIOUS"
 TITLE="FcGetLangs"
 HREF="fcgetlangs.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGNORMALIZE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2446"
+NAME="AEN2373"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2446"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2449"
+NAME="AEN2376"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2450"
+NAME="AEN2377"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2457"
+NAME="AEN2384"
 ></A
 ><H2
 >Description</H2
@@ -145,14 +145,12 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2461"
+NAME="AEN2388"
 ></A
 ><H2
->Version</H2
+>Since</H2
 ><P
->Fontconfig version 2.10.91
-
-           </P
+>version 2.10.91</P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -204,7 +202,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 1da1b22..9771952 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
 REL="PREVIOUS"
 TITLE="FcLangSetCopy"
 HREF="fclangsetcopy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETADD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2168"
+NAME="AEN2085"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2168"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2171"
+NAME="AEN2088"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2172"
+NAME="AEN2089"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2181"
+NAME="AEN2098"
 ></A
 ><H2
 >Description</H2
@@ -161,18 +161,6 @@ two or three letter language from ISO 639 and Tt is a territory from ISO
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2187"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -222,7 +210,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
 ACCESSKEY="U"
 >Up</A
 ></TD
index ddc0fa8..42f68ed 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
 REL="PREVIOUS"
 TITLE="FcLangSetSubtract"
 HREF="fclangsetsubtract.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETCOMPARE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2270"
+NAME="AEN2188"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2270"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2273"
+NAME="AEN2191"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2274"
+NAME="AEN2192"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2283"
+NAME="AEN2201"
 ></A
 ><H2
 >Description</H2
@@ -161,18 +161,6 @@ common, this function returns FcLangDifferentLang.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2289"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -222,7 +210,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 5ad359a..18c0bbb 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
 REL="PREVIOUS"
 TITLE="FcLangSetCompare"
 HREF="fclangsetcompare.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETCONTAINS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2296"
+NAME="AEN2212"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2296"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2299"
+NAME="AEN2215"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2300"
+NAME="AEN2216"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2309"
+NAME="AEN2225"
 ></A
 ><H2
 >Description</H2
@@ -181,18 +181,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2319"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -242,7 +230,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 05fcbb5..46cc5c4 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
 REL="PREVIOUS"
 TITLE="FcLangSetDestroy"
 HREF="fclangsetdestroy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETCOPY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2145"
+NAME="AEN2064"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2145"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2148"
+NAME="AEN2067"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2149"
+NAME="AEN2068"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2156"
+NAME="AEN2075"
 ></A
 ><H2
 >Description</H2
@@ -147,18 +147,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2161"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -208,7 +196,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
 ACCESSKEY="U"
 >Up</A
 ></TD
index e4a2702..dc39cfd 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETCREATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2101"
+NAME="AEN2024"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2101"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2104"
+NAME="AEN2027"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2105"
+NAME="AEN2028"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2112"
+NAME="AEN2035"
 ></A
 ><H2
 >Description</H2
@@ -141,18 +141,6 @@ CLASS="FUNCTION"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2116"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -202,7 +190,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
 ACCESSKEY="U"
 >Up</A
 ></TD
index a2a09ee..a284fa6 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
 REL="PREVIOUS"
 TITLE="FcLangSetAdd"
 HREF="fclangsetadd.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETDEL"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2194"
+NAME="AEN2109"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2194"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2197"
+NAME="AEN2112"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2198"
+NAME="AEN2113"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2207"
+NAME="AEN2122"
 ></A
 ><H2
 >Description</H2
@@ -163,14 +163,12 @@ two or three letter language from ISO 639 and Tt is a territory from ISO
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2213"
+NAME="AEN2128"
 ></A
 ><H2
->Version</H2
+>Since</H2
 ><P
->Fontconfig version 2.10.91
-
-           </P
+>version 2.9.0</P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -222,7 +220,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 4478433..1d89a57 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
 REL="PREVIOUS"
 TITLE="FcLangSetCreate"
 HREF="fclangsetcreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETDESTROY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2123"
+NAME="AEN2044"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2123"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2126"
+NAME="AEN2047"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2127"
+NAME="AEN2048"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2134"
+NAME="AEN2055"
 ></A
 ><H2
 >Description</H2
@@ -142,18 +142,6 @@ all memory associated with it.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2138"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -203,7 +191,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 1e11c27..b4fed77 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
 REL="PREVIOUS"
 TITLE="FcLangSetContains"
 HREF="fclangsetcontains.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETEQUAL"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2326"
+NAME="AEN2240"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2326"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2329"
+NAME="AEN2243"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2330"
+NAME="AEN2244"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2339"
+NAME="AEN2253"
 ></A
 ><H2
 >Description</H2
@@ -154,18 +154,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2344"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -215,7 +203,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
 ACCESSKEY="U"
 >Up</A
 ></TD
diff --git a/doc/fontconfig-devel/fclangsetgetlangs.html b/doc/fontconfig-devel/fclangsetgetlangs.html
new file mode 100644 (file)
index 0000000..9981c2b
--- /dev/null
@@ -0,0 +1,209 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcLangSetGetLangs</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcLangSet"
+HREF="x102.html#AEN2016"><LINK
+REL="PREVIOUS"
+TITLE="FcGetDefaultLangs"
+HREF="fcgetdefaultlangs.html"><LINK
+REL="NEXT"
+TITLE="FcGetLangs"
+HREF="fcgetlangs.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcgetdefaultlangs.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcgetlangs.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCLANGSETGETLANGS"
+></A
+>FcLangSetGetLangs</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN2334"
+></A
+><H2
+>Name</H2
+>FcLangSetGetLangs&nbsp;--&nbsp;get the list of languages in the langset</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN2337"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2338"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+       </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>FcStrSet * <TT
+CLASS="FUNCTION"
+>FcLangSetGetLangs</TT
+></CODE
+>(const FcLangSet *<TT
+CLASS="PARAMETER"
+><I
+>ls</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2345"
+></A
+><H2
+>Description</H2
+><P
+>Returns a string set of all languages in <TT
+CLASS="PARAMETER"
+><I
+>langset</I
+></TT
+>.
+           </P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcgetdefaultlangs.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcgetlangs.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcGetDefaultLangs</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN2016"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcGetLangs</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file
index 4ee76a9..d7e7635 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
 REL="PREVIOUS"
 TITLE="FcLangSetEqual"
 HREF="fclangsetequal.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETHASH"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2351"
+NAME="AEN2263"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2351"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2354"
+NAME="AEN2266"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2355"
+NAME="AEN2267"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2362"
+NAME="AEN2274"
 ></A
 ><H2
 >Description</H2
@@ -155,18 +155,6 @@ value may not be equal.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2368"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
 ACCESSKEY="U"
 >Up</A
 ></TD
index c44fdb2..d92a2ee 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
 REL="PREVIOUS"
 TITLE="FcLangSetHash"
 HREF="fclangsethash.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETHASLANG"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2375"
+NAME="AEN2285"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2375"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2378"
+NAME="AEN2288"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2379"
+NAME="AEN2289"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2388"
+NAME="AEN2298"
 ></A
 ><H2
 >Description</H2
@@ -177,18 +177,6 @@ has no matching language, this function returns FcLangDifferentLang.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2397"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -238,7 +226,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
 ACCESSKEY="U"
 >Up</A
 ></TD
index aa5c922..7ee18c0 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
 REL="PREVIOUS"
 TITLE="FcLangSetUnion"
 HREF="fclangsetunion.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETSUBTRACT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2245"
+NAME="AEN2162"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2245"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2248"
+NAME="AEN2165"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2249"
+NAME="AEN2166"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2258"
+NAME="AEN2175"
 ></A
 ><H2
 >Description</H2
@@ -155,14 +155,12 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2263"
+NAME="AEN2180"
 ></A
 ><H2
->Version</H2
+>Since</H2
 ><P
->Fontconfig version 2.10.91
-
-           </P
+>version 2.9.0</P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -214,7 +212,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
 ACCESSKEY="U"
 >Up</A
 ></TD
index aa38645..4d3071d 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcLangSet"
-HREF="x102.html#AEN2094"><LINK
+HREF="x102.html#AEN2016"><LINK
 REL="PREVIOUS"
 TITLE="FcLangSetDel"
 HREF="fclangsetdel.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCLANGSETUNION"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2220"
+NAME="AEN2136"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2220"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2223"
+NAME="AEN2139"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2224"
+NAME="AEN2140"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2233"
+NAME="AEN2149"
 ></A
 ><H2
 >Description</H2
@@ -155,14 +155,12 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2238"
+NAME="AEN2154"
 ></A
 ><H2
->Version</H2
+>Since</H2
 ><P
->Fontconfig version 2.10.91
-
-           </P
+>version 2.9.0</P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -214,7 +212,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2094"
+HREF="x102.html#AEN2016"
 ACCESSKEY="U"
 >Up</A
 ></TD
index fbbac38..6c9799e 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcMatrix"
-HREF="x102.html#AEN2485"><LINK
+HREF="x102.html#AEN2410"><LINK
 REL="PREVIOUS"
 TITLE="FcMatrixInit"
 HREF="fcmatrixinit.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCMATRIXCOPY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2515"
+NAME="AEN2439"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2515"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2518"
+NAME="AEN2442"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2519"
+NAME="AEN2443"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2526"
+NAME="AEN2450"
 ></A
 ><H2
 >Description</H2
@@ -147,18 +147,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2531"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -208,7 +196,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2485"
+HREF="x102.html#AEN2410"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 5aef412..fbdb69b 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcMatrix"
-HREF="x102.html#AEN2485"><LINK
+HREF="x102.html#AEN2410"><LINK
 REL="PREVIOUS"
 TITLE="FcMatrixCopy"
 HREF="fcmatrixcopy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCMATRIXEQUAL"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2538"
+NAME="AEN2460"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2538"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2541"
+NAME="AEN2463"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2542"
+NAME="AEN2464"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2551"
+NAME="AEN2473"
 ></A
 ><H2
 >Description</H2
@@ -158,18 +158,6 @@ FcFalse when they are not.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2557"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -219,7 +207,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2485"
+HREF="x102.html#AEN2410"
 ACCESSKEY="U"
 >Up</A
 ></TD
index c648720..ef8ef92 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcMatrix"
-HREF="x102.html#AEN2485"><LINK
+HREF="x102.html#AEN2410"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCMATRIXINIT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2492"
+NAME="AEN2418"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2492"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2495"
+NAME="AEN2421"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2496"
+NAME="AEN2422"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2503"
+NAME="AEN2429"
 ></A
 ><H2
 >Description</H2
@@ -147,18 +147,6 @@ to the identity matrix.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2508"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -208,7 +196,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2485"
+HREF="x102.html#AEN2410"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 4a6f693..c42ceb5 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcMatrix"
-HREF="x102.html#AEN2485"><LINK
+HREF="x102.html#AEN2410"><LINK
 REL="PREVIOUS"
 TITLE="FcMatrixEqual"
 HREF="fcmatrixequal.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCMATRIXMULTIPLY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2564"
+NAME="AEN2484"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2564"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2567"
+NAME="AEN2487"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2568"
+NAME="AEN2488"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2579"
+NAME="AEN2499"
 ></A
 ><H2
 >Description</H2
@@ -168,18 +168,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2586"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -229,7 +217,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2485"
+HREF="x102.html#AEN2410"
 ACCESSKEY="U"
 >Up</A
 ></TD
index d683746..58f944e 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcMatrix"
-HREF="x102.html#AEN2485"><LINK
+HREF="x102.html#AEN2410"><LINK
 REL="PREVIOUS"
 TITLE="FcMatrixMultiply"
 HREF="fcmatrixmultiply.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCMATRIXROTATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2593"
+NAME="AEN2511"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2593"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2596"
+NAME="AEN2514"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2597"
+NAME="AEN2515"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2608"
+NAME="AEN2526"
 ></A
 ><H2
 >Description</H2
@@ -183,18 +183,6 @@ CLASS="PROGRAMLISTING"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2616"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -244,7 +232,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2485"
+HREF="x102.html#AEN2410"
 ACCESSKEY="U"
 >Up</A
 ></TD
index ae2374d..30fe428 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcMatrix"
-HREF="x102.html#AEN2485"><LINK
+HREF="x102.html#AEN2410"><LINK
 REL="PREVIOUS"
 TITLE="FcMatrixRotate"
 HREF="fcmatrixrotate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCMATRIXSCALE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2623"
+NAME="AEN2539"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN2623"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2626"
+NAME="AEN2542"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2627"
+NAME="AEN2543"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2638"
+NAME="AEN2554"
 ></A
 ><H2
 >Description</H2
@@ -183,18 +183,6 @@ CLASS="PROGRAMLISTING"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2646"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -244,7 +232,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2485"
+HREF="x102.html#AEN2410"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 7982c4c..f18c01e 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcMatrix"
-HREF="x102.html#AEN2485"><LINK
+HREF="x102.html#AEN2410"><LINK
 REL="PREVIOUS"
 TITLE="FcMatrixScale"
 HREF="fcmatrixscale.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCMATRIXSHEAR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN2653"
+NAME="AEN2567"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN2653"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN2656"
+NAME="AEN2570"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN2657"
+NAME="AEN2571"
 ></A
 ><TABLE
 BORDER="0"
@@ -132,7 +132,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN2668"
+NAME="AEN2582"
 ></A
 ><H2
 >Description</H2
@@ -176,18 +176,6 @@ CLASS="PROGRAMLISTING"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN2676"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -233,7 +221,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN2485"
+HREF="x102.html#AEN2410"
 ACCESSKEY="U"
 >Up</A
 ></TD
index b42963b..0dc3f92 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConstant"
-HREF="x102.html#AEN3463"><LINK
+HREF="x102.html#AEN3485"><LINK
 REL="PREVIOUS"
 TITLE="FcNameGetConstant"
 HREF="fcnamegetconstant.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCNAMECONSTANT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3538"
+NAME="AEN3555"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN3538"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3541"
+NAME="AEN3558"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3542"
+NAME="AEN3559"
 ></A
 ><TABLE
 BORDER="0"
@@ -127,7 +127,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3551"
+NAME="AEN3568"
 ></A
 ><H2
 >Description</H2
@@ -147,18 +147,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3556"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3463"
+HREF="x102.html#AEN3485"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 6a05678..3281e65 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConstant"
-HREF="x102.html#AEN3463"><LINK
+HREF="x102.html#AEN3485"><LINK
 REL="PREVIOUS"
 TITLE="FcNameUnregisterConstants"
 HREF="fcnameunregisterconstants.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEGETCONSTANT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3516"
+NAME="AEN3535"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3516"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3519"
+NAME="AEN3538"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3520"
+NAME="AEN3539"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3527"
+NAME="AEN3546"
 ></A
 ><H2
 >Description</H2
@@ -143,18 +143,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3531"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3463"
+HREF="x102.html#AEN3485"
 ACCESSKEY="U"
 >Up</A
 ></TD
index a0528ee..a59c9a0 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcObjectType"
-HREF="x102.html#AEN3392"><LINK
+HREF="x102.html#AEN3420"><LINK
 REL="PREVIOUS"
 TITLE="FcNameUnregisterObjectTypes"
 HREF="fcnameunregisterobjecttypes.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCNAMEGETOBJECTTYPE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3445"
+NAME="AEN3470"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN3445"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3448"
+NAME="AEN3473"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3449"
+NAME="AEN3474"
 ></A
 ><TABLE
 BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3456"
+NAME="AEN3481"
 ></A
 ><H2
 >Description</H2
@@ -136,18 +136,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3460"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -193,7 +181,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3392"
+HREF="x102.html#AEN3420"
 ACCESSKEY="U"
 >Up</A
 ></TD
index f823eb0..6753fa8 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcDefaultSubstitute"
 HREF="fcdefaultsubstitute.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEPARSE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN887"
+NAME="AEN866"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN887"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN890"
+NAME="AEN869"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN891"
+NAME="AEN870"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN898"
+NAME="AEN877"
 ></A
 ><H2
 >Description</H2
@@ -143,18 +143,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN902"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 2725072..0545b99 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConstant"
-HREF="x102.html#AEN3463"><LINK
+HREF="x102.html#AEN3485"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEREGISTERCONSTANTS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3470"
+NAME="AEN3493"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3470"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3473"
+NAME="AEN3496"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3474"
+NAME="AEN3497"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3483"
+NAME="AEN3506"
 ></A
 ><H2
 >Description</H2
@@ -143,18 +143,6 @@ NAME="AEN3483"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3486"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3463"
+HREF="x102.html#AEN3485"
 ACCESSKEY="U"
 >Up</A
 ></TD
index d908d83..40ac7c1 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcObjectType"
-HREF="x102.html#AEN3392"><LINK
+HREF="x102.html#AEN3420"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEREGISTEROBJECTTYPES"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3399"
+NAME="AEN3428"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3399"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3402"
+NAME="AEN3431"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3403"
+NAME="AEN3432"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3412"
+NAME="AEN3441"
 ></A
 ><H2
 >Description</H2
@@ -143,18 +143,6 @@ NAME="AEN3412"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3415"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3392"
+HREF="x102.html#AEN3420"
 ACCESSKEY="U"
 >Up</A
 ></TD
index e691f1c..0b9dd77 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcNameParse"
 HREF="fcnameparse.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEUNPARSE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN909"
+NAME="AEN886"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN909"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN912"
+NAME="AEN889"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN913"
+NAME="AEN890"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN920"
+NAME="AEN897"
 ></A
 ><H2
 >Description</H2
@@ -140,18 +140,6 @@ which should be freed by the caller using free().
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN923"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -201,7 +189,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index effd7cd..42371fe 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcConstant"
-HREF="x102.html#AEN3463"><LINK
+HREF="x102.html#AEN3485"><LINK
 REL="PREVIOUS"
 TITLE="FcNameRegisterConstants"
 HREF="fcnameregisterconstants.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEUNREGISTERCONSTANTS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3493"
+NAME="AEN3514"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3493"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3496"
+NAME="AEN3517"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3497"
+NAME="AEN3518"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3506"
+NAME="AEN3527"
 ></A
 ><H2
 >Description</H2
@@ -143,18 +143,6 @@ NAME="AEN3506"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3509"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3463"
+HREF="x102.html#AEN3485"
 ACCESSKEY="U"
 >Up</A
 ></TD
index ff4e71c..c487d47 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcObjectType"
-HREF="x102.html#AEN3392"><LINK
+HREF="x102.html#AEN3420"><LINK
 REL="PREVIOUS"
 TITLE="FcNameRegisterObjectTypes"
 HREF="fcnameregisterobjecttypes.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCNAMEUNREGISTEROBJECTTYPES"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN3422"
+NAME="AEN3449"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN3422"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN3425"
+NAME="AEN3452"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN3426"
+NAME="AEN3453"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN3435"
+NAME="AEN3462"
 ></A
 ><H2
 >Description</H2
@@ -143,18 +143,6 @@ NAME="AEN3435"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN3438"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN3392"
+HREF="x102.html#AEN3420"
 ACCESSKEY="U"
 >Up</A
 ></TD
index dceb52a..6a22e49 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcObjectSet"
-HREF="x102.html#AEN1283"><LINK
+HREF="x102.html#AEN1242"><LINK
 REL="PREVIOUS"
 TITLE="FcObjectSetCreate"
 HREF="fcobjectsetcreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCOBJECTSETADD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1311"
+NAME="AEN1269"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1311"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1314"
+NAME="AEN1272"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1315"
+NAME="AEN1273"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1324"
+NAME="AEN1282"
 ></A
 ><H2
 >Description</H2
@@ -144,18 +144,6 @@ inserted into the set (due to allocation failure). Otherwise returns FcTrue.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1327"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1283"
+HREF="x102.html#AEN1242"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 37e9cb1..c1e033f 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcObjectSet"
-HREF="x102.html#AEN1283"><LINK
+HREF="x102.html#AEN1242"><LINK
 REL="PREVIOUS"
 TITLE="FcObjectSetDestroy"
 HREF="fcobjectsetdestroy.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCOBJECTSETBUILD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1355"
+NAME="AEN1309"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN1355"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1360"
+NAME="AEN1314"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1361"
+NAME="AEN1315"
 ></A
 ><TABLE
 BORDER="0"
@@ -172,7 +172,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1386"
+NAME="AEN1340"
 ></A
 ><H2
 >Description</H2
@@ -188,18 +188,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1390"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -245,7 +233,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1283"
+HREF="x102.html#AEN1242"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 726de12..79f19e0 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcObjectSet"
-HREF="x102.html#AEN1283"><LINK
+HREF="x102.html#AEN1242"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCOBJECTSETCREATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1290"
+NAME="AEN1250"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1290"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1293"
+NAME="AEN1253"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1294"
+NAME="AEN1254"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1301"
+NAME="AEN1261"
 ></A
 ><H2
 >Description</H2
@@ -138,18 +138,6 @@ NAME="AEN1301"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1304"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1283"
+HREF="x102.html#AEN1242"
 ACCESSKEY="U"
 >Up</A
 ></TD
index b069701..98a3997 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcObjectSet"
-HREF="x102.html#AEN1283"><LINK
+HREF="x102.html#AEN1242"><LINK
 REL="PREVIOUS"
 TITLE="FcObjectSetAdd"
 HREF="fcobjectsetadd.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCOBJECTSETDESTROY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1334"
+NAME="AEN1290"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1334"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1337"
+NAME="AEN1293"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1338"
+NAME="AEN1294"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1345"
+NAME="AEN1301"
 ></A
 ><H2
 >Description</H2
@@ -138,18 +138,6 @@ NAME="AEN1345"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1348"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1283"
+HREF="x102.html#AEN1242"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 07ac1cb..f40939c 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternAddWeak"
 HREF="fcpatternaddweak.html"><LINK
@@ -75,15 +75,15 @@ NAME="FCPATTERNADD-TYPE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN506"
+NAME="AEN473"
 ></A
 ><H2
 >Name</H2
->FcPatternAddInteger, FcPatternAddDouble, FcPatternAddString, FcPatternAddMatrix, FcPatternAddCharSet, FcPatternAddBool, FcPatternAddFTFace, FcPatternAddLangSet&nbsp;--&nbsp;Add a typed value to a pattern</DIV
+>FcPatternAddInteger, FcPatternAddDouble, FcPatternAddString, FcPatternAddMatrix, FcPatternAddCharSet, FcPatternAddBool, FcPatternAddFTFace, FcPatternAddLangSet, FcPatternAddRange&nbsp;--&nbsp;Add a typed value to a pattern</DIV
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN516"
+NAME="AEN484"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN517"
+NAME="AEN485"
 ></A
 ><TABLE
 BORDER="0"
@@ -308,13 +308,38 @@ CLASS="PARAMETER"
 >);</CODE
 ></P
 ><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>FcBool <TT
+CLASS="FUNCTION"
+>FcPatternAddRange</TT
+></CODE
+>(FcPattern *<TT
+CLASS="PARAMETER"
+><I
+>p</I
+></TT
+>, const char *<TT
+CLASS="PARAMETER"
+><I
+>object</I
+></TT
+>, const FcRange *<TT
+CLASS="PARAMETER"
+><I
+>r</I
+></TT
+>);</CODE
+></P
+><P
 ></P
 ></DIV
 ></DIV
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN591"
+NAME="AEN568"
 ></A
 ><H2
 >Description</H2
@@ -323,18 +348,11 @@ NAME="AEN591"
 type into the pattern.  Use these in preference to FcPatternAdd as they
 will provide compile-time typechecking.  These all append values to
 any existing list of values.
-           </P
-></DIV
-><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN594"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
 
+<TT
+CLASS="FUNCTION"
+>FcPatternAddRange</TT
+> are available since 2.11.91.
            </P
 ></DIV
 ><DIV
@@ -387,7 +405,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index f3d7b74..90a0cdf 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternHash"
 HREF="fcpatternhash.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNADD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN449"
+NAME="AEN420"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN449"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN452"
+NAME="AEN423"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN453"
+NAME="AEN424"
 ></A
 ><TABLE
 BORDER="0"
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN466"
+NAME="AEN437"
 ></A
 ><H2
 >Description</H2
@@ -162,18 +162,6 @@ retains no reference to any application-supplied data structure.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN470"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -223,7 +211,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 5f9ffbc..fc29711 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternAdd"
 HREF="fcpatternadd.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNADDWEAK"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN477"
+NAME="AEN446"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN477"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN480"
+NAME="AEN449"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN481"
+NAME="AEN450"
 ></A
 ><TABLE
 BORDER="0"
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN494"
+NAME="AEN463"
 ></A
 ><H2
 >Description</H2
@@ -164,18 +164,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN499"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -225,7 +213,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 095c602..fabdf86 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternGet-Type"
 HREF="fcpatternget-type.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNBUILD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN738"
+NAME="AEN727"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN738"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN743"
+NAME="AEN732"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN744"
+NAME="AEN733"
 ></A
 ><TABLE
 BORDER="0"
@@ -179,7 +179,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN769"
+NAME="AEN758"
 ></A
 ><H2
 >Description</H2
@@ -235,18 +235,6 @@ variable.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN783"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -296,7 +284,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 71a0297..d54b6b2 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNCREATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN262"
+NAME="AEN249"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN262"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN265"
+NAME="AEN252"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN266"
+NAME="AEN253"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN273"
+NAME="AEN260"
 ></A
 ><H2
 >Description</H2
@@ -138,18 +138,6 @@ NAME="AEN273"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN276"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index fb62abd..2ab8b84 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternBuild"
 HREF="fcpatternbuild.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNDEL"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN790"
+NAME="AEN777"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN790"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN793"
+NAME="AEN780"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN794"
+NAME="AEN781"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN803"
+NAME="AEN790"
 ></A
 ><H2
 >Description</H2
@@ -144,18 +144,6 @@ whether the property existed or not.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN806"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index df908d3..b611046 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternReference"
 HREF="fcpatternreference.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNDESTROY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN327"
+NAME="AEN308"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN327"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN330"
+NAME="AEN311"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN331"
+NAME="AEN312"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN338"
+NAME="AEN319"
 ></A
 ><H2
 >Description</H2
@@ -139,18 +139,6 @@ the pattern, in the process destroying all related values.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN341"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -200,7 +188,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 8fbaf5d..15dc18a 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternCreate"
 HREF="fcpatterncreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNDUPLICATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN283"
+NAME="AEN268"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN283"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN286"
+NAME="AEN271"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN287"
+NAME="AEN272"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN294"
+NAME="AEN279"
 ></A
 ><H2
 >Description</H2
@@ -145,18 +145,6 @@ other.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN298"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -206,7 +194,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 5988c22..5d09b3e 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternDestroy"
 HREF="fcpatterndestroy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNEQUAL"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN348"
+NAME="AEN327"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN348"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN351"
+NAME="AEN330"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN352"
+NAME="AEN331"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN361"
+NAME="AEN340"
 ></A
 ><H2
 >Description</H2
@@ -153,18 +153,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN366"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 1c70afb..5b9d0a6 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternEqual"
 HREF="fcpatternequal.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNEQUALSUBSET"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN373"
+NAME="AEN350"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN373"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN376"
+NAME="AEN353"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN377"
+NAME="AEN354"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN388"
+NAME="AEN365"
 ></A
 ><H2
 >Description</H2
@@ -164,18 +164,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN394"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -225,7 +213,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index fabc5a8..85c340b 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternEqualSubset"
 HREF="fcpatternequalsubset.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNFILTER"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN401"
+NAME="AEN376"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN401"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN404"
+NAME="AEN379"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN405"
+NAME="AEN380"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN414"
+NAME="AEN389"
 ></A
 ><H2
 >Description</H2
@@ -166,18 +166,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN421"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -227,7 +215,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index b018426..c9e4b41 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcNameUnparse"
 HREF="fcnameunparse.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCPATTERNFORMAT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN930"
+NAME="AEN905"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN930"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN933"
+NAME="AEN908"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN934"
+NAME="AEN909"
 ></A
 ><TABLE
 BORDER="0"
@@ -127,7 +127,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN943"
+NAME="AEN918"
 ></A
 ><H2
 >Description</H2
@@ -537,14 +537,12 @@ lower-cased and with spaces removed.
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1053"
+NAME="AEN1028"
 ></A
 ><H2
->Version</H2
+>Since</H2
 ><P
->Fontconfig version 2.10.91
-
-           </P
+>version 2.9.0</P
 ></DIV
 ><DIV
 CLASS="NAVFOOTER"
@@ -592,7 +590,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 92d8f19..39e54fb 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternGet"
 HREF="fcpatternget.html"><LINK
@@ -75,15 +75,15 @@ NAME="FCPATTERNGET-TYPE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN631"
+NAME="AEN605"
 ></A
 ><H2
 >Name</H2
->FcPatternGetInteger, FcPatternGetDouble, FcPatternGetString, FcPatternGetMatrix, FcPatternGetCharSet, FcPatternGetBool, FcPatternGetFTFace, FcPatternGetLangSet&nbsp;--&nbsp;Return a typed value from a pattern</DIV
+>FcPatternGetInteger, FcPatternGetDouble, FcPatternGetString, FcPatternGetMatrix, FcPatternGetCharSet, FcPatternGetBool, FcPatternGetFTFace, FcPatternGetLangSet, FcPatternGetRange&nbsp;--&nbsp;Return a typed value from a pattern</DIV
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN641"
+NAME="AEN616"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN642"
+NAME="AEN617"
 ></A
 ><TABLE
 BORDER="0"
@@ -310,6 +310,11 @@ CLASS="PARAMETER"
 ><I
 >n</I
 ></TT
+>, FT_Face *<TT
+CLASS="PARAMETER"
+><I
+>f</I
+></TT
 >);</CODE
 ></P
 ><P
@@ -330,10 +335,45 @@ CLASS="PARAMETER"
 ><I
 >object</I
 ></TT
->, FT_Face *<TT
+>, int <TT
 CLASS="PARAMETER"
 ><I
->f</I
+>n</I
+></TT
+>, FcLangSet **<TT
+CLASS="PARAMETER"
+><I
+>l</I
+></TT
+>);</CODE
+></P
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>FcResult <TT
+CLASS="FUNCTION"
+>FcPatternGetRange</TT
+></CODE
+>(FcPattern *<TT
+CLASS="PARAMETER"
+><I
+>p</I
+></TT
+>, const char *<TT
+CLASS="PARAMETER"
+><I
+>object</I
+></TT
+>, int <TT
+CLASS="PARAMETER"
+><I
+>n</I
+></TT
+>, FcRange **<TT
+CLASS="PARAMETER"
+><I
+>r</I
 ></TT
 >);</CODE
 ></P
@@ -344,7 +384,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN728"
+NAME="AEN718"
 ></A
 ><H2
 >Description</H2
@@ -354,18 +394,11 @@ returned data is of the expected type. They return FcResultTypeMismatch if
 this is not the case.  Note that these (like FcPatternGet) do not make a
 copy of any data structure referenced by the return value.  Use these
 in preference to FcPatternGet to provide compile-time typechecking.
-           </P
-></DIV
-><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN731"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
 
+<TT
+CLASS="FUNCTION"
+>FcPatternGetRange</TT
+> are available since 2.11.91.
            </P
 ></DIV
 ><DIV
@@ -418,7 +451,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 3985f4a..1c38532 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternAdd-Type"
 HREF="fcpatternadd-type.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNGET"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN601"
+NAME="AEN577"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN601"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN604"
+NAME="AEN580"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN605"
+NAME="AEN581"
 ></A
 ><TABLE
 BORDER="0"
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN618"
+NAME="AEN594"
 ></A
 ><H2
 >Description</H2
@@ -171,18 +171,6 @@ within the pattern directly.  Applications must not free this value.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN624"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -232,7 +220,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 15adc3f..54a7035 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternFilter"
 HREF="fcpatternfilter.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNHASH"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN428"
+NAME="AEN401"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN428"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN431"
+NAME="AEN404"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN432"
+NAME="AEN405"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN439"
+NAME="AEN412"
 ></A
 ><H2
 >Description</H2
@@ -139,18 +139,6 @@ equal.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN442"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -200,7 +188,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index e8883d7..87a3679 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternRemove"
 HREF="fcpatternremove.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNPRINT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN838"
+NAME="AEN821"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN838"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN841"
+NAME="AEN824"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN842"
+NAME="AEN825"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN849"
+NAME="AEN832"
 ></A
 ><H2
 >Description</H2
@@ -140,18 +140,6 @@ and debugging.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN852"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -201,7 +189,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index bf8f9bf..aaeac08 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternDuplicate"
 HREF="fcpatternduplicate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNREFERENCE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN305"
+NAME="AEN288"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN305"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN308"
+NAME="AEN291"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN309"
+NAME="AEN292"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN316"
+NAME="AEN299"
 ></A
 ><H2
 >Description</H2
@@ -144,18 +144,6 @@ when the reference count reaches zero.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN320"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
index cd930c1..ba59c47 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcPattern"
-HREF="x102.html#AEN255"><LINK
+HREF="x102.html#AEN241"><LINK
 REL="PREVIOUS"
 TITLE="FcPatternDel"
 HREF="fcpatterndel.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCPATTERNREMOVE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN813"
+NAME="AEN798"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN813"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN816"
+NAME="AEN801"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN817"
+NAME="AEN802"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN828"
+NAME="AEN813"
 ></A
 ><H2
 >Description</H2
@@ -149,18 +149,6 @@ whether the property existed and had a value at that position or not.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN831"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -210,7 +198,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN255"
+HREF="x102.html#AEN241"
 ACCESSKEY="U"
 >Up</A
 ></TD
diff --git a/doc/fontconfig-devel/fcrangecopy.html b/doc/fontconfig-devel/fcrangecopy.html
new file mode 100644 (file)
index 0000000..2f5724a
--- /dev/null
@@ -0,0 +1,223 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcRangeCopy</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcRange"
+HREF="x102.html#AEN2590"><LINK
+REL="PREVIOUS"
+TITLE="FUNCTIONS"
+HREF="x102.html"><LINK
+REL="NEXT"
+TITLE="FcRangeCreateDouble"
+HREF="fcrangecreatedouble.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="x102.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcrangecreatedouble.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCRANGECOPY"
+></A
+>FcRangeCopy</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN2598"
+></A
+><H2
+>Name</H2
+>FcRangeCopy&nbsp;--&nbsp;Copy a range object</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN2601"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2602"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+       </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>FcRange * <TT
+CLASS="FUNCTION"
+>FcRangeCopy</TT
+></CODE
+>(const FcRange *<TT
+CLASS="PARAMETER"
+><I
+>range</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2609"
+></A
+><H2
+>Description</H2
+><P
+><TT
+CLASS="FUNCTION"
+>FcRangeCopy</TT
+> creates a new FcRange object and
+populates it with the contents of <TT
+CLASS="PARAMETER"
+><I
+>range</I
+></TT
+>.
+           </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2614"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.91</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="x102.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcrangecreatedouble.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FUNCTIONS</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN2590"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcRangeCreateDouble</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file
diff --git a/doc/fontconfig-devel/fcrangecreatedouble.html b/doc/fontconfig-devel/fcrangecreatedouble.html
new file mode 100644 (file)
index 0000000..e251852
--- /dev/null
@@ -0,0 +1,223 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcRangeCreateDouble</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcRange"
+HREF="x102.html#AEN2590"><LINK
+REL="PREVIOUS"
+TITLE="FcRangeCopy"
+HREF="fcrangecopy.html"><LINK
+REL="NEXT"
+TITLE="FcRangeCreateInteger"
+HREF="fcrangecreateinteger.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcrangecopy.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcrangecreateinteger.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCRANGECREATEDOUBLE"
+></A
+>FcRangeCreateDouble</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN2622"
+></A
+><H2
+>Name</H2
+>FcRangeCreateDouble&nbsp;--&nbsp;create a range object for double</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN2625"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2626"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+       </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>FcRange * <TT
+CLASS="FUNCTION"
+>FcRangeCreateDouble</TT
+></CODE
+>(double<TT
+CLASS="PARAMETER"
+><I
+>begin</I
+></TT
+>, double<TT
+CLASS="PARAMETER"
+><I
+>end</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2635"
+></A
+><H2
+>Description</H2
+><P
+><TT
+CLASS="FUNCTION"
+>FcRangeCreateDouble</TT
+> creates a new FcRange object with
+double sized value.
+           </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2639"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.91</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcrangecopy.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcrangecreateinteger.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcRangeCopy</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN2590"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcRangeCreateInteger</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file
diff --git a/doc/fontconfig-devel/fcrangecreateinteger.html b/doc/fontconfig-devel/fcrangecreateinteger.html
new file mode 100644 (file)
index 0000000..64a32a7
--- /dev/null
@@ -0,0 +1,223 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcRangeCreateInteger</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcRange"
+HREF="x102.html#AEN2590"><LINK
+REL="PREVIOUS"
+TITLE="FcRangeCreateDouble"
+HREF="fcrangecreatedouble.html"><LINK
+REL="NEXT"
+TITLE="FcRangeDestroy"
+HREF="fcrangedestroy.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcrangecreatedouble.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcrangedestroy.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCRANGECREATEINTEGER"
+></A
+>FcRangeCreateInteger</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN2647"
+></A
+><H2
+>Name</H2
+>FcRangeCreateInteger&nbsp;--&nbsp;create a range object for integer</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN2650"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2651"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+       </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>FcRange * <TT
+CLASS="FUNCTION"
+>FcRangeCreateInteger</TT
+></CODE
+>(int<TT
+CLASS="PARAMETER"
+><I
+>begin</I
+></TT
+>, int<TT
+CLASS="PARAMETER"
+><I
+>end</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2660"
+></A
+><H2
+>Description</H2
+><P
+><TT
+CLASS="FUNCTION"
+>FcRangeCreateInteger</TT
+> creates a new FcRange object with
+integer sized value.
+           </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2664"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.91</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcrangecreatedouble.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcrangedestroy.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcRangeCreateDouble</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN2590"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcRangeDestroy</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file
diff --git a/doc/fontconfig-devel/fcrangedestroy.html b/doc/fontconfig-devel/fcrangedestroy.html
new file mode 100644 (file)
index 0000000..848bc5f
--- /dev/null
@@ -0,0 +1,218 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcRangeDestroy</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcRange"
+HREF="x102.html#AEN2590"><LINK
+REL="PREVIOUS"
+TITLE="FcRangeCreateInteger"
+HREF="fcrangecreateinteger.html"><LINK
+REL="NEXT"
+TITLE="FcRangeGetDouble"
+HREF="fcrangegetdouble.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcrangecreateinteger.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcrangegetdouble.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCRANGEDESTROY"
+></A
+>FcRangeDestroy</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN2672"
+></A
+><H2
+>Name</H2
+>FcRangeDestroy&nbsp;--&nbsp;destroy a range object</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN2675"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2676"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+       </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>void <TT
+CLASS="FUNCTION"
+>FcRangeDestroy</TT
+></CODE
+>(FcRange *<TT
+CLASS="PARAMETER"
+><I
+>range</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2683"
+></A
+><H2
+>Description</H2
+><P
+><TT
+CLASS="FUNCTION"
+>FcRangeDestroy</TT
+> destroys a FcRange object, freeing
+all memory associated with it.
+           </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2687"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.91</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcrangecreateinteger.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcrangegetdouble.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcRangeCreateInteger</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN2590"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcRangeGetDouble</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file
diff --git a/doc/fontconfig-devel/fcrangegetdouble.html b/doc/fontconfig-devel/fcrangegetdouble.html
new file mode 100644 (file)
index 0000000..7e831e5
--- /dev/null
@@ -0,0 +1,223 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcRangeGetDouble</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcRange"
+HREF="x102.html#AEN2590"><LINK
+REL="PREVIOUS"
+TITLE="FcRangeDestroy"
+HREF="fcrangedestroy.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcrangedestroy.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+>&nbsp;</TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCRANGEGETDOUBLE"
+></A
+>FcRangeGetDouble</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN2695"
+></A
+><H2
+>Name</H2
+>FcRangeGetDouble&nbsp;--&nbsp;Get the range in double</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN2698"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN2699"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+       </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>FcBool <TT
+CLASS="FUNCTION"
+>FcRangeGetDouble</TT
+></CODE
+>(const FcRange *<TT
+CLASS="PARAMETER"
+><I
+>range</I
+></TT
+>, double *<TT
+CLASS="PARAMETER"
+><I
+>begin</I
+></TT
+>, double *<TT
+CLASS="PARAMETER"
+><I
+>end</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2710"
+></A
+><H2
+>Description</H2
+><P
+>Returns in <TT
+CLASS="PARAMETER"
+><I
+>begin</I
+></TT
+> and <TT
+CLASS="PARAMETER"
+><I
+>end</I
+></TT
+> as the range.
+           </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2715"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.91</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcrangedestroy.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>&nbsp;</TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcRangeDestroy</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN2590"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>&nbsp;</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file
index f4644f4..a96bace 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcStrDirname"
 HREF="fcstrdirname.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCSTRBASENAME"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4972"
+NAME="AEN4977"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN4972"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4975"
+NAME="AEN4980"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4976"
+NAME="AEN4981"
 ></A
 ><TABLE
 BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4983"
+NAME="AEN4988"
 ></A
 ><H2
 >Description</H2
@@ -138,18 +138,6 @@ be freed when no longer needed.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4987"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -195,7 +183,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 544e9dc..f216b85 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcStrCopyFilename"
 HREF="fcstrcopyfilename.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRCMP"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4800"
+NAME="AEN4819"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4800"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4803"
+NAME="AEN4822"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4804"
+NAME="AEN4823"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4813"
+NAME="AEN4832"
 ></A
 ><H2
 >Description</H2
@@ -154,18 +154,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4818"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -215,7 +203,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 3749804..c2b2aaa 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcStrCmp"
 HREF="fcstrcmp.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRCMPIGNORECASE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4825"
+NAME="AEN4842"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4825"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4828"
+NAME="AEN4845"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4829"
+NAME="AEN4846"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4838"
+NAME="AEN4855"
 ></A
 ><H2
 >Description</H2
@@ -155,18 +155,6 @@ case-insensitive for all proper UTF-8 encoded strings.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4843"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 16563c1..47bb8dc 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcToLower"
 HREF="fctolower.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRCOPY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4731"
+NAME="AEN4756"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4731"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4734"
+NAME="AEN4759"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4735"
+NAME="AEN4760"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4742"
+NAME="AEN4767"
 ></A
 ><H2
 >Description</H2
@@ -148,18 +148,6 @@ available on every platform.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4747"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -209,7 +197,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index d7cd2c7..26c222b 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcStrDowncase"
 HREF="fcstrdowncase.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRCOPYFILENAME"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4776"
+NAME="AEN4797"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4776"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4779"
+NAME="AEN4800"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4780"
+NAME="AEN4801"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4787"
+NAME="AEN4808"
 ></A
 ><H2
 >Description</H2
@@ -156,18 +156,6 @@ CLASS="FUNCTION"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4793"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -217,7 +205,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index a42a158..88a1316 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcStrFree"
 HREF="fcstrfree.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRDIRNAME"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4950"
+NAME="AEN4957"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4950"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4953"
+NAME="AEN4960"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4954"
+NAME="AEN4961"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4961"
+NAME="AEN4968"
 ></A
 ><H2
 >Description</H2
@@ -145,18 +145,6 @@ needed.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4965"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -206,7 +194,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index bbae19f..5cf426a 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcStrCopy"
 HREF="fcstrcopy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRDOWNCASE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4754"
+NAME="AEN4777"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4754"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4757"
+NAME="AEN4780"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4758"
+NAME="AEN4781"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4765"
+NAME="AEN4788"
 ></A
 ><H2
 >Description</H2
@@ -144,18 +144,6 @@ letters to lower case and returns the allocated buffer.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4769"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 4831e2e..c39b2c6 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcStrPlus"
 HREF="fcstrplus.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRFREE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4929"
+NAME="AEN4938"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4929"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4932"
+NAME="AEN4941"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4933"
+NAME="AEN4942"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4940"
+NAME="AEN4949"
 ></A
 ><H2
 >Description</H2
@@ -139,18 +139,6 @@ strings within the fontconfig library.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4943"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -200,7 +188,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index cce7d0d..71c03fc 100644 (file)
@@ -10,13 +10,13 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
 REL="PREVIOUS"
 TITLE="FcStrSetDestroy"
 HREF="fcstrsetdestroy.html"><LINK
 REL="NEXT"
-TITLE="FcStrListNext"
-HREF="fcstrlistnext.html"></HEAD
+TITLE="FcStrListFirst"
+HREF="fcstrlistfirst.html"></HEAD
 ><BODY
 CLASS="REFENTRY"
 BGCOLOR="#FFFFFF"
@@ -58,7 +58,7 @@ WIDTH="10%"
 ALIGN="right"
 VALIGN="bottom"
 ><A
-HREF="fcstrlistnext.html"
+HREF="fcstrlistfirst.html"
 ACCESSKEY="N"
 >Next &#62;&#62;&#62;</A
 ></TD
@@ -75,7 +75,7 @@ NAME="FCSTRLISTCREATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4441"
+NAME="AEN4465"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4441"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4444"
+NAME="AEN4468"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4445"
+NAME="AEN4469"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4452"
+NAME="AEN4476"
 ></A
 ><H2
 >Description</H2
@@ -143,18 +143,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4456"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -188,7 +176,7 @@ WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
 ><A
-HREF="fcstrlistnext.html"
+HREF="fcstrlistfirst.html"
 ACCESSKEY="N"
 >Next &#62;&#62;&#62;</A
 ></TD
@@ -204,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
 ACCESSKEY="U"
 >Up</A
 ></TD
@@ -212,7 +200,7 @@ ACCESSKEY="U"
 WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
->FcStrListNext</TD
+>FcStrListFirst</TD
 ></TR
 ></TABLE
 ></DIV
index 786726b..f4131bb 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
 REL="PREVIOUS"
 TITLE="FcStrListNext"
 HREF="fcstrlistnext.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCSTRLISTDONE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4485"
+NAME="AEN4528"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN4485"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4488"
+NAME="AEN4531"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4489"
+NAME="AEN4532"
 ></A
 ><TABLE
 BORDER="0"
@@ -122,7 +122,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4496"
+NAME="AEN4539"
 ></A
 ><H2
 >Description</H2
@@ -136,18 +136,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4500"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -193,7 +181,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
 ACCESSKEY="U"
 >Up</A
 ></TD
diff --git a/doc/fontconfig-devel/fcstrlistfirst.html b/doc/fontconfig-devel/fcstrlistfirst.html
new file mode 100644 (file)
index 0000000..05c7d53
--- /dev/null
@@ -0,0 +1,219 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcStrListFirst</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcStrSet and FcStrList"
+HREF="x102.html#AEN4302"><LINK
+REL="PREVIOUS"
+TITLE="FcStrListCreate"
+HREF="fcstrlistcreate.html"><LINK
+REL="NEXT"
+TITLE="FcStrListNext"
+HREF="fcstrlistnext.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcstrlistcreate.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcstrlistnext.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCSTRLISTFIRST"
+></A
+>FcStrListFirst</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN4485"
+></A
+><H2
+>Name</H2
+>FcStrListFirst&nbsp;--&nbsp;get first string in iteration</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN4488"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN4489"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+       </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>void <TT
+CLASS="FUNCTION"
+>FcStrListFirst</TT
+></CODE
+>(FcStrList *<TT
+CLASS="PARAMETER"
+><I
+>list</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN4496"
+></A
+><H2
+>Description</H2
+><P
+>Returns the first string in <TT
+CLASS="PARAMETER"
+><I
+>list</I
+></TT
+>.
+           </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN4500"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.0</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcstrlistcreate.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcstrlistnext.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcStrListCreate</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN4302"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcStrListNext</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file
index d96d1f8..30f8159 100644 (file)
@@ -10,10 +10,10 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
 REL="PREVIOUS"
-TITLE="FcStrListCreate"
-HREF="fcstrlistcreate.html"><LINK
+TITLE="FcStrListFirst"
+HREF="fcstrlistfirst.html"><LINK
 REL="NEXT"
 TITLE="FcStrListDone"
 HREF="fcstrlistdone.html"></HEAD
@@ -44,7 +44,7 @@ WIDTH="10%"
 ALIGN="left"
 VALIGN="bottom"
 ><A
-HREF="fcstrlistcreate.html"
+HREF="fcstrlistfirst.html"
 ACCESSKEY="P"
 >&#60;&#60;&#60; Previous</A
 ></TD
@@ -75,7 +75,7 @@ NAME="FCSTRLISTNEXT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4463"
+NAME="AEN4508"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4463"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4466"
+NAME="AEN4511"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4467"
+NAME="AEN4512"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4474"
+NAME="AEN4519"
 ></A
 ><H2
 >Description</H2
@@ -137,24 +137,12 @@ NAME="AEN4474"
 >Returns the next string in <TT
 CLASS="PARAMETER"
 ><I
->set</I
+>list</I
 ></TT
 >.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4478"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -170,7 +158,7 @@ WIDTH="33%"
 ALIGN="left"
 VALIGN="top"
 ><A
-HREF="fcstrlistcreate.html"
+HREF="fcstrlistfirst.html"
 ACCESSKEY="P"
 >&#60;&#60;&#60; Previous</A
 ></TD
@@ -198,13 +186,13 @@ ACCESSKEY="N"
 WIDTH="33%"
 ALIGN="left"
 VALIGN="top"
->FcStrListCreate</TD
+>FcStrListFirst</TD
 ><TD
 WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
 ACCESSKEY="U"
 >Up</A
 ></TD
index c22acff..55c5487 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcStrStrIgnoreCase"
 HREF="fcstrstrignorecase.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRPLUS"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4904"
+NAME="AEN4915"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4904"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4907"
+NAME="AEN4918"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4908"
+NAME="AEN4919"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4917"
+NAME="AEN4928"
 ></A
 ><H2
 >Description</H2
@@ -155,18 +155,6 @@ new string.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4922"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 698d86a..ff430a6 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
 REL="PREVIOUS"
 TITLE="FcStrSetEqual"
 HREF="fcstrsetequal.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETADD"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4343"
+NAME="AEN4375"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4343"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4346"
+NAME="AEN4378"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4347"
+NAME="AEN4379"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4356"
+NAME="AEN4388"
 ></A
 ><H2
 >Description</H2
@@ -153,18 +153,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4361"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -214,7 +202,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
 ACCESSKEY="U"
 >Up</A
 ></TD
index bca1851..dd45145 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
 REL="PREVIOUS"
 TITLE="FcStrSetAdd"
 HREF="fcstrsetadd.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETADDFILENAME"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4368"
+NAME="AEN4398"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4368"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4371"
+NAME="AEN4401"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4372"
+NAME="AEN4402"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4381"
+NAME="AEN4411"
 ></A
 ><H2
 >Description</H2
@@ -155,18 +155,6 @@ with the value of the HOME environment variable.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4386"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 1054818..efd1e03 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETCREATE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4272"
+NAME="AEN4310"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4272"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4275"
+NAME="AEN4313"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4276"
+NAME="AEN4314"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4283"
+NAME="AEN4321"
 ></A
 ><H2
 >Description</H2
@@ -138,18 +138,6 @@ NAME="AEN4283"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4286"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -199,7 +187,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
 ACCESSKEY="U"
 >Up</A
 ></TD
index c60d338..aae3eda 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
 REL="PREVIOUS"
 TITLE="FcStrSetAddFilename"
 HREF="fcstrsetaddfilename.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETDEL"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4393"
+NAME="AEN4421"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4393"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4396"
+NAME="AEN4424"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4397"
+NAME="AEN4425"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4406"
+NAME="AEN4434"
 ></A
 ><H2
 >Description</H2
@@ -159,18 +159,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4412"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -220,7 +208,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 074daee..9ebe87f 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
 REL="PREVIOUS"
 TITLE="FcStrSetDel"
 HREF="fcstrsetdel.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETDESTROY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4419"
+NAME="AEN4445"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4419"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4422"
+NAME="AEN4448"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4423"
+NAME="AEN4449"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4430"
+NAME="AEN4456"
 ></A
 ><H2
 >Description</H2
@@ -143,18 +143,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4434"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -204,7 +192,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
 ACCESSKEY="U"
 >Up</A
 ></TD
index d4e2849..72ffd79 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
 REL="PREVIOUS"
 TITLE="FcStrSetMember"
 HREF="fcstrsetmember.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETEQUAL"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4318"
+NAME="AEN4352"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4318"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4321"
+NAME="AEN4355"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4322"
+NAME="AEN4356"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4331"
+NAME="AEN4365"
 ></A
 ><H2
 >Description</H2
@@ -155,18 +155,6 @@ sets is not considered.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4336"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 0728d37..080998b 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcStrSet and FcStrList"
-HREF="x102.html#AEN4265"><LINK
+HREF="x102.html#AEN4302"><LINK
 REL="PREVIOUS"
 TITLE="FcStrSetCreate"
 HREF="fcstrsetcreate.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSETMEMBER"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4293"
+NAME="AEN4329"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4293"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4296"
+NAME="AEN4332"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4297"
+NAME="AEN4333"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4306"
+NAME="AEN4342"
 ></A
 ><H2
 >Description</H2
@@ -154,18 +154,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4311"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -215,7 +203,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4265"
+HREF="x102.html#AEN4302"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 14b4a82..14ea9c6 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcStrCmpIgnoreCase"
 HREF="fcstrcmpignorecase.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSTR"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4850"
+NAME="AEN4865"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4850"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4853"
+NAME="AEN4868"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4854"
+NAME="AEN4869"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4863"
+NAME="AEN4878"
 ></A
 ><H2
 >Description</H2
@@ -166,18 +166,6 @@ with UTF8 encoded strings.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4870"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -227,7 +215,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 1b81592..0e9ed8d 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcStrStr"
 HREF="fcstrstr.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCSTRSTRIGNORECASE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4877"
+NAME="AEN4890"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4877"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4880"
+NAME="AEN4893"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4881"
+NAME="AEN4894"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4890"
+NAME="AEN4903"
 ></A
 ><H2
 >Description</H2
@@ -166,18 +166,6 @@ This test is case-insensitive for all proper UTF-8 encoded strings.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4897"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -227,7 +215,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index bcb690b..54b4a0b 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcIsUpper"
 HREF="fcisupper.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCTOLOWER"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4709"
+NAME="AEN4736"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4709"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4712"
+NAME="AEN4739"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4713"
+NAME="AEN4740"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4720"
+NAME="AEN4747"
 ></A
 ><H2
 >Description</H2
@@ -144,18 +144,6 @@ equivalent lower case letter.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4724"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index bbc47d9..b4cc399 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcUtf8ToUcs4"
 HREF="fcutf8toucs4.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCUCS4TOUTF8"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4539"
+NAME="AEN4578"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4539"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4542"
+NAME="AEN4581"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4543"
+NAME="AEN4582"
 ></A
 ><TABLE
 BORDER="0"
@@ -134,7 +134,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4552"
+NAME="AEN4591"
 ></A
 ><H2
 >Description</H2
@@ -155,18 +155,6 @@ the char.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4557"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -216,7 +204,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index ad07bd6..c555b01 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcUtf16ToUcs4"
 HREF="fcutf16toucs4.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCUTF16LEN"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4629"
+NAME="AEN4662"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4629"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4632"
+NAME="AEN4665"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4633"
+NAME="AEN4666"
 ></A
 ><TABLE
 BORDER="0"
@@ -149,7 +149,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4648"
+NAME="AEN4681"
 ></A
 ><H2
 >Description</H2
@@ -200,18 +200,6 @@ string.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4658"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -261,7 +249,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index d15a5a3..e55ab9b 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcUtf8Len"
 HREF="fcutf8len.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCUTF16TOUCS4"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4596"
+NAME="AEN4631"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4596"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4599"
+NAME="AEN4634"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4600"
+NAME="AEN4635"
 ></A
 ><TABLE
 BORDER="0"
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4613"
+NAME="AEN4648"
 ></A
 ><H2
 >Description</H2
@@ -187,18 +187,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4622"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -248,7 +236,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index c1001a8..7eaea16 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FcUcs4ToUtf8"
 HREF="fcucs4toutf8.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCUTF8LEN"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4564"
+NAME="AEN4601"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4564"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4567"
+NAME="AEN4604"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4568"
+NAME="AEN4605"
 ></A
 ><TABLE
 BORDER="0"
@@ -144,7 +144,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4581"
+NAME="AEN4618"
 ></A
 ><H2
 >Description</H2
@@ -183,18 +183,6 @@ well-formed UTF8 string.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4589"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -244,7 +232,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index df42368..359b2b2 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="String utilities"
-HREF="x102.html#AEN4503"><LINK
+HREF="x102.html#AEN4543"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCUTF8TOUCS4"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN4510"
+NAME="AEN4551"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN4510"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN4513"
+NAME="AEN4554"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN4514"
+NAME="AEN4555"
 ></A
 ><TABLE
 BORDER="0"
@@ -139,7 +139,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN4525"
+NAME="AEN4566"
 ></A
 ><H2
 >Description</H2
@@ -171,18 +171,6 @@ CLASS="PARAMETER"
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN4532"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -232,7 +220,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN4503"
+HREF="x102.html#AEN4543"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 8c1dc44..ff74950 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcValue"
-HREF="x102.html#AEN1522"><LINK
+HREF="x102.html#AEN1463"><LINK
 REL="PREVIOUS"
 TITLE="FUNCTIONS"
 HREF="x102.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCVALUEDESTROY"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1530"
+NAME="AEN1472"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1530"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1533"
+NAME="AEN1475"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1534"
+NAME="AEN1476"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1541"
+NAME="AEN1483"
 ></A
 ><H2
 >Description</H2
@@ -144,18 +144,6 @@ FcTypeMatrix and FcTypeCharSet reference memory, the other types do not.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1545"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -205,7 +193,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1522"
+HREF="x102.html#AEN1463"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 7cb959d..33f60a2 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcValue"
-HREF="x102.html#AEN1522"><LINK
+HREF="x102.html#AEN1463"><LINK
 REL="PREVIOUS"
 TITLE="FcValuePrint"
 HREF="fcvalueprint.html"></HEAD
@@ -68,7 +68,7 @@ NAME="FCVALUEEQUAL"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1597"
+NAME="AEN1533"
 ></A
 ><H2
 >Name</H2
@@ -76,7 +76,7 @@ NAME="AEN1597"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1600"
+NAME="AEN1536"
 ></A
 ><H2
 >Synopsis</H2
@@ -85,7 +85,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1601"
+NAME="AEN1537"
 ></A
 ><TABLE
 BORDER="0"
@@ -127,7 +127,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1610"
+NAME="AEN1546"
 ></A
 ><H2
 >Description</H2
@@ -138,18 +138,6 @@ compared ignoring case.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1613"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -195,7 +183,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1522"
+HREF="x102.html#AEN1463"
 ACCESSKEY="U"
 >Up</A
 ></TD
index a399bc4..3a4fdf6 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcValue"
-HREF="x102.html#AEN1522"><LINK
+HREF="x102.html#AEN1463"><LINK
 REL="PREVIOUS"
 TITLE="FcValueSave"
 HREF="fcvaluesave.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCVALUEPRINT"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1575"
+NAME="AEN1513"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1575"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1578"
+NAME="AEN1516"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1579"
+NAME="AEN1517"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1586"
+NAME="AEN1524"
 ></A
 ><H2
 >Description</H2
@@ -145,18 +145,6 @@ specification as it may change in the future.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1590"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -206,7 +194,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1522"
+HREF="x102.html#AEN1463"
 ACCESSKEY="U"
 >Up</A
 ></TD
index 37dea19..dcf6751 100644 (file)
@@ -10,7 +10,7 @@ REL="HOME"
 HREF="t1.html"><LINK
 REL="UP"
 TITLE="FcValue"
-HREF="x102.html#AEN1522"><LINK
+HREF="x102.html#AEN1463"><LINK
 REL="PREVIOUS"
 TITLE="FcValueDestroy"
 HREF="fcvaluedestroy.html"><LINK
@@ -75,7 +75,7 @@ NAME="FCVALUESAVE"
 ><DIV
 CLASS="REFNAMEDIV"
 ><A
-NAME="AEN1552"
+NAME="AEN1492"
 ></A
 ><H2
 >Name</H2
@@ -83,7 +83,7 @@ NAME="AEN1552"
 ><DIV
 CLASS="REFSYNOPSISDIV"
 ><A
-NAME="AEN1555"
+NAME="AEN1495"
 ></A
 ><H2
 >Synopsis</H2
@@ -92,7 +92,7 @@ CLASS="FUNCSYNOPSIS"
 ><P
 ></P
 ><A
-NAME="AEN1556"
+NAME="AEN1496"
 ></A
 ><TABLE
 BORDER="0"
@@ -129,7 +129,7 @@ CLASS="PARAMETER"
 ><DIV
 CLASS="REFSECT1"
 ><A
-NAME="AEN1563"
+NAME="AEN1503"
 ></A
 ><H2
 >Description</H2
@@ -149,18 +149,6 @@ may be safely destroyed without harming the new value.
            </P
 ></DIV
 ><DIV
-CLASS="REFSECT1"
-><A
-NAME="AEN1568"
-></A
-><H2
->Version</H2
-><P
->Fontconfig version 2.10.91
-
-           </P
-></DIV
-><DIV
 CLASS="NAVFOOTER"
 ><HR
 ALIGN="LEFT"
@@ -210,7 +198,7 @@ WIDTH="34%"
 ALIGN="center"
 VALIGN="top"
 ><A
-HREF="x102.html#AEN1522"
+HREF="x102.html#AEN1463"
 ACCESSKEY="U"
 >Up</A
 ></TD
diff --git a/doc/fontconfig-devel/fcweightfromopentype.html b/doc/fontconfig-devel/fcweightfromopentype.html
new file mode 100644 (file)
index 0000000..fca476d
--- /dev/null
@@ -0,0 +1,223 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcWeightFromOpenType</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcWeight"
+HREF="x102.html#AEN3573"><LINK
+REL="PREVIOUS"
+TITLE="FUNCTIONS"
+HREF="x102.html"><LINK
+REL="NEXT"
+TITLE="FcWeightToOpenType"
+HREF="fcweighttoopentype.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="x102.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="fcweighttoopentype.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCWEIGHTFROMOPENTYPE"
+></A
+>FcWeightFromOpenType</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN3581"
+></A
+><H2
+>Name</H2
+>FcWeightFromOpenType&nbsp;--&nbsp;Convert from OpenType weight values to fontconfig ones</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN3584"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3585"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+       </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>int <TT
+CLASS="FUNCTION"
+>FcWeightFromOpenType</TT
+></CODE
+>(int<TT
+CLASS="PARAMETER"
+><I
+>ot_weight</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3592"
+></A
+><H2
+>Description</H2
+><P
+><TT
+CLASS="FUNCTION"
+>FcWeightFromOpenType</TT
+> returns an integer value
+to use with FC_WEIGHT, from an integer in the 1..1000 range, resembling
+the numbers from OpenType specification's OS/2 usWeight numbers, which
+are also similar to CSS font-weight numbers.  If input is negative,
+zero, or greater than 1000, returns -1.  This function linearly interpolates
+between various FC_WEIGHT_* constants.  As such, the returned value does not
+necessarily match any of the predefined constants.
+           </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3596"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.91</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="x102.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="fcweighttoopentype.html"
+ACCESSKEY="N"
+>Next &#62;&#62;&#62;</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FUNCTIONS</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN3573"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>FcWeightToOpenType</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file
diff --git a/doc/fontconfig-devel/fcweighttoopentype.html b/doc/fontconfig-devel/fcweighttoopentype.html
new file mode 100644 (file)
index 0000000..acc66fb
--- /dev/null
@@ -0,0 +1,212 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<HTML
+><HEAD
+><TITLE
+>FcWeightToOpenType</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
+REL="HOME"
+HREF="t1.html"><LINK
+REL="UP"
+TITLE="FcWeight"
+HREF="x102.html#AEN3573"><LINK
+REL="PREVIOUS"
+TITLE="FcWeightFromOpenType"
+HREF="fcweightfromopentype.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+LINK="#0000FF"
+VLINK="#840084"
+ALINK="#0000FF"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+SUMMARY="Header navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+></TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="fcweightfromopentype.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+>&nbsp;</TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="FCWEIGHTTOOPENTYPE"
+></A
+>FcWeightToOpenType</H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN3604"
+></A
+><H2
+>Name</H2
+>FcWeightToOpenType&nbsp;--&nbsp;Convert from fontconfig weight values to OpenType ones</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN3607"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><P
+></P
+><A
+NAME="AEN3608"
+></A
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include &#60;fontconfig/fontconfig.h&#62;
+       </PRE
+></TD
+></TR
+></TABLE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>int <TT
+CLASS="FUNCTION"
+>FcWeightToOpenType</TT
+></CODE
+>(int<TT
+CLASS="PARAMETER"
+><I
+>ot_weight</I
+></TT
+>);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3615"
+></A
+><H2
+>Description</H2
+><P
+><TT
+CLASS="FUNCTION"
+>FcWeightToOpenType</TT
+> is the inverse of
+<TT
+CLASS="FUNCTION"
+>FcWeightFromOpenType</TT
+>.  If the input is less than
+FC_WEIGHT_THIN or greater than FC_WEIGHT_EXTRABLACK, returns -1.  Otherwise
+returns a number in the range 1 to 1000.
+           </P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN3620"
+></A
+><H2
+>Since</H2
+><P
+>version 2.11.91</P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+SUMMARY="Footer navigation table"
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="fcweightfromopentype.html"
+ACCESSKEY="P"
+>&#60;&#60;&#60; Previous</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="t1.html"
+ACCESSKEY="H"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>&nbsp;</TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>FcWeightFromOpenType</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="x102.html#AEN3573"
+ACCESSKEY="U"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>&nbsp;</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file
index 45a24ef..74f0a00 100644 (file)
@@ -2,7 +2,7 @@
 <HTML
 ><HEAD
 ><TITLE
->Fontconfig Developers Reference, Version 2.10.91
+>Fontconfig Developers Reference, Version 2.11.93
  </TITLE
 ><META
 NAME="GENERATOR"
@@ -25,7 +25,7 @@ CLASS="TITLEPAGE"
 CLASS="TITLE"
 ><A
 NAME="AEN1"
->Fontconfig Developers Reference, Version 2.10.91</A
+>Fontconfig Developers Reference, Version 2.11.93</A
 ></H1
 ><A
 HREF="ln12.html"
index fd5af5a..d8fd2ef 100644 (file)
@@ -130,7 +130,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN255"
+NAME="AEN241"
 >FcPattern</A
 ></H2
 ><DIV
@@ -257,7 +257,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN1056"
+NAME="AEN1031"
 >FcFontSet</A
 ></H2
 ><DIV
@@ -319,7 +319,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN1283"
+NAME="AEN1242"
 >FcObjectSet</A
 ></H2
 ><DIV
@@ -362,7 +362,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN1393"
+NAME="AEN1344"
 >FreeType specific functions</A
 ></H2
 ><DIV
@@ -410,7 +410,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN1522"
+NAME="AEN1463"
 >FcValue</A
 ></H2
 ><DIV
@@ -458,7 +458,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN1616"
+NAME="AEN1549"
 >FcCharSet</A
 ></H2
 ><DIV
@@ -578,7 +578,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN2094"
+NAME="AEN2016"
 >FcLangSet</A
 ></H2
 ><DIV
@@ -655,6 +655,11 @@ HREF="fcgetdefaultlangs.html"
 >&nbsp;--&nbsp;Get the default languages list</DT
 ><DT
 ><A
+HREF="fclangsetgetlangs.html"
+>FcLangSetGetLangs</A
+>&nbsp;--&nbsp;get the list of languages in the langset</DT
+><DT
+><A
 HREF="fcgetlangs.html"
 >FcGetLangs</A
 >&nbsp;--&nbsp;Get list of languages</DT
@@ -683,7 +688,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN2485"
+NAME="AEN2410"
 >FcMatrix</A
 ></H2
 ><DIV
@@ -739,7 +744,53 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN2679"
+NAME="AEN2590"
+>FcRange</A
+></H2
+><DIV
+CLASS="TOC"
+><DL
+><DT
+><B
+>Table of Contents</B
+></DT
+><DT
+><A
+HREF="fcrangecopy.html"
+>FcRangeCopy</A
+>&nbsp;--&nbsp;Copy a range object</DT
+><DT
+><A
+HREF="fcrangecreatedouble.html"
+>FcRangeCreateDouble</A
+>&nbsp;--&nbsp;create a range object for double</DT
+><DT
+><A
+HREF="fcrangecreateinteger.html"
+>FcRangeCreateInteger</A
+>&nbsp;--&nbsp;create a range object for integer</DT
+><DT
+><A
+HREF="fcrangedestroy.html"
+>FcRangeDestroy</A
+>&nbsp;--&nbsp;destroy a range object</DT
+><DT
+><A
+HREF="fcrangegetdouble.html"
+>FcRangeGetDouble</A
+>&nbsp;--&nbsp;Get the range in double</DT
+></DL
+></DIV
+><P
+>An FcRange holds two variables to indicate a range in between.
+    </P
+></DIV
+><DIV
+CLASS="SECT2"
+><H2
+CLASS="SECT2"
+><A
+NAME="AEN2718"
 >FcConfig</A
 ></H2
 ><DIV
@@ -894,6 +945,16 @@ HREF="fcconfigfilename.html"
 HREF="fcconfigparseandload.html"
 >FcConfigParseAndLoad</A
 >&nbsp;--&nbsp;load a configuration file</DT
+><DT
+><A
+HREF="fcconfiggetsysroot.html"
+>FcConfigGetSysRoot</A
+>&nbsp;--&nbsp;Obtain the system root directory</DT
+><DT
+><A
+HREF="fcconfigsetsysroot.html"
+>FcConfigSetSysRoot</A
+>&nbsp;--&nbsp;Set the system root directory</DT
 ></DL
 ></DIV
 ><P
@@ -907,7 +968,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN3392"
+NAME="AEN3420"
 >FcObjectType</A
 ></H2
 ><DIV
@@ -944,7 +1005,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN3463"
+NAME="AEN3485"
 >FcConstant</A
 ></H2
 ><DIV
@@ -985,7 +1046,38 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN3559"
+NAME="AEN3573"
+>FcWeight</A
+></H2
+><DIV
+CLASS="TOC"
+><DL
+><DT
+><B
+>Table of Contents</B
+></DT
+><DT
+><A
+HREF="fcweightfromopentype.html"
+>FcWeightFromOpenType</A
+>&nbsp;--&nbsp;Convert from OpenType weight values to fontconfig ones</DT
+><DT
+><A
+HREF="fcweighttoopentype.html"
+>FcWeightToOpenType</A
+>&nbsp;--&nbsp;Convert from fontconfig weight values to OpenType ones</DT
+></DL
+></DIV
+><P
+>Maps weights to and from OpenType weights.
+    </P
+></DIV
+><DIV
+CLASS="SECT2"
+><H2
+CLASS="SECT2"
+><A
+NAME="AEN3623"
 >FcBlanks</A
 ></H2
 ><DIV
@@ -1030,7 +1122,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN3650"
+NAME="AEN3706"
 >FcAtomic</A
 ></H2
 ><DIV
@@ -1093,7 +1185,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN3827"
+NAME="AEN3867"
 >File and Directory routines</A
 ></H2
 ><DIV
@@ -1145,6 +1237,11 @@ HREF="fcdircacheload.html"
 >&nbsp;--&nbsp;load a directory cache</DT
 ><DT
 ><A
+HREF="fcdircacherescan.html"
+>FcDirCacheRescan</A
+>&nbsp;--&nbsp;Re-scan a directory cache</DT
+><DT
+><A
 HREF="fcdircacheread.html"
 >FcDirCacheRead</A
 >&nbsp;--&nbsp;read or construct a directory cache</DT
@@ -1170,7 +1267,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN4100"
+NAME="AEN4145"
 >FcCache routines</A
 ></H2
 ><DIV
@@ -1259,7 +1356,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN4265"
+NAME="AEN4302"
 >FcStrSet and FcStrList</A
 ></H2
 ><DIV
@@ -1311,6 +1408,11 @@ HREF="fcstrlistcreate.html"
 >&nbsp;--&nbsp;create a string iterator</DT
 ><DT
 ><A
+HREF="fcstrlistfirst.html"
+>FcStrListFirst</A
+>&nbsp;--&nbsp;get first string in iteration</DT
+><DT
+><A
 HREF="fcstrlistnext.html"
 >FcStrListNext</A
 >&nbsp;--&nbsp;get next string in iteration</DT
@@ -1331,7 +1433,7 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="AEN4503"
+NAME="AEN4543"
 >String utilities</A
 ></H2
 ><DIV
index 83ca206..b7ecebe 100644 (file)
@@ -175,11 +175,12 @@ CLASS="PROGRAMLISTING"
                                                   the file
     ftface         FC_FT_FACE             FT_Face Use the specified FreeType
                                                   face object
-    rasterizer     FC_RASTERIZER          String  Which rasterizer is in use
+    rasterizer     FC_RASTERIZER          String  Which rasterizer is in use (deprecated)
     outline        FC_OUTLINE             Bool    Whether the glyphs are outlines
     scalable       FC_SCALABLE            Bool    Whether glyphs can be scaled
     scale          FC_SCALE               Double  Scale factor for point-&#62;pixel
                                                   conversions
+    color          FC_COLOR               Bool    Whether any glyphs have color
     dpi            FC_DPI                 Double  Target dots per inch
     rgba           FC_RGBA                Int     unknown, rgb, bgr, vrgb,
                                                   vbgr, none - subpixel geometry
@@ -193,11 +194,22 @@ CLASS="PROGRAMLISTING"
     fontversion    FC_FONTVERSION         Int     Version number of the font
     capability     FC_CAPABILITY          String  List of layout capabilities in
                                                   the font
+    fontformat     FC_FONTFORMAT          String  String name of the font format
     embolden       FC_EMBOLDEN            Bool    Rasterizer should
                                                   synthetically embolden the font
+    embeddedbitmap FC_EMBEDDED_BITMAP     Bool    Use the embedded bitmap instead
+                                                  of the outline
+    decorative     FC_DECORATIVE          Bool    Whether the style is a decorative
+                                                  variant
+    fontfeatures   FC_FONT_FEATURES       String  List of extra feature tags in
+                                                  OpenType to be enabled
     namelang       FC_NAMELANG            String  Language name to be used for the
                                                   default value of familylang,
                                                   stylelang and fullnamelang
+    prgname        FC_PRGNAME             String  Name of the running program
+    hash           FC_HASH                String  SHA256 hash value of the font data
+                                                  with "sha256:" prefix (deprecated)
+    postscriptname FC_POSTSCRIPT_NAME     String  Font name in PostScript
     </PRE
 ></TD
 ></TR
index 45face1..098befa 100644 (file)
@@ -157,9 +157,10 @@ CLASS="PROGRAMLISTING"
   file            String  The filename holding the font
   index           Int     The index of the font within the file
   ftface          FT_Face Use the specified FreeType face object
-  rasterizer      String  Which rasterizer is in use
+  rasterizer      String  Which rasterizer is in use (deprecated)
   outline         Bool    Whether the glyphs are outlines
   scalable        Bool    Whether glyphs can be scaled
+  color           Bool    Whether any glyphs have color
   scale           Double  Scale factor for point-&#62;pixel conversions
   dpi             Double  Target dots per inch
   rgba            Int     unknown, rgb, bgr, vrgb, vbgr,
@@ -171,7 +172,15 @@ CLASS="PROGRAMLISTING"
                           font supports
   fontversion     Int     Version number of the font
   capability      String  List of layout capabilities in the font
+  fontformat      String  String name of the font format
   embolden        Bool    Rasterizer should synthetically embolden the font
+  embeddedbitmap  Bool    Use the embedded bitmap instead of the outline
+  decorative      Bool    Whether the style is a decorative variant
+  fontfeatures    String  List of the feature tags in OpenType to be enabled
+  namelang        String  Language name to be used for the default value of
+                          familylang, stylelang, and fullnamelang
+  prgname         String  String  Name of the running program
+  postscriptname  String  Font family name in PostScript
     </PRE
 ></TD
 ></TR
@@ -493,7 +502,7 @@ CLASS="LITERAL"
 >&#60;architecture&#62;</TT
 >.cache-<TT
 CLASS="LITERAL"
->&#60;version</TT
+>&#60;version&#62;</TT
 >'',
 where <TT
 CLASS="LITERAL"
@@ -788,6 +797,8 @@ CLASS="PROGRAMLISTING"
   "prepend_first"         Insert at head of list  Insert at head of list
   "append"                Append after matching   Append at end of list
   "append_last"           Append at end of list   Append at end of list
+  "delete"                Delete matching value   Delete all values
+  "delete_all"            Delete all values       Delete all values
     </PRE
 ></TD
 ></TR
@@ -946,6 +957,8 @@ CLASS="PROGRAMLISTING"
   extralight      weight          40
   ultralight      weight          40
   light           weight          50
+  demilight       weight          55
+  semilight       weight          55
   book            weight          75
   regular         weight          80
   normal          weight          80
@@ -1526,7 +1539,7 @@ NAME="AEN276"
 ><H2
 >Version</H2
 ><P
->Fontconfig version 2.10.91
+>Fontconfig version 2.11.93
 
            </P
 ></DIV
index 4278180..c976f7e 100644 (file)
Binary files a/doc/fontconfig-user.pdf and b/doc/fontconfig-user.pdf differ
index c842371..ac9d807 100644 (file)
@@ -116,9 +116,10 @@ convenience for the applications' rendering mechanism.
   file            String  The filename holding the font
   index           Int     The index of the font within the file
   ftface          FT_Face Use the specified FreeType face object
-  rasterizer      String  Which rasterizer is in use
+  rasterizer      String  Which rasterizer is in use (deprecated)
   outline         Bool    Whether the glyphs are outlines
   scalable        Bool    Whether glyphs can be scaled
+  color           Bool    Whether any glyphs have color
   scale           Double  Scale factor for point->pixel conversions
   dpi             Double  Target dots per inch
   rgba            Int     unknown, rgb, bgr, vrgb, vbgr,
@@ -130,7 +131,15 @@ convenience for the applications' rendering mechanism.
                           font supports
   fontversion     Int     Version number of the font
   capability      String  List of layout capabilities in the font
+  fontformat      String  String name of the font format
   embolden        Bool    Rasterizer should synthetically embolden the font
+  embeddedbitmap  Bool    Use the embedded bitmap instead of the outline
+  decorative      Bool    Whether the style is a decorative variant
+  fontfeatures    String  List of the feature tags in OpenType to be enabled
+  namelang        String  Language name to be used for the default value of
+                          familylang, stylelang, and fullnamelang
+  prgname         String  String  Name of the running program
+  postscriptname  String  Font family name in PostScript
     </programlisting>
   </refsect2>
   <refsect2>
@@ -312,7 +321,7 @@ the configuration file, the directory that can be accessed first in the list
 will be used to store the cache files.  If it starts with '~', it refers to
 a directory in the users home directory.  If 'prefix' is set to "xdg", the value in the XDG_CACHE_HOME environment variable will be added as the path prefix. please see XDG Base Directory Specification for more details.
 The default directory is ``$XDG_CACHE_HOME/fontconfig'' and it contains the cache files
-named ``<literal>&lt;hash value&gt;</literal>-<literal>&lt;architecture&gt;</literal>.cache-<literal>&lt;version</literal>'',
+named ``<literal>&lt;hash value&gt;</literal>-<literal>&lt;architecture&gt;</literal>.cache-<literal>&lt;version&gt;</literal>'',
 where <literal>&lt;version&gt;</literal> is the font configureation file
 version number (currently 3).
   </para></refsect2>
@@ -423,6 +432,8 @@ with "same" binding using the value from the matched pattern element.
   "prepend_first"         Insert at head of list  Insert at head of list
   "append"                Append after matching   Append at end of list
   "append_last"           Append at end of list   Append at end of list
+  "delete"                Delete matching value   Delete all values
+  "delete_all"            Delete all values       Delete all values
     </programlisting>
   </para></refsect2>
   <refsect2><title><literal>&lt;int&gt;</literal>, <literal>&lt;double&gt;</literal>, <literal>&lt;string&gt;</literal>, <literal>&lt;bool&gt;</literal></title><para>
@@ -469,6 +480,8 @@ symbolic names for common font values:
   extralight      weight          40
   ultralight      weight          40
   light           weight          50
+  demilight       weight          55
+  semilight       weight          55
   book            weight          75
   regular         weight          80
   normal          weight          80
index e2e8f53..f18c083 100644 (file)
@@ -1,18 +1,18 @@
-                                   fonts-conf
+                               fonts-conf
 
 Name
 
-   fonts.conf -- Font configuration files
+   fonts.conf -- Font configuration files
 
 Synopsis
 
-      /etc/fonts/fonts.conf
-      /etc/fonts/fonts.dtd
-      /etc/fonts/conf.d
-      $XDG_CONFIG_HOME/fontconfig/conf.d
-      $XDG_CONFIG_HOME/fontconfig/fonts.conf
-      ~/.fonts.conf.d
-      ~/.fonts.conf
+   /etc/fonts/fonts.conf
+   /etc/fonts/fonts.dtd
+   /etc/fonts/conf.d
+   $XDG_CONFIG_HOME/fontconfig/conf.d
+   $XDG_CONFIG_HOME/fontconfig/fonts.conf
+   ~/.fonts.conf.d
+   ~/.fonts.conf
 
 Description
 
@@ -21,534 +21,575 @@ Description
 
 Functional Overview
 
-   Fontconfig contains two essential modules, the configuration module which
-   builds an internal configuration from XML files and the matching module
-   which accepts font patterns and returns the nearest matching font.
-
-  Font Configuration
-
-   The configuration module consists of the FcConfig datatype, libexpat and
-   FcConfigParse which walks over an XML tree and amends a configuration with
-   data found within. From an external perspective, configuration of the
-   library consists of generating a valid XML tree and feeding that to
-   FcConfigParse. The only other mechanism provided to applications for
-   changing the running configuration is to add fonts and directories to the
-   list of application-provided font files.
-
-   The intent is to make font configurations relatively static, and shared by
-   as many applications as possible. It is hoped that this will lead to more
-   stable font selection when passing names from one application to another.
-   XML was chosen as a configuration file format because it provides a format
-   which is easy for external agents to edit while retaining the correct
+   Fontconfig contains two essential modules, the configuration
+   module which builds an internal configuration from XML files
+   and the matching module which accepts font patterns and returns
+   the nearest matching font.
+
+Font Configuration
+
+   The configuration module consists of the FcConfig datatype,
+   libexpat and FcConfigParse which walks over an XML tree and
+   amends a configuration with data found within. From an external
+   perspective, configuration of the library consists of
+   generating a valid XML tree and feeding that to FcConfigParse.
+   The only other mechanism provided to applications for changing
+   the running configuration is to add fonts and directories to
+   the list of application-provided font files.
+
+   The intent is to make font configurations relatively static,
+   and shared by as many applications as possible. It is hoped
+   that this will lead to more stable font selection when passing
+   names from one application to another. XML was chosen as a
+   configuration file format because it provides a format which is
+   easy for external agents to edit while retaining the correct
    structure and syntax.
 
-   Font configuration is separate from font matching; applications needing to
-   do their own matching can access the available fonts from the library and
-   perform private matching. The intent is to permit applications to pick and
-   choose appropriate functionality from the library instead of forcing them
-   to choose between this library and a private configuration mechanism. The
-   hope is that this will ensure that configuration of fonts for all
-   applications can be centralized in one place. Centralizing font
-   configuration will simplify and regularize font installation and
-   customization.
-
-  Font Properties
-
-   While font patterns may contain essentially any properties, there are some
-   well known properties with associated types. Fontconfig uses some of these
-   properties for font matching and font completion. Others are provided as a
-   convenience for the applications' rendering mechanism.
-
-     Property        Type    Description
-     --------------------------------------------------------------
-     family          String  Font family names
-     familylang      String  Languages corresponding to each family
-     style           String  Font style. Overrides weight and slant
-     stylelang       String  Languages corresponding to each style
-     fullname        String  Font full names (often includes style)
-     fullnamelang    String  Languages corresponding to each fullname
-     slant           Int     Italic, oblique or roman
-     weight          Int     Light, medium, demibold, bold or black
-     size            Double  Point size
-     width           Int     Condensed, normal or expanded
-     aspect          Double  Stretches glyphs horizontally before hinting
-     pixelsize       Double  Pixel size
-     spacing         Int     Proportional, dual-width, monospace or charcell
-     foundry         String  Font foundry name
-     antialias       Bool    Whether glyphs can be antialiased
-     hinting         Bool    Whether the rasterizer should use hinting
-     hintstyle       Int     Automatic hinting style
-     verticallayout  Bool    Use vertical layout
-     autohint        Bool    Use autohinter instead of normal hinter
-     globaladvance   Bool    Use font global advance data (deprecated)
-     file            String  The filename holding the font
-     index           Int     The index of the font within the file
-     ftface          FT_Face Use the specified FreeType face object
-     rasterizer      String  Which rasterizer is in use
-     outline         Bool    Whether the glyphs are outlines
-     scalable        Bool    Whether glyphs can be scaled
-     scale           Double  Scale factor for point->pixel conversions
-     dpi             Double  Target dots per inch
-     rgba            Int     unknown, rgb, bgr, vrgb, vbgr,
-                             none - subpixel geometry
-     lcdfilter       Int     Type of LCD filter
-     minspace        Bool    Eliminate leading from line spacing
-     charset         CharSet Unicode chars encoded by the font
-     lang            String  List of RFC-3066-style languages this
-                             font supports
-     fontversion     Int     Version number of the font
-     capability      String  List of layout capabilities in the font
-     embolden        Bool    Rasterizer should synthetically embolden the font
-
-
-  Font Matching
-
-   Fontconfig performs matching by measuring the distance from a provided
-   pattern to all of the available fonts in the system. The closest matching
-   font is selected. This ensures that a font will always be returned, but
-   doesn't ensure that it is anything like the requested pattern.
-
-   Font matching starts with an application constructed pattern. The desired
-   attributes of the resulting font are collected together in a pattern. Each
-   property of the pattern can contain one or more values; these are listed
-   in priority order; matches earlier in the list are considered "closer"
-   than matches later in the list.
+   Font configuration is separate from font matching; applications
+   needing to do their own matching can access the available fonts
+   from the library and perform private matching. The intent is to
+   permit applications to pick and choose appropriate
+   functionality from the library instead of forcing them to
+   choose between this library and a private configuration
+   mechanism. The hope is that this will ensure that configuration
+   of fonts for all applications can be centralized in one place.
+   Centralizing font configuration will simplify and regularize
+   font installation and customization.
+
+Font Properties
+
+   While font patterns may contain essentially any properties,
+   there are some well known properties with associated types.
+   Fontconfig uses some of these properties for font matching and
+   font completion. Others are provided as a convenience for the
+   applications' rendering mechanism.
+  Property        Type    Description
+  --------------------------------------------------------------
+  family          String  Font family names
+  familylang      String  Languages corresponding to each family
+  style           String  Font style. Overrides weight and slant
+  stylelang       String  Languages corresponding to each style
+  fullname        String  Font full names (often includes style)
+  fullnamelang    String  Languages corresponding to each fullname
+  slant           Int     Italic, oblique or roman
+  weight          Int     Light, medium, demibold, bold or black
+  size            Double  Point size
+  width           Int     Condensed, normal or expanded
+  aspect          Double  Stretches glyphs horizontally before hinting
+  pixelsize       Double  Pixel size
+  spacing         Int     Proportional, dual-width, monospace or charcel
+l
+  foundry         String  Font foundry name
+  antialias       Bool    Whether glyphs can be antialiased
+  hinting         Bool    Whether the rasterizer should use hinting
+  hintstyle       Int     Automatic hinting style
+  verticallayout  Bool    Use vertical layout
+  autohint        Bool    Use autohinter instead of normal hinter
+  globaladvance   Bool    Use font global advance data (deprecated)
+  file            String  The filename holding the font
+  index           Int     The index of the font within the file
+  ftface          FT_Face Use the specified FreeType face object
+  rasterizer      String  Which rasterizer is in use (deprecated)
+  outline         Bool    Whether the glyphs are outlines
+  scalable        Bool    Whether glyphs can be scaled
+  color           Bool    Whether any glyphs have color
+  scale           Double  Scale factor for point->pixel conversions
+  dpi             Double  Target dots per inch
+  rgba            Int     unknown, rgb, bgr, vrgb, vbgr,
+                          none - subpixel geometry
+  lcdfilter       Int     Type of LCD filter
+  minspace        Bool    Eliminate leading from line spacing
+  charset         CharSet Unicode chars encoded by the font
+  lang            String  List of RFC-3066-style languages this
+                          font supports
+  fontversion     Int     Version number of the font
+  capability      String  List of layout capabilities in the font
+  fontformat      String  String name of the font format
+  embolden        Bool    Rasterizer should synthetically embolden the f
+ont
+  embeddedbitmap  Bool    Use the embedded bitmap instead of the outline
+  decorative      Bool    Whether the style is a decorative variant
+  fontfeatures    String  List of the feature tags in OpenType to be ena
+bled
+  namelang        String  Language name to be used for the default value
+ of
+                          familylang, stylelang, and fullnamelang
+  prgname         String  String  Name of the running program
+  postscriptname  String  Font family name in PostScript
+
+Font Matching
+
+   Fontconfig performs matching by measuring the distance from a
+   provided pattern to all of the available fonts in the system.
+   The closest matching font is selected. This ensures that a font
+   will always be returned, but doesn't ensure that it is anything
+   like the requested pattern.
+
+   Font matching starts with an application constructed pattern.
+   The desired attributes of the resulting font are collected
+   together in a pattern. Each property of the pattern can contain
+   one or more values; these are listed in priority order; matches
+   earlier in the list are considered "closer" than matches later
+   in the list.
 
    The initial pattern is modified by applying the list of editing
-   instructions specific to patterns found in the configuration; each
-   consists of a match predicate and a set of editing operations. They are
-   executed in the order they appeared in the configuration. Each match
-   causes the associated sequence of editing operations to be applied.
-
-   After the pattern has been edited, a sequence of default substitutions are
-   performed to canonicalize the set of available properties; this avoids the
-   need for the lower layers to constantly provide default values for various
-   font properties during rendering.
-
-   The canonical font pattern is finally matched against all available fonts.
-   The distance from the pattern to the font is measured for each of several
-   properties: foundry, charset, family, lang, spacing, pixelsize, style,
-   slant, weight, antialias, rasterizer and outline. This list is in priority
-   order -- results of comparing earlier elements of this list weigh more
-   heavily than later elements.
-
-   There is one special case to this rule; family names are split into two
-   bindings; strong and weak. Strong family names are given greater
-   precedence in the match than lang elements while weak family names are
-   given lower precedence than lang elements. This permits the document
-   language to drive font selection when any document specified font is
-   unavailable.
-
-   The pattern representing that font is augmented to include any properties
-   found in the pattern but not found in the font itself; this permits the
-   application to pass rendering instructions or any other data through the
-   matching system. Finally, the list of editing instructions specific to
-   fonts found in the configuration are applied to the pattern. This modified
-   pattern is returned to the application.
-
-   The return value contains sufficient information to locate and rasterize
-   the font, including the file name, pixel size and other rendering data. As
-   none of the information involved pertains to the FreeType library,
-   applications are free to use any rasterization engine or even to take the
-   identified font file and access it directly.
-
-   The match/edit sequences in the configuration are performed in two passes
-   because there are essentially two different operations necessary -- the
-   first is to modify how fonts are selected; aliasing families and adding
-   suitable defaults. The second is to modify how the selected fonts are
-   rasterized. Those must apply to the selected font, not the original
-   pattern as false matches will often occur.
-
-  Font Names
-
-   Fontconfig provides a textual representation for patterns that the library
-   can both accept and generate. The representation is in three parts, first
-   a list of family names, second a list of point sizes and finally a list of
-   additional properties:
-
-           <families>-<point sizes>:<name1>=<values1>:<name2>=<values2>...
-
-
-   Values in a list are separated with commas. The name needn't include
-   either families or point sizes; they can be elided. In addition, there are
-   symbolic constants that simultaneously indicate both a name and a value.
-   Here are some examples:
-
-     Name                            Meaning
-     ----------------------------------------------------------
-     Times-12                        12 point Times Roman
-     Times-12:bold                   12 point Times Bold
-     Courier:italic                  Courier Italic in the default size
-     Monospace:matrix=1 .1 0 1       The users preferred monospace font
-                                     with artificial obliquing
-
-
-   The '\', '-', ':' and ',' characters in family names must be preceded by a
-   '\' character to avoid having them misinterpreted. Similarly, values
-   containing '\', '=', '_', ':' and ',' must also have them preceded by a
-   '\' character. The '\' characters are stripped out of the family name and
-   values as the font name is read.
+   instructions specific to patterns found in the configuration;
+   each consists of a match predicate and a set of editing
+   operations. They are executed in the order they appeared in the
+   configuration. Each match causes the associated sequence of
+   editing operations to be applied.
+
+   After the pattern has been edited, a sequence of default
+   substitutions are performed to canonicalize the set of
+   available properties; this avoids the need for the lower layers
+   to constantly provide default values for various font
+   properties during rendering.
+
+   The canonical font pattern is finally matched against all
+   available fonts. The distance from the pattern to the font is
+   measured for each of several properties: foundry, charset,
+   family, lang, spacing, pixelsize, style, slant, weight,
+   antialias, rasterizer and outline. This list is in priority
+   order -- results of comparing earlier elements of this list
+   weigh more heavily than later elements.
+
+   There is one special case to this rule; family names are split
+   into two bindings; strong and weak. Strong family names are
+   given greater precedence in the match than lang elements while
+   weak family names are given lower precedence than lang
+   elements. This permits the document language to drive font
+   selection when any document specified font is unavailable.
+
+   The pattern representing that font is augmented to include any
+   properties found in the pattern but not found in the font
+   itself; this permits the application to pass rendering
+   instructions or any other data through the matching system.
+   Finally, the list of editing instructions specific to fonts
+   found in the configuration are applied to the pattern. This
+   modified pattern is returned to the application.
+
+   The return value contains sufficient information to locate and
+   rasterize the font, including the file name, pixel size and
+   other rendering data. As none of the information involved
+   pertains to the FreeType library, applications are free to use
+   any rasterization engine or even to take the identified font
+   file and access it directly.
+
+   The match/edit sequences in the configuration are performed in
+   two passes because there are essentially two different
+   operations necessary -- the first is to modify how fonts are
+   selected; aliasing families and adding suitable defaults. The
+   second is to modify how the selected fonts are rasterized.
+   Those must apply to the selected font, not the original pattern
+   as false matches will often occur.
+
+Font Names
+
+   Fontconfig provides a textual representation for patterns that
+   the library can both accept and generate. The representation is
+   in three parts, first a list of family names, second a list of
+   point sizes and finally a list of additional properties:
+        <families>-<point sizes>:<name1>=<values1>:<name2>=<values2>...
+
+   Values in a list are separated with commas. The name needn't
+   include either families or point sizes; they can be elided. In
+   addition, there are symbolic constants that simultaneously
+   indicate both a name and a value. Here are some examples:
+  Name                            Meaning
+  ----------------------------------------------------------
+  Times-12                        12 point Times Roman
+  Times-12:bold                   12 point Times Bold
+  Courier:italic                  Courier Italic in the default size
+  Monospace:matrix=1 .1 0 1       The users preferred monospace font
+                                  with artificial obliquing
+
+   The '\', '-', ':' and ',' characters in family names must be
+   preceded by a '\' character to avoid having them
+   misinterpreted. Similarly, values containing '\', '=', '_', ':'
+   and ',' must also have them preceded by a '\' character. The
+   '\' characters are stripped out of the family name and values
+   as the font name is read.
 
 Debugging Applications
 
-   To help diagnose font and applications problems, fontconfig is built with
-   a large amount of internal debugging left enabled. It is controlled by
-   means of the FC_DEBUG environment variable. The value of this variable is
-   interpreted as a number, and each bit within that value controls different
-   debugging messages.
-
-     Name         Value    Meaning
-     ---------------------------------------------------------
-     MATCH            1    Brief information about font matching
-     MATCHV           2    Extensive font matching information
-     EDIT             4    Monitor match/test/edit execution
-     FONTSET          8    Track loading of font information at startup
-     CACHE           16    Watch cache files being written
-     CACHEV          32    Extensive cache file writing information
-     PARSE           64    (no longer in use)
-     SCAN           128    Watch font files being scanned to build caches
-     SCANV          256    Verbose font file scanning information
-     MEMORY         512    Monitor fontconfig memory usage
-     CONFIG        1024    Monitor which config files are loaded
-     LANGSET       2048    Dump char sets used to construct lang values
-     OBJTYPES      4096    Display message when value typechecks fail
-
-
-   Add the value of the desired debug levels together and assign that (in
-   base 10) to the FC_DEBUG environment variable before running the
-   application. Output from these statements is sent to stdout.
+   To help diagnose font and applications problems, fontconfig is
+   built with a large amount of internal debugging left enabled.
+   It is controlled by means of the FC_DEBUG environment variable.
+   The value of this variable is interpreted as a number, and each
+   bit within that value controls different debugging messages.
+  Name         Value    Meaning
+  ---------------------------------------------------------
+  MATCH            1    Brief information about font matching
+  MATCHV           2    Extensive font matching information
+  EDIT             4    Monitor match/test/edit execution
+  FONTSET          8    Track loading of font information at startup
+  CACHE           16    Watch cache files being written
+  CACHEV          32    Extensive cache file writing information
+  PARSE           64    (no longer in use)
+  SCAN           128    Watch font files being scanned to build caches
+  SCANV          256    Verbose font file scanning information
+  MEMORY         512    Monitor fontconfig memory usage
+  CONFIG        1024    Monitor which config files are loaded
+  LANGSET       2048    Dump char sets used to construct lang values
+  OBJTYPES      4096    Display message when value typechecks fail
+
+   Add the value of the desired debug levels together and assign
+   that (in base 10) to the FC_DEBUG environment variable before
+   running the application. Output from these statements is sent
+   to stdout.
 
 Lang Tags
 
-   Each font in the database contains a list of languages it supports. This
-   is computed by comparing the Unicode coverage of the font with the
-   orthography of each language. Languages are tagged using an RFC-3066
-   compatible naming and occur in two parts -- the ISO 639 language tag
-   followed a hyphen and then by the ISO 3166 country code. The hyphen and
-   country code may be elided.
+   Each font in the database contains a list of languages it
+   supports. This is computed by comparing the Unicode coverage of
+   the font with the orthography of each language. Languages are
+   tagged using an RFC-3066 compatible naming and occur in two
+   parts -- the ISO 639 language tag followed a hyphen and then by
+   the ISO 3166 country code. The hyphen and country code may be
+   elided.
+
+   Fontconfig has orthographies for several languages built into
+   the library. No provision has been made for adding new ones
+   aside from rebuilding the library. It currently supports 122 of
+   the 139 languages named in ISO 639-1, 141 of the languages with
+   two-letter codes from ISO 639-2 and another 30 languages with
+   only three-letter codes. Languages with both two and three
+   letter codes are provided with only the two letter code.
+
+   For languages used in multiple territories with radically
+   different character sets, fontconfig includes per-territory
+   orthographies. This includes Azerbaijani, Kurdish, Pashto,
+   Tigrinya and Chinese.
 
-   Fontconfig has orthographies for several languages built into the library.
-   No provision has been made for adding new ones aside from rebuilding the
-   library. It currently supports 122 of the 139 languages named in ISO
-   639-1, 141 of the languages with two-letter codes from ISO 639-2 and
-   another 30 languages with only three-letter codes. Languages with both two
-   and three letter codes are provided with only the two letter code.
+Configuration File Format
 
-   For languages used in multiple territories with radically different
-   character sets, fontconfig includes per-territory orthographies. This
-   includes Azerbaijani, Kurdish, Pashto, Tigrinya and Chinese.
+   Configuration files for fontconfig are stored in XML format;
+   this format makes external configuration tools easier to write
+   and ensures that they will generate syntactically correct
+   configuration files. As XML files are plain text, they can also
+   be manipulated by the expert user using a text editor.
+
+   The fontconfig document type definition resides in the external
+   entity "fonts.dtd"; this is normally stored in the default font
+   configuration directory (/etc/fonts). Each configuration file
+   should contain the following structure:
+        <?xml version="1.0"?>
+        <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+        <fontconfig>
+        ...
+        </fontconfig>
 
-Configuration File Format
+<fontconfig>
 
-   Configuration files for fontconfig are stored in XML format; this format
-   makes external configuration tools easier to write and ensures that they
-   will generate syntactically correct configuration files. As XML files are
-   plain text, they can also be manipulated by the expert user using a text
-   editor.
-
-   The fontconfig document type definition resides in the external entity
-   "fonts.dtd"; this is normally stored in the default font configuration
-   directory (/etc/fonts). Each configuration file should contain the
-   following structure:
-
-           <?xml version="1.0"?>
-           <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
-           <fontconfig>
-           ...
-           </fontconfig>
-
-
-  <fontconfig>
-
-   This is the top level element for a font configuration and can contain
-   <dir>, <cachedir>, <include>, <match> and <alias> elements in any order.
-
-  <dir prefix="default">
-
-   This element contains a directory name which will be scanned for font
-   files to include in the set of available fonts. If 'prefix' is set to
-   "xdg", the value in the XDG_DATA_HOME environment variable will be added
-   as the path prefix. please see XDG Base Directory Specification for more
-   details.
-
-  <cachedir prefix="default">
-
-   This element contains a directory name that is supposed to be stored or
-   read the cache of font information. If multiple elements are specified in
-   the configuration file, the directory that can be accessed first in the
-   list will be used to store the cache files. If it starts with '~', it
-   refers to a directory in the users home directory. If 'prefix' is set to
-   "xdg", the value in the XDG_CACHE_HOME environment variable will be added
-   as the path prefix. please see XDG Base Directory Specification for more
-   details. The default directory is ``$XDG_CACHE_HOME/fontconfig'' and it
-   contains the cache files named ``<hash
-   value>-<architecture>.cache-<version'', where <version> is the font
-   configureation file version number (currently 3).
-
-  <include ignore_missing="no" prefix="default">
-
-   This element contains the name of an additional configuration file or
-   directory. If a directory, every file within that directory starting with
-   an ASCII digit (U+0030 - U+0039) and ending with the string ``.conf'' will
-   be processed in sorted order. When the XML datatype is traversed by
-   FcConfigParse, the contents of the file(s) will also be incorporated into
-   the configuration by passing the filename(s) to FcConfigLoadAndParse. If
-   'ignore_missing' is set to "yes" instead of the default "no", a missing
-   file or directory will elicit no warning message from the library. If
-   'prefix' is set to "xdg", the value in the XDG_CONFIG_HOME environment
-   variable will be added as the path prefix. please see XDG Base Directory
+   This is the top level element for a font configuration and can
+   contain <dir>, <cachedir>, <include>, <match> and <alias>
+   elements in any order.
+
+<dir prefix="default">
+
+   This element contains a directory name which will be scanned
+   for font files to include in the set of available fonts. If
+   'prefix' is set to "xdg", the value in the XDG_DATA_HOME
+   environment variable will be added as the path prefix. please
+   see XDG Base Directory Specification for more details.
+
+<cachedir prefix="default">
+
+   This element contains a directory name that is supposed to be
+   stored or read the cache of font information. If multiple
+   elements are specified in the configuration file, the directory
+   that can be accessed first in the list will be used to store
+   the cache files. If it starts with '~', it refers to a
+   directory in the users home directory. If 'prefix' is set to
+   "xdg", the value in the XDG_CACHE_HOME environment variable
+   will be added as the path prefix. please see XDG Base Directory
+   Specification for more details. The default directory is
+   ``$XDG_CACHE_HOME/fontconfig'' and it contains the cache files
+   named ``<hash value>-<architecture>.cache-<version>'', where
+   <version> is the font configureation file version number
+   (currently 3).
+
+<include ignore_missing="no" prefix="default">
+
+   This element contains the name of an additional configuration
+   file or directory. If a directory, every file within that
+   directory starting with an ASCII digit (U+0030 - U+0039) and
+   ending with the string ``.conf'' will be processed in sorted
+   order. When the XML datatype is traversed by FcConfigParse, the
+   contents of the file(s) will also be incorporated into the
+   configuration by passing the filename(s) to
+   FcConfigLoadAndParse. If 'ignore_missing' is set to "yes"
+   instead of the default "no", a missing file or directory will
+   elicit no warning message from the library. If 'prefix' is set
+   to "xdg", the value in the XDG_CONFIG_HOME environment variable
+   will be added as the path prefix. please see XDG Base Directory
    Specification for more details.
 
-  <config>
-
-   This element provides a place to consolidate additional configuration
-   information. <config> can contain <blank> and <rescan> elements in any
-   order.
-
-  <blank>
-
-   Fonts often include "broken" glyphs which appear in the encoding but are
-   drawn as blanks on the screen. Within the <blank> element, place each
-   Unicode characters which is supposed to be blank in an <int> element.
-   Characters outside of this set which are drawn as blank will be elided
-   from the set of characters supported by the font.
-
-  <rescan>
-
-   The <rescan> element holds an <int> element which indicates the default
-   interval between automatic checks for font configuration changes.
-   Fontconfig will validate all of the configuration files and directories
-   and automatically rebuild the internal datastructures when this interval
-   passes.
-
-  <selectfont>
-
-   This element is used to black/white list fonts from being listed or
-   matched against. It holds acceptfont and rejectfont elements.
-
-  <acceptfont>
-
-   Fonts matched by an acceptfont element are "whitelisted"; such fonts are
-   explicitly included in the set of fonts used to resolve list and match
-   requests; including them in this list protects them from being
-   "blacklisted" by a rejectfont element. Acceptfont elements include glob
-   and pattern elements which are used to match fonts.
+<config>
+
+   This element provides a place to consolidate additional
+   configuration information. <config> can contain <blank> and
+   <rescan> elements in any order.
+
+<blank>
+
+   Fonts often include "broken" glyphs which appear in the
+   encoding but are drawn as blanks on the screen. Within the
+   <blank> element, place each Unicode characters which is
+   supposed to be blank in an <int> element. Characters outside of
+   this set which are drawn as blank will be elided from the set
+   of characters supported by the font.
+
+<rescan>
+
+   The <rescan> element holds an <int> element which indicates the
+   default interval between automatic checks for font
+   configuration changes. Fontconfig will validate all of the
+   configuration files and directories and automatically rebuild
+   the internal datastructures when this interval passes.
+
+<selectfont>
+
+   This element is used to black/white list fonts from being
+   listed or matched against. It holds acceptfont and rejectfont
+   elements.
+
+<acceptfont>
 
-  <rejectfont>
+   Fonts matched by an acceptfont element are "whitelisted"; such
+   fonts are explicitly included in the set of fonts used to
+   resolve list and match requests; including them in this list
+   protects them from being "blacklisted" by a rejectfont element.
+   Acceptfont elements include glob and pattern elements which are
+   used to match fonts.
 
-   Fonts matched by an rejectfont element are "blacklisted"; such fonts are
-   excluded from the set of fonts used to resolve list and match requests as
-   if they didn't exist in the system. Rejectfont elements include glob and
-   pattern elements which are used to match fonts.
+<rejectfont>
 
-  <glob>
+   Fonts matched by an rejectfont element are "blacklisted"; such
+   fonts are excluded from the set of fonts used to resolve list
+   and match requests as if they didn't exist in the system.
+   Rejectfont elements include glob and pattern elements which are
+   used to match fonts.
 
-   Glob elements hold shell-style filename matching patterns (including ? and
-   *) which match fonts based on their complete pathnames. This can be used
-   to exclude a set of directories (/usr/share/fonts/uglyfont*), or
-   particular font file types (*.pcf.gz), but the latter mechanism relies
-   rather heavily on filenaming conventions which can't be relied upon. Note
-   that globs only apply to directories, not to individual fonts.
+<glob>
 
-  <pattern>
+   Glob elements hold shell-style filename matching patterns
+   (including ? and *) which match fonts based on their complete
+   pathnames. This can be used to exclude a set of directories
+   (/usr/share/fonts/uglyfont*), or particular font file types
+   (*.pcf.gz), but the latter mechanism relies rather heavily on
+   filenaming conventions which can't be relied upon. Note that
+   globs only apply to directories, not to individual fonts.
 
-   Pattern elements perform list-style matching on incoming fonts; that is,
-   they hold a list of elements and associated values. If all of those
-   elements have a matching value, then the pattern matches the font. This
-   can be used to select fonts based on attributes of the font (scalable,
-   bold, etc), which is a more reliable mechanism than using file extensions.
-   Pattern elements include patelt elements.
+<pattern>
 
-  <patelt name="property">
+   Pattern elements perform list-style matching on incoming fonts;
+   that is, they hold a list of elements and associated values. If
+   all of those elements have a matching value, then the pattern
+   matches the font. This can be used to select fonts based on
+   attributes of the font (scalable, bold, etc), which is a more
+   reliable mechanism than using file extensions. Pattern elements
+   include patelt elements.
 
-   Patelt elements hold a single pattern element and list of values. They
-   must have a 'name' attribute which indicates the pattern element name.
-   Patelt elements include int, double, string, matrix, bool, charset and
-   const elements.
-
-  <match target="pattern">
-
-   This element holds first a (possibly empty) list of <test> elements and
-   then a (possibly empty) list of <edit> elements. Patterns which match all
-   of the tests are subjected to all the edits. If 'target' is set to "font"
-   instead of the default "pattern", then this element applies to the font
-   name resulting from a match rather than a font pattern to be matched. If
-   'target' is set to "scan", then this element applies when the font is
-   scanned to build the fontconfig database.
-
-  <test qual="any" name="property" target="default" compare="eq">
-
-   This element contains a single value which is compared with the target
-   ('pattern', 'font', 'scan' or 'default') property "property" (substitute
-   any of the property names seen above). 'compare' can be one of "eq",
-   "not_eq", "less", "less_eq", "more", "more_eq", "contains" or
-   "not_contains". 'qual' may either be the default, "any", in which case the
-   match succeeds if any value associated with the property matches the test
-   value, or "all", in which case all of the values associated with the
-   property must match the test value. 'ignore-blanks' takes a boolean value.
-   if 'ignore-blanks' is set "true", any blanks in the string will be ignored
-   on its comparison. this takes effects only when compare="eq" or
-   compare="not_eq". When used in a <match target="font"> element, the
-   target= attribute in the <test> element selects between matching the
-   original pattern or the font. "default" selects whichever target the outer
-   <match> element has selected.
-
-  <edit name="property" mode="assign" binding="weak">
-
-   This element contains a list of expression elements (any of the value or
-   operator elements). The expression elements are evaluated at run-time and
-   modify the property "property". The modification depends on whether
-   "property" was matched by one of the associated <test> elements, if so,
-   the modification may affect the first matched value. Any values inserted
-   into the property are given the indicated binding ("strong", "weak" or
-   "same") with "same" binding using the value from the matched pattern
-   element. 'mode' is one of:
-
-     Mode                    With Match              Without Match
-     ---------------------------------------------------------------------
-     "assign"                Replace matching value  Replace all values
-     "assign_replace"        Replace all values      Replace all values
-     "prepend"               Insert before matching  Insert at head of list
-     "prepend_first"         Insert at head of list  Insert at head of list
-     "append"                Append after matching   Append at end of list
-     "append_last"           Append at end of list   Append at end of list
-
-
-  <int>, <double>, <string>, <bool>
-
-   These elements hold a single value of the indicated type. <bool> elements
-   hold either true or false. An important limitation exists in the parsing
-   of floating point numbers -- fontconfig requires that the mantissa start
-   with a digit, not a decimal point, so insert a leading zero for purely
-   fractional values (e.g. use 0.5 instead of .5 and -0.5 instead of -.5).
-
-  <matrix>
-
-   This element holds four numerical expressions of an affine transformation.
-   At their simplest these will be four <double> elements but they can also
-   be more involved expressions.
-
-  <range>
-
-   This element holds the two <int> elements of a range representation.
-
-  <charset>
-
-   This element holds at least one <int> element of an Unicode code point or
-   more.
-
-  <langset>
-
-   This element holds at least one <string> element of a RFC-3066-style
-   languages or more.
-
-  <name>
-
-   Holds a property name. Evaluates to the first value from the property of
-   the pattern. If the 'target' attribute is not present, it will default to
-   'default', in which case the property is returned from the font pattern
-   during a target="font" match, and to the pattern during a target="pattern"
-   match. The attribute can also take the values 'font' or 'pattern' to
-   explicitly choose which pattern to use. It is an error to use a target of
-   'font' in a match that has target="pattern".
-
-  <const>
-
-   Holds the name of a constant; these are always integers and serve as
-   symbolic names for common font values:
-
-     Constant        Property        Value
-     -------------------------------------
-     thin            weight          0
-     extralight      weight          40
-     ultralight      weight          40
-     light           weight          50
-     book            weight          75
-     regular         weight          80
-     normal          weight          80
-     medium          weight          100
-     demibold        weight          180
-     semibold        weight          180
-     bold            weight          200
-     extrabold       weight          205
-     black           weight          210
-     heavy           weight          210
-     roman           slant           0
-     italic          slant           100
-     oblique         slant           110
-     ultracondensed  width           50
-     extracondensed  width           63
-     condensed       width           75
-     semicondensed   width           87
-     normal          width           100
-     semiexpanded    width           113
-     expanded        width           125
-     extraexpanded   width           150
-     ultraexpanded   width           200
-     proportional    spacing         0
-     dual            spacing         90
-     mono            spacing         100
-     charcell        spacing         110
-     unknown         rgba            0
-     rgb             rgba            1
-     bgr             rgba            2
-     vrgb            rgba            3
-     vbgr            rgba            4
-     none            rgba            5
-     lcdnone         lcdfilter       0
-     lcddefault      lcdfilter       1
-     lcdlight        lcdfilter       2
-     lcdlegacy       lcdfilter       3
-     hintnone        hintstyle       0
-     hintslight      hintstyle       1
-     hintmedium      hintstyle       2
-     hintfull        hintstyle       3
-
-
-  <or>, <and>, <plus>, <minus>, <times>, <divide>
-
-   These elements perform the specified operation on a list of expression
-   elements. <or> and <and> are boolean, not bitwise.
-
-  <eq>, <not_eq>, <less>, <less_eq>, <more>, <more_eq>, <contains>,
-  <not_contains
+<patelt name="property">
+
+   Patelt elements hold a single pattern element and list of
+   values. They must have a 'name' attribute which indicates the
+   pattern element name. Patelt elements include int, double,
+   string, matrix, bool, charset and const elements.
+
+<match target="pattern">
+
+   This element holds first a (possibly empty) list of <test>
+   elements and then a (possibly empty) list of <edit> elements.
+   Patterns which match all of the tests are subjected to all the
+   edits. If 'target' is set to "font" instead of the default
+   "pattern", then this element applies to the font name resulting
+   from a match rather than a font pattern to be matched. If
+   'target' is set to "scan", then this element applies when the
+   font is scanned to build the fontconfig database.
+
+<test qual="any" name="property" target="default" compare="eq">
+
+   This element contains a single value which is compared with the
+   target ('pattern', 'font', 'scan' or 'default') property
+   "property" (substitute any of the property names seen above).
+   'compare' can be one of "eq", "not_eq", "less", "less_eq",
+   "more", "more_eq", "contains" or "not_contains". 'qual' may
+   either be the default, "any", in which case the match succeeds
+   if any value associated with the property matches the test
+   value, or "all", in which case all of the values associated
+   with the property must match the test value. 'ignore-blanks'
+   takes a boolean value. if 'ignore-blanks' is set "true", any
+   blanks in the string will be ignored on its comparison. this
+   takes effects only when compare="eq" or compare="not_eq". When
+   used in a <match target="font"> element, the target= attribute
+   in the <test> element selects between matching the original
+   pattern or the font. "default" selects whichever target the
+   outer <match> element has selected.
+
+<edit name="property" mode="assign" binding="weak">
+
+   This element contains a list of expression elements (any of the
+   value or operator elements). The expression elements are
+   evaluated at run-time and modify the property "property". The
+   modification depends on whether "property" was matched by one
+   of the associated <test> elements, if so, the modification may
+   affect the first matched value. Any values inserted into the
+   property are given the indicated binding ("strong", "weak" or
+   "same") with "same" binding using the value from the matched
+   pattern element. 'mode' is one of:
+  Mode                    With Match              Without Match
+  ---------------------------------------------------------------------
+  "assign"                Replace matching value  Replace all values
+  "assign_replace"        Replace all values      Replace all values
+  "prepend"               Insert before matching  Insert at head of list
+  "prepend_first"         Insert at head of list  Insert at head of list
+  "append"                Append after matching   Append at end of list
+  "append_last"           Append at end of list   Append at end of list
+  "delete"                Delete matching value   Delete all values
+  "delete_all"            Delete all values       Delete all values
+
+<int>, <double>, <string>, <bool>
+
+   These elements hold a single value of the indicated type.
+   <bool> elements hold either true or false. An important
+   limitation exists in the parsing of floating point numbers --
+   fontconfig requires that the mantissa start with a digit, not a
+   decimal point, so insert a leading zero for purely fractional
+   values (e.g. use 0.5 instead of .5 and -0.5 instead of -.5).
+
+<matrix>
+
+   This element holds four numerical expressions of an affine
+   transformation. At their simplest these will be four <double>
+   elements but they can also be more involved expressions.
+
+<range>
+
+   This element holds the two <int> elements of a range
+   representation.
+
+<charset>
+
+   This element holds at least one <int> element of an Unicode
+   code point or more.
+
+<langset>
+
+   This element holds at least one <string> element of a
+   RFC-3066-style languages or more.
+
+<name>
+
+   Holds a property name. Evaluates to the first value from the
+   property of the pattern. If the 'target' attribute is not
+   present, it will default to 'default', in which case the
+   property is returned from the font pattern during a
+   target="font" match, and to the pattern during a
+   target="pattern" match. The attribute can also take the values
+   'font' or 'pattern' to explicitly choose which pattern to use.
+   It is an error to use a target of 'font' in a match that has
+   target="pattern".
+
+<const>
+
+   Holds the name of a constant; these are always integers and
+   serve as symbolic names for common font values:
+  Constant        Property        Value
+  -------------------------------------
+  thin            weight          0
+  extralight      weight          40
+  ultralight      weight          40
+  light           weight          50
+  demilight       weight          55
+  semilight       weight          55
+  book            weight          75
+  regular         weight          80
+  normal          weight          80
+  medium          weight          100
+  demibold        weight          180
+  semibold        weight          180
+  bold            weight          200
+  extrabold       weight          205
+  black           weight          210
+  heavy           weight          210
+  roman           slant           0
+  italic          slant           100
+  oblique         slant           110
+  ultracondensed  width           50
+  extracondensed  width           63
+  condensed       width           75
+  semicondensed   width           87
+  normal          width           100
+  semiexpanded    width           113
+  expanded        width           125
+  extraexpanded   width           150
+  ultraexpanded   width           200
+  proportional    spacing         0
+  dual            spacing         90
+  mono            spacing         100
+  charcell        spacing         110
+  unknown         rgba            0
+  rgb             rgba            1
+  bgr             rgba            2
+  vrgb            rgba            3
+  vbgr            rgba            4
+  none            rgba            5
+  lcdnone         lcdfilter       0
+  lcddefault      lcdfilter       1
+  lcdlight        lcdfilter       2
+  lcdlegacy       lcdfilter       3
+  hintnone        hintstyle       0
+  hintslight      hintstyle       1
+  hintmedium      hintstyle       2
+  hintfull        hintstyle       3
+
+<or>, <and>, <plus>, <minus>, <times>, <divide>
+
+   These elements perform the specified operation on a list of
+   expression elements. <or> and <and> are boolean, not bitwise.
+
+<eq>, <not_eq>, <less>, <less_eq>, <more>, <more_eq>, <contains>,
+<not_contains
 
    These elements compare two values, producing a boolean result.
 
-  <not>
+<not>
 
    Inverts the boolean sense of its one expression element
 
-  <if>
+<if>
 
-   This element takes three expression elements; if the value of the first is
-   true, it produces the value of the second, otherwise it produces the value
-   of the third.
+   This element takes three expression elements; if the value of
+   the first is true, it produces the value of the second,
+   otherwise it produces the value of the third.
 
-  <alias>
+<alias>
 
-   Alias elements provide a shorthand notation for the set of common match
-   operations needed to substitute one font family for another. They contain
-   a <family> element followed by optional <prefer>, <accept> and <default>
-   elements. Fonts matching the <family> element are edited to prepend the
-   list of <prefer>ed families before the matching <family>, append the
-   <accept>able families after the matching <family> and append the <default>
-   families to the end of the family list.
+   Alias elements provide a shorthand notation for the set of
+   common match operations needed to substitute one font family
+   for another. They contain a <family> element followed by
+   optional <prefer>, <accept> and <default> elements. Fonts
+   matching the <family> element are edited to prepend the list of
+   <prefer>ed families before the matching <family>, append the
+   <accept>able families after the matching <family> and append
+   the <default> families to the end of the family list.
 
-  <family>
+<family>
 
    Holds a single font family name
 
-  <prefer>, <accept>, <default>
+<prefer>, <accept>, <default>
 
-   These hold a list of <family> elements to be used by the <alias> element.
+   These hold a list of <family> elements to be used by the
+   <alias> element.
 
 EXAMPLE CONFIGURATION FILE
 
-  System configuration file
+System configuration file
 
    This is an example of a system-wide configuration file
-
 <?xml version="1.0"?>
 <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
 <!-- /etc/fonts/fonts.conf file to configure system font access -->
@@ -564,24 +605,30 @@ EXAMPLE CONFIGURATION FILE
 -->
 <match target="pattern">
         <test qual="any" name="family"><string>mono</string></test>
-        <edit name="family" mode="assign"><string>monospace</string></edit>
+        <edit name="family" mode="assign"><string>monospace</string></ed
+it>
 </match>
 
 <!--
         Names not including any well known alias are given 'sans-serif'
 -->
 <match target="pattern">
-        <test qual="all" name="family" mode="not_eq"><string>sans-serif</string></test>
-        <test qual="all" name="family" mode="not_eq"><string>serif</string></test>
-        <test qual="all" name="family" mode="not_eq"><string>monospace</string></test>
-        <edit name="family" mode="append_last"><string>sans-serif</string></edit>
+        <test qual="all" name="family" mode="not_eq"><string>sans-serif<
+/string></test>
+        <test qual="all" name="family" mode="not_eq"><string>serif</stri
+ng></test>
+        <test qual="all" name="family" mode="not_eq"><string>monospace</
+string></test>
+        <edit name="family" mode="append_last"><string>sans-serif</strin
+g></edit>
 </match>
 
 <!--
         Load per-user customization file, but don't complain
         if it doesn't exist
 -->
-<include ignore_missing="yes" prefix="xdg">fontconfig/fonts.conf</include>
+<include ignore_missing="yes" prefix="xdg">fontconfig/fonts.conf</includ
+e>
 
 <!--
         Load local customization files, but don't complain
@@ -653,116 +700,123 @@ EXAMPLE CONFIGURATION FILE
 
 </fontconfig>
 
+User configuration file
 
-  User configuration file
-
-   This is an example of a per-user configuration file that lives in
-   $XDG_CONFIG_HOME/fontconfig/fonts.conf
+   This is an example of a per-user configuration file that lives
+   in $XDG_CONFIG_HOME/fontconfig/fonts.conf
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!-- $XDG_CONFIG_HOME/fontconfig/fonts.conf for per-user font configurat
+ion -->
+<fontconfig>
 
- <?xml version="1.0"?>
- <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
- <!-- $XDG_CONFIG_HOME/fontconfig/fonts.conf for per-user font configuration -->
- <fontconfig>
-
- <!--
-         Private font directory
- -->
- <dir prefix="xdg">fonts</dir>
-
- <!--
-         use rgb sub-pixel ordering to improve glyph appearance on
-         LCD screens.  Changes affecting rendering, but not matching
-         should always use target="font".
- -->
- <match target="font">
-         <edit name="rgba" mode="assign"><const>rgb</const></edit>
- </match>
- <!--
-         use WenQuanYi Zen Hei font when serif is requested for Chinese
- -->
- <match>
-         <!--
-                 If you don't want to use WenQuanYi Zen Hei font for zh-tw etc,
-                 you can use zh-cn instead of zh.
-                 Please note, even if you set zh-cn, it still matches zh.
-                 if you don't like it, you can use compare="eq"
-                 instead of compare="contains".
-         -->
-         <test name="lang" compare="contains">
-                 <string>zh</string>
-         </test>
-         <test name="family">
-                 <string>serif</string>
-         </test>
-         <edit name="family" mode="prepend">
-                 <string>WenQuanYi Zen Hei</string>
-         </edit>
- </match>
- <!--
-         use VL Gothic font when sans-serif is requested for Japanese
- -->
- <match>
-         <test name="lang" compare="contains">
-                 <string>ja</string>
-         </test>
-         <test name="family">
-                 <string>sans-serif</string>
-         </test>
-         <edit name="family" mode="prepend">
-                 <string>VL Gothic</string>
-         </edit>
- </match>
- </fontconfig>
+<!--
+        Private font directory
+-->
+<dir prefix="xdg">fonts</dir>
 
+<!--
+        use rgb sub-pixel ordering to improve glyph appearance on
+        LCD screens.  Changes affecting rendering, but not matching
+        should always use target="font".
+-->
+<match target="font">
+        <edit name="rgba" mode="assign"><const>rgb</const></edit>
+</match>
+<!--
+        use WenQuanYi Zen Hei font when serif is requested for Chinese
+-->
+<match>
+        <!--
+                If you don't want to use WenQuanYi Zen Hei font for zh-t
+w etc,
+                you can use zh-cn instead of zh.
+                Please note, even if you set zh-cn, it still matches zh.
+                if you don't like it, you can use compare="eq"
+                instead of compare="contains".
+        -->
+        <test name="lang" compare="contains">
+                <string>zh</string>
+        </test>
+        <test name="family">
+                <string>serif</string>
+        </test>
+        <edit name="family" mode="prepend">
+                <string>WenQuanYi Zen Hei</string>
+        </edit>
+</match>
+<!--
+        use VL Gothic font when sans-serif is requested for Japanese
+-->
+<match>
+        <test name="lang" compare="contains">
+                <string>ja</string>
+        </test>
+        <test name="family">
+                <string>sans-serif</string>
+        </test>
+        <edit name="family" mode="prepend">
+                <string>VL Gothic</string>
+        </edit>
+</match>
+</fontconfig>
 
 Files
 
-   fonts.conf contains configuration information for the fontconfig library
-   consisting of directories to look at for font information as well as
-   instructions on editing program specified font patterns before attempting
-   to match the available fonts. It is in XML format.
+   fonts.conf contains configuration information for the
+   fontconfig library consisting of directories to look at for
+   font information as well as instructions on editing program
+   specified font patterns before attempting to match the
+   available fonts. It is in XML format.
 
    conf.d is the conventional name for a directory of additional
-   configuration files managed by external applications or the local
-   administrator. The filenames starting with decimal digits are sorted in
-   lexicographic order and used as additional configuration files. All of
-   these files are in XML format. The master fonts.conf file references this
-   directory in an <include> directive.
-
-   fonts.dtd is a DTD that describes the format of the configuration files.
-
-   $XDG_CONFIG_HOME/fontconfig/conf.d and ~/.fonts.conf.d is the conventional
-   name for a per-user directory of (typically auto-generated) configuration
-   files, although the actual location is specified in the global fonts.conf
-   file. please note that ~/.fonts.conf.d is deprecated now. it will not be
+   configuration files managed by external applications or the
+   local administrator. The filenames starting with decimal digits
+   are sorted in lexicographic order and used as additional
+   configuration files. All of these files are in XML format. The
+   master fonts.conf file references this directory in an
+   <include> directive.
+
+   fonts.dtd is a DTD that describes the format of the
+   configuration files.
+
+   $XDG_CONFIG_HOME/fontconfig/conf.d and ~/.fonts.conf.d is the
+   conventional name for a per-user directory of (typically
+   auto-generated) configuration files, although the actual
+   location is specified in the global fonts.conf file. please
+   note that ~/.fonts.conf.d is deprecated now. it will not be
    read by default in the future version.
 
    $XDG_CONFIG_HOME/fontconfig/fonts.conf and ~/.fonts.conf is the
-   conventional location for per-user font configuration, although the actual
-   location is specified in the global fonts.conf file. please note that
-   ~/.fonts.conf is deprecated now. it will not be read by default in the
-   future version.
-
-   $XDG_CACHE_HOME/fontconfig/*.cache-* and ~/.fontconfig/*.cache-* is the
-   conventional repository of font information that isn't found in the
-   per-directory caches. This file is automatically maintained by fontconfig.
-   please note that ~/.fontconfig/*.cache-* is deprecated now. it will not be
+   conventional location for per-user font configuration, although
+   the actual location is specified in the global fonts.conf file.
+   please note that ~/.fonts.conf is deprecated now. it will not
+   be read by default in the future version.
+
+   $XDG_CACHE_HOME/fontconfig/*.cache-* and
+   ~/.fontconfig/*.cache-* is the conventional repository of font
+   information that isn't found in the per-directory caches. This
+   file is automatically maintained by fontconfig. please note
+   that ~/.fontconfig/*.cache-* is deprecated now. it will not be
    read by default in the future version.
 
 Environment variables
 
-   FONTCONFIG_FILE is used to override the default configuration file.
+   FONTCONFIG_FILE is used to override the default configuration
+   file.
 
-   FONTCONFIG_PATH is used to override the default configuration directory.
+   FONTCONFIG_PATH is used to override the default configuration
+   directory.
 
    FC_DEBUG is used to output the detailed debugging messages. see
-   [1]Debugging Applications section for more details.
+   Debugging Applications section for more details.
 
-   FONTCONFIG_USE_MMAP is used to control the use of mmap(2) for the cache
-   files if available. this take a boolean value. fontconfig will checks if
-   the cache files are stored on the filesystem that is safe to use mmap(2).
-   explicitly setting this environment variable will causes skipping this
-   check and enforce to use or not use mmap(2) anyway.
+   FONTCONFIG_USE_MMAP is used to control the use of mmap(2) for
+   the cache files if available. this take a boolean value.
+   fontconfig will checks if the cache files are stored on the
+   filesystem that is safe to use mmap(2). explicitly setting this
+   environment variable will causes skipping this check and
+   enforce to use or not use mmap(2) anyway.
 
 See Also
 
@@ -770,9 +824,4 @@ See Also
 
 Version
 
-   Fontconfig version 2.10.91
-
-References
-
-   Visible links
-   1. file:///tmp/html-sp859j#DEBUG
+   Fontconfig version 2.11.93
index 55cc3cd..a799049 100644 (file)
@@ -1,5 +1,5 @@
 .\" auto-generated by docbook2man-spec from docbook-utils package
-.TH "FONTS-CONF" "5" "10 1月 2013" "" ""
+.TH "FONTS-CONF" "5" "09 3月 2015" "" ""
 .SH NAME
 fonts.conf \- Font configuration files
 .SH SYNOPSIS
@@ -81,9 +81,10 @@ convenience for the applications' rendering mechanism.
   file            String  The filename holding the font
   index           Int     The index of the font within the file
   ftface          FT_Face Use the specified FreeType face object
-  rasterizer      String  Which rasterizer is in use
+  rasterizer      String  Which rasterizer is in use (deprecated)
   outline         Bool    Whether the glyphs are outlines
   scalable        Bool    Whether glyphs can be scaled
+  color           Bool    Whether any glyphs have color
   scale           Double  Scale factor for point->pixel conversions
   dpi             Double  Target dots per inch
   rgba            Int     unknown, rgb, bgr, vrgb, vbgr,
@@ -95,7 +96,15 @@ convenience for the applications' rendering mechanism.
                           font supports
   fontversion     Int     Version number of the font
   capability      String  List of layout capabilities in the font
+  fontformat      String  String name of the font format
   embolden        Bool    Rasterizer should synthetically embolden the font
+  embeddedbitmap  Bool    Use the embedded bitmap instead of the outline
+  decorative      Bool    Whether the style is a decorative variant
+  fontfeatures    String  List of the feature tags in OpenType to be enabled
+  namelang        String  Language name to be used for the default value of
+                          familylang, stylelang, and fullnamelang
+  prgname         String  String  Name of the running program
+  postscriptname  String  Font family name in PostScript
     
 .sp
 .fi
@@ -277,7 +286,7 @@ the configuration file, the directory that can be accessed first in the list
 will be used to store the cache files. If it starts with '~', it refers to
 a directory in the users home directory. If 'prefix' is set to "xdg", the value in the XDG_CACHE_HOME environment variable will be added as the path prefix. please see XDG Base Directory Specification for more details.
 The default directory is ``$XDG_CACHE_HOME/fontconfig'' and it contains the cache files
-named ``<hash value>-<architecture>\&.cache-<version\&'',
+named ``<hash value>-<architecture>\&.cache-<version>\&'',
 where <version> is the font configureation file
 version number (currently 3).
 .SS "<INCLUDE IGNORE_MISSING=""NO"" PREFIX=""DEFAULT"">"
@@ -389,6 +398,8 @@ with "same" binding using the value from the matched pattern element.
   "prepend_first"         Insert at head of list  Insert at head of list
   "append"                Append after matching   Append at end of list
   "append_last"           Append at end of list   Append at end of list
+  "delete"                Delete matching value   Delete all values
+  "delete_all"            Delete all values       Delete all values
     
 .sp
 .fi
@@ -438,6 +449,8 @@ symbolic names for common font values:
   extralight      weight          40
   ultralight      weight          40
   light           weight          50
+  demilight       weight          55
+  semilight       weight          55
   book            weight          75
   regular         weight          80
   normal          weight          80
@@ -735,4 +748,4 @@ is used to control the use of mmap(2) for the cache files if available. this tak
 fc-cat(1), fc-cache(1), fc-list(1), fc-match(1), fc-query(1)
 .SH "VERSION"
 .PP
-Fontconfig version 2.10.91
+Fontconfig version 2.11.93
index 73e7761..f076baf 100644 (file)
@@ -33,6 +33,7 @@
            <refentrytitle>@FUNC@</refentrytitle>
 @;@
            <manvolnum>3</manvolnum>
+           <refmiscinfo class="software">Fontconfig &version;</refmiscinfo>
        </refmeta>
        <refnamediv>
 @{PROTOTYPE@
@@ -82,9 +83,9 @@
 @DESC@
            </para>
        </refsect1>
-       <refsect1><title>Version</title>
-           <para>
-Fontconfig version &version;
-           </para>
+@?SINCE@
+       <refsect1><title>Since</title>
+           <para>version @SINCE@</para>
        </refsect1>
+@;@
     </refentry>
diff --git a/fc-blanks/Makefile.am b/fc-blanks/Makefile.am
new file mode 100644 (file)
index 0000000..e9de1fe
--- /dev/null
@@ -0,0 +1,41 @@
+# -*- encoding: utf-8 -*-
+#
+# Copyright © 2003  Keith Packard
+#
+# Permission to use, copy, modify, distribute, and sell this software and its
+# documentation for any purpose is hereby granted without fee, provided that
+# the above copyright notice appear in all copies and that both that
+# copyright notice and this permission notice appear in supporting
+# documentation, and that the name of the author(s) not be used in
+# advertising or publicity pertaining to distribution of the software without
+# specific, written prior permission.  The authors make no
+# representations about the suitability of this software for any purpose.  It
+# is provided "as is" without express or implied warranty.
+#
+# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+# EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+# PERFORMANCE OF THIS SOFTWARE.
+
+NULL =
+BLANKSPY = fc-blanks.py
+BLANKS_H = fcblanks.h
+TMPL = fcblanks.tmpl.h
+noinst_SCRIPTS = $(BLANKSPY)
+noinst_HEADERS = $(BLANKS_H)
+
+$(BLANKS_H): $(TMPL) $(BLANKSPY)
+       $(AM_V_GEN) $(PYTHON) $(srcdir)/$(BLANKSPY) < $< > $(BLANKS_H).tmp && \
+       mv $(BLANKS_H).tmp $(BLANKS_H) || ($(RM) $(BLANKS_H).tmp && false)
+
+EXTRA_DIST =           \
+       $(BLANKSPY)     \
+       $(BLANKS_H)     \
+       $(TMPL)         \
+       $(NULL)
+DISTCLEANFILES = $(BLANKS_H)
+
+-include $(top_srcdir)/git.mk
diff --git a/fc-blanks/Makefile.in b/fc-blanks/Makefile.in
new file mode 100644 (file)
index 0000000..52b860b
--- /dev/null
@@ -0,0 +1,588 @@
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+# -*- encoding: utf-8 -*-
+#
+# Copyright © 2003  Keith Packard
+#
+# Permission to use, copy, modify, distribute, and sell this software and its
+# documentation for any purpose is hereby granted without fee, provided that
+# the above copyright notice appear in all copies and that both that
+# copyright notice and this permission notice appear in supporting
+# documentation, and that the name of the author(s) not be used in
+# advertising or publicity pertaining to distribution of the software without
+# specific, written prior permission.  The authors make no
+# representations about the suitability of this software for any purpose.  It
+# is provided "as is" without express or implied warranty.
+#
+# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+# EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+# PERFORMANCE OF THIS SOFTWARE.
+
+
+VPATH = @srcdir@
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
+    case $$MAKEFLAGS in \
+      *\\[\ \  ]*) \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = fc-blanks
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+       $(noinst_HEADERS)
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
+       $(top_srcdir)/m4/ax_create_stdint_h.m4 \
+       $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
+       $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
+       $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+       $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+SCRIPTS = $(noinst_SCRIPTS)
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
+HEADERS = $(noinst_HEADERS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BASECONFIGDIR = @BASECONFIGDIR@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CC_FOR_BUILD = @CC_FOR_BUILD@
+CFLAGS = @CFLAGS@
+CONFIGDIR = @CONFIGDIR@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DOCMAN3 = @DOCMAN3@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXEEXT_FOR_BUILD = @EXEEXT_FOR_BUILD@
+EXPAT_CFLAGS = @EXPAT_CFLAGS@
+EXPAT_LIBS = @EXPAT_LIBS@
+FC_ADD_FONTS = @FC_ADD_FONTS@
+FC_CACHEDIR = @FC_CACHEDIR@
+FC_DEFAULT_FONTS = @FC_DEFAULT_FONTS@
+FC_FONTDATE = @FC_FONTDATE@
+FC_FONTPATH = @FC_FONTPATH@
+FGREP = @FGREP@
+FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
+FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
+GREP = @GREP@
+HASDOCBOOK = @HASDOCBOOK@
+HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
+ICONV_CFLAGS = @ICONV_CFLAGS@
+ICONV_LIBS = @ICONV_LIBS@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIBT_CURRENT = @LIBT_CURRENT@
+LIBT_CURRENT_MINUS_AGE = @LIBT_CURRENT_MINUS_AGE@
+LIBT_REVISION = @LIBT_REVISION@
+LIBT_VERSION_INFO = @LIBT_VERSION_INFO@
+LIBXML2_CFLAGS = @LIBXML2_CFLAGS@
+LIBXML2_LIBS = @LIBXML2_LIBS@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
+PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
+PTHREAD_CC = @PTHREAD_CC@
+PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
+PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
+RANLIB = @RANLIB@
+RM = @RM@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+TEMPLATEDIR = @TEMPLATEDIR@
+VERSION = @VERSION@
+WARN_CFLAGS = @WARN_CFLAGS@
+XMLDIR = @XMLDIR@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+ax_pthread_config = @ax_pthread_config@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+fc_cachedir = @fc_cachedir@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+ms_librarian = @ms_librarian@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+NULL = 
+BLANKSPY = fc-blanks.py
+BLANKS_H = fcblanks.h
+TMPL = fcblanks.tmpl.h
+noinst_SCRIPTS = $(BLANKSPY)
+noinst_HEADERS = $(BLANKS_H)
+EXTRA_DIST = \
+       $(BLANKSPY)     \
+       $(BLANKS_H)     \
+       $(TMPL)         \
+       $(NULL)
+
+DISTCLEANFILES = $(BLANKS_H)
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
+       @for dep in $?; do \
+         case '$(am__configure_deps)' in \
+           *$$dep*) \
+             ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+               && { if test -f $@; then exit 0; else break; fi; }; \
+             exit 1;; \
+         esac; \
+       done; \
+       echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu fc-blanks/Makefile'; \
+       $(am__cd) $(top_srcdir) && \
+         $(AUTOMAKE) --gnu fc-blanks/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+       @case '$?' in \
+         *config.status*) \
+           cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+         *) \
+           echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+           cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+       esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure:  $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4):  $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+       -rm -f *.lo
+
+clean-libtool:
+       -rm -rf .libs _libs
+
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       set x; \
+       here=`pwd`; \
+       $(am__define_uniq_tagged_files); \
+       shift; \
+       if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+         test -n "$$unique" || unique=$$empty_fix; \
+         if test $$# -gt 0; then \
+           $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+             "$$@" $$unique; \
+         else \
+           $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+             $$unique; \
+         fi; \
+       fi
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
+       test -z "$(CTAGS_ARGS)$$unique" \
+         || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+            $$unique
+
+GTAGS:
+       here=`$(am__cd) $(top_builddir) && pwd` \
+         && $(am__cd) $(top_srcdir) \
+         && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
+
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
+       case "$(srcdir)" in \
+         [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+         *) sdir=$(subdir)/$(srcdir) ;; \
+       esac; \
+       for i in $$list; do \
+         if test -f "$$i"; then \
+           echo "$(subdir)/$$i"; \
+         else \
+           echo "$$sdir/$$i"; \
+         fi; \
+       done >> $(top_builddir)/cscope.files
+
+distclean-tags:
+       -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+       @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+       topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+       list='$(DISTFILES)'; \
+         dist_files=`for file in $$list; do echo $$file; done | \
+         sed -e "s|^$$srcdirstrip/||;t" \
+             -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+       case $$dist_files in \
+         */*) $(MKDIR_P) `echo "$$dist_files" | \
+                          sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+                          sort -u` ;; \
+       esac; \
+       for file in $$dist_files; do \
+         if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+         if test -d $$d/$$file; then \
+           dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+           if test -d "$(distdir)/$$file"; then \
+             find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+           fi; \
+           if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+             cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+             find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+           fi; \
+           cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+         else \
+           test -f "$(distdir)/$$file" \
+           || cp -p $$d/$$file "$(distdir)/$$file" \
+           || exit 1; \
+         fi; \
+       done
+check-am: all-am
+check: check-am
+all-am: Makefile $(SCRIPTS) $(HEADERS)
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       if test -z '$(STRIP)'; then \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+             install; \
+       else \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+           "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+       fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+       -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+       -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+       -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
+
+maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+       @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+       -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+       clean-libtool cscopelist-am ctags ctags-am distclean \
+       distclean-generic distclean-libtool distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-dvi install-dvi-am \
+       install-exec install-exec-am install-html install-html-am \
+       install-info install-info-am install-man install-pdf \
+       install-pdf-am install-ps install-ps-am install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic \
+       mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
+       uninstall-am
+
+
+$(BLANKS_H): $(TMPL) $(BLANKSPY)
+       $(AM_V_GEN) $(PYTHON) $(srcdir)/$(BLANKSPY) < $< > $(BLANKS_H).tmp && \
+       mv $(BLANKS_H).tmp $(BLANKS_H) || ($(RM) $(BLANKS_H).tmp && false)
+
+-include $(top_srcdir)/git.mk
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/fc-blanks/fc-blanks.py b/fc-blanks/fc-blanks.py
new file mode 100755 (executable)
index 0000000..a2f0b95
--- /dev/null
@@ -0,0 +1,132 @@
+#! /usr/bin/python
+
+import urllib2
+import sys
+from lxml import html
+
+fp = urllib2.urlopen('http://unicode.org/cldr/utility/list-unicodeset.jsp?a=[%3AGC%3DZs%3A][%3ADI%3A]&abb=on&ucd=on&esc=on&g')
+data = fp.read()
+fp.close()
+
+dom = html.fromstring(data)
+x = dom.xpath('/html/body/form/p/text()')
+p = x[1]
+if p[0] == '[' and p[-1] == ']':
+    p = p.replace('[', '').replace(']', '')
+else:
+    sys.exit(1)
+fescape = False
+funicode = False
+frange = False
+fprocess = False
+v = 0
+vbegin = 0
+vend = 0
+n = 0
+l = []
+
+def insert(db, begin, end):
+    db.append([begin, end])
+
+for i in p:
+    if i == '\\':
+        if n > 0:
+            if frange == True and funicode == True:
+                vend = v
+                insert(l, vbegin, vend)
+                fprocess = True
+            elif funicode == True:
+                vbegin = v
+                vend = v
+                insert(l, vbegin, vend)
+                fprocess = True
+        funicode = False
+        fescape = True
+    elif i.lower() == 'u' and fescape == True:
+        funicode = True
+        fescape = False
+    elif i >= '0' and i <= '9' or i.lower() >= 'a' and i.lower() <= 'f':
+        if fescape == True:
+            raise RuntimeError, "Unexpected escape code"
+        if funicode == True:
+            v <<= 4
+            v += int(i, 16)
+        else:
+            raise RuntimeError, "Unable to parse Unicode"
+    elif i == ' ':
+        if fescape == True:
+            funicode = True
+            fescape = False
+            v = 0x20
+        if frange == True and funicode == True:
+            vend = v
+            insert(l, vbegin, vend)
+            fprocess = True
+        elif funicode == True:
+            vbegin = v
+            vend = v
+            insert(l, vbegin, vend)
+            fprocess = True
+        funicode = False
+        frange = False
+    elif i == '-':
+        if fescape == True:
+            raise RuntimeError, "Unexpected escape code"
+        vbegin = v
+        v = 0
+        funicode = False
+        frange = True
+    else:
+        raise RuntimeError, "Unable to parse Unicode: %s" % i
+
+    if fprocess == True:
+        vbegin = 0
+        vend = 0
+        v = 0
+        fprocess = False
+        funicode = False
+        frange = False
+    n += 1
+
+if frange == True and funicode == True:
+    vend = v
+    insert(l, vbegin, vend)
+elif funicode == True:
+    vbegin = vend = v
+    insert(l, vbegin, vend)
+
+ncode = 0
+for i in l:
+    ncode += (i[1] - i[0] + 1)
+
+a = int(x[0].split(' ')[0].replace(',', ''))
+if a != ncode:
+    sys.stderr.write("Unexpected the amount of code points: %d (expected %d)\n" % (ncode, a))
+    sys.exit(1)
+
+# exception; BRAILLE PATTERN BLANK
+insert(l, 0x2800, 0x2800)
+
+while True:
+    s = sys.stdin.readline().rstrip()
+    if s == "@@@":
+        break
+    print s
+
+print "static FcChar32 _fcBlanks[%s] = {" % (ncode + 1)
+k = 0
+for i in sorted(l, key=lambda(a): a[0]):
+    for j in range(i[0], i[1] + 1):
+        if k != 0:
+            print ","
+        print "    0x%04x" % j,
+        k += 1
+
+print "};"
+print '''
+static FcBlanks fcBlanks = {
+    %s,
+    -1,
+    _fcBlanks
+};
+''' % (ncode + 1)
diff --git a/fc-blanks/fcblanks.h b/fc-blanks/fcblanks.h
new file mode 100644 (file)
index 0000000..51ba34d
--- /dev/null
@@ -0,0 +1,4223 @@
+/*
+ * fontconfig/fc-blanks/fcblanks.tmpl.h
+ *
+ * Copyright © 2003 Keith Packard
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission.  The authors make no
+ * representations about the suitability of this software for any purpose.  It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+
+static FcChar32 _fcBlanks[4191] = {
+    0x0020 ,
+    0x00a0 ,
+    0x00ad ,
+    0x034f ,
+    0x061c ,
+    0x115f ,
+    0x1160 ,
+    0x1680 ,
+    0x17b4 ,
+    0x17b5 ,
+    0x180b ,
+    0x180c ,
+    0x180d ,
+    0x180e ,
+    0x2000 ,
+    0x2001 ,
+    0x2002 ,
+    0x2003 ,
+    0x2004 ,
+    0x2005 ,
+    0x2006 ,
+    0x2007 ,
+    0x2008 ,
+    0x2009 ,
+    0x200a ,
+    0x200b ,
+    0x200c ,
+    0x200d ,
+    0x200e ,
+    0x200f ,
+    0x202a ,
+    0x202b ,
+    0x202c ,
+    0x202d ,
+    0x202e ,
+    0x202f ,
+    0x205f ,
+    0x2060 ,
+    0x2061 ,
+    0x2062 ,
+    0x2063 ,
+    0x2064 ,
+    0x2065 ,
+    0x2066 ,
+    0x2067 ,
+    0x2068 ,
+    0x2069 ,
+    0x206a ,
+    0x206b ,
+    0x206c ,
+    0x206d ,
+    0x206e ,
+    0x206f ,
+    0x2800 ,
+    0x3000 ,
+    0x3164 ,
+    0xfe00 ,
+    0xfe01 ,
+    0xfe02 ,
+    0xfe03 ,
+    0xfe04 ,
+    0xfe05 ,
+    0xfe06 ,
+    0xfe07 ,
+    0xfe08 ,
+    0xfe09 ,
+    0xfe0a ,
+    0xfe0b ,
+    0xfe0c ,
+    0xfe0d ,
+    0xfe0e ,
+    0xfe0f ,
+    0xfeff ,
+    0xffa0 ,
+    0xfff0 ,
+    0xfff1 ,
+    0xfff2 ,
+    0xfff3 ,
+    0xfff4 ,
+    0xfff5 ,
+    0xfff6 ,
+    0xfff7 ,
+    0xfff8 ,
+    0x1bca0 ,
+    0x1bca1 ,
+    0x1bca2 ,
+    0x1bca3 ,
+    0x1d173 ,
+    0x1d174 ,
+    0x1d175 ,
+    0x1d176 ,
+    0x1d177 ,
+    0x1d178 ,
+    0x1d179 ,
+    0x1d17a ,
+    0xe0000 ,
+    0xe0001 ,
+    0xe0002 ,
+    0xe0003 ,
+    0xe0004 ,
+    0xe0005 ,
+    0xe0006 ,
+    0xe0007 ,
+    0xe0008 ,
+    0xe0009 ,
+    0xe000a ,
+    0xe000b ,
+    0xe000c ,
+    0xe000d ,
+    0xe000e ,
+    0xe000f ,
+    0xe0010 ,
+    0xe0011 ,
+    0xe0012 ,
+    0xe0013 ,
+    0xe0014 ,
+    0xe0015 ,
+    0xe0016 ,
+    0xe0017 ,
+    0xe0018 ,
+    0xe0019 ,
+    0xe001a ,
+    0xe001b ,
+    0xe001c ,
+    0xe001d ,
+    0xe001e ,
+    0xe001f ,
+    0xe0020 ,
+    0xe0021 ,
+    0xe0022 ,
+    0xe0023 ,
+    0xe0024 ,
+    0xe0025 ,
+    0xe0026 ,
+    0xe0027 ,
+    0xe0028 ,
+    0xe0029 ,
+    0xe002a ,
+    0xe002b ,
+    0xe002c ,
+    0xe002d ,
+    0xe002e ,
+    0xe002f ,
+    0xe0030 ,
+    0xe0031 ,
+    0xe0032 ,
+    0xe0033 ,
+    0xe0034 ,
+    0xe0035 ,
+    0xe0036 ,
+    0xe0037 ,
+    0xe0038 ,
+    0xe0039 ,
+    0xe003a ,
+    0xe003b ,
+    0xe003c ,
+    0xe003d ,
+    0xe003e ,
+    0xe003f ,
+    0xe0040 ,
+    0xe0041 ,
+    0xe0042 ,
+    0xe0043 ,
+    0xe0044 ,
+    0xe0045 ,
+    0xe0046 ,
+    0xe0047 ,
+    0xe0048 ,
+    0xe0049 ,
+    0xe004a ,
+    0xe004b ,
+    0xe004c ,
+    0xe004d ,
+    0xe004e ,
+    0xe004f ,
+    0xe0050 ,
+    0xe0051 ,
+    0xe0052 ,
+    0xe0053 ,
+    0xe0054 ,
+    0xe0055 ,
+    0xe0056 ,
+    0xe0057 ,
+    0xe0058 ,
+    0xe0059 ,
+    0xe005a ,
+    0xe005b ,
+    0xe005c ,
+    0xe005d ,
+    0xe005e ,
+    0xe005f ,
+    0xe0060 ,
+    0xe0061 ,
+    0xe0062 ,
+    0xe0063 ,
+    0xe0064 ,
+    0xe0065 ,
+    0xe0066 ,
+    0xe0067 ,
+    0xe0068 ,
+    0xe0069 ,
+    0xe006a ,
+    0xe006b ,
+    0xe006c ,
+    0xe006d ,
+    0xe006e ,
+    0xe006f ,
+    0xe0070 ,
+    0xe0071 ,
+    0xe0072 ,
+    0xe0073 ,
+    0xe0074 ,
+    0xe0075 ,
+    0xe0076 ,
+    0xe0077 ,
+    0xe0078 ,
+    0xe0079 ,
+    0xe007a ,
+    0xe007b ,
+    0xe007c ,
+    0xe007d ,
+    0xe007e ,
+    0xe007f ,
+    0xe0080 ,
+    0xe0081 ,
+    0xe0082 ,
+    0xe0083 ,
+    0xe0084 ,
+    0xe0085 ,
+    0xe0086 ,
+    0xe0087 ,
+    0xe0088 ,
+    0xe0089 ,
+    0xe008a ,
+    0xe008b ,
+    0xe008c ,
+    0xe008d ,
+    0xe008e ,
+    0xe008f ,
+    0xe0090 ,
+    0xe0091 ,
+    0xe0092 ,
+    0xe0093 ,
+    0xe0094 ,
+    0xe0095 ,
+    0xe0096 ,
+    0xe0097 ,
+    0xe0098 ,
+    0xe0099 ,
+    0xe009a ,
+    0xe009b ,
+    0xe009c ,
+    0xe009d ,
+    0xe009e ,
+    0xe009f ,
+    0xe00a0 ,
+    0xe00a1 ,
+    0xe00a2 ,
+    0xe00a3 ,
+    0xe00a4 ,
+    0xe00a5 ,
+    0xe00a6 ,
+    0xe00a7 ,
+    0xe00a8 ,
+    0xe00a9 ,
+    0xe00aa ,
+    0xe00ab ,
+    0xe00ac ,
+    0xe00ad ,
+    0xe00ae ,
+    0xe00af ,
+    0xe00b0 ,
+    0xe00b1 ,
+    0xe00b2 ,
+    0xe00b3 ,
+    0xe00b4 ,
+    0xe00b5 ,
+    0xe00b6 ,
+    0xe00b7 ,
+    0xe00b8 ,
+    0xe00b9 ,
+    0xe00ba ,
+    0xe00bb ,
+    0xe00bc ,
+    0xe00bd ,
+    0xe00be ,
+    0xe00bf ,
+    0xe00c0 ,
+    0xe00c1 ,
+    0xe00c2 ,
+    0xe00c3 ,
+    0xe00c4 ,
+    0xe00c5 ,
+    0xe00c6 ,
+    0xe00c7 ,
+    0xe00c8 ,
+    0xe00c9 ,
+    0xe00ca ,
+    0xe00cb ,
+    0xe00cc ,
+    0xe00cd ,
+    0xe00ce ,
+    0xe00cf ,
+    0xe00d0 ,
+    0xe00d1 ,
+    0xe00d2 ,
+    0xe00d3 ,
+    0xe00d4 ,
+    0xe00d5 ,
+    0xe00d6 ,
+    0xe00d7 ,
+    0xe00d8 ,
+    0xe00d9 ,
+    0xe00da ,
+    0xe00db ,
+    0xe00dc ,
+    0xe00dd ,
+    0xe00de ,
+    0xe00df ,
+    0xe00e0 ,
+    0xe00e1 ,
+    0xe00e2 ,
+    0xe00e3 ,
+    0xe00e4 ,
+    0xe00e5 ,
+    0xe00e6 ,
+    0xe00e7 ,
+    0xe00e8 ,
+    0xe00e9 ,
+    0xe00ea ,
+    0xe00eb ,
+    0xe00ec ,
+    0xe00ed ,
+    0xe00ee ,
+    0xe00ef ,
+    0xe00f0 ,
+    0xe00f1 ,
+    0xe00f2 ,
+    0xe00f3 ,
+    0xe00f4 ,
+    0xe00f5 ,
+    0xe00f6 ,
+    0xe00f7 ,
+    0xe00f8 ,
+    0xe00f9 ,
+    0xe00fa ,
+    0xe00fb ,
+    0xe00fc ,
+    0xe00fd ,
+    0xe00fe ,
+    0xe00ff ,
+    0xe0100 ,
+    0xe0101 ,
+    0xe0102 ,
+    0xe0103 ,
+    0xe0104 ,
+    0xe0105 ,
+    0xe0106 ,
+    0xe0107 ,
+    0xe0108 ,
+    0xe0109 ,
+    0xe010a ,
+    0xe010b ,
+    0xe010c ,
+    0xe010d ,
+    0xe010e ,
+    0xe010f ,
+    0xe0110 ,
+    0xe0111 ,
+    0xe0112 ,
+    0xe0113 ,
+    0xe0114 ,
+    0xe0115 ,
+    0xe0116 ,
+    0xe0117 ,
+    0xe0118 ,
+    0xe0119 ,
+    0xe011a ,
+    0xe011b ,
+    0xe011c ,
+    0xe011d ,
+    0xe011e ,
+    0xe011f ,
+    0xe0120 ,
+    0xe0121 ,
+    0xe0122 ,
+    0xe0123 ,
+    0xe0124 ,
+    0xe0125 ,
+    0xe0126 ,
+    0xe0127 ,
+    0xe0128 ,
+    0xe0129 ,
+    0xe012a ,
+    0xe012b ,
+    0xe012c ,
+    0xe012d ,
+    0xe012e ,
+    0xe012f ,
+    0xe0130 ,
+    0xe0131 ,
+    0xe0132 ,
+    0xe0133 ,
+    0xe0134 ,
+    0xe0135 ,
+    0xe0136 ,
+    0xe0137 ,
+    0xe0138 ,
+    0xe0139 ,
+    0xe013a ,
+    0xe013b ,
+    0xe013c ,
+    0xe013d ,
+    0xe013e ,
+    0xe013f ,
+    0xe0140 ,
+    0xe0141 ,
+    0xe0142 ,
+    0xe0143 ,
+    0xe0144 ,
+    0xe0145 ,
+    0xe0146 ,
+    0xe0147 ,
+    0xe0148 ,
+    0xe0149 ,
+    0xe014a ,
+    0xe014b ,
+    0xe014c ,
+    0xe014d ,
+    0xe014e ,
+    0xe014f ,
+    0xe0150 ,
+    0xe0151 ,
+    0xe0152 ,
+    0xe0153 ,
+    0xe0154 ,
+    0xe0155 ,
+    0xe0156 ,
+    0xe0157 ,
+    0xe0158 ,
+    0xe0159 ,
+    0xe015a ,
+    0xe015b ,
+    0xe015c ,
+    0xe015d ,
+    0xe015e ,
+    0xe015f ,
+    0xe0160 ,
+    0xe0161 ,
+    0xe0162 ,
+    0xe0163 ,
+    0xe0164 ,
+    0xe0165 ,
+    0xe0166 ,
+    0xe0167 ,
+    0xe0168 ,
+    0xe0169 ,
+    0xe016a ,
+    0xe016b ,
+    0xe016c ,
+    0xe016d ,
+    0xe016e ,
+    0xe016f ,
+    0xe0170 ,
+    0xe0171 ,
+    0xe0172 ,
+    0xe0173 ,
+    0xe0174 ,
+    0xe0175 ,
+    0xe0176 ,
+    0xe0177 ,
+    0xe0178 ,
+    0xe0179 ,
+    0xe017a ,
+    0xe017b ,
+    0xe017c ,
+    0xe017d ,
+    0xe017e ,
+    0xe017f ,
+    0xe0180 ,
+    0xe0181 ,
+    0xe0182 ,
+    0xe0183 ,
+    0xe0184 ,
+    0xe0185 ,
+    0xe0186 ,
+    0xe0187 ,
+    0xe0188 ,
+    0xe0189 ,
+    0xe018a ,
+    0xe018b ,
+    0xe018c ,
+    0xe018d ,
+    0xe018e ,
+    0xe018f ,
+    0xe0190 ,
+    0xe0191 ,
+    0xe0192 ,
+    0xe0193 ,
+    0xe0194 ,
+    0xe0195 ,
+    0xe0196 ,
+    0xe0197 ,
+    0xe0198 ,
+    0xe0199 ,
+    0xe019a ,
+    0xe019b ,
+    0xe019c ,
+    0xe019d ,
+    0xe019e ,
+    0xe019f ,
+    0xe01a0 ,
+    0xe01a1 ,
+    0xe01a2 ,
+    0xe01a3 ,
+    0xe01a4 ,
+    0xe01a5 ,
+    0xe01a6 ,
+    0xe01a7 ,
+    0xe01a8 ,
+    0xe01a9 ,
+    0xe01aa ,
+    0xe01ab ,
+    0xe01ac ,
+    0xe01ad ,
+    0xe01ae ,
+    0xe01af ,
+    0xe01b0 ,
+    0xe01b1 ,
+    0xe01b2 ,
+    0xe01b3 ,
+    0xe01b4 ,
+    0xe01b5 ,
+    0xe01b6 ,
+    0xe01b7 ,
+    0xe01b8 ,
+    0xe01b9 ,
+    0xe01ba ,
+    0xe01bb ,
+    0xe01bc ,
+    0xe01bd ,
+    0xe01be ,
+    0xe01bf ,
+    0xe01c0 ,
+    0xe01c1 ,
+    0xe01c2 ,
+    0xe01c3 ,
+    0xe01c4 ,
+    0xe01c5 ,
+    0xe01c6 ,
+    0xe01c7 ,
+    0xe01c8 ,
+    0xe01c9 ,
+    0xe01ca ,
+    0xe01cb ,
+    0xe01cc ,
+    0xe01cd ,
+    0xe01ce ,
+    0xe01cf ,
+    0xe01d0 ,
+    0xe01d1 ,
+    0xe01d2 ,
+    0xe01d3 ,
+    0xe01d4 ,
+    0xe01d5 ,
+    0xe01d6 ,
+    0xe01d7 ,
+    0xe01d8 ,
+    0xe01d9 ,
+    0xe01da ,
+    0xe01db ,
+    0xe01dc ,
+    0xe01dd ,
+    0xe01de ,
+    0xe01df ,
+    0xe01e0 ,
+    0xe01e1 ,
+    0xe01e2 ,
+    0xe01e3 ,
+    0xe01e4 ,
+    0xe01e5 ,
+    0xe01e6 ,
+    0xe01e7 ,
+    0xe01e8 ,
+    0xe01e9 ,
+    0xe01ea ,
+    0xe01eb ,
+    0xe01ec ,
+    0xe01ed ,
+    0xe01ee ,
+    0xe01ef ,
+    0xe01f0 ,
+    0xe01f1 ,
+    0xe01f2 ,
+    0xe01f3 ,
+    0xe01f4 ,
+    0xe01f5 ,
+    0xe01f6 ,
+    0xe01f7 ,
+    0xe01f8 ,
+    0xe01f9 ,
+    0xe01fa ,
+    0xe01fb ,
+    0xe01fc ,
+    0xe01fd ,
+    0xe01fe ,
+    0xe01ff ,
+    0xe0200 ,
+    0xe0201 ,
+    0xe0202 ,
+    0xe0203 ,
+    0xe0204 ,
+    0xe0205 ,
+    0xe0206 ,
+    0xe0207 ,
+    0xe0208 ,
+    0xe0209 ,
+    0xe020a ,
+    0xe020b ,
+    0xe020c ,
+    0xe020d ,
+    0xe020e ,
+    0xe020f ,
+    0xe0210 ,
+    0xe0211 ,
+    0xe0212 ,
+    0xe0213 ,
+    0xe0214 ,
+    0xe0215 ,
+    0xe0216 ,
+    0xe0217 ,
+    0xe0218 ,
+    0xe0219 ,
+    0xe021a ,
+    0xe021b ,
+    0xe021c ,
+    0xe021d ,
+    0xe021e ,
+    0xe021f ,
+    0xe0220 ,
+    0xe0221 ,
+    0xe0222 ,
+    0xe0223 ,
+    0xe0224 ,
+    0xe0225 ,
+    0xe0226 ,
+    0xe0227 ,
+    0xe0228 ,
+    0xe0229 ,
+    0xe022a ,
+    0xe022b ,
+    0xe022c ,
+    0xe022d ,
+    0xe022e ,
+    0xe022f ,
+    0xe0230 ,
+    0xe0231 ,
+    0xe0232 ,
+    0xe0233 ,
+    0xe0234 ,
+    0xe0235 ,
+    0xe0236 ,
+    0xe0237 ,
+    0xe0238 ,
+    0xe0239 ,
+    0xe023a ,
+    0xe023b ,
+    0xe023c ,
+    0xe023d ,
+    0xe023e ,
+    0xe023f ,
+    0xe0240 ,
+    0xe0241 ,
+    0xe0242 ,
+    0xe0243 ,
+    0xe0244 ,
+    0xe0245 ,
+    0xe0246 ,
+    0xe0247 ,
+    0xe0248 ,
+    0xe0249 ,
+    0xe024a ,
+    0xe024b ,
+    0xe024c ,
+    0xe024d ,
+    0xe024e ,
+    0xe024f ,
+    0xe0250 ,
+    0xe0251 ,
+    0xe0252 ,
+    0xe0253 ,
+    0xe0254 ,
+    0xe0255 ,
+    0xe0256 ,
+    0xe0257 ,
+    0xe0258 ,
+    0xe0259 ,
+    0xe025a ,
+    0xe025b ,
+    0xe025c ,
+    0xe025d ,
+    0xe025e ,
+    0xe025f ,
+    0xe0260 ,
+    0xe0261 ,
+    0xe0262 ,
+    0xe0263 ,
+    0xe0264 ,
+    0xe0265 ,
+    0xe0266 ,
+    0xe0267 ,
+    0xe0268 ,
+    0xe0269 ,
+    0xe026a ,
+    0xe026b ,
+    0xe026c ,
+    0xe026d ,
+    0xe026e ,
+    0xe026f ,
+    0xe0270 ,
+    0xe0271 ,
+    0xe0272 ,
+    0xe0273 ,
+    0xe0274 ,
+    0xe0275 ,
+    0xe0276 ,
+    0xe0277 ,
+    0xe0278 ,
+    0xe0279 ,
+    0xe027a ,
+    0xe027b ,
+    0xe027c ,
+    0xe027d ,
+    0xe027e ,
+    0xe027f ,
+    0xe0280 ,
+    0xe0281 ,
+    0xe0282 ,
+    0xe0283 ,
+    0xe0284 ,
+    0xe0285 ,
+    0xe0286 ,
+    0xe0287 ,
+    0xe0288 ,
+    0xe0289 ,
+    0xe028a ,
+    0xe028b ,
+    0xe028c ,
+    0xe028d ,
+    0xe028e ,
+    0xe028f ,
+    0xe0290 ,
+    0xe0291 ,
+    0xe0292 ,
+    0xe0293 ,
+    0xe0294 ,
+    0xe0295 ,
+    0xe0296 ,
+    0xe0297 ,
+    0xe0298 ,
+    0xe0299 ,
+    0xe029a ,
+    0xe029b ,
+    0xe029c ,
+    0xe029d ,
+    0xe029e ,
+    0xe029f ,
+    0xe02a0 ,
+    0xe02a1 ,
+    0xe02a2 ,
+    0xe02a3 ,
+    0xe02a4 ,
+    0xe02a5 ,
+    0xe02a6 ,
+    0xe02a7 ,
+    0xe02a8 ,
+    0xe02a9 ,
+    0xe02aa ,
+    0xe02ab ,
+    0xe02ac ,
+    0xe02ad ,
+    0xe02ae ,
+    0xe02af ,
+    0xe02b0 ,
+    0xe02b1 ,
+    0xe02b2 ,
+    0xe02b3 ,
+    0xe02b4 ,
+    0xe02b5 ,
+    0xe02b6 ,
+    0xe02b7 ,
+    0xe02b8 ,
+    0xe02b9 ,
+    0xe02ba ,
+    0xe02bb ,
+    0xe02bc ,
+    0xe02bd ,
+    0xe02be ,
+    0xe02bf ,
+    0xe02c0 ,
+    0xe02c1 ,
+    0xe02c2 ,
+    0xe02c3 ,
+    0xe02c4 ,
+    0xe02c5 ,
+    0xe02c6 ,
+    0xe02c7 ,
+    0xe02c8 ,
+    0xe02c9 ,
+    0xe02ca ,
+    0xe02cb ,
+    0xe02cc ,
+    0xe02cd ,
+    0xe02ce ,
+    0xe02cf ,
+    0xe02d0 ,
+    0xe02d1 ,
+    0xe02d2 ,
+    0xe02d3 ,
+    0xe02d4 ,
+    0xe02d5 ,
+    0xe02d6 ,
+    0xe02d7 ,
+    0xe02d8 ,
+    0xe02d9 ,
+    0xe02da ,
+    0xe02db ,
+    0xe02dc ,
+    0xe02dd ,
+    0xe02de ,
+    0xe02df ,
+    0xe02e0 ,
+    0xe02e1 ,
+    0xe02e2 ,
+    0xe02e3 ,
+    0xe02e4 ,
+    0xe02e5 ,
+    0xe02e6 ,
+    0xe02e7 ,
+    0xe02e8 ,
+    0xe02e9 ,
+    0xe02ea ,
+    0xe02eb ,
+    0xe02ec ,
+    0xe02ed ,
+    0xe02ee ,
+    0xe02ef ,
+    0xe02f0 ,
+    0xe02f1 ,
+    0xe02f2 ,
+    0xe02f3 ,
+    0xe02f4 ,
+    0xe02f5 ,
+    0xe02f6 ,
+    0xe02f7 ,
+    0xe02f8 ,
+    0xe02f9 ,
+    0xe02fa ,
+    0xe02fb ,
+    0xe02fc ,
+    0xe02fd ,
+    0xe02fe ,
+    0xe02ff ,
+    0xe0300 ,
+    0xe0301 ,
+    0xe0302 ,
+    0xe0303 ,
+    0xe0304 ,
+    0xe0305 ,
+    0xe0306 ,
+    0xe0307 ,
+    0xe0308 ,
+    0xe0309 ,
+    0xe030a ,
+    0xe030b ,
+    0xe030c ,
+    0xe030d ,
+    0xe030e ,
+    0xe030f ,
+    0xe0310 ,
+    0xe0311 ,
+    0xe0312 ,
+    0xe0313 ,
+    0xe0314 ,
+    0xe0315 ,
+    0xe0316 ,
+    0xe0317 ,
+    0xe0318 ,
+    0xe0319 ,
+    0xe031a ,
+    0xe031b ,
+    0xe031c ,
+    0xe031d ,
+    0xe031e ,
+    0xe031f ,
+    0xe0320 ,
+    0xe0321 ,
+    0xe0322 ,
+    0xe0323 ,
+    0xe0324 ,
+    0xe0325 ,
+    0xe0326 ,
+    0xe0327 ,
+    0xe0328 ,
+    0xe0329 ,
+    0xe032a ,
+    0xe032b ,
+    0xe032c ,
+    0xe032d ,
+    0xe032e ,
+    0xe032f ,
+    0xe0330 ,
+    0xe0331 ,
+    0xe0332 ,
+    0xe0333 ,
+    0xe0334 ,
+    0xe0335 ,
+    0xe0336 ,
+    0xe0337 ,
+    0xe0338 ,
+    0xe0339 ,
+    0xe033a ,
+    0xe033b ,
+    0xe033c ,
+    0xe033d ,
+    0xe033e ,
+    0xe033f ,
+    0xe0340 ,
+    0xe0341 ,
+    0xe0342 ,
+    0xe0343 ,
+    0xe0344 ,
+    0xe0345 ,
+    0xe0346 ,
+    0xe0347 ,
+    0xe0348 ,
+    0xe0349 ,
+    0xe034a ,
+    0xe034b ,
+    0xe034c ,
+    0xe034d ,
+    0xe034e ,
+    0xe034f ,
+    0xe0350 ,
+    0xe0351 ,
+    0xe0352 ,
+    0xe0353 ,
+    0xe0354 ,
+    0xe0355 ,
+    0xe0356 ,
+    0xe0357 ,
+    0xe0358 ,
+    0xe0359 ,
+    0xe035a ,
+    0xe035b ,
+    0xe035c ,
+    0xe035d ,
+    0xe035e ,
+    0xe035f ,
+    0xe0360 ,
+    0xe0361 ,
+    0xe0362 ,
+    0xe0363 ,
+    0xe0364 ,
+    0xe0365 ,
+    0xe0366 ,
+    0xe0367 ,
+    0xe0368 ,
+    0xe0369 ,
+    0xe036a ,
+    0xe036b ,
+    0xe036c ,
+    0xe036d ,
+    0xe036e ,
+    0xe036f ,
+    0xe0370 ,
+    0xe0371 ,
+    0xe0372 ,
+    0xe0373 ,
+    0xe0374 ,
+    0xe0375 ,
+    0xe0376 ,
+    0xe0377 ,
+    0xe0378 ,
+    0xe0379 ,
+    0xe037a ,
+    0xe037b ,
+    0xe037c ,
+    0xe037d ,
+    0xe037e ,
+    0xe037f ,
+    0xe0380 ,
+    0xe0381 ,
+    0xe0382 ,
+    0xe0383 ,
+    0xe0384 ,
+    0xe0385 ,
+    0xe0386 ,
+    0xe0387 ,
+    0xe0388 ,
+    0xe0389 ,
+    0xe038a ,
+    0xe038b ,
+    0xe038c ,
+    0xe038d ,
+    0xe038e ,
+    0xe038f ,
+    0xe0390 ,
+    0xe0391 ,
+    0xe0392 ,
+    0xe0393 ,
+    0xe0394 ,
+    0xe0395 ,
+    0xe0396 ,
+    0xe0397 ,
+    0xe0398 ,
+    0xe0399 ,
+    0xe039a ,
+    0xe039b ,
+    0xe039c ,
+    0xe039d ,
+    0xe039e ,
+    0xe039f ,
+    0xe03a0 ,
+    0xe03a1 ,
+    0xe03a2 ,
+    0xe03a3 ,
+    0xe03a4 ,
+    0xe03a5 ,
+    0xe03a6 ,
+    0xe03a7 ,
+    0xe03a8 ,
+    0xe03a9 ,
+    0xe03aa ,
+    0xe03ab ,
+    0xe03ac ,
+    0xe03ad ,
+    0xe03ae ,
+    0xe03af ,
+    0xe03b0 ,
+    0xe03b1 ,
+    0xe03b2 ,
+    0xe03b3 ,
+    0xe03b4 ,
+    0xe03b5 ,
+    0xe03b6 ,
+    0xe03b7 ,
+    0xe03b8 ,
+    0xe03b9 ,
+    0xe03ba ,
+    0xe03bb ,
+    0xe03bc ,
+    0xe03bd ,
+    0xe03be ,
+    0xe03bf ,
+    0xe03c0 ,
+    0xe03c1 ,
+    0xe03c2 ,
+    0xe03c3 ,
+    0xe03c4 ,
+    0xe03c5 ,
+    0xe03c6 ,
+    0xe03c7 ,
+    0xe03c8 ,
+    0xe03c9 ,
+    0xe03ca ,
+    0xe03cb ,
+    0xe03cc ,
+    0xe03cd ,
+    0xe03ce ,
+    0xe03cf ,
+    0xe03d0 ,
+    0xe03d1 ,
+    0xe03d2 ,
+    0xe03d3 ,
+    0xe03d4 ,
+    0xe03d5 ,
+    0xe03d6 ,
+    0xe03d7 ,
+    0xe03d8 ,
+    0xe03d9 ,
+    0xe03da ,
+    0xe03db ,
+    0xe03dc ,
+    0xe03dd ,
+    0xe03de ,
+    0xe03df ,
+    0xe03e0 ,
+    0xe03e1 ,
+    0xe03e2 ,
+    0xe03e3 ,
+    0xe03e4 ,
+    0xe03e5 ,
+    0xe03e6 ,
+    0xe03e7 ,
+    0xe03e8 ,
+    0xe03e9 ,
+    0xe03ea ,
+    0xe03eb ,
+    0xe03ec ,
+    0xe03ed ,
+    0xe03ee ,
+    0xe03ef ,
+    0xe03f0 ,
+    0xe03f1 ,
+    0xe03f2 ,
+    0xe03f3 ,
+    0xe03f4 ,
+    0xe03f5 ,
+    0xe03f6 ,
+    0xe03f7 ,
+    0xe03f8 ,
+    0xe03f9 ,
+    0xe03fa ,
+    0xe03fb ,
+    0xe03fc ,
+    0xe03fd ,
+    0xe03fe ,
+    0xe03ff ,
+    0xe0400 ,
+    0xe0401 ,
+    0xe0402 ,
+    0xe0403 ,
+    0xe0404 ,
+    0xe0405 ,
+    0xe0406 ,
+    0xe0407 ,
+    0xe0408 ,
+    0xe0409 ,
+    0xe040a ,
+    0xe040b ,
+    0xe040c ,
+    0xe040d ,
+    0xe040e ,
+    0xe040f ,
+    0xe0410 ,
+    0xe0411 ,
+    0xe0412 ,
+    0xe0413 ,
+    0xe0414 ,
+    0xe0415 ,
+    0xe0416 ,
+    0xe0417 ,
+    0xe0418 ,
+    0xe0419 ,
+    0xe041a ,
+    0xe041b ,
+    0xe041c ,
+    0xe041d ,
+    0xe041e ,
+    0xe041f ,
+    0xe0420 ,
+    0xe0421 ,
+    0xe0422 ,
+    0xe0423 ,
+    0xe0424 ,
+    0xe0425 ,
+    0xe0426 ,
+    0xe0427 ,
+    0xe0428 ,
+    0xe0429 ,
+    0xe042a ,
+    0xe042b ,
+    0xe042c ,
+    0xe042d ,
+    0xe042e ,
+    0xe042f ,
+    0xe0430 ,
+    0xe0431 ,
+    0xe0432 ,
+    0xe0433 ,
+    0xe0434 ,
+    0xe0435 ,
+    0xe0436 ,
+    0xe0437 ,
+    0xe0438 ,
+    0xe0439 ,
+    0xe043a ,
+    0xe043b ,
+    0xe043c ,
+    0xe043d ,
+    0xe043e ,
+    0xe043f ,
+    0xe0440 ,
+    0xe0441 ,
+    0xe0442 ,
+    0xe0443 ,
+    0xe0444 ,
+    0xe0445 ,
+    0xe0446 ,
+    0xe0447 ,
+    0xe0448 ,
+    0xe0449 ,
+    0xe044a ,
+    0xe044b ,
+    0xe044c ,
+    0xe044d ,
+    0xe044e ,
+    0xe044f ,
+    0xe0450 ,
+    0xe0451 ,
+    0xe0452 ,
+    0xe0453 ,
+    0xe0454 ,
+    0xe0455 ,
+    0xe0456 ,
+    0xe0457 ,
+    0xe0458 ,
+    0xe0459 ,
+    0xe045a ,
+    0xe045b ,
+    0xe045c ,
+    0xe045d ,
+    0xe045e ,
+    0xe045f ,
+    0xe0460 ,
+    0xe0461 ,
+    0xe0462 ,
+    0xe0463 ,
+    0xe0464 ,
+    0xe0465 ,
+    0xe0466 ,
+    0xe0467 ,
+    0xe0468 ,
+    0xe0469 ,
+    0xe046a ,
+    0xe046b ,
+    0xe046c ,
+    0xe046d ,
+    0xe046e ,
+    0xe046f ,
+    0xe0470 ,
+    0xe0471 ,
+    0xe0472 ,
+    0xe0473 ,
+    0xe0474 ,
+    0xe0475 ,
+    0xe0476 ,
+    0xe0477 ,
+    0xe0478 ,
+    0xe0479 ,
+    0xe047a ,
+    0xe047b ,
+    0xe047c ,
+    0xe047d ,
+    0xe047e ,
+    0xe047f ,
+    0xe0480 ,
+    0xe0481 ,
+    0xe0482 ,
+    0xe0483 ,
+    0xe0484 ,
+    0xe0485 ,
+    0xe0486 ,
+    0xe0487 ,
+    0xe0488 ,
+    0xe0489 ,
+    0xe048a ,
+    0xe048b ,
+    0xe048c ,
+    0xe048d ,
+    0xe048e ,
+    0xe048f ,
+    0xe0490 ,
+    0xe0491 ,
+    0xe0492 ,
+    0xe0493 ,
+    0xe0494 ,
+    0xe0495 ,
+    0xe0496 ,
+    0xe0497 ,
+    0xe0498 ,
+    0xe0499 ,
+    0xe049a ,
+    0xe049b ,
+    0xe049c ,
+    0xe049d ,
+    0xe049e ,
+    0xe049f ,
+    0xe04a0 ,
+    0xe04a1 ,
+    0xe04a2 ,
+    0xe04a3 ,
+    0xe04a4 ,
+    0xe04a5 ,
+    0xe04a6 ,
+    0xe04a7 ,
+    0xe04a8 ,
+    0xe04a9 ,
+    0xe04aa ,
+    0xe04ab ,
+    0xe04ac ,
+    0xe04ad ,
+    0xe04ae ,
+    0xe04af ,
+    0xe04b0 ,
+    0xe04b1 ,
+    0xe04b2 ,
+    0xe04b3 ,
+    0xe04b4 ,
+    0xe04b5 ,
+    0xe04b6 ,
+    0xe04b7 ,
+    0xe04b8 ,
+    0xe04b9 ,
+    0xe04ba ,
+    0xe04bb ,
+    0xe04bc ,
+    0xe04bd ,
+    0xe04be ,
+    0xe04bf ,
+    0xe04c0 ,
+    0xe04c1 ,
+    0xe04c2 ,
+    0xe04c3 ,
+    0xe04c4 ,
+    0xe04c5 ,
+    0xe04c6 ,
+    0xe04c7 ,
+    0xe04c8 ,
+    0xe04c9 ,
+    0xe04ca ,
+    0xe04cb ,
+    0xe04cc ,
+    0xe04cd ,
+    0xe04ce ,
+    0xe04cf ,
+    0xe04d0 ,
+    0xe04d1 ,
+    0xe04d2 ,
+    0xe04d3 ,
+    0xe04d4 ,
+    0xe04d5 ,
+    0xe04d6 ,
+    0xe04d7 ,
+    0xe04d8 ,
+    0xe04d9 ,
+    0xe04da ,
+    0xe04db ,
+    0xe04dc ,
+    0xe04dd ,
+    0xe04de ,
+    0xe04df ,
+    0xe04e0 ,
+    0xe04e1 ,
+    0xe04e2 ,
+    0xe04e3 ,
+    0xe04e4 ,
+    0xe04e5 ,
+    0xe04e6 ,
+    0xe04e7 ,
+    0xe04e8 ,
+    0xe04e9 ,
+    0xe04ea ,
+    0xe04eb ,
+    0xe04ec ,
+    0xe04ed ,
+    0xe04ee ,
+    0xe04ef ,
+    0xe04f0 ,
+    0xe04f1 ,
+    0xe04f2 ,
+    0xe04f3 ,
+    0xe04f4 ,
+    0xe04f5 ,
+    0xe04f6 ,
+    0xe04f7 ,
+    0xe04f8 ,
+    0xe04f9 ,
+    0xe04fa ,
+    0xe04fb ,
+    0xe04fc ,
+    0xe04fd ,
+    0xe04fe ,
+    0xe04ff ,
+    0xe0500 ,
+    0xe0501 ,
+    0xe0502 ,
+    0xe0503 ,
+    0xe0504 ,
+    0xe0505 ,
+    0xe0506 ,
+    0xe0507 ,
+    0xe0508 ,
+    0xe0509 ,
+    0xe050a ,
+    0xe050b ,
+    0xe050c ,
+    0xe050d ,
+    0xe050e ,
+    0xe050f ,
+    0xe0510 ,
+    0xe0511 ,
+    0xe0512 ,
+    0xe0513 ,
+    0xe0514 ,
+    0xe0515 ,
+    0xe0516 ,
+    0xe0517 ,
+    0xe0518 ,
+    0xe0519 ,
+    0xe051a ,
+    0xe051b ,
+    0xe051c ,
+    0xe051d ,
+    0xe051e ,
+    0xe051f ,
+    0xe0520 ,
+    0xe0521 ,
+    0xe0522 ,
+    0xe0523 ,
+    0xe0524 ,
+    0xe0525 ,
+    0xe0526 ,
+    0xe0527 ,
+    0xe0528 ,
+    0xe0529 ,
+    0xe052a ,
+    0xe052b ,
+    0xe052c ,
+    0xe052d ,
+    0xe052e ,
+    0xe052f ,
+    0xe0530 ,
+    0xe0531 ,
+    0xe0532 ,
+    0xe0533 ,
+    0xe0534 ,
+    0xe0535 ,
+    0xe0536 ,
+    0xe0537 ,
+    0xe0538 ,
+    0xe0539 ,
+    0xe053a ,
+    0xe053b ,
+    0xe053c ,
+    0xe053d ,
+    0xe053e ,
+    0xe053f ,
+    0xe0540 ,
+    0xe0541 ,
+    0xe0542 ,
+    0xe0543 ,
+    0xe0544 ,
+    0xe0545 ,
+    0xe0546 ,
+    0xe0547 ,
+    0xe0548 ,
+    0xe0549 ,
+    0xe054a ,
+    0xe054b ,
+    0xe054c ,
+    0xe054d ,
+    0xe054e ,
+    0xe054f ,
+    0xe0550 ,
+    0xe0551 ,
+    0xe0552 ,
+    0xe0553 ,
+    0xe0554 ,
+    0xe0555 ,
+    0xe0556 ,
+    0xe0557 ,
+    0xe0558 ,
+    0xe0559 ,
+    0xe055a ,
+    0xe055b ,
+    0xe055c ,
+    0xe055d ,
+    0xe055e ,
+    0xe055f ,
+    0xe0560 ,
+    0xe0561 ,
+    0xe0562 ,
+    0xe0563 ,
+    0xe0564 ,
+    0xe0565 ,
+    0xe0566 ,
+    0xe0567 ,
+    0xe0568 ,
+    0xe0569 ,
+    0xe056a ,
+    0xe056b ,
+    0xe056c ,
+    0xe056d ,
+    0xe056e ,
+    0xe056f ,
+    0xe0570 ,
+    0xe0571 ,
+    0xe0572 ,
+    0xe0573 ,
+    0xe0574 ,
+    0xe0575 ,
+    0xe0576 ,
+    0xe0577 ,
+    0xe0578 ,
+    0xe0579 ,
+    0xe057a ,
+    0xe057b ,
+    0xe057c ,
+    0xe057d ,
+    0xe057e ,
+    0xe057f ,
+    0xe0580 ,
+    0xe0581 ,
+    0xe0582 ,
+    0xe0583 ,
+    0xe0584 ,
+    0xe0585 ,
+    0xe0586 ,
+    0xe0587 ,
+    0xe0588 ,
+    0xe0589 ,
+    0xe058a ,
+    0xe058b ,
+    0xe058c ,
+    0xe058d ,
+    0xe058e ,
+    0xe058f ,
+    0xe0590 ,
+    0xe0591 ,
+    0xe0592 ,
+    0xe0593 ,
+    0xe0594 ,
+    0xe0595 ,
+    0xe0596 ,
+    0xe0597 ,
+    0xe0598 ,
+    0xe0599 ,
+    0xe059a ,
+    0xe059b ,
+    0xe059c ,
+    0xe059d ,
+    0xe059e ,
+    0xe059f ,
+    0xe05a0 ,
+    0xe05a1 ,
+    0xe05a2 ,
+    0xe05a3 ,
+    0xe05a4 ,
+    0xe05a5 ,
+    0xe05a6 ,
+    0xe05a7 ,
+    0xe05a8 ,
+    0xe05a9 ,
+    0xe05aa ,
+    0xe05ab ,
+    0xe05ac ,
+    0xe05ad ,
+    0xe05ae ,
+    0xe05af ,
+    0xe05b0 ,
+    0xe05b1 ,
+    0xe05b2 ,
+    0xe05b3 ,
+    0xe05b4 ,
+    0xe05b5 ,
+    0xe05b6 ,
+    0xe05b7 ,
+    0xe05b8 ,
+    0xe05b9 ,
+    0xe05ba ,
+    0xe05bb ,
+    0xe05bc ,
+    0xe05bd ,
+    0xe05be ,
+    0xe05bf ,
+    0xe05c0 ,
+    0xe05c1 ,
+    0xe05c2 ,
+    0xe05c3 ,
+    0xe05c4 ,
+    0xe05c5 ,
+    0xe05c6 ,
+    0xe05c7 ,
+    0xe05c8 ,
+    0xe05c9 ,
+    0xe05ca ,
+    0xe05cb ,
+    0xe05cc ,
+    0xe05cd ,
+    0xe05ce ,
+    0xe05cf ,
+    0xe05d0 ,
+    0xe05d1 ,
+    0xe05d2 ,
+    0xe05d3 ,
+    0xe05d4 ,
+    0xe05d5 ,
+    0xe05d6 ,
+    0xe05d7 ,
+    0xe05d8 ,
+    0xe05d9 ,
+    0xe05da ,
+    0xe05db ,
+    0xe05dc ,
+    0xe05dd ,
+    0xe05de ,
+    0xe05df ,
+    0xe05e0 ,
+    0xe05e1 ,
+    0xe05e2 ,
+    0xe05e3 ,
+    0xe05e4 ,
+    0xe05e5 ,
+    0xe05e6 ,
+    0xe05e7 ,
+    0xe05e8 ,
+    0xe05e9 ,
+    0xe05ea ,
+    0xe05eb ,
+    0xe05ec ,
+    0xe05ed ,
+    0xe05ee ,
+    0xe05ef ,
+    0xe05f0 ,
+    0xe05f1 ,
+    0xe05f2 ,
+    0xe05f3 ,
+    0xe05f4 ,
+    0xe05f5 ,
+    0xe05f6 ,
+    0xe05f7 ,
+    0xe05f8 ,
+    0xe05f9 ,
+    0xe05fa ,
+    0xe05fb ,
+    0xe05fc ,
+    0xe05fd ,
+    0xe05fe ,
+    0xe05ff ,
+    0xe0600 ,
+    0xe0601 ,
+    0xe0602 ,
+    0xe0603 ,
+    0xe0604 ,
+    0xe0605 ,
+    0xe0606 ,
+    0xe0607 ,
+    0xe0608 ,
+    0xe0609 ,
+    0xe060a ,
+    0xe060b ,
+    0xe060c ,
+    0xe060d ,
+    0xe060e ,
+    0xe060f ,
+    0xe0610 ,
+    0xe0611 ,
+    0xe0612 ,
+    0xe0613 ,
+    0xe0614 ,
+    0xe0615 ,
+    0xe0616 ,
+    0xe0617 ,
+    0xe0618 ,
+    0xe0619 ,
+    0xe061a ,
+    0xe061b ,
+    0xe061c ,
+    0xe061d ,
+    0xe061e ,
+    0xe061f ,
+    0xe0620 ,
+    0xe0621 ,
+    0xe0622 ,
+    0xe0623 ,
+    0xe0624 ,
+    0xe0625 ,
+    0xe0626 ,
+    0xe0627 ,
+    0xe0628 ,
+    0xe0629 ,
+    0xe062a ,
+    0xe062b ,
+    0xe062c ,
+    0xe062d ,
+    0xe062e ,
+    0xe062f ,
+    0xe0630 ,
+    0xe0631 ,
+    0xe0632 ,
+    0xe0633 ,
+    0xe0634 ,
+    0xe0635 ,
+    0xe0636 ,
+    0xe0637 ,
+    0xe0638 ,
+    0xe0639 ,
+    0xe063a ,
+    0xe063b ,
+    0xe063c ,
+    0xe063d ,
+    0xe063e ,
+    0xe063f ,
+    0xe0640 ,
+    0xe0641 ,
+    0xe0642 ,
+    0xe0643 ,
+    0xe0644 ,
+    0xe0645 ,
+    0xe0646 ,
+    0xe0647 ,
+    0xe0648 ,
+    0xe0649 ,
+    0xe064a ,
+    0xe064b ,
+    0xe064c ,
+    0xe064d ,
+    0xe064e ,
+    0xe064f ,
+    0xe0650 ,
+    0xe0651 ,
+    0xe0652 ,
+    0xe0653 ,
+    0xe0654 ,
+    0xe0655 ,
+    0xe0656 ,
+    0xe0657 ,
+    0xe0658 ,
+    0xe0659 ,
+    0xe065a ,
+    0xe065b ,
+    0xe065c ,
+    0xe065d ,
+    0xe065e ,
+    0xe065f ,
+    0xe0660 ,
+    0xe0661 ,
+    0xe0662 ,
+    0xe0663 ,
+    0xe0664 ,
+    0xe0665 ,
+    0xe0666 ,
+    0xe0667 ,
+    0xe0668 ,
+    0xe0669 ,
+    0xe066a ,
+    0xe066b ,
+    0xe066c ,
+    0xe066d ,
+    0xe066e ,
+    0xe066f ,
+    0xe0670 ,
+    0xe0671 ,
+    0xe0672 ,
+    0xe0673 ,
+    0xe0674 ,
+    0xe0675 ,
+    0xe0676 ,
+    0xe0677 ,
+    0xe0678 ,
+    0xe0679 ,
+    0xe067a ,
+    0xe067b ,
+    0xe067c ,
+    0xe067d ,
+    0xe067e ,
+    0xe067f ,
+    0xe0680 ,
+    0xe0681 ,
+    0xe0682 ,
+    0xe0683 ,
+    0xe0684 ,
+    0xe0685 ,
+    0xe0686 ,
+    0xe0687 ,
+    0xe0688 ,
+    0xe0689 ,
+    0xe068a ,
+    0xe068b ,
+    0xe068c ,
+    0xe068d ,
+    0xe068e ,
+    0xe068f ,
+    0xe0690 ,
+    0xe0691 ,
+    0xe0692 ,
+    0xe0693 ,
+    0xe0694 ,
+    0xe0695 ,
+    0xe0696 ,
+    0xe0697 ,
+    0xe0698 ,
+    0xe0699 ,
+    0xe069a ,
+    0xe069b ,
+    0xe069c ,
+    0xe069d ,
+    0xe069e ,
+    0xe069f ,
+    0xe06a0 ,
+    0xe06a1 ,
+    0xe06a2 ,
+    0xe06a3 ,
+    0xe06a4 ,
+    0xe06a5 ,
+    0xe06a6 ,
+    0xe06a7 ,
+    0xe06a8 ,
+    0xe06a9 ,
+    0xe06aa ,
+    0xe06ab ,
+    0xe06ac ,
+    0xe06ad ,
+    0xe06ae ,
+    0xe06af ,
+    0xe06b0 ,
+    0xe06b1 ,
+    0xe06b2 ,
+    0xe06b3 ,
+    0xe06b4 ,
+    0xe06b5 ,
+    0xe06b6 ,
+    0xe06b7 ,
+    0xe06b8 ,
+    0xe06b9 ,
+    0xe06ba ,
+    0xe06bb ,
+    0xe06bc ,
+    0xe06bd ,
+    0xe06be ,
+    0xe06bf ,
+    0xe06c0 ,
+    0xe06c1 ,
+    0xe06c2 ,
+    0xe06c3 ,
+    0xe06c4 ,
+    0xe06c5 ,
+    0xe06c6 ,
+    0xe06c7 ,
+    0xe06c8 ,
+    0xe06c9 ,
+    0xe06ca ,
+    0xe06cb ,
+    0xe06cc ,
+    0xe06cd ,
+    0xe06ce ,
+    0xe06cf ,
+    0xe06d0 ,
+    0xe06d1 ,
+    0xe06d2 ,
+    0xe06d3 ,
+    0xe06d4 ,
+    0xe06d5 ,
+    0xe06d6 ,
+    0xe06d7 ,
+    0xe06d8 ,
+    0xe06d9 ,
+    0xe06da ,
+    0xe06db ,
+    0xe06dc ,
+    0xe06dd ,
+    0xe06de ,
+    0xe06df ,
+    0xe06e0 ,
+    0xe06e1 ,
+    0xe06e2 ,
+    0xe06e3 ,
+    0xe06e4 ,
+    0xe06e5 ,
+    0xe06e6 ,
+    0xe06e7 ,
+    0xe06e8 ,
+    0xe06e9 ,
+    0xe06ea ,
+    0xe06eb ,
+    0xe06ec ,
+    0xe06ed ,
+    0xe06ee ,
+    0xe06ef ,
+    0xe06f0 ,
+    0xe06f1 ,
+    0xe06f2 ,
+    0xe06f3 ,
+    0xe06f4 ,
+    0xe06f5 ,
+    0xe06f6 ,
+    0xe06f7 ,
+    0xe06f8 ,
+    0xe06f9 ,
+    0xe06fa ,
+    0xe06fb ,
+    0xe06fc ,
+    0xe06fd ,
+    0xe06fe ,
+    0xe06ff ,
+    0xe0700 ,
+    0xe0701 ,
+    0xe0702 ,
+    0xe0703 ,
+    0xe0704 ,
+    0xe0705 ,
+    0xe0706 ,
+    0xe0707 ,
+    0xe0708 ,
+    0xe0709 ,
+    0xe070a ,
+    0xe070b ,
+    0xe070c ,
+    0xe070d ,
+    0xe070e ,
+    0xe070f ,
+    0xe0710 ,
+    0xe0711 ,
+    0xe0712 ,
+    0xe0713 ,
+    0xe0714 ,
+    0xe0715 ,
+    0xe0716 ,
+    0xe0717 ,
+    0xe0718 ,
+    0xe0719 ,
+    0xe071a ,
+    0xe071b ,
+    0xe071c ,
+    0xe071d ,
+    0xe071e ,
+    0xe071f ,
+    0xe0720 ,
+    0xe0721 ,
+    0xe0722 ,
+    0xe0723 ,
+    0xe0724 ,
+    0xe0725 ,
+    0xe0726 ,
+    0xe0727 ,
+    0xe0728 ,
+    0xe0729 ,
+    0xe072a ,
+    0xe072b ,
+    0xe072c ,
+    0xe072d ,
+    0xe072e ,
+    0xe072f ,
+    0xe0730 ,
+    0xe0731 ,
+    0xe0732 ,
+    0xe0733 ,
+    0xe0734 ,
+    0xe0735 ,
+    0xe0736 ,
+    0xe0737 ,
+    0xe0738 ,
+    0xe0739 ,
+    0xe073a ,
+    0xe073b ,
+    0xe073c ,
+    0xe073d ,
+    0xe073e ,
+    0xe073f ,
+    0xe0740 ,
+    0xe0741 ,
+    0xe0742 ,
+    0xe0743 ,
+    0xe0744 ,
+    0xe0745 ,
+    0xe0746 ,
+    0xe0747 ,
+    0xe0748 ,
+    0xe0749 ,
+    0xe074a ,
+    0xe074b ,
+    0xe074c ,
+    0xe074d ,
+    0xe074e ,
+    0xe074f ,
+    0xe0750 ,
+    0xe0751 ,
+    0xe0752 ,
+    0xe0753 ,
+    0xe0754 ,
+    0xe0755 ,
+    0xe0756 ,
+    0xe0757 ,
+    0xe0758 ,
+    0xe0759 ,
+    0xe075a ,
+    0xe075b ,
+    0xe075c ,
+    0xe075d ,
+    0xe075e ,
+    0xe075f ,
+    0xe0760 ,
+    0xe0761 ,
+    0xe0762 ,
+    0xe0763 ,
+    0xe0764 ,
+    0xe0765 ,
+    0xe0766 ,
+    0xe0767 ,
+    0xe0768 ,
+    0xe0769 ,
+    0xe076a ,
+    0xe076b ,
+    0xe076c ,
+    0xe076d ,
+    0xe076e ,
+    0xe076f ,
+    0xe0770 ,
+    0xe0771 ,
+    0xe0772 ,
+    0xe0773 ,
+    0xe0774 ,
+    0xe0775 ,
+    0xe0776 ,
+    0xe0777 ,
+    0xe0778 ,
+    0xe0779 ,
+    0xe077a ,
+    0xe077b ,
+    0xe077c ,
+    0xe077d ,
+    0xe077e ,
+    0xe077f ,
+    0xe0780 ,
+    0xe0781 ,
+    0xe0782 ,
+    0xe0783 ,
+    0xe0784 ,
+    0xe0785 ,
+    0xe0786 ,
+    0xe0787 ,
+    0xe0788 ,
+    0xe0789 ,
+    0xe078a ,
+    0xe078b ,
+    0xe078c ,
+    0xe078d ,
+    0xe078e ,
+    0xe078f ,
+    0xe0790 ,
+    0xe0791 ,
+    0xe0792 ,
+    0xe0793 ,
+    0xe0794 ,
+    0xe0795 ,
+    0xe0796 ,
+    0xe0797 ,
+    0xe0798 ,
+    0xe0799 ,
+    0xe079a ,
+    0xe079b ,
+    0xe079c ,
+    0xe079d ,
+    0xe079e ,
+    0xe079f ,
+    0xe07a0 ,
+    0xe07a1 ,
+    0xe07a2 ,
+    0xe07a3 ,
+    0xe07a4 ,
+    0xe07a5 ,
+    0xe07a6 ,
+    0xe07a7 ,
+    0xe07a8 ,
+    0xe07a9 ,
+    0xe07aa ,
+    0xe07ab ,
+    0xe07ac ,
+    0xe07ad ,
+    0xe07ae ,
+    0xe07af ,
+    0xe07b0 ,
+    0xe07b1 ,
+    0xe07b2 ,
+    0xe07b3 ,
+    0xe07b4 ,
+    0xe07b5 ,
+    0xe07b6 ,
+    0xe07b7 ,
+    0xe07b8 ,
+    0xe07b9 ,
+    0xe07ba ,
+    0xe07bb ,
+    0xe07bc ,
+    0xe07bd ,
+    0xe07be ,
+    0xe07bf ,
+    0xe07c0 ,
+    0xe07c1 ,
+    0xe07c2 ,
+    0xe07c3 ,
+    0xe07c4 ,
+    0xe07c5 ,
+    0xe07c6 ,
+    0xe07c7 ,
+    0xe07c8 ,
+    0xe07c9 ,
+    0xe07ca ,
+    0xe07cb ,
+    0xe07cc ,
+    0xe07cd ,
+    0xe07ce ,
+    0xe07cf ,
+    0xe07d0 ,
+    0xe07d1 ,
+    0xe07d2 ,
+    0xe07d3 ,
+    0xe07d4 ,
+    0xe07d5 ,
+    0xe07d6 ,
+    0xe07d7 ,
+    0xe07d8 ,
+    0xe07d9 ,
+    0xe07da ,
+    0xe07db ,
+    0xe07dc ,
+    0xe07dd ,
+    0xe07de ,
+    0xe07df ,
+    0xe07e0 ,
+    0xe07e1 ,
+    0xe07e2 ,
+    0xe07e3 ,
+    0xe07e4 ,
+    0xe07e5 ,
+    0xe07e6 ,
+    0xe07e7 ,
+    0xe07e8 ,
+    0xe07e9 ,
+    0xe07ea ,
+    0xe07eb ,
+    0xe07ec ,
+    0xe07ed ,
+    0xe07ee ,
+    0xe07ef ,
+    0xe07f0 ,
+    0xe07f1 ,
+    0xe07f2 ,
+    0xe07f3 ,
+    0xe07f4 ,
+    0xe07f5 ,
+    0xe07f6 ,
+    0xe07f7 ,
+    0xe07f8 ,
+    0xe07f9 ,
+    0xe07fa ,
+    0xe07fb ,
+    0xe07fc ,
+    0xe07fd ,
+    0xe07fe ,
+    0xe07ff ,
+    0xe0800 ,
+    0xe0801 ,
+    0xe0802 ,
+    0xe0803 ,
+    0xe0804 ,
+    0xe0805 ,
+    0xe0806 ,
+    0xe0807 ,
+    0xe0808 ,
+    0xe0809 ,
+    0xe080a ,
+    0xe080b ,
+    0xe080c ,
+    0xe080d ,
+    0xe080e ,
+    0xe080f ,
+    0xe0810 ,
+    0xe0811 ,
+    0xe0812 ,
+    0xe0813 ,
+    0xe0814 ,
+    0xe0815 ,
+    0xe0816 ,
+    0xe0817 ,
+    0xe0818 ,
+    0xe0819 ,
+    0xe081a ,
+    0xe081b ,
+    0xe081c ,
+    0xe081d ,
+    0xe081e ,
+    0xe081f ,
+    0xe0820 ,
+    0xe0821 ,
+    0xe0822 ,
+    0xe0823 ,
+    0xe0824 ,
+    0xe0825 ,
+    0xe0826 ,
+    0xe0827 ,
+    0xe0828 ,
+    0xe0829 ,
+    0xe082a ,
+    0xe082b ,
+    0xe082c ,
+    0xe082d ,
+    0xe082e ,
+    0xe082f ,
+    0xe0830 ,
+    0xe0831 ,
+    0xe0832 ,
+    0xe0833 ,
+    0xe0834 ,
+    0xe0835 ,
+    0xe0836 ,
+    0xe0837 ,
+    0xe0838 ,
+    0xe0839 ,
+    0xe083a ,
+    0xe083b ,
+    0xe083c ,
+    0xe083d ,
+    0xe083e ,
+    0xe083f ,
+    0xe0840 ,
+    0xe0841 ,
+    0xe0842 ,
+    0xe0843 ,
+    0xe0844 ,
+    0xe0845 ,
+    0xe0846 ,
+    0xe0847 ,
+    0xe0848 ,
+    0xe0849 ,
+    0xe084a ,
+    0xe084b ,
+    0xe084c ,
+    0xe084d ,
+    0xe084e ,
+    0xe084f ,
+    0xe0850 ,
+    0xe0851 ,
+    0xe0852 ,
+    0xe0853 ,
+    0xe0854 ,
+    0xe0855 ,
+    0xe0856 ,
+    0xe0857 ,
+    0xe0858 ,
+    0xe0859 ,
+    0xe085a ,
+    0xe085b ,
+    0xe085c ,
+    0xe085d ,
+    0xe085e ,
+    0xe085f ,
+    0xe0860 ,
+    0xe0861 ,
+    0xe0862 ,
+    0xe0863 ,
+    0xe0864 ,
+    0xe0865 ,
+    0xe0866 ,
+    0xe0867 ,
+    0xe0868 ,
+    0xe0869 ,
+    0xe086a ,
+    0xe086b ,
+    0xe086c ,
+    0xe086d ,
+    0xe086e ,
+    0xe086f ,
+    0xe0870 ,
+    0xe0871 ,
+    0xe0872 ,
+    0xe0873 ,
+    0xe0874 ,
+    0xe0875 ,
+    0xe0876 ,
+    0xe0877 ,
+    0xe0878 ,
+    0xe0879 ,
+    0xe087a ,
+    0xe087b ,
+    0xe087c ,
+    0xe087d ,
+    0xe087e ,
+    0xe087f ,
+    0xe0880 ,
+    0xe0881 ,
+    0xe0882 ,
+    0xe0883 ,
+    0xe0884 ,
+    0xe0885 ,
+    0xe0886 ,
+    0xe0887 ,
+    0xe0888 ,
+    0xe0889 ,
+    0xe088a ,
+    0xe088b ,
+    0xe088c ,
+    0xe088d ,
+    0xe088e ,
+    0xe088f ,
+    0xe0890 ,
+    0xe0891 ,
+    0xe0892 ,
+    0xe0893 ,
+    0xe0894 ,
+    0xe0895 ,
+    0xe0896 ,
+    0xe0897 ,
+    0xe0898 ,
+    0xe0899 ,
+    0xe089a ,
+    0xe089b ,
+    0xe089c ,
+    0xe089d ,
+    0xe089e ,
+    0xe089f ,
+    0xe08a0 ,
+    0xe08a1 ,
+    0xe08a2 ,
+    0xe08a3 ,
+    0xe08a4 ,
+    0xe08a5 ,
+    0xe08a6 ,
+    0xe08a7 ,
+    0xe08a8 ,
+    0xe08a9 ,
+    0xe08aa ,
+    0xe08ab ,
+    0xe08ac ,
+    0xe08ad ,
+    0xe08ae ,
+    0xe08af ,
+    0xe08b0 ,
+    0xe08b1 ,
+    0xe08b2 ,
+    0xe08b3 ,
+    0xe08b4 ,
+    0xe08b5 ,
+    0xe08b6 ,
+    0xe08b7 ,
+    0xe08b8 ,
+    0xe08b9 ,
+    0xe08ba ,
+    0xe08bb ,
+    0xe08bc ,
+    0xe08bd ,
+    0xe08be ,
+    0xe08bf ,
+    0xe08c0 ,
+    0xe08c1 ,
+    0xe08c2 ,
+    0xe08c3 ,
+    0xe08c4 ,
+    0xe08c5 ,
+    0xe08c6 ,
+    0xe08c7 ,
+    0xe08c8 ,
+    0xe08c9 ,
+    0xe08ca ,
+    0xe08cb ,
+    0xe08cc ,
+    0xe08cd ,
+    0xe08ce ,
+    0xe08cf ,
+    0xe08d0 ,
+    0xe08d1 ,
+    0xe08d2 ,
+    0xe08d3 ,
+    0xe08d4 ,
+    0xe08d5 ,
+    0xe08d6 ,
+    0xe08d7 ,
+    0xe08d8 ,
+    0xe08d9 ,
+    0xe08da ,
+    0xe08db ,
+    0xe08dc ,
+    0xe08dd ,
+    0xe08de ,
+    0xe08df ,
+    0xe08e0 ,
+    0xe08e1 ,
+    0xe08e2 ,
+    0xe08e3 ,
+    0xe08e4 ,
+    0xe08e5 ,
+    0xe08e6 ,
+    0xe08e7 ,
+    0xe08e8 ,
+    0xe08e9 ,
+    0xe08ea ,
+    0xe08eb ,
+    0xe08ec ,
+    0xe08ed ,
+    0xe08ee ,
+    0xe08ef ,
+    0xe08f0 ,
+    0xe08f1 ,
+    0xe08f2 ,
+    0xe08f3 ,
+    0xe08f4 ,
+    0xe08f5 ,
+    0xe08f6 ,
+    0xe08f7 ,
+    0xe08f8 ,
+    0xe08f9 ,
+    0xe08fa ,
+    0xe08fb ,
+    0xe08fc ,
+    0xe08fd ,
+    0xe08fe ,
+    0xe08ff ,
+    0xe0900 ,
+    0xe0901 ,
+    0xe0902 ,
+    0xe0903 ,
+    0xe0904 ,
+    0xe0905 ,
+    0xe0906 ,
+    0xe0907 ,
+    0xe0908 ,
+    0xe0909 ,
+    0xe090a ,
+    0xe090b ,
+    0xe090c ,
+    0xe090d ,
+    0xe090e ,
+    0xe090f ,
+    0xe0910 ,
+    0xe0911 ,
+    0xe0912 ,
+    0xe0913 ,
+    0xe0914 ,
+    0xe0915 ,
+    0xe0916 ,
+    0xe0917 ,
+    0xe0918 ,
+    0xe0919 ,
+    0xe091a ,
+    0xe091b ,
+    0xe091c ,
+    0xe091d ,
+    0xe091e ,
+    0xe091f ,
+    0xe0920 ,
+    0xe0921 ,
+    0xe0922 ,
+    0xe0923 ,
+    0xe0924 ,
+    0xe0925 ,
+    0xe0926 ,
+    0xe0927 ,
+    0xe0928 ,
+    0xe0929 ,
+    0xe092a ,
+    0xe092b ,
+    0xe092c ,
+    0xe092d ,
+    0xe092e ,
+    0xe092f ,
+    0xe0930 ,
+    0xe0931 ,
+    0xe0932 ,
+    0xe0933 ,
+    0xe0934 ,
+    0xe0935 ,
+    0xe0936 ,
+    0xe0937 ,
+    0xe0938 ,
+    0xe0939 ,
+    0xe093a ,
+    0xe093b ,
+    0xe093c ,
+    0xe093d ,
+    0xe093e ,
+    0xe093f ,
+    0xe0940 ,
+    0xe0941 ,
+    0xe0942 ,
+    0xe0943 ,
+    0xe0944 ,
+    0xe0945 ,
+    0xe0946 ,
+    0xe0947 ,
+    0xe0948 ,
+    0xe0949 ,
+    0xe094a ,
+    0xe094b ,
+    0xe094c ,
+    0xe094d ,
+    0xe094e ,
+    0xe094f ,
+    0xe0950 ,
+    0xe0951 ,
+    0xe0952 ,
+    0xe0953 ,
+    0xe0954 ,
+    0xe0955 ,
+    0xe0956 ,
+    0xe0957 ,
+    0xe0958 ,
+    0xe0959 ,
+    0xe095a ,
+    0xe095b ,
+    0xe095c ,
+    0xe095d ,
+    0xe095e ,
+    0xe095f ,
+    0xe0960 ,
+    0xe0961 ,
+    0xe0962 ,
+    0xe0963 ,
+    0xe0964 ,
+    0xe0965 ,
+    0xe0966 ,
+    0xe0967 ,
+    0xe0968 ,
+    0xe0969 ,
+    0xe096a ,
+    0xe096b ,
+    0xe096c ,
+    0xe096d ,
+    0xe096e ,
+    0xe096f ,
+    0xe0970 ,
+    0xe0971 ,
+    0xe0972 ,
+    0xe0973 ,
+    0xe0974 ,
+    0xe0975 ,
+    0xe0976 ,
+    0xe0977 ,
+    0xe0978 ,
+    0xe0979 ,
+    0xe097a ,
+    0xe097b ,
+    0xe097c ,
+    0xe097d ,
+    0xe097e ,
+    0xe097f ,
+    0xe0980 ,
+    0xe0981 ,
+    0xe0982 ,
+    0xe0983 ,
+    0xe0984 ,
+    0xe0985 ,
+    0xe0986 ,
+    0xe0987 ,
+    0xe0988 ,
+    0xe0989 ,
+    0xe098a ,
+    0xe098b ,
+    0xe098c ,
+    0xe098d ,
+    0xe098e ,
+    0xe098f ,
+    0xe0990 ,
+    0xe0991 ,
+    0xe0992 ,
+    0xe0993 ,
+    0xe0994 ,
+    0xe0995 ,
+    0xe0996 ,
+    0xe0997 ,
+    0xe0998 ,
+    0xe0999 ,
+    0xe099a ,
+    0xe099b ,
+    0xe099c ,
+    0xe099d ,
+    0xe099e ,
+    0xe099f ,
+    0xe09a0 ,
+    0xe09a1 ,
+    0xe09a2 ,
+    0xe09a3 ,
+    0xe09a4 ,
+    0xe09a5 ,
+    0xe09a6 ,
+    0xe09a7 ,
+    0xe09a8 ,
+    0xe09a9 ,
+    0xe09aa ,
+    0xe09ab ,
+    0xe09ac ,
+    0xe09ad ,
+    0xe09ae ,
+    0xe09af ,
+    0xe09b0 ,
+    0xe09b1 ,
+    0xe09b2 ,
+    0xe09b3 ,
+    0xe09b4 ,
+    0xe09b5 ,
+    0xe09b6 ,
+    0xe09b7 ,
+    0xe09b8 ,
+    0xe09b9 ,
+    0xe09ba ,
+    0xe09bb ,
+    0xe09bc ,
+    0xe09bd ,
+    0xe09be ,
+    0xe09bf ,
+    0xe09c0 ,
+    0xe09c1 ,
+    0xe09c2 ,
+    0xe09c3 ,
+    0xe09c4 ,
+    0xe09c5 ,
+    0xe09c6 ,
+    0xe09c7 ,
+    0xe09c8 ,
+    0xe09c9 ,
+    0xe09ca ,
+    0xe09cb ,
+    0xe09cc ,
+    0xe09cd ,
+    0xe09ce ,
+    0xe09cf ,
+    0xe09d0 ,
+    0xe09d1 ,
+    0xe09d2 ,
+    0xe09d3 ,
+    0xe09d4 ,
+    0xe09d5 ,
+    0xe09d6 ,
+    0xe09d7 ,
+    0xe09d8 ,
+    0xe09d9 ,
+    0xe09da ,
+    0xe09db ,
+    0xe09dc ,
+    0xe09dd ,
+    0xe09de ,
+    0xe09df ,
+    0xe09e0 ,
+    0xe09e1 ,
+    0xe09e2 ,
+    0xe09e3 ,
+    0xe09e4 ,
+    0xe09e5 ,
+    0xe09e6 ,
+    0xe09e7 ,
+    0xe09e8 ,
+    0xe09e9 ,
+    0xe09ea ,
+    0xe09eb ,
+    0xe09ec ,
+    0xe09ed ,
+    0xe09ee ,
+    0xe09ef ,
+    0xe09f0 ,
+    0xe09f1 ,
+    0xe09f2 ,
+    0xe09f3 ,
+    0xe09f4 ,
+    0xe09f5 ,
+    0xe09f6 ,
+    0xe09f7 ,
+    0xe09f8 ,
+    0xe09f9 ,
+    0xe09fa ,
+    0xe09fb ,
+    0xe09fc ,
+    0xe09fd ,
+    0xe09fe ,
+    0xe09ff ,
+    0xe0a00 ,
+    0xe0a01 ,
+    0xe0a02 ,
+    0xe0a03 ,
+    0xe0a04 ,
+    0xe0a05 ,
+    0xe0a06 ,
+    0xe0a07 ,
+    0xe0a08 ,
+    0xe0a09 ,
+    0xe0a0a ,
+    0xe0a0b ,
+    0xe0a0c ,
+    0xe0a0d ,
+    0xe0a0e ,
+    0xe0a0f ,
+    0xe0a10 ,
+    0xe0a11 ,
+    0xe0a12 ,
+    0xe0a13 ,
+    0xe0a14 ,
+    0xe0a15 ,
+    0xe0a16 ,
+    0xe0a17 ,
+    0xe0a18 ,
+    0xe0a19 ,
+    0xe0a1a ,
+    0xe0a1b ,
+    0xe0a1c ,
+    0xe0a1d ,
+    0xe0a1e ,
+    0xe0a1f ,
+    0xe0a20 ,
+    0xe0a21 ,
+    0xe0a22 ,
+    0xe0a23 ,
+    0xe0a24 ,
+    0xe0a25 ,
+    0xe0a26 ,
+    0xe0a27 ,
+    0xe0a28 ,
+    0xe0a29 ,
+    0xe0a2a ,
+    0xe0a2b ,
+    0xe0a2c ,
+    0xe0a2d ,
+    0xe0a2e ,
+    0xe0a2f ,
+    0xe0a30 ,
+    0xe0a31 ,
+    0xe0a32 ,
+    0xe0a33 ,
+    0xe0a34 ,
+    0xe0a35 ,
+    0xe0a36 ,
+    0xe0a37 ,
+    0xe0a38 ,
+    0xe0a39 ,
+    0xe0a3a ,
+    0xe0a3b ,
+    0xe0a3c ,
+    0xe0a3d ,
+    0xe0a3e ,
+    0xe0a3f ,
+    0xe0a40 ,
+    0xe0a41 ,
+    0xe0a42 ,
+    0xe0a43 ,
+    0xe0a44 ,
+    0xe0a45 ,
+    0xe0a46 ,
+    0xe0a47 ,
+    0xe0a48 ,
+    0xe0a49 ,
+    0xe0a4a ,
+    0xe0a4b ,
+    0xe0a4c ,
+    0xe0a4d ,
+    0xe0a4e ,
+    0xe0a4f ,
+    0xe0a50 ,
+    0xe0a51 ,
+    0xe0a52 ,
+    0xe0a53 ,
+    0xe0a54 ,
+    0xe0a55 ,
+    0xe0a56 ,
+    0xe0a57 ,
+    0xe0a58 ,
+    0xe0a59 ,
+    0xe0a5a ,
+    0xe0a5b ,
+    0xe0a5c ,
+    0xe0a5d ,
+    0xe0a5e ,
+    0xe0a5f ,
+    0xe0a60 ,
+    0xe0a61 ,
+    0xe0a62 ,
+    0xe0a63 ,
+    0xe0a64 ,
+    0xe0a65 ,
+    0xe0a66 ,
+    0xe0a67 ,
+    0xe0a68 ,
+    0xe0a69 ,
+    0xe0a6a ,
+    0xe0a6b ,
+    0xe0a6c ,
+    0xe0a6d ,
+    0xe0a6e ,
+    0xe0a6f ,
+    0xe0a70 ,
+    0xe0a71 ,
+    0xe0a72 ,
+    0xe0a73 ,
+    0xe0a74 ,
+    0xe0a75 ,
+    0xe0a76 ,
+    0xe0a77 ,
+    0xe0a78 ,
+    0xe0a79 ,
+    0xe0a7a ,
+    0xe0a7b ,
+    0xe0a7c ,
+    0xe0a7d ,
+    0xe0a7e ,
+    0xe0a7f ,
+    0xe0a80 ,
+    0xe0a81 ,
+    0xe0a82 ,
+    0xe0a83 ,
+    0xe0a84 ,
+    0xe0a85 ,
+    0xe0a86 ,
+    0xe0a87 ,
+    0xe0a88 ,
+    0xe0a89 ,
+    0xe0a8a ,
+    0xe0a8b ,
+    0xe0a8c ,
+    0xe0a8d ,
+    0xe0a8e ,
+    0xe0a8f ,
+    0xe0a90 ,
+    0xe0a91 ,
+    0xe0a92 ,
+    0xe0a93 ,
+    0xe0a94 ,
+    0xe0a95 ,
+    0xe0a96 ,
+    0xe0a97 ,
+    0xe0a98 ,
+    0xe0a99 ,
+    0xe0a9a ,
+    0xe0a9b ,
+    0xe0a9c ,
+    0xe0a9d ,
+    0xe0a9e ,
+    0xe0a9f ,
+    0xe0aa0 ,
+    0xe0aa1 ,
+    0xe0aa2 ,
+    0xe0aa3 ,
+    0xe0aa4 ,
+    0xe0aa5 ,
+    0xe0aa6 ,
+    0xe0aa7 ,
+    0xe0aa8 ,
+    0xe0aa9 ,
+    0xe0aaa ,
+    0xe0aab ,
+    0xe0aac ,
+    0xe0aad ,
+    0xe0aae ,
+    0xe0aaf ,
+    0xe0ab0 ,
+    0xe0ab1 ,
+    0xe0ab2 ,
+    0xe0ab3 ,
+    0xe0ab4 ,
+    0xe0ab5 ,
+    0xe0ab6 ,
+    0xe0ab7 ,
+    0xe0ab8 ,
+    0xe0ab9 ,
+    0xe0aba ,
+    0xe0abb ,
+    0xe0abc ,
+    0xe0abd ,
+    0xe0abe ,
+    0xe0abf ,
+    0xe0ac0 ,
+    0xe0ac1 ,
+    0xe0ac2 ,
+    0xe0ac3 ,
+    0xe0ac4 ,
+    0xe0ac5 ,
+    0xe0ac6 ,
+    0xe0ac7 ,
+    0xe0ac8 ,
+    0xe0ac9 ,
+    0xe0aca ,
+    0xe0acb ,
+    0xe0acc ,
+    0xe0acd ,
+    0xe0ace ,
+    0xe0acf ,
+    0xe0ad0 ,
+    0xe0ad1 ,
+    0xe0ad2 ,
+    0xe0ad3 ,
+    0xe0ad4 ,
+    0xe0ad5 ,
+    0xe0ad6 ,
+    0xe0ad7 ,
+    0xe0ad8 ,
+    0xe0ad9 ,
+    0xe0ada ,
+    0xe0adb ,
+    0xe0adc ,
+    0xe0add ,
+    0xe0ade ,
+    0xe0adf ,
+    0xe0ae0 ,
+    0xe0ae1 ,
+    0xe0ae2 ,
+    0xe0ae3 ,
+    0xe0ae4 ,
+    0xe0ae5 ,
+    0xe0ae6 ,
+    0xe0ae7 ,
+    0xe0ae8 ,
+    0xe0ae9 ,
+    0xe0aea ,
+    0xe0aeb ,
+    0xe0aec ,
+    0xe0aed ,
+    0xe0aee ,
+    0xe0aef ,
+    0xe0af0 ,
+    0xe0af1 ,
+    0xe0af2 ,
+    0xe0af3 ,
+    0xe0af4 ,
+    0xe0af5 ,
+    0xe0af6 ,
+    0xe0af7 ,
+    0xe0af8 ,
+    0xe0af9 ,
+    0xe0afa ,
+    0xe0afb ,
+    0xe0afc ,
+    0xe0afd ,
+    0xe0afe ,
+    0xe0aff ,
+    0xe0b00 ,
+    0xe0b01 ,
+    0xe0b02 ,
+    0xe0b03 ,
+    0xe0b04 ,
+    0xe0b05 ,
+    0xe0b06 ,
+    0xe0b07 ,
+    0xe0b08 ,
+    0xe0b09 ,
+    0xe0b0a ,
+    0xe0b0b ,
+    0xe0b0c ,
+    0xe0b0d ,
+    0xe0b0e ,
+    0xe0b0f ,
+    0xe0b10 ,
+    0xe0b11 ,
+    0xe0b12 ,
+    0xe0b13 ,
+    0xe0b14 ,
+    0xe0b15 ,
+    0xe0b16 ,
+    0xe0b17 ,
+    0xe0b18 ,
+    0xe0b19 ,
+    0xe0b1a ,
+    0xe0b1b ,
+    0xe0b1c ,
+    0xe0b1d ,
+    0xe0b1e ,
+    0xe0b1f ,
+    0xe0b20 ,
+    0xe0b21 ,
+    0xe0b22 ,
+    0xe0b23 ,
+    0xe0b24 ,
+    0xe0b25 ,
+    0xe0b26 ,
+    0xe0b27 ,
+    0xe0b28 ,
+    0xe0b29 ,
+    0xe0b2a ,
+    0xe0b2b ,
+    0xe0b2c ,
+    0xe0b2d ,
+    0xe0b2e ,
+    0xe0b2f ,
+    0xe0b30 ,
+    0xe0b31 ,
+    0xe0b32 ,
+    0xe0b33 ,
+    0xe0b34 ,
+    0xe0b35 ,
+    0xe0b36 ,
+    0xe0b37 ,
+    0xe0b38 ,
+    0xe0b39 ,
+    0xe0b3a ,
+    0xe0b3b ,
+    0xe0b3c ,
+    0xe0b3d ,
+    0xe0b3e ,
+    0xe0b3f ,
+    0xe0b40 ,
+    0xe0b41 ,
+    0xe0b42 ,
+    0xe0b43 ,
+    0xe0b44 ,
+    0xe0b45 ,
+    0xe0b46 ,
+    0xe0b47 ,
+    0xe0b48 ,
+    0xe0b49 ,
+    0xe0b4a ,
+    0xe0b4b ,
+    0xe0b4c ,
+    0xe0b4d ,
+    0xe0b4e ,
+    0xe0b4f ,
+    0xe0b50 ,
+    0xe0b51 ,
+    0xe0b52 ,
+    0xe0b53 ,
+    0xe0b54 ,
+    0xe0b55 ,
+    0xe0b56 ,
+    0xe0b57 ,
+    0xe0b58 ,
+    0xe0b59 ,
+    0xe0b5a ,
+    0xe0b5b ,
+    0xe0b5c ,
+    0xe0b5d ,
+    0xe0b5e ,
+    0xe0b5f ,
+    0xe0b60 ,
+    0xe0b61 ,
+    0xe0b62 ,
+    0xe0b63 ,
+    0xe0b64 ,
+    0xe0b65 ,
+    0xe0b66 ,
+    0xe0b67 ,
+    0xe0b68 ,
+    0xe0b69 ,
+    0xe0b6a ,
+    0xe0b6b ,
+    0xe0b6c ,
+    0xe0b6d ,
+    0xe0b6e ,
+    0xe0b6f ,
+    0xe0b70 ,
+    0xe0b71 ,
+    0xe0b72 ,
+    0xe0b73 ,
+    0xe0b74 ,
+    0xe0b75 ,
+    0xe0b76 ,
+    0xe0b77 ,
+    0xe0b78 ,
+    0xe0b79 ,
+    0xe0b7a ,
+    0xe0b7b ,
+    0xe0b7c ,
+    0xe0b7d ,
+    0xe0b7e ,
+    0xe0b7f ,
+    0xe0b80 ,
+    0xe0b81 ,
+    0xe0b82 ,
+    0xe0b83 ,
+    0xe0b84 ,
+    0xe0b85 ,
+    0xe0b86 ,
+    0xe0b87 ,
+    0xe0b88 ,
+    0xe0b89 ,
+    0xe0b8a ,
+    0xe0b8b ,
+    0xe0b8c ,
+    0xe0b8d ,
+    0xe0b8e ,
+    0xe0b8f ,
+    0xe0b90 ,
+    0xe0b91 ,
+    0xe0b92 ,
+    0xe0b93 ,
+    0xe0b94 ,
+    0xe0b95 ,
+    0xe0b96 ,
+    0xe0b97 ,
+    0xe0b98 ,
+    0xe0b99 ,
+    0xe0b9a ,
+    0xe0b9b ,
+    0xe0b9c ,
+    0xe0b9d ,
+    0xe0b9e ,
+    0xe0b9f ,
+    0xe0ba0 ,
+    0xe0ba1 ,
+    0xe0ba2 ,
+    0xe0ba3 ,
+    0xe0ba4 ,
+    0xe0ba5 ,
+    0xe0ba6 ,
+    0xe0ba7 ,
+    0xe0ba8 ,
+    0xe0ba9 ,
+    0xe0baa ,
+    0xe0bab ,
+    0xe0bac ,
+    0xe0bad ,
+    0xe0bae ,
+    0xe0baf ,
+    0xe0bb0 ,
+    0xe0bb1 ,
+    0xe0bb2 ,
+    0xe0bb3 ,
+    0xe0bb4 ,
+    0xe0bb5 ,
+    0xe0bb6 ,
+    0xe0bb7 ,
+    0xe0bb8 ,
+    0xe0bb9 ,
+    0xe0bba ,
+    0xe0bbb ,
+    0xe0bbc ,
+    0xe0bbd ,
+    0xe0bbe ,
+    0xe0bbf ,
+    0xe0bc0 ,
+    0xe0bc1 ,
+    0xe0bc2 ,
+    0xe0bc3 ,
+    0xe0bc4 ,
+    0xe0bc5 ,
+    0xe0bc6 ,
+    0xe0bc7 ,
+    0xe0bc8 ,
+    0xe0bc9 ,
+    0xe0bca ,
+    0xe0bcb ,
+    0xe0bcc ,
+    0xe0bcd ,
+    0xe0bce ,
+    0xe0bcf ,
+    0xe0bd0 ,
+    0xe0bd1 ,
+    0xe0bd2 ,
+    0xe0bd3 ,
+    0xe0bd4 ,
+    0xe0bd5 ,
+    0xe0bd6 ,
+    0xe0bd7 ,
+    0xe0bd8 ,
+    0xe0bd9 ,
+    0xe0bda ,
+    0xe0bdb ,
+    0xe0bdc ,
+    0xe0bdd ,
+    0xe0bde ,
+    0xe0bdf ,
+    0xe0be0 ,
+    0xe0be1 ,
+    0xe0be2 ,
+    0xe0be3 ,
+    0xe0be4 ,
+    0xe0be5 ,
+    0xe0be6 ,
+    0xe0be7 ,
+    0xe0be8 ,
+    0xe0be9 ,
+    0xe0bea ,
+    0xe0beb ,
+    0xe0bec ,
+    0xe0bed ,
+    0xe0bee ,
+    0xe0bef ,
+    0xe0bf0 ,
+    0xe0bf1 ,
+    0xe0bf2 ,
+    0xe0bf3 ,
+    0xe0bf4 ,
+    0xe0bf5 ,
+    0xe0bf6 ,
+    0xe0bf7 ,
+    0xe0bf8 ,
+    0xe0bf9 ,
+    0xe0bfa ,
+    0xe0bfb ,
+    0xe0bfc ,
+    0xe0bfd ,
+    0xe0bfe ,
+    0xe0bff ,
+    0xe0c00 ,
+    0xe0c01 ,
+    0xe0c02 ,
+    0xe0c03 ,
+    0xe0c04 ,
+    0xe0c05 ,
+    0xe0c06 ,
+    0xe0c07 ,
+    0xe0c08 ,
+    0xe0c09 ,
+    0xe0c0a ,
+    0xe0c0b ,
+    0xe0c0c ,
+    0xe0c0d ,
+    0xe0c0e ,
+    0xe0c0f ,
+    0xe0c10 ,
+    0xe0c11 ,
+    0xe0c12 ,
+    0xe0c13 ,
+    0xe0c14 ,
+    0xe0c15 ,
+    0xe0c16 ,
+    0xe0c17 ,
+    0xe0c18 ,
+    0xe0c19 ,
+    0xe0c1a ,
+    0xe0c1b ,
+    0xe0c1c ,
+    0xe0c1d ,
+    0xe0c1e ,
+    0xe0c1f ,
+    0xe0c20 ,
+    0xe0c21 ,
+    0xe0c22 ,
+    0xe0c23 ,
+    0xe0c24 ,
+    0xe0c25 ,
+    0xe0c26 ,
+    0xe0c27 ,
+    0xe0c28 ,
+    0xe0c29 ,
+    0xe0c2a ,
+    0xe0c2b ,
+    0xe0c2c ,
+    0xe0c2d ,
+    0xe0c2e ,
+    0xe0c2f ,
+    0xe0c30 ,
+    0xe0c31 ,
+    0xe0c32 ,
+    0xe0c33 ,
+    0xe0c34 ,
+    0xe0c35 ,
+    0xe0c36 ,
+    0xe0c37 ,
+    0xe0c38 ,
+    0xe0c39 ,
+    0xe0c3a ,
+    0xe0c3b ,
+    0xe0c3c ,
+    0xe0c3d ,
+    0xe0c3e ,
+    0xe0c3f ,
+    0xe0c40 ,
+    0xe0c41 ,
+    0xe0c42 ,
+    0xe0c43 ,
+    0xe0c44 ,
+    0xe0c45 ,
+    0xe0c46 ,
+    0xe0c47 ,
+    0xe0c48 ,
+    0xe0c49 ,
+    0xe0c4a ,
+    0xe0c4b ,
+    0xe0c4c ,
+    0xe0c4d ,
+    0xe0c4e ,
+    0xe0c4f ,
+    0xe0c50 ,
+    0xe0c51 ,
+    0xe0c52 ,
+    0xe0c53 ,
+    0xe0c54 ,
+    0xe0c55 ,
+    0xe0c56 ,
+    0xe0c57 ,
+    0xe0c58 ,
+    0xe0c59 ,
+    0xe0c5a ,
+    0xe0c5b ,
+    0xe0c5c ,
+    0xe0c5d ,
+    0xe0c5e ,
+    0xe0c5f ,
+    0xe0c60 ,
+    0xe0c61 ,
+    0xe0c62 ,
+    0xe0c63 ,
+    0xe0c64 ,
+    0xe0c65 ,
+    0xe0c66 ,
+    0xe0c67 ,
+    0xe0c68 ,
+    0xe0c69 ,
+    0xe0c6a ,
+    0xe0c6b ,
+    0xe0c6c ,
+    0xe0c6d ,
+    0xe0c6e ,
+    0xe0c6f ,
+    0xe0c70 ,
+    0xe0c71 ,
+    0xe0c72 ,
+    0xe0c73 ,
+    0xe0c74 ,
+    0xe0c75 ,
+    0xe0c76 ,
+    0xe0c77 ,
+    0xe0c78 ,
+    0xe0c79 ,
+    0xe0c7a ,
+    0xe0c7b ,
+    0xe0c7c ,
+    0xe0c7d ,
+    0xe0c7e ,
+    0xe0c7f ,
+    0xe0c80 ,
+    0xe0c81 ,
+    0xe0c82 ,
+    0xe0c83 ,
+    0xe0c84 ,
+    0xe0c85 ,
+    0xe0c86 ,
+    0xe0c87 ,
+    0xe0c88 ,
+    0xe0c89 ,
+    0xe0c8a ,
+    0xe0c8b ,
+    0xe0c8c ,
+    0xe0c8d ,
+    0xe0c8e ,
+    0xe0c8f ,
+    0xe0c90 ,
+    0xe0c91 ,
+    0xe0c92 ,
+    0xe0c93 ,
+    0xe0c94 ,
+    0xe0c95 ,
+    0xe0c96 ,
+    0xe0c97 ,
+    0xe0c98 ,
+    0xe0c99 ,
+    0xe0c9a ,
+    0xe0c9b ,
+    0xe0c9c ,
+    0xe0c9d ,
+    0xe0c9e ,
+    0xe0c9f ,
+    0xe0ca0 ,
+    0xe0ca1 ,
+    0xe0ca2 ,
+    0xe0ca3 ,
+    0xe0ca4 ,
+    0xe0ca5 ,
+    0xe0ca6 ,
+    0xe0ca7 ,
+    0xe0ca8 ,
+    0xe0ca9 ,
+    0xe0caa ,
+    0xe0cab ,
+    0xe0cac ,
+    0xe0cad ,
+    0xe0cae ,
+    0xe0caf ,
+    0xe0cb0 ,
+    0xe0cb1 ,
+    0xe0cb2 ,
+    0xe0cb3 ,
+    0xe0cb4 ,
+    0xe0cb5 ,
+    0xe0cb6 ,
+    0xe0cb7 ,
+    0xe0cb8 ,
+    0xe0cb9 ,
+    0xe0cba ,
+    0xe0cbb ,
+    0xe0cbc ,
+    0xe0cbd ,
+    0xe0cbe ,
+    0xe0cbf ,
+    0xe0cc0 ,
+    0xe0cc1 ,
+    0xe0cc2 ,
+    0xe0cc3 ,
+    0xe0cc4 ,
+    0xe0cc5 ,
+    0xe0cc6 ,
+    0xe0cc7 ,
+    0xe0cc8 ,
+    0xe0cc9 ,
+    0xe0cca ,
+    0xe0ccb ,
+    0xe0ccc ,
+    0xe0ccd ,
+    0xe0cce ,
+    0xe0ccf ,
+    0xe0cd0 ,
+    0xe0cd1 ,
+    0xe0cd2 ,
+    0xe0cd3 ,
+    0xe0cd4 ,
+    0xe0cd5 ,
+    0xe0cd6 ,
+    0xe0cd7 ,
+    0xe0cd8 ,
+    0xe0cd9 ,
+    0xe0cda ,
+    0xe0cdb ,
+    0xe0cdc ,
+    0xe0cdd ,
+    0xe0cde ,
+    0xe0cdf ,
+    0xe0ce0 ,
+    0xe0ce1 ,
+    0xe0ce2 ,
+    0xe0ce3 ,
+    0xe0ce4 ,
+    0xe0ce5 ,
+    0xe0ce6 ,
+    0xe0ce7 ,
+    0xe0ce8 ,
+    0xe0ce9 ,
+    0xe0cea ,
+    0xe0ceb ,
+    0xe0cec ,
+    0xe0ced ,
+    0xe0cee ,
+    0xe0cef ,
+    0xe0cf0 ,
+    0xe0cf1 ,
+    0xe0cf2 ,
+    0xe0cf3 ,
+    0xe0cf4 ,
+    0xe0cf5 ,
+    0xe0cf6 ,
+    0xe0cf7 ,
+    0xe0cf8 ,
+    0xe0cf9 ,
+    0xe0cfa ,
+    0xe0cfb ,
+    0xe0cfc ,
+    0xe0cfd ,
+    0xe0cfe ,
+    0xe0cff ,
+    0xe0d00 ,
+    0xe0d01 ,
+    0xe0d02 ,
+    0xe0d03 ,
+    0xe0d04 ,
+    0xe0d05 ,
+    0xe0d06 ,
+    0xe0d07 ,
+    0xe0d08 ,
+    0xe0d09 ,
+    0xe0d0a ,
+    0xe0d0b ,
+    0xe0d0c ,
+    0xe0d0d ,
+    0xe0d0e ,
+    0xe0d0f ,
+    0xe0d10 ,
+    0xe0d11 ,
+    0xe0d12 ,
+    0xe0d13 ,
+    0xe0d14 ,
+    0xe0d15 ,
+    0xe0d16 ,
+    0xe0d17 ,
+    0xe0d18 ,
+    0xe0d19 ,
+    0xe0d1a ,
+    0xe0d1b ,
+    0xe0d1c ,
+    0xe0d1d ,
+    0xe0d1e ,
+    0xe0d1f ,
+    0xe0d20 ,
+    0xe0d21 ,
+    0xe0d22 ,
+    0xe0d23 ,
+    0xe0d24 ,
+    0xe0d25 ,
+    0xe0d26 ,
+    0xe0d27 ,
+    0xe0d28 ,
+    0xe0d29 ,
+    0xe0d2a ,
+    0xe0d2b ,
+    0xe0d2c ,
+    0xe0d2d ,
+    0xe0d2e ,
+    0xe0d2f ,
+    0xe0d30 ,
+    0xe0d31 ,
+    0xe0d32 ,
+    0xe0d33 ,
+    0xe0d34 ,
+    0xe0d35 ,
+    0xe0d36 ,
+    0xe0d37 ,
+    0xe0d38 ,
+    0xe0d39 ,
+    0xe0d3a ,
+    0xe0d3b ,
+    0xe0d3c ,
+    0xe0d3d ,
+    0xe0d3e ,
+    0xe0d3f ,
+    0xe0d40 ,
+    0xe0d41 ,
+    0xe0d42 ,
+    0xe0d43 ,
+    0xe0d44 ,
+    0xe0d45 ,
+    0xe0d46 ,
+    0xe0d47 ,
+    0xe0d48 ,
+    0xe0d49 ,
+    0xe0d4a ,
+    0xe0d4b ,
+    0xe0d4c ,
+    0xe0d4d ,
+    0xe0d4e ,
+    0xe0d4f ,
+    0xe0d50 ,
+    0xe0d51 ,
+    0xe0d52 ,
+    0xe0d53 ,
+    0xe0d54 ,
+    0xe0d55 ,
+    0xe0d56 ,
+    0xe0d57 ,
+    0xe0d58 ,
+    0xe0d59 ,
+    0xe0d5a ,
+    0xe0d5b ,
+    0xe0d5c ,
+    0xe0d5d ,
+    0xe0d5e ,
+    0xe0d5f ,
+    0xe0d60 ,
+    0xe0d61 ,
+    0xe0d62 ,
+    0xe0d63 ,
+    0xe0d64 ,
+    0xe0d65 ,
+    0xe0d66 ,
+    0xe0d67 ,
+    0xe0d68 ,
+    0xe0d69 ,
+    0xe0d6a ,
+    0xe0d6b ,
+    0xe0d6c ,
+    0xe0d6d ,
+    0xe0d6e ,
+    0xe0d6f ,
+    0xe0d70 ,
+    0xe0d71 ,
+    0xe0d72 ,
+    0xe0d73 ,
+    0xe0d74 ,
+    0xe0d75 ,
+    0xe0d76 ,
+    0xe0d77 ,
+    0xe0d78 ,
+    0xe0d79 ,
+    0xe0d7a ,
+    0xe0d7b ,
+    0xe0d7c ,
+    0xe0d7d ,
+    0xe0d7e ,
+    0xe0d7f ,
+    0xe0d80 ,
+    0xe0d81 ,
+    0xe0d82 ,
+    0xe0d83 ,
+    0xe0d84 ,
+    0xe0d85 ,
+    0xe0d86 ,
+    0xe0d87 ,
+    0xe0d88 ,
+    0xe0d89 ,
+    0xe0d8a ,
+    0xe0d8b ,
+    0xe0d8c ,
+    0xe0d8d ,
+    0xe0d8e ,
+    0xe0d8f ,
+    0xe0d90 ,
+    0xe0d91 ,
+    0xe0d92 ,
+    0xe0d93 ,
+    0xe0d94 ,
+    0xe0d95 ,
+    0xe0d96 ,
+    0xe0d97 ,
+    0xe0d98 ,
+    0xe0d99 ,
+    0xe0d9a ,
+    0xe0d9b ,
+    0xe0d9c ,
+    0xe0d9d ,
+    0xe0d9e ,
+    0xe0d9f ,
+    0xe0da0 ,
+    0xe0da1 ,
+    0xe0da2 ,
+    0xe0da3 ,
+    0xe0da4 ,
+    0xe0da5 ,
+    0xe0da6 ,
+    0xe0da7 ,
+    0xe0da8 ,
+    0xe0da9 ,
+    0xe0daa ,
+    0xe0dab ,
+    0xe0dac ,
+    0xe0dad ,
+    0xe0dae ,
+    0xe0daf ,
+    0xe0db0 ,
+    0xe0db1 ,
+    0xe0db2 ,
+    0xe0db3 ,
+    0xe0db4 ,
+    0xe0db5 ,
+    0xe0db6 ,
+    0xe0db7 ,
+    0xe0db8 ,
+    0xe0db9 ,
+    0xe0dba ,
+    0xe0dbb ,
+    0xe0dbc ,
+    0xe0dbd ,
+    0xe0dbe ,
+    0xe0dbf ,
+    0xe0dc0 ,
+    0xe0dc1 ,
+    0xe0dc2 ,
+    0xe0dc3 ,
+    0xe0dc4 ,
+    0xe0dc5 ,
+    0xe0dc6 ,
+    0xe0dc7 ,
+    0xe0dc8 ,
+    0xe0dc9 ,
+    0xe0dca ,
+    0xe0dcb ,
+    0xe0dcc ,
+    0xe0dcd ,
+    0xe0dce ,
+    0xe0dcf ,
+    0xe0dd0 ,
+    0xe0dd1 ,
+    0xe0dd2 ,
+    0xe0dd3 ,
+    0xe0dd4 ,
+    0xe0dd5 ,
+    0xe0dd6 ,
+    0xe0dd7 ,
+    0xe0dd8 ,
+    0xe0dd9 ,
+    0xe0dda ,
+    0xe0ddb ,
+    0xe0ddc ,
+    0xe0ddd ,
+    0xe0dde ,
+    0xe0ddf ,
+    0xe0de0 ,
+    0xe0de1 ,
+    0xe0de2 ,
+    0xe0de3 ,
+    0xe0de4 ,
+    0xe0de5 ,
+    0xe0de6 ,
+    0xe0de7 ,
+    0xe0de8 ,
+    0xe0de9 ,
+    0xe0dea ,
+    0xe0deb ,
+    0xe0dec ,
+    0xe0ded ,
+    0xe0dee ,
+    0xe0def ,
+    0xe0df0 ,
+    0xe0df1 ,
+    0xe0df2 ,
+    0xe0df3 ,
+    0xe0df4 ,
+    0xe0df5 ,
+    0xe0df6 ,
+    0xe0df7 ,
+    0xe0df8 ,
+    0xe0df9 ,
+    0xe0dfa ,
+    0xe0dfb ,
+    0xe0dfc ,
+    0xe0dfd ,
+    0xe0dfe ,
+    0xe0dff ,
+    0xe0e00 ,
+    0xe0e01 ,
+    0xe0e02 ,
+    0xe0e03 ,
+    0xe0e04 ,
+    0xe0e05 ,
+    0xe0e06 ,
+    0xe0e07 ,
+    0xe0e08 ,
+    0xe0e09 ,
+    0xe0e0a ,
+    0xe0e0b ,
+    0xe0e0c ,
+    0xe0e0d ,
+    0xe0e0e ,
+    0xe0e0f ,
+    0xe0e10 ,
+    0xe0e11 ,
+    0xe0e12 ,
+    0xe0e13 ,
+    0xe0e14 ,
+    0xe0e15 ,
+    0xe0e16 ,
+    0xe0e17 ,
+    0xe0e18 ,
+    0xe0e19 ,
+    0xe0e1a ,
+    0xe0e1b ,
+    0xe0e1c ,
+    0xe0e1d ,
+    0xe0e1e ,
+    0xe0e1f ,
+    0xe0e20 ,
+    0xe0e21 ,
+    0xe0e22 ,
+    0xe0e23 ,
+    0xe0e24 ,
+    0xe0e25 ,
+    0xe0e26 ,
+    0xe0e27 ,
+    0xe0e28 ,
+    0xe0e29 ,
+    0xe0e2a ,
+    0xe0e2b ,
+    0xe0e2c ,
+    0xe0e2d ,
+    0xe0e2e ,
+    0xe0e2f ,
+    0xe0e30 ,
+    0xe0e31 ,
+    0xe0e32 ,
+    0xe0e33 ,
+    0xe0e34 ,
+    0xe0e35 ,
+    0xe0e36 ,
+    0xe0e37 ,
+    0xe0e38 ,
+    0xe0e39 ,
+    0xe0e3a ,
+    0xe0e3b ,
+    0xe0e3c ,
+    0xe0e3d ,
+    0xe0e3e ,
+    0xe0e3f ,
+    0xe0e40 ,
+    0xe0e41 ,
+    0xe0e42 ,
+    0xe0e43 ,
+    0xe0e44 ,
+    0xe0e45 ,
+    0xe0e46 ,
+    0xe0e47 ,
+    0xe0e48 ,
+    0xe0e49 ,
+    0xe0e4a ,
+    0xe0e4b ,
+    0xe0e4c ,
+    0xe0e4d ,
+    0xe0e4e ,
+    0xe0e4f ,
+    0xe0e50 ,
+    0xe0e51 ,
+    0xe0e52 ,
+    0xe0e53 ,
+    0xe0e54 ,
+    0xe0e55 ,
+    0xe0e56 ,
+    0xe0e57 ,
+    0xe0e58 ,
+    0xe0e59 ,
+    0xe0e5a ,
+    0xe0e5b ,
+    0xe0e5c ,
+    0xe0e5d ,
+    0xe0e5e ,
+    0xe0e5f ,
+    0xe0e60 ,
+    0xe0e61 ,
+    0xe0e62 ,
+    0xe0e63 ,
+    0xe0e64 ,
+    0xe0e65 ,
+    0xe0e66 ,
+    0xe0e67 ,
+    0xe0e68 ,
+    0xe0e69 ,
+    0xe0e6a ,
+    0xe0e6b ,
+    0xe0e6c ,
+    0xe0e6d ,
+    0xe0e6e ,
+    0xe0e6f ,
+    0xe0e70 ,
+    0xe0e71 ,
+    0xe0e72 ,
+    0xe0e73 ,
+    0xe0e74 ,
+    0xe0e75 ,
+    0xe0e76 ,
+    0xe0e77 ,
+    0xe0e78 ,
+    0xe0e79 ,
+    0xe0e7a ,
+    0xe0e7b ,
+    0xe0e7c ,
+    0xe0e7d ,
+    0xe0e7e ,
+    0xe0e7f ,
+    0xe0e80 ,
+    0xe0e81 ,
+    0xe0e82 ,
+    0xe0e83 ,
+    0xe0e84 ,
+    0xe0e85 ,
+    0xe0e86 ,
+    0xe0e87 ,
+    0xe0e88 ,
+    0xe0e89 ,
+    0xe0e8a ,
+    0xe0e8b ,
+    0xe0e8c ,
+    0xe0e8d ,
+    0xe0e8e ,
+    0xe0e8f ,
+    0xe0e90 ,
+    0xe0e91 ,
+    0xe0e92 ,
+    0xe0e93 ,
+    0xe0e94 ,
+    0xe0e95 ,
+    0xe0e96 ,
+    0xe0e97 ,
+    0xe0e98 ,
+    0xe0e99 ,
+    0xe0e9a ,
+    0xe0e9b ,
+    0xe0e9c ,
+    0xe0e9d ,
+    0xe0e9e ,
+    0xe0e9f ,
+    0xe0ea0 ,
+    0xe0ea1 ,
+    0xe0ea2 ,
+    0xe0ea3 ,
+    0xe0ea4 ,
+    0xe0ea5 ,
+    0xe0ea6 ,
+    0xe0ea7 ,
+    0xe0ea8 ,
+    0xe0ea9 ,
+    0xe0eaa ,
+    0xe0eab ,
+    0xe0eac ,
+    0xe0ead ,
+    0xe0eae ,
+    0xe0eaf ,
+    0xe0eb0 ,
+    0xe0eb1 ,
+    0xe0eb2 ,
+    0xe0eb3 ,
+    0xe0eb4 ,
+    0xe0eb5 ,
+    0xe0eb6 ,
+    0xe0eb7 ,
+    0xe0eb8 ,
+    0xe0eb9 ,
+    0xe0eba ,
+    0xe0ebb ,
+    0xe0ebc ,
+    0xe0ebd ,
+    0xe0ebe ,
+    0xe0ebf ,
+    0xe0ec0 ,
+    0xe0ec1 ,
+    0xe0ec2 ,
+    0xe0ec3 ,
+    0xe0ec4 ,
+    0xe0ec5 ,
+    0xe0ec6 ,
+    0xe0ec7 ,
+    0xe0ec8 ,
+    0xe0ec9 ,
+    0xe0eca ,
+    0xe0ecb ,
+    0xe0ecc ,
+    0xe0ecd ,
+    0xe0ece ,
+    0xe0ecf ,
+    0xe0ed0 ,
+    0xe0ed1 ,
+    0xe0ed2 ,
+    0xe0ed3 ,
+    0xe0ed4 ,
+    0xe0ed5 ,
+    0xe0ed6 ,
+    0xe0ed7 ,
+    0xe0ed8 ,
+    0xe0ed9 ,
+    0xe0eda ,
+    0xe0edb ,
+    0xe0edc ,
+    0xe0edd ,
+    0xe0ede ,
+    0xe0edf ,
+    0xe0ee0 ,
+    0xe0ee1 ,
+    0xe0ee2 ,
+    0xe0ee3 ,
+    0xe0ee4 ,
+    0xe0ee5 ,
+    0xe0ee6 ,
+    0xe0ee7 ,
+    0xe0ee8 ,
+    0xe0ee9 ,
+    0xe0eea ,
+    0xe0eeb ,
+    0xe0eec ,
+    0xe0eed ,
+    0xe0eee ,
+    0xe0eef ,
+    0xe0ef0 ,
+    0xe0ef1 ,
+    0xe0ef2 ,
+    0xe0ef3 ,
+    0xe0ef4 ,
+    0xe0ef5 ,
+    0xe0ef6 ,
+    0xe0ef7 ,
+    0xe0ef8 ,
+    0xe0ef9 ,
+    0xe0efa ,
+    0xe0efb ,
+    0xe0efc ,
+    0xe0efd ,
+    0xe0efe ,
+    0xe0eff ,
+    0xe0f00 ,
+    0xe0f01 ,
+    0xe0f02 ,
+    0xe0f03 ,
+    0xe0f04 ,
+    0xe0f05 ,
+    0xe0f06 ,
+    0xe0f07 ,
+    0xe0f08 ,
+    0xe0f09 ,
+    0xe0f0a ,
+    0xe0f0b ,
+    0xe0f0c ,
+    0xe0f0d ,
+    0xe0f0e ,
+    0xe0f0f ,
+    0xe0f10 ,
+    0xe0f11 ,
+    0xe0f12 ,
+    0xe0f13 ,
+    0xe0f14 ,
+    0xe0f15 ,
+    0xe0f16 ,
+    0xe0f17 ,
+    0xe0f18 ,
+    0xe0f19 ,
+    0xe0f1a ,
+    0xe0f1b ,
+    0xe0f1c ,
+    0xe0f1d ,
+    0xe0f1e ,
+    0xe0f1f ,
+    0xe0f20 ,
+    0xe0f21 ,
+    0xe0f22 ,
+    0xe0f23 ,
+    0xe0f24 ,
+    0xe0f25 ,
+    0xe0f26 ,
+    0xe0f27 ,
+    0xe0f28 ,
+    0xe0f29 ,
+    0xe0f2a ,
+    0xe0f2b ,
+    0xe0f2c ,
+    0xe0f2d ,
+    0xe0f2e ,
+    0xe0f2f ,
+    0xe0f30 ,
+    0xe0f31 ,
+    0xe0f32 ,
+    0xe0f33 ,
+    0xe0f34 ,
+    0xe0f35 ,
+    0xe0f36 ,
+    0xe0f37 ,
+    0xe0f38 ,
+    0xe0f39 ,
+    0xe0f3a ,
+    0xe0f3b ,
+    0xe0f3c ,
+    0xe0f3d ,
+    0xe0f3e ,
+    0xe0f3f ,
+    0xe0f40 ,
+    0xe0f41 ,
+    0xe0f42 ,
+    0xe0f43 ,
+    0xe0f44 ,
+    0xe0f45 ,
+    0xe0f46 ,
+    0xe0f47 ,
+    0xe0f48 ,
+    0xe0f49 ,
+    0xe0f4a ,
+    0xe0f4b ,
+    0xe0f4c ,
+    0xe0f4d ,
+    0xe0f4e ,
+    0xe0f4f ,
+    0xe0f50 ,
+    0xe0f51 ,
+    0xe0f52 ,
+    0xe0f53 ,
+    0xe0f54 ,
+    0xe0f55 ,
+    0xe0f56 ,
+    0xe0f57 ,
+    0xe0f58 ,
+    0xe0f59 ,
+    0xe0f5a ,
+    0xe0f5b ,
+    0xe0f5c ,
+    0xe0f5d ,
+    0xe0f5e ,
+    0xe0f5f ,
+    0xe0f60 ,
+    0xe0f61 ,
+    0xe0f62 ,
+    0xe0f63 ,
+    0xe0f64 ,
+    0xe0f65 ,
+    0xe0f66 ,
+    0xe0f67 ,
+    0xe0f68 ,
+    0xe0f69 ,
+    0xe0f6a ,
+    0xe0f6b ,
+    0xe0f6c ,
+    0xe0f6d ,
+    0xe0f6e ,
+    0xe0f6f ,
+    0xe0f70 ,
+    0xe0f71 ,
+    0xe0f72 ,
+    0xe0f73 ,
+    0xe0f74 ,
+    0xe0f75 ,
+    0xe0f76 ,
+    0xe0f77 ,
+    0xe0f78 ,
+    0xe0f79 ,
+    0xe0f7a ,
+    0xe0f7b ,
+    0xe0f7c ,
+    0xe0f7d ,
+    0xe0f7e ,
+    0xe0f7f ,
+    0xe0f80 ,
+    0xe0f81 ,
+    0xe0f82 ,
+    0xe0f83 ,
+    0xe0f84 ,
+    0xe0f85 ,
+    0xe0f86 ,
+    0xe0f87 ,
+    0xe0f88 ,
+    0xe0f89 ,
+    0xe0f8a ,
+    0xe0f8b ,
+    0xe0f8c ,
+    0xe0f8d ,
+    0xe0f8e ,
+    0xe0f8f ,
+    0xe0f90 ,
+    0xe0f91 ,
+    0xe0f92 ,
+    0xe0f93 ,
+    0xe0f94 ,
+    0xe0f95 ,
+    0xe0f96 ,
+    0xe0f97 ,
+    0xe0f98 ,
+    0xe0f99 ,
+    0xe0f9a ,
+    0xe0f9b ,
+    0xe0f9c ,
+    0xe0f9d ,
+    0xe0f9e ,
+    0xe0f9f ,
+    0xe0fa0 ,
+    0xe0fa1 ,
+    0xe0fa2 ,
+    0xe0fa3 ,
+    0xe0fa4 ,
+    0xe0fa5 ,
+    0xe0fa6 ,
+    0xe0fa7 ,
+    0xe0fa8 ,
+    0xe0fa9 ,
+    0xe0faa ,
+    0xe0fab ,
+    0xe0fac ,
+    0xe0fad ,
+    0xe0fae ,
+    0xe0faf ,
+    0xe0fb0 ,
+    0xe0fb1 ,
+    0xe0fb2 ,
+    0xe0fb3 ,
+    0xe0fb4 ,
+    0xe0fb5 ,
+    0xe0fb6 ,
+    0xe0fb7 ,
+    0xe0fb8 ,
+    0xe0fb9 ,
+    0xe0fba ,
+    0xe0fbb ,
+    0xe0fbc ,
+    0xe0fbd ,
+    0xe0fbe ,
+    0xe0fbf ,
+    0xe0fc0 ,
+    0xe0fc1 ,
+    0xe0fc2 ,
+    0xe0fc3 ,
+    0xe0fc4 ,
+    0xe0fc5 ,
+    0xe0fc6 ,
+    0xe0fc7 ,
+    0xe0fc8 ,
+    0xe0fc9 ,
+    0xe0fca ,
+    0xe0fcb ,
+    0xe0fcc ,
+    0xe0fcd ,
+    0xe0fce ,
+    0xe0fcf ,
+    0xe0fd0 ,
+    0xe0fd1 ,
+    0xe0fd2 ,
+    0xe0fd3 ,
+    0xe0fd4 ,
+    0xe0fd5 ,
+    0xe0fd6 ,
+    0xe0fd7 ,
+    0xe0fd8 ,
+    0xe0fd9 ,
+    0xe0fda ,
+    0xe0fdb ,
+    0xe0fdc ,
+    0xe0fdd ,
+    0xe0fde ,
+    0xe0fdf ,
+    0xe0fe0 ,
+    0xe0fe1 ,
+    0xe0fe2 ,
+    0xe0fe3 ,
+    0xe0fe4 ,
+    0xe0fe5 ,
+    0xe0fe6 ,
+    0xe0fe7 ,
+    0xe0fe8 ,
+    0xe0fe9 ,
+    0xe0fea ,
+    0xe0feb ,
+    0xe0fec ,
+    0xe0fed ,
+    0xe0fee ,
+    0xe0fef ,
+    0xe0ff0 ,
+    0xe0ff1 ,
+    0xe0ff2 ,
+    0xe0ff3 ,
+    0xe0ff4 ,
+    0xe0ff5 ,
+    0xe0ff6 ,
+    0xe0ff7 ,
+    0xe0ff8 ,
+    0xe0ff9 ,
+    0xe0ffa ,
+    0xe0ffb ,
+    0xe0ffc ,
+    0xe0ffd ,
+    0xe0ffe ,
+    0xe0fff };
+
+static FcBlanks fcBlanks = {
+    4191,
+    -1,
+    _fcBlanks
+};
+
diff --git a/fc-blanks/fcblanks.tmpl.h b/fc-blanks/fcblanks.tmpl.h
new file mode 100644 (file)
index 0000000..2bcaa21
--- /dev/null
@@ -0,0 +1,25 @@
+/*
+ * fontconfig/fc-blanks/fcblanks.tmpl.h
+ *
+ * Copyright © 2003 Keith Packard
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission.  The authors make no
+ * representations about the suitability of this software for any purpose.  It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+
+@@@
index 7f7d1b1..0e10786 100644 (file)
@@ -36,7 +36,7 @@ uninstall-local:
        -$(RM) -rf "$(DESTDIR)$(fc_cachedir)"
 endif
 
-INCLUDES=-I${top_srcdir} -I${top_srcdir}/src $(WARN_CFLAGS)
+AM_CPPFLAGS=-I${top_srcdir} -I${top_srcdir}/src $(WARN_CFLAGS)
 
 bin_PROGRAMS=fc-cache
 
index a914194..598c91c 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 #  PERFORMANCE OF THIS SOFTWARE.
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -76,15 +104,16 @@ host_triplet = @host@
 bin_PROGRAMS = fc-cache$(EXEEXT)
 @USEDOCBOOK_TRUE@am__append_1 = ${man_MANS}
 subdir = fc-cache
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
        $(top_srcdir)/depcomp
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
@@ -171,6 +200,23 @@ am__uninstall_files_from_dir = { \
 man1dir = $(mandir)/man1
 NROFF = nroff
 MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -214,6 +260,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -255,12 +303,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -284,7 +339,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -292,7 +346,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = @configdir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -317,23 +370,26 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = @templatedir@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = @xmldir@
 DOC2MAN = docbook2man
 FC_CACHE_SRC = ${top_srcdir}/fc-cache
 SGML = ${FC_CACHE_SRC}/fc-cache.sgml
-INCLUDES = -I${top_srcdir} -I${top_srcdir}/src $(WARN_CFLAGS)
+AM_CPPFLAGS = -I${top_srcdir} -I${top_srcdir}/src $(WARN_CFLAGS)
 BUILT_MANS = fc-cache.1
 @ENABLE_DOCS_TRUE@man_MANS = ${BUILT_MANS}
 EXTRA_DIST = fc-cache.sgml $(BUILT_MANS)
@@ -382,10 +438,12 @@ install-binPROGRAMS: $(bin_PROGRAMS)
        fi; \
        for p in $$list; do echo "$$p $$p"; done | \
        sed 's/$(EXEEXT)$$//' | \
-       while read p p1; do if test -f $$p || test -f $$p1; \
-         then echo "$$p"; echo "$$p"; else :; fi; \
+       while read p p1; do if test -f $$p \
+        || test -f $$p1 \
+         ; then echo "$$p"; echo "$$p"; else :; fi; \
        done | \
-       sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+       sed -e 'p;s,.*/,,;n;h' \
+           -e 's|.*|.|' \
            -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
        sed 'N;N;N;s,\n, ,g' | \
        $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -406,7 +464,8 @@ uninstall-binPROGRAMS:
        @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
        files=`for p in $$list; do echo "$$p"; done | \
          sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
-             -e 's/$$/$(EXEEXT)/' `; \
+             -e 's/$$/$(EXEEXT)/' \
+       `; \
        test -n "$$list" || exit 0; \
        echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
        cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -419,6 +478,7 @@ clean-binPROGRAMS:
        list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
        echo " rm -f" $$list; \
        rm -f $$list
+
 fc-cache$(EXEEXT): $(fc_cache_OBJECTS) $(fc_cache_DEPENDENCIES) $(EXTRA_fc_cache_DEPENDENCIES) 
        @rm -f fc-cache$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(fc_cache_OBJECTS) $(fc_cache_LDADD) $(LIBS)
@@ -436,14 +496,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -501,26 +561,15 @@ uninstall-man1:
              -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
        dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -532,15 +581,11 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -549,9 +594,10 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
 
-cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
        case "$(srcdir)" in \
          [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
          *) sdir=$(subdir)/$(srcdir) ;; \
@@ -568,19 +614,6 @@ distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
 distdir: $(DISTFILES)
-       @list='$(MANS)'; if test -n "$$list"; then \
-         list=`for p in $$list; do \
-           if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
-           if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
-         if test -n "$$list" && \
-           grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
-           echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
-           grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/         /' >&2; \
-           echo "       to fix them, install help2man, remove and regenerate the man pages;" >&2; \
-           echo "       typically 'make maintainer-clean' will remove them" >&2; \
-           exit 1; \
-         else :; fi; \
-       else :; fi
        @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        list='$(DISTFILES)'; \
@@ -724,9 +757,9 @@ uninstall-man: uninstall-man1
 
 .MAKE: install-am install-strip
 
-.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
-       clean-binPROGRAMS clean-generic clean-libtool cscopelist ctags \
-       distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+       clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
+       ctags ctags-am distclean distclean-compile distclean-generic \
        distclean-libtool distclean-tags distdir dvi dvi-am html \
        html-am info info-am install install-am install-binPROGRAMS \
        install-data install-data-am install-data-local install-dvi \
@@ -736,7 +769,7 @@ uninstall-man: uninstall-man1
        install-ps-am install-strip installcheck installcheck-am \
        installdirs maintainer-clean maintainer-clean-generic \
        mostlyclean mostlyclean-compile mostlyclean-generic \
-       mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
+       mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
        uninstall-am uninstall-binPROGRAMS uninstall-local \
        uninstall-man uninstall-man1
 
index f111f86..e514779 100644 (file)
@@ -4,7 +4,7 @@
 fc-cache \- build font information cache files
 .SH SYNOPSIS
 .sp
-\fBfc-cache\fR [ \fB-frsvVh\fR ]  [ \fB--force\fR ]  [ \fB--really-force\fR ]  [ \fB--system-only\fR ]  [ \fB--verbose\fR ]  [ \fB--version\fR ]  [ \fB--help\fR ]  [ \fB\fIdir\fB\fR\fI...\fR ] 
+\fBfc-cache\fR [ \fB-EfrsvVh\fR ]  [ \fB--error-on-no-fonts\fR ]  [ \fB--force\fR ]  [ \fB--really-force\fR ]  [ \fB [ -y \fIdir\fB ]  [ --sysroot \fIdir\fB ] \fR ]  [ \fB--system-only\fR ]  [ \fB--verbose\fR ]  [ \fB--version\fR ]  [ \fB--help\fR ]  [ \fB\fIdir\fB\fR\fI...\fR ] 
 .SH "DESCRIPTION"
 .PP
 \fBfc-cache\fR scans the font directories on
@@ -28,6 +28,11 @@ This program follows the usual GNU command line syntax,
 with long options starting with two dashes (`-'). A summary of
 options is included below.
 .TP
+\fB-E\fR
+Raise an error if there are no fonts in
+\fB\fIdir\fB\fR or directories
+in the configuration if not given.
+.TP
 \fB-f\fR
 Force re-generation of apparently up-to-date cache files,
 overriding the timestamp checking.
@@ -42,6 +47,9 @@ located in the user's home directory.
 \fB-v\fR
 Display status information while busy.
 .TP
+\fB-y\fR
+Prepend \fB\fIdir\fB\fR to all paths for scanning.
+.TP
 \fB-h\fR
 Show summary of options.
 .TP
@@ -50,9 +58,12 @@ Show version of the program and exit.
 .TP
 \fB\fIdir\fB\fR
 Directory to scan for fonts.
+.SH "RETURN CODES"
+.PP
+\fBfc-cache\fR returns zero if the caches successfully generated. otherwise non-zero.
 .SH "FILES"
 .TP
-\fB\fI%cachdir%/*-%arch%\&.cache-2\fB\fR
+\fB\fI%cachedir%/*-%arch%\&.cache-%version%\fB\fR
 These files are generated by \fBfc-cache\fR
 and contain maps from file names to font properties. They are
 read by the fontconfig library at application startup to locate
index 2206096..18cd6c5 100644 (file)
 #define _GNU_SOURCE
 #include <getopt.h>
 const struct option longopts[] = {
+    {"error-on-no-fonts", 0, 0, 'E'},
     {"force", 0, 0, 'f'},
     {"really-force", 0, 0, 'r'},
+    {"sysroot", required_argument, 0, 'y'},
     {"system-only", 0, 0, 's'},
     {"version", 0, 0, 'V'},
     {"verbose", 0, 0, 'v'},
@@ -85,26 +87,31 @@ usage (char *program, int error)
 {
     FILE *file = error ? stderr : stdout;
 #if HAVE_GETOPT_LONG
-    fprintf (file, "usage: %s [-frsvVh] [--force|--really-force] [--system-only] [--verbose] [--version] [--help] [dirs]\n",
+    fprintf (file, "usage: %s [-EfrsvVh] [-y SYSROOT] [--error-on-no-fonts] [--force|--really-force] [--sysroot=SYSROOT] [--system-only] [--verbose] [--version] [--help] [dirs]\n",
             program);
 #else
-    fprintf (file, "usage: %s [-frsvVh] [dirs]\n",
+    fprintf (file, "usage: %s [-EfrsvVh] [-y SYSROOT] [dirs]\n",
             program);
 #endif
     fprintf (file, "Build font information caches in [dirs]\n"
             "(all directories in font configuration by default).\n");
     fprintf (file, "\n");
 #if HAVE_GETOPT_LONG
-    fprintf (file, "  -f, --force          scan directories with apparently valid caches\n");
-    fprintf (file, "  -r, --really-force   erase all existing caches, then rescan\n");
-    fprintf (file, "  -s, --system-only    scan system-wide directories only\n");
-    fprintf (file, "  -v, --verbose        display status information while busy\n");
-    fprintf (file, "  -V, --version        display font config version and exit\n");
-    fprintf (file, "  -h, --help           display this help and exit\n");
+    fprintf (file, "  -E, --error-on-no-fonts  raise an error if no fonts in a directory\n");
+    fprintf (file, "  -f, --force              scan directories with apparently valid caches\n");
+    fprintf (file, "  -r, --really-force       erase all existing caches, then rescan\n");
+    fprintf (file, "  -s, --system-only        scan system-wide directories only\n");
+    fprintf (file, "  -y, --sysroot=SYSROOT    prepend SYSROOT to all paths for scanning\n");
+    fprintf (file, "  -v, --verbose            display status information while busy\n");
+    fprintf (file, "  -V, --version            display font config version and exit\n");
+    fprintf (file, "  -h, --help               display this help and exit\n");
 #else
+    fprintf (file, "  -E         (error-on-no-fonts)\n");
+    fprintf (file, "                       raise an error if no fonts in a directory\n");
     fprintf (file, "  -f         (force)   scan directories with apparently valid caches\n");
     fprintf (file, "  -r,   (really force) erase all existing caches, then rescan\n");
     fprintf (file, "  -s         (system)  scan system-wide directories only\n");
+    fprintf (file, "  -y SYSROOT (sysroot) prepend SYSROOT to all paths for scanning\n");
     fprintf (file, "  -v         (verbose) display status information while busy\n");
     fprintf (file, "  -V         (version) display font config version and exit\n");
     fprintf (file, "  -h         (help)    display this help and exit\n");
@@ -115,7 +122,7 @@ usage (char *program, int error)
 static FcStrSet *processed_dirs;
 
 static int
-scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force, FcBool verbose, int *changed)
+scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force, FcBool verbose, FcBool recursive, FcBool error_on_no_fonts, int *changed, FcStrSet *updateDirs)
 {
     int                    ret = 0;
     const FcChar8   *dir;
@@ -123,9 +130,10 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
     FcStrList      *sublist;
     FcCache        *cache;
     struct stat            statb;
-    FcBool         was_valid;
+    FcBool         was_valid, was_processed = FcFalse;
     int                    i;
-    
+    const FcChar8   *sysroot = FcConfigGetSysRoot (config);
+
     /*
      * Now scan all of the directories into separate databases
      * and write out the results
@@ -134,11 +142,15 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
     {
        if (verbose)
        {
+           if (!recursive)
+               printf ("Re-scanning ");
+           if (sysroot)
+               printf ("[%s]", sysroot);
            printf ("%s: ", dir);
            fflush (stdout);
        }
        
-       if (FcStrSetMember (processed_dirs, dir))
+       if (recursive && FcStrSetMember (processed_dirs, dir))
        {
            if (verbose)
                printf ("skipping, looped directory detected\n");
@@ -167,6 +179,7 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
            fprintf (stderr, "\"%s\": not a directory, skipping\n", dir);
            continue;
        }
+       was_processed = FcTrue;
 
        if (really_force)
            FcDirCacheUnlink (dir, config);
@@ -181,8 +194,13 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
        
        if (!cache)
        {
-           (*changed)++;
-           cache = FcDirCacheRead (dir, FcTrue, config);
+           if (!recursive)
+               cache = FcDirCacheRescan (dir, config);
+           else
+           {
+               (*changed)++;
+               cache = FcDirCacheRead (dir, FcTrue, config);
+           }
            if (!cache)
            {
                fprintf (stderr, "%s: error scanning\n", dir);
@@ -210,32 +228,41 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
                ret++;
            }
        }
-       
-       subdirs = FcStrSetCreate ();
-       if (!subdirs)
+
+       if (recursive)
        {
-           fprintf (stderr, "%s: Can't create subdir set\n", dir);
-           ret++;
-           FcDirCacheUnload (cache);
-           continue;
-       }
-       for (i = 0; i < FcCacheNumSubdir (cache); i++)
-           FcStrSetAdd (subdirs, FcCacheSubdir (cache, i));
+           subdirs = FcStrSetCreate ();
+           if (!subdirs)
+           {
+               fprintf (stderr, "%s: Can't create subdir set\n", dir);
+               ret++;
+               FcDirCacheUnload (cache);
+               continue;
+           }
+           for (i = 0; i < FcCacheNumSubdir (cache); i++)
+               FcStrSetAdd (subdirs, FcCacheSubdir (cache, i));
+           if (updateDirs && FcCacheNumSubdir (cache) > 0)
+               FcStrSetAdd (updateDirs, dir);
        
-       FcDirCacheUnload (cache);
+           FcDirCacheUnload (cache);
        
-       sublist = FcStrListCreate (subdirs);
-       FcStrSetDestroy (subdirs);
-       if (!sublist)
-       {
-           fprintf (stderr, "%s: Can't create subdir list\n", dir);
-           ret++;
-           continue;
+           sublist = FcStrListCreate (subdirs);
+           FcStrSetDestroy (subdirs);
+           if (!sublist)
+           {
+               fprintf (stderr, "%s: Can't create subdir list\n", dir);
+               ret++;
+               continue;
+           }
+           FcStrSetAdd (processed_dirs, dir);
+           ret += scanDirs (sublist, config, force, really_force, verbose, recursive, error_on_no_fonts, changed, updateDirs);
+           FcStrListDone (sublist);
        }
-       FcStrSetAdd (processed_dirs, dir);
-       ret += scanDirs (sublist, config, force, really_force, verbose, changed);
+       else
+           FcDirCacheUnload (cache);
     }
-    FcStrListDone (list);
+    if (error_on_no_fonts && !was_processed)
+       ret++;
     return ret;
 }
 
@@ -263,13 +290,15 @@ cleanCacheDirectories (FcConfig *config, FcBool verbose)
 int
 main (int argc, char **argv)
 {
-    FcStrSet   *dirs;
+    FcStrSet   *dirs, *updateDirs;
     FcStrList  *list;
     FcBool     verbose = FcFalse;
     FcBool     force = FcFalse;
     FcBool     really_force = FcFalse;
     FcBool     systemOnly = FcFalse;
+    FcBool     error_on_no_fonts = FcFalse;
     FcConfig   *config;
+    FcChar8     *sysroot = NULL;
     int                i;
     int                changed;
     int                ret;
@@ -277,12 +306,15 @@ main (int argc, char **argv)
     int                c;
 
 #if HAVE_GETOPT_LONG
-    while ((c = getopt_long (argc, argv, "frsVvh", longopts, NULL)) != -1)
+    while ((c = getopt_long (argc, argv, "Efrsy:Vvh", longopts, NULL)) != -1)
 #else
-    while ((c = getopt (argc, argv, "frsVvh")) != -1)
+    while ((c = getopt (argc, argv, "Efrsy:Vvh")) != -1)
 #endif
     {
        switch (c) {
+       case 'E':
+           error_on_no_fonts = FcTrue;
+           break;
        case 'r':
            really_force = FcTrue;
            /* fall through */
@@ -292,6 +324,9 @@ main (int argc, char **argv)
        case 's':
            systemOnly = FcTrue;
            break;
+       case 'y':
+           sysroot = FcStrCopy ((const FcChar8 *)optarg);
+           break;
        case 'V':
            fprintf (stderr, "fontconfig version %d.%d.%d\n", 
                     FC_MAJOR, FC_MINOR, FC_REVISION);
@@ -312,7 +347,16 @@ main (int argc, char **argv)
 
     if (systemOnly)
        FcConfigEnableHome (FcFalse);
-    config = FcInitLoadConfig ();
+    if (sysroot)
+    {
+       FcConfigSetSysRoot (NULL, sysroot);
+       FcStrFree (sysroot);
+       config = FcConfigGetCurrent();
+    }
+    else
+    {
+       config = FcInitLoadConfig ();
+    }
     if (!config)
     {
        fprintf (stderr, "%s: Can't init font config library\n", argv[0]);
@@ -348,9 +392,19 @@ main (int argc, char **argv)
        fprintf(stderr, "Cannot malloc\n");
        return 1;
     }
-       
+
+    updateDirs = FcStrSetCreate ();
     changed = 0;
-    ret = scanDirs (list, config, force, really_force, verbose, &changed);
+    ret = scanDirs (list, config, force, really_force, verbose, FcTrue, error_on_no_fonts, &changed, updateDirs);
+    /* Update the directory cache again to avoid the race condition as much as possible */
+    FcStrListDone (list);
+    list = FcStrListCreate (updateDirs);
+    if (list)
+    {
+       ret += scanDirs (list, config, FcTrue, FcFalse, verbose, FcFalse, error_on_no_fonts, &changed, NULL);
+       FcStrListDone (list);
+    }
+    FcStrSetDestroy (updateDirs);
 
     /*
      * Try to create CACHEDIR.TAG anyway.
@@ -363,6 +417,8 @@ main (int argc, char **argv)
 
     cleanCacheDirectories (config, verbose);
 
+    FcConfigDestroy (config);
+    FcFini ();
     /* 
      * Now we need to sleep a second  (or two, to be extra sure), to make
      * sure that timestamps for changes after this run of fc-cache are later
@@ -370,8 +426,7 @@ main (int argc, char **argv)
      * sleep(3) can't be interrupted by a signal here -- this isn't in the
      * library, and there aren't any signals flying around here.
      */
-    FcConfigDestroy (config);
-    FcFini ();
+    /* the resolution of mtime on FAT is 2 seconds */
     if (changed)
        sleep (2);
     if (verbose)
index 3740be7..5ae0107 100644 (file)
@@ -63,9 +63,14 @@ manpage.1: manpage.sgml
     <cmdsynopsis>
       <command>&dhpackage;</command>
 
-      <arg><option>-frsvVh</option></arg>
+      <arg><option>-EfrsvVh</option></arg>
+      <arg><option>--error-on-no-fonts</option></arg>
       <arg><option>--force</option></arg>
       <arg><option>--really-force</option></arg>
+      <group>
+       <arg><option>-y</option> <option><replaceable>dir</replaceable></option></arg>
+       <arg><option>--sysroot</option> <option><replaceable>dir</replaceable></option></arg>
+      </group>
       <arg><option>--system-only</option></arg>
       <arg><option>--verbose</option></arg>
       <arg><option>--version</option></arg>
@@ -103,6 +108,16 @@ manpage.1: manpage.sgml
 
     <variablelist>
       <varlistentry>
+       <term><option>-E</option>
+         <option>--error-on-no-fonts</option>
+       </term>
+       <listitem>
+         <para>Raise an error if there are no fonts in
+           <option><replaceable>dir</replaceable></option> or directories
+           in the configuration if not given.</para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
         <term><option>-f</option>
           <option>--force</option>
         </term>
@@ -137,6 +152,15 @@ manpage.1: manpage.sgml
         </listitem>
       </varlistentry>
       <varlistentry>
+       <term><option>-y</option>
+         <option>-sysroot</option>
+         <option><replaceable>dir</replaceable></option>
+       </term>
+       <listitem>
+         <para>Prepend <option><replaceable>dir</replaceable></option> to all paths for scanning.</para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
         <term><option>-h</option>
           <option>--help</option>
         </term>
@@ -163,10 +187,15 @@ manpage.1: manpage.sgml
   </refsect1>
 
   <refsect1>
+    <title>RETURN CODES</title>
+    <para><command>fc-cache</command> returns zero if the caches successfully generated. otherwise non-zero.</para>
+  </refsect1>
+  
+  <refsect1>
     <title>FILES</title>
     <variablelist>
       <varlistentry>
-        <term><filename><replaceable>%cachdir%</replaceable>/*-<replaceable>%arch%</replaceable>.cache-2</filename></term>
+        <term><filename><replaceable>%cachedir%</replaceable>/*-<replaceable>%arch%</replaceable>.cache-%version%</filename></term>
        <listitem>
          <para>These files are generated by <command>&dhpackage;</command>
             and contain maps from file names to font properties. They are
index df1813d..13c10a6 100644 (file)
@@ -1,8 +1,8 @@
-# CaseFolding-6.2.0.txt
-# Date: 2012-08-14, 17:54:49 GMT [MD]
+# CaseFolding-7.0.0.txt
+# Date: 2014-04-09, 20:00:56 GMT [MD]
 #
 # Unicode Character Database
-# Copyright (c) 1991-2012 Unicode, Inc.
+# Copyright (c) 1991-2014 Unicode, Inc.
 # For terms of use, see http://www.unicode.org/terms_of_use.html
 # For documentation, see http://www.unicode.org/reports/tr44/
 #
@@ -25,7 +25,7 @@
 #
 # For information on case folding, including how to have case folding 
 # preserve normalization formats, see Section 3.13 Default Case Algorithms in
-# The Unicode Standard, Version 5.0.
+# The Unicode Standard.
 #
 # ================================================================================
 # Format
@@ -58,8 +58,6 @@
 #  All code points not explicitly listed for Case_Folding
 #  have the value C for the status field, and the code point itself for the mapping field.
 
-# @missing: 0000..10FFFF; C; <code point>
-
 # =================================================================
 0041; C; 0061; # LATIN CAPITAL LETTER A
 0042; C; 0062; # LATIN CAPITAL LETTER B
 0370; C; 0371; # GREEK CAPITAL LETTER HETA
 0372; C; 0373; # GREEK CAPITAL LETTER ARCHAIC SAMPI
 0376; C; 0377; # GREEK CAPITAL LETTER PAMPHYLIAN DIGAMMA
+037F; C; 03F3; # GREEK CAPITAL LETTER YOT
 0386; C; 03AC; # GREEK CAPITAL LETTER ALPHA WITH TONOS
 0388; C; 03AD; # GREEK CAPITAL LETTER EPSILON WITH TONOS
 0389; C; 03AE; # GREEK CAPITAL LETTER ETA WITH TONOS
 0522; C; 0523; # CYRILLIC CAPITAL LETTER EN WITH MIDDLE HOOK
 0524; C; 0525; # CYRILLIC CAPITAL LETTER PE WITH DESCENDER
 0526; C; 0527; # CYRILLIC CAPITAL LETTER SHHA WITH DESCENDER
+0528; C; 0529; # CYRILLIC CAPITAL LETTER EN WITH LEFT HOOK
+052A; C; 052B; # CYRILLIC CAPITAL LETTER DZZHE
+052C; C; 052D; # CYRILLIC CAPITAL LETTER DCHE
+052E; C; 052F; # CYRILLIC CAPITAL LETTER EL WITH DESCENDER
 0531; C; 0561; # ARMENIAN CAPITAL LETTER AYB
 0532; C; 0562; # ARMENIAN CAPITAL LETTER BEN
 0533; C; 0563; # ARMENIAN CAPITAL LETTER GIM
@@ -1088,6 +1091,8 @@ A690; C; A691; # CYRILLIC CAPITAL LETTER TSSE
 A692; C; A693; # CYRILLIC CAPITAL LETTER TCHE
 A694; C; A695; # CYRILLIC CAPITAL LETTER HWE
 A696; C; A697; # CYRILLIC CAPITAL LETTER SHWE
+A698; C; A699; # CYRILLIC CAPITAL LETTER DOUBLE O
+A69A; C; A69B; # CYRILLIC CAPITAL LETTER CROSSED O
 A722; C; A723; # LATIN CAPITAL LETTER EGYPTOLOGICAL ALEF
 A724; C; A725; # LATIN CAPITAL LETTER EGYPTOLOGICAL AIN
 A726; C; A727; # LATIN CAPITAL LETTER HENG
@@ -1138,12 +1143,22 @@ A78B; C; A78C; # LATIN CAPITAL LETTER SALTILLO
 A78D; C; 0265; # LATIN CAPITAL LETTER TURNED H
 A790; C; A791; # LATIN CAPITAL LETTER N WITH DESCENDER
 A792; C; A793; # LATIN CAPITAL LETTER C WITH BAR
+A796; C; A797; # LATIN CAPITAL LETTER B WITH FLOURISH
+A798; C; A799; # LATIN CAPITAL LETTER F WITH STROKE
+A79A; C; A79B; # LATIN CAPITAL LETTER VOLAPUK AE
+A79C; C; A79D; # LATIN CAPITAL LETTER VOLAPUK OE
+A79E; C; A79F; # LATIN CAPITAL LETTER VOLAPUK UE
 A7A0; C; A7A1; # LATIN CAPITAL LETTER G WITH OBLIQUE STROKE
 A7A2; C; A7A3; # LATIN CAPITAL LETTER K WITH OBLIQUE STROKE
 A7A4; C; A7A5; # LATIN CAPITAL LETTER N WITH OBLIQUE STROKE
 A7A6; C; A7A7; # LATIN CAPITAL LETTER R WITH OBLIQUE STROKE
 A7A8; C; A7A9; # LATIN CAPITAL LETTER S WITH OBLIQUE STROKE
 A7AA; C; 0266; # LATIN CAPITAL LETTER H WITH HOOK
+A7AB; C; 025C; # LATIN CAPITAL LETTER REVERSED OPEN E
+A7AC; C; 0261; # LATIN CAPITAL LETTER SCRIPT G
+A7AD; C; 026C; # LATIN CAPITAL LETTER L WITH BELT
+A7B0; C; 029E; # LATIN CAPITAL LETTER TURNED K
+A7B1; C; 0287; # LATIN CAPITAL LETTER TURNED T
 FB00; F; 0066 0066; # LATIN SMALL LIGATURE FF
 FB01; F; 0066 0069; # LATIN SMALL LIGATURE FI
 FB02; F; 0066 006C; # LATIN SMALL LIGATURE FL
@@ -1222,5 +1237,37 @@ FF3A; C; FF5A; # FULLWIDTH LATIN CAPITAL LETTER Z
 10425; C; 1044D; # DESERET CAPITAL LETTER ENG
 10426; C; 1044E; # DESERET CAPITAL LETTER OI
 10427; C; 1044F; # DESERET CAPITAL LETTER EW
+118A0; C; 118C0; # WARANG CITI CAPITAL LETTER NGAA
+118A1; C; 118C1; # WARANG CITI CAPITAL LETTER A
+118A2; C; 118C2; # WARANG CITI CAPITAL LETTER WI
+118A3; C; 118C3; # WARANG CITI CAPITAL LETTER YU
+118A4; C; 118C4; # WARANG CITI CAPITAL LETTER YA
+118A5; C; 118C5; # WARANG CITI CAPITAL LETTER YO
+118A6; C; 118C6; # WARANG CITI CAPITAL LETTER II
+118A7; C; 118C7; # WARANG CITI CAPITAL LETTER UU
+118A8; C; 118C8; # WARANG CITI CAPITAL LETTER E
+118A9; C; 118C9; # WARANG CITI CAPITAL LETTER O
+118AA; C; 118CA; # WARANG CITI CAPITAL LETTER ANG
+118AB; C; 118CB; # WARANG CITI CAPITAL LETTER GA
+118AC; C; 118CC; # WARANG CITI CAPITAL LETTER KO
+118AD; C; 118CD; # WARANG CITI CAPITAL LETTER ENY
+118AE; C; 118CE; # WARANG CITI CAPITAL LETTER YUJ
+118AF; C; 118CF; # WARANG CITI CAPITAL LETTER UC
+118B0; C; 118D0; # WARANG CITI CAPITAL LETTER ENN
+118B1; C; 118D1; # WARANG CITI CAPITAL LETTER ODD
+118B2; C; 118D2; # WARANG CITI CAPITAL LETTER TTE
+118B3; C; 118D3; # WARANG CITI CAPITAL LETTER NUNG
+118B4; C; 118D4; # WARANG CITI CAPITAL LETTER DA
+118B5; C; 118D5; # WARANG CITI CAPITAL LETTER AT
+118B6; C; 118D6; # WARANG CITI CAPITAL LETTER AM
+118B7; C; 118D7; # WARANG CITI CAPITAL LETTER BU
+118B8; C; 118D8; # WARANG CITI CAPITAL LETTER PU
+118B9; C; 118D9; # WARANG CITI CAPITAL LETTER HIYO
+118BA; C; 118DA; # WARANG CITI CAPITAL LETTER HOLO
+118BB; C; 118DB; # WARANG CITI CAPITAL LETTER HORR
+118BC; C; 118DC; # WARANG CITI CAPITAL LETTER HAR
+118BD; C; 118DD; # WARANG CITI CAPITAL LETTER SSUU
+118BE; C; 118DE; # WARANG CITI CAPITAL LETTER SII
+118BF; C; 118DF; # WARANG CITI CAPITAL LETTER VIYO
 #
 # EOF
index 50dd0a5..d6cccb5 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # Google Author(s): Behdad Esfahbod
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -100,16 +128,17 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
-       $(srcdir)/Makefile.in $(top_srcdir)/Tools.mk
+DIST_COMMON = $(top_srcdir)/Tools.mk $(srcdir)/Makefile.in \
+       $(srcdir)/Makefile.am $(noinst_HEADERS)
 subdir = fc-case
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
@@ -136,6 +165,23 @@ am__can_run_installinfo = \
     *) (install-info --version) >/dev/null 2>&1;; \
   esac
 HEADERS = $(noinst_HEADERS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -179,6 +225,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -220,12 +268,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -249,7 +304,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -257,7 +311,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = @configdir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -282,19 +335,22 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = @templatedir@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = @xmldir@
 TAG = case
 DEPS = $(srcdir)/CaseFolding.txt
 ARGS = $(srcdir)/CaseFolding.txt
@@ -306,7 +362,7 @@ TARG = $(OUT).h
 TSRC = $(DIR).c
 TOOL = ./$(DIR)$(EXEEXT_FOR_BUILD)
 EXTRA_DIST = $(TARG) $(TMPL) $(TSRC) $(DIST)
-INCLUDES = \
+AM_CPPFLAGS = \
           -I$(builddir) \
           -I$(srcdir) \
           -I$(top_builddir)/src \
@@ -363,26 +419,15 @@ mostlyclean-libtool:
 clean-libtool:
        -rm -rf .libs _libs
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -394,15 +439,11 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -411,9 +452,10 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
 
-cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
        case "$(srcdir)" in \
          [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
          *) sdir=$(subdir)/$(srcdir) ;; \
@@ -566,22 +608,22 @@ uninstall-am:
 
 .MAKE: all check install install-am install-strip
 
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
-       clean-libtool cscopelist ctags distclean distclean-generic \
-       distclean-libtool distclean-tags distdir dvi dvi-am html \
-       html-am info info-am install install-am install-data \
-       install-data-am install-dvi install-dvi-am install-exec \
-       install-exec-am install-html install-html-am install-info \
-       install-info-am install-man install-pdf install-pdf-am \
-       install-ps install-ps-am install-strip installcheck \
-       installcheck-am installdirs maintainer-clean \
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+       clean-libtool cscopelist-am ctags ctags-am distclean \
+       distclean-generic distclean-libtool distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-dvi install-dvi-am \
+       install-exec install-exec-am install-html install-html-am \
+       install-info install-info-am install-man install-pdf \
+       install-pdf-am install-ps install-ps-am install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
        maintainer-clean-generic mostlyclean mostlyclean-generic \
-       mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
+       mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
        uninstall-am
 
 
 $(TOOL): $(TSRC) $(ALIAS_FILES)
-       $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(INCLUDES)
+       $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(AM_CPPFLAGS)
 
 $(TARG): $(TMPL) $(TSRC) $(DEPS)
        $(AM_V_GEN) $(MAKE) $(TOOL) && \
index e80a009..3df563e 100644 (file)
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-#define FC_NUM_CASE_FOLD       264
+#define FC_NUM_CASE_FOLD       271
 #define FC_NUM_CASE_FOLD_CHARS 471
 #define FC_MAX_CASE_FOLD_CHARS 6
 #define FC_MAX_CASE_FOLD_EXPAND        4
 #define FC_MIN_FOLD_CHAR       0x00000041
-#define FC_MAX_FOLD_CHAR       0x00010427
+#define FC_MAX_FOLD_CHAR       0x000118bf
 
 static const FcCaseFold    fcCaseFold[FC_NUM_CASE_FOLD] = {
     { 0x00000041, FC_CASE_FOLD_RANGE,    0x001a,     32 },
@@ -101,6 +101,7 @@ static const FcCaseFold    fcCaseFold[FC_NUM_CASE_FOLD] = {
     { 0x00000345, FC_CASE_FOLD_RANGE,    0x0001,    116 },
     { 0x00000370, FC_CASE_FOLD_EVEN_ODD, 0x0003,      1 },
     { 0x00000376, FC_CASE_FOLD_EVEN_ODD, 0x0001,      1 },
+    { 0x0000037f, FC_CASE_FOLD_RANGE,    0x0001,    116 },
     { 0x00000386, FC_CASE_FOLD_RANGE,    0x0001,     38 },
     { 0x00000388, FC_CASE_FOLD_RANGE,    0x0003,     37 },
     { 0x0000038c, FC_CASE_FOLD_RANGE,    0x0001,     64 },
@@ -130,7 +131,7 @@ static const FcCaseFold    fcCaseFold[FC_NUM_CASE_FOLD] = {
     { 0x0000048a, FC_CASE_FOLD_EVEN_ODD, 0x0035,      1 },
     { 0x000004c0, FC_CASE_FOLD_RANGE,    0x0001,     15 },
     { 0x000004c1, FC_CASE_FOLD_EVEN_ODD, 0x000d,      1 },
-    { 0x000004d0, FC_CASE_FOLD_EVEN_ODD, 0x0057,      1 },
+    { 0x000004d0, FC_CASE_FOLD_EVEN_ODD, 0x005f,      1 },
     { 0x00000531, FC_CASE_FOLD_RANGE,    0x0026,     48 },
     { 0x00000587, FC_CASE_FOLD_FULL,     0x0004,     23 },
     { 0x000010a0, FC_CASE_FOLD_RANGE,    0x0026,   7264 },
@@ -269,7 +270,7 @@ static const FcCaseFold    fcCaseFold[FC_NUM_CASE_FOLD] = {
     { 0x00002ceb, FC_CASE_FOLD_EVEN_ODD, 0x0003,      1 },
     { 0x00002cf2, FC_CASE_FOLD_EVEN_ODD, 0x0001,      1 },
     { 0x0000a640, FC_CASE_FOLD_EVEN_ODD, 0x002d,      1 },
-    { 0x0000a680, FC_CASE_FOLD_EVEN_ODD, 0x0017,      1 },
+    { 0x0000a680, FC_CASE_FOLD_EVEN_ODD, 0x001b,      1 },
     { 0x0000a722, FC_CASE_FOLD_EVEN_ODD, 0x000d,      1 },
     { 0x0000a732, FC_CASE_FOLD_EVEN_ODD, 0x003d,      1 },
     { 0x0000a779, FC_CASE_FOLD_EVEN_ODD, 0x0003,      1 },
@@ -278,8 +279,13 @@ static const FcCaseFold    fcCaseFold[FC_NUM_CASE_FOLD] = {
     { 0x0000a78b, FC_CASE_FOLD_EVEN_ODD, 0x0001,      1 },
     { 0x0000a78d, FC_CASE_FOLD_RANGE,    0x0001,  23256 },
     { 0x0000a790, FC_CASE_FOLD_EVEN_ODD, 0x0003,      1 },
-    { 0x0000a7a0, FC_CASE_FOLD_EVEN_ODD, 0x0009,      1 },
+    { 0x0000a796, FC_CASE_FOLD_EVEN_ODD, 0x0013,      1 },
     { 0x0000a7aa, FC_CASE_FOLD_RANGE,    0x0001,  23228 },
+    { 0x0000a7ab, FC_CASE_FOLD_RANGE,    0x0001,  23217 },
+    { 0x0000a7ac, FC_CASE_FOLD_RANGE,    0x0001,  23221 },
+    { 0x0000a7ad, FC_CASE_FOLD_RANGE,    0x0001,  23231 },
+    { 0x0000a7b0, FC_CASE_FOLD_RANGE,    0x0001,  23278 },
+    { 0x0000a7b1, FC_CASE_FOLD_RANGE,    0x0001,  23254 },
     { 0x0000fb00, FC_CASE_FOLD_FULL,     0x0002,    435 },
     { 0x0000fb01, FC_CASE_FOLD_FULL,     0x0002,    437 },
     { 0x0000fb02, FC_CASE_FOLD_FULL,     0x0002,    439 },
@@ -294,6 +300,7 @@ static const FcCaseFold    fcCaseFold[FC_NUM_CASE_FOLD] = {
     { 0x0000fb17, FC_CASE_FOLD_FULL,     0x0004,    467 },
     { 0x0000ff21, FC_CASE_FOLD_RANGE,    0x001a,     32 },
     { 0x00010400, FC_CASE_FOLD_RANGE,    0x0028,     40 },
+    { 0x000118a0, FC_CASE_FOLD_RANGE,    0x0020,     32 },
 };
 
 static const FcChar8   fcCaseFoldChars[FC_NUM_CASE_FOLD_CHARS] = {
index b426723..04c1cc4 100644 (file)
@@ -27,7 +27,7 @@ FC_CAT_SRC=${top_srcdir}/fc-cat
 
 SGML = ${FC_CAT_SRC}/fc-cat.sgml
 
-INCLUDES=-I${top_srcdir} $(WARN_CFLAGS)
+AM_CPPFLAGS=-I${top_srcdir} $(WARN_CFLAGS)
 
 bin_PROGRAMS=fc-cat
 
index 7336790..32239f0 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 #  PERFORMANCE OF THIS SOFTWARE.
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -76,15 +104,16 @@ host_triplet = @host@
 bin_PROGRAMS = fc-cat$(EXEEXT)
 @USEDOCBOOK_TRUE@am__append_1 = ${man_MANS}
 subdir = fc-cat
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
        $(top_srcdir)/depcomp
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
@@ -171,6 +200,23 @@ am__uninstall_files_from_dir = { \
 man1dir = $(mandir)/man1
 NROFF = nroff
 MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -214,6 +260,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -255,12 +303,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -284,7 +339,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -292,7 +346,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = @configdir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -317,23 +370,26 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = @templatedir@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = @xmldir@
 DOC2MAN = docbook2man
 FC_CAT_SRC = ${top_srcdir}/fc-cat
 SGML = ${FC_CAT_SRC}/fc-cat.sgml
-INCLUDES = -I${top_srcdir} $(WARN_CFLAGS)
+AM_CPPFLAGS = -I${top_srcdir} $(WARN_CFLAGS)
 BUILT_MANS = fc-cat.1
 @ENABLE_DOCS_TRUE@man_MANS = ${BUILT_MANS}
 EXTRA_DIST = fc-cat.sgml ${BUILT_MANS}
@@ -382,10 +438,12 @@ install-binPROGRAMS: $(bin_PROGRAMS)
        fi; \
        for p in $$list; do echo "$$p $$p"; done | \
        sed 's/$(EXEEXT)$$//' | \
-       while read p p1; do if test -f $$p || test -f $$p1; \
-         then echo "$$p"; echo "$$p"; else :; fi; \
+       while read p p1; do if test -f $$p \
+        || test -f $$p1 \
+         ; then echo "$$p"; echo "$$p"; else :; fi; \
        done | \
-       sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+       sed -e 'p;s,.*/,,;n;h' \
+           -e 's|.*|.|' \
            -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
        sed 'N;N;N;s,\n, ,g' | \
        $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -406,7 +464,8 @@ uninstall-binPROGRAMS:
        @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
        files=`for p in $$list; do echo "$$p"; done | \
          sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
-             -e 's/$$/$(EXEEXT)/' `; \
+             -e 's/$$/$(EXEEXT)/' \
+       `; \
        test -n "$$list" || exit 0; \
        echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
        cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -419,6 +478,7 @@ clean-binPROGRAMS:
        list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
        echo " rm -f" $$list; \
        rm -f $$list
+
 fc-cat$(EXEEXT): $(fc_cat_OBJECTS) $(fc_cat_DEPENDENCIES) $(EXTRA_fc_cat_DEPENDENCIES) 
        @rm -f fc-cat$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(fc_cat_OBJECTS) $(fc_cat_LDADD) $(LIBS)
@@ -436,14 +496,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -501,26 +561,15 @@ uninstall-man1:
              -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
        dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -532,15 +581,11 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -549,9 +594,10 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
 
-cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
        case "$(srcdir)" in \
          [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
          *) sdir=$(subdir)/$(srcdir) ;; \
@@ -568,19 +614,6 @@ distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
 distdir: $(DISTFILES)
-       @list='$(MANS)'; if test -n "$$list"; then \
-         list=`for p in $$list; do \
-           if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
-           if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
-         if test -n "$$list" && \
-           grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
-           echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
-           grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/         /' >&2; \
-           echo "       to fix them, install help2man, remove and regenerate the man pages;" >&2; \
-           echo "       typically 'make maintainer-clean' will remove them" >&2; \
-           exit 1; \
-         else :; fi; \
-       else :; fi
        @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        list='$(DISTFILES)'; \
@@ -722,9 +755,9 @@ uninstall-man: uninstall-man1
 
 .MAKE: install-am install-strip
 
-.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
-       clean-binPROGRAMS clean-generic clean-libtool cscopelist ctags \
-       distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+       clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
+       ctags ctags-am distclean distclean-compile distclean-generic \
        distclean-libtool distclean-tags distdir dvi dvi-am html \
        html-am info info-am install install-am install-binPROGRAMS \
        install-data install-data-am install-dvi install-dvi-am \
@@ -734,7 +767,7 @@ uninstall-man: uninstall-man1
        install-strip installcheck installcheck-am installdirs \
        maintainer-clean maintainer-clean-generic mostlyclean \
        mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
-       pdf pdf-am ps ps-am tags uninstall uninstall-am \
+       pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
        uninstall-binPROGRAMS uninstall-man uninstall-man1
 
 
index 7c7a369..ff74798 100644 (file)
@@ -6,7 +6,7 @@ fc-cat \- read font information cache files
 .sp
 \fBfc-cat\fR [ \fB-rvVh\fR ]  [ \fB--recurse\fR ]  [ \fB--verbose\fR ]  [ \fB--version\fR ]  [ \fB--help\fR ] 
 
- [ \fB [ \fIfonts-cache-2-files\fB ]  [ \fIdirs\fB ] \fR\fI...\fR ] 
+ [ \fB [ \fIfonts-cache-%version%-files\fB ]  [ \fIdirs\fB ] \fR\fI...\fR ] 
 .SH "DESCRIPTION"
 .PP
 \fBfc-cat\fR reads the font information from
index 9a2abb3..f0131b6 100644 (file)
@@ -298,6 +298,7 @@ main (int argc, char **argv)
        return 1;
     }
     FcConfigSetCurrent (config);
+    FcConfigDestroy (config);
     
     args = FcStrSetCreate ();
     if (!args)
@@ -315,12 +316,6 @@ main (int argc, char **argv)
                return 1;
            }
        }
-       arglist = FcStrListCreate (args);
-       if (!arglist)
-       {
-           fprintf (stderr, "%s: malloc failure\n", argv[0]);
-           return 1;
-       }
     }
     else
     {
@@ -340,6 +335,7 @@ main (int argc, char **argv)
        fprintf (stderr, "%s: malloc failure\n", argv[0]);
        return 1;
     }
+    FcStrSetDestroy (args);
 
     while ((arg = FcStrListNext (arglist)))
     {
@@ -384,6 +380,7 @@ main (int argc, char **argv)
        if (cache_file)
            FcStrFree (cache_file);
     }
+    FcStrListDone (arglist);
 
     FcFini ();
     return 0;
index ce4736d..a513254 100644 (file)
@@ -70,7 +70,7 @@ manpage.1: manpage.sgml
       <arg><option>--help</option></arg>
       <sbr>
       <group rep="repeat">
-          <arg><option><replaceable>fonts-cache-2-files</replaceable></option></arg>
+          <arg><option><replaceable>fonts-cache-%version%-files</replaceable></option></arg>
           <arg><option><replaceable>dirs</replaceable></option></arg>
       </group>
       
index 0b2973d..4173cc2 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # Google Author(s): Behdad Esfahbod
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -100,16 +128,17 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
-       $(srcdir)/Makefile.in $(top_srcdir)/Tools.mk
+DIST_COMMON = $(top_srcdir)/Tools.mk $(srcdir)/Makefile.in \
+       $(srcdir)/Makefile.am $(noinst_HEADERS)
 subdir = fc-glyphname
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
@@ -136,6 +165,23 @@ am__can_run_installinfo = \
     *) (install-info --version) >/dev/null 2>&1;; \
   esac
 HEADERS = $(noinst_HEADERS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -179,6 +225,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -220,12 +268,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -249,7 +304,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -257,7 +311,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = @configdir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -282,19 +335,22 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = @templatedir@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = @xmldir@
 TAG = glyphname
 DEPS = $(srcdir)/zapfdingbats.txt
 ARGS = $(srcdir)/zapfdingbats.txt
@@ -306,7 +362,7 @@ TARG = $(OUT).h
 TSRC = $(DIR).c
 TOOL = ./$(DIR)$(EXEEXT_FOR_BUILD)
 EXTRA_DIST = $(TARG) $(TMPL) $(TSRC) $(DIST)
-INCLUDES = \
+AM_CPPFLAGS = \
           -I$(builddir) \
           -I$(srcdir) \
           -I$(top_builddir)/src \
@@ -363,26 +419,15 @@ mostlyclean-libtool:
 clean-libtool:
        -rm -rf .libs _libs
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -394,15 +439,11 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -411,9 +452,10 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
 
-cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
        case "$(srcdir)" in \
          [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
          *) sdir=$(subdir)/$(srcdir) ;; \
@@ -566,22 +608,22 @@ uninstall-am:
 
 .MAKE: all check install install-am install-strip
 
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
-       clean-libtool cscopelist ctags distclean distclean-generic \
-       distclean-libtool distclean-tags distdir dvi dvi-am html \
-       html-am info info-am install install-am install-data \
-       install-data-am install-dvi install-dvi-am install-exec \
-       install-exec-am install-html install-html-am install-info \
-       install-info-am install-man install-pdf install-pdf-am \
-       install-ps install-ps-am install-strip installcheck \
-       installcheck-am installdirs maintainer-clean \
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+       clean-libtool cscopelist-am ctags ctags-am distclean \
+       distclean-generic distclean-libtool distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-dvi install-dvi-am \
+       install-exec install-exec-am install-html install-html-am \
+       install-info install-info-am install-man install-pdf \
+       install-pdf-am install-ps install-ps-am install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
        maintainer-clean-generic mostlyclean mostlyclean-generic \
-       mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
+       mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
        uninstall-am
 
 
 $(TOOL): $(TSRC) $(ALIAS_FILES)
-       $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(INCLUDES)
+       $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(AM_CPPFLAGS)
 
 $(TARG): $(TMPL) $(TSRC) $(DEPS)
        $(AM_V_GEN) $(MAKE) $(TOOL) && \
index 8402781..078490a 100644 (file)
@@ -233,7 +233,7 @@ dump (FcGlyphName * const *table, const char *name)
 int
 main (int argc FC_UNUSED, char **argv)
 {
-    char       *files[MAX_GLYPHFILE];
+    char       *files[MAX_GLYPHFILE + 1];
     char       line[1024];
     FILE       *f;
     int                i;
index 2340de4..6f76ee0 100644 (file)
@@ -263,6 +263,7 @@ ORTH = \
        pap_an.orth \
        pap_aw.orth \
        qu.orth \
+       quz.orth \
        rn.orth \
        rw.orth \
        sc.orth \
index 8c1963c..c417fca 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # Google Author(s): Behdad Esfahbod
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -100,16 +128,17 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
-       $(srcdir)/Makefile.in $(top_srcdir)/Tools.mk
+DIST_COMMON = $(top_srcdir)/Tools.mk $(srcdir)/Makefile.in \
+       $(srcdir)/Makefile.am $(noinst_HEADERS) README
 subdir = fc-lang
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
@@ -136,6 +165,23 @@ am__can_run_installinfo = \
     *) (install-info --version) >/dev/null 2>&1;; \
   esac
 HEADERS = $(noinst_HEADERS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -179,6 +225,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -220,12 +268,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -249,7 +304,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -257,7 +311,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = @configdir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -282,19 +335,22 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = @templatedir@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = @xmldir@
 TAG = lang
 DEPS = $(ORTH)
 ARGS = -d $(srcdir) $(ORTH)
@@ -306,7 +362,7 @@ TARG = $(OUT).h
 TSRC = $(DIR).c
 TOOL = ./$(DIR)$(EXEEXT_FOR_BUILD)
 EXTRA_DIST = $(TARG) $(TMPL) $(TSRC) $(DIST)
-INCLUDES = \
+AM_CPPFLAGS = \
           -I$(builddir) \
           -I$(srcdir) \
           -I$(top_builddir)/src \
@@ -555,6 +611,7 @@ ORTH = \
        pap_an.orth \
        pap_aw.orth \
        qu.orth \
+       quz.orth \
        rn.orth \
        rw.orth \
        sc.orth \
@@ -615,26 +672,15 @@ mostlyclean-libtool:
 clean-libtool:
        -rm -rf .libs _libs
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -646,15 +692,11 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -663,9 +705,10 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
 
-cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
        case "$(srcdir)" in \
          [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
          *) sdir=$(subdir)/$(srcdir) ;; \
@@ -818,22 +861,22 @@ uninstall-am:
 
 .MAKE: all check install install-am install-strip
 
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
-       clean-libtool cscopelist ctags distclean distclean-generic \
-       distclean-libtool distclean-tags distdir dvi dvi-am html \
-       html-am info info-am install install-am install-data \
-       install-data-am install-dvi install-dvi-am install-exec \
-       install-exec-am install-html install-html-am install-info \
-       install-info-am install-man install-pdf install-pdf-am \
-       install-ps install-ps-am install-strip installcheck \
-       installcheck-am installdirs maintainer-clean \
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+       clean-libtool cscopelist-am ctags ctags-am distclean \
+       distclean-generic distclean-libtool distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-dvi install-dvi-am \
+       install-exec install-exec-am install-html install-html-am \
+       install-info install-info-am install-man install-pdf \
+       install-pdf-am install-ps install-ps-am install-strip \
+       installcheck installcheck-am installdirs maintainer-clean \
        maintainer-clean-generic mostlyclean mostlyclean-generic \
-       mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
+       mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
        uninstall-am
 
 
 $(TOOL): $(TSRC) $(ALIAS_FILES)
-       $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(INCLUDES)
+       $(AM_V_GEN) $(CC_FOR_BUILD) -o $(TOOL) $< $(AM_CPPFLAGS)
 
 $(TARG): $(TMPL) $(TSRC) $(DEPS)
        $(AM_V_GEN) $(MAKE) $(TOOL) && \
diff --git a/fc-lang/README b/fc-lang/README
new file mode 100644 (file)
index 0000000..4aef7d1
--- /dev/null
@@ -0,0 +1,28 @@
+Requirements for adding new orth file:
+
+* we are following up to the locale name, 2 or 3 letter code
+  in ISO 639 and ISO 3166-1 alpha-2 code to determine a
+  filename. if it's not yet available, in advance, you
+  should get it fixed in glibc or so.
+
+* Please add a reference URL (written in English as far as
+  possible) into the orth file that explains the code
+  coverage for the certain language. this would helps to
+  review if it has enough coverage.
+
+* no need to add all of the codepoints for the certain
+  language. good enough if it covers most frequently used
+  codepoints in it.
+
+To update existing orth files:
+
+* Please make sure how the changes affects to the existing
+  fonts and no regressions except it is expected behavior.
+
+* Please add any reference URL in bugzilla or any
+  explanation why it needs to be added/removed and also why
+  current orth file doesn't work.
+
+* Please provide a test case what fonts are supposed to be
+  accepted against the change and what fonts aren't.
+
index 0f4217f..38fc697 100644 (file)
@@ -254,7 +254,7 @@ static int compare (const void *a, const void *b)
 int
 main (int argc FC_UNUSED, char **argv)
 {
-    static Entry       entries[MAX_LANG];
+    static Entry       entries[MAX_LANG + 1];
     static FcCharSet   *sets[MAX_LANG];
     static int         duplicate[MAX_LANG];
     static int         country[MAX_LANG];
index 14567db..9a49913 100644 (file)
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-/* total size: 909 unique leaves: 617 */
+/* total size: 1087 unique leaves: 702 */
 
-#define LEAF0       (243 * sizeof (FcLangCharSet))
-#define OFF0        (LEAF0 + 617 * sizeof (FcCharLeaf))
-#define NUM0        (OFF0 + 667 * sizeof (uintptr_t))
+#define LEAF0       (244 * sizeof (FcLangCharSet))
+#define OFF0        (LEAF0 + 702 * sizeof (FcCharLeaf))
+#define NUM0        (OFF0 + 755 * sizeof (uintptr_t))
 #define SET(n)      (n * sizeof (FcLangCharSet) + offsetof (FcLangCharSet, charset))
 #define OFF(s,o)    (OFF0 + o * sizeof (uintptr_t) - SET(s))
 #define NUM(s,n)    (NUM0 + n * sizeof (FcChar16) - SET(s))
 #define fcLangCharSetIndicesInv (fcLangData.langIndicesInv)
 
 static const struct {
-    FcLangCharSet  langCharSets[243];
-    FcCharLeaf     leaves[617];
-    uintptr_t      leaf_offsets[667];
-    FcChar16       numbers[667];
-    FcChar8        langIndices[243];
-    FcChar8        langIndicesInv[243];
+    FcLangCharSet  langCharSets[244];
+    FcCharLeaf     leaves[702];
+    uintptr_t      leaf_offsets[755];
+    FcChar16       numbers[755];
+    FcChar8        langIndices[244];
+    FcChar8        langIndicesInv[244];
 } fcLangData = {
 {
     { "aa",  { FC_REF_CONSTANT, 1, OFF(0,0), NUM(0,0) } }, /* 0 */
@@ -212,81 +212,82 @@ static const struct {
     { "ps-pk",  { FC_REF_CONSTANT, 1, OFF(165,343), NUM(165,343) } }, /* 165 */
     { "pt",  { FC_REF_CONSTANT, 1, OFF(166,344), NUM(166,344) } }, /* 166 */
     { "qu",  { FC_REF_CONSTANT, 2, OFF(167,345), NUM(167,345) } }, /* 167 */
-    { "rm",  { FC_REF_CONSTANT, 1, OFF(168,347), NUM(168,347) } }, /* 168 */
-    { "rn",  { FC_REF_CONSTANT, 1, OFF(169,87), NUM(169,87) } }, /* 169 */
-    { "ro",  { FC_REF_CONSTANT, 3, OFF(170,348), NUM(170,348) } }, /* 170 */
-    { "ru",  { FC_REF_CONSTANT, 1, OFF(171,279), NUM(171,279) } }, /* 171 */
-    { "rw",  { FC_REF_CONSTANT, 1, OFF(172,87), NUM(172,87) } }, /* 172 */
-    { "sa",  { FC_REF_CONSTANT, 1, OFF(173,30), NUM(173,30) } }, /* 173 */
-    { "sah",  { FC_REF_CONSTANT, 1, OFF(174,351), NUM(174,351) } }, /* 174 */
-    { "sat",  { FC_REF_CONSTANT, 1, OFF(175,352), NUM(175,352) } }, /* 175 */
-    { "sc",  { FC_REF_CONSTANT, 1, OFF(176,353), NUM(176,353) } }, /* 176 */
-    { "sco",  { FC_REF_CONSTANT, 3, OFF(177,354), NUM(177,354) } }, /* 177 */
-    { "sd",  { FC_REF_CONSTANT, 1, OFF(178,357), NUM(178,357) } }, /* 178 */
-    { "se",  { FC_REF_CONSTANT, 2, OFF(179,358), NUM(179,358) } }, /* 179 */
-    { "sel",  { FC_REF_CONSTANT, 1, OFF(180,279), NUM(180,279) } }, /* 180 */
-    { "sg",  { FC_REF_CONSTANT, 1, OFF(181,360), NUM(181,360) } }, /* 181 */
-    { "sh",  { FC_REF_CONSTANT, 3, OFF(182,361), NUM(182,361) } }, /* 182 */
-    { "shs",  { FC_REF_CONSTANT, 2, OFF(183,364), NUM(183,364) } }, /* 183 */
-    { "si",  { FC_REF_CONSTANT, 1, OFF(184,366), NUM(184,366) } }, /* 184 */
-    { "sid",  { FC_REF_CONSTANT, 2, OFF(185,367), NUM(185,367) } }, /* 185 */
-    { "sk",  { FC_REF_CONSTANT, 2, OFF(186,369), NUM(186,369) } }, /* 186 */
-    { "sl",  { FC_REF_CONSTANT, 2, OFF(187,42), NUM(187,42) } }, /* 187 */
-    { "sm",  { FC_REF_CONSTANT, 2, OFF(188,371), NUM(188,371) } }, /* 188 */
-    { "sma",  { FC_REF_CONSTANT, 1, OFF(189,373), NUM(189,373) } }, /* 189 */
-    { "smj",  { FC_REF_CONSTANT, 1, OFF(190,374), NUM(190,374) } }, /* 190 */
-    { "smn",  { FC_REF_CONSTANT, 2, OFF(191,375), NUM(191,375) } }, /* 191 */
-    { "sms",  { FC_REF_CONSTANT, 3, OFF(192,377), NUM(192,377) } }, /* 192 */
-    { "sn",  { FC_REF_CONSTANT, 1, OFF(193,87), NUM(193,87) } }, /* 193 */
-    { "so",  { FC_REF_CONSTANT, 1, OFF(194,87), NUM(194,87) } }, /* 194 */
-    { "sq",  { FC_REF_CONSTANT, 1, OFF(195,380), NUM(195,380) } }, /* 195 */
-    { "sr",  { FC_REF_CONSTANT, 1, OFF(196,381), NUM(196,381) } }, /* 196 */
-    { "ss",  { FC_REF_CONSTANT, 1, OFF(197,87), NUM(197,87) } }, /* 197 */
-    { "st",  { FC_REF_CONSTANT, 1, OFF(198,87), NUM(198,87) } }, /* 198 */
-    { "su",  { FC_REF_CONSTANT, 1, OFF(199,118), NUM(199,118) } }, /* 199 */
-    { "sv",  { FC_REF_CONSTANT, 1, OFF(200,382), NUM(200,382) } }, /* 200 */
-    { "sw",  { FC_REF_CONSTANT, 1, OFF(201,87), NUM(201,87) } }, /* 201 */
-    { "syr",  { FC_REF_CONSTANT, 1, OFF(202,383), NUM(202,383) } }, /* 202 */
-    { "ta",  { FC_REF_CONSTANT, 1, OFF(203,384), NUM(203,384) } }, /* 203 */
-    { "te",  { FC_REF_CONSTANT, 1, OFF(204,385), NUM(204,385) } }, /* 204 */
-    { "tg",  { FC_REF_CONSTANT, 1, OFF(205,386), NUM(205,386) } }, /* 205 */
-    { "th",  { FC_REF_CONSTANT, 1, OFF(206,387), NUM(206,387) } }, /* 206 */
-    { "ti-er",  { FC_REF_CONSTANT, 2, OFF(207,45), NUM(207,45) } }, /* 207 */
-    { "ti-et",  { FC_REF_CONSTANT, 2, OFF(208,367), NUM(208,367) } }, /* 208 */
-    { "tig",  { FC_REF_CONSTANT, 2, OFF(209,388), NUM(209,388) } }, /* 209 */
-    { "tk",  { FC_REF_CONSTANT, 2, OFF(210,390), NUM(210,390) } }, /* 210 */
-    { "tl",  { FC_REF_CONSTANT, 1, OFF(211,86), NUM(211,86) } }, /* 211 */
-    { "tn",  { FC_REF_CONSTANT, 2, OFF(212,326), NUM(212,326) } }, /* 212 */
-    { "to",  { FC_REF_CONSTANT, 2, OFF(213,371), NUM(213,371) } }, /* 213 */
-    { "tr",  { FC_REF_CONSTANT, 2, OFF(214,392), NUM(214,392) } }, /* 214 */
-    { "ts",  { FC_REF_CONSTANT, 1, OFF(215,87), NUM(215,87) } }, /* 215 */
-    { "tt",  { FC_REF_CONSTANT, 1, OFF(216,394), NUM(216,394) } }, /* 216 */
-    { "tw",  { FC_REF_CONSTANT, 5, OFF(217,4), NUM(217,4) } }, /* 217 */
-    { "ty",  { FC_REF_CONSTANT, 3, OFF(218,395), NUM(218,395) } }, /* 218 */
-    { "tyv",  { FC_REF_CONSTANT, 1, OFF(219,284), NUM(219,284) } }, /* 219 */
-    { "ug",  { FC_REF_CONSTANT, 1, OFF(220,398), NUM(220,398) } }, /* 220 */
-    { "uk",  { FC_REF_CONSTANT, 1, OFF(221,399), NUM(221,399) } }, /* 221 */
-    { "ur",  { FC_REF_CONSTANT, 1, OFF(222,287), NUM(222,287) } }, /* 222 */
-    { "uz",  { FC_REF_CONSTANT, 1, OFF(223,87), NUM(223,87) } }, /* 223 */
-    { "ve",  { FC_REF_CONSTANT, 2, OFF(224,400), NUM(224,400) } }, /* 224 */
-    { "vi",  { FC_REF_CONSTANT, 4, OFF(225,402), NUM(225,402) } }, /* 225 */
-    { "vo",  { FC_REF_CONSTANT, 1, OFF(226,406), NUM(226,406) } }, /* 226 */
-    { "vot",  { FC_REF_CONSTANT, 2, OFF(227,407), NUM(227,407) } }, /* 227 */
-    { "wa",  { FC_REF_CONSTANT, 1, OFF(228,409), NUM(228,409) } }, /* 228 */
-    { "wal",  { FC_REF_CONSTANT, 2, OFF(229,367), NUM(229,367) } }, /* 229 */
-    { "wen",  { FC_REF_CONSTANT, 2, OFF(230,410), NUM(230,410) } }, /* 230 */
-    { "wo",  { FC_REF_CONSTANT, 2, OFF(231,412), NUM(231,412) } }, /* 231 */
-    { "xh",  { FC_REF_CONSTANT, 1, OFF(232,87), NUM(232,87) } }, /* 232 */
-    { "yap",  { FC_REF_CONSTANT, 1, OFF(233,414), NUM(233,414) } }, /* 233 */
-    { "yi",  { FC_REF_CONSTANT, 1, OFF(234,108), NUM(234,108) } }, /* 234 */
-    { "yo",  { FC_REF_CONSTANT, 4, OFF(235,415), NUM(235,415) } }, /* 235 */
-    { "za",  { FC_REF_CONSTANT, 1, OFF(236,87), NUM(236,87) } }, /* 236 */
-    { "zh-cn",  { FC_REF_CONSTANT, 82, OFF(237,419), NUM(237,419) } }, /* 237 */
-    { "zh-hk",  { FC_REF_CONSTANT, 83, OFF(238,501), NUM(238,501) } }, /* 238 */
-    { "zh-mo",  { FC_REF_CONSTANT, 83, OFF(239,501), NUM(239,501) } }, /* 239 */
-    { "zh-sg",  { FC_REF_CONSTANT, 82, OFF(240,419), NUM(240,419) } }, /* 240 */
-    { "zh-tw",  { FC_REF_CONSTANT, 83, OFF(241,584), NUM(241,584) } }, /* 241 */
-    { "zu",  { FC_REF_CONSTANT, 1, OFF(242,87), NUM(242,87) } }, /* 242 */
+    { "quz",  { FC_REF_CONSTANT, 2, OFF(168,345), NUM(168,345) } }, /* 168 */
+    { "rm",  { FC_REF_CONSTANT, 1, OFF(169,347), NUM(169,347) } }, /* 169 */
+    { "rn",  { FC_REF_CONSTANT, 1, OFF(170,87), NUM(170,87) } }, /* 170 */
+    { "ro",  { FC_REF_CONSTANT, 3, OFF(171,348), NUM(171,348) } }, /* 171 */
+    { "ru",  { FC_REF_CONSTANT, 1, OFF(172,279), NUM(172,279) } }, /* 172 */
+    { "rw",  { FC_REF_CONSTANT, 1, OFF(173,87), NUM(173,87) } }, /* 173 */
+    { "sa",  { FC_REF_CONSTANT, 1, OFF(174,30), NUM(174,30) } }, /* 174 */
+    { "sah",  { FC_REF_CONSTANT, 1, OFF(175,351), NUM(175,351) } }, /* 175 */
+    { "sat",  { FC_REF_CONSTANT, 1, OFF(176,352), NUM(176,352) } }, /* 176 */
+    { "sc",  { FC_REF_CONSTANT, 1, OFF(177,353), NUM(177,353) } }, /* 177 */
+    { "sco",  { FC_REF_CONSTANT, 3, OFF(178,354), NUM(178,354) } }, /* 178 */
+    { "sd",  { FC_REF_CONSTANT, 1, OFF(179,357), NUM(179,357) } }, /* 179 */
+    { "se",  { FC_REF_CONSTANT, 2, OFF(180,358), NUM(180,358) } }, /* 180 */
+    { "sel",  { FC_REF_CONSTANT, 1, OFF(181,279), NUM(181,279) } }, /* 181 */
+    { "sg",  { FC_REF_CONSTANT, 1, OFF(182,360), NUM(182,360) } }, /* 182 */
+    { "sh",  { FC_REF_CONSTANT, 3, OFF(183,361), NUM(183,361) } }, /* 183 */
+    { "shs",  { FC_REF_CONSTANT, 2, OFF(184,364), NUM(184,364) } }, /* 184 */
+    { "si",  { FC_REF_CONSTANT, 1, OFF(185,366), NUM(185,366) } }, /* 185 */
+    { "sid",  { FC_REF_CONSTANT, 2, OFF(186,367), NUM(186,367) } }, /* 186 */
+    { "sk",  { FC_REF_CONSTANT, 2, OFF(187,369), NUM(187,369) } }, /* 187 */
+    { "sl",  { FC_REF_CONSTANT, 2, OFF(188,42), NUM(188,42) } }, /* 188 */
+    { "sm",  { FC_REF_CONSTANT, 2, OFF(189,371), NUM(189,371) } }, /* 189 */
+    { "sma",  { FC_REF_CONSTANT, 1, OFF(190,373), NUM(190,373) } }, /* 190 */
+    { "smj",  { FC_REF_CONSTANT, 1, OFF(191,374), NUM(191,374) } }, /* 191 */
+    { "smn",  { FC_REF_CONSTANT, 2, OFF(192,375), NUM(192,375) } }, /* 192 */
+    { "sms",  { FC_REF_CONSTANT, 3, OFF(193,377), NUM(193,377) } }, /* 193 */
+    { "sn",  { FC_REF_CONSTANT, 1, OFF(194,87), NUM(194,87) } }, /* 194 */
+    { "so",  { FC_REF_CONSTANT, 1, OFF(195,87), NUM(195,87) } }, /* 195 */
+    { "sq",  { FC_REF_CONSTANT, 1, OFF(196,380), NUM(196,380) } }, /* 196 */
+    { "sr",  { FC_REF_CONSTANT, 1, OFF(197,381), NUM(197,381) } }, /* 197 */
+    { "ss",  { FC_REF_CONSTANT, 1, OFF(198,87), NUM(198,87) } }, /* 198 */
+    { "st",  { FC_REF_CONSTANT, 1, OFF(199,87), NUM(199,87) } }, /* 199 */
+    { "su",  { FC_REF_CONSTANT, 1, OFF(200,118), NUM(200,118) } }, /* 200 */
+    { "sv",  { FC_REF_CONSTANT, 1, OFF(201,382), NUM(201,382) } }, /* 201 */
+    { "sw",  { FC_REF_CONSTANT, 1, OFF(202,87), NUM(202,87) } }, /* 202 */
+    { "syr",  { FC_REF_CONSTANT, 1, OFF(203,383), NUM(203,383) } }, /* 203 */
+    { "ta",  { FC_REF_CONSTANT, 1, OFF(204,384), NUM(204,384) } }, /* 204 */
+    { "te",  { FC_REF_CONSTANT, 1, OFF(205,385), NUM(205,385) } }, /* 205 */
+    { "tg",  { FC_REF_CONSTANT, 1, OFF(206,386), NUM(206,386) } }, /* 206 */
+    { "th",  { FC_REF_CONSTANT, 1, OFF(207,387), NUM(207,387) } }, /* 207 */
+    { "ti-er",  { FC_REF_CONSTANT, 2, OFF(208,45), NUM(208,45) } }, /* 208 */
+    { "ti-et",  { FC_REF_CONSTANT, 2, OFF(209,367), NUM(209,367) } }, /* 209 */
+    { "tig",  { FC_REF_CONSTANT, 2, OFF(210,388), NUM(210,388) } }, /* 210 */
+    { "tk",  { FC_REF_CONSTANT, 2, OFF(211,390), NUM(211,390) } }, /* 211 */
+    { "tl",  { FC_REF_CONSTANT, 1, OFF(212,86), NUM(212,86) } }, /* 212 */
+    { "tn",  { FC_REF_CONSTANT, 2, OFF(213,326), NUM(213,326) } }, /* 213 */
+    { "to",  { FC_REF_CONSTANT, 2, OFF(214,371), NUM(214,371) } }, /* 214 */
+    { "tr",  { FC_REF_CONSTANT, 2, OFF(215,392), NUM(215,392) } }, /* 215 */
+    { "ts",  { FC_REF_CONSTANT, 1, OFF(216,87), NUM(216,87) } }, /* 216 */
+    { "tt",  { FC_REF_CONSTANT, 1, OFF(217,394), NUM(217,394) } }, /* 217 */
+    { "tw",  { FC_REF_CONSTANT, 5, OFF(218,4), NUM(218,4) } }, /* 218 */
+    { "ty",  { FC_REF_CONSTANT, 3, OFF(219,395), NUM(219,395) } }, /* 219 */
+    { "tyv",  { FC_REF_CONSTANT, 1, OFF(220,284), NUM(220,284) } }, /* 220 */
+    { "ug",  { FC_REF_CONSTANT, 1, OFF(221,398), NUM(221,398) } }, /* 221 */
+    { "uk",  { FC_REF_CONSTANT, 1, OFF(222,399), NUM(222,399) } }, /* 222 */
+    { "ur",  { FC_REF_CONSTANT, 1, OFF(223,287), NUM(223,287) } }, /* 223 */
+    { "uz",  { FC_REF_CONSTANT, 1, OFF(224,87), NUM(224,87) } }, /* 224 */
+    { "ve",  { FC_REF_CONSTANT, 2, OFF(225,400), NUM(225,400) } }, /* 225 */
+    { "vi",  { FC_REF_CONSTANT, 4, OFF(226,402), NUM(226,402) } }, /* 226 */
+    { "vo",  { FC_REF_CONSTANT, 1, OFF(227,406), NUM(227,406) } }, /* 227 */
+    { "vot",  { FC_REF_CONSTANT, 2, OFF(228,407), NUM(228,407) } }, /* 228 */
+    { "wa",  { FC_REF_CONSTANT, 1, OFF(229,409), NUM(229,409) } }, /* 229 */
+    { "wal",  { FC_REF_CONSTANT, 2, OFF(230,367), NUM(230,367) } }, /* 230 */
+    { "wen",  { FC_REF_CONSTANT, 2, OFF(231,410), NUM(231,410) } }, /* 231 */
+    { "wo",  { FC_REF_CONSTANT, 2, OFF(232,412), NUM(232,412) } }, /* 232 */
+    { "xh",  { FC_REF_CONSTANT, 1, OFF(233,87), NUM(233,87) } }, /* 233 */
+    { "yap",  { FC_REF_CONSTANT, 1, OFF(234,414), NUM(234,414) } }, /* 234 */
+    { "yi",  { FC_REF_CONSTANT, 1, OFF(235,108), NUM(235,108) } }, /* 235 */
+    { "yo",  { FC_REF_CONSTANT, 4, OFF(236,415), NUM(236,415) } }, /* 236 */
+    { "za",  { FC_REF_CONSTANT, 1, OFF(237,87), NUM(237,87) } }, /* 237 */
+    { "zh-cn",  { FC_REF_CONSTANT, 82, OFF(238,419), NUM(238,419) } }, /* 238 */
+    { "zh-hk",  { FC_REF_CONSTANT, 171, OFF(239,501), NUM(239,501) } }, /* 239 */
+    { "zh-mo",  { FC_REF_CONSTANT, 171, OFF(240,501), NUM(240,501) } }, /* 240 */
+    { "zh-sg",  { FC_REF_CONSTANT, 82, OFF(241,419), NUM(241,419) } }, /* 241 */
+    { "zh-tw",  { FC_REF_CONSTANT, 83, OFF(242,672), NUM(242,672) } }, /* 242 */
+    { "zu",  { FC_REF_CONSTANT, 1, OFF(243,87), NUM(243,87) } }, /* 243 */
 },
 {
     { { /* 0 */
@@ -758,336 +759,336 @@ static const struct {
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 117 */
-    0x000000e7, 0x00000000, 0xfffffffe, 0xffffffff,
+    0x000000a7, 0x00000000, 0xfffffffe, 0xffffffff,
     0x780fffff, 0xfffffffe, 0xffffffff, 0x787fffff,
     } },
     { { /* 118 */
-    0x43f36f8b, 0x9b462442, 0xe3e0e82c, 0x400a0004,
-    0xdb365f65, 0x04497977, 0xe3f0ecd7, 0x08c56038,
+    0x03506f8b, 0x1b042042, 0x62808020, 0x400a0000,
+    0x10341b41, 0x04003812, 0x03608c02, 0x08454038,
     } },
     { { /* 119 */
-    0x3403e602, 0x35518000, 0x7eabe0c8, 0x98698200,
-    0x2942a948, 0x8060e803, 0xad93441c, 0x4568c03a,
+    0x2403c002, 0x15108000, 0x1229e040, 0x80280000,
+    0x28002800, 0x8060c002, 0x2080040c, 0x05284002,
     } },
     { { /* 120 */
-    0x8656aa60, 0x02403f7a, 0x14618388, 0x21741020,
-    0x07022021, 0x40bc3000, 0x4462a624, 0x0a2060a8,
+    0x82042a00, 0x02000818, 0x10008200, 0x20700020,
+    0x03022000, 0x40a41000, 0x0420a020, 0x00000080,
     } },
     { { /* 121 */
-    0x85740217, 0x9c840402, 0x14157bfb, 0x11e27f24,
-    0x02efb665, 0x20ff1f75, 0x28403a70, 0x676326c3,
+    0x80040011, 0x00000400, 0x04012b78, 0x11a23920,
+    0x02842460, 0x00c01021, 0x20002050, 0x07400042,
     } },
     { { /* 122 */
-    0x20924dd9, 0x0fc946b0, 0x4850bc98, 0xa03f8638,
-    0x88162388, 0x52323e09, 0xe3a422aa, 0xc72c00dd,
+    0x208205c9, 0x0fc10230, 0x08402480, 0x00258018,
+    0x88000080, 0x42120609, 0xa32002a8, 0x40040094,
     } },
     { { /* 123 */
-    0x26e1a166, 0x8f0a840b, 0x559e27eb, 0x89bbc241,
-    0x85400014, 0x08496361, 0x8ad07f0c, 0x05cfff3e,
+    0x00c00024, 0x8e000001, 0x059e058a, 0x013b0001,
+    0x85000010, 0x08080000, 0x02d07d04, 0x018d9838,
     } },
     { { /* 124 */
-    0xa803ff1a, 0x7b407a41, 0x80024745, 0x38eb0500,
-    0x0005d851, 0x710c9934, 0x01000397, 0x24046366,
+    0x8803f310, 0x03000840, 0x00000704, 0x30080500,
+    0x00001000, 0x20040000, 0x00000003, 0x04040002,
     } },
     { { /* 125 */
-    0x005180d0, 0x430ac000, 0x30c89071, 0x58000008,
-    0xf7000e99, 0x00415f80, 0x941000b0, 0x62800018,
+    0x000100d0, 0x40028000, 0x00088040, 0x00000000,
+    0x34000210, 0x00400e00, 0x00000020, 0x00000008,
     } },
     { { /* 126 */
-    0x09d00240, 0x01568200, 0x08015004, 0x05101d10,
-    0x001084c1, 0x10504025, 0x4d8a410f, 0xa60d4009,
+    0x00000040, 0x00060000, 0x00000000, 0x00100100,
+    0x00000080, 0x00000000, 0x4c000000, 0x240d0009,
     } },
     { { /* 127 */
-    0x914cab19, 0x098121c0, 0x0003c485, 0x80000652,
-    0x00080b04, 0x0009041d, 0x905c4849, 0x16900009,
+    0x80048000, 0x00010180, 0x00020484, 0x00000400,
+    0x00000804, 0x00000008, 0x80004800, 0x16800000,
     } },
     { { /* 128 */
-    0x22200c65, 0x24338412, 0x47960c03, 0x42250a04,
-    0x90880028, 0x4f084900, 0xd3aa14a2, 0x3e87d830,
+    0x00200065, 0x00120410, 0x44920403, 0x40000200,
+    0x10880008, 0x40080100, 0x00001482, 0x00074800,
     } },
     { { /* 129 */
-    0x1f618604, 0x41867ea4, 0x05b3c390, 0x211857a5,
-    0x2a48241e, 0x4a041128, 0x161b0a40, 0x88400d60,
+    0x14608200, 0x00024e84, 0x00128380, 0x20184520,
+    0x0240041c, 0x0a001120, 0x00180a00, 0x88000800,
     } },
     { { /* 130 */
-    0x9502020a, 0x10608221, 0x04000243, 0x80001444,
-    0x0c040000, 0x70000000, 0x00c11a06, 0x0c00024a,
+    0x01000002, 0x00008001, 0x04000040, 0x80000040,
+    0x08040000, 0x00000000, 0x00001202, 0x00000002,
     } },
     { { /* 131 */
-    0x00401a00, 0x40451404, 0xbdb30029, 0x052b0a78,
-    0xbfa0bba9, 0x8379407c, 0xe81d12fc, 0xc5694bf6,
+    0x00000000, 0x00000004, 0x21910000, 0x00000858,
+    0xbf8013a0, 0x8279401c, 0xa8041054, 0xc5004282,
     } },
     { { /* 132 */
-    0x044aeff6, 0xff022115, 0x402bed63, 0x0242d033,
-    0x00131000, 0x59ca1b02, 0x020000a0, 0x2c41a703,
+    0x0402ce56, 0xfc020000, 0x40200d21, 0x00028030,
+    0x00010000, 0x01081202, 0x00000000, 0x00410003,
     } },
     { { /* 133 */
-    0x8ff24880, 0x00000204, 0x10055800, 0x00489200,
-    0x20011894, 0x34805004, 0x684c3200, 0x68be49ea,
+    0x00404080, 0x00000200, 0x00010000, 0x00000000,
+    0x00000000, 0x00000000, 0x60000000, 0x480241ea,
     } },
     { { /* 134 */
-    0x2e42184c, 0x21c9a820, 0x80b050b9, 0xff7c001e,
-    0x14e0849a, 0x01e028c1, 0xac49870e, 0xdddb130f,
+    0x2000104c, 0x2109a820, 0x00200020, 0x7b1c0008,
+    0x10a0840a, 0x01c028c0, 0x00000608, 0x04c00000,
     } },
     { { /* 135 */
-    0x89fbbe1a, 0x51a2a2e0, 0x32ca5502, 0x928b3e46,
-    0x438f1dbf, 0x32186703, 0x33c03028, 0xa9230811,
+    0x80398412, 0x40a200e0, 0x02080000, 0x12030a04,
+    0x008d1833, 0x02184602, 0x13803028, 0x00200801,
     } },
     { { /* 136 */
-    0x3a65c000, 0x04028fe3, 0x86252c4e, 0x00a1bf3d,
-    0x8cd43a1a, 0x317c06c9, 0x950a00e0, 0x0edb018b,
+    0x20440000, 0x000005a1, 0x00050800, 0x0020a328,
+    0x80100000, 0x10040649, 0x10020020, 0x00090180,
     } },
     { { /* 137 */
-    0x8c20e34b, 0xf0101182, 0xa7287d94, 0x40fbc9ac,
-    0x06534484, 0x44445a90, 0x00013fc8, 0xf5d40048,
+    0x8c008202, 0x00000000, 0x00205910, 0x0041410c,
+    0x00004004, 0x40441290, 0x00010080, 0x01040000,
     } },
     { { /* 138 */
-    0xec577701, 0x891dc442, 0x49286b83, 0xd2424109,
-    0x59fe061d, 0x3a221800, 0x3b9fb7e4, 0xc0eaf003,
+    0x04070000, 0x89108040, 0x00282a81, 0x82420000,
+    0x51a20411, 0x32220800, 0x2b0d2220, 0x40c83003,
     } },
     { { /* 139 */
-    0x82021386, 0xe4008980, 0x10a1b200, 0x0cc44b80,
-    0x8944d309, 0x48341faf, 0x0c458259, 0x0450420a,
+    0x82020082, 0x80008900, 0x10a00200, 0x08004100,
+    0x09041108, 0x000405a6, 0x0c018000, 0x04104002,
     } },
     { { /* 140 */
-    0x10c8a040, 0x44503140, 0x01004004, 0x05408280,
-    0x442c0108, 0x1a056a30, 0x051420a6, 0x645690cf,
+    0x00002000, 0x44003000, 0x01000004, 0x00008200,
+    0x00000008, 0x00044010, 0x00002002, 0x00001040,
     } },
     { { /* 141 */
-    0x31000021, 0xcbf09c18, 0x63e2a120, 0x01b5104c,
-    0x9a83538c, 0x3281b8b2, 0x0a84987a, 0x0c0233e7,
+    0x00000000, 0xca008000, 0x02828020, 0x00b1100c,
+    0x12824280, 0x22013030, 0x00808820, 0x040013e4,
     } },
     { { /* 142 */
-    0x9018d4cc, 0x9070a1a1, 0xe0048a1e, 0x0451c3d4,
-    0x21c2439a, 0x53104844, 0x36400292, 0xf3bd0241,
+    0x801840c0, 0x1000a1a1, 0x00000004, 0x0050c200,
+    0x00c20082, 0x00104840, 0x10400080, 0xa3140000,
     } },
     { { /* 143 */
-    0xe8f0ab09, 0xa5d27dc0, 0xd24bc242, 0xd0afa43f,
-    0x34a11aa0, 0x03d88247, 0x651bc452, 0xc83ad294,
+    0xa8a02301, 0x24123d00, 0x80030200, 0xc0028022,
+    0x34a10000, 0x00408005, 0x00190010, 0x882a0000,
     } },
     { { /* 144 */
-    0x40c8001c, 0x33140e06, 0xb21b614f, 0xc0d00088,
-    0xa898a02a, 0x166ba1c5, 0x85b42e50, 0x0604c08b,
+    0x00080018, 0x33000402, 0x9002010a, 0x00000000,
+    0x00800020, 0x00010100, 0x84040810, 0x04004000,
     } },
     { { /* 145 */
-    0x1e04f933, 0xa251056e, 0x76380400, 0x73b8ec07,
-    0x18324406, 0xc8164081, 0x63097c8a, 0xaa042980,
+    0x10006020, 0x00000000, 0x00000000, 0x30a02000,
+    0x00000004, 0x00000000, 0x01000800, 0x20000000,
     } },
     { { /* 146 */
-    0xca9c1c24, 0x27604e0e, 0x83000990, 0x81040046,
-    0x10816011, 0x0908540d, 0xcc0a000e, 0x0c000500,
+    0x02000000, 0x02000602, 0x80000800, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 147 */
-    0xa0440430, 0x6784008b, 0x8a195288, 0x8b18865e,
-    0x41602e59, 0x9cbe8c10, 0x891c6861, 0x00089800,
+    0x00000010, 0x44040083, 0x00081000, 0x0818824c,
+    0x00400e00, 0x8c300000, 0x08146001, 0x00000000,
     } },
     { { /* 148 */
-    0x089a8100, 0x41900018, 0xe4a14007, 0x640d0505,
-    0x0e4d310e, 0xff0a4806, 0x2aa81632, 0x000b852e,
+    0x00828000, 0x41900000, 0x84804006, 0x24010001,
+    0x02400108, 0x9b080006, 0x00201602, 0x0009012e,
     } },
     { { /* 149 */
-    0xca841800, 0x696c0e20, 0x16000032, 0x03905658,
-    0x1a285120, 0x11248000, 0x432618e1, 0x0eaa5d52,
+    0x40800800, 0x48000420, 0x10000032, 0x01904440,
+    0x02000100, 0x10048000, 0x00020000, 0x08820802,
     } },
     { { /* 150 */
-    0xae280fa0, 0x4500fa7b, 0x89406408, 0xc044c880,
-    0xb1419005, 0x24c48424, 0x603a1a34, 0xc1949000,
+    0x08080ba0, 0x00009242, 0x00400000, 0xc0008080,
+    0x20410001, 0x04400000, 0x60020820, 0x00100000,
     } },
     { { /* 151 */
-    0x003a8246, 0xc106180d, 0x99100022, 0x1511e050,
-    0x00824057, 0x020a041a, 0x8930004f, 0x444ad813,
+    0x00108046, 0x01001805, 0x90100000, 0x00014010,
+    0x00000010, 0x00000000, 0x0000000b, 0x00008800,
     } },
     { { /* 152 */
-    0xed228a02, 0x400510c0, 0x01021000, 0x31018808,
-    0x02044600, 0x0708f000, 0xa2008900, 0x22020000,
+    0x00000000, 0x00001000, 0x00000000, 0x20018800,
+    0x00004600, 0x06002000, 0x00000100, 0x00000000,
     } },
     { { /* 153 */
-    0x16100200, 0x10400042, 0x02605200, 0x200052f4,
-    0x80308510, 0x42021100, 0x80b54308, 0x9a2070e1,
+    0x00000000, 0x10400042, 0x02004000, 0x00004280,
+    0x80000400, 0x00020000, 0x00000008, 0x00000020,
     } },
     { { /* 154 */
-    0x08012040, 0xfc653500, 0xab0419c1, 0x62140286,
-    0x00440087, 0x02449085, 0x0a85405c, 0x33803207,
+    0x00000040, 0x20600400, 0x0a000180, 0x02040280,
+    0x00000000, 0x00409001, 0x02000004, 0x00003200,
     } },
     { { /* 155 */
-    0xb8c00400, 0xc0d0ce20, 0x0080c030, 0x0d250508,
-    0x00400a90, 0x080c0200, 0x40006505, 0x41026421,
+    0x88000000, 0x80404800, 0x00000010, 0x00040008,
+    0x00000a90, 0x00000200, 0x00002000, 0x40002001,
     } },
     { { /* 156 */
-    0x00000268, 0x847c0024, 0xde200002, 0x40498619,
-    0x40000808, 0x20010084, 0x10108400, 0x01c742cd,
+    0x00000048, 0x00100000, 0x00000000, 0x00000001,
+    0x00000008, 0x20010080, 0x00000000, 0x00400040,
     } },
     { { /* 157 */
-    0xd52a7038, 0x1d8f1968, 0x3e12be50, 0x81d92ef5,
-    0x2412cec4, 0x732e0828, 0x4b3424ac, 0xd41d020c,
+    0x85000000, 0x0c8f0108, 0x32129000, 0x80090420,
+    0x00024000, 0x40040800, 0x092000a0, 0x00100204,
     } },
     { { /* 158 */
-    0x80002a02, 0x08110097, 0x114411c4, 0x7d451786,
-    0x064949d9, 0x87914000, 0xd8c4254c, 0x491444ba,
+    0x00002000, 0x00000000, 0x00440004, 0x6c000000,
+    0x000000d0, 0x80004000, 0x88800440, 0x41144018,
     } },
     { { /* 159 */
-    0xc8001b92, 0x15800271, 0x0c000081, 0xc200096a,
-    0x40024800, 0xba493021, 0x1c802080, 0x1008e2ac,
+    0x80001a02, 0x14000001, 0x00000001, 0x0000004a,
+    0x00000000, 0x00083000, 0x08000000, 0x0008a024,
     } },
     { { /* 160 */
-    0x00341004, 0x841400e1, 0x20000020, 0x10149800,
-    0x04aa70c2, 0x54208688, 0x04130c62, 0x20109180,
+    0x00300004, 0x00140000, 0x20000000, 0x00001800,
+    0x00020002, 0x04000000, 0x00000002, 0x00000100,
     } },
     { { /* 161 */
-    0x02064082, 0x54001c40, 0xe4e90383, 0x84802125,
-    0x2000e433, 0xe60944c0, 0x81260a03, 0x080112da,
+    0x00004002, 0x54000000, 0x60400300, 0x00002120,
+    0x0000a022, 0x00000000, 0x81060803, 0x08010200,
     } },
     { { /* 162 */
-    0x97906901, 0xf8864001, 0x0081e24d, 0xa6510a0e,
-    0x81ec011a, 0x8441c600, 0xb62cadb8, 0x8741a46f,
+    0x04004800, 0xb0044000, 0x0000a005, 0x04500800,
+    0x800c000a, 0x0000c000, 0x10000800, 0x02408021,
     } },
     { { /* 163 */
-    0x4b028d54, 0x02681161, 0x2057bb60, 0x043350a0,
-    0xb7b4a8c0, 0x01122402, 0x20009ad3, 0x00c82271,
+    0x08020000, 0x00001040, 0x00540a40, 0x00000000,
+    0x00800880, 0x01020002, 0x00000211, 0x00000010,
     } },
     { { /* 164 */
-    0x809e2081, 0xe1800c8a, 0x8151b009, 0x40281031,
-    0x89a52a0e, 0x620e69b6, 0xd1444425, 0x4d548085,
+    0x00000000, 0x80000002, 0x00002000, 0x00080001,
+    0x09840a00, 0x40000080, 0x00400000, 0x49000080,
     } },
     { { /* 165 */
-    0x1fb12c75, 0x862dd807, 0x4841d87c, 0x226e414e,
-    0x9e088200, 0xed37f80c, 0x75268c80, 0x08149313,
+    0x0e102831, 0x06098807, 0x40011014, 0x02620042,
+    0x06000000, 0x88062000, 0x04068400, 0x08108301,
     } },
     { { /* 166 */
-    0xc8040e32, 0x6ea6484e, 0x66702c4a, 0xba0126c0,
-    0x185dd30c, 0x00000000, 0x00000000, 0x00000000,
+    0x08000012, 0x40004840, 0x00300402, 0x00012000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 167 */
-    0x00000000, 0x05400000, 0x81337020, 0x03a54f81,
-    0x641055ec, 0x2344c318, 0x00341462, 0x1a090a43,
+    0x00000000, 0x00400000, 0x00000000, 0x00a54400,
+    0x40004420, 0x20000310, 0x00041002, 0x18000000,
     } },
     { { /* 168 */
-    0x13a5187b, 0xa8480102, 0xc5440440, 0xe2dd8106,
-    0x2d481af0, 0x0416b626, 0x6e405058, 0x31128032,
+    0x00a1002a, 0x00080000, 0x40400000, 0x00900000,
+    0x21401200, 0x04048626, 0x40005048, 0x21100000,
     } },
     { { /* 169 */
-    0x0c0007e4, 0x420a8208, 0x803b4840, 0x87134860,
-    0x3428850d, 0xe5290319, 0x870a2345, 0x5c1825a9,
+    0x040005a4, 0x000a0000, 0x00214000, 0x07010800,
+    0x34000000, 0x00080100, 0x00080040, 0x10182508,
     } },
     { { /* 170 */
-    0xd9c577a6, 0x03e85e00, 0xa7000081, 0x41c6cd54,
-    0xa2042800, 0x2b0ab860, 0xda9e0020, 0x0e1a08ea,
+    0xc0805100, 0x02c01400, 0x00000080, 0x00448040,
+    0x20000800, 0x210a8000, 0x08800000, 0x00020060,
     } },
     { { /* 171 */
-    0x11c0427c, 0x03768908, 0x01058621, 0x18a80000,
-    0xc44846a0, 0x20220d05, 0x91485422, 0x28978a01,
+    0x00004004, 0x00400100, 0x01040200, 0x00800000,
+    0x00000000, 0x00000000, 0x10081400, 0x00008000,
     } },
     { { /* 172 */
-    0x00087898, 0x31221605, 0x08804240, 0x06a2fa4e,
-    0x92110814, 0x9b042002, 0x06432e52, 0x90105000,
+    0x00004000, 0x20000000, 0x08800200, 0x00001000,
+    0x00000000, 0x01000000, 0x00000810, 0x00000000,
     } },
     { { /* 173 */
-    0x85ba0041, 0x20203042, 0x05a04f0b, 0x40802708,
-    0x1a930591, 0x0600df50, 0x3021a202, 0x4e800630,
+    0x00020000, 0x20200000, 0x00000000, 0x00000000,
+    0x00000010, 0x00001c40, 0x00002000, 0x08000210,
     } },
     { { /* 174 */
-    0x04c80cc4, 0x8001a004, 0xd4316000, 0x0a020880,
-    0x00281c00, 0x00418e18, 0xca106ad0, 0x4b00f210,
+    0x00000000, 0x00000000, 0x54014000, 0x02000800,
+    0x00200400, 0x00000000, 0x00002080, 0x00004000,
     } },
     { { /* 175 */
-    0x1506274d, 0x88900220, 0x82a85a00, 0x81504549,
-    0x80002004, 0x2c088804, 0x000508d1, 0x4ac48001,
+    0x10000004, 0x00000000, 0x00000000, 0x00000000,
+    0x00002000, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 176 */
-    0x0062e020, 0x0a42008e, 0x6a8c3055, 0xe0a5090e,
-    0x42c42906, 0x80b34814, 0xb330803e, 0x731c0102,
+    0x00000000, 0x00000000, 0x28881041, 0x0081010a,
+    0x00400800, 0x00000800, 0x10208026, 0x61000000,
     } },
     { { /* 177 */
-    0x600d1494, 0x09400c20, 0xc040301a, 0xc094a451,
-    0x05c88dca, 0xa40c96c2, 0x34040001, 0x011000c8,
+    0x00050080, 0x00000000, 0x80000000, 0x80040000,
+    0x044088c2, 0x00080480, 0x00040000, 0x00000048,
     } },
     { { /* 178 */
-    0xa9c9550d, 0x1c5a2428, 0x48370142, 0x100f7a4d,
-    0x452a32b4, 0x9205317b, 0x5c44b894, 0x458a68d7,
+    0x8188410d, 0x141a2400, 0x40310000, 0x000f4249,
+    0x41283280, 0x80053011, 0x00400880, 0x410060c0,
     } },
     { { /* 179 */
-    0x2ed15097, 0x42081943, 0x9d40d202, 0x20979840,
-    0x064d5409, 0x00000000, 0x00000000, 0x00000000,
+    0x2a004013, 0x02000002, 0x11000000, 0x00850040,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 180 */
-    0x00000000, 0x84800000, 0x04215542, 0x17001c06,
-    0x61107624, 0xb9ddff87, 0x5c0a659f, 0x3c00245d,
+    0x00000000, 0x00800000, 0x04000440, 0x00000402,
+    0x60001000, 0x99909f87, 0x5808049d, 0x10002445,
     } },
     { { /* 181 */
-    0x0059adb0, 0x00000000, 0x00000000, 0x009b28d0,
-    0x02000422, 0x44080108, 0xac409804, 0x90288d0a,
+    0x00000100, 0x00000000, 0x00000000, 0x00910050,
+    0x00000420, 0x00080008, 0x20000000, 0x00288002,
     } },
     { { /* 182 */
-    0xe0018700, 0x00310400, 0x82211794, 0x10540019,
-    0x021a2cb2, 0x40039c02, 0x88043d60, 0x7900080c,
+    0x00008400, 0x00000400, 0x00000000, 0x00100000,
+    0x00002000, 0x00000800, 0x80043400, 0x21000004,
     } },
     { { /* 183 */
-    0xba3c1628, 0xcb088640, 0x90807274, 0x0000001e,
-    0xd8000000, 0x9c87e188, 0x04124034, 0x2791ae64,
+    0x20000208, 0x01000600, 0x00000010, 0x00000000,
+    0x48000000, 0x14060008, 0x00124020, 0x20812800,
     } },
     { { /* 184 */
-    0xe6fbe86b, 0x5366408f, 0x537feea6, 0xb5e4e32b,
-    0x0002869f, 0x01228548, 0x08004402, 0x20a02116,
+    0xa419804b, 0x01064009, 0x10386ca4, 0x85a0620b,
+    0x00000010, 0x01000448, 0x00004400, 0x20a02102,
     } },
     { { /* 185 */
-    0x02040004, 0x00052000, 0x01547e00, 0x01ac162c,
-    0x10852a84, 0x05308c14, 0xb943fbc3, 0x906000ca,
+    0x00000000, 0x00000000, 0x00147000, 0x01a01404,
+    0x10040000, 0x01000000, 0x3002f180, 0x00000008,
     } },
     { { /* 186 */
-    0x40326000, 0x80901200, 0x4c810b30, 0x40020054,
-    0x1d6a0029, 0x02802000, 0x00048000, 0x150c2610,
+    0x00002000, 0x00100000, 0x08000010, 0x00020004,
+    0x01000029, 0x00002000, 0x00000000, 0x10082000,
     } },
     { { /* 187 */
-    0x07018040, 0x0c24d94d, 0x18502810, 0x50205001,
-    0x04d01000, 0x02017080, 0x21c30108, 0x00000132,
+    0x00000000, 0x0004d041, 0x08000800, 0x00200000,
+    0x00401000, 0x00004000, 0x00000000, 0x00000002,
     } },
     { { /* 188 */
-    0x07190088, 0x05600802, 0x4c0e0012, 0xf0a10405,
-    0x00000002, 0x00000000, 0x00000000, 0x00000000,
+    0x01000000, 0x00000000, 0x00020000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 189 */
     0x00000000, 0x00000000, 0x00000000, 0x00800000,
-    0x035a8e8d, 0x5a0421bd, 0x11703488, 0x00000026,
+    0x000a0a01, 0x0004002c, 0x01000080, 0x00000000,
     } },
     { { /* 190 */
-    0x10000000, 0x8804c502, 0xf801b815, 0x25ed147c,
-    0x1bb0ed60, 0x1bd70589, 0x1a627af3, 0x0ac50d0c,
+    0x10000000, 0x08040400, 0x08012010, 0x2569043c,
+    0x1a10c460, 0x08800009, 0x000210f0, 0x08c5050c,
     } },
     { { /* 191 */
-    0x524ae5d1, 0x63050490, 0x52440354, 0x16122b57,
-    0x1101a872, 0x00182949, 0x10080948, 0x886c6000,
+    0x10000481, 0x00040080, 0x42040000, 0x00100204,
+    0x00000000, 0x00000000, 0x00080000, 0x88080000,
     } },
     { { /* 192 */
-    0x058f916e, 0x39903012, 0x4930f840, 0x001b8880,
-    0x00000000, 0x00428500, 0x98000058, 0x7014ea04,
+    0x010f016c, 0x18002000, 0x41307000, 0x00000080,
+    0x00000000, 0x00000100, 0x88000000, 0x70048004,
     } },
     { { /* 193 */
-    0x611d1628, 0x60005113, 0x00a71a24, 0x00000000,
-    0x03c00000, 0x10187120, 0xa9270172, 0x89066004,
+    0x00081420, 0x00000100, 0x00000000, 0x00000000,
+    0x02400000, 0x00001000, 0x00050070, 0x00000000,
     } },
     { { /* 194 */
-    0x020cc022, 0x40810900, 0x8ca0202d, 0x00000e34,
-    0x00000000, 0x11012100, 0xc11a8011, 0x0892ec4c,
+    0x000c4000, 0x00010000, 0x04000000, 0x00000000,
+    0x00000000, 0x01000100, 0x01000010, 0x00000400,
     } },
     { { /* 195 */
-    0x85000040, 0x1806c7ac, 0x0512e03e, 0x00108000,
-    0x80ce4008, 0x02106d01, 0x08568641, 0x0027011e,
+    0x00000000, 0x10020000, 0x04100024, 0x00000000,
+    0x00000000, 0x00004000, 0x00000000, 0x00000100,
     } },
     { { /* 196 */
-    0x083d3750, 0x4e05e032, 0x048401c0, 0x01400081,
-    0x00000000, 0x00000000, 0x00000000, 0x00591aa0,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00100020,
     } },
     { { /* 197 */
-    0x882443c8, 0xc8001d48, 0x72030152, 0x04049013,
-    0x04008280, 0x0d148a10, 0x02088056, 0x2704a040,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00008000, 0x00100000, 0x00000000, 0x00000000,
     } },
     { { /* 198 */
-    0x4c000000, 0x00000000, 0x00000000, 0xa3200000,
-    0xa0ae1902, 0xdf002660, 0x7b15f010, 0x3ad08121,
+    0x00000000, 0x00000000, 0x00000000, 0x80000000,
+    0x00880000, 0x0c000040, 0x02040010, 0x00000000,
     } },
     { { /* 199 */
-    0x00284180, 0x48001003, 0x8014cc00, 0x00c414cf,
-    0x30202000, 0x00000001, 0x00000000, 0x00000000,
+    0x00080000, 0x08000000, 0x00000000, 0x00000004,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 200 */
     0x00000000, 0x00000000, 0x07fffffe, 0x07fffffe,
@@ -1126,7 +1127,7 @@ static const struct {
     0xfffddfec, 0xc3effdff, 0x40603ddf, 0x00000003,
     } },
     { { /* 209 */
-    0x00000000, 0xfffe0000, 0xffffffff, 0xffffffff,
+    0x00000000, 0xfffe0000, 0xffffffff, 0xffffffef,
     0x00007fff, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 210 */
@@ -2094,666 +2095,1006 @@ static const struct {
     0x8e001ff9, 0x00000001, 0x00000000, 0x00000000,
     } },
     { { /* 451 */
-    0x14000010, 0xa0c09512, 0x0c000200, 0x01000400,
-    0x050002a3, 0x98800009, 0x00004000, 0x01004c00,
+    0x00000080, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 452 */
-    0x04800008, 0x02840300, 0x00000824, 0x00040000,
-    0x00000400, 0x20010904, 0x00001100, 0x22050030,
+    0x00000000, 0x00000000, 0x00001000, 0x64080010,
+    0x00480000, 0x10000020, 0x80000102, 0x08000010,
     } },
     { { /* 453 */
-    0x00000108, 0x08104000, 0x01400000, 0x00001040,
-    0x00010102, 0x10000040, 0x82012000, 0x10100002,
+    0x00000040, 0x40000000, 0x00020000, 0x01852002,
+    0x00800010, 0x80002022, 0x084444a2, 0x480e0000,
     } },
     { { /* 454 */
-    0x00006002, 0x00000800, 0x00400000, 0x02100401,
-    0x14400144, 0x013c4980, 0x880e8288, 0x50102014,
+    0x04000200, 0x02202008, 0x80004380, 0x04000000,
+    0x00000002, 0x12231420, 0x2058003a, 0x00200060,
     } },
     { { /* 455 */
-    0x80000824, 0x101000c1, 0x02800000, 0x02080101,
-    0x04118000, 0x02200112, 0x00031020, 0x02000003,
+    0x10002508, 0x040d0028, 0x00000009, 0x00008004,
+    0x00800000, 0x42000001, 0x00000000, 0x09040000,
     } },
     { { /* 456 */
-    0x00000002, 0x090c1090, 0xa0004004, 0x60102290,
-    0x00080000, 0x00414f45, 0x07071026, 0x40c00001,
+    0x02008000, 0x01402001, 0x00000000, 0x00000008,
+    0x00000000, 0x00000001, 0x00021008, 0x04000000,
     } },
     { { /* 457 */
-    0x04580000, 0x0014800a, 0x00002800, 0x00002600,
-    0x50988020, 0x02140018, 0x04013800, 0x00008008,
+    0x00100100, 0x80040080, 0x00002000, 0x00000008,
+    0x08040601, 0x01000012, 0x10000000, 0x49001024,
     } },
     { { /* 458 */
-    0x41082004, 0x80000928, 0x20080280, 0x020e0a00,
-    0x00010040, 0x16110200, 0x41800002, 0x08231400,
+    0x0180004a, 0x00100600, 0x50840800, 0x000000c0,
+    0x00800000, 0x20000800, 0x40000000, 0x08050000,
     } },
     { { /* 459 */
-    0x40020020, 0x0080202f, 0x2015a008, 0x1c000002,
-    0xc0040e00, 0x82028012, 0x00400000, 0x2002a004,
+    0x02004000, 0x02000804, 0x01000004, 0x18060001,
+    0x02400001, 0x40000002, 0x20800014, 0x000c1000,
     } },
     { { /* 460 */
-    0x20200001, 0xa0040000, 0x8890004c, 0xc4000080,
-    0x10012500, 0x48100482, 0x60800110, 0x40008040,
+    0x00222000, 0x00000000, 0x00100000, 0x00000000,
+    0x00000000, 0x00000000, 0x10422800, 0x00000800,
     } },
     { { /* 461 */
-    0x00040008, 0x04000044, 0x90000091, 0x000c1200,
-    0x06040000, 0x08610480, 0x10010800, 0x080d0001,
+    0x20080000, 0x00040000, 0x80025040, 0x20208604,
+    0x00028020, 0x80102020, 0x080820c0, 0x10880800,
     } },
     { { /* 462 */
-    0x800204b4, 0x00140000, 0x00000000, 0x00200020,
-    0x84100200, 0x01811000, 0x02000210, 0x03018800,
+    0x00000000, 0x00000000, 0x00200109, 0x00100000,
+    0x00000000, 0x81022700, 0x40c21404, 0x84010882,
     } },
     { { /* 463 */
-    0x04042804, 0x20001c92, 0x02100020, 0x4202490a,
-    0x02420146, 0x00000803, 0x0008c008, 0x44050010,
+    0x00004010, 0x00000000, 0x03000000, 0x00000008,
+    0x00080000, 0x00000000, 0x10800001, 0x06002020,
     } },
     { { /* 464 */
-    0x80222000, 0x00000800, 0x00008452, 0x10502140,
-    0xe0410005, 0x00000400, 0x00a00008, 0x80080000,
+    0x00000010, 0x02000000, 0x00880020, 0x00008424,
+    0x00000000, 0x88000000, 0x81000100, 0x04000000,
     } },
     { { /* 465 */
-    0x50180020, 0x00000009, 0x40080600, 0x00000000,
-    0x56000020, 0x04000000, 0x00020006, 0x00208220,
+    0x00004218, 0x00040000, 0x00000000, 0x80005080,
+    0x00010000, 0x00040000, 0x08008000, 0x02008000,
     } },
     { { /* 466 */
-    0x01210000, 0x40009000, 0x08c00140, 0x08110000,
-    0x00004820, 0x02400810, 0x08800002, 0x00200000,
+    0x00020000, 0x00000000, 0x00000001, 0x04000401,
+    0x00100000, 0x12200004, 0x00000000, 0x18100000,
     } },
     { { /* 467 */
-    0x00040a00, 0x00004000, 0x40000104, 0x84000000,
-    0x02040048, 0x20000000, 0x00012000, 0x1b100000,
+    0x00000000, 0x00000800, 0x00000000, 0x00004000,
+    0x00800000, 0x04000000, 0x82000002, 0x00042000,
     } },
     { { /* 468 */
-    0x00007000, 0x04000020, 0x10032000, 0x0804000a,
-    0x00000008, 0x04020090, 0x88000014, 0x00000000,
+    0x00080006, 0x00000000, 0x00000000, 0x04000000,
+    0x80008000, 0x00810001, 0xa0000000, 0x00100410,
     } },
     { { /* 469 */
-    0x00000000, 0x08020008, 0x00040400, 0x40a00000,
-    0x40000000, 0x00080090, 0x40800000, 0x20000388,
+    0x00400218, 0x88084080, 0x00260008, 0x00800404,
+    0x00000020, 0x00000000, 0x00000000, 0x00000200,
     } },
     { { /* 470 */
-    0x02001080, 0x20010004, 0x12010004, 0x20008011,
-    0x13200082, 0x02800000, 0x04098001, 0x00000004,
+    0x00a08048, 0x00000000, 0x08000000, 0x04000000,
+    0x00000000, 0x00000000, 0x00018000, 0x00200000,
     } },
     { { /* 471 */
-    0x00000000, 0x02801000, 0x00001000, 0x00000100,
-    0x20010024, 0x00000050, 0x80200028, 0x00000020,
+    0x01000000, 0x00000000, 0x00000000, 0x10000000,
+    0x00000000, 0x00000000, 0x00200000, 0x00102000,
     } },
     { { /* 472 */
-    0x01000000, 0x00a24000, 0x00000000, 0x82001010,
-    0x00000800, 0x02000000, 0x40020002, 0x59000044,
+    0x00000801, 0x00000000, 0x00000000, 0x00020000,
+    0x08000000, 0x00002000, 0x20010000, 0x04002000,
     } },
     { { /* 473 */
-    0x00000080, 0x0d040000, 0x04000000, 0x10020000,
-    0x00022000, 0x00508000, 0x20080001, 0x000004a2,
+    0x40000040, 0x50202400, 0x000a0020, 0x00040420,
+    0x00000200, 0x00000080, 0x80000000, 0x00000020,
     } },
     { { /* 474 */
-    0xc0020400, 0x00310000, 0x80002000, 0x00002800,
-    0x00000b60, 0x40200000, 0x00120000, 0x80000009,
+    0x20008000, 0x00200010, 0x00000000, 0x00000000,
+    0x00400000, 0x01100000, 0x00020000, 0x80000010,
     } },
     { { /* 475 */
-    0x41000000, 0x00010008, 0x00880910, 0x20080888,
-    0x04044020, 0x80482010, 0x00006000, 0x00020000,
+    0x02000000, 0x00801000, 0x00000000, 0x48058000,
+    0x20c94000, 0x60000000, 0x00000001, 0x00000000,
     } },
     { { /* 476 */
-    0x42405004, 0x00400020, 0x00000010, 0x00000886,
-    0x00008000, 0x80021011, 0x00c00000, 0x42000000,
+    0x00004090, 0x48000000, 0x08000000, 0x28802000,
+    0x00000002, 0x00014000, 0x00002000, 0x00002002,
     } },
     { { /* 477 */
-    0x4801201f, 0x40c00004, 0x20600480, 0x00000020,
-    0x01000110, 0x22400040, 0x00000428, 0x00000000,
+    0x00010200, 0x00100000, 0x00000000, 0x00800000,
+    0x10020000, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 478 */
-    0x0f00020f, 0x40401000, 0x00200048, 0x000c0092,
-    0x81000421, 0x00040004, 0x00620001, 0x06000202,
+    0x00000010, 0x00000402, 0x0c000000, 0x01000400,
+    0x01000021, 0x00000000, 0x00004000, 0x00004000,
     } },
     { { /* 479 */
-    0x14001808, 0x00083800, 0x008c1028, 0x04120028,
-    0x22008404, 0x40260880, 0x01100700, 0x00400000,
+    0x00000000, 0x00800000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x02000020,
     } },
     { { /* 480 */
-    0x20000020, 0x00200000, 0x00840000, 0x04108000,
-    0x00000002, 0x00000000, 0x10000002, 0x04000402,
+    0x00000100, 0x08000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00002000, 0x00000000,
     } },
     { { /* 481 */
-    0x10000000, 0x26a20000, 0x05000200, 0x82204000,
-    0x80000000, 0x00048404, 0x80004800, 0x80000400,
+    0x00006000, 0x00000000, 0x00000000, 0x00000400,
+    0x04000040, 0x003c0180, 0x00000200, 0x00102000,
     } },
     { { /* 482 */
-    0x00000064, 0x00000050, 0x18804000, 0x00060000,
-    0x00408002, 0x02020030, 0x00000000, 0x40000000,
+    0x00000800, 0x101000c0, 0x00800000, 0x00000000,
+    0x00008000, 0x02200000, 0x00020020, 0x00000000,
     } },
     { { /* 483 */
-    0x01208414, 0x00000600, 0x02018000, 0x10400000,
-    0x04000840, 0x09200000, 0x2e000000, 0x04000304,
+    0x00000000, 0x01000000, 0x00000000, 0x20100000,
+    0x00080000, 0x00000141, 0x02001002, 0x40400001,
     } },
     { { /* 484 */
-    0x00c01810, 0x20100010, 0x10400010, 0x02100000,
-    0xa0000402, 0x48200000, 0x06080000, 0x01400000,
+    0x00580000, 0x00000002, 0x00003000, 0x00002400,
+    0x00988000, 0x00040010, 0x00002800, 0x00000008,
     } },
     { { /* 485 */
-    0x40000008, 0x00001000, 0x10112800, 0xc2a09080,
-    0x00008a02, 0x3a0000e9, 0x80611011, 0x40220000,
+    0x40080004, 0x00000020, 0x20080000, 0x02060a00,
+    0x00010040, 0x14010200, 0x40800000, 0x08031000,
     } },
     { { /* 486 */
-    0x20000020, 0x48381a00, 0x00028421, 0x54ea0800,
-    0x01425100, 0x0490200c, 0x20020000, 0x00600800,
+    0x40020020, 0x0000202c, 0x2014a008, 0x00000000,
+    0x80040200, 0x82020012, 0x00400000, 0x20000000,
     } },
     { { /* 487 */
-    0x00e0c201, 0x00004810, 0x10a10001, 0x00000040,
-    0x80108084, 0x00042000, 0x00002000, 0x00000004,
+    0x00000000, 0x00000000, 0x00000004, 0x04000000,
+    0x00000000, 0x00000000, 0x40800100, 0x00000000,
     } },
     { { /* 488 */
-    0x00010014, 0x03005d00, 0x00008102, 0x00120000,
-    0x51009000, 0x04000480, 0x0021c200, 0x0a888056,
+    0x00000008, 0x04000040, 0x00000001, 0x000c0200,
+    0x00000000, 0x08000400, 0x00000000, 0x080c0001,
     } },
     { { /* 489 */
-    0xd2b60004, 0x13800000, 0x204803a8, 0x04501921,
-    0x0a003004, 0x02100010, 0x00091100, 0x01070080,
+    0x00000400, 0x00000000, 0x00000000, 0x00200000,
+    0x80000000, 0x00001000, 0x00000200, 0x01000800,
     } },
     { { /* 490 */
-    0x42004020, 0x08300000, 0x002a2444, 0x04046081,
-    0x40046008, 0x00120000, 0x10000108, 0x00000000,
+    0x00000000, 0x00000800, 0x00000000, 0x40000000,
+    0x00000000, 0x00000000, 0x00000000, 0x04040000,
     } },
     { { /* 491 */
-    0x00000084, 0x08001000, 0x0012e001, 0x045880c0,
-    0x00010000, 0x00800022, 0x02401000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000040, 0x00002000,
+    0xa0000000, 0x00000000, 0x08000008, 0x00080000,
     } },
     { { /* 492 */
-    0x4000d000, 0x00000850, 0x01000009, 0x0d840000,
-    0x01080000, 0x42008000, 0x20000828, 0x40100040,
+    0x00000020, 0x00000000, 0x40000400, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00008000,
     } },
     { { /* 493 */
-    0x51000100, 0x32000000, 0x001a0894, 0x04000040,
-    0x00002102, 0x03428000, 0x018c0080, 0x00234010,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000800, 0x00000000, 0x00000000, 0x00200000,
     } },
     { { /* 494 */
-    0x00000040, 0x185c4000, 0x03000000, 0x40020004,
-    0xa20200c9, 0x00000220, 0x00101050, 0x00120004,
+    0x00000000, 0x00000000, 0x00000000, 0x04000000,
+    0x00000008, 0x00000000, 0x00010000, 0x1b000000,
     } },
     { { /* 495 */
-    0x00000040, 0x44002400, 0x00000228, 0x20000020,
-    0x000a0008, 0x18010000, 0x3c08830c, 0x40000684,
+    0x00007000, 0x00000000, 0x10000000, 0x00000000,
+    0x00000000, 0x00000080, 0x80000000, 0x00000000,
     } },
     { { /* 496 */
-    0x80101800, 0x02000280, 0x0020000c, 0x08009004,
-    0x00040000, 0x0004000c, 0x00018000, 0x14001000,
+    0x00000000, 0x00020000, 0x00000000, 0x00200000,
+    0x40000000, 0x00000010, 0x00800000, 0x00000008,
     } },
     { { /* 497 */
-    0x08240000, 0x00200000, 0x20420014, 0x58112000,
-    0x10004048, 0x010050c0, 0x0408228c, 0x12282040,
+    0x00000000, 0x00000000, 0x02000000, 0x20000010,
+    0x00000080, 0x00000000, 0x00010000, 0x00000000,
     } },
     { { /* 498 */
-    0x00000000, 0x00000020, 0x24002000, 0x00000000,
-    0x00800a00, 0x00080910, 0x1019a000, 0x60200030,
+    0x00000000, 0x02000000, 0x00000000, 0x00000000,
+    0x20000000, 0x00000040, 0x00200028, 0x00000000,
     } },
     { { /* 499 */
-    0x00000080, 0x00000080, 0x08000000, 0x800050a0,
-    0x80044000, 0x04001010, 0x80008080, 0x00000000,
+    0x00000000, 0x00020000, 0x00000000, 0x02000000,
+    0x00000000, 0x02000000, 0x40020000, 0x51000040,
     } },
     { { /* 500 */
-    0x00000040, 0x00800000, 0x000c4283, 0x01020000,
-    0x00888000, 0x00104008, 0x20000000, 0x04000080,
+    0x00000080, 0x04040000, 0x00000000, 0x10000000,
+    0x00022000, 0x00100000, 0x20000000, 0x00000082,
     } },
     { { /* 501 */
-    0x20000104, 0x1802c021, 0x08100000, 0x0000004e,
-    0x80000001, 0x30c00080, 0x00000040, 0x00401200,
+    0x40000000, 0x00010000, 0x00002000, 0x00000000,
+    0x00000240, 0x00000000, 0x00000000, 0x00000008,
     } },
     { { /* 502 */
-    0x04945288, 0x00940400, 0x06400104, 0x10002000,
-    0x00080010, 0x00400420, 0x00000102, 0x00408010,
+    0x00000000, 0x00010000, 0x00000810, 0x00080880,
+    0x00004000, 0x00000000, 0x00000000, 0x00020000,
     } },
     { { /* 503 */
-    0x05000000, 0x40002240, 0x00100000, 0x0e400024,
-    0x00000080, 0x80000440, 0x01018410, 0xb1804004,
+    0x00000000, 0x00400020, 0x00000000, 0x00000082,
+    0x00000000, 0x00020001, 0x00000000, 0x00000000,
     } },
     { { /* 504 */
-    0x25000800, 0x20000000, 0x00800000, 0x0000804c,
-    0x10020020, 0x42001000, 0x00082000, 0x00002000,
+    0x40000018, 0x00000004, 0x00000000, 0x00000000,
+    0x01000000, 0x00400000, 0x00000000, 0x00000000,
     } },
     { { /* 505 */
-    0x11500020, 0x40004053, 0x11280500, 0x80060014,
-    0x004c0101, 0x60002008, 0x44000000, 0x01000036,
+    0x00000001, 0x00400000, 0x00000000, 0x00080002,
+    0x00000400, 0x00040000, 0x00000000, 0x00000000,
     } },
     { { /* 506 */
-    0x00010028, 0x01180000, 0x84041804, 0x00098000,
-    0x00800000, 0x00000000, 0x00400002, 0x10004001,
+    0x00000800, 0x00000800, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000100, 0x00000000,
     } },
     { { /* 507 */
-    0x0051a004, 0x00008100, 0x00000024, 0x40041000,
-    0x00040000, 0x00042001, 0x00000000, 0x00008000,
+    0x00000000, 0x00200000, 0x00000000, 0x04108000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000002,
     } },
     { { /* 508 */
-    0x00000000, 0x00000000, 0x00000000, 0x20030000,
-    0x00001840, 0x00020220, 0x04404002, 0x00204000,
+    0x00000000, 0x02800000, 0x04000000, 0x00000000,
+    0x00000000, 0x00000004, 0x00000000, 0x00000400,
     } },
     { { /* 509 */
-    0x01008010, 0x00002080, 0x40008064, 0x00004031,
-    0x10018090, 0x80304001, 0x000080a0, 0x80200040,
+    0x00000000, 0x00000000, 0x10000000, 0x00040000,
+    0x00400000, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 510 */
-    0x00000001, 0x00000010, 0x00102088, 0x00800020,
-    0x00120681, 0x100002a0, 0x00000042, 0x00000080,
+    0x00200000, 0x00000200, 0x00000000, 0x10000000,
+    0x00000000, 0x00000000, 0x2a000000, 0x00000000,
     } },
     { { /* 511 */
-    0x10000000, 0x21000a00, 0x00000200, 0x40000080,
-    0x10110000, 0x00108200, 0x04000000, 0x00000400,
+    0x00400000, 0x00000000, 0x00400000, 0x00000000,
+    0x00000002, 0x40000000, 0x00000000, 0x00400000,
     } },
     { { /* 512 */
-    0x80001000, 0x80002000, 0x40003008, 0x00000204,
-    0x0801000a, 0x40000001, 0x00000000, 0x00000004,
+    0x40000000, 0x00001000, 0x00000000, 0x00000000,
+    0x00000202, 0x02000000, 0x80000000, 0x00020000,
     } },
     { { /* 513 */
-    0x00000000, 0x00000000, 0x00020000, 0x00000000,
-    0x88000000, 0x00002000, 0x08502000, 0x00840a00,
+    0x00000020, 0x00000800, 0x00020421, 0x00020000,
+    0x00000000, 0x00000000, 0x00000000, 0x00400000,
     } },
     { { /* 514 */
-    0x31061808, 0x00000000, 0x00000000, 0x04000000,
-    0x00000004, 0x00000240, 0x00100009, 0x00000000,
+    0x00200000, 0x00000000, 0x00000001, 0x00000000,
+    0x00000084, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 515 */
-    0x00004002, 0x04002500, 0x00008040, 0x40a20100,
-    0x00000001, 0x12412080, 0x04004008, 0x00042014,
+    0x00000000, 0x00004400, 0x00000002, 0x00100000,
+    0x00000000, 0x00000000, 0x00008200, 0x00000000,
     } },
     { { /* 516 */
-    0x02000000, 0x00012000, 0x10000402, 0x000040c0,
-    0x00080000, 0x5fe800a1, 0x04019402, 0x02000000,
+    0x00000000, 0x12000000, 0x00000100, 0x00000001,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 517 */
-    0x00040100, 0x00880000, 0x00401000, 0x00001012,
-    0x00000000, 0x08004100, 0x00000010, 0x00000000,
+    0x00000020, 0x08100000, 0x000a0400, 0x00000081,
+    0x00006000, 0x00120000, 0x00000000, 0x00000000,
     } },
     { { /* 518 */
-    0x00000000, 0x00000000, 0x52020000, 0x10410080,
-    0x00005000, 0x08400200, 0x80400010, 0x44400020,
+    0x00000004, 0x08000000, 0x00004000, 0x044000c0,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 519 */
-    0x00084100, 0x10200d02, 0xa1200012, 0x00804804,
-    0x00008212, 0xc6024000, 0x08100000, 0x205c1828,
+    0x40001000, 0x00000000, 0x01000001, 0x05000000,
+    0x00080000, 0x02000000, 0x00000800, 0x00000000,
     } },
     { { /* 520 */
-    0x00000088, 0x00031000, 0x8000013f, 0x21184b44,
-    0x100100f2, 0xa9002001, 0x08080840, 0x001b0001,
+    0x00000100, 0x00000000, 0x00000000, 0x00000000,
+    0x00002002, 0x01020000, 0x00800000, 0x00000000,
     } },
     { { /* 521 */
-    0x28800112, 0x400020f0, 0x0910200c, 0x0a0010a0,
-    0x80000020, 0x00000004, 0x1000000a, 0x00400000,
+    0x00000040, 0x00004000, 0x01000000, 0x00000004,
+    0x00020000, 0x00000000, 0x00000010, 0x00000000,
     } },
     { { /* 522 */
-    0x00000000, 0x00002000, 0x00000080, 0x81000000,
-    0x02c00020, 0x000004c5, 0x00000000, 0x00100100,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00080000, 0x00010000, 0x30000300, 0x00000400,
     } },
     { { /* 523 */
-    0x20000000, 0x01080000, 0x00400022, 0x08000200,
-    0x00408002, 0x20400028, 0x00000000, 0x00100000,
+    0x00000800, 0x02000000, 0x00000000, 0x00008000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 524 */
-    0x08000008, 0x00420002, 0xa0a20003, 0x00022000,
-    0x88000280, 0x65160000, 0x00040105, 0x00244041,
+    0x00200000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x000040c0, 0x00002200, 0x12002000,
     } },
     { { /* 525 */
-    0x80300000, 0x00184008, 0x00000880, 0x00201140,
-    0x00000000, 0x02900000, 0x50004588, 0x00221043,
+    0x00000000, 0x00000020, 0x20000000, 0x00000000,
+    0x00000200, 0x00080800, 0x1000a000, 0x00000000,
     } },
     { { /* 526 */
-    0x12004000, 0x0b800000, 0x20002405, 0x0000000c,
-    0x08000000, 0x11000410, 0x04000030, 0x00200043,
+    0x00000000, 0x00000000, 0x00000000, 0x00004000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 527 */
-    0x80011000, 0x18008042, 0x11000000, 0x00001008,
-    0x00008000, 0x24440000, 0x00800000, 0x80100005,
+    0x00000000, 0x00000000, 0x00004280, 0x01000000,
+    0x00800000, 0x00000008, 0x00000000, 0x00000000,
     } },
     { { /* 528 */
-    0x00108204, 0x02102400, 0x00010001, 0x80000200,
-    0xa080e80a, 0x00010000, 0x20008000, 0x80122200,
+    0x00000000, 0x00000000, 0x00000000, 0x00000002,
+    0x00000000, 0x20400000, 0x00000040, 0x00000000,
     } },
     { { /* 529 */
-    0x88211404, 0x04208041, 0x20088020, 0x18040000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00800080, 0x00800000, 0x00000000, 0x00000000,
+    0x00000000, 0x00400020, 0x00000000, 0x00008000,
     } },
     { { /* 530 */
-    0x00401004, 0x02100002, 0x40014210, 0x50006000,
-    0x00080008, 0x20000820, 0x00100211, 0x10000000,
+    0x01000000, 0x00000040, 0x00000000, 0x00400000,
+    0x00000000, 0x00000440, 0x00000000, 0x00800000,
     } },
     { { /* 531 */
-    0x91005400, 0x00000000, 0x00000000, 0x08000000,
-    0x41610032, 0xa0029d44, 0x000000d2, 0x41020004,
+    0x01000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00080000, 0x00000000,
     } },
     { { /* 532 */
-    0x00800104, 0x020000c0, 0x04090030, 0x80000204,
-    0x82004000, 0x00000020, 0x00000000, 0x00000000,
+    0x01000000, 0x00000001, 0x00000000, 0x00020000,
+    0x00000000, 0x20002000, 0x00000000, 0x00000004,
     } },
     { { /* 533 */
-    0x00000000, 0x00000000, 0x00000080, 0x00000000,
+    0x00000008, 0x00100000, 0x00000000, 0x00010000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     } },
     { { /* 534 */
+    0x00000004, 0x00008000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00008000,
+    } },
+    { { /* 535 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000040, 0x00000000, 0x00004000, 0x00000000,
+    } },
+    { { /* 536 */
+    0x00000010, 0x00002000, 0x40000040, 0x00000000,
+    0x10000000, 0x00000000, 0x00008080, 0x00000000,
+    } },
+    { { /* 537 */
+    0x00000000, 0x00000000, 0x00000080, 0x00000000,
+    0x00100080, 0x000000a0, 0x00000000, 0x00000000,
+    } },
+    { { /* 538 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00100000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 539 */
+    0x00000000, 0x00000000, 0x00001000, 0x00000000,
+    0x0001000a, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 540 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x08002000, 0x00000000,
+    } },
+    { { /* 541 */
+    0x00000808, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 542 */
+    0x00004000, 0x00002400, 0x00008000, 0x40000000,
+    0x00000001, 0x00002000, 0x04000000, 0x00040004,
+    } },
+    { { /* 543 */
+    0x00000000, 0x00002000, 0x00000000, 0x00000000,
+    0x00000000, 0x1c200000, 0x00000000, 0x02000000,
+    } },
+    { { /* 544 */
+    0x00000000, 0x00080000, 0x00400000, 0x00000002,
+    0x00000000, 0x00000100, 0x00000000, 0x00000000,
+    } },
+    { { /* 545 */
+    0x00000000, 0x00000000, 0x00000000, 0x00400000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 546 */
+    0x00004100, 0x00000400, 0x20200010, 0x00004004,
+    0x00000000, 0x42000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 547 */
+    0x00000080, 0x00000000, 0x00000121, 0x00000200,
+    0x000000b0, 0x80002000, 0x00000000, 0x00010000,
+    } },
+    { { /* 548 */
+    0x00000010, 0x000000c0, 0x08100000, 0x00000020,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 549 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x02000000, 0x00000404, 0x00000000, 0x00000000,
+    } },
+    { { /* 550 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00400000, 0x00000008, 0x00000000, 0x00000000,
+    } },
+    { { /* 551 */
+    0x00000000, 0x00000002, 0x00020000, 0x00002000,
+    0x00000000, 0x00000000, 0x00000000, 0x00204000,
+    } },
+    { { /* 552 */
+    0x00000000, 0x00100000, 0x00000000, 0x00000000,
+    0x00000000, 0x00800000, 0x00000100, 0x00000001,
+    } },
+    { { /* 553 */
+    0x10000000, 0x01000000, 0x00002400, 0x00000004,
+    0x00000000, 0x00000000, 0x00000020, 0x00000002,
+    } },
+    { { /* 554 */
+    0x00010000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 555 */
+    0x00000000, 0x00002400, 0x00000000, 0x00000000,
+    0x00004802, 0x00000000, 0x00000000, 0x80022000,
+    } },
+    { { /* 556 */
+    0x00001004, 0x04208000, 0x20000020, 0x00040000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 557 */
+    0x00000000, 0x00100000, 0x40010000, 0x00000000,
+    0x00080000, 0x00000000, 0x00100211, 0x00000000,
+    } },
+    { { /* 558 */
+    0x00001400, 0x00000000, 0x00000000, 0x00000000,
+    0x00610000, 0x80008c00, 0x00000000, 0x00000000,
+    } },
+    { { /* 559 */
+    0x00000100, 0x00000040, 0x00000000, 0x00000004,
+    0x00004000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 560 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000400, 0x00000000,
+    } },
+    { { /* 561 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000210, 0x00000000, 0x00000000,
+    } },
+    { { /* 562 */
+    0x00000000, 0x00000020, 0x00000002, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 563 */
+    0x00004000, 0x00000000, 0x00000000, 0x02000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 564 */
+    0x00000000, 0x00000000, 0x00080002, 0x01000020,
+    0x00400000, 0x00200000, 0x00008000, 0x00000000,
+    } },
+    { { /* 565 */
+    0x00000000, 0x00020000, 0x00000000, 0xc0020000,
+    0x10000000, 0x00000080, 0x00000000, 0x00000000,
+    } },
+    { { /* 566 */
+    0x00000210, 0x00000000, 0x00001000, 0x04480000,
+    0x20000000, 0x00000004, 0x00800000, 0x02000000,
+    } },
+    { { /* 567 */
+    0x00000000, 0x08006000, 0x00001000, 0x00000000,
+    0x00000000, 0x00100000, 0x00000000, 0x00000400,
+    } },
+    { { /* 568 */
+    0x00100000, 0x00000000, 0x10000000, 0x08608000,
+    0x00000000, 0x00000000, 0x00080002, 0x00000000,
+    } },
+    { { /* 569 */
+    0x00000000, 0x20000000, 0x00008020, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 570 */
+    0x00000000, 0x00000000, 0x00000000, 0x10000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 571 */
+    0x00000000, 0x00100000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 572 */
+    0x00000000, 0x00000400, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 573 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x02000000,
+    } },
+    { { /* 574 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000080, 0x00000000,
+    } },
+    { { /* 575 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000002, 0x00000000, 0x00000000,
+    } },
+    { { /* 576 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00008000, 0x00000000,
+    } },
+    { { /* 577 */
+    0x00000000, 0x00000000, 0x00000008, 0x00000000,
+    0x00000000, 0x00000000, 0x00000400, 0x00000000,
+    } },
+    { { /* 578 */
+    0x00000000, 0x00000000, 0x00220000, 0x00000004,
+    0x00000000, 0x00040000, 0x00000004, 0x00000000,
+    } },
+    { { /* 579 */
+    0x00000000, 0x00000000, 0x00001000, 0x00000080,
+    0x00002000, 0x00000000, 0x00000000, 0x00004000,
+    } },
+    { { /* 580 */
+    0x00000000, 0x00000000, 0x00000000, 0x00100000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 581 */
+    0x00000000, 0x00020000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 582 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00200000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 583 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x04000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 584 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000200, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 585 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000001, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 586 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00080000, 0x00000000,
+    } },
+    { { /* 587 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x01000000, 0x00000000, 0x00000400,
+    } },
+    { { /* 588 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000080, 0x00000000, 0x00000000,
+    } },
+    { { /* 589 */
+    0x00000000, 0x00000800, 0x00000100, 0x40000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 590 */
+    0x00000000, 0x00200000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 591 */
+    0x00000000, 0x00000000, 0x01000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 592 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x04000000, 0x00000000,
+    } },
+    { { /* 593 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00001000, 0x00000000,
+    } },
+    { { /* 594 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000400, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 595 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x04040000,
+    } },
+    { { /* 596 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000020, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 597 */
+    0x00000000, 0x00000000, 0x00800000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 598 */
+    0x00000000, 0x00200000, 0x40000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 599 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x20000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 600 */
+    0x00000000, 0x00000000, 0x00000000, 0x04000000,
+    0x00000000, 0x00000001, 0x00000000, 0x00000000,
+    } },
+    { { /* 601 */
+    0x00000000, 0x40000000, 0x02000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 602 */
+    0x00000000, 0x00000000, 0x00000000, 0x00080000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 603 */
+    0x00000000, 0x00000010, 0x00000000, 0x00000000,
+    0x00000000, 0x20000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 604 */
+    0x00000000, 0x00000000, 0x20000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 605 */
+    0x00000080, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000004,
+    } },
+    { { /* 606 */
+    0x00000000, 0x00000000, 0x00000000, 0x00002000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 607 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x10000001, 0x00000000,
+    } },
+    { { /* 608 */
+    0x00008000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 609 */
+    0x00000000, 0x00000000, 0x00004040, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 610 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00042400, 0x00000000,
+    } },
+    { { /* 611 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x02000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 612 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000080,
+    } },
+    { { /* 613 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000020,
+    } },
+    { { /* 614 */
+    0x00000000, 0x00000001, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 615 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00020000, 0x00000000,
+    } },
+    { { /* 616 */
+    0x00000000, 0x00000000, 0x00002000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 617 */
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x01000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 618 */
+    0x00000000, 0x00040000, 0x08000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    } },
+    { { /* 619 */
     0xc373ff8b, 0x1b0f6840, 0xf34ce9ac, 0xc0080200,
     0xca3e795c, 0x06487976, 0xf7f02fdf, 0xa8ff033a,
     } },
-    { { /* 535 */
+    { { /* 620 */
     0x233fef37, 0xfd59b004, 0xfffff3ca, 0xfff9de9f,
     0x7df7abff, 0x8eecc000, 0xffdbeebf, 0x45fad003,
     } },
-    { { /* 536 */
+    { { /* 621 */
     0xdffefae1, 0x10abbfef, 0xfcaaffeb, 0x24fdef3f,
     0x7f7678ad, 0xedfff00c, 0x2cfacff6, 0xeb6bf7f9,
     } },
-    { { /* 537 */
+    { { /* 622 */
     0x95bf1ffd, 0xbfbf6677, 0xfeb43bfb, 0x11e27bae,
     0x41bea681, 0x72c31435, 0x71917d70, 0x276b0003,
     } },
-    { { /* 538 */
+    { { /* 623 */
     0x70cf57cb, 0x0def4732, 0xfc747eda, 0xbdb4fe06,
     0x8bca3f9f, 0x58007e49, 0xebec228f, 0xddbb8a5c,
     } },
-    { { /* 539 */
+    { { /* 624 */
     0xb6e7ef60, 0xf293a40f, 0x549e37bb, 0x9bafd04b,
     0xf7d4c414, 0x0a1430b0, 0x88d02f08, 0x192fff7e,
     } },
-    { { /* 540 */
+    { { /* 625 */
     0xfb07ffda, 0x7beb7ff1, 0x0010c5ef, 0xfdff99ff,
     0x056779d7, 0xfdcbffe7, 0x4040c3ff, 0xbd8e6ff7,
     } },
-    { { /* 541 */
+    { { /* 626 */
     0x0497dffa, 0x5bfff4c0, 0xd0e7ed7b, 0xf8e0047e,
     0xb73eff9f, 0x882e7dfe, 0xbe7ffffd, 0xf6c483fe,
     } },
-    { { /* 542 */
+    { { /* 627 */
     0xb8fdf357, 0xef7dd680, 0x47885767, 0xc3dfff7d,
     0x37a9f0ff, 0x70fc7de0, 0xec9a3f6f, 0x86814cb3,
     } },
-    { { /* 543 */
+    { { /* 628 */
     0xdd5c3f9e, 0x4819f70d, 0x0007fea3, 0x38ffaf56,
     0xefb8980d, 0xb760403d, 0x9035d8ce, 0x3fff72bf,
     } },
-    { { /* 544 */
+    { { /* 629 */
     0x7a117ff7, 0xabfff7bb, 0x6fbeff00, 0xfe72a93c,
     0xf11bcfef, 0xf40adb6b, 0xef7ec3e6, 0xf6109b9c,
     } },
-    { { /* 545 */
+    { { /* 630 */
     0x16f4f048, 0x5182feb5, 0x15bbc7b1, 0xfbdf6e87,
     0x63cde43f, 0x7e7ec1ff, 0x7d5ffdeb, 0xfcfe777b,
     } },
-    { { /* 546 */
+    { { /* 631 */
     0xdbea960b, 0x53e86229, 0xfdef37df, 0xbd8136f5,
     0xfcbddc18, 0xffffd2e4, 0xffe03fd7, 0xabf87f6f,
     } },
-    { { /* 547 */
+    { { /* 632 */
     0x6ed99bae, 0xf115f5fb, 0xbdfb79a9, 0xadaf5a3c,
     0x1facdbba, 0x837971fc, 0xc35f7cf7, 0x0567dfff,
     } },
-    { { /* 548 */
+    { { /* 633 */
     0x8467ff9a, 0xdf8b1534, 0x3373f9f3, 0x5e1af7bd,
     0xa03fbf40, 0x01ebffff, 0xcfdddfc0, 0xabd37500,
     } },
-    { { /* 549 */
+    { { /* 634 */
     0xeed6f8c3, 0xb7ff43fd, 0x42275eaf, 0xf6869bac,
     0xf6bc27d7, 0x35b7f787, 0xe176aacd, 0xe29f49e7,
     } },
-    { { /* 550 */
+    { { /* 635 */
     0xaff2545c, 0x61d82b3f, 0xbbb8fc3b, 0x7b7dffcf,
     0x1ce0bf95, 0x43ff7dfd, 0xfffe5ff6, 0xc4ced3ef,
     } },
-    { { /* 551 */
+    { { /* 636 */
     0xadbc8db6, 0x11eb63dc, 0x23d0df59, 0xf3dbbeb4,
     0xdbc71fe7, 0xfae4ff63, 0x63f7b22b, 0xadbaed3b,
     } },
-    { { /* 552 */
+    { { /* 637 */
     0x7efffe01, 0x02bcfff7, 0xef3932ff, 0x8005fffc,
     0xbcf577fb, 0xfff7010d, 0xbf3afffb, 0xdfff0057,
     } },
-    { { /* 553 */
+    { { /* 638 */
     0xbd7def7b, 0xc8d4db88, 0xed7cfff3, 0x56ff5dee,
     0xac5f7e0d, 0xd57fff96, 0xc1403fee, 0xffe76ff9,
     } },
-    { { /* 554 */
+    { { /* 639 */
     0x8e77779b, 0xe45d6ebf, 0x5f1f6fcf, 0xfedfe07f,
     0x01fed7db, 0xfb7bff00, 0x1fdfffd4, 0xfffff800,
     } },
-    { { /* 555 */
+    { { /* 640 */
     0x007bfb8f, 0x7f5cbf00, 0x07f3ffff, 0x3de7eba0,
     0xfbd7f7bf, 0x6003ffbf, 0xbfedfffd, 0x027fefbb,
     } },
-    { { /* 556 */
+    { { /* 641 */
     0xddfdfe40, 0xe2f9fdff, 0xfb1f680b, 0xaffdfbe3,
     0xf7ed9fa4, 0xf80f7a7d, 0x0fd5eebe, 0xfd9fbb5d,
     } },
-    { { /* 557 */
+    { { /* 642 */
     0x3bf9f2db, 0xebccfe7f, 0x73fa876a, 0x9ffc95fc,
     0xfaf7109f, 0xbbcdddb7, 0xeccdf87e, 0x3c3ff366,
     } },
-    { { /* 558 */
+    { { /* 643 */
     0xb03ffffd, 0x067ee9f7, 0xfe0696ae, 0x5fd7d576,
     0xa3f33fd1, 0x6fb7cf07, 0x7f449fd1, 0xd3dd7b59,
     } },
-    { { /* 559 */
+    { { /* 644 */
     0xa9bdaf3b, 0xff3a7dcf, 0xf6ebfbe0, 0xffffb401,
     0xb7bf7afa, 0x0ffdc000, 0xff1fff7f, 0x95fffefc,
     } },
-    { { /* 560 */
+    { { /* 645 */
     0xb5dc0000, 0x3f3eef63, 0x001bfb7f, 0xfbf6e800,
     0xb8df9eef, 0x003fff9f, 0xf5ff7bd0, 0x3fffdfdb,
     } },
-    { { /* 561 */
+    { { /* 646 */
     0x00bffdf0, 0xbbbd8420, 0xffdedf37, 0x0ff3ff6d,
     0x5efb604c, 0xfafbfffb, 0x0219fe5e, 0xf9de79f4,
     } },
-    { { /* 562 */
+    { { /* 647 */
     0xebfaa7f7, 0xff3401eb, 0xef73ebd3, 0xc040afd7,
     0xdcff72bb, 0x2fd8f17f, 0xfe0bb8ec, 0x1f0bdda3,
     } },
-    { { /* 563 */
+    { { /* 648 */
     0x47cf8f1d, 0xffdeb12b, 0xda737fee, 0xcbc424ff,
     0xcbf2f75d, 0xb4edecfd, 0x4dddbff9, 0xfb8d99dd,
     } },
-    { { /* 564 */
+    { { /* 649 */
     0xaf7bbb7f, 0xc959ddfb, 0xfab5fc4f, 0x6d5fafe3,
     0x3f7dffff, 0xffdb7800, 0x7effb6ff, 0x022ffbaf,
     } },
-    { { /* 565 */
+    { { /* 650 */
     0xefc7ff9b, 0xffffffa5, 0xc7000007, 0xfff1f7ff,
     0x01bf7ffd, 0xfdbcdc00, 0xffffbff5, 0x3effff7f,
     } },
-    { { /* 566 */
+    { { /* 651 */
     0xbe000029, 0xff7ff9ff, 0xfd7e6efb, 0x039ecbff,
     0xfbdde300, 0xf6dfccff, 0x117fffff, 0xfbf6f800,
     } },
-    { { /* 567 */
+    { { /* 652 */
     0xd73ce7ef, 0xdfeffeef, 0xedbfc00b, 0xfdcdfedf,
     0x40fd7bf5, 0xb75fffff, 0xf930ffdf, 0xdc97fbdf,
     } },
-    { { /* 568 */
+    { { /* 653 */
     0xbff2fef3, 0xdfbf8fdf, 0xede6177f, 0x35530f7f,
     0x877e447c, 0x45bbfa12, 0x779eede0, 0xbfd98017,
     } },
-    { { /* 569 */
+    { { /* 654 */
     0xde897e55, 0x0447c16f, 0xf75d7ade, 0x290557ff,
     0xfe9586f7, 0xf32f97b3, 0x9f75cfff, 0xfb1771f7,
     } },
-    { { /* 570 */
+    { { /* 655 */
     0xee1934ee, 0xef6137cc, 0xef4c9fd6, 0xfbddd68f,
     0x6def7b73, 0xa431d7fe, 0x97d75e7f, 0xffd80f5b,
     } },
-    { { /* 571 */
+    { { /* 656 */
     0x7bce9d83, 0xdcff22ec, 0xef87763d, 0xfdeddfe7,
     0xa0fc4fff, 0xdbfc3b77, 0x7fdc3ded, 0xf5706fa9,
     } },
-    { { /* 572 */
+    { { /* 657 */
     0x2c403ffb, 0x847fff7f, 0xdeb7ec57, 0xf22fe69c,
     0xd5b50feb, 0xede7afeb, 0xfff08c2f, 0xe8f0537f,
     } },
-    { { /* 573 */
+    { { /* 658 */
     0xb5ffb99d, 0xe78fff66, 0xbe10d981, 0xe3c19c7c,
     0x27339cd1, 0xff6d0cbc, 0xefb7fcb7, 0xffffa0df,
     } },
-    { { /* 574 */
+    { { /* 659 */
     0xfe7bbf0b, 0x353fa3ff, 0x97cd13cc, 0xfb277637,
     0x7e6ccfd6, 0xed31ec50, 0xfc1c677c, 0x5fbff6fa,
     } },
-    { { /* 575 */
+    { { /* 660 */
     0xae2f0fba, 0x7ffea3ad, 0xde74fcf0, 0xf200ffef,
     0xfea2fbbf, 0xbcff3daf, 0x5fb9f694, 0x3f8ff3ad,
     } },
-    { { /* 576 */
+    { { /* 661 */
     0xa01ff26c, 0x01bfffef, 0x70057728, 0xda03ff35,
     0xc7fad2f9, 0x5c1d3fbf, 0xec33ff3a, 0xfe9cb7af,
     } },
-    { { /* 577 */
+    { { /* 662 */
     0x7a9f5236, 0xe722bffa, 0xfcff9ff7, 0xb61d2fbb,
     0x1dfded06, 0xefdf7dd7, 0xf166eb23, 0x0dc07ed9,
     } },
-    { { /* 578 */
+    { { /* 663 */
     0xdfbf3d3d, 0xba83c945, 0x9dd07dd1, 0xcf737b87,
     0xc3f59ff3, 0xc5fedf0d, 0x83020cb3, 0xaec0e879,
     } },
-    { { /* 579 */
+    { { /* 664 */
     0x6f0fc773, 0x093ffd7d, 0x0157fff1, 0x01ff62fb,
     0x3bf3fdb4, 0x43b2b013, 0xff305ed3, 0xeb9f0fff,
     } },
-    { { /* 580 */
+    { { /* 665 */
     0xf203feef, 0xfb893fef, 0x9e9937a9, 0xa72cdef9,
     0xc1f63733, 0xfe3e812e, 0xf2f75d20, 0x69d7d585,
     } },
-    { { /* 581 */
+    { { /* 666 */
     0xffffffff, 0xff6fdb07, 0xd97fc4ff, 0xbe0fefce,
     0xf05ef17b, 0xffb7f6cf, 0xef845ef7, 0x0edfd7cb,
     } },
-    { { /* 582 */
+    { { /* 667 */
     0xfcffff08, 0xffffee3f, 0xd7ff13ff, 0x7ffdaf0f,
     0x1ffabdc7, 0x00000000, 0x00000000, 0x00000000,
     } },
-    { { /* 583 */
+    { { /* 668 */
     0x00000000, 0xe7400000, 0xf933bd38, 0xfeed7feb,
     0x7c767fe8, 0xffefb3f7, 0xd8b7feaf, 0xfbbfff6f,
     } },
-    { { /* 584 */
+    { { /* 669 */
     0xdbf7f8fb, 0xe2f91752, 0x754785c8, 0xe3ef9090,
     0x3f6d9ef4, 0x0536ee2e, 0x7ff3f7bc, 0x7f3fa07b,
     } },
-    { { /* 585 */
+    { { /* 670 */
     0xeb600567, 0x6601babe, 0x583ffcd8, 0x87dfcaf7,
     0xffa0bfcd, 0xfebf5bcd, 0xefa7b6fd, 0xdf9c77ef,
     } },
-    { { /* 586 */
+    { { /* 671 */
     0xf8773fb7, 0xb7fc9d27, 0xdfefcab5, 0xf1b6fb5a,
     0xef1fec39, 0x7ffbfbbf, 0xdafe000d, 0x4e7fbdfb,
     } },
-    { { /* 587 */
+    { { /* 672 */
     0x5ac033ff, 0x9ffebff5, 0x005fffbf, 0xfdf80000,
     0x6ffdffca, 0xa001cffd, 0xfbf2dfff, 0xff7fdfbf,
     } },
-    { { /* 588 */
+    { { /* 673 */
     0x080ffeda, 0xbfffba08, 0xeed77afd, 0x67f9fbeb,
     0xff93e044, 0x9f57df97, 0x08dffef7, 0xfedfdf80,
     } },
-    { { /* 589 */
+    { { /* 674 */
     0xf7feffc5, 0x6803fffb, 0x6bfa67fb, 0x5fe27fff,
     0xff73ffff, 0xe7fb87df, 0xf7a7ebfd, 0xefc7bf7e,
     } },
-    { { /* 590 */
+    { { /* 675 */
     0xdf821ef3, 0xdf7e76ff, 0xda7d79c9, 0x1e9befbe,
     0x77fb7ce0, 0xfffb87be, 0xffdb1bff, 0x4fe03f5c,
     } },
-    { { /* 591 */
+    { { /* 676 */
     0x5f0e7fff, 0xddbf77ff, 0xfffff04f, 0x0ff8ffff,
     0xfddfa3be, 0xfffdfc1c, 0xfb9e1f7d, 0xdedcbdff,
     } },
-    { { /* 592 */
+    { { /* 677 */
     0xbafb3f6f, 0xfbefdf7f, 0x2eec7d1b, 0xf2f7af8e,
     0xcfee7b0f, 0x77c61d96, 0xfff57e07, 0x7fdfd982,
     } },
-    { { /* 593 */
+    { { /* 678 */
     0xc7ff5ee6, 0x79effeee, 0xffcf9a56, 0xde5efe5f,
     0xf9e8896e, 0xe6c4f45e, 0xbe7c0001, 0xdddf3b7f,
     } },
-    { { /* 594 */
+    { { /* 679 */
     0xe9efd59d, 0xde5334ac, 0x4bf7f573, 0x9eff7b4f,
     0x476eb8fe, 0xff450dfb, 0xfbfeabfd, 0xddffe9d7,
     } },
-    { { /* 595 */
+    { { /* 680 */
     0x7fffedf7, 0x7eebddfd, 0xb7ffcfe7, 0xef91bde9,
     0xd77c5d75, 0x00000000, 0x00000000, 0x00000000,
     } },
-    { { /* 596 */
+    { { /* 681 */
     0x00000000, 0xfa800000, 0xb4f1ffee, 0x2fefbf76,
     0x77bfb677, 0xfffd9fbf, 0xf6ae95bf, 0x7f3b75ff,
     } },
-    { { /* 597 */
+    { { /* 682 */
     0x0af9a7f5, 0x00000000, 0x00000000, 0x2bddfbd0,
     0x9a7ff633, 0xd6fcfdab, 0xbfebf9e6, 0xf41fdfdf,
     } },
-    { { /* 598 */
+    { { /* 683 */
     0xffffa6fd, 0xf37b4aff, 0xfef97fb7, 0x1d5cb6ff,
     0xe5ff7ff6, 0x24041f7b, 0xf99ebe05, 0xdff2dbe3,
     } },
-    { { /* 599 */
+    { { /* 684 */
     0xfdff6fef, 0xcbfcd679, 0xefffebfd, 0x0000001f,
     0x98000000, 0x8017e148, 0x00fe6a74, 0xfdf16d7f,
     } },
-    { { /* 600 */
+    { { /* 685 */
     0xfef3b87f, 0xf176e01f, 0x7b3fee96, 0xfffdeb8d,
     0xcbb3adff, 0xe17f84ef, 0xbff04daa, 0xfe3fbf3f,
     } },
-    { { /* 601 */
+    { { /* 686 */
     0xffd7ebff, 0xcf7fffdf, 0x85edfffb, 0x07bcd73f,
     0xfe0faeff, 0x76bffdaf, 0x37bbfaef, 0xa3ba7fdc,
     } },
-    { { /* 602 */
+    { { /* 687 */
     0x56f7b6ff, 0xe7df60f8, 0x4cdfff61, 0xff45b0fb,
     0x3ffa7ded, 0x18fc1fff, 0xe3afffff, 0xdf83c7d3,
     } },
-    { { /* 603 */
+    { { /* 688 */
     0xef7dfb57, 0x1378efff, 0x5ff7fec0, 0x5ee334bb,
     0xeff6f70d, 0x00bfd7fe, 0xf7f7f59d, 0xffe051de,
     } },
-    { { /* 604 */
+    { { /* 689 */
     0x037ffec9, 0xbfef5f01, 0x60a79ff1, 0xf1ffef1d,
     0x0000000f, 0x00000000, 0x00000000, 0x00000000,
     } },
-    { { /* 605 */
+    { { /* 690 */
     0x00000000, 0x00000000, 0x00000000, 0x3c800000,
     0xd91ffb4d, 0xfee37b3a, 0xdc7f3fe9, 0x0000003f,
     } },
-    { { /* 606 */
+    { { /* 691 */
     0x50000000, 0xbe07f51f, 0xf91bfc1d, 0x71ffbc1e,
     0x5bbe6ff9, 0x9b1b5796, 0xfffc7fff, 0xafe7872e,
     } },
-    { { /* 607 */
+    { { /* 692 */
     0xf34febf5, 0xe725dffd, 0x5d440bdc, 0xfddd5747,
     0x7790ed3f, 0x8ac87d7f, 0xf3f9fafa, 0xef4b202a,
     } },
-    { { /* 608 */
+    { { /* 693 */
     0x79cff5ff, 0x0ba5abd3, 0xfb8ff77a, 0x001f8ebd,
     0x00000000, 0xfd4ef300, 0x88001a57, 0x7654aeac,
     } },
-    { { /* 609 */
+    { { /* 694 */
     0xcdff17ad, 0xf42fffb2, 0xdbff5baa, 0x00000002,
     0x73c00000, 0x2e3ff9ea, 0xbbfffa8e, 0xffd376bc,
     } },
-    { { /* 610 */
+    { { /* 695 */
     0x7e72eefe, 0xe7f77ebd, 0xcefdf77f, 0x00000ff5,
     0x00000000, 0xdb9ba900, 0x917fa4c7, 0x7ecef8ca,
     } },
-    { { /* 611 */
+    { { /* 696 */
     0xc7e77d7a, 0xdcaecbbd, 0x8f76fd7e, 0x7cf391d3,
     0x4c2f01e5, 0xa360ed77, 0x5ef807db, 0x21811df7,
     } },
-    { { /* 612 */
+    { { /* 697 */
     0x309c6be0, 0xfade3b3a, 0xc3f57f53, 0x07ba61cd,
     0x00000000, 0x00000000, 0x00000000, 0xbefe26e0,
     } },
-    { { /* 613 */
+    { { /* 698 */
     0xebb503f9, 0xe9cbe36d, 0xbfde9c2f, 0xabbf9f83,
     0xffd51ff7, 0xdffeb7df, 0xffeffdae, 0xeffdfb7e,
     } },
-    { { /* 614 */
+    { { /* 699 */
     0x6ebfaaff, 0x00000000, 0x00000000, 0xb6200000,
     0xbe9e7fcd, 0x58f162b3, 0xfd7bf10d, 0xbefde9f1,
     } },
-    { { /* 615 */
+    { { /* 700 */
     0x5f6dc6c3, 0x69ffff3d, 0xfbf4ffcf, 0x4ff7dcfb,
     0x11372000, 0x00000015, 0x00000000, 0x00000000,
     } },
-    { { /* 616 */
+    { { /* 701 */
     0x00003000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     } },
@@ -3195,29 +3536,51 @@ static const struct {
     LEAF(501,519), LEAF(501,520), LEAF(501,521), LEAF(501,522),
     LEAF(501,523), LEAF(501,524), LEAF(501,525), LEAF(501,526),
     LEAF(501,527), LEAF(501,528), LEAF(501,529), LEAF(501,530),
-    LEAF(501,531), LEAF(501,532), LEAF(501,533),
+    LEAF(501,531), LEAF(501,532), LEAF(501,533), LEAF(501,534),
+    LEAF(501,535), LEAF(501,536), LEAF(501,537), LEAF(501,538),
+    LEAF(501,539), LEAF(501,540), LEAF(501,541), LEAF(501,542),
+    LEAF(501,543), LEAF(501,544), LEAF(501,545), LEAF(501,546),
+    LEAF(501,547), LEAF(501,548), LEAF(501,549), LEAF(501,550),
+    LEAF(501,551), LEAF(501,552), LEAF(501,553), LEAF(501,554),
+    LEAF(501,555), LEAF(501,556), LEAF(501,557), LEAF(501,558),
+    LEAF(501,559), LEAF(501,560), LEAF(501,561), LEAF(501,562),
+    LEAF(501,563), LEAF(501,564), LEAF(501,565), LEAF(501,566),
+    LEAF(501,567), LEAF(501,568), LEAF(501,569), LEAF(501,570),
+    LEAF(501,571), LEAF(501,572), LEAF(501,573), LEAF(501,574),
+    LEAF(501,575), LEAF(501,576), LEAF(501,577), LEAF(501,578),
+    LEAF(501,579), LEAF(501,580), LEAF(501,581), LEAF(501,582),
+    LEAF(501,583), LEAF(501,318), LEAF(501,584), LEAF(501,585),
+    LEAF(501,586), LEAF(501,587), LEAF(501,588), LEAF(501,589),
+    LEAF(501,590), LEAF(501,  3), LEAF(501,591), LEAF(501,592),
+    LEAF(501,593), LEAF(501,594), LEAF(501,595), LEAF(501,596),
+    LEAF(501,580), LEAF(501,597), LEAF(501,598), LEAF(501,599),
+    LEAF(501,600), LEAF(501,601), LEAF(501,602), LEAF(501,603),
+    LEAF(501,604), LEAF(501,605), LEAF(501,606), LEAF(501,607),
+    LEAF(501,608), LEAF(501,609), LEAF(501,610), LEAF(501,611),
+    LEAF(501,612), LEAF(501,613), LEAF(501,614), LEAF(501,615),
+    LEAF(501,616), LEAF(501,617), LEAF(501,618),
     /* zh_tw */
-    LEAF(584,534), LEAF(584,535), LEAF(584,536), LEAF(584,537),
-    LEAF(584,538), LEAF(584,539), LEAF(584,540), LEAF(584,541),
-    LEAF(584,542), LEAF(584,543), LEAF(584,544), LEAF(584,545),
-    LEAF(584,546), LEAF(584,547), LEAF(584,548), LEAF(584,549),
-    LEAF(584,550), LEAF(584,551), LEAF(584,552), LEAF(584,553),
-    LEAF(584,554), LEAF(584,555), LEAF(584,556), LEAF(584,557),
-    LEAF(584,558), LEAF(584,559), LEAF(584,560), LEAF(584,561),
-    LEAF(584,562), LEAF(584,563), LEAF(584,564), LEAF(584,565),
-    LEAF(584,566), LEAF(584,567), LEAF(584,568), LEAF(584,569),
-    LEAF(584,570), LEAF(584,571), LEAF(584,572), LEAF(584,573),
-    LEAF(584,574), LEAF(584,575), LEAF(584,576), LEAF(584,577),
-    LEAF(584,578), LEAF(584,579), LEAF(584,580), LEAF(584,581),
-    LEAF(584,582), LEAF(584,583), LEAF(584,584), LEAF(584,585),
-    LEAF(584,586), LEAF(584,587), LEAF(584,588), LEAF(584,589),
-    LEAF(584,590), LEAF(584,591), LEAF(584,592), LEAF(584,593),
-    LEAF(584,594), LEAF(584,595), LEAF(584,596), LEAF(584,597),
-    LEAF(584,598), LEAF(584,599), LEAF(584,600), LEAF(584,601),
-    LEAF(584,602), LEAF(584,603), LEAF(584,604), LEAF(584,605),
-    LEAF(584,606), LEAF(584,607), LEAF(584,608), LEAF(584,609),
-    LEAF(584,610), LEAF(584,611), LEAF(584,612), LEAF(584,613),
-    LEAF(584,614), LEAF(584,615), LEAF(584,616),
+    LEAF(672,619), LEAF(672,620), LEAF(672,621), LEAF(672,622),
+    LEAF(672,623), LEAF(672,624), LEAF(672,625), LEAF(672,626),
+    LEAF(672,627), LEAF(672,628), LEAF(672,629), LEAF(672,630),
+    LEAF(672,631), LEAF(672,632), LEAF(672,633), LEAF(672,634),
+    LEAF(672,635), LEAF(672,636), LEAF(672,637), LEAF(672,638),
+    LEAF(672,639), LEAF(672,640), LEAF(672,641), LEAF(672,642),
+    LEAF(672,643), LEAF(672,644), LEAF(672,645), LEAF(672,646),
+    LEAF(672,647), LEAF(672,648), LEAF(672,649), LEAF(672,650),
+    LEAF(672,651), LEAF(672,652), LEAF(672,653), LEAF(672,654),
+    LEAF(672,655), LEAF(672,656), LEAF(672,657), LEAF(672,658),
+    LEAF(672,659), LEAF(672,660), LEAF(672,661), LEAF(672,662),
+    LEAF(672,663), LEAF(672,664), LEAF(672,665), LEAF(672,666),
+    LEAF(672,667), LEAF(672,668), LEAF(672,669), LEAF(672,670),
+    LEAF(672,671), LEAF(672,672), LEAF(672,673), LEAF(672,674),
+    LEAF(672,675), LEAF(672,676), LEAF(672,677), LEAF(672,678),
+    LEAF(672,679), LEAF(672,680), LEAF(672,681), LEAF(672,682),
+    LEAF(672,683), LEAF(672,684), LEAF(672,685), LEAF(672,686),
+    LEAF(672,687), LEAF(672,688), LEAF(672,689), LEAF(672,690),
+    LEAF(672,691), LEAF(672,692), LEAF(672,693), LEAF(672,694),
+    LEAF(672,695), LEAF(672,696), LEAF(672,697), LEAF(672,698),
+    LEAF(672,699), LEAF(672,700), LEAF(672,701),
 },
 {
     /* aa */
@@ -3608,17 +3971,28 @@ static const struct {
     0x0095, 0x0096, 0x0097, 0x0098, 0x0099, 0x009a, 0x009b, 0x009c,
     0x009e, 0x009f,
     /* zh_hk */
-    0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055,
-    0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d,
-    0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065,
-    0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d,
-    0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075,
-    0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d,
-    0x007e, 0x007f, 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085,
-    0x0086, 0x0087, 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d,
-    0x008e, 0x008f, 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095,
-    0x0096, 0x0097, 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d,
-    0x009e, 0x009f, 0x0205,
+    0x0030, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a,
+    0x003b, 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041, 0x0042,
+    0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a,
+    0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052,
+    0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a,
+    0x005b, 0x005c, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062,
+    0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a,
+    0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072,
+    0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a,
+    0x007b, 0x007c, 0x007d, 0x007e, 0x007f, 0x0080, 0x0081, 0x0082,
+    0x0083, 0x0084, 0x0085, 0x0086, 0x0087, 0x0088, 0x0089, 0x008a,
+    0x008b, 0x008c, 0x008d, 0x008e, 0x008f, 0x0090, 0x0091, 0x0092,
+    0x0093, 0x0094, 0x0095, 0x0096, 0x0097, 0x0098, 0x0099, 0x009a,
+    0x009b, 0x009c, 0x009d, 0x009e, 0x009f, 0x0200, 0x0201, 0x0203,
+    0x0207, 0x020c, 0x020d, 0x020e, 0x020f, 0x0210, 0x0211, 0x0219,
+    0x021a, 0x021c, 0x021d, 0x0220, 0x0221, 0x022a, 0x022b, 0x022c,
+    0x022d, 0x022f, 0x0232, 0x0235, 0x0236, 0x023c, 0x023e, 0x023f,
+    0x0244, 0x024d, 0x024e, 0x0251, 0x0255, 0x025e, 0x0262, 0x0266,
+    0x0267, 0x0268, 0x0269, 0x0272, 0x0275, 0x0276, 0x0277, 0x0278,
+    0x0279, 0x027a, 0x027d, 0x0280, 0x0281, 0x0282, 0x0283, 0x0289,
+    0x028a, 0x028b, 0x028c, 0x028d, 0x028e, 0x0294, 0x0297, 0x0298,
+    0x029a, 0x029d, 0x02a6,
     /* zh_tw */
     0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055,
     0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d,
@@ -3659,7 +4033,7 @@ static const struct {
     19, /* bn */
     20, /* bo */
     21, /* br */
-    239, /* brx */
+    240, /* brx */
     22, /* bs */
     23, /* bua */
     194, /* byn */
@@ -3677,7 +4051,7 @@ static const struct {
     33, /* cy */
     34, /* da */
     35, /* de */
-    241, /* doi */
+    242, /* doi */
     197, /* dv */
     36, /* dz */
     198, /* ee */
@@ -3751,7 +4125,7 @@ static const struct {
     212, /* kwm */
     91, /* ky */
     92, /* la */
-    237, /* lah */
+    238, /* lah */
     93, /* lb */
     94, /* lez */
     213, /* lg */
@@ -3768,7 +4142,7 @@ static const struct {
     103, /* ml */
     104, /* mn_cn */
     216, /* mn_mn */
-    242, /* mni */
+    243, /* mni */
     105, /* mo */
     106, /* mr */
     217, /* ms */
@@ -3782,7 +4156,7 @@ static const struct {
     112, /* nl */
     113, /* nn */
     114, /* no */
-    238, /* nqo */
+    239, /* nqo */
     115, /* nr */
     116, /* nso */
     220, /* nv */
@@ -3801,24 +4175,25 @@ static const struct {
     125, /* ps_pk */
     126, /* pt */
     225, /* qu */
+    226, /* quz */
     127, /* rm */
-    226, /* rn */
+    227, /* rn */
     128, /* ro */
     129, /* ru */
-    227, /* rw */
+    228, /* rw */
     130, /* sa */
     131, /* sah */
-    240, /* sat */
-    228, /* sc */
+    241, /* sat */
+    229, /* sc */
     132, /* sco */
-    229, /* sd */
+    230, /* sd */
     133, /* se */
     134, /* sel */
-    230, /* sg */
+    231, /* sg */
     135, /* sh */
     136, /* shs */
     137, /* si */
-    231, /* sid */
+    232, /* sid */
     138, /* sk */
     139, /* sl */
     140, /* sm */
@@ -3826,13 +4201,13 @@ static const struct {
     142, /* smj */
     143, /* smn */
     144, /* sms */
-    232, /* sn */
+    233, /* sn */
     145, /* so */
     146, /* sq */
     147, /* sr */
     148, /* ss */
     149, /* st */
-    233, /* su */
+    234, /* su */
     150, /* sv */
     151, /* sw */
     152, /* syr */
@@ -3851,7 +4226,7 @@ static const struct {
     165, /* ts */
     166, /* tt */
     167, /* tw */
-    234, /* ty */
+    235, /* ty */
     168, /* tyv */
     169, /* ug */
     170, /* uk */
@@ -3862,14 +4237,14 @@ static const struct {
     175, /* vo */
     176, /* vot */
     177, /* wa */
-    235, /* wal */
+    236, /* wal */
     178, /* wen */
     179, /* wo */
     180, /* xh */
     181, /* yap */
     182, /* yi */
     183, /* yo */
-    236, /* za */
+    237, /* za */
     184, /* zh_cn */
     185, /* zh_hk */
     186, /* zh_mo */
@@ -4005,69 +4380,69 @@ static const struct {
     164, /* ps_af */
     165, /* ps_pk */
     166, /* pt */
-    168, /* rm */
-    170, /* ro */
-    171, /* ru */
-    173, /* sa */
-    174, /* sah */
-    177, /* sco */
-    179, /* se */
-    180, /* sel */
-    182, /* sh */
-    183, /* shs */
-    184, /* si */
-    186, /* sk */
-    187, /* sl */
-    188, /* sm */
-    189, /* sma */
-    190, /* smj */
-    191, /* smn */
-    192, /* sms */
-    194, /* so */
-    195, /* sq */
-    196, /* sr */
-    197, /* ss */
-    198, /* st */
-    200, /* sv */
-    201, /* sw */
-    202, /* syr */
-    203, /* ta */
-    204, /* te */
-    205, /* tg */
-    206, /* th */
-    207, /* ti_er */
-    208, /* ti_et */
-    209, /* tig */
-    210, /* tk */
-    211, /* tl */
-    212, /* tn */
-    213, /* to */
-    214, /* tr */
-    215, /* ts */
-    216, /* tt */
-    217, /* tw */
-    219, /* tyv */
-    220, /* ug */
-    221, /* uk */
-    222, /* ur */
-    223, /* uz */
-    224, /* ve */
-    225, /* vi */
-    226, /* vo */
-    227, /* vot */
-    228, /* wa */
-    230, /* wen */
-    231, /* wo */
-    232, /* xh */
-    233, /* yap */
-    234, /* yi */
-    235, /* yo */
-    237, /* zh_cn */
-    238, /* zh_hk */
-    239, /* zh_mo */
-    240, /* zh_sg */
-    241, /* zh_tw */
-    242, /* zu */
+    169, /* rm */
+    171, /* ro */
+    172, /* ru */
+    174, /* sa */
+    175, /* sah */
+    178, /* sco */
+    180, /* se */
+    181, /* sel */
+    183, /* sh */
+    184, /* shs */
+    185, /* si */
+    187, /* sk */
+    188, /* sl */
+    189, /* sm */
+    190, /* sma */
+    191, /* smj */
+    192, /* smn */
+    193, /* sms */
+    195, /* so */
+    196, /* sq */
+    197, /* sr */
+    198, /* ss */
+    199, /* st */
+    201, /* sv */
+    202, /* sw */
+    203, /* syr */
+    204, /* ta */
+    205, /* te */
+    206, /* tg */
+    207, /* th */
+    208, /* ti_er */
+    209, /* ti_et */
+    210, /* tig */
+    211, /* tk */
+    212, /* tl */
+    213, /* tn */
+    214, /* to */
+    215, /* tr */
+    216, /* ts */
+    217, /* tt */
+    218, /* tw */
+    220, /* tyv */
+    221, /* ug */
+    222, /* uk */
+    223, /* ur */
+    224, /* uz */
+    225, /* ve */
+    226, /* vi */
+    227, /* vo */
+    228, /* vot */
+    229, /* wa */
+    231, /* wen */
+    232, /* wo */
+    233, /* xh */
+    234, /* yap */
+    235, /* yi */
+    236, /* yo */
+    238, /* zh_cn */
+    239, /* zh_hk */
+    240, /* zh_mo */
+    241, /* zh_sg */
+    242, /* zh_tw */
+    243, /* zu */
     3, /* ak */
     5, /* an */
     15, /* ber_dz */
@@ -4104,27 +4479,28 @@ static const struct {
     161, /* pap_an */
     162, /* pap_aw */
     167, /* qu */
-    169, /* rn */
-    172, /* rw */
-    176, /* sc */
-    178, /* sd */
-    181, /* sg */
-    185, /* sid */
-    193, /* sn */
-    199, /* su */
-    218, /* ty */
-    229, /* wal */
-    236, /* za */
+    168, /* quz */
+    170, /* rn */
+    173, /* rw */
+    177, /* sc */
+    179, /* sd */
+    182, /* sg */
+    186, /* sid */
+    194, /* sn */
+    200, /* su */
+    219, /* ty */
+    230, /* wal */
+    237, /* za */
     118, /* lah */
     149, /* nqo */
     26, /* brx */
-    175, /* sat */
+    176, /* sat */
     44, /* doi */
     135, /* mni */
 }
 };
 
-#define NUM_LANG_CHAR_SET      243
+#define NUM_LANG_CHAR_SET      244
 #define NUM_LANG_SET_MAP       8
 
 static const FcChar32 fcLangCountrySets[][NUM_LANG_SET_MAP] = {
@@ -4159,15 +4535,15 @@ static const FcLangCharSetRange  fcLangCharSetRanges[] = {
     { 141, 153 }, /* n */
     { 154, 158 }, /* o */
     { 159, 166 }, /* p */
-    { 167, 167 }, /* q */
-    { 168, 172 }, /* r */
-    { 173, 202 }, /* s */
-    { 203, 219 }, /* t */
-    { 220, 223 }, /* u */
-    { 224, 227 }, /* v */
-    { 228, 231 }, /* w */
-    { 232, 232 }, /* x */
-    { 233, 235 }, /* y */
-    { 236, 242 }, /* z */
+    { 167, 168 }, /* q */
+    { 169, 173 }, /* r */
+    { 174, 203 }, /* s */
+    { 204, 220 }, /* t */
+    { 221, 224 }, /* u */
+    { 225, 228 }, /* v */
+    { 229, 232 }, /* w */
+    { 233, 233 }, /* x */
+    { 234, 236 }, /* y */
+    { 237, 243 }, /* z */
 };
 
index e87269b..dbc16d4 100644 (file)
 # TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 # PERFORMANCE OF THIS SOFTWARE.
 #
-# Coverage from JIS X 0208 (1990)
+# Coverage from JIS X 0208 (1997) for non kanji characters, and
+# Joyo Kanji List (2010, cabinet notification of regular-use chinese characters)
 #
 0x3000 # IDEOGRAPHIC SPACE
 0x3001 # IDEOGRAPHIC COMMA
 0x3002 # IDEOGRAPHIC FULL STOP
 0x3005 # IDEOGRAPHIC ITERATION MARK
-0x3006 # IDEOGRAPHIC CLOSING MARK
+#0x3006        # IDEOGRAPHIC CLOSING MARK # not in Sawarabi Gothic
 0x3007 # IDEOGRAPHIC NUMBER ZERO
 0x3041 # HIRAGANA LETTER SMALL A
 0x3042 # HIRAGANA LETTER A
 0x4E0B # <CJK>
 0x4E0D # <CJK>
 0x4E0E # <CJK>
-0x4E10 # <CJK>
-0x4E11 # <CJK>
 0x4E14 # <CJK>
-0x4E15 # <CJK>
 0x4E16 # <CJK>
-0x4E17 # <CJK>
 0x4E18 # <CJK>
 0x4E19 # <CJK>
-0x4E1E # <CJK>
 0x4E21 # <CJK>
 0x4E26 # <CJK>
-0x4E2A # <CJK>
 0x4E2D # <CJK>
-0x4E31 # <CJK>
 0x4E32 # <CJK>
-0x4E36 # <CJK>
 0x4E38 # <CJK>
 0x4E39 # <CJK>
 0x4E3B # <CJK>
 0x4E3C # <CJK>
-0x4E3F # <CJK>
-0x4E42 # <CJK>
-0x4E43 # <CJK>
 0x4E45 # <CJK>
-0x4E4B # <CJK>
-0x4E4D # <CJK>
-0x4E4E # <CJK>
 0x4E4F # <CJK>
-0x4E55 # <CJK>
-0x4E56 # <CJK>
 0x4E57 # <CJK>
-0x4E58 # <CJK>
 0x4E59 # <CJK>
 0x4E5D # <CJK>
 0x4E5E # <CJK>
-0x4E5F # <CJK>
-0x4E62 # <CJK>
 0x4E71 # <CJK>
 0x4E73 # <CJK>
 0x4E7E # <CJK>
 0x4E80 # <CJK>
-0x4E82 # <CJK>
-0x4E85 # <CJK>
 0x4E86 # <CJK>
 0x4E88 # <CJK>
 0x4E89 # <CJK>
-0x4E8A # <CJK>
 0x4E8B # <CJK>
 0x4E8C # <CJK>
-0x4E8E # <CJK>
-0x4E91 # <CJK>
 0x4E92 # <CJK>
 0x4E94 # <CJK>
 0x4E95 # <CJK>
-0x4E98 # <CJK>
-0x4E99 # <CJK>
-0x4E9B # <CJK>
 0x4E9C # <CJK>
-0x4E9E # <CJK>
-0x4E9F # <CJK>
-0x4EA0 # <CJK>
 0x4EA1 # <CJK>
-0x4EA2 # <CJK>
 0x4EA4 # <CJK>
-0x4EA5 # <CJK>
-0x4EA6 # <CJK>
-0x4EA8 # <CJK>
 0x4EAB # <CJK>
 0x4EAC # <CJK>
 0x4EAD # <CJK>
-0x4EAE # <CJK>
-0x4EB0 # <CJK>
-0x4EB3 # <CJK>
-0x4EB6 # <CJK>
 0x4EBA # <CJK>
-0x4EC0 # <CJK>
 0x4EC1 # <CJK>
-0x4EC2 # <CJK>
-0x4EC4 # <CJK>
-0x4EC6 # <CJK>
-0x4EC7 # <CJK>
 0x4ECA # <CJK>
 0x4ECB # <CJK>
-0x4ECD # <CJK>
-0x4ECE # <CJK>
 0x4ECF # <CJK>
-0x4ED4 # <CJK>
 0x4ED5 # <CJK>
 0x4ED6 # <CJK>
-0x4ED7 # <CJK>
 0x4ED8 # <CJK>
 0x4ED9 # <CJK>
-0x4EDD # <CJK>
-0x4EDE # <CJK>
-0x4EDF # <CJK>
 0x4EE3 # <CJK>
 0x4EE4 # <CJK>
 0x4EE5 # <CJK>
-0x4EED # <CJK>
 0x4EEE # <CJK>
 0x4EF0 # <CJK>
 0x4EF2 # <CJK>
 0x4EF6 # <CJK>
-0x4EF7 # <CJK>
 0x4EFB # <CJK>
 0x4F01 # <CJK>
-0x4F09 # <CJK>
-0x4F0A # <CJK>
-0x4F0D # <CJK>
 0x4F0E # <CJK>
 0x4F0F # <CJK>
 0x4F10 # <CJK>
 0x4F11 # <CJK>
 0x4F1A # <CJK>
-0x4F1C # <CJK>
 0x4F1D # <CJK>
 0x4F2F # <CJK>
-0x4F30 # <CJK>
 0x4F34 # <CJK>
-0x4F36 # <CJK>
 0x4F38 # <CJK>
 0x4F3A # <CJK>
 0x4F3C # <CJK>
-0x4F3D # <CJK>
-0x4F43 # <CJK>
 0x4F46 # <CJK>
-0x4F47 # <CJK>
 0x4F4D # <CJK>
 0x4F4E # <CJK>
 0x4F4F # <CJK>
 0x4F50 # <CJK>
-0x4F51 # <CJK>
 0x4F53 # <CJK>
 0x4F55 # <CJK>
-0x4F57 # <CJK>
 0x4F59 # <CJK>
-0x4F5A # <CJK>
-0x4F5B # <CJK>
 0x4F5C # <CJK>
-0x4F5D # <CJK>
-0x4F5E # <CJK>
-0x4F69 # <CJK>
-0x4F6F # <CJK>
-0x4F70 # <CJK>
 0x4F73 # <CJK>
 0x4F75 # <CJK>
-0x4F76 # <CJK>
-0x4F7B # <CJK>
-0x4F7C # <CJK>
 0x4F7F # <CJK>
-0x4F83 # <CJK>
-0x4F86 # <CJK>
-0x4F88 # <CJK>
 0x4F8B # <CJK>
 0x4F8D # <CJK>
-0x4F8F # <CJK>
-0x4F91 # <CJK>
-0x4F96 # <CJK>
-0x4F98 # <CJK>
 0x4F9B # <CJK>
 0x4F9D # <CJK>
-0x4FA0 # <CJK>
 0x4FA1 # <CJK>
-0x4FAB # <CJK>
-0x4FAD # <CJK>
 0x4FAE # <CJK>
 0x4FAF # <CJK>
 0x4FB5 # <CJK>
 0x4FBF # <CJK>
 0x4FC2 # <CJK>
 0x4FC3 # <CJK>
-0x4FC4 # <CJK>
 0x4FCA # <CJK>
-0x4FCE # <CJK>
-0x4FD0 # <CJK>
-0x4FD1 # <CJK>
-0x4FD4 # <CJK>
 0x4FD7 # <CJK>
-0x4FD8 # <CJK>
-0x4FDA # <CJK>
-0x4FDB # <CJK>
 0x4FDD # <CJK>
-0x4FDF # <CJK>
 0x4FE1 # <CJK>
-0x4FE3 # <CJK>
-0x4FE4 # <CJK>
-0x4FE5 # <CJK>
 0x4FEE # <CJK>
-0x4FEF # <CJK>
 0x4FF3 # <CJK>
 0x4FF5 # <CJK>
-0x4FF6 # <CJK>
 0x4FF8 # <CJK>
 0x4FFA # <CJK>
-0x4FFE # <CJK>
-0x5005 # <CJK>
-0x5006 # <CJK>
 0x5009 # <CJK>
 0x500B # <CJK>
 0x500D # <CJK>
-0x500F # <CJK>
-0x5011 # <CJK>
 0x5012 # <CJK>
-0x5014 # <CJK>
-0x5016 # <CJK>
 0x5019 # <CJK>
-0x501A # <CJK>
 0x501F # <CJK>
-0x5021 # <CJK>
 0x5023 # <CJK>
 0x5024 # <CJK>
-0x5025 # <CJK>
-0x5026 # <CJK>
-0x5028 # <CJK>
-0x5029 # <CJK>
-0x502A # <CJK>
 0x502B # <CJK>
-0x502C # <CJK>
-0x502D # <CJK>
-0x5036 # <CJK>
 0x5039 # <CJK>
-0x5043 # <CJK>
-0x5047 # <CJK>
-0x5048 # <CJK>
 0x5049 # <CJK>
 0x504F # <CJK>
-0x5050 # <CJK>
-0x5055 # <CJK>
-0x5056 # <CJK>
-0x505A # <CJK>
 0x505C # <CJK>
 0x5065 # <CJK>
-0x506C # <CJK>
-0x5072 # <CJK>
 0x5074 # <CJK>
 0x5075 # <CJK>
 0x5076 # <CJK>
-0x5078 # <CJK>
 0x507D # <CJK>
-0x5080 # <CJK>
-0x5085 # <CJK>
 0x508D # <CJK>
 0x5091 # <CJK>
 0x5098 # <CJK>
 0x5099 # <CJK>
-0x509A # <CJK>
 0x50AC # <CJK>
-0x50AD # <CJK>
 0x50B2 # <CJK>
-0x50B3 # <CJK>
-0x50B4 # <CJK>
 0x50B5 # <CJK>
 0x50B7 # <CJK>
 0x50BE # <CJK>
-0x50C2 # <CJK>
 0x50C5 # <CJK>
-0x50C9 # <CJK>
-0x50CA # <CJK>
 0x50CD # <CJK>
 0x50CF # <CJK>
-0x50D1 # <CJK>
 0x50D5 # <CJK>
-0x50D6 # <CJK>
 0x50DA # <CJK>
-0x50DE # <CJK>
-0x50E3 # <CJK>
-0x50E5 # <CJK>
 0x50E7 # <CJK>
-0x50ED # <CJK>
-0x50EE # <CJK>
-0x50F5 # <CJK>
-0x50F9 # <CJK>
-0x50FB # <CJK>
 0x5100 # <CJK>
-0x5101 # <CJK>
-0x5102 # <CJK>
 0x5104 # <CJK>
-0x5109 # <CJK>
 0x5112 # <CJK>
-0x5114 # <CJK>
-0x5115 # <CJK>
-0x5116 # <CJK>
-0x5118 # <CJK>
-0x511A # <CJK>
 0x511F # <CJK>
-0x5121 # <CJK>
 0x512A # <CJK>
-0x5132 # <CJK>
-0x5137 # <CJK>
-0x513A # <CJK>
-0x513B # <CJK>
-0x513C # <CJK>
-0x513F # <CJK>
-0x5140 # <CJK>
-0x5141 # <CJK>
 0x5143 # <CJK>
 0x5144 # <CJK>
 0x5145 # <CJK>
 0x5146 # <CJK>
-0x5147 # <CJK>
 0x5148 # <CJK>
 0x5149 # <CJK>
 0x514B # <CJK>
-0x514C # <CJK>
 0x514D # <CJK>
-0x514E # <CJK>
 0x5150 # <CJK>
-0x5152 # <CJK>
-0x5154 # <CJK>
 0x515A # <CJK>
-0x515C # <CJK>
-0x5162 # <CJK>
 0x5165 # <CJK>
 0x5168 # <CJK>
-0x5169 # <CJK>
-0x516A # <CJK>
 0x516B # <CJK>
 0x516C # <CJK>
 0x516D # <CJK>
-0x516E # <CJK>
 0x5171 # <CJK>
 0x5175 # <CJK>
-0x5176 # <CJK>
 0x5177 # <CJK>
 0x5178 # <CJK>
 0x517C # <CJK>
-0x5180 # <CJK>
-0x5182 # <CJK>
 0x5185 # <CJK>
 0x5186 # <CJK>
-0x5189 # <CJK>
 0x518A # <CJK>
-0x518C # <CJK>
 0x518D # <CJK>
-0x518F # <CJK>
-0x5190 # <CJK>
-0x5191 # <CJK>
 0x5192 # <CJK>
-0x5193 # <CJK>
-0x5195 # <CJK>
-0x5196 # <CJK>
 0x5197 # <CJK>
 0x5199 # <CJK>
 0x51A0 # <CJK>
-0x51A2 # <CJK>
-0x51A4 # <CJK>
 0x51A5 # <CJK>
-0x51A6 # <CJK>
-0x51A8 # <CJK>
-0x51A9 # <CJK>
-0x51AA # <CJK>
-0x51AB # <CJK>
 0x51AC # <CJK>
-0x51B0 # <CJK>
-0x51B1 # <CJK>
-0x51B2 # <CJK>
-0x51B3 # <CJK>
-0x51B4 # <CJK>
-0x51B5 # <CJK>
 0x51B6 # <CJK>
 0x51B7 # <CJK>
-0x51BD # <CJK>
 0x51C4 # <CJK>
-0x51C5 # <CJK>
 0x51C6 # <CJK>
-0x51C9 # <CJK>
-0x51CB # <CJK>
-0x51CC # <CJK>
 0x51CD # <CJK>
-0x51D6 # <CJK>
-0x51DB # <CJK>
-#0x51DC        # <CJK> # not in kochi fonts
 0x51DD # <CJK>
-0x51E0 # <CJK>
 0x51E1 # <CJK>
 0x51E6 # <CJK>
-0x51E7 # <CJK>
-0x51E9 # <CJK>
-0x51EA # <CJK>
-0x51ED # <CJK>
-0x51F0 # <CJK>
-0x51F1 # <CJK>
-0x51F5 # <CJK>
 0x51F6 # <CJK>
 0x51F8 # <CJK>
 0x51F9 # <CJK>
 0x51FA # <CJK>
-0x51FD # <CJK>
-0x51FE # <CJK>
 0x5200 # <CJK>
 0x5203 # <CJK>
-0x5204 # <CJK>
 0x5206 # <CJK>
 0x5207 # <CJK>
 0x5208 # <CJK>
 0x520A # <CJK>
-0x520B # <CJK>
-0x520E # <CJK>
 0x5211 # <CJK>
-0x5214 # <CJK>
 0x5217 # <CJK>
 0x521D # <CJK>
 0x5224 # <CJK>
 0x5225 # <CJK>
-0x5227 # <CJK>
 0x5229 # <CJK>
-0x522A # <CJK>
-0x522E # <CJK>
 0x5230 # <CJK>
-0x5233 # <CJK>
 0x5236 # <CJK>
 0x5237 # <CJK>
 0x5238 # <CJK>
 0x5239 # <CJK>
 0x523A # <CJK>
 0x523B # <CJK>
-0x5243 # <CJK>
-0x5244 # <CJK>
 0x5247 # <CJK>
 0x524A # <CJK>
-0x524B # <CJK>
-0x524C # <CJK>
 0x524D # <CJK>
-0x524F # <CJK>
-0x5254 # <CJK>
 0x5256 # <CJK>
 0x525B # <CJK>
-0x525E # <CJK>
+#0x525D        # <CJK> # not in sazanami gothic/mincho, DroidSansJapanese
 0x5263 # <CJK>
 0x5264 # <CJK>
-0x5265 # <CJK>
-0x5269 # <CJK>
-0x526A # <CJK>
 0x526F # <CJK>
 0x5270 # <CJK>
-0x5271 # <CJK>
 0x5272 # <CJK>
-0x5273 # <CJK>
-0x5274 # <CJK>
 0x5275 # <CJK>
-0x527D # <CJK>
-0x527F # <CJK>
-0x5283 # <CJK>
 0x5287 # <CJK>
-0x5288 # <CJK>
-0x5289 # <CJK>
-0x528D # <CJK>
-0x5291 # <CJK>
-0x5292 # <CJK>
-0x5294 # <CJK>
 0x529B # <CJK>
 0x529F # <CJK>
 0x52A0 # <CJK>
 0x52A3 # <CJK>
 0x52A9 # <CJK>
 0x52AA # <CJK>
-0x52AB # <CJK>
-0x52AC # <CJK>
-0x52AD # <CJK>
 0x52B1 # <CJK>
 0x52B4 # <CJK>
-0x52B5 # <CJK>
 0x52B9 # <CJK>
-0x52BC # <CJK>
 0x52BE # <CJK>
-0x52C1 # <CJK>
 0x52C3 # <CJK>
 0x52C5 # <CJK>
 0x52C7 # <CJK>
 0x52C9 # <CJK>
-0x52CD # <CJK>
-0x52D2 # <CJK>
 0x52D5 # <CJK>
-0x52D7 # <CJK>
 0x52D8 # <CJK>
 0x52D9 # <CJK>
 0x52DD # <CJK>
-0x52DE # <CJK>
 0x52DF # <CJK>
-0x52E0 # <CJK>
 0x52E2 # <CJK>
-0x52E3 # <CJK>
 0x52E4 # <CJK>
-0x52E6 # <CJK>
 0x52E7 # <CJK>
 0x52F2 # <CJK>
-0x52F3 # <CJK>
-0x52F5 # <CJK>
-0x52F8 # <CJK>
-0x52F9 # <CJK>
-0x52FA # <CJK>
 0x52FE # <CJK>
-0x52FF # <CJK>
-0x5301 # <CJK>
 0x5302 # <CJK>
 0x5305 # <CJK>
-0x5306 # <CJK>
-0x5308 # <CJK>
-0x530D # <CJK>
-0x530F # <CJK>
-0x5310 # <CJK>
-0x5315 # <CJK>
 0x5316 # <CJK>
 0x5317 # <CJK>
-0x5319 # <CJK>
-0x531A # <CJK>
-0x531D # <CJK>
 0x5320 # <CJK>
-0x5321 # <CJK>
-0x5323 # <CJK>
-0x532A # <CJK>
-0x532F # <CJK>
-0x5331 # <CJK>
-0x5333 # <CJK>
-0x5338 # <CJK>
 0x5339 # <CJK>
 0x533A # <CJK>
 0x533B # <CJK>
 0x533F # <CJK>
-0x5340 # <CJK>
 0x5341 # <CJK>
 0x5343 # <CJK>
-0x5345 # <CJK>
-0x5346 # <CJK>
 0x5347 # <CJK>
 0x5348 # <CJK>
-0x5349 # <CJK>
 0x534A # <CJK>
-0x534D # <CJK>
 0x5351 # <CJK>
 0x5352 # <CJK>
 0x5353 # <CJK>
 0x5357 # <CJK>
 0x5358 # <CJK>
 0x535A # <CJK>
-0x535C # <CJK>
-0x535E # <CJK>
 0x5360 # <CJK>
-0x5366 # <CJK>
-0x5369 # <CJK>
-0x536E # <CJK>
-0x536F # <CJK>
 0x5370 # <CJK>
 0x5371 # <CJK>
 0x5373 # <CJK>
 0x5374 # <CJK>
 0x5375 # <CJK>
-0x5377 # <CJK>
 0x5378 # <CJK>
-0x537B # <CJK>
-0x537F # <CJK>
-0x5382 # <CJK>
 0x5384 # <CJK>
-0x5396 # <CJK>
 0x5398 # <CJK>
 0x539A # <CJK>
 0x539F # <CJK>
-0x53A0 # <CJK>
-0x53A5 # <CJK>
-0x53A6 # <CJK>
-0x53A8 # <CJK>
-0x53A9 # <CJK>
-0x53AD # <CJK>
-0x53AE # <CJK>
-0x53B0 # <CJK>
 0x53B3 # <CJK>
-0x53B6 # <CJK>
 0x53BB # <CJK>
 0x53C2 # <CJK>
-0x53C3 # <CJK>
 0x53C8 # <CJK>
-0x53C9 # <CJK>
 0x53CA # <CJK>
 0x53CB # <CJK>
 0x53CC # <CJK>
 0x53D6 # <CJK>
 0x53D7 # <CJK>
 0x53D9 # <CJK>
-0x53DB # <CJK>
-0x53DF # <CJK>
-0x53E1 # <CJK>
-0x53E2 # <CJK>
 0x53E3 # <CJK>
 0x53E4 # <CJK>
 0x53E5 # <CJK>
-0x53E8 # <CJK>
-0x53E9 # <CJK>
-0x53EA # <CJK>
 0x53EB # <CJK>
 0x53EC # <CJK>
-0x53ED # <CJK>
-0x53EE # <CJK>
 0x53EF # <CJK>
 0x53F0 # <CJK>
-0x53F1 # <CJK>
 0x53F2 # <CJK>
 0x53F3 # <CJK>
-0x53F6 # <CJK>
 0x53F7 # <CJK>
 0x53F8 # <CJK>
-0x53FA # <CJK>
-0x5401 # <CJK>
-0x5403 # <CJK>
 0x5404 # <CJK>
 0x5408 # <CJK>
 0x5409 # <CJK>
-0x540A # <CJK>
-0x540B # <CJK>
 0x540C # <CJK>
 0x540D # <CJK>
 0x540E # <CJK>
 0x5410 # <CJK>
 0x5411 # <CJK>
 0x541B # <CJK>
-0x541D # <CJK>
 0x541F # <CJK>
-0x5420 # <CJK>
 0x5426 # <CJK>
-0x5429 # <CJK>
 0x542B # <CJK>
-0x542C # <CJK>
-0x542D # <CJK>
-0x542E # <CJK>
-0x5436 # <CJK>
 0x5438 # <CJK>
 0x5439 # <CJK>
-0x543B # <CJK>
-0x543C # <CJK>
-0x543D # <CJK>
-0x543E # <CJK>
-0x5440 # <CJK>
 0x5442 # <CJK>
-0x5446 # <CJK>
 0x5448 # <CJK>
 0x5449 # <CJK>
 0x544A # <CJK>
-0x544E # <CJK>
-0x5451 # <CJK>
-0x545F # <CJK>
 0x5468 # <CJK>
 0x546A # <CJK>
-0x5470 # <CJK>
-0x5471 # <CJK>
 0x5473 # <CJK>
-0x5475 # <CJK>
-0x5476 # <CJK>
-0x5477 # <CJK>
-0x547B # <CJK>
 0x547C # <CJK>
 0x547D # <CJK>
-0x5480 # <CJK>
-0x5484 # <CJK>
-0x5486 # <CJK>
-0x548B # <CJK>
 0x548C # <CJK>
-0x548E # <CJK>
-0x548F # <CJK>
-0x5490 # <CJK>
-0x5492 # <CJK>
-0x54A2 # <CJK>
-0x54A4 # <CJK>
-0x54A5 # <CJK>
-0x54A8 # <CJK>
-0x54AB # <CJK>
-0x54AC # <CJK>
-0x54AF # <CJK>
 0x54B2 # <CJK>
-0x54B3 # <CJK>
-0x54B8 # <CJK>
-0x54BC # <CJK>
 0x54BD # <CJK>
-0x54BE # <CJK>
 0x54C0 # <CJK>
 0x54C1 # <CJK>
-0x54C2 # <CJK>
-0x54C4 # <CJK>
-0x54C7 # <CJK>
-0x54C8 # <CJK>
-0x54C9 # <CJK>
-0x54D8 # <CJK>
 0x54E1 # <CJK>
-0x54E2 # <CJK>
-0x54E5 # <CJK>
-0x54E6 # <CJK>
-0x54E8 # <CJK>
-0x54E9 # <CJK>
-0x54ED # <CJK>
-0x54EE # <CJK>
 0x54F2 # <CJK>
 0x54FA # <CJK>
-0x54FD # <CJK>
 0x5504 # <CJK>
 0x5506 # <CJK>
 0x5507 # <CJK>
-0x550F # <CJK>
 0x5510 # <CJK>
-0x5514 # <CJK>
-0x5516 # <CJK>
-0x552E # <CJK>
 0x552F # <CJK>
 0x5531 # <CJK>
-0x5533 # <CJK>
-0x5538 # <CJK>
-0x5539 # <CJK>
 0x553E # <CJK>
-0x5540 # <CJK>
-0x5544 # <CJK>
-0x5545 # <CJK>
 0x5546 # <CJK>
-0x554C # <CJK>
 0x554F # <CJK>
 0x5553 # <CJK>
-0x5556 # <CJK>
-0x5557 # <CJK>
-0x555C # <CJK>
-0x555D # <CJK>
-0x5563 # <CJK>
-0x557B # <CJK>
-0x557C # <CJK>
-0x557E # <CJK>
-0x5580 # <CJK>
-0x5583 # <CJK>
 0x5584 # <CJK>
-0x5587 # <CJK>
 0x5589 # <CJK>
-0x558A # <CJK>
-0x558B # <CJK>
-0x5598 # <CJK>
-0x5599 # <CJK>
 0x559A # <CJK>
 0x559C # <CJK>
 0x559D # <CJK>
-0x559E # <CJK>
-0x559F # <CJK>
-0x55A7 # <CJK>
-0x55A8 # <CJK>
 0x55A9 # <CJK>
 0x55AA # <CJK>
 0x55AB # <CJK>
-0x55AC # <CJK>
-0x55AE # <CJK>
-0x55B0 # <CJK>
 0x55B6 # <CJK>
-0x55C4 # <CJK>
 0x55C5 # <CJK>
-0x55C7 # <CJK>
-0x55D4 # <CJK>
-0x55DA # <CJK>
-0x55DC # <CJK>
-0x55DF # <CJK>
 0x55E3 # <CJK>
-0x55E4 # <CJK>
-0x55F7 # <CJK>
-0x55F9 # <CJK>
-0x55FD # <CJK>
-0x55FE # <CJK>
 0x5606 # <CJK>
-0x5609 # <CJK>
-0x5614 # <CJK>
-0x5616 # <CJK>
-0x5617 # <CJK>
-0x5618 # <CJK>
-0x561B # <CJK>
-0x5629 # <CJK>
-0x562F # <CJK>
 0x5631 # <CJK>
 0x5632 # <CJK>
-0x5634 # <CJK>
-0x5636 # <CJK>
-0x5638 # <CJK>
-0x5642 # <CJK>
-0x564C # <CJK>
-0x564E # <CJK>
-0x5650 # <CJK>
-0x565B # <CJK>
-0x5664 # <CJK>
 0x5668 # <CJK>
-0x566A # <CJK>
-0x566B # <CJK>
-0x566C # <CJK>
 0x5674 # <CJK>
-0x5678 # <CJK>
-0x567A # <CJK>
-0x5680 # <CJK>
-0x5686 # <CJK>
 0x5687 # <CJK>
-0x568A # <CJK>
-0x568F # <CJK>
-0x5694 # <CJK>
-0x56A0 # <CJK>
-0x56A2 # <CJK>
-0x56A5 # <CJK>
-0x56AE # <CJK>
-0x56B4 # <CJK>
-0x56B6 # <CJK>
-0x56BC # <CJK>
-0x56C0 # <CJK>
-0x56C1 # <CJK>
-0x56C2 # <CJK>
-0x56C3 # <CJK>
-0x56C8 # <CJK>
-0x56CE # <CJK>
-0x56D1 # <CJK>
-0x56D3 # <CJK>
-0x56D7 # <CJK>
-0x56D8 # <CJK>
 0x56DA # <CJK>
 0x56DB # <CJK>
 0x56DE # <CJK>
 0x56E0 # <CJK>
 0x56E3 # <CJK>
-0x56EE # <CJK>
 0x56F0 # <CJK>
 0x56F2 # <CJK>
 0x56F3 # <CJK>
-0x56F9 # <CJK>
 0x56FA # <CJK>
 0x56FD # <CJK>
-0x56FF # <CJK>
-0x5700 # <CJK>
-0x5703 # <CJK>
-0x5704 # <CJK>
-0x5708 # <CJK>
-0x5709 # <CJK>
-0x570B # <CJK>
-0x570D # <CJK>
 0x570F # <CJK>
 0x5712 # <CJK>
-0x5713 # <CJK>
-0x5716 # <CJK>
-0x5718 # <CJK>
-0x571C # <CJK>
 0x571F # <CJK>
-0x5726 # <CJK>
 0x5727 # <CJK>
 0x5728 # <CJK>
-0x572D # <CJK>
 0x5730 # <CJK>
-0x5737 # <CJK>
-0x5738 # <CJK>
-0x573B # <CJK>
-0x5740 # <CJK>
 0x5742 # <CJK>
 0x5747 # <CJK>
 0x574A # <CJK>
-0x574E # <CJK>
-0x574F # <CJK>
-0x5750 # <CJK>
 0x5751 # <CJK>
-0x5761 # <CJK>
-0x5764 # <CJK>
-0x5766 # <CJK>
-0x5769 # <CJK>
 0x576A # <CJK>
-0x577F # <CJK>
 0x5782 # <CJK>
-0x5788 # <CJK>
-0x5789 # <CJK>
 0x578B # <CJK>
-0x5793 # <CJK>
-0x57A0 # <CJK>
-0x57A2 # <CJK>
 0x57A3 # <CJK>
-0x57A4 # <CJK>
-0x57AA # <CJK>
-0x57B0 # <CJK>
-0x57B3 # <CJK>
-0x57C0 # <CJK>
-0x57C3 # <CJK>
-0x57C6 # <CJK>
 0x57CB # <CJK>
 0x57CE # <CJK>
-0x57D2 # <CJK>
-0x57D3 # <CJK>
-0x57D4 # <CJK>
-0x57D6 # <CJK>
-0x57DC # <CJK>
 0x57DF # <CJK>
-0x57E0 # <CJK>
-0x57E3 # <CJK>
-0x57F4 # <CJK>
 0x57F7 # <CJK>
 0x57F9 # <CJK>
 0x57FA # <CJK>
 0x5802 # <CJK>
 0x5805 # <CJK>
 0x5806 # <CJK>
-0x580A # <CJK>
-0x580B # <CJK>
 0x5815 # <CJK>
-0x5819 # <CJK>
-0x581D # <CJK>
-0x5821 # <CJK>
 0x5824 # <CJK>
 0x582A # <CJK>
-0x582F # <CJK>
-0x5830 # <CJK>
 0x5831 # <CJK>
 0x5834 # <CJK>
-0x5835 # <CJK>
-0x583A # <CJK>
-0x583D # <CJK>
 0x5840 # <CJK>
 0x5841 # <CJK>
 0x584A # <CJK>
-0x584B # <CJK>
 0x5851 # <CJK>
-0x5852 # <CJK>
 0x5854 # <CJK>
 0x5857 # <CJK>
-0x5858 # <CJK>
-0x5859 # <CJK>
 0x585A # <CJK>
 0x585E # <CJK>
-0x5862 # <CJK>
+#0x5861        # <CJK> # not in DroidSansJapanese
 0x5869 # <CJK>
-0x586B # <CJK>
-0x5870 # <CJK>
-0x5872 # <CJK>
-0x5875 # <CJK>
-0x5879 # <CJK>
 0x587E # <CJK>
 0x5883 # <CJK>
-0x5885 # <CJK>
 0x5893 # <CJK>
 0x5897 # <CJK>
 0x589C # <CJK>
-0x589F # <CJK>
 0x58A8 # <CJK>
-0x58AB # <CJK>
-0x58AE # <CJK>
 0x58B3 # <CJK>
-0x58B8 # <CJK>
-0x58B9 # <CJK>
-0x58BA # <CJK>
-0x58BB # <CJK>
 0x58BE # <CJK>
 0x58C1 # <CJK>
-0x58C5 # <CJK>
 0x58C7 # <CJK>
 0x58CA # <CJK>
 0x58CC # <CJK>
-0x58D1 # <CJK>
-0x58D3 # <CJK>
-0x58D5 # <CJK>
-0x58D7 # <CJK>
-0x58D8 # <CJK>
-0x58D9 # <CJK>
-0x58DC # <CJK>
-0x58DE # <CJK>
-0x58DF # <CJK>
-0x58E4 # <CJK>
-0x58E5 # <CJK>
 0x58EB # <CJK>
-0x58EC # <CJK>
 0x58EE # <CJK>
-0x58EF # <CJK>
 0x58F0 # <CJK>
 0x58F1 # <CJK>
 0x58F2 # <CJK>
-0x58F7 # <CJK>
-0x58F9 # <CJK>
-0x58FA # <CJK>
-0x58FB # <CJK>
-0x58FC # <CJK>
-0x58FD # <CJK>
-0x5902 # <CJK>
 0x5909 # <CJK>
-0x590A # <CJK>
 0x590F # <CJK>
-0x5910 # <CJK>
 0x5915 # <CJK>
 0x5916 # <CJK>
-0x5918 # <CJK>
-0x5919 # <CJK>
 0x591A # <CJK>
-0x591B # <CJK>
 0x591C # <CJK>
 0x5922 # <CJK>
-0x5925 # <CJK>
 0x5927 # <CJK>
 0x5929 # <CJK>
 0x592A # <CJK>
 0x592B # <CJK>
-0x592C # <CJK>
-0x592D # <CJK>
 0x592E # <CJK>
 0x5931 # <CJK>
-0x5932 # <CJK>
-0x5937 # <CJK>
-0x5938 # <CJK>
-0x593E # <CJK>
-0x5944 # <CJK>
 0x5947 # <CJK>
 0x5948 # <CJK>
 0x5949 # <CJK>
-0x594E # <CJK>
 0x594F # <CJK>
-0x5950 # <CJK>
 0x5951 # <CJK>
 0x5954 # <CJK>
-0x5955 # <CJK>
-0x5957 # <CJK>
-0x5958 # <CJK>
-0x595A # <CJK>
-0x5960 # <CJK>
-0x5962 # <CJK>
 0x5965 # <CJK>
-0x5967 # <CJK>
 0x5968 # <CJK>
-0x5969 # <CJK>
 0x596A # <CJK>
-0x596C # <CJK>
 0x596E # <CJK>
 0x5973 # <CJK>
 0x5974 # <CJK>
-0x5978 # <CJK>
 0x597D # <CJK>
-0x5981 # <CJK>
 0x5982 # <CJK>
 0x5983 # <CJK>
 0x5984 # <CJK>
 0x598A # <CJK>
-0x598D # <CJK>
-0x5993 # <CJK>
 0x5996 # <CJK>
 0x5999 # <CJK>
-0x599B # <CJK>
-0x599D # <CJK>
-0x59A3 # <CJK>
 0x59A5 # <CJK>
 0x59A8 # <CJK>
 0x59AC # <CJK>
-0x59B2 # <CJK>
 0x59B9 # <CJK>
 0x59BB # <CJK>
-0x59BE # <CJK>
-0x59C6 # <CJK>
 0x59C9 # <CJK>
 0x59CB # <CJK>
-0x59D0 # <CJK>
-0x59D1 # <CJK>
 0x59D3 # <CJK>
 0x59D4 # <CJK>
-0x59D9 # <CJK>
-0x59DA # <CJK>
-0x59DC # <CJK>
-0x59E5 # <CJK>
-0x59E6 # <CJK>
-0x59E8 # <CJK>
-0x59EA # <CJK>
 0x59EB # <CJK>
-0x59F6 # <CJK>
 0x59FB # <CJK>
 0x59FF # <CJK>
 0x5A01 # <CJK>
-0x5A03 # <CJK>
-0x5A09 # <CJK>
-0x5A11 # <CJK>
 0x5A18 # <CJK>
-0x5A1A # <CJK>
-0x5A1C # <CJK>
-0x5A1F # <CJK>
 0x5A20 # <CJK>
-0x5A25 # <CJK>
-0x5A29 # <CJK>
 0x5A2F # <CJK>
-0x5A35 # <CJK>
-0x5A36 # <CJK>
-0x5A3C # <CJK>
-0x5A40 # <CJK>
-0x5A41 # <CJK>
 0x5A46 # <CJK>
-0x5A49 # <CJK>
 0x5A5A # <CJK>
-0x5A62 # <CJK>
 0x5A66 # <CJK>
-0x5A6A # <CJK>
-0x5A6C # <CJK>
 0x5A7F # <CJK>
 0x5A92 # <CJK>
-0x5A9A # <CJK>
 0x5A9B # <CJK>
-0x5ABC # <CJK>
-0x5ABD # <CJK>
-0x5ABE # <CJK>
 0x5AC1 # <CJK>
-0x5AC2 # <CJK>
 0x5AC9 # <CJK>
-0x5ACB # <CJK>
 0x5ACC # <CJK>
-0x5AD0 # <CJK>
-0x5AD6 # <CJK>
-0x5AD7 # <CJK>
 0x5AE1 # <CJK>
-0x5AE3 # <CJK>
-0x5AE6 # <CJK>
-0x5AE9 # <CJK>
-0x5AFA # <CJK>
-0x5AFB # <CJK>
-0x5B09 # <CJK>
-0x5B0B # <CJK>
-0x5B0C # <CJK>
-0x5B16 # <CJK>
 0x5B22 # <CJK>
-0x5B2A # <CJK>
-0x5B2C # <CJK>
-0x5B30 # <CJK>
-0x5B32 # <CJK>
-0x5B36 # <CJK>
-0x5B3E # <CJK>
-0x5B40 # <CJK>
-0x5B43 # <CJK>
-0x5B45 # <CJK>
 0x5B50 # <CJK>
-0x5B51 # <CJK>
 0x5B54 # <CJK>
-0x5B55 # <CJK>
 0x5B57 # <CJK>
 0x5B58 # <CJK>
-0x5B5A # <CJK>
-0x5B5B # <CJK>
-0x5B5C # <CJK>
 0x5B5D # <CJK>
-0x5B5F # <CJK>
 0x5B63 # <CJK>
 0x5B64 # <CJK>
-0x5B65 # <CJK>
 0x5B66 # <CJK>
-0x5B69 # <CJK>
 0x5B6B # <CJK>
-0x5B70 # <CJK>
-0x5B71 # <CJK>
-0x5B73 # <CJK>
-0x5B75 # <CJK>
-0x5B78 # <CJK>
-0x5B7A # <CJK>
-0x5B80 # <CJK>
-0x5B83 # <CJK>
 0x5B85 # <CJK>
 0x5B87 # <CJK>
 0x5B88 # <CJK>
 0x5B89 # <CJK>
-0x5B8B # <CJK>
 0x5B8C # <CJK>
-0x5B8D # <CJK>
-0x5B8F # <CJK>
-0x5B95 # <CJK>
 0x5B97 # <CJK>
 0x5B98 # <CJK>
 0x5B99 # <CJK>
 0x5BA2 # <CJK>
 0x5BA3 # <CJK>
 0x5BA4 # <CJK>
-0x5BA5 # <CJK>
-0x5BA6 # <CJK>
 0x5BAE # <CJK>
 0x5BB0 # <CJK>
 0x5BB3 # <CJK>
 0x5BB4 # <CJK>
 0x5BB5 # <CJK>
 0x5BB6 # <CJK>
-0x5BB8 # <CJK>
 0x5BB9 # <CJK>
 0x5BBF # <CJK>
 0x5BC2 # <CJK>
-0x5BC3 # <CJK>
 0x5BC4 # <CJK>
-0x5BC5 # <CJK>
 0x5BC6 # <CJK>
-0x5BC7 # <CJK>
-0x5BC9 # <CJK>
 0x5BCC # <CJK>
-0x5BD0 # <CJK>
 0x5BD2 # <CJK>
-0x5BD3 # <CJK>
-0x5BD4 # <CJK>
 0x5BDB # <CJK>
 0x5BDD # <CJK>
-0x5BDE # <CJK>
 0x5BDF # <CJK>
 0x5BE1 # <CJK>
-0x5BE2 # <CJK>
-0x5BE4 # <CJK>
-0x5BE5 # <CJK>
-0x5BE6 # <CJK>
 0x5BE7 # <CJK>
-0x5BE8 # <CJK>
 0x5BE9 # <CJK>
-0x5BEB # <CJK>
 0x5BEE # <CJK>
-0x5BF0 # <CJK>
-0x5BF3 # <CJK>
-0x5BF5 # <CJK>
-0x5BF6 # <CJK>
 0x5BF8 # <CJK>
 0x5BFA # <CJK>
 0x5BFE # <CJK>
 0x5C01 # <CJK>
 0x5C02 # <CJK>
 0x5C04 # <CJK>
-0x5C05 # <CJK>
 0x5C06 # <CJK>
-0x5C07 # <CJK>
-0x5C08 # <CJK>
 0x5C09 # <CJK>
 0x5C0A # <CJK>
 0x5C0B # <CJK>
-0x5C0D # <CJK>
 0x5C0E # <CJK>
 0x5C0F # <CJK>
 0x5C11 # <CJK>
-0x5C13 # <CJK>
-0x5C16 # <CJK>
 0x5C1A # <CJK>
-0x5C20 # <CJK>
-0x5C22 # <CJK>
-0x5C24 # <CJK>
-0x5C28 # <CJK>
-0x5C2D # <CJK>
 0x5C31 # <CJK>
-0x5C38 # <CJK>
-0x5C39 # <CJK>
 0x5C3A # <CJK>
 0x5C3B # <CJK>
 0x5C3C # <CJK>
 0x5C3E # <CJK>
 0x5C3F # <CJK>
 0x5C40 # <CJK>
-0x5C41 # <CJK>
 0x5C45 # <CJK>
-0x5C46 # <CJK>
 0x5C48 # <CJK>
 0x5C4A # <CJK>
 0x5C4B # <CJK>
-0x5C4D # <CJK>
-0x5C4E # <CJK>
-0x5C4F # <CJK>
-0x5C50 # <CJK>
-0x5C51 # <CJK>
-0x5C53 # <CJK>
 0x5C55 # <CJK>
 0x5C5E # <CJK>
-0x5C60 # <CJK>
-0x5C61 # <CJK>
 0x5C64 # <CJK>
 0x5C65 # <CJK>
-0x5C6C # <CJK>
-0x5C6E # <CJK>
 0x5C6F # <CJK>
 0x5C71 # <CJK>
-0x5C76 # <CJK>
-0x5C79 # <CJK>
-0x5C8C # <CJK>
 0x5C90 # <CJK>
-0x5C91 # <CJK>
-0x5C94 # <CJK>
 0x5CA1 # <CJK>
-0x5CA8 # <CJK>
 0x5CA9 # <CJK>
-0x5CAB # <CJK>
 0x5CAC # <CJK>
-0x5CB1 # <CJK>
 0x5CB3 # <CJK>
-0x5CB6 # <CJK>
-0x5CB7 # <CJK>
 0x5CB8 # <CJK>
-0x5CBB # <CJK>
-0x5CBC # <CJK>
-0x5CBE # <CJK>
-0x5CC5 # <CJK>
-0x5CC7 # <CJK>
-0x5CD9 # <CJK>
 0x5CE0 # <CJK>
 0x5CE1 # <CJK>
-0x5CE8 # <CJK>
-0x5CE9 # <CJK>
-0x5CEA # <CJK>
-0x5CED # <CJK>
-0x5CEF # <CJK>
 0x5CF0 # <CJK>
 0x5CF6 # <CJK>
-0x5CFA # <CJK>
-0x5CFB # <CJK>
-0x5CFD # <CJK>
 0x5D07 # <CJK>
-0x5D0B # <CJK>
 0x5D0E # <CJK>
-0x5D11 # <CJK>
-0x5D14 # <CJK>
-0x5D15 # <CJK>
 0x5D16 # <CJK>
-0x5D17 # <CJK>
-0x5D18 # <CJK>
-0x5D19 # <CJK>
-0x5D1A # <CJK>
-0x5D1B # <CJK>
-0x5D1F # <CJK>
-0x5D22 # <CJK>
 0x5D29 # <CJK>
-0x5D4B # <CJK>
-0x5D4C # <CJK>
-0x5D4E # <CJK>
 0x5D50 # <CJK>
-0x5D52 # <CJK>
-0x5D5C # <CJK>
-0x5D69 # <CJK>
-0x5D6C # <CJK>
-0x5D6F # <CJK>
-0x5D73 # <CJK>
-0x5D76 # <CJK>
-0x5D82 # <CJK>
-0x5D84 # <CJK>
-0x5D87 # <CJK>
-0x5D8B # <CJK>
-0x5D8C # <CJK>
-0x5D90 # <CJK>
-0x5D9D # <CJK>
-0x5DA2 # <CJK>
-0x5DAC # <CJK>
-0x5DAE # <CJK>
-0x5DB7 # <CJK>
-0x5DBA # <CJK>
-0x5DBC # <CJK>
-0x5DBD # <CJK>
-0x5DC9 # <CJK>
-0x5DCC # <CJK>
-0x5DCD # <CJK>
-0x5DD2 # <CJK>
-0x5DD3 # <CJK>
-0x5DD6 # <CJK>
-0x5DDB # <CJK>
 0x5DDD # <CJK>
 0x5DDE # <CJK>
 0x5DE1 # <CJK>
 0x5DE6 # <CJK>
 0x5DE7 # <CJK>
 0x5DE8 # <CJK>
-0x5DEB # <CJK>
 0x5DEE # <CJK>
 0x5DF1 # <CJK>
-0x5DF2 # <CJK>
-0x5DF3 # <CJK>
-0x5DF4 # <CJK>
-0x5DF5 # <CJK>
-0x5DF7 # <CJK>
 0x5DFB # <CJK>
-0x5DFD # <CJK>
 0x5DFE # <CJK>
 0x5E02 # <CJK>
 0x5E03 # <CJK>
 0x5E06 # <CJK>
-0x5E0B # <CJK>
 0x5E0C # <CJK>
-0x5E11 # <CJK>
-0x5E16 # <CJK>
-0x5E19 # <CJK>
-0x5E1A # <CJK>
-0x5E1B # <CJK>
 0x5E1D # <CJK>
 0x5E25 # <CJK>
 0x5E2B # <CJK>
 0x5E2F # <CJK>
 0x5E30 # <CJK>
 0x5E33 # <CJK>
-0x5E36 # <CJK>
-0x5E37 # <CJK>
 0x5E38 # <CJK>
 0x5E3D # <CJK>
-0x5E40 # <CJK>
-0x5E43 # <CJK>
-0x5E44 # <CJK>
 0x5E45 # <CJK>
-0x5E47 # <CJK>
-0x5E4C # <CJK>
-0x5E4E # <CJK>
-0x5E54 # <CJK>
 0x5E55 # <CJK>
-0x5E57 # <CJK>
-0x5E5F # <CJK>
-0x5E61 # <CJK>
-0x5E62 # <CJK>
 0x5E63 # <CJK>
-0x5E64 # <CJK>
 0x5E72 # <CJK>
 0x5E73 # <CJK>
 0x5E74 # <CJK>
-0x5E75 # <CJK>
-0x5E76 # <CJK>
 0x5E78 # <CJK>
 0x5E79 # <CJK>
-0x5E7A # <CJK>
 0x5E7B # <CJK>
 0x5E7C # <CJK>
 0x5E7D # <CJK>
 0x5E7E # <CJK>
-0x5E7F # <CJK>
 0x5E81 # <CJK>
 0x5E83 # <CJK>
-0x5E84 # <CJK>
-0x5E87 # <CJK>
 0x5E8A # <CJK>
 0x5E8F # <CJK>
 0x5E95 # <CJK>
-0x5E96 # <CJK>
 0x5E97 # <CJK>
-0x5E9A # <CJK>
 0x5E9C # <CJK>
-0x5EA0 # <CJK>
 0x5EA6 # <CJK>
 0x5EA7 # <CJK>
 0x5EAB # <CJK>
 0x5EAD # <CJK>
-0x5EB5 # <CJK>
 0x5EB6 # <CJK>
 0x5EB7 # <CJK>
 0x5EB8 # <CJK>
-0x5EC1 # <CJK>
-0x5EC2 # <CJK>
 0x5EC3 # <CJK>
-0x5EC8 # <CJK>
 0x5EC9 # <CJK>
 0x5ECA # <CJK>
-0x5ECF # <CJK>
-0x5ED0 # <CJK>
-0x5ED3 # <CJK>
-0x5ED6 # <CJK>
-0x5EDA # <CJK>
-0x5EDB # <CJK>
-0x5EDD # <CJK>
-0x5EDF # <CJK>
-0x5EE0 # <CJK>
-0x5EE1 # <CJK>
-0x5EE2 # <CJK>
-0x5EE3 # <CJK>
-0x5EE8 # <CJK>
-0x5EE9 # <CJK>
-0x5EEC # <CJK>
-0x5EF0 # <CJK>
-0x5EF1 # <CJK>
-0x5EF3 # <CJK>
-0x5EF4 # <CJK>
 0x5EF6 # <CJK>
 0x5EF7 # <CJK>
-0x5EF8 # <CJK>
 0x5EFA # <CJK>
-0x5EFB # <CJK>
-0x5EFC # <CJK>
-0x5EFE # <CJK>
-0x5EFF # <CJK>
 0x5F01 # <CJK>
-0x5F03 # <CJK>
 0x5F04 # <CJK>
-0x5F09 # <CJK>
 0x5F0A # <CJK>
-0x5F0B # <CJK>
-0x5F0C # <CJK>
-0x5F0D # <CJK>
 0x5F0F # <CJK>
 0x5F10 # <CJK>
-0x5F11 # <CJK>
 0x5F13 # <CJK>
 0x5F14 # <CJK>
 0x5F15 # <CJK>
-0x5F16 # <CJK>
-0x5F17 # <CJK>
-0x5F18 # <CJK>
-0x5F1B # <CJK>
 0x5F1F # <CJK>
 0x5F25 # <CJK>
 0x5F26 # <CJK>
 0x5F27 # <CJK>
-0x5F29 # <CJK>
-0x5F2D # <CJK>
-0x5F2F # <CJK>
 0x5F31 # <CJK>
 0x5F35 # <CJK>
 0x5F37 # <CJK>
-0x5F38 # <CJK>
-0x5F3C # <CJK>
 0x5F3E # <CJK>
-0x5F41 # <CJK>
-0x5F48 # <CJK>
-0x5F4A # <CJK>
-0x5F4C # <CJK>
-0x5F4E # <CJK>
-0x5F51 # <CJK>
 0x5F53 # <CJK>
-0x5F56 # <CJK>
-0x5F57 # <CJK>
 0x5F59 # <CJK>
-0x5F5C # <CJK>
-0x5F5D # <CJK>
-0x5F61 # <CJK>
 0x5F62 # <CJK>
-0x5F66 # <CJK>
 0x5F69 # <CJK>
-0x5F6A # <CJK>
 0x5F6B # <CJK>
-0x5F6C # <CJK>
-0x5F6D # <CJK>
 0x5F70 # <CJK>
 0x5F71 # <CJK>
-0x5F73 # <CJK>
-0x5F77 # <CJK>
 0x5F79 # <CJK>
 0x5F7C # <CJK>
-0x5F7F # <CJK>
 0x5F80 # <CJK>
 0x5F81 # <CJK>
-0x5F82 # <CJK>
-0x5F83 # <CJK>
 0x5F84 # <CJK>
 0x5F85 # <CJK>
-0x5F87 # <CJK>
-0x5F88 # <CJK>
-0x5F8A # <CJK>
 0x5F8B # <CJK>
 0x5F8C # <CJK>
 0x5F90 # <CJK>
-0x5F91 # <CJK>
 0x5F92 # <CJK>
 0x5F93 # <CJK>
 0x5F97 # <CJK>
-0x5F98 # <CJK>
-0x5F99 # <CJK>
-0x5F9E # <CJK>
-0x5FA0 # <CJK>
 0x5FA1 # <CJK>
-0x5FA8 # <CJK>
 0x5FA9 # <CJK>
 0x5FAA # <CJK>
-0x5FAD # <CJK>
 0x5FAE # <CJK>
 0x5FB3 # <CJK>
 0x5FB4 # <CJK>
 0x5FB9 # <CJK>
-0x5FBC # <CJK>
-0x5FBD # <CJK>
 0x5FC3 # <CJK>
 0x5FC5 # <CJK>
 0x5FCC # <CJK>
 0x5FCD # <CJK>
-0x5FD6 # <CJK>
 0x5FD7 # <CJK>
 0x5FD8 # <CJK>
 0x5FD9 # <CJK>
 0x5FDC # <CJK>
-0x5FDD # <CJK>
 0x5FE0 # <CJK>
-0x5FE4 # <CJK>
 0x5FEB # <CJK>
-0x5FF0 # <CJK>
-0x5FF1 # <CJK>
 0x5FF5 # <CJK>
-0x5FF8 # <CJK>
-0x5FFB # <CJK>
-0x5FFD # <CJK>
-0x5FFF # <CJK>
-0x600E # <CJK>
-0x600F # <CJK>
-0x6010 # <CJK>
 0x6012 # <CJK>
-0x6015 # <CJK>
 0x6016 # <CJK>
-0x6019 # <CJK>
-0x601B # <CJK>
-0x601C # <CJK>
 0x601D # <CJK>
 0x6020 # <CJK>
-0x6021 # <CJK>
 0x6025 # <CJK>
-0x6026 # <CJK>
 0x6027 # <CJK>
 0x6028 # <CJK>
-0x6029 # <CJK>
 0x602A # <CJK>
-0x602B # <CJK>
-0x602F # <CJK>
-0x6031 # <CJK>
-0x603A # <CJK>
-0x6041 # <CJK>
-0x6042 # <CJK>
-0x6043 # <CJK>
-0x6046 # <CJK>
-0x604A # <CJK>
 0x604B # <CJK>
-0x604D # <CJK>
 0x6050 # <CJK>
 0x6052 # <CJK>
-0x6055 # <CJK>
-0x6059 # <CJK>
-0x605A # <CJK>
-0x605F # <CJK>
-0x6060 # <CJK>
-0x6062 # <CJK>
 0x6063 # <CJK>
-0x6064 # <CJK>
 0x6065 # <CJK>
 0x6068 # <CJK>
 0x6069 # <CJK>
-0x606A # <CJK>
-0x606B # <CJK>
-0x606C # <CJK>
 0x606D # <CJK>
 0x606F # <CJK>
-0x6070 # <CJK>
 0x6075 # <CJK>
-0x6077 # <CJK>
-0x6081 # <CJK>
-0x6083 # <CJK>
-0x6084 # <CJK>
-0x6089 # <CJK>
-0x608B # <CJK>
-0x608C # <CJK>
-0x608D # <CJK>
-0x6092 # <CJK>
 0x6094 # <CJK>
-0x6096 # <CJK>
-0x6097 # <CJK>
-0x609A # <CJK>
-0x609B # <CJK>
 0x609F # <CJK>
 0x60A0 # <CJK>
 0x60A3 # <CJK>
 0x60A6 # <CJK>
-0x60A7 # <CJK>
 0x60A9 # <CJK>
 0x60AA # <CJK>
 0x60B2 # <CJK>
-0x60B3 # <CJK>
-0x60B4 # <CJK>
-0x60B5 # <CJK>
-0x60B6 # <CJK>
-0x60B8 # <CJK>
 0x60BC # <CJK>
-0x60BD # <CJK>
 0x60C5 # <CJK>
-0x60C6 # <CJK>
-0x60C7 # <CJK>
 0x60D1 # <CJK>
-0x60D3 # <CJK>
-0x60D8 # <CJK>
-0x60DA # <CJK>
 0x60DC # <CJK>
-0x60DF # <CJK>
-0x60E0 # <CJK>
-0x60E1 # <CJK>
-0x60E3 # <CJK>
 0x60E7 # <CJK>
 0x60E8 # <CJK>
 0x60F0 # <CJK>
-0x60F1 # <CJK>
 0x60F3 # <CJK>
-0x60F4 # <CJK>
-0x60F6 # <CJK>
-0x60F7 # <CJK>
-0x60F9 # <CJK>
-0x60FA # <CJK>
-0x60FB # <CJK>
-0x6100 # <CJK>
 0x6101 # <CJK>
-0x6103 # <CJK>
-0x6106 # <CJK>
-0x6108 # <CJK>
 0x6109 # <CJK>
-0x610D # <CJK>
-0x610E # <CJK>
 0x610F # <CJK>
-0x6115 # <CJK>
 0x611A # <CJK>
 0x611B # <CJK>
 0x611F # <CJK>
-0x6121 # <CJK>
-0x6127 # <CJK>
-0x6128 # <CJK>
-0x612C # <CJK>
-0x6134 # <CJK>
-0x613C # <CJK>
-0x613D # <CJK>
-0x613E # <CJK>
-0x613F # <CJK>
-0x6142 # <CJK>
 0x6144 # <CJK>
-0x6147 # <CJK>
 0x6148 # <CJK>
-0x614A # <CJK>
 0x614B # <CJK>
 0x614C # <CJK>
-0x614D # <CJK>
 0x614E # <CJK>
-0x6153 # <CJK>
 0x6155 # <CJK>
-0x6158 # <CJK>
-0x6159 # <CJK>
-0x615A # <CJK>
-0x615D # <CJK>
-0x615F # <CJK>
 0x6162 # <CJK>
 0x6163 # <CJK>
-0x6165 # <CJK>
-0x6167 # <CJK>
 0x6168 # <CJK>
-0x616B # <CJK>
 0x616E # <CJK>
-0x616F # <CJK>
 0x6170 # <CJK>
-0x6171 # <CJK>
-0x6173 # <CJK>
-0x6174 # <CJK>
-0x6175 # <CJK>
 0x6176 # <CJK>
-0x6177 # <CJK>
-0x617E # <CJK>
 0x6182 # <CJK>
-0x6187 # <CJK>
-0x618A # <CJK>
 0x618E # <CJK>
-0x6190 # <CJK>
-0x6191 # <CJK>
-0x6194 # <CJK>
-0x6196 # <CJK>
-0x6199 # <CJK>
-0x619A # <CJK>
 0x61A4 # <CJK>
 0x61A7 # <CJK>
 0x61A9 # <CJK>
-0x61AB # <CJK>
 0x61AC # <CJK>
-0x61AE # <CJK>
 0x61B2 # <CJK>
 0x61B6 # <CJK>
-0x61BA # <CJK>
 0x61BE # <CJK>
-0x61C3 # <CJK>
-0x61C6 # <CJK>
 0x61C7 # <CJK>
-0x61C8 # <CJK>
-0x61C9 # <CJK>
-0x61CA # <CJK>
-0x61CB # <CJK>
-0x61CC # <CJK>
-0x61CD # <CJK>
 0x61D0 # <CJK>
-0x61E3 # <CJK>
-0x61E6 # <CJK>
 0x61F2 # <CJK>
-0x61F4 # <CJK>
-0x61F6 # <CJK>
-0x61F7 # <CJK>
 0x61F8 # <CJK>
-0x61FA # <CJK>
-0x61FC # <CJK>
-0x61FD # <CJK>
-0x61FE # <CJK>
-0x61FF # <CJK>
-0x6200 # <CJK>
-0x6208 # <CJK>
-0x6209 # <CJK>
-0x620A # <CJK>
-0x620C # <CJK>
-0x620D # <CJK>
-0x620E # <CJK>
 0x6210 # <CJK>
 0x6211 # <CJK>
 0x6212 # <CJK>
-0x6214 # <CJK>
-0x6216 # <CJK>
 0x621A # <CJK>
-0x621B # <CJK>
-0x621D # <CJK>
-0x621E # <CJK>
-0x621F # <CJK>
-0x6221 # <CJK>
 0x6226 # <CJK>
-0x622A # <CJK>
-0x622E # <CJK>
 0x622F # <CJK>
-0x6230 # <CJK>
-0x6232 # <CJK>
-0x6233 # <CJK>
 0x6234 # <CJK>
 0x6238 # <CJK>
 0x623B # <CJK>
 0x623F # <CJK>
 0x6240 # <CJK>
-0x6241 # <CJK>
 0x6247 # <CJK>
-0x6248 # <CJK>
 0x6249 # <CJK>
 0x624B # <CJK>
 0x624D # <CJK>
-0x624E # <CJK>
 0x6253 # <CJK>
 0x6255 # <CJK>
-0x6258 # <CJK>
-0x625B # <CJK>
-0x625E # <CJK>
-0x6260 # <CJK>
-0x6263 # <CJK>
-0x6268 # <CJK>
-0x626E # <CJK>
 0x6271 # <CJK>
 0x6276 # <CJK>
 0x6279 # <CJK>
-0x627C # <CJK>
-0x627E # <CJK>
 0x627F # <CJK>
 0x6280 # <CJK>
-0x6282 # <CJK>
-0x6283 # <CJK>
 0x6284 # <CJK>
-0x6289 # <CJK>
 0x628A # <CJK>
 0x6291 # <CJK>
-0x6292 # <CJK>
-0x6293 # <CJK>
-0x6294 # <CJK>
 0x6295 # <CJK>
-0x6296 # <CJK>
 0x6297 # <CJK>
 0x6298 # <CJK>
-0x629B # <CJK>
 0x629C # <CJK>
 0x629E # <CJK>
 0x62AB # <CJK>
-0x62AC # <CJK>
 0x62B1 # <CJK>
 0x62B5 # <CJK>
 0x62B9 # <CJK>
-0x62BB # <CJK>
 0x62BC # <CJK>
 0x62BD # <CJK>
-0x62C2 # <CJK>
 0x62C5 # <CJK>
-0x62C6 # <CJK>
-0x62C7 # <CJK>
-0x62C8 # <CJK>
 0x62C9 # <CJK>
-0x62CA # <CJK>
-0x62CC # <CJK>
 0x62CD # <CJK>
-0x62CF # <CJK>
 0x62D0 # <CJK>
-0x62D1 # <CJK>
 0x62D2 # <CJK>
 0x62D3 # <CJK>
-0x62D4 # <CJK>
-0x62D7 # <CJK>
 0x62D8 # <CJK>
 0x62D9 # <CJK>
 0x62DB # <CJK>
-0x62DC # <CJK>
 0x62DD # <CJK>
 0x62E0 # <CJK>
 0x62E1 # <CJK>
 0x62EC # <CJK>
 0x62ED # <CJK>
-0x62EE # <CJK>
-0x62EF # <CJK>
-0x62F1 # <CJK>
 0x62F3 # <CJK>
-0x62F5 # <CJK>
 0x62F6 # <CJK>
 0x62F7 # <CJK>
 0x62FE # <CJK>
-0x62FF # <CJK>
 0x6301 # <CJK>
-0x6302 # <CJK>
 0x6307 # <CJK>
-0x6308 # <CJK>
-0x6309 # <CJK>
-0x630C # <CJK>
 0x6311 # <CJK>
 0x6319 # <CJK>
 0x631F # <CJK>
-0x6327 # <CJK>
 0x6328 # <CJK>
 0x632B # <CJK>
 0x632F # <CJK>
-0x633A # <CJK>
-0x633D # <CJK>
-0x633E # <CJK>
 0x633F # <CJK>
 0x6349 # <CJK>
-0x634C # <CJK>
-0x634D # <CJK>
-0x634F # <CJK>
-0x6350 # <CJK>
 0x6355 # <CJK>
 0x6357 # <CJK>
 0x635C # <CJK>
-0x6367 # <CJK>
 0x6368 # <CJK>
-0x6369 # <CJK>
-0x636B # <CJK>
 0x636E # <CJK>
-0x6372 # <CJK>
-0x6376 # <CJK>
-0x6377 # <CJK>
-0x637A # <CJK>
 0x637B # <CJK>
-0x6380 # <CJK>
 0x6383 # <CJK>
 0x6388 # <CJK>
-0x6389 # <CJK>
 0x638C # <CJK>
-0x638E # <CJK>
-0x638F # <CJK>
 0x6392 # <CJK>
-0x6396 # <CJK>
 0x6398 # <CJK>
 0x639B # <CJK>
-0x639F # <CJK>
-0x63A0 # <CJK>
 0x63A1 # <CJK>
 0x63A2 # <CJK>
-0x63A3 # <CJK>
 0x63A5 # <CJK>
 0x63A7 # <CJK>
 0x63A8 # <CJK>
-0x63A9 # <CJK>
 0x63AA # <CJK>
-0x63AB # <CJK>
-0x63AC # <CJK>
 0x63B2 # <CJK>
-0x63B4 # <CJK>
-0x63B5 # <CJK>
-0x63BB # <CJK>
-0x63BE # <CJK>
-0x63C0 # <CJK>
-0x63C3 # <CJK>
-0x63C4 # <CJK>
-0x63C6 # <CJK>
-0x63C9 # <CJK>
 0x63CF # <CJK>
 0x63D0 # <CJK>
-0x63D2 # <CJK>
-0x63D6 # <CJK>
 0x63DA # <CJK>
 0x63DB # <CJK>
 0x63E1 # <CJK>
-0x63E3 # <CJK>
-0x63E9 # <CJK>
 0x63EE # <CJK>
 0x63F4 # <CJK>
-0x63F6 # <CJK>
 0x63FA # <CJK>
-0x6406 # <CJK>
 0x640D # <CJK>
-0x640F # <CJK>
-0x6413 # <CJK>
-0x6416 # <CJK>
-0x6417 # <CJK>
-0x641C # <CJK>
-0x6426 # <CJK>
-0x6428 # <CJK>
 0x642C # <CJK>
 0x642D # <CJK>
-0x6434 # <CJK>
-0x6436 # <CJK>
 0x643A # <CJK>
 0x643E # <CJK>
 0x6442 # <CJK>
-0x644E # <CJK>
 0x6458 # <CJK>
-0x6467 # <CJK>
 0x6469 # <CJK>
 0x646F # <CJK>
-0x6476 # <CJK>
-0x6478 # <CJK>
-0x647A # <CJK>
 0x6483 # <CJK>
-0x6488 # <CJK>
-0x6492 # <CJK>
-0x6493 # <CJK>
-0x6495 # <CJK>
-0x649A # <CJK>
-0x649E # <CJK>
 0x64A4 # <CJK>
-0x64A5 # <CJK>
-0x64A9 # <CJK>
-0x64AB # <CJK>
-0x64AD # <CJK>
 0x64AE # <CJK>
-0x64B0 # <CJK>
 0x64B2 # <CJK>
-0x64B9 # <CJK>
-0x64BB # <CJK>
-0x64BC # <CJK>
 0x64C1 # <CJK>
-0x64C2 # <CJK>
-0x64C5 # <CJK>
-0x64C7 # <CJK>
 0x64CD # <CJK>
-0x64D2 # <CJK>
-0x64D4 # <CJK>
-0x64D8 # <CJK>
-0x64DA # <CJK>
-0x64E0 # <CJK>
-0x64E1 # <CJK>
-0x64E2 # <CJK>
-0x64E3 # <CJK>
 0x64E6 # <CJK>
-0x64E7 # <CJK>
 0x64EC # <CJK>
-0x64EF # <CJK>
-0x64F1 # <CJK>
-0x64F2 # <CJK>
-0x64F4 # <CJK>
-0x64F6 # <CJK>
-0x64FA # <CJK>
-0x64FD # <CJK>
-0x64FE # <CJK>
-0x6500 # <CJK>
-0x6505 # <CJK>
-0x6518 # <CJK>
-0x651C # <CJK>
-0x651D # <CJK>
-0x6523 # <CJK>
-0x6524 # <CJK>
-0x652A # <CJK>
-0x652B # <CJK>
-0x652C # <CJK>
 0x652F # <CJK>
-0x6534 # <CJK>
-0x6535 # <CJK>
-0x6536 # <CJK>
-0x6537 # <CJK>
-0x6538 # <CJK>
 0x6539 # <CJK>
 0x653B # <CJK>
 0x653E # <CJK>
 0x653F # <CJK>
 0x6545 # <CJK>
-0x6548 # <CJK>
-0x654D # <CJK>
 0x654F # <CJK>
 0x6551 # <CJK>
-0x6555 # <CJK>
-0x6556 # <CJK>
 0x6557 # <CJK>
-0x6558 # <CJK>
 0x6559 # <CJK>
-0x655D # <CJK>
-0x655E # <CJK>
 0x6562 # <CJK>
 0x6563 # <CJK>
-0x6566 # <CJK>
 0x656C # <CJK>
 0x6570 # <CJK>
-0x6572 # <CJK>
 0x6574 # <CJK>
 0x6575 # <CJK>
 0x6577 # <CJK>
-0x6578 # <CJK>
-0x6582 # <CJK>
-0x6583 # <CJK>
 0x6587 # <CJK>
-0x6588 # <CJK>
 0x6589 # <CJK>
-0x658C # <CJK>
 0x658E # <CJK>
-0x6590 # <CJK>
 0x6591 # <CJK>
 0x6597 # <CJK>
 0x6599 # <CJK>
-0x659B # <CJK>
 0x659C # <CJK>
-0x659F # <CJK>
-0x65A1 # <CJK>
 0x65A4 # <CJK>
 0x65A5 # <CJK>
-0x65A7 # <CJK>
-0x65AB # <CJK>
 0x65AC # <CJK>
 0x65AD # <CJK>
-0x65AF # <CJK>
 0x65B0 # <CJK>
-0x65B7 # <CJK>
 0x65B9 # <CJK>
-0x65BC # <CJK>
 0x65BD # <CJK>
-0x65C1 # <CJK>
-0x65C3 # <CJK>
-0x65C4 # <CJK>
 0x65C5 # <CJK>
-0x65C6 # <CJK>
 0x65CB # <CJK>
-0x65CC # <CJK>
 0x65CF # <CJK>
-0x65D2 # <CJK>
 0x65D7 # <CJK>
-0x65D9 # <CJK>
-0x65DB # <CJK>
-0x65E0 # <CJK>
-0x65E1 # <CJK>
 0x65E2 # <CJK>
 0x65E5 # <CJK>
 0x65E6 # <CJK>
 0x65E8 # <CJK>
 0x65E9 # <CJK>
 0x65EC # <CJK>
-0x65ED # <CJK>
-0x65F1 # <CJK>
 0x65FA # <CJK>
-0x65FB # <CJK>
-0x6602 # <CJK>
-0x6603 # <CJK>
 0x6606 # <CJK>
 0x6607 # <CJK>
-0x660A # <CJK>
-0x660C # <CJK>
 0x660E # <CJK>
-0x660F # <CJK>
 0x6613 # <CJK>
 0x6614 # <CJK>
-0x661C # <CJK>
 0x661F # <CJK>
 0x6620 # <CJK>
 0x6625 # <CJK>
 0x6628 # <CJK>
 0x662D # <CJK>
 0x662F # <CJK>
-0x6634 # <CJK>
-0x6635 # <CJK>
-0x6636 # <CJK>
 0x663C # <CJK>
-0x663F # <CJK>
-0x6641 # <CJK>
 0x6642 # <CJK>
-0x6643 # <CJK>
-0x6644 # <CJK>
-0x6649 # <CJK>
-0x664B # <CJK>
-0x664F # <CJK>
-0x6652 # <CJK>
-0x665D # <CJK>
-0x665E # <CJK>
-0x665F # <CJK>
-0x6662 # <CJK>
-0x6664 # <CJK>
-0x6666 # <CJK>
-0x6667 # <CJK>
-0x6668 # <CJK>
 0x6669 # <CJK>
 0x666E # <CJK>
 0x666F # <CJK>
-0x6670 # <CJK>
 0x6674 # <CJK>
 0x6676 # <CJK>
-0x667A # <CJK>
 0x6681 # <CJK>
-0x6683 # <CJK>
-0x6684 # <CJK>
 0x6687 # <CJK>
-0x6688 # <CJK>
-0x6689 # <CJK>
-0x668E # <CJK>
 0x6691 # <CJK>
 0x6696 # <CJK>
 0x6697 # <CJK>
-0x6698 # <CJK>
-0x669D # <CJK>
-0x66A2 # <CJK>
 0x66A6 # <CJK>
 0x66AB # <CJK>
 0x66AE # <CJK>
 0x66B4 # <CJK>
-0x66B8 # <CJK>
-0x66B9 # <CJK>
-0x66BC # <CJK>
-0x66BE # <CJK>
-0x66C1 # <CJK>
-0x66C4 # <CJK>
 0x66C7 # <CJK>
-0x66C9 # <CJK>
 0x66D6 # <CJK>
-0x66D9 # <CJK>
-0x66DA # <CJK>
 0x66DC # <CJK>
-0x66DD # <CJK>
-0x66E0 # <CJK>
-0x66E6 # <CJK>
-0x66E9 # <CJK>
-0x66F0 # <CJK>
 0x66F2 # <CJK>
-0x66F3 # <CJK>
 0x66F4 # <CJK>
-0x66F5 # <CJK>
-0x66F7 # <CJK>
 0x66F8 # <CJK>
 0x66F9 # <CJK>
-0x66FC # <CJK>
 0x66FD # <CJK>
-0x66FE # <CJK>
 0x66FF # <CJK>
 0x6700 # <CJK>
-0x6703 # <CJK>
 0x6708 # <CJK>
 0x6709 # <CJK>
-0x670B # <CJK>
 0x670D # <CJK>
-0x670F # <CJK>
-0x6714 # <CJK>
 0x6715 # <CJK>
-0x6716 # <CJK>
 0x6717 # <CJK>
 0x671B # <CJK>
 0x671D # <CJK>
-0x671E # <CJK>
 0x671F # <CJK>
-0x6726 # <CJK>
-0x6727 # <CJK>
 0x6728 # <CJK>
 0x672A # <CJK>
 0x672B # <CJK>
 0x672C # <CJK>
 0x672D # <CJK>
-0x672E # <CJK>
 0x6731 # <CJK>
 0x6734 # <CJK>
-0x6736 # <CJK>
-0x6737 # <CJK>
-0x6738 # <CJK>
 0x673A # <CJK>
 0x673D # <CJK>
-0x673F # <CJK>
-0x6741 # <CJK>
-0x6746 # <CJK>
 0x6749 # <CJK>
-0x674E # <CJK>
-0x674F # <CJK>
 0x6750 # <CJK>
 0x6751 # <CJK>
-0x6753 # <CJK>
-0x6756 # <CJK>
-0x6759 # <CJK>
-0x675C # <CJK>
-0x675E # <CJK>
 0x675F # <CJK>
-0x6760 # <CJK>
 0x6761 # <CJK>
-0x6762 # <CJK>
-0x6763 # <CJK>
-0x6764 # <CJK>
 0x6765 # <CJK>
-0x676A # <CJK>
-0x676D # <CJK>
 0x676F # <CJK>
-0x6770 # <CJK>
 0x6771 # <CJK>
-0x6772 # <CJK>
-0x6773 # <CJK>
-0x6775 # <CJK>
-0x6777 # <CJK>
-0x677C # <CJK>
 0x677E # <CJK>
 0x677F # <CJK>
-0x6785 # <CJK>
-0x6787 # <CJK>
-0x6789 # <CJK>
-0x678B # <CJK>
-0x678C # <CJK>
 0x6790 # <CJK>
 0x6795 # <CJK>
 0x6797 # <CJK>
 0x679C # <CJK>
 0x679D # <CJK>
 0x67A0 # <CJK>
-0x67A1 # <CJK>
 0x67A2 # <CJK>
-0x67A6 # <CJK>
-0x67A9 # <CJK>
 0x67AF # <CJK>
-0x67B3 # <CJK>
-0x67B4 # <CJK>
 0x67B6 # <CJK>
-0x67B7 # <CJK>
-0x67B8 # <CJK>
-0x67B9 # <CJK>
-0x67C1 # <CJK>
 0x67C4 # <CJK>
-0x67C6 # <CJK>
-0x67CA # <CJK>
-0x67CE # <CJK>
-0x67CF # <CJK>
 0x67D0 # <CJK>
-0x67D1 # <CJK>
 0x67D3 # <CJK>
 0x67D4 # <CJK>
-0x67D8 # <CJK>
-0x67DA # <CJK>
-0x67DD # <CJK>
-0x67DE # <CJK>
-0x67E2 # <CJK>
-0x67E4 # <CJK>
-0x67E7 # <CJK>
-0x67E9 # <CJK>
-0x67EC # <CJK>
-0x67EE # <CJK>
-0x67EF # <CJK>
 0x67F1 # <CJK>
 0x67F3 # <CJK>
-0x67F4 # <CJK>
 0x67F5 # <CJK>
 0x67FB # <CJK>
-0x67FE # <CJK>
 0x67FF # <CJK>
-0x6802 # <CJK>
 0x6803 # <CJK>
 0x6804 # <CJK>
 0x6813 # <CJK>
-0x6816 # <CJK>
-0x6817 # <CJK>
-0x681E # <CJK>
 0x6821 # <CJK>
-0x6822 # <CJK>
-0x6829 # <CJK>
 0x682A # <CJK>
-0x682B # <CJK>
-0x6832 # <CJK>
-0x6834 # <CJK>
 0x6838 # <CJK>
 0x6839 # <CJK>
 0x683C # <CJK>
 0x683D # <CJK>
-0x6840 # <CJK>
 0x6841 # <CJK>
-0x6842 # <CJK>
 0x6843 # <CJK>
-0x6846 # <CJK>
 0x6848 # <CJK>
-0x684D # <CJK>
-0x684E # <CJK>
-0x6850 # <CJK>
 0x6851 # <CJK>
-0x6853 # <CJK>
-0x6854 # <CJK>
-0x6859 # <CJK>
 0x685C # <CJK>
-0x685D # <CJK>
 0x685F # <CJK>
-0x6863 # <CJK>
-0x6867 # <CJK>
-0x6874 # <CJK>
-0x6876 # <CJK>
-0x6877 # <CJK>
-0x687E # <CJK>
-0x687F # <CJK>
-0x6881 # <CJK>
-0x6883 # <CJK>
 0x6885 # <CJK>
-0x688D # <CJK>
-0x688F # <CJK>
-0x6893 # <CJK>
-0x6894 # <CJK>
 0x6897 # <CJK>
-0x689B # <CJK>
-0x689D # <CJK>
-0x689F # <CJK>
-0x68A0 # <CJK>
-0x68A2 # <CJK>
-0x68A6 # <CJK>
-0x68A7 # <CJK>
 0x68A8 # <CJK>
-0x68AD # <CJK>
-0x68AF # <CJK>
 0x68B0 # <CJK>
-0x68B1 # <CJK>
-0x68B3 # <CJK>
-0x68B5 # <CJK>
-0x68B6 # <CJK>
-0x68B9 # <CJK>
-0x68BA # <CJK>
-0x68BC # <CJK>
 0x68C4 # <CJK>
-0x68C6 # <CJK>
-0x68C9 # <CJK>
-0x68CA # <CJK>
 0x68CB # <CJK>
-0x68CD # <CJK>
 0x68D2 # <CJK>
-0x68D4 # <CJK>
-0x68D5 # <CJK>
-0x68D7 # <CJK>
-0x68D8 # <CJK>
 0x68DA # <CJK>
 0x68DF # <CJK>
-0x68E0 # <CJK>
-0x68E1 # <CJK>
-0x68E3 # <CJK>
-0x68E7 # <CJK>
 0x68EE # <CJK>
-0x68EF # <CJK>
-0x68F2 # <CJK>
-0x68F9 # <CJK>
 0x68FA # <CJK>
-0x6900 # <CJK>
-0x6901 # <CJK>
-0x6904 # <CJK>
 0x6905 # <CJK>
-0x6908 # <CJK>
-0x690B # <CJK>
-0x690C # <CJK>
 0x690D # <CJK>
 0x690E # <CJK>
-0x690F # <CJK>
-0x6912 # <CJK>
-0x6919 # <CJK>
-0x691A # <CJK>
-0x691B # <CJK>
 0x691C # <CJK>
-0x6921 # <CJK>
-0x6922 # <CJK>
-0x6923 # <CJK>
-0x6925 # <CJK>
-0x6926 # <CJK>
-0x6928 # <CJK>
-0x692A # <CJK>
-0x6930 # <CJK>
-0x6934 # <CJK>
-0x6936 # <CJK>
-0x6939 # <CJK>
-0x693D # <CJK>
-0x693F # <CJK>
-0x694A # <CJK>
-0x6953 # <CJK>
-0x6954 # <CJK>
-0x6955 # <CJK>
-0x6959 # <CJK>
-0x695A # <CJK>
-0x695C # <CJK>
-0x695D # <CJK>
-0x695E # <CJK>
-0x6960 # <CJK>
-0x6961 # <CJK>
-0x6962 # <CJK>
-0x696A # <CJK>
-0x696B # <CJK>
 0x696D # <CJK>
-0x696E # <CJK>
-0x696F # <CJK>
-0x6973 # <CJK>
-0x6974 # <CJK>
 0x6975 # <CJK>
 0x6977 # <CJK>
-0x6978 # <CJK>
-0x6979 # <CJK>
 0x697C # <CJK>
 0x697D # <CJK>
-0x697E # <CJK>
-0x6981 # <CJK>
 0x6982 # <CJK>
-0x698A # <CJK>
-0x698E # <CJK>
-0x6991 # <CJK>
-0x6994 # <CJK>
-0x6995 # <CJK>
-0x699B # <CJK>
-0x699C # <CJK>
-0x69A0 # <CJK>
-0x69A7 # <CJK>
-0x69AE # <CJK>
-0x69B1 # <CJK>
-0x69B2 # <CJK>
-0x69B4 # <CJK>
-0x69BB # <CJK>
-0x69BE # <CJK>
-0x69BF # <CJK>
-0x69C1 # <CJK>
-0x69C3 # <CJK>
-0x69C7 # <CJK>
-0x69CA # <CJK>
 0x69CB # <CJK>
-0x69CC # <CJK>
-0x69CD # <CJK>
-0x69CE # <CJK>
-0x69D0 # <CJK>
-0x69D3 # <CJK>
 0x69D8 # <CJK>
-0x69D9 # <CJK>
-0x69DD # <CJK>
-0x69DE # <CJK>
-0x69E7 # <CJK>
-0x69E8 # <CJK>
-0x69EB # <CJK>
-0x69ED # <CJK>
-0x69F2 # <CJK>
-0x69F9 # <CJK>
-0x69FB # <CJK>
 0x69FD # <CJK>
-0x69FF # <CJK>
-0x6A02 # <CJK>
-0x6A05 # <CJK>
-0x6A0A # <CJK>
-0x6A0B # <CJK>
-0x6A0C # <CJK>
-0x6A12 # <CJK>
-0x6A13 # <CJK>
-0x6A14 # <CJK>
-0x6A17 # <CJK>
 0x6A19 # <CJK>
-0x6A1B # <CJK>
-0x6A1E # <CJK>
-0x6A1F # <CJK>
 0x6A21 # <CJK>
-0x6A22 # <CJK>
-0x6A23 # <CJK>
 0x6A29 # <CJK>
 0x6A2A # <CJK>
-0x6A2B # <CJK>
-0x6A2E # <CJK>
-0x6A35 # <CJK>
-0x6A36 # <CJK>
-0x6A38 # <CJK>
 0x6A39 # <CJK>
-0x6A3A # <CJK>
-0x6A3D # <CJK>
-0x6A44 # <CJK>
-0x6A47 # <CJK>
-0x6A48 # <CJK>
 0x6A4B # <CJK>
-0x6A58 # <CJK>
-0x6A59 # <CJK>
 0x6A5F # <CJK>
-0x6A61 # <CJK>
-0x6A62 # <CJK>
-0x6A66 # <CJK>
-0x6A72 # <CJK>
-0x6A78 # <CJK>
-0x6A7F # <CJK>
-0x6A80 # <CJK>
-0x6A84 # <CJK>
-0x6A8D # <CJK>
-0x6A8E # <CJK>
-0x6A90 # <CJK>
-0x6A97 # <CJK>
-0x6A9C # <CJK>
-0x6AA0 # <CJK>
-0x6AA2 # <CJK>
-0x6AA3 # <CJK>
-0x6AAA # <CJK>
-0x6AAC # <CJK>
-0x6AAE # <CJK>
-0x6AB3 # <CJK>
-0x6AB8 # <CJK>
-0x6ABB # <CJK>
-0x6AC1 # <CJK>
-0x6AC2 # <CJK>
-0x6AC3 # <CJK>
-0x6AD1 # <CJK>
-0x6AD3 # <CJK>
-0x6ADA # <CJK>
-0x6ADB # <CJK>
-0x6ADE # <CJK>
-0x6ADF # <CJK>
-0x6AE8 # <CJK>
-0x6AEA # <CJK>
-0x6AFA # <CJK>
-0x6AFB # <CJK>
 0x6B04 # <CJK>
-0x6B05 # <CJK>
-0x6B0A # <CJK>
-0x6B12 # <CJK>
-0x6B16 # <CJK>
-0x6B1D # <CJK>
-0x6B1F # <CJK>
 0x6B20 # <CJK>
 0x6B21 # <CJK>
-0x6B23 # <CJK>
 0x6B27 # <CJK>
 0x6B32 # <CJK>
-0x6B37 # <CJK>
-0x6B38 # <CJK>
-0x6B39 # <CJK>
 0x6B3A # <CJK>
-0x6B3D # <CJK>
 0x6B3E # <CJK>
-0x6B43 # <CJK>
-0x6B47 # <CJK>
-0x6B49 # <CJK>
 0x6B4C # <CJK>
-0x6B4E # <CJK>
-0x6B50 # <CJK>
 0x6B53 # <CJK>
-0x6B54 # <CJK>
-0x6B59 # <CJK>
-0x6B5B # <CJK>
-0x6B5F # <CJK>
-0x6B61 # <CJK>
 0x6B62 # <CJK>
 0x6B63 # <CJK>
-0x6B64 # <CJK>
 0x6B66 # <CJK>
 0x6B69 # <CJK>
-0x6B6A # <CJK>
 0x6B6F # <CJK>
 0x6B73 # <CJK>
 0x6B74 # <CJK>
-0x6B78 # <CJK>
-0x6B79 # <CJK>
 0x6B7B # <CJK>
-0x6B7F # <CJK>
-0x6B80 # <CJK>
-0x6B83 # <CJK>
-0x6B84 # <CJK>
-0x6B86 # <CJK>
 0x6B89 # <CJK>
 0x6B8A # <CJK>
 0x6B8B # <CJK>
-0x6B8D # <CJK>
-0x6B95 # <CJK>
 0x6B96 # <CJK>
-0x6B98 # <CJK>
-0x6B9E # <CJK>
-0x6BA4 # <CJK>
-0x6BAA # <CJK>
-0x6BAB # <CJK>
-0x6BAF # <CJK>
-0x6BB1 # <CJK>
-0x6BB2 # <CJK>
-0x6BB3 # <CJK>
 0x6BB4 # <CJK>
 0x6BB5 # <CJK>
-0x6BB7 # <CJK>
 0x6BBA # <CJK>
 0x6BBB # <CJK>
-0x6BBC # <CJK>
 0x6BBF # <CJK>
 0x6BC0 # <CJK>
-0x6BC5 # <CJK>
-0x6BC6 # <CJK>
-0x6BCB # <CJK>
 0x6BCD # <CJK>
 0x6BCE # <CJK>
 0x6BD2 # <CJK>
-0x6BD3 # <CJK>
 0x6BD4 # <CJK>
-0x6BD8 # <CJK>
 0x6BDB # <CJK>
-0x6BDF # <CJK>
-0x6BEB # <CJK>
-0x6BEC # <CJK>
-0x6BEF # <CJK>
-0x6BF3 # <CJK>
-0x6C08 # <CJK>
 0x6C0F # <CJK>
 0x6C11 # <CJK>
-0x6C13 # <CJK>
-0x6C14 # <CJK>
 0x6C17 # <CJK>
-0x6C1B # <CJK>
-0x6C23 # <CJK>
-0x6C24 # <CJK>
 0x6C34 # <CJK>
 0x6C37 # <CJK>
 0x6C38 # <CJK>
 0x6C3E # <CJK>
-0x6C40 # <CJK>
 0x6C41 # <CJK>
 0x6C42 # <CJK>
 0x6C4E # <CJK>
-0x6C50 # <CJK>
-0x6C55 # <CJK>
 0x6C57 # <CJK>
 0x6C5A # <CJK>
-0x6C5D # <CJK>
-0x6C5E # <CJK>
 0x6C5F # <CJK>
 0x6C60 # <CJK>
-0x6C62 # <CJK>
-0x6C68 # <CJK>
-0x6C6A # <CJK>
 0x6C70 # <CJK>
-0x6C72 # <CJK>
-0x6C73 # <CJK>
 0x6C7A # <CJK>
 0x6C7D # <CJK>
-0x6C7E # <CJK>
-0x6C81 # <CJK>
-0x6C82 # <CJK>
 0x6C83 # <CJK>
 0x6C88 # <CJK>
-0x6C8C # <CJK>
-0x6C8D # <CJK>
-0x6C90 # <CJK>
-0x6C92 # <CJK>
-0x6C93 # <CJK>
 0x6C96 # <CJK>
 0x6C99 # <CJK>
-0x6C9A # <CJK>
-0x6C9B # <CJK>
 0x6CA1 # <CJK>
 0x6CA2 # <CJK>
-0x6CAB # <CJK>
-0x6CAE # <CJK>
-0x6CB1 # <CJK>
 0x6CB3 # <CJK>
 0x6CB8 # <CJK>
 0x6CB9 # <CJK>
-0x6CBA # <CJK>
 0x6CBB # <CJK>
 0x6CBC # <CJK>
-0x6CBD # <CJK>
-0x6CBE # <CJK>
 0x6CBF # <CJK>
 0x6CC1 # <CJK>
-0x6CC4 # <CJK>
-0x6CC5 # <CJK>
 0x6CC9 # <CJK>
 0x6CCA # <CJK>
 0x6CCC # <CJK>
-0x6CD3 # <CJK>
 0x6CD5 # <CJK>
-0x6CD7 # <CJK>
-0x6CD9 # <CJK>
-0x6CDB # <CJK>
-0x6CDD # <CJK>
 0x6CE1 # <CJK>
 0x6CE2 # <CJK>
 0x6CE3 # <CJK>
 0x6CE5 # <CJK>
 0x6CE8 # <CJK>
-0x6CEA # <CJK>
-0x6CEF # <CJK>
 0x6CF0 # <CJK>
-0x6CF1 # <CJK>
 0x6CF3 # <CJK>
 0x6D0B # <CJK>
-0x6D0C # <CJK>
-0x6D12 # <CJK>
 0x6D17 # <CJK>
-0x6D19 # <CJK>
-0x6D1B # <CJK>
 0x6D1E # <CJK>
-0x6D1F # <CJK>
 0x6D25 # <CJK>
-0x6D29 # <CJK>
 0x6D2A # <CJK>
-0x6D2B # <CJK>
-0x6D32 # <CJK>
-0x6D33 # <CJK>
-0x6D35 # <CJK>
-0x6D36 # <CJK>
-0x6D38 # <CJK>
 0x6D3B # <CJK>
-0x6D3D # <CJK>
 0x6D3E # <CJK>
 0x6D41 # <CJK>
 0x6D44 # <CJK>
 0x6D45 # <CJK>
-0x6D59 # <CJK>
-0x6D5A # <CJK>
 0x6D5C # <CJK>
-0x6D63 # <CJK>
-0x6D64 # <CJK>
 0x6D66 # <CJK>
-0x6D69 # <CJK>
 0x6D6A # <CJK>
-0x6D6C # <CJK>
 0x6D6E # <CJK>
 0x6D74 # <CJK>
 0x6D77 # <CJK>
 0x6D78 # <CJK>
-0x6D79 # <CJK>
-0x6D85 # <CJK>
 0x6D88 # <CJK>
-0x6D8C # <CJK>
-0x6D8E # <CJK>
-0x6D93 # <CJK>
-0x6D95 # <CJK>
 0x6D99 # <CJK>
-0x6D9B # <CJK>
-0x6D9C # <CJK>
 0x6DAF # <CJK>
 0x6DB2 # <CJK>
-0x6DB5 # <CJK>
-0x6DB8 # <CJK>
 0x6DBC # <CJK>
-0x6DC0 # <CJK>
-0x6DC5 # <CJK>
-0x6DC6 # <CJK>
-0x6DC7 # <CJK>
-0x6DCB # <CJK>
-0x6DCC # <CJK>
 0x6DD1 # <CJK>
-0x6DD2 # <CJK>
-0x6DD5 # <CJK>
-0x6DD8 # <CJK>
-0x6DD9 # <CJK>
-0x6DDE # <CJK>
 0x6DE1 # <CJK>
-0x6DE4 # <CJK>
-0x6DE6 # <CJK>
-0x6DE8 # <CJK>
-0x6DEA # <CJK>
 0x6DEB # <CJK>
-0x6DEC # <CJK>
-0x6DEE # <CJK>
 0x6DF1 # <CJK>
-0x6DF3 # <CJK>
-0x6DF5 # <CJK>
 0x6DF7 # <CJK>
-0x6DF9 # <CJK>
-0x6DFA # <CJK>
 0x6DFB # <CJK>
 0x6E05 # <CJK>
 0x6E07 # <CJK>
 0x6E08 # <CJK>
 0x6E09 # <CJK>
-0x6E0A # <CJK>
 0x6E0B # <CJK>
 0x6E13 # <CJK>
-0x6E15 # <CJK>
-0x6E19 # <CJK>
-0x6E1A # <CJK>
 0x6E1B # <CJK>
-0x6E1D # <CJK>
-0x6E1F # <CJK>
-0x6E20 # <CJK>
 0x6E21 # <CJK>
-0x6E23 # <CJK>
-0x6E24 # <CJK>
-0x6E25 # <CJK>
 0x6E26 # <CJK>
 0x6E29 # <CJK>
-0x6E2B # <CJK>
 0x6E2C # <CJK>
-0x6E2D # <CJK>
-0x6E2E # <CJK>
 0x6E2F # <CJK>
-0x6E38 # <CJK>
-0x6E3A # <CJK>
-0x6E3E # <CJK>
-0x6E43 # <CJK>
-0x6E4A # <CJK>
-0x6E4D # <CJK>
-0x6E4E # <CJK>
 0x6E56 # <CJK>
-0x6E58 # <CJK>
-0x6E5B # <CJK>
-0x6E5F # <CJK>
 0x6E67 # <CJK>
-0x6E6B # <CJK>
-0x6E6E # <CJK>
 0x6E6F # <CJK>
-0x6E72 # <CJK>
-0x6E76 # <CJK>
 0x6E7E # <CJK>
 0x6E7F # <CJK>
 0x6E80 # <CJK>
-0x6E82 # <CJK>
-0x6E8C # <CJK>
-0x6E8F # <CJK>
 0x6E90 # <CJK>
 0x6E96 # <CJK>
-0x6E98 # <CJK>
-0x6E9C # <CJK>
 0x6E9D # <CJK>
-0x6E9F # <CJK>
-0x6EA2 # <CJK>
-0x6EA5 # <CJK>
-0x6EAA # <CJK>
-0x6EAF # <CJK>
-0x6EB2 # <CJK>
 0x6EB6 # <CJK>
-0x6EB7 # <CJK>
 0x6EBA # <CJK>
-0x6EBD # <CJK>
-0x6EC2 # <CJK>
-0x6EC4 # <CJK>
 0x6EC5 # <CJK>
-0x6EC9 # <CJK>
 0x6ECB # <CJK>
-0x6ECC # <CJK>
 0x6ED1 # <CJK>
-0x6ED3 # <CJK>
-0x6ED4 # <CJK>
-0x6ED5 # <CJK>
 0x6EDD # <CJK>
 0x6EDE # <CJK>
-0x6EEC # <CJK>
-0x6EEF # <CJK>
-0x6EF2 # <CJK>
 0x6EF4 # <CJK>
-0x6EF7 # <CJK>
-0x6EF8 # <CJK>
-0x6EFE # <CJK>
-0x6EFF # <CJK>
 0x6F01 # <CJK>
 0x6F02 # <CJK>
 0x6F06 # <CJK>
-0x6F09 # <CJK>
 0x6F0F # <CJK>
-0x6F11 # <CJK>
-0x6F13 # <CJK>
 0x6F14 # <CJK>
-0x6F15 # <CJK>
 0x6F20 # <CJK>
 0x6F22 # <CJK>
-0x6F23 # <CJK>
 0x6F2B # <CJK>
 0x6F2C # <CJK>
-0x6F31 # <CJK>
-0x6F32 # <CJK>
 0x6F38 # <CJK>
-0x6F3E # <CJK>
-0x6F3F # <CJK>
-0x6F41 # <CJK>
-0x6F45 # <CJK>
 0x6F54 # <CJK>
-0x6F58 # <CJK>
-0x6F5B # <CJK>
 0x6F5C # <CJK>
 0x6F5F # <CJK>
 0x6F64 # <CJK>
-0x6F66 # <CJK>
-0x6F6D # <CJK>
 0x6F6E # <CJK>
-0x6F6F # <CJK>
 0x6F70 # <CJK>
-0x6F74 # <CJK>
-0x6F78 # <CJK>
-0x6F7A # <CJK>
-0x6F7C # <CJK>
-0x6F80 # <CJK>
-0x6F81 # <CJK>
-0x6F82 # <CJK>
 0x6F84 # <CJK>
-0x6F86 # <CJK>
-0x6F8E # <CJK>
-0x6F91 # <CJK>
-0x6F97 # <CJK>
-0x6FA1 # <CJK>
-0x6FA3 # <CJK>
-0x6FA4 # <CJK>
-0x6FAA # <CJK>
-0x6FB1 # <CJK>
-0x6FB3 # <CJK>
-0x6FB9 # <CJK>
 0x6FC0 # <CJK>
 0x6FC1 # <CJK>
-0x6FC2 # <CJK>
 0x6FC3 # <CJK>
-0x6FC6 # <CJK>
-0x6FD4 # <CJK>
-0x6FD5 # <CJK>
-0x6FD8 # <CJK>
-0x6FDB # <CJK>
-0x6FDF # <CJK>
-0x6FE0 # <CJK>
-0x6FE1 # <CJK>
-0x6FE4 # <CJK>
 0x6FEB # <CJK>
-0x6FEC # <CJK>
-0x6FEE # <CJK>
 0x6FEF # <CJK>
-0x6FF1 # <CJK>
-0x6FF3 # <CJK>
-0x6FF6 # <CJK>
-0x6FFA # <CJK>
-0x6FFE # <CJK>
-0x7001 # <CJK>
-0x7009 # <CJK>
-0x700B # <CJK>
-0x700F # <CJK>
-0x7011 # <CJK>
-0x7015 # <CJK>
-0x7018 # <CJK>
-0x701A # <CJK>
-0x701B # <CJK>
-0x701D # <CJK>
-0x701E # <CJK>
-0x701F # <CJK>
-0x7026 # <CJK>
-0x7027 # <CJK>
 0x702C # <CJK>
-0x7030 # <CJK>
-0x7032 # <CJK>
-0x703E # <CJK>
-0x704C # <CJK>
-0x7051 # <CJK>
-0x7058 # <CJK>
-0x7063 # <CJK>
 0x706B # <CJK>
 0x706F # <CJK>
 0x7070 # <CJK>
-0x7078 # <CJK>
-0x707C # <CJK>
 0x707D # <CJK>
 0x7089 # <CJK>
 0x708A # <CJK>
 0x708E # <CJK>
-0x7092 # <CJK>
-0x7099 # <CJK>
-0x70AC # <CJK>
 0x70AD # <CJK>
-0x70AE # <CJK>
-0x70AF # <CJK>
-0x70B3 # <CJK>
-0x70B8 # <CJK>
 0x70B9 # <CJK>
 0x70BA # <CJK>
 0x70C8 # <CJK>
-0x70CB # <CJK>
-0x70CF # <CJK>
-0x70D9 # <CJK>
-0x70DD # <CJK>
-0x70DF # <CJK>
-0x70F1 # <CJK>
-0x70F9 # <CJK>
-0x70FD # <CJK>
-0x7109 # <CJK>
-0x7114 # <CJK>
-0x7119 # <CJK>
-0x711A # <CJK>
-0x711C # <CJK>
 0x7121 # <CJK>
 0x7126 # <CJK>
 0x7136 # <CJK>
 0x713C # <CJK>
-0x7149 # <CJK>
-0x714C # <CJK>
 0x714E # <CJK>
-0x7155 # <CJK>
-0x7156 # <CJK>
 0x7159 # <CJK>
-0x7162 # <CJK>
-0x7164 # <CJK>
-0x7165 # <CJK>
-0x7166 # <CJK>
 0x7167 # <CJK>
 0x7169 # <CJK>
-0x716C # <CJK>
 0x716E # <CJK>
-0x717D # <CJK>
-0x7184 # <CJK>
-0x7188 # <CJK>
 0x718A # <CJK>
-0x718F # <CJK>
-0x7194 # <CJK>
-0x7195 # <CJK>
-#0x7199        # <CJK> # not in kochi fonts
 0x719F # <CJK>
-0x71A8 # <CJK>
-0x71AC # <CJK>
 0x71B1 # <CJK>
-0x71B9 # <CJK>
-0x71BE # <CJK>
 0x71C3 # <CJK>
-0x71C8 # <CJK>
-0x71C9 # <CJK>
-0x71CE # <CJK>
-0x71D0 # <CJK>
-0x71D2 # <CJK>
-0x71D4 # <CJK>
-0x71D5 # <CJK>
-0x71D7 # <CJK>
-0x71DF # <CJK>
-0x71E0 # <CJK>
 0x71E5 # <CJK>
-0x71E6 # <CJK>
-0x71E7 # <CJK>
-0x71EC # <CJK>
-0x71ED # <CJK>
-0x71EE # <CJK>
-0x71F5 # <CJK>
-0x71F9 # <CJK>
-0x71FB # <CJK>
-0x71FC # <CJK>
-0x71FF # <CJK>
 0x7206 # <CJK>
-0x720D # <CJK>
-0x7210 # <CJK>
-0x721B # <CJK>
-0x7228 # <CJK>
 0x722A # <CJK>
-0x722C # <CJK>
-0x722D # <CJK>
-0x7230 # <CJK>
-0x7232 # <CJK>
 0x7235 # <CJK>
 0x7236 # <CJK>
-0x723A # <CJK>
-0x723B # <CJK>
-0x723C # <CJK>
 0x723D # <CJK>
-0x723E # <CJK>
-0x723F # <CJK>
-0x7240 # <CJK>
-0x7246 # <CJK>
 0x7247 # <CJK>
 0x7248 # <CJK>
-0x724B # <CJK>
-0x724C # <CJK>
-0x7252 # <CJK>
-0x7258 # <CJK>
 0x7259 # <CJK>
 0x725B # <CJK>
-0x725D # <CJK>
-0x725F # <CJK>
-0x7261 # <CJK>
-0x7262 # <CJK>
 0x7267 # <CJK>
 0x7269 # <CJK>
 0x7272 # <CJK>
-0x7274 # <CJK>
 0x7279 # <CJK>
-0x727D # <CJK>
-0x727E # <CJK>
-0x7280 # <CJK>
-0x7281 # <CJK>
-0x7282 # <CJK>
-0x7287 # <CJK>
-0x7292 # <CJK>
-0x7296 # <CJK>
 0x72A0 # <CJK>
-0x72A2 # <CJK>
-0x72A7 # <CJK>
 0x72AC # <CJK>
 0x72AF # <CJK>
-0x72B2 # <CJK>
 0x72B6 # <CJK>
-0x72B9 # <CJK>
 0x72C2 # <CJK>
-0x72C3 # <CJK>
-0x72C4 # <CJK>
-0x72C6 # <CJK>
-0x72CE # <CJK>
-0x72D0 # <CJK>
-0x72D2 # <CJK>
-0x72D7 # <CJK>
 0x72D9 # <CJK>
-0x72DB # <CJK>
-0x72E0 # <CJK>
-0x72E1 # <CJK>
-0x72E2 # <CJK>
 0x72E9 # <CJK>
 0x72EC # <CJK>
 0x72ED # <CJK>
-0x72F7 # <CJK>
-0x72F8 # <CJK>
-0x72F9 # <CJK>
-0x72FC # <CJK>
-0x72FD # <CJK>
-0x730A # <CJK>
-0x7316 # <CJK>
-0x7317 # <CJK>
 0x731B # <CJK>
-0x731C # <CJK>
-0x731D # <CJK>
 0x731F # <CJK>
-0x7325 # <CJK>
-0x7329 # <CJK>
-0x732A # <CJK>
 0x732B # <CJK>
 0x732E # <CJK>
-0x732F # <CJK>
-0x7334 # <CJK>
 0x7336 # <CJK>
-0x7337 # <CJK>
-0x733E # <CJK>
 0x733F # <CJK>
 0x7344 # <CJK>
-0x7345 # <CJK>
-0x734E # <CJK>
-0x734F # <CJK>
-0x7357 # <CJK>
 0x7363 # <CJK>
-0x7368 # <CJK>
-0x736A # <CJK>
-0x7370 # <CJK>
 0x7372 # <CJK>
-0x7375 # <CJK>
-0x7378 # <CJK>
-0x737A # <CJK>
-0x737B # <CJK>
 0x7384 # <CJK>
 0x7387 # <CJK>
 0x7389 # <CJK>
 0x738B # <CJK>
-0x7396 # <CJK>
 0x73A9 # <CJK>
-0x73B2 # <CJK>
-0x73B3 # <CJK>
-0x73BB # <CJK>
-0x73C0 # <CJK>
-0x73C2 # <CJK>
-0x73C8 # <CJK>
-0x73CA # <CJK>
 0x73CD # <CJK>
-0x73CE # <CJK>
-0x73DE # <CJK>
 0x73E0 # <CJK>
-0x73E5 # <CJK>
-0x73EA # <CJK>
 0x73ED # <CJK>
-0x73EE # <CJK>
-0x73F1 # <CJK>
-0x73F8 # <CJK>
 0x73FE # <CJK>
 0x7403 # <CJK>
-0x7405 # <CJK>
 0x7406 # <CJK>
-0x7409 # <CJK>
-0x7422 # <CJK>
-0x7425 # <CJK>
-0x7432 # <CJK>
-0x7433 # <CJK>
 0x7434 # <CJK>
-0x7435 # <CJK>
-0x7436 # <CJK>
-0x743A # <CJK>
-0x743F # <CJK>
-0x7441 # <CJK>
-0x7455 # <CJK>
-0x7459 # <CJK>
-0x745A # <CJK>
-0x745B # <CJK>
-0x745C # <CJK>
-0x745E # <CJK>
-0x745F # <CJK>
 0x7460 # <CJK>
-0x7463 # <CJK>
-0x7464 # <CJK>
-0x7469 # <CJK>
-0x746A # <CJK>
-0x746F # <CJK>
-0x7470 # <CJK>
-0x7473 # <CJK>
-0x7476 # <CJK>
-0x747E # <CJK>
 0x7483 # <CJK>
-0x748B # <CJK>
-0x749E # <CJK>
-0x74A2 # <CJK>
 0x74A7 # <CJK>
 0x74B0 # <CJK>
 0x74BD # <CJK>
-0x74CA # <CJK>
-0x74CF # <CJK>
-0x74D4 # <CJK>
-0x74DC # <CJK>
-0x74E0 # <CJK>
-0x74E2 # <CJK>
-0x74E3 # <CJK>
 0x74E6 # <CJK>
-0x74E7 # <CJK>
-0x74E9 # <CJK>
-0x74EE # <CJK>
-0x74F0 # <CJK>
-0x74F1 # <CJK>
-0x74F2 # <CJK>
 0x74F6 # <CJK>
-0x74F7 # <CJK>
-0x74F8 # <CJK>
-0x7503 # <CJK>
-0x7504 # <CJK>
-0x7505 # <CJK>
-0x750C # <CJK>
-0x750D # <CJK>
-0x750E # <CJK>
-0x7511 # <CJK>
-0x7513 # <CJK>
-0x7515 # <CJK>
 0x7518 # <CJK>
 0x751A # <CJK>
-0x751C # <CJK>
-0x751E # <CJK>
 0x751F # <CJK>
 0x7523 # <CJK>
-0x7525 # <CJK>
-0x7526 # <CJK>
 0x7528 # <CJK>
-0x752B # <CJK>
-0x752C # <CJK>
 0x7530 # <CJK>
 0x7531 # <CJK>
 0x7532 # <CJK>
 0x7533 # <CJK>
 0x7537 # <CJK>
-0x7538 # <CJK>
 0x753A # <CJK>
 0x753B # <CJK>
-0x753C # <CJK>
-0x7544 # <CJK>
-0x7546 # <CJK>
-0x7549 # <CJK>
-0x754A # <CJK>
-0x754B # <CJK>
 0x754C # <CJK>
-0x754D # <CJK>
 0x754F # <CJK>
 0x7551 # <CJK>
 0x7554 # <CJK>
 0x7559 # <CJK>
-0x755A # <CJK>
-0x755B # <CJK>
 0x755C # <CJK>
 0x755D # <CJK>
-0x7560 # <CJK>
-0x7562 # <CJK>
-0x7564 # <CJK>
 0x7565 # <CJK>
-0x7566 # <CJK>
-0x7567 # <CJK>
-0x7569 # <CJK>
 0x756A # <CJK>
-0x756B # <CJK>
-0x756D # <CJK>
 0x7570 # <CJK>
 0x7573 # <CJK>
-0x7574 # <CJK>
-0x7576 # <CJK>
-0x7577 # <CJK>
-0x7578 # <CJK>
 0x757F # <CJK>
-0x7582 # <CJK>
-0x7586 # <CJK>
-0x7587 # <CJK>
-0x7589 # <CJK>
-0x758A # <CJK>
-0x758B # <CJK>
 0x758E # <CJK>
-0x758F # <CJK>
 0x7591 # <CJK>
-0x7594 # <CJK>
-0x759A # <CJK>
-0x759D # <CJK>
-0x75A3 # <CJK>
-0x75A5 # <CJK>
 0x75AB # <CJK>
-0x75B1 # <CJK>
 0x75B2 # <CJK>
-0x75B3 # <CJK>
-0x75B5 # <CJK>
-0x75B8 # <CJK>
-0x75B9 # <CJK>
-0x75BC # <CJK>
-0x75BD # <CJK>
 0x75BE # <CJK>
-0x75C2 # <CJK>
-0x75C3 # <CJK>
 0x75C5 # <CJK>
 0x75C7 # <CJK>
-0x75CA # <CJK>
-0x75CD # <CJK>
-0x75D2 # <CJK>
-0x75D4 # <CJK>
 0x75D5 # <CJK>
 0x75D8 # <CJK>
-0x75D9 # <CJK>
 0x75DB # <CJK>
-0x75DE # <CJK>
 0x75E2 # <CJK>
-0x75E3 # <CJK>
 0x75E9 # <CJK>
-0x75F0 # <CJK>
-0x75F2 # <CJK>
-0x75F3 # <CJK>
 0x75F4 # <CJK>
-0x75FA # <CJK>
-0x75FC # <CJK>
-0x75FE # <CJK>
-0x75FF # <CJK>
-0x7601 # <CJK>
-0x7609 # <CJK>
-0x760B # <CJK>
 0x760D # <CJK>
-0x761F # <CJK>
-0x7620 # <CJK>
-0x7621 # <CJK>
-0x7622 # <CJK>
-0x7624 # <CJK>
-0x7627 # <CJK>
-0x7630 # <CJK>
-0x7634 # <CJK>
-0x763B # <CJK>
 0x7642 # <CJK>
-0x7646 # <CJK>
-0x7647 # <CJK>
-0x7648 # <CJK>
-0x764C # <CJK>
 0x7652 # <CJK>
 0x7656 # <CJK>
-0x7658 # <CJK>
-0x765C # <CJK>
-0x7661 # <CJK>
-0x7662 # <CJK>
-0x7667 # <CJK>
-0x7668 # <CJK>
-0x7669 # <CJK>
-0x766A # <CJK>
-0x766C # <CJK>
-0x7670 # <CJK>
-0x7672 # <CJK>
-0x7676 # <CJK>
-0x7678 # <CJK>
 0x767A # <CJK>
 0x767B # <CJK>
-0x767C # <CJK>
 0x767D # <CJK>
 0x767E # <CJK>
-0x7680 # <CJK>
-0x7683 # <CJK>
 0x7684 # <CJK>
 0x7686 # <CJK>
 0x7687 # <CJK>
-0x7688 # <CJK>
-0x768B # <CJK>
-0x768E # <CJK>
-0x7690 # <CJK>
-0x7693 # <CJK>
-0x7696 # <CJK>
-0x7699 # <CJK>
-0x769A # <CJK>
 0x76AE # <CJK>
-0x76B0 # <CJK>
-0x76B4 # <CJK>
-0x76B7 # <CJK>
-0x76B8 # <CJK>
-0x76B9 # <CJK>
-0x76BA # <CJK>
 0x76BF # <CJK>
-0x76C2 # <CJK>
-0x76C3 # <CJK>
 0x76C6 # <CJK>
-0x76C8 # <CJK>
 0x76CA # <CJK>
-0x76CD # <CJK>
-0x76D2 # <CJK>
-0x76D6 # <CJK>
 0x76D7 # <CJK>
 0x76DB # <CJK>
-0x76DC # <CJK>
-0x76DE # <CJK>
 0x76DF # <CJK>
-0x76E1 # <CJK>
 0x76E3 # <CJK>
 0x76E4 # <CJK>
-0x76E5 # <CJK>
-0x76E7 # <CJK>
-0x76EA # <CJK>
 0x76EE # <CJK>
 0x76F2 # <CJK>
 0x76F4 # <CJK>
 0x76F8 # <CJK>
-0x76FB # <CJK>
 0x76FE # <CJK>
 0x7701 # <CJK>
-0x7704 # <CJK>
-0x7707 # <CJK>
-0x7708 # <CJK>
 0x7709 # <CJK>
 0x770B # <CJK>
 0x770C # <CJK>
-0x771B # <CJK>
-0x771E # <CJK>
 0x771F # <CJK>
 0x7720 # <CJK>
-0x7724 # <CJK>
-0x7725 # <CJK>
-0x7726 # <CJK>
-0x7729 # <CJK>
-0x7737 # <CJK>
-0x7738 # <CJK>
 0x773A # <CJK>
 0x773C # <CJK>
 0x7740 # <CJK>
-0x7747 # <CJK>
-0x775A # <CJK>
-0x775B # <CJK>
 0x7761 # <CJK>
 0x7763 # <CJK>
-0x7765 # <CJK>
 0x7766 # <CJK>
-0x7768 # <CJK>
-0x776B # <CJK>
-0x7779 # <CJK>
-0x777E # <CJK>
-0x777F # <CJK>
-0x778B # <CJK>
-0x778E # <CJK>
-0x7791 # <CJK>
-0x779E # <CJK>
-0x77A0 # <CJK>
-0x77A5 # <CJK>
 0x77AC # <CJK>
 0x77AD # <CJK>
-0x77B0 # <CJK>
 0x77B3 # <CJK>
-0x77B6 # <CJK>
-0x77B9 # <CJK>
-0x77BB # <CJK>
-0x77BC # <CJK>
-0x77BD # <CJK>
-0x77BF # <CJK>
-0x77C7 # <CJK>
-0x77CD # <CJK>
-0x77D7 # <CJK>
-0x77DA # <CJK>
 0x77DB # <CJK>
-0x77DC # <CJK>
 0x77E2 # <CJK>
-0x77E3 # <CJK>
 0x77E5 # <CJK>
-0x77E7 # <CJK>
-0x77E9 # <CJK>
 0x77ED # <CJK>
-0x77EE # <CJK>
 0x77EF # <CJK>
 0x77F3 # <CJK>
-0x77FC # <CJK>
 0x7802 # <CJK>
-0x780C # <CJK>
-0x7812 # <CJK>
 0x7814 # <CJK>
 0x7815 # <CJK>
-0x7820 # <CJK>
-0x7825 # <CJK>
-0x7826 # <CJK>
-0x7827 # <CJK>
 0x7832 # <CJK>
 0x7834 # <CJK>
-0x783A # <CJK>
-0x783F # <CJK>
-0x7845 # <CJK>
 0x785D # <CJK>
 0x786B # <CJK>
 0x786C # <CJK>
-0x786F # <CJK>
-0x7872 # <CJK>
-0x7874 # <CJK>
-0x787C # <CJK>
 0x7881 # <CJK>
-0x7886 # <CJK>
-0x7887 # <CJK>
-0x788C # <CJK>
-0x788D # <CJK>
-0x788E # <CJK>
 0x7891 # <CJK>
-0x7893 # <CJK>
-0x7895 # <CJK>
-0x7897 # <CJK>
-0x789A # <CJK>
-0x78A3 # <CJK>
-0x78A7 # <CJK>
-0x78A9 # <CJK>
-0x78AA # <CJK>
-0x78AF # <CJK>
-0x78B5 # <CJK>
 0x78BA # <CJK>
-0x78BC # <CJK>
-0x78BE # <CJK>
 0x78C1 # <CJK>
-0x78C5 # <CJK>
-0x78C6 # <CJK>
-0x78CA # <CJK>
-0x78CB # <CJK>
-0x78D0 # <CJK>
-0x78D1 # <CJK>
-0x78D4 # <CJK>
-0x78DA # <CJK>
-0x78E7 # <CJK>
 0x78E8 # <CJK>
-0x78EC # <CJK>
-0x78EF # <CJK>
-0x78F4 # <CJK>
-0x78FD # <CJK>
 0x7901 # <CJK>
-0x7907 # <CJK>
 0x790E # <CJK>
-0x7911 # <CJK>
-0x7912 # <CJK>
-0x7919 # <CJK>
-0x7926 # <CJK>
-0x792A # <CJK>
-0x792B # <CJK>
-0x792C # <CJK>
 0x793A # <CJK>
 0x793C # <CJK>
 0x793E # <CJK>
-0x7940 # <CJK>
-0x7941 # <CJK>
-0x7947 # <CJK>
 0x7948 # <CJK>
 0x7949 # <CJK>
-0x7950 # <CJK>
-0x7953 # <CJK>
-0x7955 # <CJK>
 0x7956 # <CJK>
-0x7957 # <CJK>
-0x795A # <CJK>
 0x795D # <CJK>
 0x795E # <CJK>
-0x795F # <CJK>
-0x7960 # <CJK>
-0x7962 # <CJK>
 0x7965 # <CJK>
 0x7968 # <CJK>
 0x796D # <CJK>
-0x7977 # <CJK>
-0x797A # <CJK>
-0x797F # <CJK>
-0x7980 # <CJK>
 0x7981 # <CJK>
-0x7984 # <CJK>
 0x7985 # <CJK>
-0x798A # <CJK>
 0x798D # <CJK>
-0x798E # <CJK>
 0x798F # <CJK>
-0x799D # <CJK>
-0x79A6 # <CJK>
-0x79A7 # <CJK>
-0x79AA # <CJK>
-0x79AE # <CJK>
-0x79B0 # <CJK>
-0x79B3 # <CJK>
-0x79B9 # <CJK>
-0x79BA # <CJK>
-0x79BD # <CJK>
-0x79BE # <CJK>
-0x79BF # <CJK>
 0x79C0 # <CJK>
 0x79C1 # <CJK>
-0x79C9 # <CJK>
 0x79CB # <CJK>
 0x79D1 # <CJK>
 0x79D2 # <CJK>
-0x79D5 # <CJK>
 0x79D8 # <CJK>
 0x79DF # <CJK>
-0x79E1 # <CJK>
-0x79E3 # <CJK>
-0x79E4 # <CJK>
-0x79E6 # <CJK>
-0x79E7 # <CJK>
 0x79E9 # <CJK>
-0x79EC # <CJK>
 0x79F0 # <CJK>
 0x79FB # <CJK>
-0x7A00 # <CJK>
-0x7A08 # <CJK>
 0x7A0B # <CJK>
-0x7A0D # <CJK>
 0x7A0E # <CJK>
-0x7A14 # <CJK>
-0x7A17 # <CJK>
-0x7A18 # <CJK>
-0x7A19 # <CJK>
 0x7A1A # <CJK>
-0x7A1C # <CJK>
-0x7A1F # <CJK>
-0x7A20 # <CJK>
 0x7A2E # <CJK>
-0x7A31 # <CJK>
 0x7A32 # <CJK>
-0x7A37 # <CJK>
-0x7A3B # <CJK>
 0x7A3C # <CJK>
 0x7A3D # <CJK>
-0x7A3E # <CJK>
 0x7A3F # <CJK>
 0x7A40 # <CJK>
 0x7A42 # <CJK>
-0x7A43 # <CJK>
-0x7A46 # <CJK>
-0x7A49 # <CJK>
 0x7A4D # <CJK>
-0x7A4E # <CJK>
 0x7A4F # <CJK>
-0x7A50 # <CJK>
-0x7A57 # <CJK>
-0x7A61 # <CJK>
-0x7A62 # <CJK>
-0x7A63 # <CJK>
-0x7A69 # <CJK>
 0x7A6B # <CJK>
-0x7A70 # <CJK>
 0x7A74 # <CJK>
 0x7A76 # <CJK>
-0x7A79 # <CJK>
 0x7A7A # <CJK>
-0x7A7D # <CJK>
-0x7A7F # <CJK>
 0x7A81 # <CJK>
 0x7A83 # <CJK>
-0x7A84 # <CJK>
-0x7A88 # <CJK>
 0x7A92 # <CJK>
 0x7A93 # <CJK>
-0x7A95 # <CJK>
-0x7A96 # <CJK>
-0x7A97 # <CJK>
-0x7A98 # <CJK>
 0x7A9F # <CJK>
-0x7AA9 # <CJK>
-0x7AAA # <CJK>
 0x7AAE # <CJK>
 0x7AAF # <CJK>
-0x7AB0 # <CJK>
-0x7AB6 # <CJK>
-0x7ABA # <CJK>
-0x7ABF # <CJK>
-0x7AC3 # <CJK>
-0x7AC4 # <CJK>
-0x7AC5 # <CJK>
-0x7AC7 # <CJK>
-0x7AC8 # <CJK>
-0x7ACA # <CJK>
 0x7ACB # <CJK>
-0x7ACD # <CJK>
-0x7ACF # <CJK>
-0x7AD2 # <CJK>
-0x7AD3 # <CJK>
-0x7AD5 # <CJK>
-0x7AD9 # <CJK>
-0x7ADA # <CJK>
 0x7ADC # <CJK>
-0x7ADD # <CJK>
-0x7ADF # <CJK>
 0x7AE0 # <CJK>
-0x7AE1 # <CJK>
-0x7AE2 # <CJK>
-0x7AE3 # <CJK>
 0x7AE5 # <CJK>
-0x7AE6 # <CJK>
-0x7AEA # <CJK>
-0x7AED # <CJK>
 0x7AEF # <CJK>
-0x7AF0 # <CJK>
 0x7AF6 # <CJK>
-0x7AF8 # <CJK>
 0x7AF9 # <CJK>
-0x7AFA # <CJK>
-0x7AFF # <CJK>
-0x7B02 # <CJK>
-0x7B04 # <CJK>
-0x7B06 # <CJK>
-0x7B08 # <CJK>
-0x7B0A # <CJK>
-0x7B0B # <CJK>
-0x7B0F # <CJK>
 0x7B11 # <CJK>
-0x7B18 # <CJK>
-0x7B19 # <CJK>
 0x7B1B # <CJK>
-0x7B1E # <CJK>
-0x7B20 # <CJK>
-0x7B25 # <CJK>
 0x7B26 # <CJK>
-0x7B28 # <CJK>
 0x7B2C # <CJK>
-0x7B33 # <CJK>
-0x7B35 # <CJK>
-0x7B36 # <CJK>
-0x7B39 # <CJK>
-0x7B45 # <CJK>
 0x7B46 # <CJK>
-0x7B48 # <CJK>
 0x7B49 # <CJK>
 0x7B4B # <CJK>
-0x7B4C # <CJK>
-0x7B4D # <CJK>
-0x7B4F # <CJK>
-0x7B50 # <CJK>
-0x7B51 # <CJK>
 0x7B52 # <CJK>
 0x7B54 # <CJK>
 0x7B56 # <CJK>
-0x7B5D # <CJK>
-0x7B65 # <CJK>
-0x7B67 # <CJK>
-0x7B6C # <CJK>
-0x7B6E # <CJK>
-0x7B70 # <CJK>
-0x7B71 # <CJK>
-0x7B74 # <CJK>
-0x7B75 # <CJK>
-0x7B7A # <CJK>
-0x7B86 # <CJK>
 0x7B87 # <CJK>
 0x7B8B # <CJK>
-0x7B8D # <CJK>
-0x7B8F # <CJK>
-0x7B92 # <CJK>
-0x7B94 # <CJK>
-0x7B95 # <CJK>
 0x7B97 # <CJK>
-0x7B98 # <CJK>
-0x7B99 # <CJK>
-0x7B9A # <CJK>
-0x7B9C # <CJK>
-0x7B9D # <CJK>
-0x7B9F # <CJK>
 0x7BA1 # <CJK>
-0x7BAA # <CJK>
-0x7BAD # <CJK>
 0x7BB1 # <CJK>
-0x7BB4 # <CJK>
 0x7BB8 # <CJK>
 0x7BC0 # <CJK>
-0x7BC1 # <CJK>
 0x7BC4 # <CJK>
-0x7BC6 # <CJK>
-0x7BC7 # <CJK>
 0x7BC9 # <CJK>
-0x7BCB # <CJK>
-0x7BCC # <CJK>
-0x7BCF # <CJK>
-0x7BDD # <CJK>
-0x7BE0 # <CJK>
 0x7BE4 # <CJK>
-0x7BE5 # <CJK>
-0x7BE6 # <CJK>
-0x7BE9 # <CJK>
-0x7BED # <CJK>
-0x7BF3 # <CJK>
-0x7BF6 # <CJK>
-0x7BF7 # <CJK>
-0x7C00 # <CJK>
-0x7C07 # <CJK>
-0x7C0D # <CJK>
-0x7C11 # <CJK>
-0x7C12 # <CJK>
-0x7C13 # <CJK>
-0x7C14 # <CJK>
-0x7C17 # <CJK>
-0x7C1F # <CJK>
 0x7C21 # <CJK>
-0x7C23 # <CJK>
-0x7C27 # <CJK>
-0x7C2A # <CJK>
-0x7C2B # <CJK>
-0x7C37 # <CJK>
-0x7C38 # <CJK>
-0x7C3D # <CJK>
-0x7C3E # <CJK>
 0x7C3F # <CJK>
-0x7C40 # <CJK>
-0x7C43 # <CJK>
-0x7C4C # <CJK>
 0x7C4D # <CJK>
-0x7C4F # <CJK>
-0x7C50 # <CJK>
-0x7C54 # <CJK>
-0x7C56 # <CJK>
-0x7C58 # <CJK>
-0x7C5F # <CJK>
 0x7C60 # <CJK>
-0x7C64 # <CJK>
-0x7C65 # <CJK>
-0x7C6C # <CJK>
 0x7C73 # <CJK>
-0x7C75 # <CJK>
-0x7C7E # <CJK>
-0x7C81 # <CJK>
-0x7C82 # <CJK>
-0x7C83 # <CJK>
 0x7C89 # <CJK>
 0x7C8B # <CJK>
-0x7C8D # <CJK>
-0x7C90 # <CJK>
 0x7C92 # <CJK>
-0x7C95 # <CJK>
 0x7C97 # <CJK>
 0x7C98 # <CJK>
 0x7C9B # <CJK>
-0x7C9F # <CJK>
-0x7CA1 # <CJK>
-0x7CA2 # <CJK>
-0x7CA4 # <CJK>
-0x7CA5 # <CJK>
 0x7CA7 # <CJK>
-0x7CA8 # <CJK>
-0x7CAB # <CJK>
-0x7CAD # <CJK>
-0x7CAE # <CJK>
-0x7CB1 # <CJK>
-0x7CB2 # <CJK>
-0x7CB3 # <CJK>
-0x7CB9 # <CJK>
-0x7CBD # <CJK>
 0x7CBE # <CJK>
-0x7CC0 # <CJK>
-0x7CC2 # <CJK>
-0x7CC5 # <CJK>
-0x7CCA # <CJK>
-0x7CCE # <CJK>
-0x7CD2 # <CJK>
 0x7CD6 # <CJK>
-0x7CD8 # <CJK>
-0x7CDC # <CJK>
-0x7CDE # <CJK>
-0x7CDF # <CJK>
-0x7CE0 # <CJK>
-0x7CE2 # <CJK>
 0x7CE7 # <CJK>
-0x7CEF # <CJK>
-0x7CF2 # <CJK>
-0x7CF4 # <CJK>
-0x7CF6 # <CJK>
 0x7CF8 # <CJK>
-0x7CFA # <CJK>
 0x7CFB # <CJK>
 0x7CFE # <CJK>
 0x7D00 # <CJK>
-0x7D02 # <CJK>
 0x7D04 # <CJK>
 0x7D05 # <CJK>
-0x7D06 # <CJK>
-0x7D0A # <CJK>
 0x7D0B # <CJK>
 0x7D0D # <CJK>
-0x7D10 # <CJK>
 0x7D14 # <CJK>
-0x7D15 # <CJK>
-0x7D17 # <CJK>
-0x7D18 # <CJK>
 0x7D19 # <CJK>
 0x7D1A # <CJK>
 0x7D1B # <CJK>
-0x7D1C # <CJK>
 0x7D20 # <CJK>
 0x7D21 # <CJK>
 0x7D22 # <CJK>
 0x7D2B # <CJK>
-0x7D2C # <CJK>
-0x7D2E # <CJK>
 0x7D2F # <CJK>
 0x7D30 # <CJK>
-0x7D32 # <CJK>
 0x7D33 # <CJK>
-0x7D35 # <CJK>
 0x7D39 # <CJK>
 0x7D3A # <CJK>
-0x7D3F # <CJK>
 0x7D42 # <CJK>
-0x7D43 # <CJK>
 0x7D44 # <CJK>
-0x7D45 # <CJK>
-0x7D46 # <CJK>
-0x7D4B # <CJK>
 0x7D4C # <CJK>
-0x7D4E # <CJK>
-0x7D4F # <CJK>
 0x7D50 # <CJK>
-0x7D56 # <CJK>
-0x7D5B # <CJK>
 0x7D5E # <CJK>
 0x7D61 # <CJK>
-0x7D62 # <CJK>
-0x7D63 # <CJK>
 0x7D66 # <CJK>
-0x7D68 # <CJK>
-0x7D6E # <CJK>
 0x7D71 # <CJK>
-0x7D72 # <CJK>
-0x7D73 # <CJK>
 0x7D75 # <CJK>
 0x7D76 # <CJK>
 0x7D79 # <CJK>
-0x7D7D # <CJK>
-0x7D89 # <CJK>
-0x7D8F # <CJK>
-0x7D93 # <CJK>
 0x7D99 # <CJK>
 0x7D9A # <CJK>
-0x7D9B # <CJK>
-0x7D9C # <CJK>
-0x7D9F # <CJK>
-0x7DA2 # <CJK>
-0x7DA3 # <CJK>
-0x7DAB # <CJK>
-0x7DAC # <CJK>
 0x7DAD # <CJK>
-0x7DAE # <CJK>
-0x7DAF # <CJK>
-0x7DB0 # <CJK>
 0x7DB1 # <CJK>
 0x7DB2 # <CJK>
-0x7DB4 # <CJK>
-0x7DB5 # <CJK>
-0x7DB8 # <CJK>
-0x7DBA # <CJK>
 0x7DBB # <CJK>
-0x7DBD # <CJK>
-0x7DBE # <CJK>
 0x7DBF # <CJK>
-0x7DC7 # <CJK>
 0x7DCA # <CJK>
-0x7DCB # <CJK>
 0x7DCF # <CJK>
 0x7DD1 # <CJK>
 0x7DD2 # <CJK>
-0x7DD5 # <CJK>
-0x7DD8 # <CJK>
 0x7DDA # <CJK>
-0x7DDC # <CJK>
-0x7DDD # <CJK>
-0x7DDE # <CJK>
 0x7DE0 # <CJK>
-0x7DE1 # <CJK>
-0x7DE4 # <CJK>
 0x7DE8 # <CJK>
 0x7DE9 # <CJK>
-0x7DEC # <CJK>
 0x7DEF # <CJK>
-0x7DF2 # <CJK>
 0x7DF4 # <CJK>
 0x7DFB # <CJK>
 0x7E01 # <CJK>
 0x7E04 # <CJK>
-0x7E05 # <CJK>
-0x7E09 # <CJK>
-0x7E0A # <CJK>
-0x7E0B # <CJK>
-0x7E12 # <CJK>
 0x7E1B # <CJK>
-0x7E1E # <CJK>
-0x7E1F # <CJK>
-0x7E21 # <CJK>
-0x7E22 # <CJK>
-0x7E23 # <CJK>
 0x7E26 # <CJK>
 0x7E2B # <CJK>
 0x7E2E # <CJK>
-0x7E31 # <CJK>
-0x7E32 # <CJK>
-0x7E35 # <CJK>
-0x7E37 # <CJK>
-0x7E39 # <CJK>
-0x7E3A # <CJK>
-0x7E3B # <CJK>
-0x7E3D # <CJK>
 0x7E3E # <CJK>
 0x7E41 # <CJK>
-0x7E43 # <CJK>
-0x7E46 # <CJK>
 0x7E4A # <CJK>
-0x7E4B # <CJK>
-0x7E4D # <CJK>
 0x7E54 # <CJK>
 0x7E55 # <CJK>
-0x7E56 # <CJK>
-0x7E59 # <CJK>
-0x7E5A # <CJK>
-0x7E5D # <CJK>
-0x7E5E # <CJK>
-0x7E66 # <CJK>
-0x7E67 # <CJK>
-0x7E69 # <CJK>
-0x7E6A # <CJK>
 0x7E6D # <CJK>
 0x7E70 # <CJK>
-0x7E79 # <CJK>
-0x7E7B # <CJK>
-0x7E7C # <CJK>
-0x7E7D # <CJK>
-0x7E7F # <CJK>
-0x7E82 # <CJK>
-0x7E83 # <CJK>
-0x7E88 # <CJK>
-0x7E89 # <CJK>
-0x7E8C # <CJK>
-0x7E8E # <CJK>
-0x7E8F # <CJK>
-0x7E90 # <CJK>
-0x7E92 # <CJK>
-0x7E93 # <CJK>
-0x7E94 # <CJK>
-0x7E96 # <CJK>
-0x7E9B # <CJK>
-0x7E9C # <CJK>
 0x7F36 # <CJK>
-0x7F38 # <CJK>
-0x7F3A # <CJK>
-0x7F45 # <CJK>
-0x7F4C # <CJK>
-0x7F4D # <CJK>
-0x7F4E # <CJK>
-0x7F50 # <CJK>
-0x7F51 # <CJK>
-0x7F54 # <CJK>
-0x7F55 # <CJK>
-0x7F58 # <CJK>
-0x7F5F # <CJK>
-0x7F60 # <CJK>
-0x7F67 # <CJK>
-0x7F68 # <CJK>
-0x7F69 # <CJK>
 0x7F6A # <CJK>
-0x7F6B # <CJK>
 0x7F6E # <CJK>
 0x7F70 # <CJK>
 0x7F72 # <CJK>
 0x7F75 # <CJK>
 0x7F77 # <CJK>
-0x7F78 # <CJK>
-0x7F79 # <CJK>
-0x7F82 # <CJK>
-0x7F83 # <CJK>
 0x7F85 # <CJK>
-0x7F86 # <CJK>
-0x7F87 # <CJK>
-0x7F88 # <CJK>
 0x7F8A # <CJK>
-0x7F8C # <CJK>
 0x7F8E # <CJK>
-0x7F94 # <CJK>
-0x7F9A # <CJK>
-0x7F9D # <CJK>
 0x7F9E # <CJK>
-0x7FA3 # <CJK>
 0x7FA4 # <CJK>
 0x7FA8 # <CJK>
 0x7FA9 # <CJK>
-0x7FAE # <CJK>
-0x7FAF # <CJK>
-0x7FB2 # <CJK>
-0x7FB6 # <CJK>
-0x7FB8 # <CJK>
-0x7FB9 # <CJK>
 0x7FBD # <CJK>
 0x7FC1 # <CJK>
-0x7FC5 # <CJK>
-0x7FC6 # <CJK>
-0x7FCA # <CJK>
 0x7FCC # <CJK>
 0x7FD2 # <CJK>
-0x7FD4 # <CJK>
-0x7FD5 # <CJK>
-0x7FE0 # <CJK>
-0x7FE1 # <CJK>
-0x7FE6 # <CJK>
-0x7FE9 # <CJK>
-0x7FEB # <CJK>
-0x7FF0 # <CJK>
-0x7FF3 # <CJK>
-0x7FF9 # <CJK>
 0x7FFB # <CJK>
 0x7FFC # <CJK>
-0x8000 # <CJK>
 0x8001 # <CJK>
 0x8003 # <CJK>
-0x8004 # <CJK>
 0x8005 # <CJK>
-0x8006 # <CJK>
-0x800B # <CJK>
-0x800C # <CJK>
 0x8010 # <CJK>
-0x8012 # <CJK>
 0x8015 # <CJK>
 0x8017 # <CJK>
-0x8018 # <CJK>
-0x8019 # <CJK>
-0x801C # <CJK>
-0x8021 # <CJK>
-0x8028 # <CJK>
 0x8033 # <CJK>
-0x8036 # <CJK>
-0x803B # <CJK>
-0x803D # <CJK>
-0x803F # <CJK>
-0x8046 # <CJK>
-0x804A # <CJK>
-0x8052 # <CJK>
 0x8056 # <CJK>
-0x8058 # <CJK>
-0x805A # <CJK>
 0x805E # <CJK>
-0x805F # <CJK>
-0x8061 # <CJK>
-0x8062 # <CJK>
-0x8068 # <CJK>
-0x806F # <CJK>
-0x8070 # <CJK>
-0x8072 # <CJK>
-0x8073 # <CJK>
 0x8074 # <CJK>
-0x8076 # <CJK>
 0x8077 # <CJK>
-0x8079 # <CJK>
-0x807D # <CJK>
-0x807E # <CJK>
-0x807F # <CJK>
-0x8084 # <CJK>
-0x8085 # <CJK>
-0x8086 # <CJK>
-0x8087 # <CJK>
 0x8089 # <CJK>
-0x808B # <CJK>
 0x808C # <CJK>
-0x8093 # <CJK>
 0x8096 # <CJK>
 0x8098 # <CJK>
-0x809A # <CJK>
-0x809B # <CJK>
 0x809D # <CJK>
 0x80A1 # <CJK>
 0x80A2 # <CJK>
 0x80A5 # <CJK>
 0x80A9 # <CJK>
 0x80AA # <CJK>
-0x80AC # <CJK>
-0x80AD # <CJK>
 0x80AF # <CJK>
-0x80B1 # <CJK>
 0x80B2 # <CJK>
-0x80B4 # <CJK>
 0x80BA # <CJK>
 0x80C3 # <CJK>
-0x80C4 # <CJK>
 0x80C6 # <CJK>
 0x80CC # <CJK>
 0x80CE # <CJK>
-0x80D6 # <CJK>
-0x80D9 # <CJK>
-0x80DA # <CJK>
-0x80DB # <CJK>
-0x80DD # <CJK>
 0x80DE # <CJK>
-0x80E1 # <CJK>
-0x80E4 # <CJK>
-0x80E5 # <CJK>
-0x80EF # <CJK>
-0x80F1 # <CJK>
 0x80F4 # <CJK>
 0x80F8 # <CJK>
-0x80FC # <CJK>
 0x80FD # <CJK>
 0x8102 # <CJK>
 0x8105 # <CJK>
-0x8106 # <CJK>
 0x8107 # <CJK>
 0x8108 # <CJK>
-0x8109 # <CJK>
 0x810A # <CJK>
 0x811A # <CJK>
-0x811B # <CJK>
-0x8123 # <CJK>
-0x8129 # <CJK>
-0x812F # <CJK>
 0x8131 # <CJK>
 0x8133 # <CJK>
-0x8139 # <CJK>
-0x813E # <CJK>
-0x8146 # <CJK>
-0x814B # <CJK>
 0x814E # <CJK>
 0x8150 # <CJK>
-0x8151 # <CJK>
-0x8153 # <CJK>
-0x8154 # <CJK>
 0x8155 # <CJK>
-0x815F # <CJK>
-0x8165 # <CJK>
-0x8166 # <CJK>
 0x816B # <CJK>
-0x816E # <CJK>
 0x8170 # <CJK>
-0x8171 # <CJK>
-0x8174 # <CJK>
 0x8178 # <CJK>
 0x8179 # <CJK>
 0x817A # <CJK>
-0x817F # <CJK>
-0x8180 # <CJK>
-0x8182 # <CJK>
-0x8183 # <CJK>
-0x8188 # <CJK>
-0x818A # <CJK>
-0x818F # <CJK>
-0x8193 # <CJK>
-0x8195 # <CJK>
 0x819A # <CJK>
 0x819C # <CJK>
 0x819D # <CJK>
-0x81A0 # <CJK>
-0x81A3 # <CJK>
-0x81A4 # <CJK>
 0x81A8 # <CJK>
-0x81A9 # <CJK>
-0x81B0 # <CJK>
 0x81B3 # <CJK>
-0x81B5 # <CJK>
-0x81B8 # <CJK>
-0x81BA # <CJK>
-0x81BD # <CJK>
-0x81BE # <CJK>
-0x81BF # <CJK>
-0x81C0 # <CJK>
-0x81C2 # <CJK>
 0x81C6 # <CJK>
-0x81C8 # <CJK>
-0x81C9 # <CJK>
-0x81CD # <CJK>
-0x81D1 # <CJK>
 0x81D3 # <CJK>
-0x81D8 # <CJK>
-0x81D9 # <CJK>
-0x81DA # <CJK>
-0x81DF # <CJK>
-0x81E0 # <CJK>
 0x81E3 # <CJK>
-0x81E5 # <CJK>
-0x81E7 # <CJK>
 0x81E8 # <CJK>
 0x81EA # <CJK>
 0x81ED # <CJK>
 0x81F3 # <CJK>
 0x81F4 # <CJK>
-0x81FA # <CJK>
-0x81FB # <CJK>
 0x81FC # <CJK>
-0x81FE # <CJK>
-0x8201 # <CJK>
-0x8202 # <CJK>
-0x8205 # <CJK>
-0x8207 # <CJK>
 0x8208 # <CJK>
-0x8209 # <CJK>
-0x820A # <CJK>
 0x820C # <CJK>
-0x820D # <CJK>
 0x820E # <CJK>
-0x8210 # <CJK>
-0x8212 # <CJK>
-0x8216 # <CJK>
 0x8217 # <CJK>
-0x8218 # <CJK>
-0x821B # <CJK>
-0x821C # <CJK>
 0x821E # <CJK>
 0x821F # <CJK>
-0x8229 # <CJK>
 0x822A # <CJK>
-0x822B # <CJK>
 0x822C # <CJK>
-0x822E # <CJK>
-0x8233 # <CJK>
-0x8235 # <CJK>
 0x8236 # <CJK>
 0x8237 # <CJK>
-0x8238 # <CJK>
 0x8239 # <CJK>
-0x8240 # <CJK>
 0x8247 # <CJK>
-0x8258 # <CJK>
-0x8259 # <CJK>
-0x825A # <CJK>
-0x825D # <CJK>
-0x825F # <CJK>
-0x8262 # <CJK>
-0x8264 # <CJK>
 0x8266 # <CJK>
-0x8268 # <CJK>
-0x826A # <CJK>
-0x826B # <CJK>
-0x826E # <CJK>
 0x826F # <CJK>
-0x8271 # <CJK>
 0x8272 # <CJK>
 0x8276 # <CJK>
-0x8277 # <CJK>
-0x8278 # <CJK>
-0x827E # <CJK>
 0x828B # <CJK>
-0x828D # <CJK>
-0x8292 # <CJK>
-0x8299 # <CJK>
 0x829D # <CJK>
-0x829F # <CJK>
-0x82A5 # <CJK>
-0x82A6 # <CJK>
-0x82AB # <CJK>
-0x82AC # <CJK>
-0x82AD # <CJK>
 0x82AF # <CJK>
 0x82B1 # <CJK>
 0x82B3 # <CJK>
 0x82B8 # <CJK>
-0x82B9 # <CJK>
-0x82BB # <CJK>
 0x82BD # <CJK>
-0x82C5 # <CJK>
-0x82D1 # <CJK>
-0x82D2 # <CJK>
-0x82D3 # <CJK>
-0x82D4 # <CJK>
 0x82D7 # <CJK>
-0x82D9 # <CJK>
 0x82DB # <CJK>
-0x82DC # <CJK>
-0x82DE # <CJK>
-0x82DF # <CJK>
-0x82E1 # <CJK>
-0x82E3 # <CJK>
 0x82E5 # <CJK>
 0x82E6 # <CJK>
-0x82E7 # <CJK>
-0x82EB # <CJK>
 0x82F1 # <CJK>
-0x82F3 # <CJK>
-0x82F4 # <CJK>
-0x82F9 # <CJK>
-0x82FA # <CJK>
-0x82FB # <CJK>
 0x8302 # <CJK>
-0x8303 # <CJK>
-0x8304 # <CJK>
-0x8305 # <CJK>
-0x8306 # <CJK>
-0x8309 # <CJK>
 0x830E # <CJK>
-0x8316 # <CJK>
-0x8317 # <CJK>
-0x8318 # <CJK>
-0x831C # <CJK>
-0x8323 # <CJK>
 0x8328 # <CJK>
-0x832B # <CJK>
-0x832F # <CJK>
-0x8331 # <CJK>
-0x8332 # <CJK>
-0x8334 # <CJK>
-0x8335 # <CJK>
 0x8336 # <CJK>
-0x8338 # <CJK>
-0x8339 # <CJK>
-0x8340 # <CJK>
-0x8345 # <CJK>
 0x8349 # <CJK>
-0x834A # <CJK>
-0x834F # <CJK>
-0x8350 # <CJK>
 0x8352 # <CJK>
 0x8358 # <CJK>
-0x8373 # <CJK>
-0x8375 # <CJK>
 0x8377 # <CJK>
-0x837B # <CJK>
-0x837C # <CJK>
-0x8385 # <CJK>
-0x8387 # <CJK>
-0x8389 # <CJK>
-0x838A # <CJK>
-0x838E # <CJK>
-0x8393 # <CJK>
-0x8396 # <CJK>
-0x839A # <CJK>
-0x839E # <CJK>
-0x839F # <CJK>
-0x83A0 # <CJK>
-0x83A2 # <CJK>
-0x83A8 # <CJK>
-0x83AA # <CJK>
-0x83AB # <CJK>
-0x83B1 # <CJK>
-0x83B5 # <CJK>
-0x83BD # <CJK>
-0x83C1 # <CJK>
-0x83C5 # <CJK>
 0x83CA # <CJK>
 0x83CC # <CJK>
-0x83CE # <CJK>
 0x83D3 # <CJK>
-0x83D6 # <CJK>
-0x83D8 # <CJK>
 0x83DC # <CJK>
-0x83DF # <CJK>
-0x83E0 # <CJK>
-0x83E9 # <CJK>
-0x83EB # <CJK>
 0x83EF # <CJK>
-0x83F0 # <CJK>
-0x83F1 # <CJK>
-0x83F2 # <CJK>
-0x83F4 # <CJK>
-0x83F7 # <CJK>
-0x83FB # <CJK>
-0x83FD # <CJK>
-0x8403 # <CJK>
-0x8404 # <CJK>
-0x8407 # <CJK>
-0x840B # <CJK>
-0x840C # <CJK>
-0x840D # <CJK>
 0x840E # <CJK>
-0x8413 # <CJK>
-0x8420 # <CJK>
-0x8422 # <CJK>
-0x8429 # <CJK>
-0x842A # <CJK>
-0x842C # <CJK>
-0x8431 # <CJK>
-0x8435 # <CJK>
-0x8438 # <CJK>
-0x843C # <CJK>
 0x843D # <CJK>
-0x8446 # <CJK>
 0x8449 # <CJK>
-0x844E # <CJK>
 0x8457 # <CJK>
 0x845B # <CJK>
-0x8461 # <CJK>
-0x8462 # <CJK>
-0x8463 # <CJK>
-0x8466 # <CJK>
-0x8469 # <CJK>
-0x846B # <CJK>
 0x846C # <CJK>
-0x846D # <CJK>
-0x846E # <CJK>
-0x846F # <CJK>
-0x8471 # <CJK>
-0x8475 # <CJK>
-0x8477 # <CJK>
-0x8479 # <CJK>
-0x847A # <CJK>
-0x8482 # <CJK>
-0x8484 # <CJK>
-0x848B # <CJK>
-0x8490 # <CJK>
-0x8494 # <CJK>
-0x8499 # <CJK>
-0x849C # <CJK>
-0x849F # <CJK>
-0x84A1 # <CJK>
-0x84AD # <CJK>
-0x84B2 # <CJK>
 0x84B8 # <CJK>
-0x84B9 # <CJK>
-0x84BB # <CJK>
-0x84BC # <CJK>
-0x84BF # <CJK>
-0x84C1 # <CJK>
 0x84C4 # <CJK>
-0x84C6 # <CJK>
-0x84C9 # <CJK>
-0x84CA # <CJK>
 0x84CB # <CJK>
-0x84CD # <CJK>
-0x84D0 # <CJK>
-0x84D1 # <CJK>
-0x84D6 # <CJK>
-0x84D9 # <CJK>
-0x84DA # <CJK>
-0x84EC # <CJK>
-0x84EE # <CJK>
-0x84F4 # <CJK>
-0x84FC # <CJK>
-0x84FF # <CJK>
-0x8500 # <CJK>
-0x8506 # <CJK>
 0x8511 # <CJK>
-0x8513 # <CJK>
-0x8514 # <CJK>
-0x8515 # <CJK>
-0x8517 # <CJK>
-0x8518 # <CJK>
-0x851A # <CJK>
-0x851F # <CJK>
-0x8521 # <CJK>
-0x8526 # <CJK>
-0x852C # <CJK>
-0x852D # <CJK>
 0x8535 # <CJK>
 0x853D # <CJK>
-0x8540 # <CJK>
-0x8541 # <CJK>
-0x8543 # <CJK>
-0x8548 # <CJK>
-0x8549 # <CJK>
-0x854A # <CJK>
-0x854B # <CJK>
-0x854E # <CJK>
-0x8555 # <CJK>
-0x8557 # <CJK>
-0x8558 # <CJK>
-0x855A # <CJK>
-0x8563 # <CJK>
-0x8568 # <CJK>
-0x8569 # <CJK>
-0x856A # <CJK>
-0x856D # <CJK>
-0x8577 # <CJK>
-0x857E # <CJK>
-0x8580 # <CJK>
 0x8584 # <CJK>
-0x8587 # <CJK>
-0x8588 # <CJK>
-0x858A # <CJK>
-0x8590 # <CJK>
-0x8591 # <CJK>
-0x8594 # <CJK>
-0x8597 # <CJK>
-0x8599 # <CJK>
-0x859B # <CJK>
-0x859C # <CJK>
-0x85A4 # <CJK>
 0x85A6 # <CJK>
-0x85A8 # <CJK>
-0x85A9 # <CJK>
 0x85AA # <CJK>
 0x85AB # <CJK>
 0x85AC # <CJK>
-0x85AE # <CJK>
-0x85AF # <CJK>
-0x85B9 # <CJK>
-0x85BA # <CJK>
-0x85C1 # <CJK>
-0x85C9 # <CJK>
 0x85CD # <CJK>
-0x85CF # <CJK>
-0x85D0 # <CJK>
-0x85D5 # <CJK>
-0x85DC # <CJK>
-0x85DD # <CJK>
 0x85E4 # <CJK>
-0x85E5 # <CJK>
 0x85E9 # <CJK>
-0x85EA # <CJK>
-0x85F7 # <CJK>
-0x85F9 # <CJK>
-0x85FA # <CJK>
 0x85FB # <CJK>
-0x85FE # <CJK>
-0x8602 # <CJK>
-0x8606 # <CJK>
-0x8607 # <CJK>
-0x860A # <CJK>
-0x860B # <CJK>
-0x8613 # <CJK>
-0x8616 # <CJK>
-0x8617 # <CJK>
-0x861A # <CJK>
-0x8622 # <CJK>
-0x862D # <CJK>
-0x862F # <CJK>
-0x8630 # <CJK>
-0x863F # <CJK>
-0x864D # <CJK>
 0x864E # <CJK>
 0x8650 # <CJK>
-0x8654 # <CJK>
-0x8655 # <CJK>
 0x865A # <CJK>
 0x865C # <CJK>
 0x865E # <CJK>
-0x865F # <CJK>
-0x8667 # <CJK>
 0x866B # <CJK>
-0x8671 # <CJK>
 0x8679 # <CJK>
-0x867B # <CJK>
 0x868A # <CJK>
-0x868B # <CJK>
-0x868C # <CJK>
-0x8693 # <CJK>
 0x8695 # <CJK>
-0x86A3 # <CJK>
-0x86A4 # <CJK>
-0x86A9 # <CJK>
-0x86AA # <CJK>
-0x86AB # <CJK>
-0x86AF # <CJK>
-0x86B0 # <CJK>
-0x86B6 # <CJK>
-0x86C4 # <CJK>
-0x86C6 # <CJK>
 0x86C7 # <CJK>
-0x86C9 # <CJK>
-0x86CB # <CJK>
 0x86CD # <CJK>
-0x86CE # <CJK>
-0x86D4 # <CJK>
-0x86D9 # <CJK>
-0x86DB # <CJK>
-0x86DE # <CJK>
-0x86DF # <CJK>
-0x86E4 # <CJK>
-0x86E9 # <CJK>
-0x86EC # <CJK>
-0x86ED # <CJK>
 0x86EE # <CJK>
-0x86EF # <CJK>
-0x86F8 # <CJK>
-0x86F9 # <CJK>
-0x86FB # <CJK>
-0x86FE # <CJK>
-0x8700 # <CJK>
 0x8702 # <CJK>
-0x8703 # <CJK>
-0x8706 # <CJK>
-0x8708 # <CJK>
-0x8709 # <CJK>
-0x870A # <CJK>
-0x870D # <CJK>
-0x8711 # <CJK>
-0x8712 # <CJK>
-0x8718 # <CJK>
-0x871A # <CJK>
 0x871C # <CJK>
-0x8725 # <CJK>
-0x8729 # <CJK>
-0x8734 # <CJK>
-0x8737 # <CJK>
-0x873B # <CJK>
-0x873F # <CJK>
-0x8749 # <CJK>
-0x874B # <CJK>
-0x874C # <CJK>
-0x874E # <CJK>
-0x8753 # <CJK>
-0x8755 # <CJK>
-0x8757 # <CJK>
-0x8759 # <CJK>
-0x875F # <CJK>
-0x8760 # <CJK>
-0x8763 # <CJK>
-0x8766 # <CJK>
-0x8768 # <CJK>
-0x876A # <CJK>
-0x876E # <CJK>
-0x8774 # <CJK>
-0x8776 # <CJK>
-0x8778 # <CJK>
-0x877F # <CJK>
-0x8782 # <CJK>
 0x878D # <CJK>
-0x879F # <CJK>
-0x87A2 # <CJK>
-0x87AB # <CJK>
-0x87AF # <CJK>
-0x87B3 # <CJK>
-0x87BA # <CJK>
-0x87BB # <CJK>
-0x87BD # <CJK>
-0x87C0 # <CJK>
-0x87C4 # <CJK>
-0x87C6 # <CJK>
-0x87C7 # <CJK>
-0x87CB # <CJK>
-0x87D0 # <CJK>
-0x87D2 # <CJK>
-0x87E0 # <CJK>
-0x87EF # <CJK>
-0x87F2 # <CJK>
-0x87F6 # <CJK>
-0x87F7 # <CJK>
-0x87F9 # <CJK>
-0x87FB # <CJK>
-0x87FE # <CJK>
-0x8805 # <CJK>
-0x880D # <CJK>
-0x880E # <CJK>
-0x880F # <CJK>
-0x8811 # <CJK>
-0x8815 # <CJK>
-0x8816 # <CJK>
-0x8821 # <CJK>
-0x8822 # <CJK>
-0x8823 # <CJK>
-0x8827 # <CJK>
-0x8831 # <CJK>
-0x8836 # <CJK>
-0x8839 # <CJK>
-0x883B # <CJK>
 0x8840 # <CJK>
-0x8842 # <CJK>
-0x8844 # <CJK>
 0x8846 # <CJK>
 0x884C # <CJK>
-0x884D # <CJK>
-0x8852 # <CJK>
 0x8853 # <CJK>
 0x8857 # <CJK>
-0x8859 # <CJK>
 0x885B # <CJK>
 0x885D # <CJK>
-0x885E # <CJK>
 0x8861 # <CJK>
-0x8862 # <CJK>
 0x8863 # <CJK>
 0x8868 # <CJK>
-0x886B # <CJK>
 0x8870 # <CJK>
-0x8872 # <CJK>
-0x8875 # <CJK>
 0x8877 # <CJK>
-0x887D # <CJK>
-0x887E # <CJK>
-0x887F # <CJK>
-0x8881 # <CJK>
-0x8882 # <CJK>
-0x8888 # <CJK>
 0x888B # <CJK>
-0x888D # <CJK>
-0x8892 # <CJK>
 0x8896 # <CJK>
-0x8897 # <CJK>
-0x8899 # <CJK>
-0x889E # <CJK>
-0x88A2 # <CJK>
-0x88A4 # <CJK>
 0x88AB # <CJK>
-0x88AE # <CJK>
-0x88B0 # <CJK>
-0x88B1 # <CJK>
-0x88B4 # <CJK>
-0x88B5 # <CJK>
-0x88B7 # <CJK>
-0x88BF # <CJK>
 0x88C1 # <CJK>
 0x88C2 # <CJK>
-0x88C3 # <CJK>
-0x88C4 # <CJK>
 0x88C5 # <CJK>
 0x88CF # <CJK>
-0x88D4 # <CJK>
 0x88D5 # <CJK>
-0x88D8 # <CJK>
-0x88D9 # <CJK>
 0x88DC # <CJK>
-0x88DD # <CJK>
-0x88DF # <CJK>
-0x88E1 # <CJK>
-0x88E8 # <CJK>
-0x88F2 # <CJK>
-0x88F3 # <CJK>
-0x88F4 # <CJK>
 0x88F8 # <CJK>
-0x88F9 # <CJK>
-0x88FC # <CJK>
 0x88FD # <CJK>
 0x88FE # <CJK>
-0x8902 # <CJK>
-0x8904 # <CJK>
 0x8907 # <CJK>
-0x890A # <CJK>
-0x890C # <CJK>
 0x8910 # <CJK>
 0x8912 # <CJK>
-0x8913 # <CJK>
-0x891D # <CJK>
-0x891E # <CJK>
-0x8925 # <CJK>
-0x892A # <CJK>
-0x892B # <CJK>
-0x8936 # <CJK>
-0x8938 # <CJK>
-0x893B # <CJK>
-0x8941 # <CJK>
-0x8943 # <CJK>
-0x8944 # <CJK>
-0x894C # <CJK>
-0x894D # <CJK>
-0x8956 # <CJK>
-0x895E # <CJK>
 0x895F # <CJK>
-0x8960 # <CJK>
-0x8964 # <CJK>
-0x8966 # <CJK>
-0x896A # <CJK>
-0x896D # <CJK>
-0x896F # <CJK>
 0x8972 # <CJK>
-0x8974 # <CJK>
-0x8977 # <CJK>
-0x897E # <CJK>
 0x897F # <CJK>
 0x8981 # <CJK>
-0x8983 # <CJK>
 0x8986 # <CJK>
 0x8987 # <CJK>
-0x8988 # <CJK>
-0x898A # <CJK>
 0x898B # <CJK>
 0x898F # <CJK>
-0x8993 # <CJK>
 0x8996 # <CJK>
-0x8997 # <CJK>
-0x8998 # <CJK>
 0x899A # <CJK>
-0x89A1 # <CJK>
-0x89A6 # <CJK>
 0x89A7 # <CJK>
-0x89A9 # <CJK>
 0x89AA # <CJK>
-0x89AC # <CJK>
-0x89AF # <CJK>
-0x89B2 # <CJK>
 0x89B3 # <CJK>
-0x89BA # <CJK>
-0x89BD # <CJK>
-0x89BF # <CJK>
-0x89C0 # <CJK>
 0x89D2 # <CJK>
-0x89DA # <CJK>
-0x89DC # <CJK>
-0x89DD # <CJK>
 0x89E3 # <CJK>
 0x89E6 # <CJK>
-0x89E7 # <CJK>
-0x89F4 # <CJK>
-0x89F8 # <CJK>
 0x8A00 # <CJK>
 0x8A02 # <CJK>
 0x8A03 # <CJK>
 0x8A08 # <CJK>
-0x8A0A # <CJK>
-0x8A0C # <CJK>
 0x8A0E # <CJK>
-0x8A10 # <CJK>
 0x8A13 # <CJK>
-0x8A16 # <CJK>
 0x8A17 # <CJK>
 0x8A18 # <CJK>
-0x8A1B # <CJK>
-0x8A1D # <CJK>
 0x8A1F # <CJK>
-0x8A23 # <CJK>
-0x8A25 # <CJK>
 0x8A2A # <CJK>
 0x8A2D # <CJK>
 0x8A31 # <CJK>
 0x8A33 # <CJK>
 0x8A34 # <CJK>
-0x8A36 # <CJK>
 0x8A3A # <CJK>
-0x8A3B # <CJK>
 0x8A3C # <CJK>
-0x8A41 # <CJK>
-0x8A46 # <CJK>
-0x8A48 # <CJK>
 0x8A50 # <CJK>
-0x8A51 # <CJK>
-0x8A52 # <CJK>
 0x8A54 # <CJK>
 0x8A55 # <CJK>
-0x8A5B # <CJK>
 0x8A5E # <CJK>
 0x8A60 # <CJK>
-0x8A62 # <CJK>
 0x8A63 # <CJK>
 0x8A66 # <CJK>
 0x8A69 # <CJK>
-0x8A6B # <CJK>
-0x8A6C # <CJK>
-0x8A6D # <CJK>
 0x8A6E # <CJK>
 0x8A70 # <CJK>
 0x8A71 # <CJK>
 0x8A72 # <CJK>
 0x8A73 # <CJK>
-0x8A7C # <CJK>
-0x8A82 # <CJK>
-0x8A84 # <CJK>
-0x8A85 # <CJK>
 0x8A87 # <CJK>
 0x8A89 # <CJK>
 0x8A8C # <CJK>
 0x8A8D # <CJK>
-0x8A91 # <CJK>
 0x8A93 # <CJK>
 0x8A95 # <CJK>
 0x8A98 # <CJK>
-0x8A9A # <CJK>
 0x8A9E # <CJK>
 0x8AA0 # <CJK>
-0x8AA1 # <CJK>
-0x8AA3 # <CJK>
 0x8AA4 # <CJK>
-0x8AA5 # <CJK>
-0x8AA6 # <CJK>
-0x8AA8 # <CJK>
 0x8AAC # <CJK>
 0x8AAD # <CJK>
 0x8AB0 # <CJK>
 0x8AB2 # <CJK>
-0x8AB9 # <CJK>
-0x8ABC # <CJK>
 0x8ABF # <CJK>
-0x8AC2 # <CJK>
-0x8AC4 # <CJK>
 0x8AC7 # <CJK>
 0x8ACB # <CJK>
-0x8ACC # <CJK>
-0x8ACD # <CJK>
-0x8ACF # <CJK>
-0x8AD2 # <CJK>
 0x8AD6 # <CJK>
-0x8ADA # <CJK>
-0x8ADB # <CJK>
-0x8ADC # <CJK>
-0x8ADE # <CJK>
-0x8AE0 # <CJK>
-0x8AE1 # <CJK>
-0x8AE2 # <CJK>
-0x8AE4 # <CJK>
 0x8AE6 # <CJK>
 0x8AE7 # <CJK>
-0x8AEB # <CJK>
 0x8AED # <CJK>
 0x8AEE # <CJK>
-0x8AF1 # <CJK>
-0x8AF3 # <CJK>
-0x8AF7 # <CJK>
 0x8AF8 # <CJK>
-0x8AFA # <CJK>
 0x8AFE # <CJK>
 0x8B00 # <CJK>
 0x8B01 # <CJK>
-0x8B02 # <CJK>
 0x8B04 # <CJK>
-0x8B07 # <CJK>
-0x8B0C # <CJK>
 0x8B0E # <CJK>
-0x8B10 # <CJK>
-0x8B14 # <CJK>
-0x8B16 # <CJK>
-0x8B17 # <CJK>
 0x8B19 # <CJK>
-0x8B1A # <CJK>
 0x8B1B # <CJK>
 0x8B1D # <CJK>
-0x8B20 # <CJK>
 0x8B21 # <CJK>
-0x8B26 # <CJK>
-0x8B28 # <CJK>
-0x8B2B # <CJK>
-0x8B2C # <CJK>
-0x8B33 # <CJK>
 0x8B39 # <CJK>
-0x8B3E # <CJK>
-0x8B41 # <CJK>
-0x8B49 # <CJK>
-0x8B4C # <CJK>
-0x8B4E # <CJK>
-0x8B4F # <CJK>
-0x8B56 # <CJK>
 0x8B58 # <CJK>
-0x8B5A # <CJK>
-0x8B5B # <CJK>
 0x8B5C # <CJK>
-0x8B5F # <CJK>
 0x8B66 # <CJK>
-0x8B6B # <CJK>
-0x8B6C # <CJK>
-0x8B6F # <CJK>
 0x8B70 # <CJK>
-0x8B71 # <CJK>
 0x8B72 # <CJK>
-0x8B74 # <CJK>
 0x8B77 # <CJK>
-0x8B7D # <CJK>
-0x8B80 # <CJK>
-0x8B83 # <CJK>
-0x8B8A # <CJK>
-0x8B8C # <CJK>
-0x8B8E # <CJK>
-0x8B90 # <CJK>
-0x8B92 # <CJK>
-0x8B93 # <CJK>
-0x8B96 # <CJK>
-0x8B99 # <CJK>
-0x8B9A # <CJK>
 0x8C37 # <CJK>
-0x8C3A # <CJK>
-0x8C3F # <CJK>
-0x8C41 # <CJK>
 0x8C46 # <CJK>
-0x8C48 # <CJK>
 0x8C4A # <CJK>
-0x8C4C # <CJK>
-0x8C4E # <CJK>
-0x8C50 # <CJK>
-0x8C55 # <CJK>
 0x8C5A # <CJK>
 0x8C61 # <CJK>
-0x8C62 # <CJK>
 0x8C6A # <CJK>
-0x8C6B # <CJK>
-0x8C6C # <CJK>
-0x8C78 # <CJK>
-0x8C79 # <CJK>
-0x8C7A # <CJK>
-0x8C7C # <CJK>
-0x8C82 # <CJK>
-0x8C85 # <CJK>
-0x8C89 # <CJK>
-0x8C8A # <CJK>
 0x8C8C # <CJK>
-0x8C8D # <CJK>
-0x8C8E # <CJK>
-0x8C94 # <CJK>
-0x8C98 # <CJK>
 0x8C9D # <CJK>
 0x8C9E # <CJK>
 0x8CA0 # <CJK>
 0x8CAA # <CJK>
 0x8CAB # <CJK>
 0x8CAC # <CJK>
-0x8CAD # <CJK>
-0x8CAE # <CJK>
 0x8CAF # <CJK>
-0x8CB0 # <CJK>
-0x8CB2 # <CJK>
-0x8CB3 # <CJK>
 0x8CB4 # <CJK>
-0x8CB6 # <CJK>
 0x8CB7 # <CJK>
 0x8CB8 # <CJK>
 0x8CBB # <CJK>
 0x8CBC # <CJK>
-0x8CBD # <CJK>
 0x8CBF # <CJK>
 0x8CC0 # <CJK>
-0x8CC1 # <CJK>
 0x8CC2 # <CJK>
 0x8CC3 # <CJK>
 0x8CC4 # <CJK>
 0x8CC7 # <CJK>
-0x8CC8 # <CJK>
 0x8CCA # <CJK>
-0x8CCD # <CJK>
-0x8CCE # <CJK>
-0x8CD1 # <CJK>
 0x8CD3 # <CJK>
-0x8CDA # <CJK>
 0x8CDB # <CJK>
 0x8CDC # <CJK>
 0x8CDE # <CJK>
 0x8CE0 # <CJK>
 0x8CE2 # <CJK>
-0x8CE3 # <CJK>
-0x8CE4 # <CJK>
 0x8CE6 # <CJK>
 0x8CEA # <CJK>
 0x8CED # <CJK>
-0x8CFA # <CJK>
-0x8CFB # <CJK>
 0x8CFC # <CJK>
-0x8CFD # <CJK>
-0x8D04 # <CJK>
-0x8D05 # <CJK>
-0x8D07 # <CJK>
 0x8D08 # <CJK>
-0x8D0A # <CJK>
-0x8D0B # <CJK>
-0x8D0D # <CJK>
-0x8D0F # <CJK>
-0x8D10 # <CJK>
-0x8D13 # <CJK>
-0x8D14 # <CJK>
-0x8D16 # <CJK>
 0x8D64 # <CJK>
 0x8D66 # <CJK>
-0x8D67 # <CJK>
-0x8D6B # <CJK>
-0x8D6D # <CJK>
 0x8D70 # <CJK>
-0x8D71 # <CJK>
-0x8D73 # <CJK>
 0x8D74 # <CJK>
 0x8D77 # <CJK>
-0x8D81 # <CJK>
 0x8D85 # <CJK>
 0x8D8A # <CJK>
-0x8D99 # <CJK>
 0x8DA3 # <CJK>
-0x8DA8 # <CJK>
 0x8DB3 # <CJK>
-0x8DBA # <CJK>
-0x8DBE # <CJK>
-0x8DC2 # <CJK>
-0x8DCB # <CJK>
-0x8DCC # <CJK>
-0x8DCF # <CJK>
-0x8DD6 # <CJK>
-0x8DDA # <CJK>
-0x8DDB # <CJK>
 0x8DDD # <CJK>
-0x8DDF # <CJK>
 0x8DE1 # <CJK>
-0x8DE3 # <CJK>
-0x8DE8 # <CJK>
-0x8DEA # <CJK>
-0x8DEB # <CJK>
 0x8DEF # <CJK>
 0x8DF3 # <CJK>
 0x8DF5 # <CJK>
-0x8DFC # <CJK>
-0x8DFF # <CJK>
-0x8E08 # <CJK>
-0x8E09 # <CJK>
 0x8E0A # <CJK>
 0x8E0F # <CJK>
-0x8E10 # <CJK>
-0x8E1D # <CJK>
-0x8E1E # <CJK>
-0x8E1F # <CJK>
 0x8E2A # <CJK>
-0x8E30 # <CJK>
-0x8E34 # <CJK>
-0x8E35 # <CJK>
-0x8E42 # <CJK>
-0x8E44 # <CJK>
-0x8E47 # <CJK>
-0x8E48 # <CJK>
-0x8E49 # <CJK>
-0x8E4A # <CJK>
-0x8E4C # <CJK>
-0x8E50 # <CJK>
-0x8E55 # <CJK>
-0x8E59 # <CJK>
-0x8E5F # <CJK>
-0x8E60 # <CJK>
-0x8E63 # <CJK>
-0x8E64 # <CJK>
-0x8E72 # <CJK>
 0x8E74 # <CJK>
-0x8E76 # <CJK>
-0x8E7C # <CJK>
-0x8E81 # <CJK>
-0x8E84 # <CJK>
-0x8E85 # <CJK>
-0x8E87 # <CJK>
-0x8E8A # <CJK>
-0x8E8B # <CJK>
 0x8E8D # <CJK>
-0x8E91 # <CJK>
-0x8E93 # <CJK>
-0x8E94 # <CJK>
-0x8E99 # <CJK>
-0x8EA1 # <CJK>
-0x8EAA # <CJK>
 0x8EAB # <CJK>
-0x8EAC # <CJK>
-0x8EAF # <CJK>
-0x8EB0 # <CJK>
-0x8EB1 # <CJK>
-0x8EBE # <CJK>
-0x8EC5 # <CJK>
-0x8EC6 # <CJK>
-0x8EC8 # <CJK>
 0x8ECA # <CJK>
-0x8ECB # <CJK>
 0x8ECC # <CJK>
 0x8ECD # <CJK>
 0x8ED2 # <CJK>
-0x8EDB # <CJK>
 0x8EDF # <CJK>
 0x8EE2 # <CJK>
-0x8EE3 # <CJK>
-0x8EEB # <CJK>
 0x8EF8 # <CJK>
-0x8EFB # <CJK>
-0x8EFC # <CJK>
 0x8EFD # <CJK>
-0x8EFE # <CJK>
 0x8F03 # <CJK>
-0x8F05 # <CJK>
 0x8F09 # <CJK>
-0x8F0A # <CJK>
-0x8F0C # <CJK>
-0x8F12 # <CJK>
-0x8F13 # <CJK>
-0x8F14 # <CJK>
-0x8F15 # <CJK>
-0x8F19 # <CJK>
-0x8F1B # <CJK>
-0x8F1C # <CJK>
 0x8F1D # <CJK>
-0x8F1F # <CJK>
-0x8F26 # <CJK>
 0x8F29 # <CJK>
 0x8F2A # <CJK>
-0x8F2F # <CJK>
-0x8F33 # <CJK>
 0x8F38 # <CJK>
-0x8F39 # <CJK>
-0x8F3B # <CJK>
-0x8F3E # <CJK>
-0x8F3F # <CJK>
-0x8F42 # <CJK>
 0x8F44 # <CJK>
-0x8F45 # <CJK>
-0x8F46 # <CJK>
-0x8F49 # <CJK>
-0x8F4C # <CJK>
-0x8F4D # <CJK>
-0x8F4E # <CJK>
-0x8F57 # <CJK>
-0x8F5C # <CJK>
-0x8F5F # <CJK>
-0x8F61 # <CJK>
-0x8F62 # <CJK>
-0x8F63 # <CJK>
-0x8F64 # <CJK>
 0x8F9B # <CJK>
-0x8F9C # <CJK>
 0x8F9E # <CJK>
-0x8F9F # <CJK>
 0x8FA3 # <CJK>
-0x8FA7 # <CJK>
-0x8FA8 # <CJK>
-0x8FAD # <CJK>
-0x8FAE # <CJK>
-0x8FAF # <CJK>
-0x8FB0 # <CJK>
 0x8FB1 # <CJK>
 0x8FB2 # <CJK>
-0x8FB7 # <CJK>
 0x8FBA # <CJK>
-0x8FBB # <CJK>
 0x8FBC # <CJK>
-0x8FBF # <CJK>
-0x8FC2 # <CJK>
-0x8FC4 # <CJK>
 0x8FC5 # <CJK>
 0x8FCE # <CJK>
 0x8FD1 # <CJK>
 0x8FD4 # <CJK>
-0x8FDA # <CJK>
-0x8FE2 # <CJK>
-0x8FE5 # <CJK>
-0x8FE6 # <CJK>
-0x8FE9 # <CJK>
-0x8FEA # <CJK>
 0x8FEB # <CJK>
 0x8FED # <CJK>
-0x8FEF # <CJK>
 0x8FF0 # <CJK>
-0x8FF4 # <CJK>
 0x8FF7 # <CJK>
-0x8FF8 # <CJK>
-0x8FF9 # <CJK>
-0x8FFA # <CJK>
 0x8FFD # <CJK>
 0x9000 # <CJK>
 0x9001 # <CJK>
 0x9003 # <CJK>
-0x9005 # <CJK>
 0x9006 # <CJK>
-0x900B # <CJK>
-0x900D # <CJK>
-0x900E # <CJK>
 0x900F # <CJK>
 0x9010 # <CJK>
-0x9011 # <CJK>
 0x9013 # <CJK>
 0x9014 # <CJK>
-0x9015 # <CJK>
-0x9016 # <CJK>
-0x9017 # <CJK>
-0x9019 # <CJK>
 0x901A # <CJK>
 0x901D # <CJK>
-0x901E # <CJK>
 0x901F # <CJK>
 0x9020 # <CJK>
-0x9021 # <CJK>
-0x9022 # <CJK>
 0x9023 # <CJK>
-0x9027 # <CJK>
 0x902E # <CJK>
 0x9031 # <CJK>
 0x9032 # <CJK>
-0x9035 # <CJK>
-0x9036 # <CJK>
 0x9038 # <CJK>
-0x9039 # <CJK>
-0x903C # <CJK>
-0x903E # <CJK>
-0x9041 # <CJK>
 0x9042 # <CJK>
 0x9045 # <CJK>
 0x9047 # <CJK>
-0x9049 # <CJK>
 0x904A # <CJK>
 0x904B # <CJK>
 0x904D # <CJK>
 0x904E # <CJK>
-0x904F # <CJK>
-0x9050 # <CJK>
-0x9051 # <CJK>
-0x9052 # <CJK>
 0x9053 # <CJK>
 0x9054 # <CJK>
 0x9055 # <CJK>
-0x9056 # <CJK>
-0x9058 # <CJK>
-0x9059 # <CJK>
 0x905C # <CJK>
-0x905E # <CJK>
 0x9060 # <CJK>
 0x9061 # <CJK>
 0x9063 # <CJK>
-0x9065 # <CJK>
-0x9068 # <CJK>
 0x9069 # <CJK>
 0x906D # <CJK>
 0x906E # <CJK>
-0x906F # <CJK>
-0x9072 # <CJK>
 0x9075 # <CJK>
-0x9076 # <CJK>
 0x9077 # <CJK>
 0x9078 # <CJK>
 0x907A # <CJK>
-0x907C # <CJK>
-0x907D # <CJK>
 0x907F # <CJK>
-0x9080 # <CJK>
-0x9081 # <CJK>
-0x9082 # <CJK>
-0x9083 # <CJK>
 0x9084 # <CJK>
-0x9087 # <CJK>
-0x9089 # <CJK>
-0x908A # <CJK>
-0x908F # <CJK>
-0x9091 # <CJK>
 0x90A3 # <CJK>
 0x90A6 # <CJK>
-0x90A8 # <CJK>
 0x90AA # <CJK>
-0x90AF # <CJK>
-0x90B1 # <CJK>
-0x90B5 # <CJK>
 0x90B8 # <CJK>
-0x90C1 # <CJK>
 0x90CA # <CJK>
 0x90CE # <CJK>
-0x90DB # <CJK>
 0x90E1 # <CJK>
-0x90E2 # <CJK>
-0x90E4 # <CJK>
 0x90E8 # <CJK>
 0x90ED # <CJK>
 0x90F5 # <CJK>
 0x90F7 # <CJK>
 0x90FD # <CJK>
-0x9102 # <CJK>
-0x9112 # <CJK>
-0x9119 # <CJK>
-0x912D # <CJK>
-0x9130 # <CJK>
-0x9132 # <CJK>
-0x9149 # <CJK>
-0x914A # <CJK>
-0x914B # <CJK>
 0x914C # <CJK>
 0x914D # <CJK>
 0x914E # <CJK>
 0x9152 # <CJK>
 0x9154 # <CJK>
-0x9156 # <CJK>
-0x9158 # <CJK>
 0x9162 # <CJK>
-0x9163 # <CJK>
-0x9165 # <CJK>
-0x9169 # <CJK>
 0x916A # <CJK>
 0x916C # <CJK>
-0x9172 # <CJK>
-0x9173 # <CJK>
 0x9175 # <CJK>
 0x9177 # <CJK>
 0x9178 # <CJK>
-0x9182 # <CJK>
-0x9187 # <CJK>
-0x9189 # <CJK>
-0x918B # <CJK>
-0x918D # <CJK>
-0x9190 # <CJK>
 0x9192 # <CJK>
-0x9197 # <CJK>
 0x919C # <CJK>
-0x91A2 # <CJK>
-0x91A4 # <CJK>
-0x91AA # <CJK>
-0x91AB # <CJK>
-0x91AF # <CJK>
-0x91B4 # <CJK>
-0x91B5 # <CJK>
 0x91B8 # <CJK>
-0x91BA # <CJK>
-0x91C0 # <CJK>
-0x91C1 # <CJK>
-0x91C6 # <CJK>
 0x91C7 # <CJK>
 0x91C8 # <CJK>
-0x91C9 # <CJK>
-0x91CB # <CJK>
 0x91CC # <CJK>
 0x91CD # <CJK>
 0x91CE # <CJK>
 0x91CF # <CJK>
-0x91D0 # <CJK>
 0x91D1 # <CJK>
-0x91D6 # <CJK>
-0x91D8 # <CJK>
-0x91DB # <CJK>
 0x91DC # <CJK>
 0x91DD # <CJK>
-0x91DF # <CJK>
-0x91E1 # <CJK>
 0x91E3 # <CJK>
-0x91E6 # <CJK>
-0x91E7 # <CJK>
-0x91F5 # <CJK>
-0x91F6 # <CJK>
-0x91FC # <CJK>
-0x91FF # <CJK>
 0x920D # <CJK>
-0x920E # <CJK>
-0x9211 # <CJK>
-0x9214 # <CJK>
-0x9215 # <CJK>
-0x921E # <CJK>
-0x9229 # <CJK>
-0x922C # <CJK>
 0x9234 # <CJK>
-0x9237 # <CJK>
-0x923F # <CJK>
 0x9244 # <CJK>
-0x9245 # <CJK>
-0x9248 # <CJK>
-0x9249 # <CJK>
-0x924B # <CJK>
-0x9250 # <CJK>
-0x9257 # <CJK>
-0x925A # <CJK>
 0x925B # <CJK>
-0x925E # <CJK>
 0x9262 # <CJK>
-0x9264 # <CJK>
-0x9266 # <CJK>
 0x9271 # <CJK>
-0x927E # <CJK>
 0x9280 # <CJK>
 0x9283 # <CJK>
 0x9285 # <CJK>
-0x9291 # <CJK>
-0x9293 # <CJK>
-0x9295 # <CJK>
-0x9296 # <CJK>
 0x9298 # <CJK>
-0x929A # <CJK>
-0x929B # <CJK>
-0x929C # <CJK>
 0x92AD # <CJK>
-0x92B7 # <CJK>
-0x92B9 # <CJK>
-0x92CF # <CJK>
-0x92D2 # <CJK>
-0x92E4 # <CJK>
-0x92E9 # <CJK>
-0x92EA # <CJK>
 0x92ED # <CJK>
-0x92F2 # <CJK>
 0x92F3 # <CJK>
-0x92F8 # <CJK>
-0x92FA # <CJK>
 0x92FC # <CJK>
-0x9306 # <CJK>
-0x930F # <CJK>
-0x9310 # <CJK>
-0x9318 # <CJK>
-0x9319 # <CJK>
-0x931A # <CJK>
 0x9320 # <CJK>
-0x9322 # <CJK>
-0x9323 # <CJK>
 0x9326 # <CJK>
-0x9328 # <CJK>
-0x932B # <CJK>
 0x932C # <CJK>
 0x932E # <CJK>
 0x932F # <CJK>
 0x9332 # <CJK>
-0x9335 # <CJK>
-0x933A # <CJK>
-0x933B # <CJK>
-0x9344 # <CJK>
 0x934B # <CJK>
-0x934D # <CJK>
-0x9354 # <CJK>
-0x9356 # <CJK>
 0x935B # <CJK>
-0x935C # <CJK>
-0x9360 # <CJK>
-0x936C # <CJK>
-0x936E # <CJK>
 0x9375 # <CJK>
-0x937C # <CJK>
-0x937E # <CJK>
 0x938C # <CJK>
-0x9394 # <CJK>
 0x9396 # <CJK>
-0x9397 # <CJK>
-0x939A # <CJK>
-0x93A7 # <CJK>
-0x93AC # <CJK>
-0x93AD # <CJK>
 0x93AE # <CJK>
-0x93B0 # <CJK>
-0x93B9 # <CJK>
-0x93C3 # <CJK>
-0x93C8 # <CJK>
-0x93D0 # <CJK>
-0x93D1 # <CJK>
-0x93D6 # <CJK>
-0x93D7 # <CJK>
-0x93D8 # <CJK>
-0x93DD # <CJK>
 0x93E1 # <CJK>
-0x93E4 # <CJK>
-0x93E5 # <CJK>
-0x93E8 # <CJK>
-0x9403 # <CJK>
-0x9407 # <CJK>
-0x9410 # <CJK>
-0x9413 # <CJK>
-0x9414 # <CJK>
 0x9418 # <CJK>
-0x9419 # <CJK>
-0x941A # <CJK>
-0x9421 # <CJK>
-0x942B # <CJK>
-0x9435 # <CJK>
-0x9436 # <CJK>
-0x9438 # <CJK>
-0x943A # <CJK>
-0x9441 # <CJK>
-0x9444 # <CJK>
 0x9451 # <CJK>
-0x9452 # <CJK>
-0x9453 # <CJK>
-0x945A # <CJK>
-0x945B # <CJK>
-0x945E # <CJK>
-0x9460 # <CJK>
-0x9462 # <CJK>
-0x946A # <CJK>
-0x9470 # <CJK>
-0x9475 # <CJK>
-0x9477 # <CJK>
-0x947C # <CJK>
-0x947D # <CJK>
-0x947E # <CJK>
-0x947F # <CJK>
-0x9481 # <CJK>
 0x9577 # <CJK>
 0x9580 # <CJK>
-0x9582 # <CJK>
-0x9583 # <CJK>
-0x9587 # <CJK>
 0x9589 # <CJK>
-0x958A # <CJK>
 0x958B # <CJK>
-0x958F # <CJK>
 0x9591 # <CJK>
 0x9593 # <CJK>
-0x9594 # <CJK>
-0x9596 # <CJK>
-0x9598 # <CJK>
-0x9599 # <CJK>
-0x95A0 # <CJK>
 0x95A2 # <CJK>
 0x95A3 # <CJK>
-0x95A4 # <CJK>
 0x95A5 # <CJK>
-0x95A7 # <CJK>
-0x95A8 # <CJK>
-0x95AD # <CJK>
 0x95B2 # <CJK>
-0x95B9 # <CJK>
-0x95BB # <CJK>
-0x95BC # <CJK>
-0x95BE # <CJK>
-0x95C3 # <CJK>
 0x95C7 # <CJK>
-0x95CA # <CJK>
-0x95CC # <CJK>
-0x95CD # <CJK>
-0x95D4 # <CJK>
-0x95D5 # <CJK>
-0x95D6 # <CJK>
 0x95D8 # <CJK>
-0x95DC # <CJK>
-0x95E1 # <CJK>
-0x95E2 # <CJK>
-0x95E5 # <CJK>
 0x961C # <CJK>
-0x9621 # <CJK>
-0x9628 # <CJK>
 0x962A # <CJK>
-0x962E # <CJK>
-0x962F # <CJK>
 0x9632 # <CJK>
 0x963B # <CJK>
-0x963F # <CJK>
-0x9640 # <CJK>
-0x9642 # <CJK>
 0x9644 # <CJK>
-0x964B # <CJK>
-0x964C # <CJK>
 0x964D # <CJK>
-0x964F # <CJK>
 0x9650 # <CJK>
 0x965B # <CJK>
-0x965C # <CJK>
-0x965D # <CJK>
-0x965E # <CJK>
-0x965F # <CJK>
 0x9662 # <CJK>
 0x9663 # <CJK>
 0x9664 # <CJK>
 0x9665 # <CJK>
-0x9666 # <CJK>
 0x966A # <CJK>
-0x966C # <CJK>
 0x9670 # <CJK>
-0x9672 # <CJK>
 0x9673 # <CJK>
 0x9675 # <CJK>
 0x9676 # <CJK>
-0x9677 # <CJK>
 0x9678 # <CJK>
 0x967A # <CJK>
 0x967D # <CJK>
 0x9685 # <CJK>
 0x9686 # <CJK>
-0x9688 # <CJK>
 0x968A # <CJK>
-0x968B # <CJK>
-0x968D # <CJK>
 0x968E # <CJK>
 0x968F # <CJK>
 0x9694 # <CJK>
-0x9695 # <CJK>
-0x9697 # <CJK>
-0x9698 # <CJK>
 0x9699 # <CJK>
 0x969B # <CJK>
 0x969C # <CJK>
 0x96A0 # <CJK>
 0x96A3 # <CJK>
-0x96A7 # <CJK>
-0x96A8 # <CJK>
-0x96AA # <CJK>
-0x96B0 # <CJK>
-0x96B1 # <CJK>
-0x96B2 # <CJK>
-0x96B4 # <CJK>
-0x96B6 # <CJK>
 0x96B7 # <CJK>
-0x96B8 # <CJK>
-0x96B9 # <CJK>
 0x96BB # <CJK>
-0x96BC # <CJK>
-0x96C0 # <CJK>
-0x96C1 # <CJK>
 0x96C4 # <CJK>
 0x96C5 # <CJK>
 0x96C6 # <CJK>
 0x96C7 # <CJK>
-0x96C9 # <CJK>
-0x96CB # <CJK>
 0x96CC # <CJK>
-0x96CD # <CJK>
-0x96CE # <CJK>
 0x96D1 # <CJK>
-0x96D5 # <CJK>
-0x96D6 # <CJK>
-0x96D9 # <CJK>
-0x96DB # <CJK>
-0x96DC # <CJK>
 0x96E2 # <CJK>
 0x96E3 # <CJK>
 0x96E8 # <CJK>
 0x96EA # <CJK>
-0x96EB # <CJK>
 0x96F0 # <CJK>
 0x96F2 # <CJK>
 0x96F6 # <CJK>
 0x96F7 # <CJK>
-0x96F9 # <CJK>
 0x96FB # <CJK>
 0x9700 # <CJK>
-0x9704 # <CJK>
-0x9706 # <CJK>
 0x9707 # <CJK>
-0x9708 # <CJK>
 0x970A # <CJK>
-0x970D # <CJK>
-0x970E # <CJK>
-0x970F # <CJK>
-0x9711 # <CJK>
-0x9713 # <CJK>
-0x9716 # <CJK>
-0x9719 # <CJK>
 0x971C # <CJK>
-0x971E # <CJK>
-0x9724 # <CJK>
 0x9727 # <CJK>
-0x972A # <CJK>
-0x9730 # <CJK>
 0x9732 # <CJK>
-0x9738 # <CJK>
-0x9739 # <CJK>
-0x973D # <CJK>
-0x973E # <CJK>
-0x9742 # <CJK>
-0x9744 # <CJK>
-0x9746 # <CJK>
-0x9748 # <CJK>
-0x9749 # <CJK>
 0x9752 # <CJK>
-0x9756 # <CJK>
 0x9759 # <CJK>
-0x975C # <CJK>
 0x975E # <CJK>
-0x9760 # <CJK>
-0x9761 # <CJK>
 0x9762 # <CJK>
-0x9764 # <CJK>
-0x9766 # <CJK>
-0x9768 # <CJK>
 0x9769 # <CJK>
-0x976B # <CJK>
-0x976D # <CJK>
-0x9771 # <CJK>
 0x9774 # <CJK>
-0x9779 # <CJK>
-0x977A # <CJK>
-0x977C # <CJK>
-0x9781 # <CJK>
-0x9784 # <CJK>
-0x9785 # <CJK>
-0x9786 # <CJK>
-0x978B # <CJK>
-0x978D # <CJK>
-0x978F # <CJK>
-0x9790 # <CJK>
-0x9798 # <CJK>
-0x979C # <CJK>
-0x97A0 # <CJK>
-0x97A3 # <CJK>
-0x97A6 # <CJK>
-0x97A8 # <CJK>
-0x97AB # <CJK>
-0x97AD # <CJK>
-0x97B3 # <CJK>
-0x97B4 # <CJK>
-0x97C3 # <CJK>
-0x97C6 # <CJK>
-0x97C8 # <CJK>
-0x97CB # <CJK>
 0x97D3 # <CJK>
-0x97DC # <CJK>
-0x97ED # <CJK>
-0x97EE # <CJK>
-0x97F2 # <CJK>
 0x97F3 # <CJK>
-0x97F5 # <CJK>
-0x97F6 # <CJK>
 0x97FB # <CJK>
 0x97FF # <CJK>
-0x9801 # <CJK>
 0x9802 # <CJK>
 0x9803 # <CJK>
 0x9805 # <CJK>
 0x9806 # <CJK>
 0x9808 # <CJK>
-0x980C # <CJK>
-0x980F # <CJK>
 0x9810 # <CJK>
 0x9811 # <CJK>
 0x9812 # <CJK>
 0x9813 # <CJK>
-0x9817 # <CJK>
 0x9818 # <CJK>
-0x981A # <CJK>
-0x9821 # <CJK>
-0x9824 # <CJK>
-0x982C # <CJK>
 0x982D # <CJK>
-0x9834 # <CJK>
-0x9837 # <CJK>
-0x9838 # <CJK>
+#0x9830        # <CJK> # not in DroidSansJapanese
 0x983B # <CJK>
 0x983C # <CJK>
-0x983D # <CJK>
-0x9846 # <CJK>
-0x984B # <CJK>
 0x984C # <CJK>
 0x984D # <CJK>
 0x984E # <CJK>
-0x984F # <CJK>
 0x9854 # <CJK>
 0x9855 # <CJK>
 0x9858 # <CJK>
-0x985B # <CJK>
 0x985E # <CJK>
 0x9867 # <CJK>
-0x986B # <CJK>
-0x986F # <CJK>
-0x9870 # <CJK>
-0x9871 # <CJK>
-0x9873 # <CJK>
-0x9874 # <CJK>
 0x98A8 # <CJK>
-0x98AA # <CJK>
-0x98AF # <CJK>
-0x98B1 # <CJK>
-0x98B6 # <CJK>
-0x98C3 # <CJK>
-0x98C4 # <CJK>
-0x98C6 # <CJK>
 0x98DB # <CJK>
-0x98DC # <CJK>
 0x98DF # <CJK>
 0x98E2 # <CJK>
-0x98E9 # <CJK>
-0x98EB # <CJK>
-0x98ED # <CJK>
-0x98EE # <CJK>
 0x98EF # <CJK>
 0x98F2 # <CJK>
-0x98F4 # <CJK>
 0x98FC # <CJK>
 0x98FD # <CJK>
 0x98FE # <CJK>
-0x9903 # <CJK>
 0x9905 # <CJK>
-0x9909 # <CJK>
 0x990A # <CJK>
 0x990C # <CJK>
-0x9910 # <CJK>
-0x9912 # <CJK>
 0x9913 # <CJK>
-0x9914 # <CJK>
-0x9918 # <CJK>
-0x991D # <CJK>
-0x991E # <CJK>
-0x9920 # <CJK>
-0x9921 # <CJK>
-0x9924 # <CJK>
 0x9928 # <CJK>
-0x992C # <CJK>
-0x992E # <CJK>
-0x993D # <CJK>
-0x993E # <CJK>
-0x9942 # <CJK>
-0x9945 # <CJK>
-0x9949 # <CJK>
-0x994B # <CJK>
-0x994C # <CJK>
-0x9950 # <CJK>
-0x9951 # <CJK>
-0x9952 # <CJK>
-0x9955 # <CJK>
-0x9957 # <CJK>
 0x9996 # <CJK>
-0x9997 # <CJK>
-0x9998 # <CJK>
 0x9999 # <CJK>
-0x99A5 # <CJK>
-0x99A8 # <CJK>
 0x99AC # <CJK>
-0x99AD # <CJK>
-0x99AE # <CJK>
-0x99B3 # <CJK>
-0x99B4 # <CJK>
-0x99BC # <CJK>
-0x99C1 # <CJK>
 0x99C4 # <CJK>
 0x99C5 # <CJK>
 0x99C6 # <CJK>
-0x99C8 # <CJK>
 0x99D0 # <CJK>
-0x99D1 # <CJK>
 0x99D2 # <CJK>
-0x99D5 # <CJK>
-0x99D8 # <CJK>
-0x99DB # <CJK>
-0x99DD # <CJK>
-0x99DF # <CJK>
-0x99E2 # <CJK>
-0x99ED # <CJK>
-0x99EE # <CJK>
-0x99F1 # <CJK>
-0x99F2 # <CJK>
-0x99F8 # <CJK>
-0x99FB # <CJK>
-0x99FF # <CJK>
-0x9A01 # <CJK>
-0x9A05 # <CJK>
 0x9A0E # <CJK>
-0x9A0F # <CJK>
 0x9A12 # <CJK>
 0x9A13 # <CJK>
-0x9A19 # <CJK>
-0x9A28 # <CJK>
-0x9A2B # <CJK>
 0x9A30 # <CJK>
-0x9A37 # <CJK>
-0x9A3E # <CJK>
-0x9A40 # <CJK>
-0x9A42 # <CJK>
-0x9A43 # <CJK>
-0x9A45 # <CJK>
-0x9A4D # <CJK>
-0x9A55 # <CJK>
-0x9A57 # <CJK>
 0x9A5A # <CJK>
-0x9A5B # <CJK>
-0x9A5F # <CJK>
-0x9A62 # <CJK>
-0x9A64 # <CJK>
-0x9A65 # <CJK>
-0x9A69 # <CJK>
-0x9A6A # <CJK>
-0x9A6B # <CJK>
 0x9AA8 # <CJK>
-0x9AAD # <CJK>
-0x9AB0 # <CJK>
 0x9AB8 # <CJK>
-0x9ABC # <CJK>
-0x9AC0 # <CJK>
 0x9AC4 # <CJK>
-0x9ACF # <CJK>
-0x9AD1 # <CJK>
-0x9AD3 # <CJK>
-0x9AD4 # <CJK>
 0x9AD8 # <CJK>
-0x9ADE # <CJK>
-0x9ADF # <CJK>
-0x9AE2 # <CJK>
-0x9AE3 # <CJK>
-0x9AE6 # <CJK>
 0x9AEA # <CJK>
-0x9AEB # <CJK>
-0x9AED # <CJK>
-0x9AEE # <CJK>
-0x9AEF # <CJK>
-0x9AF1 # <CJK>
-0x9AF4 # <CJK>
-0x9AF7 # <CJK>
-0x9AFB # <CJK>
-0x9B06 # <CJK>
-0x9B18 # <CJK>
-0x9B1A # <CJK>
-0x9B1F # <CJK>
-0x9B22 # <CJK>
-0x9B23 # <CJK>
-0x9B25 # <CJK>
-0x9B27 # <CJK>
-0x9B28 # <CJK>
-0x9B29 # <CJK>
-0x9B2A # <CJK>
-0x9B2E # <CJK>
-0x9B2F # <CJK>
 0x9B31 # <CJK>
-0x9B32 # <CJK>
-0x9B3B # <CJK>
 0x9B3C # <CJK>
-0x9B41 # <CJK>
 0x9B42 # <CJK>
-0x9B43 # <CJK>
-0x9B44 # <CJK>
 0x9B45 # <CJK>
-0x9B4D # <CJK>
-0x9B4E # <CJK>
-0x9B4F # <CJK>
-0x9B51 # <CJK>
 0x9B54 # <CJK>
-0x9B58 # <CJK>
 0x9B5A # <CJK>
-0x9B6F # <CJK>
-0x9B74 # <CJK>
-0x9B83 # <CJK>
-0x9B8E # <CJK>
-0x9B91 # <CJK>
-0x9B92 # <CJK>
-0x9B93 # <CJK>
-0x9B96 # <CJK>
-0x9B97 # <CJK>
-0x9B9F # <CJK>
-0x9BA0 # <CJK>
-0x9BA8 # <CJK>
-0x9BAA # <CJK>
-0x9BAB # <CJK>
-0x9BAD # <CJK>
 0x9BAE # <CJK>
-0x9BB4 # <CJK>
-0x9BB9 # <CJK>
-0x9BC0 # <CJK>
-0x9BC6 # <CJK>
-0x9BC9 # <CJK>
-0x9BCA # <CJK>
-0x9BCF # <CJK>
-0x9BD1 # <CJK>
-0x9BD2 # <CJK>
-0x9BD4 # <CJK>
-0x9BD6 # <CJK>
-0x9BDB # <CJK>
-0x9BE1 # <CJK>
-0x9BE2 # <CJK>
-0x9BE3 # <CJK>
-0x9BE4 # <CJK>
 0x9BE8 # <CJK>
-0x9BF0 # <CJK>
-0x9BF1 # <CJK>
-0x9BF2 # <CJK>
-0x9BF5 # <CJK>
-0x9C04 # <CJK>
-0x9C06 # <CJK>
-0x9C08 # <CJK>
-0x9C09 # <CJK>
-0x9C0A # <CJK>
-0x9C0C # <CJK>
-0x9C0D # <CJK>
-0x9C10 # <CJK>
-0x9C12 # <CJK>
-0x9C13 # <CJK>
-0x9C14 # <CJK>
-0x9C15 # <CJK>
-0x9C1B # <CJK>
-0x9C21 # <CJK>
-0x9C24 # <CJK>
-0x9C25 # <CJK>
-0x9C2D # <CJK>
-0x9C2E # <CJK>
-0x9C2F # <CJK>
-0x9C30 # <CJK>
-0x9C32 # <CJK>
-0x9C39 # <CJK>
-0x9C3A # <CJK>
-0x9C3B # <CJK>
-0x9C3E # <CJK>
-0x9C46 # <CJK>
-0x9C47 # <CJK>
-0x9C48 # <CJK>
-0x9C52 # <CJK>
-0x9C57 # <CJK>
-0x9C5A # <CJK>
-0x9C60 # <CJK>
-0x9C67 # <CJK>
-0x9C76 # <CJK>
-0x9C78 # <CJK>
 0x9CE5 # <CJK>
-0x9CE7 # <CJK>
-0x9CE9 # <CJK>
-0x9CEB # <CJK>
-0x9CEC # <CJK>
-0x9CF0 # <CJK>
-0x9CF3 # <CJK>
 0x9CF4 # <CJK>
-0x9CF6 # <CJK>
-0x9D03 # <CJK>
-0x9D06 # <CJK>
-0x9D07 # <CJK>
-0x9D08 # <CJK>
-0x9D09 # <CJK>
-0x9D0E # <CJK>
-0x9D12 # <CJK>
-0x9D15 # <CJK>
-0x9D1B # <CJK>
-0x9D1F # <CJK>
-0x9D23 # <CJK>
-0x9D26 # <CJK>
-0x9D28 # <CJK>
-0x9D2A # <CJK>
-0x9D2B # <CJK>
-0x9D2C # <CJK>
-0x9D3B # <CJK>
-0x9D3E # <CJK>
-0x9D3F # <CJK>
-0x9D41 # <CJK>
-0x9D44 # <CJK>
-0x9D46 # <CJK>
-0x9D48 # <CJK>
-0x9D50 # <CJK>
-0x9D51 # <CJK>
-0x9D59 # <CJK>
-0x9D5C # <CJK>
-0x9D5D # <CJK>
-0x9D5E # <CJK>
-0x9D60 # <CJK>
-0x9D61 # <CJK>
-0x9D64 # <CJK>
-0x9D6C # <CJK>
-0x9D6F # <CJK>
-0x9D72 # <CJK>
-0x9D7A # <CJK>
-0x9D87 # <CJK>
-0x9D89 # <CJK>
 0x9D8F # <CJK>
-0x9D9A # <CJK>
-0x9DA4 # <CJK>
-0x9DA9 # <CJK>
-0x9DAB # <CJK>
-0x9DAF # <CJK>
-0x9DB2 # <CJK>
 0x9DB4 # <CJK>
-0x9DB8 # <CJK>
-0x9DBA # <CJK>
-0x9DBB # <CJK>
-0x9DC1 # <CJK>
-0x9DC2 # <CJK>
-0x9DC4 # <CJK>
-0x9DC6 # <CJK>
-0x9DCF # <CJK>
-0x9DD3 # <CJK>
-0x9DD9 # <CJK>
-0x9DE6 # <CJK>
-0x9DED # <CJK>
-0x9DEF # <CJK>
-0x9DF2 # <CJK>
-0x9DF8 # <CJK>
-0x9DF9 # <CJK>
-0x9DFA # <CJK>
-0x9DFD # <CJK>
-0x9E1A # <CJK>
-0x9E1B # <CJK>
-0x9E1E # <CJK>
-0x9E75 # <CJK>
-0x9E78 # <CJK>
-0x9E79 # <CJK>
-0x9E7D # <CJK>
 0x9E7F # <CJK>
-0x9E81 # <CJK>
-0x9E88 # <CJK>
-0x9E8B # <CJK>
-0x9E8C # <CJK>
-0x9E91 # <CJK>
-0x9E92 # <CJK>
 0x9E93 # <CJK>
-0x9E95 # <CJK>
 0x9E97 # <CJK>
-0x9E9D # <CJK>
-0x9E9F # <CJK>
-0x9EA5 # <CJK>
 0x9EA6 # <CJK>
-0x9EA9 # <CJK>
-0x9EAA # <CJK>
-0x9EAD # <CJK>
-0x9EB8 # <CJK>
-0x9EB9 # <CJK>
 0x9EBA # <CJK>
 0x9EBB # <CJK>
-0x9EBC # <CJK>
-0x9EBE # <CJK>
-0x9EBF # <CJK>
 0x9EC4 # <CJK>
-0x9ECC # <CJK>
-0x9ECD # <CJK>
-0x9ECE # <CJK>
-0x9ECF # <CJK>
-0x9ED0 # <CJK>
 0x9ED2 # <CJK>
-0x9ED4 # <CJK>
-0x9ED8 # <CJK>
 0x9ED9 # <CJK>
-0x9EDB # <CJK>
-0x9EDC # <CJK>
-0x9EDD # <CJK>
-0x9EDE # <CJK>
-0x9EE0 # <CJK>
-0x9EE5 # <CJK>
-0x9EE8 # <CJK>
-0x9EEF # <CJK>
-0x9EF4 # <CJK>
-0x9EF6 # <CJK>
-0x9EF7 # <CJK>
-0x9EF9 # <CJK>
-0x9EFB # <CJK>
-0x9EFC # <CJK>
-0x9EFD # <CJK>
-0x9F07 # <CJK>
-0x9F08 # <CJK>
-0x9F0E # <CJK>
 0x9F13 # <CJK>
-0x9F15 # <CJK>
-0x9F20 # <CJK>
-0x9F21 # <CJK>
-0x9F2C # <CJK>
 0x9F3B # <CJK>
-0x9F3E # <CJK>
-0x9F4A # <CJK>
-0x9F4B # <CJK>
-0x9F4E # <CJK>
-0x9F4F # <CJK>
-0x9F52 # <CJK>
-0x9F54 # <CJK>
-0x9F5F # <CJK>
-0x9F60 # <CJK>
-0x9F61 # <CJK>
 0x9F62 # <CJK>
-0x9F63 # <CJK>
-0x9F66 # <CJK>
-0x9F67 # <CJK>
-0x9F6A # <CJK>
-0x9F6C # <CJK>
-0x9F72 # <CJK>
-0x9F76 # <CJK>
-0x9F77 # <CJK>
-0x9F8D # <CJK>
-0x9F95 # <CJK>
-0x9F9C # <CJK>
-0x9F9D # <CJK>
-0x9FA0 # <CJK>
-#0xFFE5        # FULLWIDTH YEN SIGN
+#0x20B9F       # <CJK>
index 39114a5..4bb52c6 100644 (file)
@@ -86,7 +86,6 @@
 0x3161  # HANGUL LETTER EU
 0x3162  # HANGUL LETTER YI
 0x3163  # HANGUL LETTER I
-0x3164  # HANGUL FILLER
 0x3165  # HANGUL LETTER SSANGNIEUN
 0x3166  # HANGUL LETTER NIEUN-TIKEUT
 0x3167  # HANGUL LETTER NIEUN-SIOS
diff --git a/fc-lang/quz.orth b/fc-lang/quz.orth
new file mode 100644 (file)
index 0000000..a991712
--- /dev/null
@@ -0,0 +1,36 @@
+#
+# fontconfig/fc-lang/quz.orth
+#
+# Copyright © 2009 Roozbeh Pournader
+#
+# Permission to use, copy, modify, distribute, and sell this software and its
+# documentation for any purpose is hereby granted without fee, provided that
+# the above copyright notice appear in all copies and that both that
+# copyright notice and this permission notice appear in supporting
+# documentation, and that the name of the author(s) not be used in
+# advertising or publicity pertaining to distribution of the software without
+# specific, written prior permission.  The author(s) make(s) no
+# representations about the suitability of this software for any purpose.  It
+# is provided "as is" without express or implied warranty.
+#
+# THE AUTHOR(S) DISCLAIM(S) ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+# EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+# PERFORMANCE OF THIS SOFTWARE.
+#
+# Cusco Quechua (quz)
+#
+# Sources:
+# * http://en.wikipedia.org/wiki/Quechua_alphabet
+# * http://www.omniglot.com/writing/quechua.htm
+#
+# Some basic Latin letters are not used, based on dialect
+#
+0041-005A
+0061-007A
+00D1
+00F1
+02C8
index 5d5ef05..8701cbc 100644 (file)
@@ -2,6 +2,7 @@
 # fontconfig/fc-lang/zh_hk.orth
 #
 # Copyright © 2002 Keith Packard
+# Copyright © 2014 Abel Cheung
 #
 # Permission to use, copy, modify, distribute, and sell this software and its
 # documentation for any purpose is hereby granted without fee, provided that
 #
 # Chinese Hong Kong Supplementary Character Set (ZH-HK)
 #
-# Taken from the HKSCS-2001, including only the non-PUA BMP glyphs
-# as encoded in ISO/IEC 10646-1:2000
+# This list is a concatenation of:
+# (1) Most frequently used HKSCS characters accounting for ~99.75% usage in:
+#   i. Around 11000 crawled UTF-8 Hong Kong web pages in
+#      http://html5.org/temp/hk-data.tar.gz
+#   ii. Database dump of main content in Cantonese Wikipedia dated 20131228:
+#       http://dumps.wikimedia.org/zh_yuewiki/
+# (2) Word recommendation list from a local linguist:
+#     http://founder.acgvlyric.org/iu/doku.php/%E9%80%A0%E5%AD%97:%E5%B8%B8%E7%94%A8%E9%A6%99%E6%B8%AF%E5%A4%96%E5%AD%97%E8%A1%A8
+#     Level 1-5 characters are taken, excluding non-HKSCS chars.
+#
+3007
+344C
+3464
+3473
+347A
+347D
+347E
+3493
+3496
+34A5
+34BC
+34C1
+34C8
+34DF
+34E4
+34FB
+3506
+353E
+3551
+3561
+356D
+3570
+3572
+3577
+3578
+3584
+3597
+35A1
+35A5
+35AD
+35BF
+35C1
+35C5
+35C7
+35CA
+35CE
+35D2
+35D6
+35DB
+35F1
+35F2
+35F3
+35FB
+35FE
+3609
+361A
+3623
+362D
+3635
+3639
+3647
+3648
+3649
+364E
+365F
+367A
+3681
+36A5
+36AA
+36AC
+36B0
+36B1
+36B5
+36B9
+36BC
+36C1
+36C3
+36C4
+36C5
+36D3
+36D4
+36D6
+36DD
+36E5
+36E6
+36F5
+3703
+3708
+370A
+370D
+371C
+3723
+3725
+3730
+3732
+3733
+373A
+3740
+3743
+3762
+376F
+3797
+37A0
+37B9
+37BE
+37F2
+37F8
+37FB
+380F
+3819
+3820
+382D
+3836
+3838
+3863
+38A0
+38C3
+38CC
+38D1
+38FA
+3908
+3914
+3927
+3932
+393F
+394D
+3963
+3980
+3989
+398A
+3992
+399B
+39A1
+39A4
+39B8
+39DC
+39E2
+39E5
+39EC
+39F8
+39FB
+39FE
+3A01
+3A03
+3A06
+3A17
+3A18
+3A29
+3A2A
+3A34
+3A4B
+3A52
+3A57
+3A5C
+3A5E
+3A66
+3A67
+3A97
+3AAB
+3ABD
+3ADE
+3AF0
+3AF2
+3AFB
+3B0E
+3B19
+3B22
+3B2B
+3B39
+3B42
+3B58
+3B60
+3B71
+3B72
+3B7B
+3B7C
+3B80
+3B96
+3B99
+3BA1
+3BBE
+3BC2
+3BC4
+3BD7
+3BDD
+3BEC
+3BF2
+3BF3
+3C0D
+3C11
+3C15
+3C54
+3CCB
+3CCD
+3CD1
+3CD6
+3CDC
+3CEB
+3D13
+3D1D
+3D32
+3D46
+3D4C
+3D4E
+3D51
+3D5F
+3D62
+3D69
+3D6A
+3D6F
+3D75
+3D7D
+3D85
+3D8F
+3D91
+3DA5
+3DAD
+3DB4
+3DBF
+3DC6
+3DC7
+3DCD
+3DD3
+3DDB
+3DEB
+3DF3
+3DF7
+3DFC
+3E40
+3E43
+3E48
+3E55
+3E74
+3EA8
+3EA9
+3EAA
+3EAD
+3EB1
+3EB8
+3EBF
+3EC2
+3ECA
+3ECC
+3ED1
+3ED6
+3ED7
+3EDE
+3EE1
+3EE7
+3EEB
+3EF0
+3EFA
+3EFF
+3F04
+3F0E
+3F58
+3F59
+3F63
+3F93
+3FC0
+3FD7
+3FDC
+3FE5
+3FED
+3FF9
+3FFA
+4004
+4039
+4045
+4053
+4057
+4062
+4065
+406A
+406F
+40BB
+40BF
+40C8
+40D8
+40DF
+40FA
+4103
+4104
+4109
+410E
+4132
+4167
+416C
+416E
+417F
+4190
+41B2
+41CF
+41DB
+41EF
+41F9
+4211
+4240
+4260
+426A
+427A
+4294
+42A2
+42B5
+42B9
+42BC
+42F4
+42FB
+42FC
+432B
+436E
+4397
+43BA
+43C1
+43D9
+43DF
+43ED
+43F2
+4401
+4402
+4413
+447A
+448F
+449F
+44A0
+44B0
+44B7
+44DD
+44DF
+44E4
+44EA
+44F4
+4503
+4504
+4509
+4516
+4527
+452E
+4533
+453B
+453F
+4543
+4551
+4552
+4555
+4562
+456A
+4577
+4585
+45E9
+4603
+4606
+460F
+4615
+4617
+465B
+467A
+46CF
+46D0
+46F5
+4718
+477C
+47D5
+47ED
+47F4
+4800
+480B
+4871
+489B
+48AD
+48D0
+48DD
+48ED
+48FA
+4906
+491E
+492A
+492D
+4935
+493C
+493E
+4945
+4951
+4953
+4965
+496A
+4972
+4989
+49A7
+49DF
+49E5
+4A0F
+4A1D
+4A24
+4A35
+4A96
+4AB4
+4AB8
+4AD1
+4AE4
+4AFF
+4B19
+4B2C
+4B37
+4B6F
+4B70
+4B72
+4B7B
+4B7E
+4B8E
+4B90
+4B93
+4B96
+4B97
+4B9D
+4BBD
+4BBE
+4BC0
+4C04
+4C07
+4C0E
+4C3B
+4C3E
+4C5B
+4C6D
+4C77
+4C7B
+4C7D
+4C81
+4CAE
+4CB0
+4CCD
+4CE1
+4CED
+4D09
+4D10
+4D34
+4D77
+4D91
+4D9C
 4E04
-4E1A
-4E1C
 4E21
-4E24
-4E28
 4E2A
-4E2C
-4E2F
-4E36
-4E37
-4E3D
-4E3F
-4E49
 4E5A
 4E5B
 4E6A
 4E78
 4E80
-4E81
 4E85
-4E87
-4E89
 4E98
-4E9A
-4EA0
-4EA3
-4EB7
-4EBB
-4EBC
-4EBF
 4ECE
-4EEA
-4EEB
 4EEE
-4EF8
-4F03
-4F17
-4F1A
-4F28
-4F29
-4F32
 4F37
-4F39
-4F42
-4F45
-4F4B
-4F72
-4F8A
-4FA2
-4FA8
-4FAB
-4FB0
-4FBD
-4FC8
-4FCC
-4FE4
 4FE5
-4FF0
-4FF2
 4FF9
-4FFD
-5003
 5008
-502E
-5034
 503B
-5056
-5058
-5066
-506C
-5081
-5088
-5090
-50A6
-50BC
 50CD
-50D0
-50D9
-50DF
-50E1
-50F4
-50FC
-5101
 510D
 510E
-512B
-5156
-5160
 516A
-5174
-5179
-5182
 5186
-5188
-5196
 519A
-519C
 51A7
 51A8
-51AB
-51AE
 51B2
 51B3
 51B4
 51B5
-51B8
-51C3
-51C7
 51C9
-51CF
-51D1
-51D2
-51D3
-51DB
-51DF
-51E2
-51E4
 51ED
 51F4
-51FC
-51FE
-5202
-5205
 520B
-521F
-5220
 5226
 5227
 5234
 523C
 5257
-5259
-5260
-5268
-5273
-5279
 528F
-5290
-5294
-529A
-52A1
-52A4
-52A8
 52B5
 52B9
 52C5
-52CC
-52D0
 52D1
-52E0
-52E1
-52F9
-5301
-5324
-5327
-532C
-5332
-5333
 5338
-533B
-5342
-534E
-535D
-535F
-5364
-5367
-5369
-536D
 5374
 537D
-537E
 5393
 53A0
-53A2
 53A6
 53A8
-53A9
-53AA
-53AB
-53AE
-53B0
-53B6
 53C1
-53C2
-53C5
 53CC
-53D0
-53D1
-53D2
-53D8
 53D9
-53DA
 53E0
 53F6
-53F7
 53FE
 5413
 5414
 5416
-541A
 5421
-5423
-542F
-5432
-5434
-544B
+544C
 544D
-5469
 546A
 546D
-5485
 548F
 5493
 5494
 5497
-549C
-549E
-54A3
 54A4
 54B2
-54B4
-54B9
 54CB
-54CC
 54CD
-54D0
-54DA
 54E3
-54EF
 5502
-550D
 5513
-5518
 551E
-5523
 5525
-5528
-552B
-553F
-5547
-5549
 5553
 555D
 5569
 556B
 5571
 5572
-5573
 5579
 5586
 5590
 55A9
 55B0
-55B4
-55B9
 55BA
 55BC
-55C1
 55D7
-55D8
 55DE
-55EA
 55EC
 55F0
 55F1
-55F5
 55FB
 5605
 5611
 561E
-5620
-5621
 5622
 5623
 5625
 562D
-5637
 5643
 564D
 564F
-5650
 5652
 5654
 565D
-5661
-567A
-567B
-567C
 5689
-568A
-568B
 5692
-569E
 569F
 56A1
 56A4
-56AF
 56B1
 56B9
 56BF
 56D6
-56E2
-56ED
-56EF
-56F1
 56FD
-5700
-5715
-571D
-5732
-573D
-573F
 5742
-5743
-5746
-5754
-5757
-575B
-575F
-5767
 577A
-577E
-577F
-5788
-578A
-578D
-5790
-579C
-57A1
-57A7
-57AA
-57B4
-57BB
-57BE
-57C4
 57C8
 57D7
-57DD
 57DE
-57E6
-57EF
-57FE
 5803
-5812
-5822
 5826
 583A
 5840
-5844
-5847
-585C
-585F
 5869
-586C
 5872
 5873
-5892
-5899
-589A
-58A7
 58AA
-58B0
-58B5
-58B6
 58BB
-58CB
-58D0
-58DC
 58E0
-58F0
 58F2
 58F3
 58FB
-5902
-5904
-5905
-5907
 590A
-5911
-591F
-5932
-5934
-5965
 5975
-5989
-5994
-599A
 599F
 59AC
-59B0
-59B7
-59B8
-59C4
 59C9
-59D9
 59EB
-59EF
-59F0
 59F8
-59F9
-5A02
-5A0B
-5A0D
-5A12
-5A1A
-5A21
-5A24
-5A27
-5A2A
 5A2B
-5A2C
-5A3D
-5A45
-5A54
-5A59
-5A61
-5A63
-5A68
-5A6B
-5A6E
-5A71
-5A79
 5A7E
-5A81
-5A82
-5A86
-5A88
-5A91
-5A96
-5A99
-5AA0
-5AA1
-5AAB
-5AC3
-5ACE
-5ACF
-5AD3
-5AE4
-5AF0
 5AF2
 5AFA
-5AFE
-5B0D
-5B11
-5B15
-5B1F
-5B2B
-5B41
-5B44
 5B46
-5B4A
-5B4F
-5B66
-5B68
 5B6D
-5B74
-5B76
-5B7C
-5B80
-5B82
-5B90
-5B96
 5B9D
-5B9E
 5B9F
-5BAA
 5BC3
-5BD5
-5BD7
+5BDB
 5BF3
-5BFF
 5C05
-5C13
-5C14
-5C1C
-5C1E
-5C20
-5C23
-5C49
 5C4A
-5C53
 5C5E
-5C85
-5C99
-5C9A
-5C9C
-5C9E
-5CBA
-5CC1
-5CC2
-5CD1
-5CE5
-5CE9
 5CEF
-5CF5
-5D10
-5D15
-5D18
-5D2C
-5D2F
-5D3E
-5D46
-5D48
-5D56
-5D57
-5D5B
-5D70
-5D74
-5D7B
-5D85
 5D8B
-5D8E
-5DA4
-5DAB
-5DB6
-5DB9
-5DC1
-5DD7
-5DDB
 5DF5
-5E09
-5E0B
-5E12
-5E2E
-5E42
-5E48
-5E5E
 5E7A
-5E7F
 5E83
-5E86
-5E92
-5E99
-5EBD
-5ECD
 5ED0
-5EF4
 5EF8
 5EF9
 5EFB
 5F0C
 5F0D
 5F0E
-5F25
-5F3A
-5F4D
-5F50
-5F51
 5F5C
-5F61
-5F63
-5F72
-5F7B
-5F83
-5FA4
 5FA7
-5FB1
-5FBA
-5FC2
-5FC4
-5FDB
 5FDF
-6023
 6031
-603B
-604A
-6052
 6075
-6077
-607E
 609E
 60A4
-60A7
-60B3
 60D7
-60DE
 60E3
-60E7
-60E8
-60E9
-60FD
-6107
-610C
-6119
-6122
-6130
-613D
-6142
-6150
 6159
-615C
-6160
 6164
-616F
 617D
-6181
 6187
-6195
-6198
-6199
-619C
-61B7
-61B9
-61C0
-61CF
 61D0
-61D3
-61DA
-61E2
-622C
-6237
 6239
-624C
-6268
-6282
-6285
-6290
 629D
-62A4
 62A6
 62C3
 62C5
 62D5
-62DF
-62E5
-6318
-632E
 6331
-6335
-6337
-6364
-636C
 6379
-637F
-638B
 63B9
-63C1
 63D1
 63DE
-63E2
 63E6
 63F8
-63FB
 63FC
 63FE
 6407
 6432
-6438
 643A
-643B
-645A
-6471
 647C
 648D
 6491
-64AF
 64B4
-64B6
-64C0
-64D3
 64DD
 64E1
-64E5
 64E7
-64EA
-650A
-6511
 651E
-651F
 6530
-6534
-6535
 654D
-655F
-656B
-656D
-6585
 6586
-6588
 6589
-658B
-65B5
-65BE
-65D1
-65D4
-65E0
 65E3
-65FF
-6618
-661E
-6623
 6630
 6644
-6648
 664B
-6653
-6657
-6663
 6667
 666B
 6673
-667D
-6685
 668E
-6692
-669A
-66A4
-66AD
-66B3
-66B6
-66BF
-66CD
-66CE
 66F1
-6702
-670C
-670E
-6716
-6719
-671E
 6725
 6736
-6744
 6761
-6762
 6767
-676B
-678F
 67A0
-67A4
-67AC
 67B1
-67BF
-67D6
-67D7
-67F9
-67FE
-6800
-6801
-6802
 6803
 6804
-680D
-6810
-681B
 681E
 6822
-6836
-6837
-683E
-6847
-684A
-6855
-6856
-685D
-6865
-6884
-6888
 6898
-68A6
 68B6
-68B9
-68BD
-68C3
-68C5
-68CA
 6900
-6901
-6902
-6903
-6909
-6918
-6919
-691A
-691B
-692C
 6936
-693E
-6943
-6946
-6955
 6961
-6964
-6967
-6972
 6973
-6980
-6985
 698A
-6998
-699F
-69A2
 69B2
-69C0
-69D1
-69D5
-69D6
-69E1
-69E9
-69F9
-69FA
-6A03
 6A0B
-6A0C
-6A1A
-6A1C
 6A2B
-6A2C
-6A2D
-6A33
-6A43
-6A45
-6A4C
-6A52
-6A53
-6A57
-6A63
-6A65
-6A71
-6A74
-6A7A
-6A82
-6A8A
-6A8F
-6A99
-6A9D
-6AA7
-6AAB
-6AB1
-6AB2
-6AB5
-6ABE
 6AC8
-6AC9
-6ACA
-6AD4
-6AD8
-6AF6
-6B05
-6B1D
 6B35
-6B52
-6B57
 6B6F
 6B74
 6B7A
-6B81
-6BC1
-6BDC
 6BE1
-6BEA
-6BFA
-6C1C
-6C31
-6C35
 6C37
 6C39
-6C3A
-6C3D
-6C49
-6C58
 6C5A
-6C6E
-6C75
-6C79
-6C7F
-6C9F
 6CA2
-6CAA
-6CAF
-6CB2
-6CCB
-6CCE
-6CDF
 6CEA
-6CFF
-6D02
-6D05
-6D06
-6D24
-6D26
-6D4E
-6D57
-6D5B
 6D5C
-6D71
 6D72
-6D81
-6D8F
 6D96
-6DA4
-6DA5
-6DB1
-6DB9
-6DFE
-6E02
-6E04
-6E0A
-6E0F
 6E15
-6E18
 6E29
-6E2A
-6E4F
-6E50
-6E59
-6E76
 6E7C
-6E86
-6E8B
-6E9A
-6EB5
-6EB8
-6EBB
 6ED9
-6EDA
 6EDB
 6EDD
-6EE2
-6EE8
-6EE9
-6EFA
-6F04
-6F0B
-6F0C
 6F16
-6F17
-6F24
-6F34
-6F3D
-6F44
 6F56
-6F5C
-6F74
-6F79
 6F81
-6F8A
-6F9D
-6F9F
-6FB5
-6FBB
 6FBE
-6FD3
-6FD9
-6FDA
 6FF6
-6FF8
-7003
 701E
 702C
-704B
-704D
-7050
-7054
-705C
-7067
-706C
-706F
-7075
-7077
-7079
-707E
-707F
 7081
 7089
-708B
-708F
-70A0
-70A3
-70A5
-70A6
-70A7
 70B9
-70BB
-70BC
-70BD
-70C0
-70C4
-70CC
-70D0
-70D5
-70D6
 70DF
 70F1
-70F5
-70FE
 7105
-711D
-7129
 712B
-712C
-7133
-7134
-7135
-713B
-713E
 7140
 7145
 714A
-714F
 7151
-716B
 7171
-7173
-7175
-7176
-7177
-717A
-717C
-717E
-7188
-718C
-718E
-7191
-7196
-7198
-71A2
-71A3
-71AD
-71B4
-71B7
-71BA
-71D1
-71DD
-71EB
-71F5
 71F6
-7200
-7209
-720E
-720F
 7215
-7216
-7217
-7224
-722B
-722E
 7240
-7250
-7255
-7257
-725C
-7266
 7282
 7287
-728F
-7294
-729F
-72AD
-72B2
-72CD
-72E2
-7302
-7304
-7310
-7328
 732A
-732B
-732C
 732E
-7338
-7339
 7341
-7348
-734F
-7371
 7374
-738C
-738F
-7398
-739C
-739E
-73A7
-73AA
-73BA
 73C9
-73CE
 73CF
-73D0
-73D5
-73E1
-73E2
-73E4
-73E6
-73EF
-73F3
-73F7
-73F9
-73FB
-7402
-7411
-7412
-7414
-7415
-7417
-7419
-741C
-741E
-741F
-7437
-7438
 7439
 743C
-7443
-7445
-7447
 7448
-7449
-7453
-7456
-745D
 7460
-7465
-7468
-746B
-746C
-7474
-7476
-747A
-7482
-748C
-748D
-7499
-749B
-74A4
-74B4
-74B9
-74C8
-74CC
-74D0
-74D3
-74E7
-74F0
-74F1
-74F2
-74F8
 7505
-750E
-7519
-751E
 7534
-7535
 753B
-7542
-7546
 754A
-754D
 7551
 7553
-7555
 7560
 7567
-756D
-756E
-7572
-757A
-7583
 758D
 758E
-7592
-759E
 75B1
 75B4
-75C3
-75C8
-75DC
 7602
-7607
-762C
 763B
-7640
-764D
 764E
-764F
-7651
-7654
 7666
 7667
-766F
-7673
-7674
 7676
 767A
-7690
-76A1
-76A5
-76B7
-76CC
-76D6
-76D9
 770C
-770E
-770F
 771E
-7724
-7726
-772B
 7740
-7743
 7758
-7772
-7777
 7778
 777A
-777B
 7793
-7798
-77AF
 77B9
-77BE
-77C3
-77C5
 77CB
-77DD
-77E6
-77F4
-77FE
 7808
-7818
-781C
-781E
-7839
-783C
-783D
-7842
-7844
-7847
-784B
-7851
-7853
-7854
-7866
-787A
 7881
-7888
 788D
-78AF
 78B1
-78B6
 78B8
-78B9
-78C7
-78D2
-78D3
 78D7
-78D8
-78E4
-78EE
-78F0
-78F1
-78F5
 7906
 792E
-7932
-7933
-7934
-7936
-793B
-793C
 7958
-7959
 7962
-7971
-797E
-7980
-7983
-7986
-7987
 7991
-7999
-799D
-799F
-79A5
-79A9
 79C4
-79C6
-79CC
-79D4
-79E2
-79F1
-79F4
-7A06
-7A2A
-7A2D
-7A3A
-7A3E
-7A43
-7A45
-7A49
-7A65
-7A7D
-7A83
-7A91
 7A93
 7AB0
-7ABB
-7ABC
-7AC2
-7AC3
 7AC8
 7AC9
-7ACF
-7AD3
-7ADA
-7ADB
 7ADC
 7ADD
-7AE2
-7AE7
-7AE9
 7AEA
-7AFE
 7B0B
-7B0C
-7B14
-7B1F
-7B27
-7B29
 7B39
-7B42
-7B43
-7B55
-7B62
-7B6C
 7B6F
-7B7B
-7B92
-7BA2
-7BA3
-7BB2
-7BCF
-7BD0
-7BEC
-7BFA
-7BFC
-7C12
 7C15
-7C1B
-7C35
-7C42
-7C44
-7C51
-7C56
-7C5D
-7C6D
-7C70
-7C74
-7C7B
-7C7C
-7C7E
-7C83
-7C86
-7C8E
-7C9C
 7CA6
 7CA7
-7CAC
 7CAE
-7CB8
-7CC2
-7CC3
-7CC7
 7CC9
 7CCD
-7CD3
-7CDA
-7CE6
 7CED
-7CF3
-7CF5
 7CF9
 7CFC
 7D25
-7D4D
-7D5A
 7D5D
 7D89
-7D8B
-7D97
-7DA4
-7DA8
 7DAB
 7DB3
 7DCD
 7DCF
-7DD0
-7DD3
-7DD4
 7DDC
-7DE4
-7DE5
-7DF5
-7DFD
-7DFE
-7E07
-7E27
-7E5B
-7E65
-7E67
-7E6C
 7E6E
-7E7F
-7E8E
-7E92
-7E9F
-7EA4
-7EAC
-7EBA
-7EC7
-7ECF
-7EDF
-7F06
-7F37
-7F40
-7F41
 7F47
 7F49
 7F4E
-7F52
-7F53
-7F71
 7F78
-7F8F
-7F93
 7F97
 7FA3
-7FAE
-7FB4
-7FDD
-7FE7
-7FFA
-8002
-8008
-801D
-8020
-8025
-802E
-802F
-8031
-803B
-803C
-8054
-805B
 8061
-8062
-8063
-8066
-8080
-809F
-80A7
 80B6
-80B7
-80BC
 80BD
 80C6
-80E9
-80EC
-80F6
-8103
 8107
-8109
-810C
-810E
-8112
-8114
 8117
-811A
-812A
-8132
-8134
 8137
-8142
-8148
-8156
-8159
-815A
-816D
-817C
-8184
-8193
 81A5
-81AA
 81B6
-81C1
-81C8
-81E4
 81EF
-81F6
 8218
-821A
 8226
-8229
-822D
-823E
-8254
-8262
-8265
 8276
-8279
-827A
-827B
-8287
 82A6
 82AA
-82BF
-82C4
-82CA
-82CF
-82D0
-82D8
-82E2
-82EE
 82F7
-82F8
-82FC
-82FD
-82FF
-830B
 8318
-831A
-831D
-833D
-8357
-8362
-8363
-8366
-836F
-8385
-8391
-839C
-83AC
-83B9
-83BE
-83CD
 83D3
-83ED
-8405
-8414
-8416
 8418
-841C
 8420
-8421
-8424
-8426
-842E
-843E
-8448
-844A
-8453
-8455
-8458
-845C
-8462
-8464
 8471
-8472
-847F
-8480
-8488
-8492
-8493
-8496
-84A3
 84AD
 84BD
-84BE
-84DA
-84DE
-84E1
 84E2
-84E4
-84E5
-84F8
 8503
-8505
-8510
-8533
 8534
-8538
-8542
-854B
-854C
-8552
-855A
-855F
-856F
 8570
-8573
-8597
-85C1
-85D6
-85E0
-85EE
-85FC
 8602
-860D
-860F
-8610
-8614
-8616
-8628
 862F
-8642
-8645
-866C
-8672
-867E
-8692
-86A0
-86AD
-86B2
 86EF
-8770
-8771
-877D
 8786
-878B
-878C
-87A5
-87A9
-87B1
-87C1
 87CE
-87D6
-87DA
-87EE
-87F5
 8804
-880F
-8818
-8827
 882D
-8842
-8845
 8846
-884F
 885E
-8860
-8864
-8865
-886E
-8884
-8887
-888F
-8890
 889C
-88A0
-88AE
-88B4
-88B5
-88BF
-88C5
 88C7
 88CF
-88E6
-88F5
-88FF
-8900
-8924
-8943
 8947
-894D
-8954
-8965
-8977
-8980
 8987
-8989
-898A
-8991
 8994
 89A5
 89A7
-89A9
-89BC
-89C1
-89C6
-89E7
-8A1C
-8A29
-8A2B
-8A38
-8A3D
-8A49
-8A67
-8A7E
-8A90
 8A94
-8A9C
-8AA9
-8AAF
-8AB4
-8ADA
-8AEA
-8B0C
-8B1F
-8B2D
-8B3F
-8B43
 8B4C
-8B4D
-8B5E
-8B62
-8B69
 8B81
 8B83
 8B90
-8B9B
-8BA0
-8BBE
-8BE2
-8C51
-8C9B
-8C9F
-8CAD
 8CCD
-8CD4
-8CD6
 8CDB
-8CE9
-8CEB
-8CF2
-8CF7
 8D03
 8D0B
-8D0C
-8D11
-8D12
-8D18
-8D1C
-8D1D
-8D7A
-8D82
-8DA6
-8DA9
-8DC0
-8DC3
-8DD4
-8E01
 8E0E
-8E28
 8E2A
 8E2D
-8E3A
-8E46
 8E4F
-8E68
-8E71
-8E75
-8E77
 8E7E
 8E80
-8EA7
 8EAD
-8EB0
-8EB6
-8EB9
-8EBC
-8EC3
-8ECE
 8EDA
 8EE2
-8EE4
-8EED
 8EF2
-8F19
 8F2D
-8F30
-8F41
-8F4A
-8F5C
-8F66
-8F67
-8F6E
-8F93
-8FA0
-8FA5
-8FA7
-8FB3
 8FB5
-8FB6
-8FB7
-8FB8
-8FB9
 8FBA
 8FBB
 8FBC
-8FBE
-8FC1
-8FCA
-8FCC
-8FCF
-8FD0
-8FDA
 8FF9
-9008
-9012
 9033
-9037
-904C
 9056
 9061
-9064
-906C
 90A8
-90AE
-90BB
-90C4
-9151
-9159
-915C
-915E
-9167
-9170
 9176
-917C
-918C
-918E
-91A9
-91B6
-91BB
-91C4
-91D6
-91DF
-91E5
-91F6
-91FA
-91FE
 9208
 920E
-9213
-9221
-9228
 922A
-922B
-9235
-923C
-9241
 9244
 9255
-9258
 925D
-925F
 9262
-926B
 926E
-9277
-9281
-9284
-9289
-928F
-92AE
-92B1
 92B9
-92BA
 92BE
-92BF
-92D4
-92DB
-92E3
-92E5
-92EB
-92EC
-92F2
-92F3
-92F4
-92F6
-92FD
-9303
 9307
-932C
-9330
-9331
 9340
-9341
-9342
-9343
-9344
 9345
 9348
-935F
-9362
-9366
-9368
 9369
-936B
-936E
-9373
-9374
-9378
-937D
-9381
 9384
 9385
-9386
 9387
-9390
-939C
-93A0
 93AD
-93B8
-93BB
-93BD
 93BF
-93C6
-93CB
-93D3
-93DB
-93E0
 93F0
-93F1
-93F3
-93F4
-9401
 9404
-9408
-9417
-941B
-941D
-9424
-9425
 9426
 9427
-942D
-943E
-9442
-9443
-944D
 9454
-9458
 945B
 9465
-9467
-946C
-9479
-947B
-9485
-949F
-94A2
-94C1
-94C3
-94DC
-94F6
-952D
-9547
-9578
-957F
-9585
-9596
-9597
 9599
-95A0
 95A2
-95A6
-95A7
 95AA
-95E8
-95F4
-961D
-9633
-9638
-9641
-9645
-9656
-9669
-967B
-9681
-968F
 9696
 96A3
-96A5
-96B6
-96BD
-96F4
-9703
-971B
 9721
-9731
-9736
-9740
-9741
 9751
-9755
-9757
-975D
-975F
 976D
-9771
-9787
-9789
-979B
-979F
-97B1
-97B2
-97B4
-97B8
-97BA
-97BD
-97BE
-97C0
-97C2
-97C8
-97D2
-97E0
-97E6
 97EE
-97F2
 97F5
-9814
-9815
-981F
-9823
-982E
-9833
 9834
-9847
-984B
-9866
-9868
-986C
-9875
-98B4
 98B7
-98B9
-98C3
-98C7
 98C8
-98CA
-98CE
-98DC
-98DE
 98E0
-98E1
-98E6
-98EC
-98F1
-98F5
-990E
-9919
 991C
-9937
 9938
-9939
-993B
-9940
-9942
 994A
 994D
-995D
 9962
-9963
-999B
-99A4
-99AA
-99B8
-99BC
-99C4
 99C5
-99DA
-99E0
 99E1
-99E6
-99F5
-9A0C
 9A10
-9A1F
-9A21
-9A26
-9A2F
-9A3B
-9A3C
-9A58
-9A5C
-9A63
-9A6C
-9A8F
-9AB2
-9AB6
-9ABA
-9ABD
-9AD7
-9AE0
-9AE2
-9AF4
-9AFF
-9B02
-9B09
-9B0F
-9B14
 9B2A
 9B2D
-9B34
-9B39
-9B40
-9B50
-9B69
-9B7F
 9B81
-9B83
 9B8B
-9B8D
 9B8E
-9B8F
-9B97
-9B9D
-9B9F
-9BB0
-9BCF
-9BDD
-9BE9
 9BED
 9BF1
-9BF4
 9BFF
 9C02
-9C0A
 9C0C
-9C10
-9C15
-9C1B
-9C1F
-9C20
-9C26
 9C2F
 9C35
 9C3A
 9C45
-9C4F
-9C53
 9C5D
 9C72
-9C7B
-9C7C
-9D02
-9D0C
-9D16
-9D21
 9D34
-9D39
-9D44
-9D49
-9D4E
 9D50
 9D5E
-9D6D
-9D6E
-9D7C
-9D7E
-9D83
 9D93
-9DA5
-9DAB
-9DBD
 9DC0
 9DC4
 9DC9
 9DD4
-9DFC
 9E0A
 9E0C
-9E0E
-9E18
-9E1C
-9E1F
-9E7B
-9E81
-9E84
-9E85
 9E90
 9E95
 9E96
-9E98
-9E9E
-9EA2
-9EA6
-9EA8
 9EAA
 9EAB
-9EAC
 9EAF
-9EB1
-9EBD
 9EBF
-9EC1
-9EC4
-9EC6
-9EC7
-9EE2
-9EF1
-9EF8
-9EFE
-9F02
 9F08
-9F17
 9F26
-9F27
-9F39
-9F44
-9F45
-9F50
-9F53
-9F5A
 9F62
-9F69
-9F7F
 9F8E
-9F99
-9F9F
-9FA5
-20547
+200CA
+201A4
+201A9
+20325
+20341
+2070E
+20779
+20C41
+20C53
+20C65
+20C78
+20C96
+20CB5
+20CCF
+20D31
+20D71
+20D7E
+20D7F
+20D9C
+20DA7
+20E04
+20E09
+20E4C
+20E73
+20E76
+20E7A
+20E9D
+20EA2
+20ED7
+20EF9
+20F2D
+20F2E
+20F3B
+20F4C
+20FB4
+20FEA
+21014
+2105C
+2106F
+21075
+21076
+2107B
+210C1
+210D3
+2113D
+21145
+2114F
+2197C
+21A34
+21C2A
+21DF9
+220C7
+221A1
+22ACF
+22B43
+22BCA
+22C51
+22C55
+22C62
+22CB2
+22CC2
+22D4C
+22D67
+22D8D
+22DEE
+22F74
+23231
+23595
+236BA
+23CB7
+23E89
+23F80
+244D3
+24DB8
+24DEA
+24EA7
+2512B
+25148
+2517E
+25535
+25E49
+26258
+266DA
+267CC
+2688A
+269F2
+269FA
+27285
+27574
+27657
+27735
+2775E
+2789D
+2797A
+279A0
+27A3E
+27A59
+27D73
+28024
+280BD
+2815D
+28207
+282E2
+2836D
+289C0
+289DC
+28A0F
+28B46
+28B4E
+28CCA
+28CCD
+28CD2
+28D99
+28EE7
+294E5
+29720
+298D1
+29A4D
+29D98
+2A632
+2A65B
index b2c499d..c58540e 100644 (file)
@@ -29,7 +29,7 @@ SGML = ${FC_LIST_SRC}/fc-list.sgml
 
 bin_PROGRAMS=fc-list
 
-INCLUDES=-I${top_srcdir} $(WARN_CFLAGS)
+AM_CPPFLAGS=-I${top_srcdir} $(WARN_CFLAGS)
 
 BUILT_MANS=fc-list.1
 
index 4dc6321..16145cd 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 #  PERFORMANCE OF THIS SOFTWARE.
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -76,15 +104,16 @@ host_triplet = @host@
 bin_PROGRAMS = fc-list$(EXEEXT)
 @USEDOCBOOK_TRUE@am__append_1 = ${man_MANS}
 subdir = fc-list
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
        $(top_srcdir)/depcomp
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
@@ -171,6 +200,23 @@ am__uninstall_files_from_dir = { \
 man1dir = $(mandir)/man1
 NROFF = nroff
 MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -214,6 +260,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -255,12 +303,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -284,7 +339,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -292,7 +346,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = @configdir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -317,23 +370,26 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = @templatedir@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = @xmldir@
 DOC2MAN = docbook2man
 FC_LIST_SRC = ${top_srcdir}/fc-list
 SGML = ${FC_LIST_SRC}/fc-list.sgml
-INCLUDES = -I${top_srcdir} $(WARN_CFLAGS)
+AM_CPPFLAGS = -I${top_srcdir} $(WARN_CFLAGS)
 BUILT_MANS = fc-list.1
 @ENABLE_DOCS_TRUE@man_MANS = ${BUILT_MANS}
 EXTRA_DIST = fc-list.sgml $(BUILT_MANS)
@@ -382,10 +438,12 @@ install-binPROGRAMS: $(bin_PROGRAMS)
        fi; \
        for p in $$list; do echo "$$p $$p"; done | \
        sed 's/$(EXEEXT)$$//' | \
-       while read p p1; do if test -f $$p || test -f $$p1; \
-         then echo "$$p"; echo "$$p"; else :; fi; \
+       while read p p1; do if test -f $$p \
+        || test -f $$p1 \
+         ; then echo "$$p"; echo "$$p"; else :; fi; \
        done | \
-       sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+       sed -e 'p;s,.*/,,;n;h' \
+           -e 's|.*|.|' \
            -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
        sed 'N;N;N;s,\n, ,g' | \
        $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -406,7 +464,8 @@ uninstall-binPROGRAMS:
        @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
        files=`for p in $$list; do echo "$$p"; done | \
          sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
-             -e 's/$$/$(EXEEXT)/' `; \
+             -e 's/$$/$(EXEEXT)/' \
+       `; \
        test -n "$$list" || exit 0; \
        echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
        cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -419,6 +478,7 @@ clean-binPROGRAMS:
        list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
        echo " rm -f" $$list; \
        rm -f $$list
+
 fc-list$(EXEEXT): $(fc_list_OBJECTS) $(fc_list_DEPENDENCIES) $(EXTRA_fc_list_DEPENDENCIES) 
        @rm -f fc-list$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(fc_list_OBJECTS) $(fc_list_LDADD) $(LIBS)
@@ -436,14 +496,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -501,26 +561,15 @@ uninstall-man1:
              -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
        dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -532,15 +581,11 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -549,9 +594,10 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
 
-cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
        case "$(srcdir)" in \
          [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
          *) sdir=$(subdir)/$(srcdir) ;; \
@@ -568,19 +614,6 @@ distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
 distdir: $(DISTFILES)
-       @list='$(MANS)'; if test -n "$$list"; then \
-         list=`for p in $$list; do \
-           if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
-           if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
-         if test -n "$$list" && \
-           grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
-           echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
-           grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/         /' >&2; \
-           echo "       to fix them, install help2man, remove and regenerate the man pages;" >&2; \
-           echo "       typically 'make maintainer-clean' will remove them" >&2; \
-           exit 1; \
-         else :; fi; \
-       else :; fi
        @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        list='$(DISTFILES)'; \
@@ -722,9 +755,9 @@ uninstall-man: uninstall-man1
 
 .MAKE: install-am install-strip
 
-.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
-       clean-binPROGRAMS clean-generic clean-libtool cscopelist ctags \
-       distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+       clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
+       ctags ctags-am distclean distclean-compile distclean-generic \
        distclean-libtool distclean-tags distdir dvi dvi-am html \
        html-am info info-am install install-am install-binPROGRAMS \
        install-data install-data-am install-dvi install-dvi-am \
@@ -734,7 +767,7 @@ uninstall-man: uninstall-man1
        install-strip installcheck installcheck-am installdirs \
        maintainer-clean maintainer-clean-generic mostlyclean \
        mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
-       pdf pdf-am ps ps-am tags uninstall uninstall-am \
+       pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
        uninstall-binPROGRAMS uninstall-man uninstall-man1
 
 
index 306ee23..6aa0de3 100644 (file)
@@ -4,7 +4,7 @@
 fc-list \- list available fonts
 .SH SYNOPSIS
 .sp
-\fBfc-list\fR [ \fB-vVh\fR ]  [ \fB--verbose\fR ]  [ \fB [ -f \fIformat\fB ]  [ --format \fIformat\fB ] \fR ]  [ \fB--version\fR ]  [ \fB--help\fR ] 
+\fBfc-list\fR [ \fB-vVh\fR ]  [ \fB--verbose\fR ]  [ \fB [ -f \fIformat\fB ]  [ --format \fIformat\fB ] \fR ]  [ \fB [ -q ]  [ --quiet ] \fR ]  [ \fB--version\fR ]  [ \fB--help\fR ] 
 
  [ \fB\fIpattern\fB  [ \fIelement\fB\fI...\fB ]  \fR ] 
 .SH "DESCRIPTION"
@@ -29,6 +29,9 @@ provided.
 Format output according to the format specifier
 \fIformat\fR\&.
 .TP
+\fB-q\fR
+Suppress all normal output. returns 1 as the error code if no fonts matched.
+.TP
 \fB-V\fR
 Show version of the program and exit.
 .TP
index 5ad1333..f6c7282 100644 (file)
@@ -139,6 +139,11 @@ main (int argc, char **argv)
     if (argv[i])
     {
        pat = FcNameParse ((FcChar8 *) argv[i]);
+       if (!pat)
+       {
+           fputs ("Unable to parse the pattern\n", stderr);
+           return 1;
+       }
        while (argv[++i])
        {
            if (!os)
index c4a82cd..0eb704d 100644 (file)
@@ -69,6 +69,10 @@ manpage.1: manpage.sgml
         <arg><option>-f</option> <option><replaceable>format</replaceable></option></arg>
         <arg><option>--format</option> <option><replaceable>format</replaceable></option></arg>
       </group>
+      <group>
+       <arg><option>-q</option></arg>
+       <arg><option>--quiet</option></arg>
+      </group>
       <arg><option>--version</option></arg>
       <arg><option>--help</option></arg>
       <sbr>
@@ -114,6 +118,14 @@ manpage.1: manpage.sgml
         </listitem>
       </varlistentry>
       <varlistentry>
+       <term><option>-q</option>
+         <option>--quiet</option>
+       </term>
+       <listitem>
+         <para>Suppress all normal output. returns 1 as the error code if no fonts matched.</para>
+       </listitem>
+      </varlistentry>
+      <varlistentry>
         <term><option>-V</option>
           <option>--version</option>
         </term>
index 0e9e8fd..84afb8b 100644 (file)
@@ -29,7 +29,7 @@ FC_MATCH_SRC=${top_srcdir}/fc-match
 
 SGML = ${FC_MATCH_SRC}/fc-match.sgml
 
-INCLUDES=-I${top_srcdir} $(WARN_CFLAGS)
+AM_CPPFLAGS=-I${top_srcdir} $(WARN_CFLAGS)
 
 BUILT_MANS=fc-match.1
 
index 95ecda9..ce4ebd2 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 #  PERFORMANCE OF THIS SOFTWARE.
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -76,15 +104,16 @@ host_triplet = @host@
 bin_PROGRAMS = fc-match$(EXEEXT)
 @USEDOCBOOK_TRUE@am__append_1 = ${man_MANS}
 subdir = fc-match
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
        $(top_srcdir)/depcomp
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
@@ -171,6 +200,23 @@ am__uninstall_files_from_dir = { \
 man1dir = $(mandir)/man1
 NROFF = nroff
 MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -214,6 +260,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -255,12 +303,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -284,7 +339,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -292,7 +346,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = @configdir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -317,23 +370,26 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = @templatedir@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = @xmldir@
 DOC2MAN = docbook2man
 FC_MATCH_SRC = ${top_srcdir}/fc-match
 SGML = ${FC_MATCH_SRC}/fc-match.sgml
-INCLUDES = -I${top_srcdir} $(WARN_CFLAGS)
+AM_CPPFLAGS = -I${top_srcdir} $(WARN_CFLAGS)
 BUILT_MANS = fc-match.1
 @ENABLE_DOCS_TRUE@man_MANS = ${BUILT_MANS}
 EXTRA_DIST = fc-match.sgml $(BUILT_MANS)
@@ -382,10 +438,12 @@ install-binPROGRAMS: $(bin_PROGRAMS)
        fi; \
        for p in $$list; do echo "$$p $$p"; done | \
        sed 's/$(EXEEXT)$$//' | \
-       while read p p1; do if test -f $$p || test -f $$p1; \
-         then echo "$$p"; echo "$$p"; else :; fi; \
+       while read p p1; do if test -f $$p \
+        || test -f $$p1 \
+         ; then echo "$$p"; echo "$$p"; else :; fi; \
        done | \
-       sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+       sed -e 'p;s,.*/,,;n;h' \
+           -e 's|.*|.|' \
            -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
        sed 'N;N;N;s,\n, ,g' | \
        $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -406,7 +464,8 @@ uninstall-binPROGRAMS:
        @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
        files=`for p in $$list; do echo "$$p"; done | \
          sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
-             -e 's/$$/$(EXEEXT)/' `; \
+             -e 's/$$/$(EXEEXT)/' \
+       `; \
        test -n "$$list" || exit 0; \
        echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
        cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -419,6 +478,7 @@ clean-binPROGRAMS:
        list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
        echo " rm -f" $$list; \
        rm -f $$list
+
 fc-match$(EXEEXT): $(fc_match_OBJECTS) $(fc_match_DEPENDENCIES) $(EXTRA_fc_match_DEPENDENCIES) 
        @rm -f fc-match$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(fc_match_OBJECTS) $(fc_match_LDADD) $(LIBS)
@@ -436,14 +496,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -501,26 +561,15 @@ uninstall-man1:
              -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
        dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -532,15 +581,11 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -549,9 +594,10 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
 
-cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
        case "$(srcdir)" in \
          [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
          *) sdir=$(subdir)/$(srcdir) ;; \
@@ -568,19 +614,6 @@ distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
 distdir: $(DISTFILES)
-       @list='$(MANS)'; if test -n "$$list"; then \
-         list=`for p in $$list; do \
-           if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
-           if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
-         if test -n "$$list" && \
-           grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
-           echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
-           grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/         /' >&2; \
-           echo "       to fix them, install help2man, remove and regenerate the man pages;" >&2; \
-           echo "       typically 'make maintainer-clean' will remove them" >&2; \
-           exit 1; \
-         else :; fi; \
-       else :; fi
        @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        list='$(DISTFILES)'; \
@@ -722,9 +755,9 @@ uninstall-man: uninstall-man1
 
 .MAKE: install-am install-strip
 
-.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
-       clean-binPROGRAMS clean-generic clean-libtool cscopelist ctags \
-       distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+       clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
+       ctags ctags-am distclean distclean-compile distclean-generic \
        distclean-libtool distclean-tags distdir dvi dvi-am html \
        html-am info info-am install install-am install-binPROGRAMS \
        install-data install-data-am install-dvi install-dvi-am \
@@ -734,7 +767,7 @@ uninstall-man: uninstall-man1
        install-strip installcheck installcheck-am installdirs \
        maintainer-clean maintainer-clean-generic mostlyclean \
        mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
-       pdf pdf-am ps ps-am tags uninstall uninstall-am \
+       pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
        uninstall-binPROGRAMS uninstall-man uninstall-man1
 
 
index 260f404..f96c009 100644 (file)
@@ -146,6 +146,11 @@ main (int argc, char **argv)
     if (argv[i])
     {
        pat = FcNameParse ((FcChar8 *) argv[i]);
+       if (!pat)
+       {
+           fputs ("Unable to parse the pattern\n", stderr);
+           return 1;
+       }
        while (argv[++i])
        {
            if (!os)
index 92b0433..c456247 100644 (file)
@@ -29,7 +29,7 @@ FC_PATTERN_SRC=${top_srcdir}/fc-pattern
 
 SGML = ${FC_PATTERN_SRC}/fc-pattern.sgml
 
-INCLUDES=-I${top_srcdir} $(WARN_CFLAGS)
+AM_CPPFLAGS=-I${top_srcdir} $(WARN_CFLAGS)
 
 BUILT_MANS=fc-pattern.1
 
index e843e8e..0054006 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 #  PERFORMANCE OF THIS SOFTWARE.
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -76,15 +104,16 @@ host_triplet = @host@
 bin_PROGRAMS = fc-pattern$(EXEEXT)
 @USEDOCBOOK_TRUE@am__append_1 = ${man_MANS}
 subdir = fc-pattern
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
        $(top_srcdir)/depcomp
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
@@ -171,6 +200,23 @@ am__uninstall_files_from_dir = { \
 man1dir = $(mandir)/man1
 NROFF = nroff
 MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -214,6 +260,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -255,12 +303,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -284,7 +339,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -292,7 +346,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = @configdir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -317,23 +370,26 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = @templatedir@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = @xmldir@
 DOC2MAN = docbook2man
 FC_PATTERN_SRC = ${top_srcdir}/fc-pattern
 SGML = ${FC_PATTERN_SRC}/fc-pattern.sgml
-INCLUDES = -I${top_srcdir} $(WARN_CFLAGS)
+AM_CPPFLAGS = -I${top_srcdir} $(WARN_CFLAGS)
 BUILT_MANS = fc-pattern.1
 @ENABLE_DOCS_TRUE@man_MANS = ${BUILT_MANS}
 EXTRA_DIST = fc-pattern.sgml $(BUILT_MANS)
@@ -382,10 +438,12 @@ install-binPROGRAMS: $(bin_PROGRAMS)
        fi; \
        for p in $$list; do echo "$$p $$p"; done | \
        sed 's/$(EXEEXT)$$//' | \
-       while read p p1; do if test -f $$p || test -f $$p1; \
-         then echo "$$p"; echo "$$p"; else :; fi; \
+       while read p p1; do if test -f $$p \
+        || test -f $$p1 \
+         ; then echo "$$p"; echo "$$p"; else :; fi; \
        done | \
-       sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+       sed -e 'p;s,.*/,,;n;h' \
+           -e 's|.*|.|' \
            -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
        sed 'N;N;N;s,\n, ,g' | \
        $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -406,7 +464,8 @@ uninstall-binPROGRAMS:
        @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
        files=`for p in $$list; do echo "$$p"; done | \
          sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
-             -e 's/$$/$(EXEEXT)/' `; \
+             -e 's/$$/$(EXEEXT)/' \
+       `; \
        test -n "$$list" || exit 0; \
        echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
        cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -419,6 +478,7 @@ clean-binPROGRAMS:
        list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
        echo " rm -f" $$list; \
        rm -f $$list
+
 fc-pattern$(EXEEXT): $(fc_pattern_OBJECTS) $(fc_pattern_DEPENDENCIES) $(EXTRA_fc_pattern_DEPENDENCIES) 
        @rm -f fc-pattern$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(fc_pattern_OBJECTS) $(fc_pattern_LDADD) $(LIBS)
@@ -436,14 +496,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -501,26 +561,15 @@ uninstall-man1:
              -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
        dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -532,15 +581,11 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -549,9 +594,10 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
 
-cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
        case "$(srcdir)" in \
          [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
          *) sdir=$(subdir)/$(srcdir) ;; \
@@ -568,19 +614,6 @@ distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
 distdir: $(DISTFILES)
-       @list='$(MANS)'; if test -n "$$list"; then \
-         list=`for p in $$list; do \
-           if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
-           if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
-         if test -n "$$list" && \
-           grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
-           echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
-           grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/         /' >&2; \
-           echo "       to fix them, install help2man, remove and regenerate the man pages;" >&2; \
-           echo "       typically 'make maintainer-clean' will remove them" >&2; \
-           exit 1; \
-         else :; fi; \
-       else :; fi
        @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        list='$(DISTFILES)'; \
@@ -722,9 +755,9 @@ uninstall-man: uninstall-man1
 
 .MAKE: install-am install-strip
 
-.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
-       clean-binPROGRAMS clean-generic clean-libtool cscopelist ctags \
-       distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+       clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
+       ctags ctags-am distclean distclean-compile distclean-generic \
        distclean-libtool distclean-tags distdir dvi dvi-am html \
        html-am info info-am install install-am install-binPROGRAMS \
        install-data install-data-am install-dvi install-dvi-am \
@@ -734,7 +767,7 @@ uninstall-man: uninstall-man1
        install-strip installcheck installcheck-am installdirs \
        maintainer-clean maintainer-clean-generic mostlyclean \
        mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
-       pdf pdf-am ps ps-am tags uninstall uninstall-am \
+       pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
        uninstall-binPROGRAMS uninstall-man uninstall-man1
 
 
index 3f066c1..d2279cb 100644 (file)
@@ -137,6 +137,11 @@ main (int argc, char **argv)
     if (argv[i])
     {
        pat = FcNameParse ((FcChar8 *) argv[i]);
+       if (!pat)
+       {
+           fputs ("Unable to parse the pattern\n", stderr);
+           return 1;
+       }
        while (argv[++i])
        {
            if (!os)
index b3ea1e6..73b3f11 100644 (file)
@@ -29,7 +29,7 @@ FC_QUERY_SRC=${top_srcdir}/fc-query
 
 SGML = ${FC_QUERY_SRC}/fc-query.sgml
 
-INCLUDES=-I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
+AM_CPPFLAGS=-I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
 
 BUILT_MANS=fc-query.1
 
index 8a92451..978879b 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 #  PERFORMANCE OF THIS SOFTWARE.
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -76,15 +104,16 @@ host_triplet = @host@
 bin_PROGRAMS = fc-query$(EXEEXT)
 @USEDOCBOOK_TRUE@am__append_1 = ${man_MANS}
 subdir = fc-query
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
        $(top_srcdir)/depcomp
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
@@ -171,6 +200,23 @@ am__uninstall_files_from_dir = { \
 man1dir = $(mandir)/man1
 NROFF = nroff
 MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -214,6 +260,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -255,12 +303,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -284,7 +339,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -292,7 +346,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = @configdir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -317,23 +370,26 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = @templatedir@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = @xmldir@
 DOC2MAN = docbook2man
 FC_QUERY_SRC = ${top_srcdir}/fc-query
 SGML = ${FC_QUERY_SRC}/fc-query.sgml
-INCLUDES = -I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
+AM_CPPFLAGS = -I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
 BUILT_MANS = fc-query.1
 @ENABLE_DOCS_TRUE@man_MANS = ${BUILT_MANS}
 EXTRA_DIST = fc-query.sgml $(BUILT_MANS)
@@ -382,10 +438,12 @@ install-binPROGRAMS: $(bin_PROGRAMS)
        fi; \
        for p in $$list; do echo "$$p $$p"; done | \
        sed 's/$(EXEEXT)$$//' | \
-       while read p p1; do if test -f $$p || test -f $$p1; \
-         then echo "$$p"; echo "$$p"; else :; fi; \
+       while read p p1; do if test -f $$p \
+        || test -f $$p1 \
+         ; then echo "$$p"; echo "$$p"; else :; fi; \
        done | \
-       sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+       sed -e 'p;s,.*/,,;n;h' \
+           -e 's|.*|.|' \
            -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
        sed 'N;N;N;s,\n, ,g' | \
        $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -406,7 +464,8 @@ uninstall-binPROGRAMS:
        @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
        files=`for p in $$list; do echo "$$p"; done | \
          sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
-             -e 's/$$/$(EXEEXT)/' `; \
+             -e 's/$$/$(EXEEXT)/' \
+       `; \
        test -n "$$list" || exit 0; \
        echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
        cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -419,6 +478,7 @@ clean-binPROGRAMS:
        list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
        echo " rm -f" $$list; \
        rm -f $$list
+
 fc-query$(EXEEXT): $(fc_query_OBJECTS) $(fc_query_DEPENDENCIES) $(EXTRA_fc_query_DEPENDENCIES) 
        @rm -f fc-query$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(fc_query_OBJECTS) $(fc_query_LDADD) $(LIBS)
@@ -436,14 +496,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -501,26 +561,15 @@ uninstall-man1:
              -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
        dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -532,15 +581,11 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -549,9 +594,10 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
 
-cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
        case "$(srcdir)" in \
          [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
          *) sdir=$(subdir)/$(srcdir) ;; \
@@ -568,19 +614,6 @@ distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
 distdir: $(DISTFILES)
-       @list='$(MANS)'; if test -n "$$list"; then \
-         list=`for p in $$list; do \
-           if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
-           if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
-         if test -n "$$list" && \
-           grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
-           echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
-           grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/         /' >&2; \
-           echo "       to fix them, install help2man, remove and regenerate the man pages;" >&2; \
-           echo "       typically 'make maintainer-clean' will remove them" >&2; \
-           exit 1; \
-         else :; fi; \
-       else :; fi
        @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        list='$(DISTFILES)'; \
@@ -722,9 +755,9 @@ uninstall-man: uninstall-man1
 
 .MAKE: install-am install-strip
 
-.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
-       clean-binPROGRAMS clean-generic clean-libtool cscopelist ctags \
-       distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+       clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
+       ctags ctags-am distclean distclean-compile distclean-generic \
        distclean-libtool distclean-tags distdir dvi dvi-am html \
        html-am info info-am install install-am install-binPROGRAMS \
        install-data install-data-am install-dvi install-dvi-am \
@@ -734,7 +767,7 @@ uninstall-man: uninstall-man1
        install-strip installcheck installcheck-am installdirs \
        maintainer-clean maintainer-clean-generic mostlyclean \
        mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
-       pdf pdf-am ps ps-am tags uninstall uninstall-am \
+       pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
        uninstall-binPROGRAMS uninstall-man uninstall-man1
 
 
index 2063405..471a42f 100644 (file)
@@ -29,7 +29,7 @@ FC_SCAN_SRC=${top_srcdir}/fc-scan
 
 SGML = ${FC_SCAN_SRC}/fc-scan.sgml
 
-INCLUDES=-I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
+AM_CPPFLAGS=-I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
 
 BUILT_MANS=fc-scan.1
 
index c1ebc25..2b1a1b4 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 #  PERFORMANCE OF THIS SOFTWARE.
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -76,15 +104,16 @@ host_triplet = @host@
 bin_PROGRAMS = fc-scan$(EXEEXT)
 @USEDOCBOOK_TRUE@am__append_1 = ${man_MANS}
 subdir = fc-scan
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
        $(top_srcdir)/depcomp
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
@@ -171,6 +200,23 @@ am__uninstall_files_from_dir = { \
 man1dir = $(mandir)/man1
 NROFF = nroff
 MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -214,6 +260,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -255,12 +303,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -284,7 +339,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -292,7 +346,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = @configdir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -317,23 +370,26 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = @templatedir@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = @xmldir@
 DOC2MAN = docbook2man
 FC_SCAN_SRC = ${top_srcdir}/fc-scan
 SGML = ${FC_SCAN_SRC}/fc-scan.sgml
-INCLUDES = -I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
+AM_CPPFLAGS = -I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
 BUILT_MANS = fc-scan.1
 @ENABLE_DOCS_TRUE@man_MANS = ${BUILT_MANS}
 EXTRA_DIST = fc-scan.sgml $(BUILT_MANS)
@@ -382,10 +438,12 @@ install-binPROGRAMS: $(bin_PROGRAMS)
        fi; \
        for p in $$list; do echo "$$p $$p"; done | \
        sed 's/$(EXEEXT)$$//' | \
-       while read p p1; do if test -f $$p || test -f $$p1; \
-         then echo "$$p"; echo "$$p"; else :; fi; \
+       while read p p1; do if test -f $$p \
+        || test -f $$p1 \
+         ; then echo "$$p"; echo "$$p"; else :; fi; \
        done | \
-       sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+       sed -e 'p;s,.*/,,;n;h' \
+           -e 's|.*|.|' \
            -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
        sed 'N;N;N;s,\n, ,g' | \
        $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -406,7 +464,8 @@ uninstall-binPROGRAMS:
        @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
        files=`for p in $$list; do echo "$$p"; done | \
          sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
-             -e 's/$$/$(EXEEXT)/' `; \
+             -e 's/$$/$(EXEEXT)/' \
+       `; \
        test -n "$$list" || exit 0; \
        echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
        cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -419,6 +478,7 @@ clean-binPROGRAMS:
        list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
        echo " rm -f" $$list; \
        rm -f $$list
+
 fc-scan$(EXEEXT): $(fc_scan_OBJECTS) $(fc_scan_DEPENDENCIES) $(EXTRA_fc_scan_DEPENDENCIES) 
        @rm -f fc-scan$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(fc_scan_OBJECTS) $(fc_scan_LDADD) $(LIBS)
@@ -436,14 +496,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -501,26 +561,15 @@ uninstall-man1:
              -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
        dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -532,15 +581,11 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -549,9 +594,10 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
 
-cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
        case "$(srcdir)" in \
          [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
          *) sdir=$(subdir)/$(srcdir) ;; \
@@ -568,19 +614,6 @@ distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
 distdir: $(DISTFILES)
-       @list='$(MANS)'; if test -n "$$list"; then \
-         list=`for p in $$list; do \
-           if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
-           if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
-         if test -n "$$list" && \
-           grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
-           echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
-           grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/         /' >&2; \
-           echo "       to fix them, install help2man, remove and regenerate the man pages;" >&2; \
-           echo "       typically 'make maintainer-clean' will remove them" >&2; \
-           exit 1; \
-         else :; fi; \
-       else :; fi
        @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        list='$(DISTFILES)'; \
@@ -722,9 +755,9 @@ uninstall-man: uninstall-man1
 
 .MAKE: install-am install-strip
 
-.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
-       clean-binPROGRAMS clean-generic clean-libtool cscopelist ctags \
-       distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+       clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
+       ctags ctags-am distclean distclean-compile distclean-generic \
        distclean-libtool distclean-tags distdir dvi dvi-am html \
        html-am info info-am install install-am install-binPROGRAMS \
        install-data install-data-am install-dvi install-dvi-am \
@@ -734,7 +767,7 @@ uninstall-man: uninstall-man1
        install-strip installcheck installcheck-am installdirs \
        maintainer-clean maintainer-clean-generic mostlyclean \
        mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
-       pdf pdf-am ps ps-am tags uninstall uninstall-am \
+       pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
        uninstall-binPROGRAMS uninstall-man uninstall-man1
 
 
index 54edec2..782cead 100644 (file)
@@ -29,7 +29,7 @@ FC_VALIDATE_SRC=${top_srcdir}/fc-validate
 
 SGML = ${FC_VALIDATE_SRC}/fc-validate.sgml
 
-INCLUDES=-I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
+AM_CPPFLAGS=-I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
 
 BUILT_MANS=fc-validate.1
 
index 5b21a63..cbe5382 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 #  PERFORMANCE OF THIS SOFTWARE.
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -76,15 +104,16 @@ host_triplet = @host@
 bin_PROGRAMS = fc-validate$(EXEEXT)
 @USEDOCBOOK_TRUE@am__append_1 = $(man_MANS)
 subdir = fc-validate
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
        $(top_srcdir)/depcomp
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
@@ -173,6 +202,23 @@ am__uninstall_files_from_dir = { \
 man1dir = $(mandir)/man1
 NROFF = nroff
 MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -216,6 +262,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -257,12 +305,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -286,7 +341,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -294,7 +348,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = @configdir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -319,23 +372,26 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = @templatedir@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = @xmldir@
 DOC2MAN = docbook2man
 FC_VALIDATE_SRC = ${top_srcdir}/fc-validate
 SGML = ${FC_VALIDATE_SRC}/fc-validate.sgml
-INCLUDES = -I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
+AM_CPPFLAGS = -I${top_srcdir} $(FREETYPE_CFLAGS) $(WARN_CFLAGS)
 BUILT_MANS = fc-validate.1
 @ENABLE_DOCS_TRUE@man_MANS = ${BUILT_MANS}
 EXTRA_DIST = fc-validate.sgml $(BUILT_MANS)
@@ -384,10 +440,12 @@ install-binPROGRAMS: $(bin_PROGRAMS)
        fi; \
        for p in $$list; do echo "$$p $$p"; done | \
        sed 's/$(EXEEXT)$$//' | \
-       while read p p1; do if test -f $$p || test -f $$p1; \
-         then echo "$$p"; echo "$$p"; else :; fi; \
+       while read p p1; do if test -f $$p \
+        || test -f $$p1 \
+         ; then echo "$$p"; echo "$$p"; else :; fi; \
        done | \
-       sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+       sed -e 'p;s,.*/,,;n;h' \
+           -e 's|.*|.|' \
            -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
        sed 'N;N;N;s,\n, ,g' | \
        $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -408,7 +466,8 @@ uninstall-binPROGRAMS:
        @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
        files=`for p in $$list; do echo "$$p"; done | \
          sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
-             -e 's/$$/$(EXEEXT)/' `; \
+             -e 's/$$/$(EXEEXT)/' \
+       `; \
        test -n "$$list" || exit 0; \
        echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
        cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -421,6 +480,7 @@ clean-binPROGRAMS:
        list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
        echo " rm -f" $$list; \
        rm -f $$list
+
 fc-validate$(EXEEXT): $(fc_validate_OBJECTS) $(fc_validate_DEPENDENCIES) $(EXTRA_fc_validate_DEPENDENCIES) 
        @rm -f fc-validate$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(fc_validate_OBJECTS) $(fc_validate_LDADD) $(LIBS)
@@ -438,14 +498,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -503,26 +563,15 @@ uninstall-man1:
              -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
        dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -534,15 +583,11 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -551,9 +596,10 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
 
-cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
        case "$(srcdir)" in \
          [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
          *) sdir=$(subdir)/$(srcdir) ;; \
@@ -570,19 +616,6 @@ distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
 distdir: $(DISTFILES)
-       @list='$(MANS)'; if test -n "$$list"; then \
-         list=`for p in $$list; do \
-           if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
-           if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
-         if test -n "$$list" && \
-           grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
-           echo "error: found man pages containing the 'missing help2man' replacement text:" >&2; \
-           grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/         /' >&2; \
-           echo "       to fix them, install help2man, remove and regenerate the man pages;" >&2; \
-           echo "       typically 'make maintainer-clean' will remove them" >&2; \
-           exit 1; \
-         else :; fi; \
-       else :; fi
        @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        list='$(DISTFILES)'; \
@@ -724,9 +757,9 @@ uninstall-man: uninstall-man1
 
 .MAKE: install-am install-strip
 
-.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
-       clean-binPROGRAMS clean-generic clean-libtool cscopelist ctags \
-       distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
+       clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
+       ctags ctags-am distclean distclean-compile distclean-generic \
        distclean-libtool distclean-tags distdir dvi dvi-am html \
        html-am info info-am install install-am install-binPROGRAMS \
        install-data install-data-am install-dvi install-dvi-am \
@@ -736,7 +769,7 @@ uninstall-man: uninstall-man1
        install-strip installcheck installcheck-am installdirs \
        maintainer-clean maintainer-clean-generic mostlyclean \
        mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
-       pdf pdf-am ps ps-am tags uninstall uninstall-am \
+       pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
        uninstall-binPROGRAMS uninstall-man uninstall-man1
 
 
index 9ef2c27..fa00a72 100644 (file)
@@ -5,12 +5,14 @@ includedir=@includedir@
 sysconfdir=@sysconfdir@
 localstatedir=@localstatedir@
 PACKAGE=@PACKAGE@
-confdir=@baseconfigdir@
+confdir=@BASECONFIGDIR@
 cachedir=@fc_cachedir@
 
 Name: Fontconfig
 Description: Font configuration and customization library
 Version: @VERSION@
+Requires: @PKGCONFIG_REQUIRES@
+Requires.private: @PKGCONFIG_REQUIRES_PRIVATELY@
 Libs: -L${libdir} -lfontconfig
-Libs.private: @LIBXML2_LIBS@ @EXPAT_LIBS@ @FREETYPE_LIBS@ @ICONV_LIBS@
-Cflags: -I${includedir}
+Libs.private: @EXPAT_LIBS@ @FREETYPE_LIBS@ @ICONV_LIBS@ @LIBXML2_LIBS@
+Cflags: -I${includedir} @EXPAT_CFLAGS@ @FREETYPE_CFLAGS@ @ICONV_CFLAGS@ @LIBXML2_CFLAGS@
index 1d9b984..04c23a6 100644 (file)
@@ -4,7 +4,7 @@
 
 Summary:       Font configuration and customization library
 Name:          fontconfig
-Version:       2.10.91
+Version:       2.11.93
 Release:       1
 License:       MIT
 Group:         System Environment/Libraries
index 7be55da..1f0eca4 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @SET_MAKE@
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -51,15 +79,16 @@ POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
 subdir = fontconfig
-DIST_COMMON = $(fontconfiginclude_HEADERS) $(srcdir)/Makefile.am \
-       $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+       $(fontconfiginclude_HEADERS)
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
@@ -114,6 +143,23 @@ am__uninstall_files_from_dir = { \
   }
 am__installdirs = "$(DESTDIR)$(fontconfigincludedir)"
 HEADERS = $(fontconfiginclude_HEADERS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -157,6 +203,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -198,12 +246,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -227,7 +282,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -235,7 +289,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = @configdir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -260,19 +313,22 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = @templatedir@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = @xmldir@
 fontconfigincludedir = $(includedir)/fontconfig
 fontconfig_headers = \
        fontconfig.h            \
@@ -341,26 +397,15 @@ uninstall-fontconfigincludeHEADERS:
        files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
        dir='$(DESTDIR)$(fontconfigincludedir)'; $(am__uninstall_files_from_dir)
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -372,15 +417,11 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -389,9 +430,10 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
 
-cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
        case "$(srcdir)" in \
          [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
          *) sdir=$(subdir)/$(srcdir) ;; \
@@ -542,18 +584,19 @@ uninstall-am: uninstall-fontconfigincludeHEADERS
 
 .MAKE: install-am install-strip
 
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
-       clean-libtool cscopelist ctags distclean distclean-generic \
-       distclean-libtool distclean-tags distdir dvi dvi-am html \
-       html-am info info-am install install-am install-data \
-       install-data-am install-dvi install-dvi-am install-exec \
-       install-exec-am install-fontconfigincludeHEADERS install-html \
-       install-html-am install-info install-info-am install-man \
-       install-pdf install-pdf-am install-ps install-ps-am \
-       install-strip installcheck installcheck-am installdirs \
-       maintainer-clean maintainer-clean-generic mostlyclean \
-       mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
-       tags uninstall uninstall-am uninstall-fontconfigincludeHEADERS
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
+       clean-libtool cscopelist-am ctags ctags-am distclean \
+       distclean-generic distclean-libtool distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-dvi install-dvi-am \
+       install-exec install-exec-am install-fontconfigincludeHEADERS \
+       install-html install-html-am install-info install-info-am \
+       install-man install-pdf install-pdf-am install-ps \
+       install-ps-am install-strip installcheck installcheck-am \
+       installdirs maintainer-clean maintainer-clean-generic \
+       mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
+       ps ps-am tags tags-am uninstall uninstall-am \
+       uninstall-fontconfigincludeHEADERS
 
 
 -include $(top_srcdir)/git.mk
index 18b8c08..a6ee5c2 100644 (file)
@@ -48,8 +48,9 @@
        __o__ = va_arg (va, const char *);                          \
        if (!__o__)                                                 \
            break;                                                  \
-       __v__.type = va_arg (va, FcType);                           \
+       __v__.type = va_arg (va, int);                              \
        switch (__v__.type) {                                       \
+       case FcTypeUnknown:                                         \
        case FcTypeVoid:                                            \
            goto _FcPatternVapBuild_bail1;                          \
        case FcTypeInteger:                                         \
@@ -76,6 +77,9 @@
        case FcTypeLangSet:                                         \
            __v__.u.l = va_arg (va, const FcLangSet *);             \
            break;                                                  \
+       case FcTypeRange:                                           \
+           __v__.u.r = va_arg (va, const FcRange *);               \
+           break;                                                  \
        }                                                           \
        if (!FcPatternAdd (__p__, __o__, __v__, FcTrue))            \
            goto _FcPatternVapBuild_bail1;                          \
index 52e9438..b14c961 100644 (file)
@@ -51,8 +51,8 @@ typedef int           FcBool;
  */
 
 #define FC_MAJOR       2
-#define FC_MINOR       10
-#define FC_REVISION    91
+#define FC_MINOR       11
+#define FC_REVISION    93
 
 #define FC_VERSION     ((FC_MAJOR * 10000) + (FC_MINOR * 100) + (FC_REVISION))
 
@@ -66,7 +66,7 @@ typedef int           FcBool;
  * it means multiple copies of the font information.
  */
 
-#define FC_CACHE_VERSION    "3"
+#define FC_CACHE_VERSION    "5"
 
 #define FcTrue         1
 #define FcFalse                0
@@ -75,7 +75,7 @@ typedef int           FcBool;
 #define FC_STYLE           "style"             /* String */
 #define FC_SLANT           "slant"             /* Int */
 #define FC_WEIGHT          "weight"            /* Int */
-#define FC_SIZE                    "size"              /* Double */
+#define FC_SIZE                    "size"              /* Range (double) */
 #define FC_ASPECT          "aspect"            /* Double */
 #define FC_PIXEL_SIZE      "pixelsize"         /* Double */
 #define FC_SPACING         "spacing"           /* Int */
@@ -91,9 +91,10 @@ typedef int          FcBool;
 #define FC_FILE                    "file"              /* String */
 #define FC_INDEX           "index"             /* Int */
 #define FC_FT_FACE         "ftface"            /* FT_Face */
-#define FC_RASTERIZER      "rasterizer"        /* String */
+#define FC_RASTERIZER      "rasterizer"        /* String (deprecated) */
 #define FC_OUTLINE         "outline"           /* Bool */
 #define FC_SCALABLE        "scalable"          /* Bool */
+#define FC_COLOR           "color"             /* Bool */
 #define FC_SCALE           "scale"             /* double */
 #define FC_DPI             "dpi"               /* double */
 #define FC_RGBA                    "rgba"              /* Int */
@@ -112,7 +113,11 @@ typedef int                FcBool;
 #define FC_EMBEDDED_BITMAP  "embeddedbitmap"   /* Bool - true to enable embedded bitmaps */
 #define FC_DECORATIVE      "decorative"        /* Bool - true if style is a decorative variant */
 #define FC_LCD_FILTER      "lcdfilter"         /* Int */
+#define FC_FONT_FEATURES    "fontfeatures"     /* String */
 #define FC_NAMELANG        "namelang"          /* String RFC 3866 langs */
+#define FC_PRGNAME         "prgname"           /* String */
+#define FC_HASH                    "hash"              /* String (deprecated) */
+#define FC_POSTSCRIPT_NAME  "postscriptname"   /* String */
 
 #define FC_CACHE_SUFFIX                    ".cache-" FC_CACHE_VERSION
 #define FC_DIR_CACHE_FILE          "fonts.cache-" FC_CACHE_VERSION
@@ -127,6 +132,8 @@ typedef int         FcBool;
 #define FC_WEIGHT_EXTRALIGHT       40
 #define FC_WEIGHT_ULTRALIGHT       FC_WEIGHT_EXTRALIGHT
 #define FC_WEIGHT_LIGHT                    50
+#define FC_WEIGHT_DEMILIGHT        55
+#define FC_WEIGHT_SEMILIGHT        FC_WEIGHT_DEMILIGHT
 #define FC_WEIGHT_BOOK             75
 #define FC_WEIGHT_REGULAR          80
 #define FC_WEIGHT_NORMAL           FC_WEIGHT_REGULAR
@@ -181,6 +188,7 @@ typedef int         FcBool;
 #define FC_LCD_LEGACY      3
 
 typedef enum _FcType {
+    FcTypeUnknown = -1,
     FcTypeVoid,
     FcTypeInteger,
     FcTypeDouble,
@@ -189,7 +197,8 @@ typedef enum _FcType {
     FcTypeMatrix,
     FcTypeCharSet,
     FcTypeFTFace,
-    FcTypeLangSet
+    FcTypeLangSet,
+    FcTypeRange
 } FcType;
 
 typedef struct _FcMatrix {
@@ -226,6 +235,8 @@ typedef struct _FcPattern   FcPattern;
 
 typedef struct _FcLangSet   FcLangSet;
 
+typedef struct _FcRange            FcRange;
+
 typedef struct _FcValue {
     FcType     type;
     union {
@@ -237,6 +248,7 @@ typedef struct _FcValue {
        const FcCharSet *c;
        void            *f;
        const FcLangSet *l;
+       const FcRange   *r;
     } u;
 } FcValue;
 
@@ -417,6 +429,13 @@ FcConfigSubstitute (FcConfig       *config,
                    FcPattern   *p,
                    FcMatchKind kind);
 
+FcPublic const FcChar8 *
+FcConfigGetSysRoot (const FcConfig *config);
+
+FcPublic void
+FcConfigSetSysRoot (FcConfig      *config,
+                   const FcChar8 *sysroot);
+
 /* fccharset.c */
 FcPublic FcCharSet*
 FcCharSetCreate (void);
@@ -529,6 +548,9 @@ FcDirSave (FcFontSet *set, FcStrSet *dirs, const FcChar8 *dir);
 
 FcPublic FcCache *
 FcDirCacheLoad (const FcChar8 *dir, FcConfig *config, FcChar8 **cache_file);
+
+FcPublic FcCache *
+FcDirCacheRescan (const FcChar8 *dir, FcConfig *config);
     
 FcPublic FcCache *
 FcDirCacheRead (const FcChar8 *dir, FcBool force, FcConfig *config);
@@ -838,6 +860,9 @@ FcPatternAddBool (FcPattern *p, const char *object, FcBool b);
 FcPublic FcBool
 FcPatternAddLangSet (FcPattern *p, const char *object, const FcLangSet *ls);
 
+FcPublic FcBool
+FcPatternAddRange (FcPattern *p, const char *object, const FcRange *r);
+
 FcPublic FcResult
 FcPatternGetInteger (const FcPattern *p, const char *object, int n, int *i);
 
@@ -859,6 +884,9 @@ FcPatternGetBool (const FcPattern *p, const char *object, int n, FcBool *b);
 FcPublic FcResult
 FcPatternGetLangSet (const FcPattern *p, const char *object, int n, FcLangSet **ls);
 
+FcPublic FcResult
+FcPatternGetRange (const FcPattern *p, const char *object, int id, FcRange **r);
+
 FcPublic FcPattern *
 FcPatternVaBuild (FcPattern *p, va_list va);
     
@@ -868,6 +896,30 @@ FcPatternBuild (FcPattern *p, ...) FC_ATTRIBUTE_SENTINEL(0);
 FcPublic FcChar8 *
 FcPatternFormat (FcPattern *pat, const FcChar8 *format);
 
+/* fcrange.c */
+FcPublic FcRange *
+FcRangeCreateDouble (double begin, double end);
+
+FcPublic FcRange *
+FcRangeCreateInteger (FcChar32 begin, FcChar32 end);
+
+FcPublic void
+FcRangeDestroy (FcRange *range);
+
+FcPublic FcRange *
+FcRangeCopy (const FcRange *r);
+
+FcPublic FcBool
+FcRangeGetDouble(const FcRange *range, double *begin, double *end);
+
+/* fcweight.c */
+
+FcPublic int
+FcWeightFromOpenType (int ot_weight);
+
+FcPublic int
+FcWeightToOpenType (int fc_weight);
+
 /* fcstr.c */
 
 FcPublic FcChar8 *
@@ -962,6 +1014,9 @@ FcStrSetDestroy (FcStrSet *set);
 FcPublic FcStrList *
 FcStrListCreate (FcStrSet *set);
 
+FcPublic void
+FcStrListFirst (FcStrList *list);
+
 FcPublic FcChar8 *
 FcStrListNext (FcStrList *list);
 
index 6a8753d..7c16a70 100644 (file)
 
        <config>
 <!--
-  These are the default Unicode chars that are expected to be blank
-  in fonts.  All other blank chars are assumed to be broken and
-  won't appear in the resulting charsets
- -->
-               <blank>
-                       <int>0x0020</int>       <!-- SPACE -->
-                       <int>0x00A0</int>       <!-- NO-BREAK SPACE -->
-                       <int>0x00AD</int>       <!-- SOFT HYPHEN -->
-                       <int>0x034F</int>       <!-- COMBINING GRAPHEME JOINER -->
-                       <int>0x0600</int>       <!-- ARABIC NUMBER SIGN -->
-                       <int>0x0601</int>       <!-- ARABIC SIGN SANAH -->
-                       <int>0x0602</int>       <!-- ARABIC FOOTNOTE MARKER -->
-                       <int>0x0603</int>       <!-- ARABIC SIGN SAFHA -->
-                       <int>0x06DD</int>       <!-- ARABIC END OF AYAH -->
-                       <int>0x070F</int>       <!-- SYRIAC ABBREVIATION MARK -->
-                       <int>0x115F</int>       <!-- HANGUL CHOSEONG FILLER -->
-                       <int>0x1160</int>       <!-- HANGUL JUNGSEONG FILLER -->
-                       <int>0x1680</int>       <!-- OGHAM SPACE MARK -->
-                       <int>0x17B4</int>       <!-- KHMER VOWEL INHERENT AQ -->
-                       <int>0x17B5</int>       <!-- KHMER VOWEL INHERENT AA -->
-                       <int>0x180E</int>       <!-- MONGOLIAN VOWEL SEPARATOR -->
-                       <int>0x2000</int>       <!-- EN QUAD -->
-                       <int>0x2001</int>       <!-- EM QUAD -->
-                       <int>0x2002</int>       <!-- EN SPACE -->
-                       <int>0x2003</int>       <!-- EM SPACE -->
-                       <int>0x2004</int>       <!-- THREE-PER-EM SPACE -->
-                       <int>0x2005</int>       <!-- FOUR-PER-EM SPACE -->
-                       <int>0x2006</int>       <!-- SIX-PER-EM SPACE -->
-                       <int>0x2007</int>       <!-- FIGURE SPACE -->
-                       <int>0x2008</int>       <!-- PUNCTUATION SPACE -->
-                       <int>0x2009</int>       <!-- THIN SPACE -->
-                       <int>0x200A</int>       <!-- HAIR SPACE -->
-                       <int>0x200B</int>       <!-- ZERO WIDTH SPACE -->
-                       <int>0x200C</int>       <!-- ZERO WIDTH NON-JOINER -->
-                       <int>0x200D</int>       <!-- ZERO WIDTH JOINER -->
-                       <int>0x200E</int>       <!-- LEFT-TO-RIGHT MARK -->
-                       <int>0x200F</int>       <!-- RIGHT-TO-LEFT MARK -->
-                       <int>0x2028</int>       <!-- LINE SEPARATOR -->
-                       <int>0x2029</int>       <!-- PARAGRAPH SEPARATOR -->
-                       <int>0x202A</int>       <!-- LEFT-TO-RIGHT EMBEDDING -->
-                       <int>0x202B</int>       <!-- RIGHT-TO-LEFT EMBEDDING -->
-                       <int>0x202C</int>       <!-- POP DIRECTIONAL FORMATTING -->
-                       <int>0x202D</int>       <!-- LEFT-TO-RIGHT OVERRIDE -->
-                       <int>0x202E</int>       <!-- RIGHT-TO-LEFT OVERRIDE -->
-                       <int>0x202F</int>       <!-- NARROW NO-BREAK SPACE -->
-                       <int>0x205F</int>       <!-- MEDIUM MATHEMATICAL SPACE -->
-                       <int>0x2060</int>       <!-- WORD JOINER -->
-                       <int>0x2061</int>       <!-- FUNCTION APPLICATION -->
-                       <int>0x2062</int>       <!-- INVISIBLE TIMES -->
-                       <int>0x2063</int>       <!-- INVISIBLE SEPARATOR -->
-                       <int>0x206A</int>       <!-- INHIBIT SYMMETRIC SWAPPING -->
-                       <int>0x206B</int>       <!-- ACTIVATE SYMMETRIC SWAPPING -->
-                       <int>0x206C</int>       <!-- INHIBIT ARABIC FORM SHAPING -->
-                       <int>0x206D</int>       <!-- ACTIVATE ARABIC FORM SHAPING -->
-                       <int>0x206E</int>       <!-- NATIONAL DIGIT SHAPES -->
-                       <int>0x206F</int>       <!-- NOMINAL DIGIT SHAPES -->
-                       <int>0x2800</int>       <!-- BRAILLE PATTERN BLANK -->
-                       <int>0x3000</int>       <!-- IDEOGRAPHIC SPACE -->
-                       <int>0x3164</int>       <!-- HANGUL FILLER -->
-                       <int>0xFEFF</int>       <!-- ZERO WIDTH NO-BREAK SPACE -->
-                       <int>0xFFA0</int>       <!-- HALFWIDTH HANGUL FILLER -->
-                       <int>0xFFF9</int>       <!-- INTERLINEAR ANNOTATION ANCHOR -->
-                       <int>0xFFFA</int>       <!-- INTERLINEAR ANNOTATION SEPARATOR -->
-                       <int>0xFFFB</int>       <!-- INTERLINEAR ANNOTATION TERMINATOR -->
-               </blank>
-<!--
   Rescan configuration every 30 seconds when FcFontSetList is called
  -->
                <rescan>
index def8c21..479f2c0 100644 (file)
--- a/fonts.dtd
+++ b/fonts.dtd
     if 'target' is 'font', execute the match on the result of a font
     selection.
 -->
-<!ELEMENT match (test*, edit*)>
+<!ELEMENT match (test|edit)+>
 <!ATTLIST match
          target (pattern|font|scan) "pattern">
 
 <!ELEMENT edit (%expr;)*>
 <!ATTLIST edit
          name CDATA        #REQUIRED
-         mode (assign|assign_replace|prepend|append|prepend_first|append_last) "assign"
+         mode (assign|assign_replace|prepend|append|prepend_first|append_last|delete|delete_all) "assign"
          binding (weak|strong|same) "weak">
 
 <!--
diff --git a/m4/ac_check_symbol.m4 b/m4/ac_check_symbol.m4
new file mode 100644 (file)
index 0000000..41c1528
--- /dev/null
@@ -0,0 +1,48 @@
+dnl @synopsis AC_CHECK_SYMBOL(SYMBOL, HEADER... [,ACTION-IF-FOUND [,ACTION-IF-NOT-FOUND]])
+dnl
+dnl a wrapper around AC_EGREP_HEADER the shellvar $ac_found will hold
+dnl the HEADER-name that had been containing the symbol. This value is
+dnl shown to the user.
+dnl
+dnl @category C
+dnl @author Guido U. Draheim <guidod@gmx.de>
+dnl @version 2006-10-13
+dnl @license GPLWithACException
+
+AC_DEFUN([AC_CHECK_SYMBOL],
+[AC_MSG_CHECKING([for $1 in $2])
+AC_CACHE_VAL(ac_cv_func_$1,
+[AC_REQUIRE_CPP()dnl
+changequote(, )dnl
+symbol="[^a-zA-Z_0-9]$1[^a-zA-Z_0-9]"
+changequote([, ])dnl
+ac_found=no
+for ac_header in $2 ; do
+  ac_safe=`echo "$ac_header" | sed 'y%./+-%__p_%' `
+  if test $ac_found != "yes" ; then
+      if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+            AC_EGREP_HEADER( $symbol, $ac_header, [ac_found="$ac_header"] )
+      fi
+  fi
+done
+if test "$ac_found" != "no" ; then
+  AC_MSG_RESULT($ac_found)
+  ifelse([$3], , :, [$3])
+else
+  AC_MSG_RESULT(no)
+  ifelse([$4], , , [$4
+])dnl
+fi
+])])
+
+dnl AC_CHECK_SYMBOLS( symbol..., header... [, action-if-found [, action-if-not-found]])
+AC_DEFUN([AC_CHECK_SYMBOLS],
+[for ac_func in $1
+do
+P4_CHECK_SYMBOL($ac_func, $2,
+[changequote(, )dnl
+  ac_tr_func=HAVE_`echo $ac_func | sed -e 'y:abcdefghijklmnopqrstuvwxyz:ABCDEFGHIJKLMNOPQRSTUVWXYZ:' -e 's:[[^A-Z0-9]]:_:'`
+changequote([, ])dnl
+  AC_DEFINE_UNQUOTED($ac_tr_func) $2], $3)dnl
+done
+])
index d90de34..e77541c 100644 (file)
@@ -82,7 +82,7 @@
 #   modified version of the Autoconf Macro, you may extend this special
 #   exception to the GPL to apply to your modified version as well.
 
-#serial 18
+#serial 21
 
 AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD])
 AC_DEFUN([AX_PTHREAD], [
@@ -103,8 +103,8 @@ if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then
         save_LIBS="$LIBS"
         LIBS="$PTHREAD_LIBS $LIBS"
         AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS])
-        AC_TRY_LINK_FUNC(pthread_join, ax_pthread_ok=yes)
-        AC_MSG_RESULT($ax_pthread_ok)
+        AC_TRY_LINK_FUNC([pthread_join], [ax_pthread_ok=yes])
+        AC_MSG_RESULT([$ax_pthread_ok])
         if test x"$ax_pthread_ok" = xno; then
                 PTHREAD_LIBS=""
                 PTHREAD_CFLAGS=""
@@ -162,8 +162,27 @@ case ${host_os} in
         darwin*)
         ax_pthread_flags="-pthread $ax_pthread_flags"
         ;;
+       netbsd*)
+       # use libc stubs, don't link against libpthread, to allow
+       # dynamic loading
+       ax_pthread_flags=""
+       ;;
 esac
 
+# Clang doesn't consider unrecognized options an error unless we specify
+# -Werror. We throw in some extra Clang-specific options to ensure that
+# this doesn't happen for GCC, which also accepts -Werror.
+
+AC_MSG_CHECKING([if compiler needs -Werror to reject unknown flags])
+save_CFLAGS="$CFLAGS"
+ax_pthread_extra_flags="-Werror"
+CFLAGS="$CFLAGS $ax_pthread_extra_flags -Wunknown-warning-option -Wsizeof-array-argument"
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([int foo(void);],[foo()])],
+                  [AC_MSG_RESULT([yes])],
+                  [ax_pthread_extra_flags=
+                   AC_MSG_RESULT([no])])
+CFLAGS="$save_CFLAGS"
+
 if test x"$ax_pthread_ok" = xno; then
 for flag in $ax_pthread_flags; do
 
@@ -178,7 +197,7 @@ for flag in $ax_pthread_flags; do
                 ;;
 
                 pthread-config)
-                AC_CHECK_PROG(ax_pthread_config, pthread-config, yes, no)
+                AC_CHECK_PROG([ax_pthread_config], [pthread-config], [yes], [no])
                 if test x"$ax_pthread_config" = xno; then continue; fi
                 PTHREAD_CFLAGS="`pthread-config --cflags`"
                 PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`"
@@ -193,7 +212,7 @@ for flag in $ax_pthread_flags; do
         save_LIBS="$LIBS"
         save_CFLAGS="$CFLAGS"
         LIBS="$PTHREAD_LIBS $LIBS"
-        CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
+        CFLAGS="$CFLAGS $PTHREAD_CFLAGS $ax_pthread_extra_flags"
 
         # Check for various functions.  We must include pthread.h,
         # since some functions may be macros.  (On the Sequent, we
@@ -219,7 +238,7 @@ for flag in $ax_pthread_flags; do
         LIBS="$save_LIBS"
         CFLAGS="$save_CFLAGS"
 
-        AC_MSG_RESULT($ax_pthread_ok)
+        AC_MSG_RESULT([$ax_pthread_ok])
         if test "x$ax_pthread_ok" = xyes; then
                 break;
         fi
@@ -245,9 +264,9 @@ if test "x$ax_pthread_ok" = xyes; then
                 [attr_name=$attr; break],
                 [])
         done
-        AC_MSG_RESULT($attr_name)
+        AC_MSG_RESULT([$attr_name])
         if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then
-            AC_DEFINE_UNQUOTED(PTHREAD_CREATE_JOINABLE, $attr_name,
+            AC_DEFINE_UNQUOTED([PTHREAD_CREATE_JOINABLE], [$attr_name],
                                [Define to necessary symbol if this constant
                                 uses a non-standard name on your system.])
         fi
@@ -261,45 +280,54 @@ if test "x$ax_pthread_ok" = xyes; then
             if test "$GCC" = "yes"; then
                 flag="-D_REENTRANT"
             else
+                # TODO: What about Clang on Solaris?
                 flag="-mt -D_REENTRANT"
             fi
             ;;
         esac
-        AC_MSG_RESULT(${flag})
+        AC_MSG_RESULT([$flag])
         if test "x$flag" != xno; then
             PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS"
         fi
 
         AC_CACHE_CHECK([for PTHREAD_PRIO_INHERIT],
-            ax_cv_PTHREAD_PRIO_INHERIT, [
-                AC_LINK_IFELSE([
-                    AC_LANG_PROGRAM([[#include <pthread.h>]], [[int i = PTHREAD_PRIO_INHERIT;]])],
+            [ax_cv_PTHREAD_PRIO_INHERIT], [
+                AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <pthread.h>]],
+                                                [[int i = PTHREAD_PRIO_INHERIT;]])],
                     [ax_cv_PTHREAD_PRIO_INHERIT=yes],
                     [ax_cv_PTHREAD_PRIO_INHERIT=no])
             ])
         AS_IF([test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes"],
-            AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], 1, [Have PTHREAD_PRIO_INHERIT.]))
+            [AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], [1], [Have PTHREAD_PRIO_INHERIT.])])
 
         LIBS="$save_LIBS"
         CFLAGS="$save_CFLAGS"
 
-        # More AIX lossage: must compile with xlc_r or cc_r
-        if test x"$GCC" != xyes; then
-          AC_CHECK_PROGS(PTHREAD_CC, xlc_r cc_r, ${CC})
-        else
-          PTHREAD_CC=$CC
+        # More AIX lossage: compile with *_r variant
+        if test "x$GCC" != xyes; then
+            case $host_os in
+                aix*)
+                AS_CASE(["x/$CC"],
+                  [x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6],
+                  [#handle absolute path differently from PATH based program lookup
+                   AS_CASE(["x$CC"],
+                     [x/*],
+                     [AS_IF([AS_EXECUTABLE_P([${CC}_r])],[PTHREAD_CC="${CC}_r"])],
+                     [AC_CHECK_PROGS([PTHREAD_CC],[${CC}_r],[$CC])])])
+                ;;
+            esac
         fi
-else
-        PTHREAD_CC="$CC"
 fi
 
-AC_SUBST(PTHREAD_LIBS)
-AC_SUBST(PTHREAD_CFLAGS)
-AC_SUBST(PTHREAD_CC)
+test -n "$PTHREAD_CC" || PTHREAD_CC="$CC"
+
+AC_SUBST([PTHREAD_LIBS])
+AC_SUBST([PTHREAD_CFLAGS])
+AC_SUBST([PTHREAD_CC])
 
 # Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND:
 if test x"$ax_pthread_ok" = xyes; then
-        ifelse([$1],,AC_DEFINE(HAVE_PTHREAD,1,[Define if you have POSIX threads libraries and header files.]),[$1])
+        ifelse([$1],,[AC_DEFINE([HAVE_PTHREAD],[1],[Define if you have POSIX threads libraries and header files.])],[$1])
         :
 else
         ax_pthread_ok=no
index 56666f0..f12cfdf 100644 (file)
@@ -1312,7 +1312,7 @@ ia64-*-hpux*)
   rm -rf conftest*
   ;;
 
-x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
+x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
   # Find out which ABI we are using.
   echo 'int i;' > conftest.$ac_ext
@@ -1326,7 +1326,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
          x86_64-*linux*)
            LD="${LD-ld} -m elf_i386"
            ;;
-         ppc64-*linux*|powerpc64-*linux*)
+         powerpc64le-*linux*)
+           LD="${LD-ld} -m elf32lppclinux"
+           ;;
+         powerpc64-*linux*)
            LD="${LD-ld} -m elf32ppclinux"
            ;;
          s390x-*linux*)
@@ -1345,7 +1348,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
          x86_64-*linux*)
            LD="${LD-ld} -m elf_x86_64"
            ;;
-         ppc*-*linux*|powerpc*-*linux*)
+         powerpcle-*linux*)
+           LD="${LD-ld} -m elf64lppc"
+           ;;
+         powerpc-*linux*)
            LD="${LD-ld} -m elf64ppc"
            ;;
          s390*-*linux*|s390*-*tpf*)
diff --git a/m4/pkg.m4 b/m4/pkg.m4
new file mode 100644 (file)
index 0000000..c5b26b5
--- /dev/null
+++ b/m4/pkg.m4
@@ -0,0 +1,214 @@
+# pkg.m4 - Macros to locate and utilise pkg-config.            -*- Autoconf -*-
+# serial 1 (pkg-config-0.24)
+# 
+# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# PKG_PROG_PKG_CONFIG([MIN-VERSION])
+# ----------------------------------
+AC_DEFUN([PKG_PROG_PKG_CONFIG],
+[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
+m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
+m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
+AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
+AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
+AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
+
+if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
+       AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
+fi
+if test -n "$PKG_CONFIG"; then
+       _pkg_min_version=m4_default([$1], [0.9.0])
+       AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
+       if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
+               AC_MSG_RESULT([yes])
+       else
+               AC_MSG_RESULT([no])
+               PKG_CONFIG=""
+       fi
+fi[]dnl
+])# PKG_PROG_PKG_CONFIG
+
+# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+#
+# Check to see whether a particular set of modules exists.  Similar
+# to PKG_CHECK_MODULES(), but does not set variables or print errors.
+#
+# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
+# only at the first occurence in configure.ac, so if the first place
+# it's called might be skipped (such as if it is within an "if", you
+# have to call PKG_CHECK_EXISTS manually
+# --------------------------------------------------------------
+AC_DEFUN([PKG_CHECK_EXISTS],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
+if test -n "$PKG_CONFIG" && \
+    AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
+  m4_default([$2], [:])
+m4_ifvaln([$3], [else
+  $3])dnl
+fi])
+
+# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
+# ---------------------------------------------
+m4_define([_PKG_CONFIG],
+[if test -n "$$1"; then
+    pkg_cv_[]$1="$$1"
+ elif test -n "$PKG_CONFIG"; then
+    PKG_CHECK_EXISTS([$3],
+                     [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
+                     test "x$?" != "x0" && pkg_failed=yes ],
+                    [pkg_failed=yes])
+ else
+    pkg_failed=untried
+fi[]dnl
+])# _PKG_CONFIG
+
+# _PKG_SHORT_ERRORS_SUPPORTED
+# -----------------------------
+AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+        _pkg_short_errors_supported=yes
+else
+        _pkg_short_errors_supported=no
+fi[]dnl
+])# _PKG_SHORT_ERRORS_SUPPORTED
+
+
+# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
+# [ACTION-IF-NOT-FOUND])
+#
+#
+# Note that if there is a possibility the first call to
+# PKG_CHECK_MODULES might not happen, you should be sure to include an
+# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
+#
+#
+# --------------------------------------------------------------
+AC_DEFUN([PKG_CHECK_MODULES],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
+AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
+AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
+
+pkg_failed=no
+AC_MSG_CHECKING([for $1])
+
+_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
+_PKG_CONFIG([$1][_LIBS], [libs], [$2])
+
+m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
+and $1[]_LIBS to avoid the need to call pkg-config.
+See the pkg-config man page for more details.])
+
+if test $pkg_failed = yes; then
+       AC_MSG_RESULT([no])
+        _PKG_SHORT_ERRORS_SUPPORTED
+        if test $_pkg_short_errors_supported = yes; then
+               $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
+        else 
+               $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
+        fi
+       # Put the nasty error message in config.log where it belongs
+       echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
+
+       m4_default([$4], [AC_MSG_ERROR(
+[Package requirements ($2) were not met:
+
+$$1_PKG_ERRORS
+
+Consider adjusting the PKG_CONFIG_PATH environment variable if you
+installed software in a non-standard prefix.
+
+_PKG_TEXT])[]dnl
+        ])
+elif test $pkg_failed = untried; then
+       AC_MSG_RESULT([no])
+       m4_default([$4], [AC_MSG_FAILURE(
+[The pkg-config script could not be found or is too old.  Make sure it
+is in your PATH or set the PKG_CONFIG environment variable to the full
+path to pkg-config.
+
+_PKG_TEXT
+
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
+        ])
+else
+       $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
+       $1[]_LIBS=$pkg_cv_[]$1[]_LIBS
+        AC_MSG_RESULT([yes])
+       $3
+fi[]dnl
+])# PKG_CHECK_MODULES
+
+
+# PKG_INSTALLDIR(DIRECTORY)
+# -------------------------
+# Substitutes the variable pkgconfigdir as the location where a module
+# should install pkg-config .pc files. By default the directory is
+# $libdir/pkgconfig, but the default can be changed by passing
+# DIRECTORY. The user can override through the --with-pkgconfigdir
+# parameter.
+AC_DEFUN([PKG_INSTALLDIR],
+[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
+m4_pushdef([pkg_description],
+    [pkg-config installation directory @<:@]pkg_default[@:>@])
+AC_ARG_WITH([pkgconfigdir],
+    [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],,
+    [with_pkgconfigdir=]pkg_default)
+AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
+m4_popdef([pkg_default])
+m4_popdef([pkg_description])
+]) dnl PKG_INSTALLDIR
+
+
+# PKG_NOARCH_INSTALLDIR(DIRECTORY)
+# -------------------------
+# Substitutes the variable noarch_pkgconfigdir as the location where a
+# module should install arch-independent pkg-config .pc files. By
+# default the directory is $datadir/pkgconfig, but the default can be
+# changed by passing DIRECTORY. The user can override through the
+# --with-noarch-pkgconfigdir parameter.
+AC_DEFUN([PKG_NOARCH_INSTALLDIR],
+[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
+m4_pushdef([pkg_description],
+    [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@])
+AC_ARG_WITH([noarch-pkgconfigdir],
+    [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],,
+    [with_noarch_pkgconfigdir=]pkg_default)
+AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
+m4_popdef([pkg_default])
+m4_popdef([pkg_description])
+]) dnl PKG_NOARCH_INSTALLDIR
+
+
+# PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
+# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+# -------------------------------------------
+# Retrieves the value of the pkg-config variable for the given module.
+AC_DEFUN([PKG_CHECK_VAR],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
+AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
+
+_PKG_CONFIG([$1], [variable="][$3]["], [$2])
+AS_VAR_COPY([$1], [pkg_cv_][$1])
+
+AS_VAR_IF([$1], [""], [$5], [$4])dnl
+])# PKG_CHECK_VAR
diff --git a/missing b/missing
index 9a55648..db98974 100755 (executable)
--- a/missing
+++ b/missing
@@ -1,10 +1,10 @@
 #! /bin/sh
-# Common stub for a few missing GNU programs while installing.
+# Common wrapper for a few potentially missing GNU programs.
 
-scriptversion=2012-01-06.18; # UTC
+scriptversion=2013-10-28.13; # UTC
 
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
-# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -29,61 +29,33 @@ if test $# -eq 0; then
   exit 1
 fi
 
-run=:
-sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
-sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
-
-# In the cases where this matters, 'missing' is being run in the
-# srcdir already.
-if test -f configure.ac; then
-  configure_ac=configure.ac
-else
-  configure_ac=configure.in
-fi
+case $1 in
 
-msg="missing on your system"
+  --is-lightweight)
+    # Used by our autoconf macros to check whether the available missing
+    # script is modern enough.
+    exit 0
+    ;;
 
-case $1 in
---run)
-  # Try to run requested program, and just exit if it succeeds.
-  run=
-  shift
-  "$@" && exit 0
-  # Exit code 63 means version mismatch.  This often happens
-  # when the user try to use an ancient version of a tool on
-  # a file that requires a minimum version.  In this case we
-  # we should proceed has if the program had been absent, or
-  # if --run hadn't been passed.
-  if test $? = 63; then
-    run=:
-    msg="probably too old"
-  fi
-  ;;
+  --run)
+    # Back-compat with the calling convention used by older automake.
+    shift
+    ;;
 
   -h|--h|--he|--hel|--help)
     echo "\
 $0 [OPTION]... PROGRAM [ARGUMENT]...
 
-Handle 'PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
-error status if there is no known handling for PROGRAM.
+Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
+to PROGRAM being missing or too old.
 
 Options:
   -h, --help      display this help and exit
   -v, --version   output version information and exit
-  --run           try to run the given command, and emulate it if it fails
 
 Supported PROGRAM values:
-  aclocal      touch file 'aclocal.m4'
-  autoconf     touch file 'configure'
-  autoheader   touch file 'config.h.in'
-  autom4te     touch the output file, or create a stub one
-  automake     touch all 'Makefile.in' files
-  bison        create 'y.tab.[ch]', if possible, from existing .[ch]
-  flex         create 'lex.yy.c', if possible, from existing .c
-  help2man     touch the output file
-  lex          create 'lex.yy.c', if possible, from existing .c
-  makeinfo     touch the output file
-  yacc         create 'y.tab.[ch]', if possible, from existing .[ch]
+  aclocal   autoconf  autoheader   autom4te  automake  makeinfo
+  bison     yacc      flex         lex       help2man
 
 Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
 'g' are ignored when checking the name.
@@ -98,228 +70,141 @@ Send bug reports to <bug-automake@gnu.org>."
     ;;
 
   -*)
-    echo 1>&2 "$0: Unknown '$1' option"
+    echo 1>&2 "$0: unknown '$1' option"
     echo 1>&2 "Try '$0 --help' for more information"
     exit 1
     ;;
 
 esac
 
-# normalize program name to check for.
-program=`echo "$1" | sed '
-  s/^gnu-//; t
-  s/^gnu//; t
-  s/^g//; t'`
-
-# Now exit if we have it, but it failed.  Also exit now if we
-# don't have it and --version was passed (most likely to detect
-# the program).  This is about non-GNU programs, so use $1 not
-# $program.
-case $1 in
-  lex*|yacc*)
-    # Not GNU programs, they don't have --version.
-    ;;
-
-  *)
-    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
-       # We have it, but it failed.
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       # Could not run --version or --help.  This is probably someone
-       # running '$TOOL --version' or '$TOOL --help' to check whether
-       # $TOOL exists and not knowing $TOOL uses missing.
-       exit 1
-    fi
-    ;;
-esac
-
-# If it does not exist, or fails to run (possibly an outdated version),
-# try to emulate it.
-case $program in
-  aclocal*)
-    echo 1>&2 "\
-WARNING: '$1' is $msg.  You should only need it if
-         you modified 'acinclude.m4' or '${configure_ac}'.  You might want
-         to install the Automake and Perl packages.  Grab them from
-         any GNU archive site."
-    touch aclocal.m4
-    ;;
-
-  autoconf*)
-    echo 1>&2 "\
-WARNING: '$1' is $msg.  You should only need it if
-         you modified '${configure_ac}'.  You might want to install the
-         Autoconf and GNU m4 packages.  Grab them from any GNU
-         archive site."
-    touch configure
-    ;;
-
-  autoheader*)
-    echo 1>&2 "\
-WARNING: '$1' is $msg.  You should only need it if
-         you modified 'acconfig.h' or '${configure_ac}'.  You might want
-         to install the Autoconf and GNU m4 packages.  Grab them
-         from any GNU archive site."
-    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
-    test -z "$files" && files="config.h"
-    touch_files=
-    for f in $files; do
-      case $f in
-      *:*) touch_files="$touch_files "`echo "$f" |
-                                      sed -e 's/^[^:]*://' -e 's/:.*//'`;;
-      *) touch_files="$touch_files $f.in";;
-      esac
-    done
-    touch $touch_files
-    ;;
-
-  automake*)
-    echo 1>&2 "\
-WARNING: '$1' is $msg.  You should only need it if
-         you modified 'Makefile.am', 'acinclude.m4' or '${configure_ac}'.
-         You might want to install the Automake and Perl packages.
-         Grab them from any GNU archive site."
-    find . -type f -name Makefile.am -print |
-          sed 's/\.am$/.in/' |
-          while read f; do touch "$f"; done
-    ;;
-
-  autom4te*)
-    echo 1>&2 "\
-WARNING: '$1' is needed, but is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.
-         You can get '$1' as part of Autoconf from any GNU
-         archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-       touch $file
-    else
-       test -z "$file" || exec >$file
-       echo "#! /bin/sh"
-       echo "# Created by GNU Automake missing as a replacement of"
-       echo "#  $ $@"
-       echo "exit 0"
-       chmod +x $file
-       exit 1
-    fi
-    ;;
-
-  bison*|yacc*)
-    echo 1>&2 "\
-WARNING: '$1' $msg.  You should only need it if
-         you modified a '.y' file.  You may need the Bison package
-         in order for those modifications to take effect.  You can get
-         Bison from any GNU archive site."
-    rm -f y.tab.c y.tab.h
-    if test $# -ne 1; then
-        eval LASTARG=\${$#}
-       case $LASTARG in
-       *.y)
-           SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
-           if test -f "$SRCFILE"; then
-                cp "$SRCFILE" y.tab.c
-           fi
-           SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
-           if test -f "$SRCFILE"; then
-                cp "$SRCFILE" y.tab.h
-           fi
-         ;;
-       esac
-    fi
-    if test ! -f y.tab.h; then
-       echo >y.tab.h
-    fi
-    if test ! -f y.tab.c; then
-       echo 'main() { return 0; }' >y.tab.c
-    fi
-    ;;
-
-  lex*|flex*)
-    echo 1>&2 "\
-WARNING: '$1' is $msg.  You should only need it if
-         you modified a '.l' file.  You may need the Flex package
-         in order for those modifications to take effect.  You can get
-         Flex from any GNU archive site."
-    rm -f lex.yy.c
-    if test $# -ne 1; then
-        eval LASTARG=\${$#}
-       case $LASTARG in
-       *.l)
-           SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
-           if test -f "$SRCFILE"; then
-                cp "$SRCFILE" lex.yy.c
-           fi
-         ;;
-       esac
-    fi
-    if test ! -f lex.yy.c; then
-       echo 'main() { return 0; }' >lex.yy.c
-    fi
-    ;;
-
-  help2man*)
-    echo 1>&2 "\
-WARNING: '$1' is $msg.  You should only need it if
-        you modified a dependency of a manual page.  You may need the
-        Help2man package in order for those modifications to take
-        effect.  You can get Help2man from any GNU archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-       touch $file
-    else
-       test -z "$file" || exec >$file
-       echo ".ab help2man is required to generate this page"
-       exit $?
-    fi
-    ;;
-
-  makeinfo*)
-    echo 1>&2 "\
-WARNING: '$1' is $msg.  You should only need it if
-         you modified a '.texi' or '.texinfo' file, or any other file
-         indirectly affecting the aspect of the manual.  The spurious
-         call might also be the consequence of using a buggy 'make' (AIX,
-         DU, IRIX).  You might want to install the Texinfo package or
-         the GNU make package.  Grab either from any GNU archive site."
-    # The file to touch is that specified with -o ...
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -z "$file"; then
-      # ... or it is the one specified with @setfilename ...
-      infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
-      file=`sed -n '
-       /^@setfilename/{
-         s/.* \([^ ]*\) *$/\1/
-         p
-         q
-       }' $infile`
-      # ... or it is derived from the source name (dir/f.texi becomes f.info)
-      test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
-    fi
-    # If the file does not exist, the user really needs makeinfo;
-    # let's fail without touching anything.
-    test -f $file || exit 1
-    touch $file
-    ;;
+# Run the given program, remember its exit status.
+"$@"; st=$?
+
+# If it succeeded, we are done.
+test $st -eq 0 && exit 0
+
+# Also exit now if we it failed (or wasn't found), and '--version' was
+# passed; such an option is passed most likely to detect whether the
+# program is present and works.
+case $2 in --version|--help) exit $st;; esac
+
+# Exit code 63 means version mismatch.  This often happens when the user
+# tries to use an ancient version of a tool on a file that requires a
+# minimum version.
+if test $st -eq 63; then
+  msg="probably too old"
+elif test $st -eq 127; then
+  # Program was missing.
+  msg="missing on your system"
+else
+  # Program was found and executed, but failed.  Give up.
+  exit $st
+fi
 
-  *)
-    echo 1>&2 "\
-WARNING: '$1' is needed, and is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.  Check the 'README' file,
-         it often tells you about the needed prerequisites for installing
-         this package.  You may also peek at any GNU archive site, in case
-         some other package would contain this missing '$1' program."
-    exit 1
+perl_URL=http://www.perl.org/
+flex_URL=http://flex.sourceforge.net/
+gnu_software_URL=http://www.gnu.org/software
+
+program_details ()
+{
+  case $1 in
+    aclocal|automake)
+      echo "The '$1' program is part of the GNU Automake package:"
+      echo "<$gnu_software_URL/automake>"
+      echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
+      echo "<$gnu_software_URL/autoconf>"
+      echo "<$gnu_software_URL/m4/>"
+      echo "<$perl_URL>"
+      ;;
+    autoconf|autom4te|autoheader)
+      echo "The '$1' program is part of the GNU Autoconf package:"
+      echo "<$gnu_software_URL/autoconf/>"
+      echo "It also requires GNU m4 and Perl in order to run:"
+      echo "<$gnu_software_URL/m4/>"
+      echo "<$perl_URL>"
+      ;;
+  esac
+}
+
+give_advice ()
+{
+  # Normalize program name to check for.
+  normalized_program=`echo "$1" | sed '
+    s/^gnu-//; t
+    s/^gnu//; t
+    s/^g//; t'`
+
+  printf '%s\n' "'$1' is $msg."
+
+  configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
+  case $normalized_program in
+    autoconf*)
+      echo "You should only need it if you modified 'configure.ac',"
+      echo "or m4 files included by it."
+      program_details 'autoconf'
+      ;;
+    autoheader*)
+      echo "You should only need it if you modified 'acconfig.h' or"
+      echo "$configure_deps."
+      program_details 'autoheader'
+      ;;
+    automake*)
+      echo "You should only need it if you modified 'Makefile.am' or"
+      echo "$configure_deps."
+      program_details 'automake'
+      ;;
+    aclocal*)
+      echo "You should only need it if you modified 'acinclude.m4' or"
+      echo "$configure_deps."
+      program_details 'aclocal'
+      ;;
+   autom4te*)
+      echo "You might have modified some maintainer files that require"
+      echo "the 'autom4te' program to be rebuilt."
+      program_details 'autom4te'
+      ;;
+    bison*|yacc*)
+      echo "You should only need it if you modified a '.y' file."
+      echo "You may want to install the GNU Bison package:"
+      echo "<$gnu_software_URL/bison/>"
+      ;;
+    lex*|flex*)
+      echo "You should only need it if you modified a '.l' file."
+      echo "You may want to install the Fast Lexical Analyzer package:"
+      echo "<$flex_URL>"
+      ;;
+    help2man*)
+      echo "You should only need it if you modified a dependency" \
+           "of a man page."
+      echo "You may want to install the GNU Help2man package:"
+      echo "<$gnu_software_URL/help2man/>"
     ;;
-esac
-
-exit 0
+    makeinfo*)
+      echo "You should only need it if you modified a '.texi' file, or"
+      echo "any other file indirectly affecting the aspect of the manual."
+      echo "You might want to install the Texinfo package:"
+      echo "<$gnu_software_URL/texinfo/>"
+      echo "The spurious makeinfo call might also be the consequence of"
+      echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
+      echo "want to install GNU make:"
+      echo "<$gnu_software_URL/make/>"
+      ;;
+    *)
+      echo "You might have modified some files without having the proper"
+      echo "tools for further handling them.  Check the 'README' file, it"
+      echo "often tells you about the needed prerequisites for installing"
+      echo "this package.  You may also peek at any GNU archive site, in"
+      echo "case some other package contains this missing '$1' program."
+      ;;
+  esac
+}
+
+give_advice "$1" | sed -e '1s/^/WARNING: /' \
+                       -e '2,$s/^/         /' >&2
+
+# Propagate the correct exit status (expected to be 127 for a program
+# not found, 63 for a program that failed due to version mismatch).
+exit $st
 
 # Local variables:
 # eval: (add-hook 'write-file-hooks 'time-stamp)
index dba4206..3757cf8 100644 (file)
@@ -31,8 +31,9 @@ fontconfig_def_dependency = fontconfig.def
 
 # gcc import library install/uninstall
 
-install-libtool-import-lib: 
-       $(INSTALL) .libs/libfontconfig.dll.a $(DESTDIR)$(libdir)
+install-libtool-import-lib: libfontconfig.la
+       $(MKDIR_P) $(DESTDIR)$(libdir)
+       $(INSTALL) .libs/libfontconfig.dll.a $(DESTDIR)$(libdir)/libfontconfig.dll.a
        $(INSTALL) fontconfig.def $(DESTDIR)$(libdir)/fontconfig.def
 
 uninstall-libtool-import-lib:
@@ -69,7 +70,7 @@ uninstall-ms-import-lib:
 
 endif
 
-INCLUDES =                                             \
+AM_CPPFLAGS =                                          \
        -I$(top_srcdir)                                 \
        -I$(top_srcdir)/src                             \
        $(FREETYPE_CFLAGS)                              \
@@ -115,7 +116,7 @@ fcobjshash.gperf: fcobjshash.gperf.h fcobjs.h
        mv -f $@.tmp $@ || ( $(RM) $@.tmp && false )
 
 fcobjshash.h: fcobjshash.gperf
-       $(AM_V_GEN) $(top_srcdir)/missing --run gperf -m 100 $< > $@.tmp && \
+       $(AM_V_GEN) $(GPERF) -m 100 $< > $@.tmp && \
        mv -f $@.tmp $@ || ( $(RM) $@.tmp && false )
 
 EXTRA_DIST += \
@@ -149,9 +150,11 @@ libfontconfig_la_SOURCES = \
        fcobjs.h \
        fcobjshash.h \
        fcpat.c \
+       fcrange.c \
        fcserialize.c \
        fcstat.c \
        fcstr.c \
+       fcweight.c \
        fcwindows.h \
        fcxml.c \
        ftglue.h \
index 76d21c1..f54e08a 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -78,15 +106,16 @@ build_triplet = @build@
 host_triplet = @host@
 noinst_PROGRAMS = fcarch$(EXEEXT)
 subdir = src
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
-       $(srcdir)/Makefile.in $(top_srcdir)/depcomp
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+       $(top_srcdir)/depcomp $(noinst_HEADERS)
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
@@ -127,7 +156,8 @@ am_libfontconfig_la_OBJECTS = fcatomic.lo fcblanks.lo fccache.lo \
        fccfg.lo fccharset.lo fccompat.lo fcdbg.lo fcdefault.lo \
        fcdir.lo fcformat.lo fcfreetype.lo fcfs.lo fcinit.lo fclang.lo \
        fclist.lo fcmatch.lo fcmatrix.lo fcname.lo fcobjs.lo fcpat.lo \
-       fcserialize.lo fcstat.lo fcstr.lo fcxml.lo ftglue.lo
+       fcrange.lo fcserialize.lo fcstat.lo fcstr.lo fcweight.lo \
+       fcxml.lo ftglue.lo
 libfontconfig_la_OBJECTS = $(am_libfontconfig_la_OBJECTS)
 AM_V_lt = $(am__v_lt_@AM_V@)
 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
@@ -184,6 +214,23 @@ am__can_run_installinfo = \
   esac
 DATA = $(noinst_DATA)
 HEADERS = $(noinst_HEADERS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -227,6 +274,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -268,12 +317,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -297,7 +353,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -305,7 +360,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = @configdir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -330,19 +384,22 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = @templatedir@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = @xmldir@
 EXTRA_DIST = makealias fcobjshash.gperf.h fcobjshash.gperf \
        fcobjshash.h
 @OS_WIN32_TRUE@export_symbols = -export-symbols fontconfig.def
@@ -351,7 +408,7 @@ EXTRA_DIST = makealias fcobjshash.gperf.h fcobjshash.gperf \
 
 # Microsoft import library install/uninstall
 @MS_LIB_AVAILABLE_TRUE@noinst_DATA = fontconfig.lib
-INCLUDES = \
+AM_CPPFLAGS = \
        -I$(top_srcdir)                                 \
        -I$(top_srcdir)/src                             \
        $(FREETYPE_CFLAGS)                              \
@@ -398,9 +455,11 @@ libfontconfig_la_SOURCES = \
        fcobjs.h \
        fcobjshash.h \
        fcpat.c \
+       fcrange.c \
        fcserialize.c \
        fcstat.c \
        fcstr.c \
+       fcweight.c \
        fcwindows.h \
        fcxml.c \
        ftglue.h \
@@ -457,6 +516,7 @@ $(top_srcdir)/configure:  $(am__configure_deps)
 $(ACLOCAL_M4):  $(am__aclocal_m4_deps)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(am__aclocal_m4_deps):
+
 install-libLTLIBRARIES: $(lib_LTLIBRARIES)
        @$(NORMAL_INSTALL)
        @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
@@ -491,6 +551,7 @@ clean-libLTLIBRARIES:
          echo rm -f $${locs}; \
          rm -f $${locs}; \
        }
+
 libfontconfig.la: $(libfontconfig_la_OBJECTS) $(libfontconfig_la_DEPENDENCIES) $(EXTRA_libfontconfig_la_DEPENDENCIES) 
        $(AM_V_CCLD)$(libfontconfig_la_LINK) -rpath $(libdir) $(libfontconfig_la_OBJECTS) $(libfontconfig_la_LIBADD) $(LIBS)
 
@@ -502,6 +563,7 @@ clean-noinstPROGRAMS:
        list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
        echo " rm -f" $$list; \
        rm -f $$list
+
 fcarch$(EXEEXT): $(fcarch_OBJECTS) $(fcarch_DEPENDENCIES) $(EXTRA_fcarch_DEPENDENCIES) 
        @rm -f fcarch$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(fcarch_OBJECTS) $(fcarch_LDADD) $(LIBS)
@@ -533,9 +595,11 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcname.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcobjs.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcpat.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcrange.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcserialize.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcstat.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcstr.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcweight.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcxml.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ftglue.Plo@am__quote@
 
@@ -544,14 +608,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -566,26 +630,15 @@ mostlyclean-libtool:
 clean-libtool:
        -rm -rf .libs _libs
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -597,15 +650,11 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -614,9 +663,10 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
 
-cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
        case "$(srcdir)" in \
          [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
          *) sdir=$(subdir)/$(srcdir) ;; \
@@ -779,26 +829,28 @@ uninstall-am: uninstall-libLTLIBRARIES uninstall-local
 
 .MAKE: all check install install-am install-strip
 
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
        clean-libLTLIBRARIES clean-libtool clean-noinstPROGRAMS \
-       cscopelist ctags distclean distclean-compile distclean-generic \
-       distclean-libtool distclean-tags distdir dvi dvi-am html \
-       html-am info info-am install install-am install-data \
-       install-data-am install-data-local install-dvi install-dvi-am \
-       install-exec install-exec-am install-html install-html-am \
-       install-info install-info-am install-libLTLIBRARIES \
-       install-man install-pdf install-pdf-am install-ps \
-       install-ps-am install-strip installcheck installcheck-am \
-       installdirs maintainer-clean maintainer-clean-generic \
-       mostlyclean mostlyclean-compile mostlyclean-generic \
-       mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
-       uninstall-am uninstall-libLTLIBRARIES uninstall-local
+       cscopelist-am ctags ctags-am distclean distclean-compile \
+       distclean-generic distclean-libtool distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-data install-data-am install-data-local install-dvi \
+       install-dvi-am install-exec install-exec-am install-html \
+       install-html-am install-info install-info-am \
+       install-libLTLIBRARIES install-man install-pdf install-pdf-am \
+       install-ps install-ps-am install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+       tags tags-am uninstall uninstall-am uninstall-libLTLIBRARIES \
+       uninstall-local
 
 
 # gcc import library install/uninstall
 
-@OS_WIN32_TRUE@install-libtool-import-lib: 
-@OS_WIN32_TRUE@        $(INSTALL) .libs/libfontconfig.dll.a $(DESTDIR)$(libdir)
+@OS_WIN32_TRUE@install-libtool-import-lib: libfontconfig.la
+@OS_WIN32_TRUE@        $(MKDIR_P) $(DESTDIR)$(libdir)
+@OS_WIN32_TRUE@        $(INSTALL) .libs/libfontconfig.dll.a $(DESTDIR)$(libdir)/libfontconfig.dll.a
 @OS_WIN32_TRUE@        $(INSTALL) fontconfig.def $(DESTDIR)$(libdir)/fontconfig.def
 
 @OS_WIN32_TRUE@uninstall-libtool-import-lib:
@@ -838,7 +890,7 @@ fcobjshash.gperf: fcobjshash.gperf.h fcobjs.h
        mv -f $@.tmp $@ || ( $(RM) $@.tmp && false )
 
 fcobjshash.h: fcobjshash.gperf
-       $(AM_V_GEN) $(top_srcdir)/missing --run gperf -m 100 $< > $@.tmp && \
+       $(AM_V_GEN) $(GPERF) -m 100 $< > $@.tmp && \
        mv -f $@.tmp $@ || ( $(RM) $@.tmp && false )
 
 @ENABLE_SHARED_TRUE@install-data-local: install-ms-import-lib install-libtool-import-lib
index 35734c0..4a921c0 100644 (file)
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-#include <stdio.h>
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
 #include "fcint.h"
 #include "fcarch.h"
+#include <stdio.h>
 
 FC_ASSERT_STATIC (1 == sizeof (char));
 FC_ASSERT_STATIC (2 == sizeof (FcChar16));
@@ -49,7 +44,7 @@ FC_ASSERT_STATIC (SIZEOF_VOID_P == sizeof (FcStrSet *));
 FC_ASSERT_STATIC (SIZEOF_VOID_P == sizeof (FcCharLeaf **));
 FC_ASSERT_STATIC (SIZEOF_VOID_P == sizeof (FcChar16 *));
 
-FC_ASSERT_STATIC (0x08 + 1*FC_MAX(4,ALIGNOF_DOUBLE) == sizeof (FcValue));
+FC_ASSERT_STATIC (0x08 + 1*FC_MAX(SIZEOF_VOID_P,ALIGNOF_DOUBLE) == sizeof (FcValue));
 FC_ASSERT_STATIC (0x00 + 2*SIZEOF_VOID_P == sizeof (FcPatternElt));
 FC_ASSERT_STATIC (0x08 + 2*SIZEOF_VOID_P == sizeof (FcPattern));
 FC_ASSERT_STATIC (0x08 + 2*SIZEOF_VOID_P == sizeof (FcCharSet));
index cf7fd3c..049a5b0 100644 (file)
@@ -33,7 +33,7 @@
  * and on 32bit ones, whether double is aligned to one word or two words.
  * Those result in the 6 formats listed below.
  *
- * If any of the assertion errors in fccache.c fail, you need to add a new
+ * If any of the assertion errors in fcarch.c fail, you need to add a new
  * architecture.  Contact the fontconfig mailing list in that case.
  *
  * name                endianness      pointer-size    double-alignment
index c1daed9..2ce419f 100644 (file)
@@ -131,7 +131,7 @@ FcAtomicLock (FcAtomic *atomic)
        return FcFalse;
     }
     ret = link ((char *) atomic->tmp, (char *) atomic->lck);
-    if (ret < 0 && errno == EPERM)
+    if (ret < 0 && (errno == EPERM || errno == ENOTSUP))
     {
        /* the filesystem where atomic->lck points to may not supports
         * the hard link. so better try to fallback
index a764311..cc28a88 100644 (file)
 
 #include "fcwindows.h"
 
-/* mingw32 does not have MemoryBarrier.
- * MemoryBarrier may be defined as a macro or a function.
- * Just make a failsafe version for ourselves. */
-#ifdef MemoryBarrier
-#define HBMemoryBarrier MemoryBarrier
-#else
-static inline void HBMemoryBarrier (void) {
+/* MinGW has a convoluted history of supporting MemoryBarrier
+ * properly.  As such, define a function to wrap the whole
+ * thing. */
+static inline void _FCMemoryBarrier (void) {
+#if !defined(MemoryBarrier)
   long dummy = 0;
   InterlockedExchange (&dummy, 1);
-}
+#else
+  MemoryBarrier ();
 #endif
+}
 
 typedef LONG fc_atomic_int_t;
 #define fc_atomic_int_add(AI, V)       InterlockedExchangeAdd (&(AI), (V))
 
-#define fc_atomic_ptr_get(P)           (HBMemoryBarrier (), (void *) *(P))
+#define fc_atomic_ptr_get(P)           (_FCMemoryBarrier (), (void *) *(P))
 #define fc_atomic_ptr_cmpexch(P,O,N)   (InterlockedCompareExchangePointer ((void **) (P), (void *) (N), (void *) (O)) == (void *) (O))
 
 
 #elif !defined(FC_NO_MT) && defined(__APPLE__)
 
 #include <libkern/OSAtomic.h>
+#ifdef __MAC_OS_X_MIN_REQUIRED
+#include <AvailabilityMacros.h>
+#elif defined(__IPHONE_OS_MIN_REQUIRED)
+#include <Availability.h>
+#endif
 
 typedef int fc_atomic_int_t;
 #define fc_atomic_int_add(AI, V)       (OSAtomicAdd32Barrier ((V), &(AI)) - (V))
 
 #define fc_atomic_ptr_get(P)           (OSMemoryBarrier (), (void *) *(P))
+#if (MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_4 || __IPHONE_VERSION_MIN_REQUIRED >= 20100)
 #define fc_atomic_ptr_cmpexch(P,O,N)   OSAtomicCompareAndSwapPtrBarrier ((void *) (O), (void *) (N), (void **) (P))
-
+#else
+#if __ppc64__ || __x86_64__
+#define fc_atomic_ptr_cmpexch(P,O,N)   OSAtomicCompareAndSwap64Barrier ((int64_t) (O), (int64_t) (N), (int64_t*) (P))
+#else
+#define fc_atomic_ptr_cmpexch(P,O,N)   OSAtomicCompareAndSwap32Barrier ((int32_t) (O), (int32_t) (N), (int32_t*) (P))
+#endif
+#endif
 
 #elif !defined(FC_NO_MT) && defined(HAVE_INTEL_ATOMIC_PRIMITIVES)
 
index 46698bc..5132a51 100644 (file)
@@ -41,6 +41,8 @@ FcBlanksCreate (void)
 void
 FcBlanksDestroy (FcBlanks *b)
 {
+    if (b->sblank == -1)
+       return;
     if (b->blanks)
        free (b->blanks);
     free (b);
@@ -56,6 +58,11 @@ FcBlanksAdd (FcBlanks *b, FcChar32 ucs4)
        if (b->blanks[sblank] == ucs4)
            return FcTrue;
 
+    if (b->sblank == -1)
+    {
+       fprintf (stderr, "Unable to update the static FcBlanks: 0x%04x\n", ucs4);
+       return FcTrue;
+    }
     if (b->nblank == b->sblank)
     {
        sblank = b->sblank + 32;
@@ -75,11 +82,25 @@ FcBlanksAdd (FcBlanks *b, FcChar32 ucs4)
 FcBool
 FcBlanksIsMember (FcBlanks *b, FcChar32 ucs4)
 {
-    int        i;
+    int lower = 0, higher = b->nblank, middle;
 
-    for (i = 0; i < b->nblank; i++)
-       if (b->blanks[i] == ucs4)
+    if (b->nblank == 0 ||
+       b->blanks[0] > ucs4 ||
+       b->blanks[b->nblank - 1] < ucs4)
+       return FcFalse;
+    while (1)
+    {
+       middle = (lower + higher) / 2;
+       if (b->blanks[middle] == ucs4)
            return FcTrue;
+       if (lower >= higher)
+           break;
+       if (b->blanks[middle] < ucs4)
+           lower = middle + 1;
+       else
+           higher = middle - 1;
+    }
+
     return FcFalse;
 }
 #define __fcblanks__
index ddcf070..25538bd 100644 (file)
@@ -20,9 +20,6 @@
  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  * PERFORMANCE OF THIS SOFTWARE.
  */
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
 #include "fcint.h"
 #include "fcarch.h"
 #include <stdio.h>
@@ -31,7 +28,7 @@
 #include <dirent.h>
 #include <string.h>
 #include <sys/types.h>
-#include <time.h>
+#include <sys/stat.h>
 #include <assert.h>
 #if defined(HAVE_MMAP) || defined(__CYGWIN__)
 #  include <unistd.h>
@@ -125,6 +122,7 @@ FcDirCacheUnlink (const FcChar8 *dir, FcConfig *config)
     FcChar8    cache_base[CACHEBASE_LEN];
     FcStrList  *list;
     FcChar8    *cache_dir;
+    const FcChar8 *sysroot = FcConfigGetSysRoot (config);
 
     FcDirCacheBasename (dir, cache_base);
 
@@ -134,7 +132,10 @@ FcDirCacheUnlink (const FcChar8 *dir, FcConfig *config)
        
     while ((cache_dir = FcStrListNext (list)))
     {
-        cache_hashed = FcStrPlus (cache_dir, cache_base);
+       if (sysroot)
+           cache_hashed = FcStrBuildFilename (sysroot, cache_dir, cache_base, NULL);
+       else
+           cache_hashed = FcStrBuildFilename (cache_dir, cache_base, NULL);
         if (!cache_hashed)
            break;
        (void) unlink ((char *) cache_hashed);
@@ -176,19 +177,28 @@ FcDirCacheOpenFile (const FcChar8 *cache_file, struct stat *file_stat)
  */
 static FcBool
 FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
-                  FcBool (*callback) (int fd, struct stat *fd_stat,
+                  FcBool (*callback) (FcConfig *config, int fd, struct stat *fd_stat,
                                       struct stat *dir_stat, void *closure),
                   void *closure, FcChar8 **cache_file_ret)
 {
     int                fd = -1;
     FcChar8    cache_base[CACHEBASE_LEN];
     FcStrList  *list;
-    FcChar8    *cache_dir;
+    FcChar8    *cache_dir, *d;
     struct stat file_stat, dir_stat;
     FcBool     ret = FcFalse;
+    const FcChar8 *sysroot = FcConfigGetSysRoot (config);
 
-    if (FcStatChecksum (dir, &dir_stat) < 0)
+    if (sysroot)
+       d = FcStrBuildFilename (sysroot, dir, NULL);
+    else
+       d = FcStrdup (dir);
+    if (FcStatChecksum (d, &dir_stat) < 0)
+    {
+       FcStrFree (d);
         return FcFalse;
+    }
+    FcStrFree (d);
 
     FcDirCacheBasename (dir, cache_base);
 
@@ -198,12 +208,17 @@ FcDirCacheProcess (FcConfig *config, const FcChar8 *dir,
        
     while ((cache_dir = FcStrListNext (list)))
     {
-        FcChar8        *cache_hashed = FcStrPlus (cache_dir, cache_base);
+        FcChar8        *cache_hashed;
+
+       if (sysroot)
+           cache_hashed = FcStrBuildFilename (sysroot, cache_dir, cache_base, NULL);
+       else
+           cache_hashed = FcStrBuildFilename (cache_dir, cache_base, NULL);
         if (!cache_hashed)
            break;
         fd = FcDirCacheOpenFile (cache_hashed, &file_stat);
         if (fd >= 0) {
-           ret = (*callback) (fd, &file_stat, &dir_stat, closure);
+           ret = (*callback) (config, fd, &file_stat, &dir_stat, closure);
            close (fd);
            if (ret)
            {
@@ -253,62 +268,6 @@ static FcCacheSkip *fcCacheChains[FC_CACHE_MAX_LEVEL];
 static int             fcCacheMaxLevel;
 
 
-static int32_t
-FcRandom(void)
-{
-    int32_t result;
-
-#if HAVE_RANDOM_R
-    static struct random_data fcrandbuf;
-    static char statebuf[256];
-    static FcBool initialized = FcFalse;
-
-    if (initialized != FcTrue)
-    {
-       initstate_r(time(NULL), statebuf, 256, &fcrandbuf);
-       initialized = FcTrue;
-    }
-
-    random_r(&fcrandbuf, &result);
-#elif HAVE_RANDOM
-    static char statebuf[256];
-    char *state;
-    static FcBool initialized = FcFalse;
-
-    if (initialized != FcTrue)
-    {
-       state = initstate(time(NULL), statebuf, 256);
-       initialized = FcTrue;
-    }
-    else
-       state = setstate(statebuf);
-
-    result = random();
-
-    setstate(state);
-#elif HAVE_LRAND48
-    result = lrand48();
-#elif HAVE_RAND_R
-    static unsigned int seed = time(NULL);
-
-    result = rand_r(&seed);
-#elif HAVE_RAND
-    static FcBool initialized = FcFalse;
-
-    if (initialized != FcTrue)
-    {
-       srand(time(NULL));
-       initialized = FcTrue;
-    }
-    result = rand();
-#else
-# error no random number generator function available.
-#endif
-
-    return result;
-}
-
-
 static FcMutex *cache_lock;
 
 static void
@@ -449,6 +408,9 @@ FcCacheFindByAddrUnlocked (void *object)
     FcCacheSkip    **next = fcCacheChains;
     FcCacheSkip    *s;
 
+    if (!object)
+       return NULL;
+
     /*
      * Walk chain pointers one level at a time
      */
@@ -556,7 +518,7 @@ FcCacheObjectDereference (void *object)
     skip = FcCacheFindByAddrUnlocked (object);
     if (skip)
     {
-       if (FcRefDec (&skip->ref) <= 1)
+       if (FcRefDec (&skip->ref) == 1)
            FcDirCacheDisposeUnlocked (skip->cache);
     }
     unlock_cache ();
@@ -575,14 +537,25 @@ FcCacheFini (void)
 }
 
 static FcBool
-FcCacheTimeValid (FcCache *cache, struct stat *dir_stat)
+FcCacheTimeValid (FcConfig *config, FcCache *cache, struct stat *dir_stat)
 {
     struct stat        dir_static;
 
     if (!dir_stat)
     {
-       if (FcStatChecksum (FcCacheDir (cache), &dir_static) < 0)
+       const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+       FcChar8 *d;
+
+       if (sysroot)
+           d = FcStrBuildFilename (sysroot, FcCacheDir (cache), NULL);
+       else
+           d = FcStrdup (FcCacheDir (cache));
+       if (FcStatChecksum (d, &dir_static) < 0)
+       {
+           FcStrFree (d);
            return FcFalse;
+       }
+       FcStrFree (d);
        dir_stat = &dir_static;
     }
     if (FcDebug () & FC_DBG_CACHE)
@@ -591,11 +564,38 @@ FcCacheTimeValid (FcCache *cache, struct stat *dir_stat)
     return cache->checksum == (int) dir_stat->st_mtime;
 }
 
+static FcBool
+FcCacheDirsValid (FcConfig *config, FcCache *cache)
+{
+    FcStrSet *dirs = FcStrSetCreate ();
+    FcBool ret = FcFalse;
+    const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+    FcChar8 *d;
+
+    if (!dirs)
+       goto bail;
+    if (sysroot)
+       d = FcStrBuildFilename (sysroot, FcCacheDir (cache), NULL);
+    else
+       d = FcStrdup (FcCacheDir (cache));
+    if (!FcDirScanOnly (dirs, d, config))
+       goto bail1;
+    ret = cache->dirs_count == dirs->num;
+    if (FcDebug () & FC_DBG_CACHE)
+       printf ("%s: cache: %d, fs: %d\n", d, cache->dirs_count, dirs->num);
+
+bail1:
+    FcStrSetDestroy (dirs);
+    FcStrFree (d);
+bail:
+    return ret;
+}
+
 /*
  * Map a cache file into memory
  */
 static FcCache *
-FcDirCacheMapFd (int fd, struct stat *fd_stat, struct stat *dir_stat)
+FcDirCacheMapFd (FcConfig *config, int fd, struct stat *fd_stat, struct stat *dir_stat)
 {
     FcCache    *cache;
     FcBool     allocated = FcFalse;
@@ -605,7 +605,8 @@ FcDirCacheMapFd (int fd, struct stat *fd_stat, struct stat *dir_stat)
     cache = FcCacheFindByStat (fd_stat);
     if (cache)
     {
-       if (FcCacheTimeValid (cache, dir_stat))
+       if (FcCacheTimeValid (config, cache, dir_stat) &&
+           FcCacheDirsValid (config, cache))
            return cache;
        FcDirCacheUnload (cache);
        cache = NULL;
@@ -619,7 +620,7 @@ FcDirCacheMapFd (int fd, struct stat *fd_stat, struct stat *dir_stat)
     {
 #if defined(HAVE_MMAP) || defined(__CYGWIN__)
        cache = mmap (0, fd_stat->st_size, PROT_READ, MAP_SHARED, fd, 0);
-#ifdef HAVE_POSIX_FADVISE
+#if (HAVE_POSIX_FADVISE) && defined(POSIX_FADV_WILLNEED)
        posix_fadvise (fd, 0, fd_stat->st_size, POSIX_FADV_WILLNEED);
 #endif
        if (cache == MAP_FAILED)
@@ -656,7 +657,8 @@ FcDirCacheMapFd (int fd, struct stat *fd_stat, struct stat *dir_stat)
     if (cache->magic != FC_CACHE_MAGIC_MMAP ||
        cache->version < FC_CACHE_CONTENT_VERSION ||
        cache->size != (intptr_t) fd_stat->st_size ||
-       !FcCacheTimeValid (cache, dir_stat) ||
+       !FcCacheTimeValid (config, cache, dir_stat) ||
+       !FcCacheDirsValid (config, cache) ||
        !FcCacheInsert (cache, fd_stat))
     {
        if (allocated)
@@ -695,9 +697,9 @@ FcDirCacheUnload (FcCache *cache)
 }
 
 static FcBool
-FcDirCacheMapHelper (int fd, struct stat *fd_stat, struct stat *dir_stat, void *closure)
+FcDirCacheMapHelper (FcConfig *config, int fd, struct stat *fd_stat, struct stat *dir_stat, void *closure)
 {
-    FcCache *cache = FcDirCacheMapFd (fd, fd_stat, dir_stat);
+    FcCache *cache = FcDirCacheMapFd (config, fd, fd_stat, dir_stat);
 
     if (!cache)
        return FcFalse;
@@ -714,6 +716,7 @@ FcDirCacheLoad (const FcChar8 *dir, FcConfig *config, FcChar8 **cache_file)
                            FcDirCacheMapHelper,
                            &cache, cache_file))
        return NULL;
+
     return cache;
 }
 
@@ -729,7 +732,7 @@ FcDirCacheLoadFile (const FcChar8 *cache_file, struct stat *file_stat)
     fd = FcDirCacheOpenFile (cache_file, file_stat);
     if (fd < 0)
        return NULL;
-    cache = FcDirCacheMapFd (fd, file_stat, NULL);
+    cache = FcDirCacheMapFd (FcConfigGetCurrent (), fd, file_stat, NULL);
     close (fd);
     return cache;
 }
@@ -739,7 +742,7 @@ FcDirCacheLoadFile (const FcChar8 *cache_file, struct stat *file_stat)
  * the magic number and the size field
  */
 static FcBool
-FcDirCacheValidateHelper (int fd, struct stat *fd_stat, struct stat *dir_stat, void *closure FC_UNUSED)
+FcDirCacheValidateHelper (FcConfig *config, int fd, struct stat *fd_stat, struct stat *dir_stat, void *closure FC_UNUSED)
 {
     FcBool  ret = FcTrue;
     FcCache    c;
@@ -874,32 +877,17 @@ bail1:
     return NULL;
 }
 
-
-#ifdef _WIN32
-#include <direct.h>
-#define mkdir(path,mode) _mkdir(path)
-#endif
-
-static FcBool
-FcMakeDirectory (const FcChar8 *dir)
+FcCache *
+FcDirCacheRebuild (FcCache *cache, struct stat *dir_stat, FcStrSet *dirs)
 {
-    FcChar8 *parent;
-    FcBool  ret;
+    FcCache *new;
+    FcFontSet *set = FcFontSetDeserialize (FcCacheSet (cache));
+    const FcChar8 *dir = FcCacheDir (cache);
 
-    if (strlen ((char *) dir) == 0)
-       return FcFalse;
+    new = FcDirCacheBuild (set, dir, dir_stat, dirs);
+    FcFontSetDestroy (set);
 
-    parent = FcStrDirname (dir);
-    if (!parent)
-       return FcFalse;
-    if (access ((char *) parent, F_OK) == 0)
-       ret = mkdir ((char *) dir, 0755) == 0 && chmod ((char *) dir, 0755) == 0;
-    else if (access ((char *) parent, F_OK) == -1)
-       ret = FcMakeDirectory (parent) && (mkdir ((char *) dir, 0755) == 0) && chmod ((char *) dir, 0755) == 0;
-    else
-       ret = FcFalse;
-    FcStrFree (parent);
-    return ret;
+    return new;
 }
 
 /* write serialized state to the cache file */
@@ -913,11 +901,12 @@ FcDirCacheWrite (FcCache *cache, FcConfig *config)
     FcAtomic       *atomic;
     FcStrList      *list;
     FcChar8        *cache_dir = NULL;
-    FcChar8        *test_dir;
+    FcChar8        *test_dir, *d = NULL;
     FcCacheSkip     *skip;
     struct stat     cache_stat;
     unsigned int    magic;
     int                    written;
+    const FcChar8   *sysroot = FcConfigGetSysRoot (config);
 
     /*
      * Write it to the first directory in the list which is writable
@@ -926,10 +915,18 @@ FcDirCacheWrite (FcCache *cache, FcConfig *config)
     list = FcStrListCreate (config->cacheDirs);
     if (!list)
        return FcFalse;
-    while ((test_dir = FcStrListNext (list))) {
-       if (access ((char *) test_dir, W_OK) == 0)
+    while ((test_dir = FcStrListNext (list)))
+    {
+       if (d)
+           FcStrFree (d);
+       if (sysroot)
+           d = FcStrBuildFilename (sysroot, test_dir, NULL);
+       else
+           d = FcStrCopyFilename (test_dir);
+
+       if (access ((char *) d, W_OK) == 0)
        {
-           cache_dir = test_dir;
+           cache_dir = FcStrCopyFilename (d);
            break;
        }
        else
@@ -937,35 +934,38 @@ FcDirCacheWrite (FcCache *cache, FcConfig *config)
            /*
             * If the directory doesn't exist, try to create it
             */
-           if (access ((char *) test_dir, F_OK) == -1) {
-               if (FcMakeDirectory (test_dir))
+           if (access ((char *) d, F_OK) == -1) {
+               if (FcMakeDirectory (d))
                {
-                   cache_dir = test_dir;
+                   cache_dir = FcStrCopyFilename (d);
                    /* Create CACHEDIR.TAG */
-                   FcDirCacheCreateTagFile (cache_dir);
+                   FcDirCacheCreateTagFile (d);
                    break;
                }
            }
            /*
             * Otherwise, try making it writable
             */
-           else if (chmod ((char *) test_dir, 0755) == 0)
+           else if (chmod ((char *) d, 0755) == 0)
            {
-               cache_dir = test_dir;
+               cache_dir = FcStrCopyFilename (d);
                /* Try to create CACHEDIR.TAG too */
-               FcDirCacheCreateTagFile (cache_dir);
+               FcDirCacheCreateTagFile (d);
                break;
            }
        }
     }
+    if (d)
+       FcStrFree (d);
     FcStrListDone (list);
     if (!cache_dir)
        return FcFalse;
 
     FcDirCacheBasename (dir, cache_base);
-    cache_hashed = FcStrPlus (cache_dir, cache_base);
+    cache_hashed = FcStrBuildFilename (cache_dir, cache_base, NULL);
     if (!cache_hashed)
         return FcFalse;
+    FcStrFree (cache_dir);
 
     if (FcDebug () & FC_DBG_CACHE)
         printf ("FcDirCacheWriteDir dir \"%s\" file \"%s\"\n",
@@ -1043,31 +1043,37 @@ FcDirCacheClean (const FcChar8 *cache_dir, FcBool verbose)
 {
     DIR                *d;
     struct dirent *ent;
-    FcChar8    *dir_base;
+    FcChar8    *dir;
     FcBool     ret = FcTrue;
     FcBool     remove;
     FcCache    *cache;
     struct stat        target_stat;
+    const FcChar8 *sysroot;
 
-    dir_base = FcStrPlus (cache_dir, (FcChar8 *) FC_DIR_SEPARATOR_S);
-    if (!dir_base)
+    /* FIXME: this API needs to support non-current FcConfig */
+    sysroot = FcConfigGetSysRoot (NULL);
+    if (sysroot)
+       dir = FcStrBuildFilename (sysroot, cache_dir, NULL);
+    else
+       dir = FcStrCopyFilename (cache_dir);
+    if (!dir)
     {
        fprintf (stderr, "Fontconfig error: %s: out of memory\n", cache_dir);
        return FcFalse;
     }
-    if (access ((char *) cache_dir, W_OK) != 0)
+    if (access ((char *) dir, W_OK) != 0)
     {
        if (verbose || FcDebug () & FC_DBG_CACHE)
-           printf ("%s: not cleaning %s cache directory\n", cache_dir,
-                   access ((char *) cache_dir, F_OK) == 0 ? "unwritable" : "non-existent");
+           printf ("%s: not cleaning %s cache directory\n", dir,
+                   access ((char *) dir, F_OK) == 0 ? "unwritable" : "non-existent");
        goto bail0;
     }
     if (verbose || FcDebug () & FC_DBG_CACHE)
-       printf ("%s: cleaning cache directory\n", cache_dir);
-    d = opendir ((char *) cache_dir);
+       printf ("%s: cleaning cache directory\n", dir);
+    d = opendir ((char *) dir);
     if (!d)
     {
-       perror ((char *) cache_dir);
+       perror ((char *) dir);
        ret = FcFalse;
        goto bail0;
     }
@@ -1084,10 +1090,10 @@ FcDirCacheClean (const FcChar8 *cache_dir, FcBool verbose)
            strcmp(ent->d_name + 32, "-" FC_ARCHITECTURE FC_CACHE_SUFFIX))
            continue;
 
-       file_name = FcStrPlus (dir_base, (FcChar8 *) ent->d_name);
+       file_name = FcStrBuildFilename (dir, (FcChar8 *)ent->d_name, NULL);
        if (!file_name)
        {
-           fprintf (stderr, "Fontconfig error: %s: allocation failure\n", cache_dir);
+           fprintf (stderr, "Fontconfig error: %s: allocation failure\n", dir);
            ret = FcFalse;
            break;
        }
@@ -1096,19 +1102,27 @@ FcDirCacheClean (const FcChar8 *cache_dir, FcBool verbose)
        if (!cache)
        {
            if (verbose || FcDebug () & FC_DBG_CACHE)
-               printf ("%s: invalid cache file: %s\n", cache_dir, ent->d_name);
+               printf ("%s: invalid cache file: %s\n", dir, ent->d_name);
            remove = FcTrue;
        }
        else
        {
+           FcChar8 *s;
+
            target_dir = FcCacheDir (cache);
-           if (stat ((char *) target_dir, &target_stat) < 0)
+           if (sysroot)
+               s = FcStrBuildFilename (sysroot, target_dir, NULL);
+           else
+               s = FcStrdup (target_dir);
+           if (stat ((char *) s, &target_stat) < 0)
            {
                if (verbose || FcDebug () & FC_DBG_CACHE)
                    printf ("%s: %s: missing directory: %s \n",
-                           cache_dir, ent->d_name, target_dir);
+                           dir, ent->d_name, s);
                remove = FcTrue;
            }
+           FcDirCacheUnload (cache);
+           FcStrFree (s);
        }
        if (remove)
        {
@@ -1118,13 +1132,12 @@ FcDirCacheClean (const FcChar8 *cache_dir, FcBool verbose)
                ret = FcFalse;
            }
        }
-       FcDirCacheUnload (cache);
         FcStrFree (file_name);
     }
 
     closedir (d);
   bail0:
-    FcStrFree (dir_base);
+    FcStrFree (dir);
 
     return ret;
 }
@@ -1448,7 +1461,7 @@ FcDirCacheCreateTagFile (const FcChar8 *cache_dir)
     if (access ((char *) cache_dir, W_OK) == 0)
     {
        /* Create CACHEDIR.TAG */
-       cache_tag = FcStrPlus (cache_dir, (const FcChar8 *) FC_DIR_SEPARATOR_S "CACHEDIR.TAG");
+       cache_tag = FcStrBuildFilename (cache_dir, "CACHEDIR.TAG", NULL);
        if (!cache_tag)
            return FcFalse;
        atomic = FcAtomicCreate ((FcChar8 *)cache_tag);
@@ -1492,8 +1505,9 @@ FcDirCacheCreateTagFile (const FcChar8 *cache_dir)
 void
 FcCacheCreateTagFile (const FcConfig *config)
 {
-    FcChar8   *cache_dir = NULL;
+    FcChar8   *cache_dir = NULL, *d = NULL;
     FcStrList *list;
+    const FcChar8 *sysroot = FcConfigGetSysRoot (config);
 
     list = FcConfigGetCacheDirs (config);
     if (!list)
@@ -1501,9 +1515,17 @@ FcCacheCreateTagFile (const FcConfig *config)
 
     while ((cache_dir = FcStrListNext (list)))
     {
-       if (FcDirCacheCreateTagFile (cache_dir))
+       if (d)
+           FcStrFree (d);
+       if (sysroot)
+           d = FcStrBuildFilename (sysroot, cache_dir, NULL);
+       else
+           d = FcStrCopyFilename (cache_dir);
+       if (FcDirCacheCreateTagFile (d))
            break;
     }
+    if (d)
+       FcStrFree (d);
     FcStrListDone (list);
 }
 
index 877a4f5..b92270b 100644 (file)
@@ -27,6 +27,7 @@
 #include "fcint.h"
 #include <dirent.h>
 #include <sys/types.h>
+#include "../fc-blanks/fcblanks.h"
 
 #if defined (_WIN32) && !defined (R_OK)
 #define R_OK 4
@@ -109,7 +110,7 @@ FcConfigCreate (void)
     if (!config->cacheDirs)
        goto bail8;
 
-    config->blanks = 0;
+    config->blanks = &fcBlanks;
 
     config->substPattern = 0;
     config->substFont = 0;
@@ -123,6 +124,8 @@ FcConfigCreate (void)
 
     config->expr_pool = NULL;
 
+    config->sysRoot = NULL;
+
     FcRefInit (&config->ref, 1);
 
     return config;
@@ -212,10 +215,8 @@ FcSubstDestroy (FcSubst *s)
     while (s)
     {
        n = s->next;
-       if (s->test)
-           FcTestDestroy (s->test);
-       if (s->edit)
-           FcEditDestroy (s->edit);
+       if (s->rule)
+           FcRuleDestroy (s->rule);
        free (s);
        s = n;
     }
@@ -224,20 +225,20 @@ FcSubstDestroy (FcSubst *s)
 FcExpr *
 FcConfigAllocExpr (FcConfig *config)
 {
-  if (!config->expr_pool || config->expr_pool->next == config->expr_pool->end)
-  {
-    FcExprPage *new_page;
+    if (!config->expr_pool || config->expr_pool->next == config->expr_pool->end)
+    {
+       FcExprPage *new_page;
 
-    new_page = malloc (sizeof (FcExprPage));
-    if (!new_page)
-      return 0;
+       new_page = malloc (sizeof (FcExprPage));
+       if (!new_page)
+           return 0;
 
-    new_page->next_page = config->expr_pool;
-    new_page->next = new_page->exprs;
-    config->expr_pool = new_page;
-  }
+       new_page->next_page = config->expr_pool;
+       new_page->next = new_page->exprs;
+       config->expr_pool = new_page;
+    }
 
-  return config->expr_pool->next++;
+    return config->expr_pool->next++;
 }
 
 FcConfig *
@@ -292,6 +293,8 @@ FcConfigDestroy (FcConfig *config)
       free (page);
       page = next;
     }
+    if (config->sysRoot)
+       FcStrFree (config->sysRoot);
 
     free (config);
 }
@@ -337,8 +340,8 @@ FcConfigAddCache (FcConfig *config, FcCache *cache,
            if (!FcConfigAcceptFont (config, font))
                continue;
                
-           nref++;
-           FcFontSetAdd (config->fonts[set], font);
+           if (FcFontSetAdd (config->fonts[set], font))
+               nref++;
        }
        FcDirCacheReference (cache, nref);
     }
@@ -365,6 +368,7 @@ FcConfigAddDirList (FcConfig *config, FcSetName set, FcStrSet *dirSet)
     FcStrList      *dirlist;
     FcChar8        *dir;
     FcCache        *cache;
+    FcBool          ret = FcFalse;
 
     dirlist = FcStrListCreate (dirSet);
     if (!dirlist)
@@ -373,15 +377,16 @@ FcConfigAddDirList (FcConfig *config, FcSetName set, FcStrSet *dirSet)
     while ((dir = FcStrListNext (dirlist)))
     {
        if (FcDebug () & FC_DBG_FONTSET)
-           printf ("adding fonts from%s\n", dir);
+           printf ("adding fonts from %s\n", dir);
        cache = FcDirCacheRead (dir, FcFalse, config);
        if (!cache)
            continue;
        FcConfigAddCache (config, cache, set, dirSet);
        FcDirCacheUnload (cache);
+       ret = FcTrue;
     }
     FcStrListDone (dirlist);
-    return FcTrue;
+    return ret;
 }
 
 /*
@@ -425,13 +430,14 @@ retry:
     if (config == cfg)
        return FcTrue;
 
-    if (!config->fonts[FcSetSystem])
+    if (config && !config->fonts[FcSetSystem])
        if (!FcConfigBuildFonts (config))
            return FcFalse;
 
     if (!fc_atomic_ptr_cmpexch (&_fcConfig, cfg, config))
        goto retry;
 
+    FcConfigReference (config);
     if (cfg)
        FcConfigDestroy (cfg);
 
@@ -640,17 +646,17 @@ FcConfigSetRescanInverval (FcConfig *config, int rescanInterval)
     return FcConfigSetRescanInterval (config, rescanInterval);
 }
 
-
 FcBool
-FcConfigAddEdit (FcConfig      *config,
-                FcTest         *test,
-                FcEdit         *edit,
+FcConfigAddRule (FcConfig      *config,
+                FcRule         *rule,
                 FcMatchKind    kind)
 {
     FcSubst    *subst, **prev;
-    FcTest     *t;
-    int                num;
+    FcRule     *r;
+    int                n = 0;
 
+    if (!rule)
+       return FcFalse;
     switch (kind) {
     case FcMatchPattern:
        prev = &config->substPattern;
@@ -669,18 +675,31 @@ FcConfigAddEdit (FcConfig *config,
        return FcFalse;
     for (; *prev; prev = &(*prev)->next);
     *prev = subst;
-    subst->next = 0;
-    subst->test = test;
-    subst->edit = edit;
-    num = 0;
-    for (t = test; t; t = t->next)
-    {
-       if (t->kind == FcMatchDefault)
-           t->kind = kind;
-       num++;
-    }
-    if (config->maxObjects < num)
-       config->maxObjects = num;
+    subst->next = NULL;
+    subst->rule = rule;
+    for (r = rule; r; r = r->next)
+    {
+       switch (r->type)
+       {
+       case FcRuleTest:
+           if (r->u.test &&
+               r->u.test->kind == FcMatchDefault)
+               r->u.test->kind = kind;
+
+           if (n < r->u.test->object)
+               n = r->u.test->object;
+           break;
+       case FcRuleEdit:
+           if (n < r->u.edit->object)
+               n = r->u.edit->object;
+           break;
+       default:
+           break;
+       }
+    }
+    n = FC_OBJ_ID (n) - FC_MAX_BASE_OBJECT;
+    if (config->maxObjects < n)
+       config->maxObjects = n;
     if (FcDebug () & FC_DBG_EDIT)
     {
        printf ("Add Subst ");
@@ -689,11 +708,6 @@ FcConfigAddEdit (FcConfig  *config,
     return FcTrue;
 }
 
-typedef struct _FcSubState {
-    FcPatternElt   *elt;
-    FcValueList    *value;
-} FcSubState;
-
 static FcValue
 FcConfigPromote (FcValue v, FcValue u, FcValuePromotionBuffer *buf)
 {
@@ -712,12 +726,27 @@ FcConfigPromote (FcValue v, FcValue u, FcValuePromotionBuffer *buf)
        v.u.l = FcLangSetPromote (v.u.s, buf);
        v.type = FcTypeLangSet;
     }
+    else if (v.type == FcTypeVoid && u.type == FcTypeLangSet)
+    {
+       v.u.l = FcLangSetPromote (NULL, buf);
+       v.type = FcTypeLangSet;
+    }
+    else if (v.type == FcTypeVoid && u.type == FcTypeCharSet)
+    {
+       v.u.c = FcCharSetPromote (buf);
+       v.type = FcTypeCharSet;
+    }
+    if (buf && v.type == FcTypeDouble && u.type == FcTypeRange)
+    {
+       v.u.r = FcRangePromote (v.u.d, buf);
+       v.type = FcTypeRange;
+    }
     return v;
 }
 
 FcBool
 FcConfigCompareValue (const FcValue    *left_o,
-                     FcOp              op_,
+                     unsigned int      op_,
                      const FcValue     *right_o)
 {
     FcValue    left = FcValueCanonicalize(left_o);
@@ -732,6 +761,8 @@ FcConfigCompareValue (const FcValue *left_o,
     if (left.type == right.type)
     {
        switch (left.type) {
+       case FcTypeUnknown:
+           break;      /* No way to guess how to compare for this object */
        case FcTypeInteger:
            break;      /* FcConfigPromote prevents this from happening */
        case FcTypeDouble:
@@ -882,6 +913,9 @@ FcConfigCompareValue (const FcValue *left_o,
                break;
            }
            break;
+       case FcTypeRange:
+           ret = FcRangeCompare (op, left.u.r, right.u.r);
+           break;
        }
     }
     else
@@ -903,10 +937,11 @@ FcConfigCompareValue (const FcValue       *left_o,
 static FcValue
 FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
 {
-    FcValue    v, vl, vr;
+    FcValue    v, vl, vr, vle, vre;
     FcMatrix   *m;
     FcChar8     *str;
     FcOp       op = FC_OP_GET_OP (e->op);
+    FcValuePromotionBuffer buf1, buf2;
 
     switch ((int) op) {
     case FcOpInteger:
@@ -955,6 +990,11 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
        v.u.l = e->u.lval;
        v = FcValueSave (v);
        break;
+    case FcOpRange:
+       v.type = FcTypeRange;
+       v.u.r = e->u.rval;
+       v = FcValueSave (v);
+       break;
     case FcOpBool:
        v.type = FcTypeBool;
        v.u.b = e->u.bval;
@@ -1021,28 +1061,28 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
     case FcOpDivide:
        vl = FcConfigEvaluate (p, p_pat, kind, e->u.tree.left);
        vr = FcConfigEvaluate (p, p_pat, kind, e->u.tree.right);
-       vl = FcConfigPromote (vl, vr, NULL);
-       vr = FcConfigPromote (vr, vl, NULL);
-       if (vl.type == vr.type)
+       vle = FcConfigPromote (vl, vr, &buf1);
+       vre = FcConfigPromote (vr, vle, &buf2);
+       if (vle.type == vre.type)
        {
-           switch ((int) vl.type) {
+           switch ((int) vle.type) {
            case FcTypeDouble:
                switch ((int) op) {
                case FcOpPlus:  
                    v.type = FcTypeDouble;
-                   v.u.d = vl.u.d + vr.u.d;
+                   v.u.d = vle.u.d + vre.u.d;
                    break;
                case FcOpMinus:
                    v.type = FcTypeDouble;
-                   v.u.d = vl.u.d - vr.u.d;
+                   v.u.d = vle.u.d - vre.u.d;
                    break;
                case FcOpTimes:
                    v.type = FcTypeDouble;
-                   v.u.d = vl.u.d * vr.u.d;
+                   v.u.d = vle.u.d * vre.u.d;
                    break;
                case FcOpDivide:
                    v.type = FcTypeDouble;
-                   v.u.d = vl.u.d / vr.u.d;
+                   v.u.d = vle.u.d / vre.u.d;
                    break;
                default:
                    v.type = FcTypeVoid;
@@ -1059,11 +1099,11 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
                switch ((int) op) {
                case FcOpOr:
                    v.type = FcTypeBool;
-                   v.u.b = vl.u.b || vr.u.b;
+                   v.u.b = vle.u.b || vre.u.b;
                    break;
                case FcOpAnd:
                    v.type = FcTypeBool;
-                   v.u.b = vl.u.b && vr.u.b;
+                   v.u.b = vle.u.b && vre.u.b;
                    break;
                default:
                    v.type = FcTypeVoid;
@@ -1074,7 +1114,7 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
                switch ((int) op) {
                case FcOpPlus:
                    v.type = FcTypeString;
-                   str = FcStrPlus (vl.u.s, vr.u.s);
+                   str = FcStrPlus (vle.u.s, vre.u.s);
                    v.u.s = FcStrdup (str);
                    FcStrFree (str);
                        
@@ -1093,7 +1133,7 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
                    m = malloc (sizeof (FcMatrix));
                    if (m)
                    {
-                       FcMatrixMultiply (m, vl.u.m, vr.u.m);
+                       FcMatrixMultiply (m, vle.u.m, vre.u.m);
                        v.u.m = m;
                    }
                    else
@@ -1110,13 +1150,13 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
                switch ((int) op) {
                case FcOpPlus:
                    v.type = FcTypeCharSet;
-                   v.u.c = FcCharSetUnion (vl.u.c, vr.u.c);
+                   v.u.c = FcCharSetUnion (vle.u.c, vre.u.c);
                    if (!v.u.c)
                        v.type = FcTypeVoid;
                    break;
                case FcOpMinus:
                    v.type = FcTypeCharSet;
-                   v.u.c = FcCharSetSubtract (vl.u.c, vr.u.c);
+                   v.u.c = FcCharSetSubtract (vle.u.c, vre.u.c);
                    if (!v.u.c)
                        v.type = FcTypeVoid;
                    break;
@@ -1129,13 +1169,13 @@ FcConfigEvaluate (FcPattern *p, FcPattern *p_pat, FcMatchKind kind, FcExpr *e)
                switch ((int) op) {
                case FcOpPlus:
                    v.type = FcTypeLangSet;
-                   v.u.l = FcLangSetUnion (vl.u.l, vr.u.l);
+                   v.u.l = FcLangSetUnion (vle.u.l, vre.u.l);
                    if (!v.u.l)
                        v.type = FcTypeVoid;
                    break;
                case FcOpMinus:
                    v.type = FcTypeLangSet;
-                   v.u.l = FcLangSetSubtract (vl.u.l, vr.u.l);
+                   v.u.l = FcLangSetSubtract (vle.u.l, vre.u.l);
                    if (!v.u.l)
                        v.type = FcTypeVoid;
                    break;
@@ -1478,14 +1518,17 @@ FcConfigSubstituteWithPat (FcConfig    *config,
                           FcPattern   *p_pat,
                           FcMatchKind kind)
 {
+    FcValue v;
     FcSubst        *s;
-    FcSubState     *st;
-    int                    i;
-    FcTest         *t;
-    FcEdit         *e;
-    FcValueList            *l;
+    FcRule          *r;
+    FcValueList            *l, **value = NULL, *vl;
     FcPattern      *m;
     FcStrSet       *strs;
+    FcObject       object = FC_INVALID_OBJECT;
+    FcPatternElt    **elt = NULL, *e;
+    int                    i, nobjs;
+    FcBool         retval = FcTrue;
+    FcTest         **tst = NULL;
 
     if (!config)
     {
@@ -1503,15 +1546,58 @@ FcConfigSubstituteWithPat (FcConfig    *config,
            FcStrList *l = FcStrListCreate (strs);
            FcChar8 *lang;
            FcValue v;
+           FcLangSet *lsund = FcLangSetCreate ();
 
+           FcLangSetAdd (lsund, (const FcChar8 *)"und");
            FcStrSetDestroy (strs);
            while (l && (lang = FcStrListNext (l)))
            {
+               FcPatternElt *e = FcPatternObjectFindElt (p, FC_LANG_OBJECT);
+
+               if (e)
+               {
+                   FcValueListPtr ll;
+
+                   for (ll = FcPatternEltValues (e); ll; ll = FcValueListNext (ll))
+                   {
+                       FcValue vv = FcValueCanonicalize (&ll->value);
+
+                       if (vv.type == FcTypeLangSet)
+                       {
+                           FcLangSet *ls = FcLangSetCreate ();
+                           FcBool b;
+
+                           FcLangSetAdd (ls, lang);
+                           b = FcLangSetContains (vv.u.l, ls);
+                           FcLangSetDestroy (ls);
+                           if (b)
+                               goto bail_lang;
+                           if (FcLangSetContains (vv.u.l, lsund))
+                               goto bail_lang;
+                       }
+                       else
+                       {
+                           if (FcStrCmpIgnoreCase (vv.u.s, lang) == 0)
+                               goto bail_lang;
+                           if (FcStrCmpIgnoreCase (vv.u.s, (const FcChar8 *)"und") == 0)
+                               goto bail_lang;
+                       }
+                   }
+               }
                v.type = FcTypeString;
                v.u.s = lang;
+
                FcPatternObjectAddWithBinding (p, FC_LANG_OBJECT, v, FcValueBindingWeak, FcTrue);
            }
+       bail_lang:
            FcStrListDone (l);
+           FcLangSetDestroy (lsund);
+       }
+       if (FcPatternObjectGet (p, FC_PRGNAME_OBJECT, 0, &v) == FcResultNoMatch)
+       {
+           FcChar8 *prgname = FcGetPrgname ();
+           if (prgname)
+               FcPatternObjectAddString (p, FC_PRGNAME_OBJECT, prgname);
        }
        break;
     case FcMatchFont:
@@ -1524,9 +1610,25 @@ FcConfigSubstituteWithPat (FcConfig    *config,
        return FcFalse;
     }
 
-    st = (FcSubState *) malloc (config->maxObjects * sizeof (FcSubState));
-    if (!st && config->maxObjects)
-       return FcFalse;
+    nobjs = FC_MAX_BASE_OBJECT + config->maxObjects + 2;
+    value = (FcValueList **) malloc (SIZEOF_VOID_P * nobjs);
+    if (!value)
+    {
+       retval = FcFalse;
+       goto bail1;
+    }
+    elt = (FcPatternElt **) malloc (SIZEOF_VOID_P * nobjs);
+    if (!elt)
+    {
+       retval = FcFalse;
+       goto bail1;
+    }
+    tst = (FcTest **) malloc (SIZEOF_VOID_P * nobjs);
+    if (!tst)
+    {
+       retval = FcFalse;
+       goto bail1;
+    }
 
     if (FcDebug () & FC_DBG_EDIT)
     {
@@ -1535,190 +1637,199 @@ FcConfigSubstituteWithPat (FcConfig    *config,
     }
     for (; s; s = s->next)
     {
-       /*
-        * Check the tests to see if
-        * they all match the pattern
-        */
-       for (t = s->test, i = 0; t; t = t->next, i++)
+       r = s->rule;
+       for (i = 0; i < nobjs; i++)
        {
-           if (FcDebug () & FC_DBG_EDIT)
-           {
-               printf ("FcConfigSubstitute test ");
-               FcTestPrint (t);
-           }
-           st[i].elt = 0;
-           if (kind == FcMatchFont && t->kind == FcMatchPattern)
-               m = p_pat;
-           else
-               m = p;
-           if (m)
-               st[i].elt = FcPatternObjectFindElt (m, t->object);
-           else
-               st[i].elt = 0;
-           /*
-            * If there's no such field in the font,
-            * then FcQualAll matches while FcQualAny does not
-            */
-           if (!st[i].elt)
-           {
-               if (t->qual == FcQualAll)
+           elt[i] = NULL;
+           value[i] = NULL;
+           tst[i] = NULL;
+       }
+       for (; r; r = r->next)
+       {
+           switch (r->type) {
+           case FcRuleUnknown:
+               /* shouldn't be reached */
+               break;
+           case FcRuleTest:
+               object = FC_OBJ_ID (r->u.test->object);
+               /*
+                * Check the tests to see if
+                * they all match the pattern
+                */
+               if (FcDebug () & FC_DBG_EDIT)
                {
-                   st[i].value = 0;
-                   continue;
+                   printf ("FcConfigSubstitute test ");
+                   FcTestPrint (r->u.test);
                }
+               if (kind == FcMatchFont && r->u.test->kind == FcMatchPattern)
+                   m = p_pat;
                else
-                   break;
-           }
-           /*
-            * Check to see if there is a match, mark the location
-            * to apply match-relative edits
-            */
-           st[i].value = FcConfigMatchValueList (m, p_pat, kind, t, st[i].elt->values);
-           if (!st[i].value)
-               break;
-           if (t->qual == FcQualFirst && st[i].value != st[i].elt->values)
-               break;
-           if (t->qual == FcQualNotFirst && st[i].value == st[i].elt->values)
-               break;
-       }
-       if (t)
-       {
-           if (FcDebug () & FC_DBG_EDIT)
-               printf ("No match\n");
-           continue;
-       }
-       if (FcDebug () & FC_DBG_EDIT)
-       {
-           printf ("Substitute ");
-           FcSubstPrint (s);
-       }
-       for (e = s->edit; e; e = e->next)
-       {
-           /*
-            * Evaluate the list of expressions
-            */
-           l = FcConfigValues (p, p_pat,kind,  e->expr, e->binding);
-           /*
-            * Locate any test associated with this field, skipping
-            * tests associated with the pattern when substituting in
-            * the font
-            */
-           for (t = s->test, i = 0; t; t = t->next, i++)
-           {
-               if ((t->kind == FcMatchFont || kind == FcMatchPattern) &&
-                   t->object == e->object)
+                   m = p;
+               if (m)
+                   e = FcPatternObjectFindElt (m, r->u.test->object);
+               else
+                   e = NULL;
+               /* different 'kind' won't be the target of edit */
+               if (!elt[object] && kind == r->u.test->kind)
                {
-                   /*
-                    * KLUDGE - the pattern may have been reallocated or
-                    * things may have been inserted or deleted above
-                    * this element by other edits.  Go back and find
-                    * the element again
-                    */
-                   if (e != s->edit && st[i].elt)
-                       st[i].elt = FcPatternObjectFindElt (p, t->object);
-                   if (!st[i].elt)
-                       t = 0;
-                   break;
+                   elt[object] = e;
+                   tst[object] = r->u.test;
                }
-           }
-           switch (FC_OP_GET_OP (e->op)) {
-           case FcOpAssign:
                /*
-                * If there was a test, then replace the matched
-                * value with the new list of values
+                * If there's no such field in the font,
+                * then FcQualAll matches while FcQualAny does not
                 */
-               if (t)
+               if (!e)
                {
-                   FcValueList *thisValue = st[i].value;
-                   FcValueList *nextValue = thisValue;
-               
+                   if (r->u.test->qual == FcQualAll)
+                   {
+                       value[object] = NULL;
+                       continue;
+                   }
+                   else
+                   {
+                       if (FcDebug () & FC_DBG_EDIT)
+                           printf ("No match\n");
+                       goto bail;
+                   }
+               }
+               /*
+                * Check to see if there is a match, mark the location
+                * to apply match-relative edits
+                */
+               vl = FcConfigMatchValueList (m, p_pat, kind, r->u.test, e->values);
+               /* different 'kind' won't be the target of edit */
+               if (!value[object] && kind == r->u.test->kind)
+                   value[object] = vl;
+               if (!vl ||
+                   (r->u.test->qual == FcQualFirst && vl != e->values) ||
+                   (r->u.test->qual == FcQualNotFirst && vl == e->values))
+               {
+                   if (FcDebug () & FC_DBG_EDIT)
+                       printf ("No match\n");
+                   goto bail;
+               }
+               break;
+           case FcRuleEdit:
+               object = FC_OBJ_ID (r->u.edit->object);
+               if (FcDebug () & FC_DBG_EDIT)
+               {
+                   printf ("Substitute ");
+                   FcEditPrint (r->u.edit);
+                   printf ("\n\n");
+               }
+               /*
+                * Evaluate the list of expressions
+                */
+               l = FcConfigValues (p, p_pat,kind,  r->u.edit->expr, r->u.edit->binding);
+               if (tst[object] && (tst[object]->kind == FcMatchFont || kind == FcMatchPattern))
+                   elt[object] = FcPatternObjectFindElt (p, tst[object]->object);
+
+               switch (FC_OP_GET_OP (r->u.edit->op)) {
+               case FcOpAssign:
                    /*
-                    * Append the new list of values after the current value
+                    * If there was a test, then replace the matched
+                    * value with the new list of values
                     */
-                   FcConfigAdd (&st[i].elt->values, thisValue, FcTrue, l, e->object);
+                   if (value[object])
+                   {
+                       FcValueList     *thisValue = value[object];
+                       FcValueList     *nextValue = l;
+
+                       /*
+                        * Append the new list of values after the current value
+                        */
+                       FcConfigAdd (&elt[object]->values, thisValue, FcTrue, l, r->u.edit->object);
+                       /*
+                        * Delete the marked value
+                        */
+                       if (thisValue)
+                           FcConfigDel (&elt[object]->values, thisValue);
+                       /*
+                        * Adjust a pointer into the value list to ensure
+                        * future edits occur at the same place
+                        */
+                       value[object] = nextValue;
+                       break;
+                   }
+                   /* fall through ... */
+               case FcOpAssignReplace:
                    /*
-                    * Delete the marked value
+                    * Delete all of the values and insert
+                    * the new set
                     */
-                    if (thisValue)
-                       FcConfigDel (&st[i].elt->values, thisValue);
+                   FcConfigPatternDel (p, r->u.edit->object);
+                   FcConfigPatternAdd (p, r->u.edit->object, l, FcTrue);
                    /*
-                    * Adjust any pointers into the value list to ensure
-                    * future edits occur at the same place
+                    * Adjust a pointer into the value list as they no
+                    * longer point to anything valid
                     */
-                   for (t = s->test, i = 0; t; t = t->next, i++)
+                   value[object] = NULL;
+                   break;
+               case FcOpPrepend:
+                   if (value[object])
                    {
-                       if (st[i].value == thisValue)
-                           st[i].value = nextValue;
+                       FcConfigAdd (&elt[object]->values, value[object], FcFalse, l, r->u.edit->object);
+                       break;
                    }
+                   /* fall through ... */
+               case FcOpPrependFirst:
+                   FcConfigPatternAdd (p, r->u.edit->object, l, FcFalse);
                    break;
-               }
-               /* fall through ... */
-           case FcOpAssignReplace:
-               /*
-                * Delete all of the values and insert
-                * the new set
-                */
-               FcConfigPatternDel (p, e->object);
-               FcConfigPatternAdd (p, e->object, l, FcTrue);
-               /*
-                * Adjust any pointers into the value list as they no
-                * longer point to anything valid
-                */
-               if (t)
-               {
-                   FcPatternElt    *thisElt = st[i].elt;
-                   for (t = s->test, i = 0; t; t = t->next, i++)
+               case FcOpAppend:
+                   if (value[object])
                    {
-                       if (st[i].elt == thisElt)
-                           st[i].value = 0;
+                       FcConfigAdd (&elt[object]->values, value[object], FcTrue, l, r->u.edit->object);
+                       break;
                    }
-               }
-               break;
-           case FcOpPrepend:
-               if (t)
-               {
-                   FcConfigAdd (&st[i].elt->values, st[i].value, FcFalse, l, e->object);
+                   /* fall through ... */
+               case FcOpAppendLast:
+                   FcConfigPatternAdd (p, r->u.edit->object, l, FcTrue);
+                   break;
+               case FcOpDelete:
+                   if (value[object])
+                   {
+                       FcConfigDel (&elt[object]->values, value[object]);
+                       break;
+                   }
+                   /* fall through ... */
+               case FcOpDeleteAll:
+                   FcConfigPatternDel (p, r->u.edit->object);
+                   break;
+               default:
+                   FcValueListDestroy (l);
                    break;
                }
-               /* fall through ... */
-           case FcOpPrependFirst:
-               FcConfigPatternAdd (p, e->object, l, FcFalse);
-               break;
-           case FcOpAppend:
-               if (t)
+               /*
+                * Now go through the pattern and eliminate
+                * any properties without data
+                */
+               FcConfigPatternCanon (p, r->u.edit->object);
+
+               if (FcDebug () & FC_DBG_EDIT)
                {
-                   FcConfigAdd (&st[i].elt->values, st[i].value, FcTrue, l, e->object);
-                   break;
+                   printf ("FcConfigSubstitute edit");
+                   FcPatternPrint (p);
                }
-               /* fall through ... */
-           case FcOpAppendLast:
-               FcConfigPatternAdd (p, e->object, l, FcTrue);
-               break;
-           default:
-                FcValueListDestroy (l);
                break;
            }
        }
-       /*
-        * Now go through the pattern and eliminate
-        * any properties without data
-        */
-       for (e = s->edit; e; e = e->next)
-           FcConfigPatternCanon (p, e->object);
-
-       if (FcDebug () & FC_DBG_EDIT)
-       {
-           printf ("FcConfigSubstitute edit");
-           FcPatternPrint (p);
-       }
+    bail:;
     }
-    free (st);
     if (FcDebug () & FC_DBG_EDIT)
     {
        printf ("FcConfigSubstitute done");
        FcPatternPrint (p);
     }
-    return FcTrue;
+bail1:
+    if (elt)
+       free (elt);
+    if (value)
+       free (value);
+    if (tst)
+       free (tst);
+
+    return retval;
 }
 
 FcBool
@@ -1939,6 +2050,8 @@ FcConfigXdgCacheHome (void)
     const char *env = getenv ("XDG_CACHE_HOME");
     FcChar8 *ret = NULL;
 
+    if (!_FcConfigHomeEnabled)
+       return NULL;
     if (env)
        ret = FcStrCopy ((const FcChar8 *)env);
     else
@@ -1964,6 +2077,8 @@ FcConfigXdgConfigHome (void)
     const char *env = getenv ("XDG_CONFIG_HOME");
     FcChar8 *ret = NULL;
 
+    if (!_FcConfigHomeEnabled)
+       return NULL;
     if (env)
        ret = FcStrCopy ((const FcChar8 *)env);
     else
@@ -1989,6 +2104,8 @@ FcConfigXdgDataHome (void)
     const char *env = getenv ("XDG_DATA_HOME");
     FcChar8 *ret = NULL;
 
+    if (!_FcConfigHomeEnabled)
+       return NULL;
     if (env)
        ret = FcStrCopy ((const FcChar8 *)env);
     else
@@ -2080,6 +2197,7 @@ FcConfigAppFontAddFile (FcConfig    *config,
     FcStrSet   *subdirs;
     FcStrList  *sublist;
     FcChar8    *subdir;
+    FcBool      ret = FcFalse;
 
     if (!config)
     {
@@ -2113,12 +2231,13 @@ FcConfigAppFontAddFile (FcConfig    *config,
     {
        while ((subdir = FcStrListNext (sublist)))
        {
-           FcConfigAppFontAddDir (config, subdir);
+           if (FcConfigAppFontAddDir (config, subdir))
+               ret = FcTrue;
        }
        FcStrListDone (sublist);
     }
     FcStrSetDestroy (subdirs);
-    return FcTrue;
+    return ret;
 }
 
 FcBool
@@ -2127,6 +2246,7 @@ FcConfigAppFontAddDir (FcConfig       *config,
 {
     FcFontSet  *set;
     FcStrSet   *dirs;
+    FcBool      ret = FcTrue;
 
     if (!config)
     {
@@ -2145,8 +2265,8 @@ FcConfigAppFontAddDir (FcConfig       *config,
        set = FcFontSetCreate ();
        if (!set)
        {
-           FcStrSetDestroy (dirs);
-           return FcFalse;
+           ret = FcFalse;
+           goto bail;
        }
        FcConfigSetFonts (config, set, FcSetApplication);
     }
@@ -2154,12 +2274,10 @@ FcConfigAppFontAddDir (FcConfig     *config,
     FcStrSetAddFilename (dirs, dir);
 
     if (!FcConfigAddDirList (config, FcSetApplication, dirs))
-    {
-       FcStrSetDestroy (dirs);
-       return FcFalse;
-    }
+       ret = FcFalse;
+bail:
     FcStrSetDestroy (dirs);
-    return FcTrue;
+    return ret;
 }
 
 void
@@ -2190,57 +2308,13 @@ FcConfigGlobAdd (FcConfig       *config,
 }
 
 static FcBool
-FcConfigGlobMatch (const FcChar8    *glob,
-                  const FcChar8    *string)
-{
-    FcChar8    c;
-
-    while ((c = *glob++))
-    {
-       switch (c) {
-       case '*':
-           /* short circuit common case */
-           if (!*glob)
-               return FcTrue;
-           /* short circuit another common case */
-           if (strchr ((char *) glob, '*') == 0)
-           {
-               size_t l1, l2;
-
-               l1 = strlen ((char *) string);
-               l2 = strlen ((char *) glob);
-               if (l1 < l2)
-                   return FcFalse;
-               string += (l1 - l2);
-           }
-           while (*string)
-           {
-               if (FcConfigGlobMatch (glob, string))
-                   return FcTrue;
-               string++;
-           }
-           return FcFalse;
-       case '?':
-           if (*string++ == '\0')
-               return FcFalse;
-           break;
-       default:
-           if (*string++ != c)
-               return FcFalse;
-           break;
-       }
-    }
-    return *string == '\0';
-}
-
-static FcBool
 FcConfigGlobsMatch (const FcStrSet     *globs,
                    const FcChar8       *string)
 {
     int        i;
 
     for (i = 0; i < globs->num; i++)
-       if (FcConfigGlobMatch (globs->strs[i], string))
+       if (FcStrGlobMatch (globs->strs[i], string))
            return FcTrue;
     return FcFalse;
 }
@@ -2292,6 +2366,66 @@ FcConfigAcceptFont (FcConfig         *config,
        return FcFalse;
     return FcTrue;
 }
+
+const FcChar8 *
+FcConfigGetSysRoot (const FcConfig *config)
+{
+    if (!config)
+    {
+       config = FcConfigGetCurrent ();
+       if (!config)
+           return NULL;
+    }
+
+    return config->sysRoot;
+}
+
+void
+FcConfigSetSysRoot (FcConfig      *config,
+                   const FcChar8 *sysroot)
+{
+    FcChar8 *s = NULL;
+    FcBool init = FcFalse;
+
+    if (!config)
+    {
+       /* We can't use FcConfigGetCurrent() here to ensure
+        * the sysroot is set prior to initialize FcConfig,
+        * to avoid loading caches from non-sysroot dirs.
+        * So postpone the initialization later.
+        */
+       config = fc_atomic_ptr_get (&_fcConfig);
+       if (!config)
+       {
+           config = FcConfigCreate ();
+           if (!config)
+               return;
+           init = FcTrue;
+       }
+    }
+
+    if (sysroot)
+    {
+       s = FcStrCopyFilename (sysroot);
+       if (!s)
+           return;
+    }
+
+    if (config->sysRoot)
+       FcStrFree (config->sysRoot);
+
+    config->sysRoot = s;
+    if (init)
+    {
+       config = FcInitLoadOwnConfigAndFonts (config);
+       FcConfigSetCurrent (config);
+       /* FcConfigSetCurrent() increases the refcount.
+        * decrease it here to avoid the memory leak.
+        */
+       FcConfigDestroy (config);
+    }
+}
+
 #define __fccfg__
 #include "fcaliastail.h"
 #undef __fccfg__
index c9f928c..6e0093f 100644 (file)
@@ -43,6 +43,21 @@ FcCharSetCreate (void)
 }
 
 FcCharSet *
+FcCharSetPromote (FcValuePromotionBuffer *vbuf)
+{
+    FcCharSet *fcs = (FcCharSet *) vbuf;
+
+    FC_ASSERT_STATIC (sizeof (FcCharSet) <= sizeof (FcValuePromotionBuffer));
+
+    FcRefSetConst (&fcs->ref);
+    fcs->num = 0;
+    fcs->leaves_offset = 0;
+    fcs->numbers_offset = 0;
+
+    return fcs;
+}
+
+FcCharSet *
 FcCharSetNew (void)
 {
     return FcCharSetCreate ();
@@ -800,188 +815,123 @@ FcCharSetCoverage (const FcCharSet *a, FcChar32 page, FcChar32 *result)
     return page;
 }
 
-/*
- * ASCII representation of charsets.
- *
- * Each leaf is represented as 9 32-bit values, the code of the first character followed
- * by 8 32 bit values for the leaf itself.  Each value is encoded as 5 ASCII characters,
- * only 85 different values are used to avoid control characters as well as the other
- * characters used to encode font names.  85**5 > 2^32 so things work out, but
- * it's not exactly human readable output.  As a special case, 0 is encoded as a space
- */
-
-static const unsigned char     charToValue[256] = {
-    /*     "" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /*   "\b" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\020" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\030" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /*    " " */ 0xff,  0x00,  0xff,  0x01,  0x02,  0x03,  0x04,  0xff,
-    /*    "(" */ 0x05,  0x06,  0x07,  0x08,  0xff,  0xff,  0x09,  0x0a,
-    /*    "0" */ 0x0b,  0x0c,  0x0d,  0x0e,  0x0f,  0x10,  0x11,  0x12,
-    /*    "8" */ 0x13,  0x14,  0xff,  0x15,  0x16,  0xff,  0x17,  0x18,
-    /*    "@" */ 0x19,  0x1a,  0x1b,  0x1c,  0x1d,  0x1e,  0x1f,  0x20,
-    /*    "H" */ 0x21,  0x22,  0x23,  0x24,  0x25,  0x26,  0x27,  0x28,
-    /*    "P" */ 0x29,  0x2a,  0x2b,  0x2c,  0x2d,  0x2e,  0x2f,  0x30,
-    /*    "X" */ 0x31,  0x32,  0x33,  0x34,  0xff,  0x35,  0x36,  0xff,
-    /*    "`" */ 0xff,  0x37,  0x38,  0x39,  0x3a,  0x3b,  0x3c,  0x3d,
-    /*    "h" */ 0x3e,  0x3f,  0x40,  0x41,  0x42,  0x43,  0x44,  0x45,
-    /*    "p" */ 0x46,  0x47,  0x48,  0x49,  0x4a,  0x4b,  0x4c,  0x4d,
-    /*    "x" */ 0x4e,  0x4f,  0x50,  0x51,  0x52,  0x53,  0x54,  0xff,
-    /* "\200" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\210" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\220" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\230" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\240" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\250" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\260" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\270" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\300" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\310" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\320" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\330" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\340" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\350" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\360" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-    /* "\370" */ 0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,  0xff,
-};
-
-static const FcChar8 valueToChar[0x55] = {
-    /* 0x00 */ '!', '#', '$', '%', '&', '(', ')', '*',
-    /* 0x08 */ '+', '.', '/', '0', '1', '2', '3', '4',
-    /* 0x10 */ '5', '6', '7', '8', '9', ';', '<', '>',
-    /* 0x18 */ '?', '@', 'A', 'B', 'C', 'D', 'E', 'F',
-    /* 0x20 */ 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N',
-    /* 0x28 */ 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V',
-    /* 0x30 */ 'W', 'X', 'Y', 'Z', '[', ']', '^', 'a',
-    /* 0x38 */ 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i',
-    /* 0x40 */ 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q',
-    /* 0x48 */ 'r', 's', 't', 'u', 'v', 'w', 'x', 'y',
-    /* 0x50 */ 'z', '{', '|', '}', '~',
-};
-
-static FcChar8 *
-FcCharSetParseValue (FcChar8 *string, FcChar32 *value)
-{
-    int                i;
-    FcChar32   v;
-    FcChar32   c;
-
-    if (*string == ' ')
-    {
-       v = 0;
-       string++;
-    }
-    else
-    {
-       v = 0;
-       for (i = 0; i < 5; i++)
-       {
-           if (!(c = (FcChar32) (unsigned char) *string++))
-               return 0;
-           c = charToValue[c];
-           if (c == 0xff)
-               return 0;
-           v = v * 85 + c;
-       }
-    }
-    *value = v;
-    return string;
-}
-
 static FcBool
-FcCharSetUnparseValue (FcStrBuf *buf, FcChar32 value)
+FcNameParseRange (FcChar8 **string, FcChar32 *pfirst, FcChar32 *plast)
 {
-    int            i;
-    if (value == 0)
-    {
-       return FcStrBufChar (buf, ' ');
-    }
-    else
-    {
-       FcChar8 string[6];
-       FcChar8 *s = string + 5;
-       string[5] = '\0';
-       for (i = 0; i < 5; i++)
+       char *s = (char *) *string;
+       char *t;
+       long first, last;
+
+       while (isspace(*s))
+           s++;
+       t = s;
+       errno = 0;
+       first = last = strtol (s, &s, 16);
+       if (errno)
+           return FcFalse;
+       while (isspace(*s))
+           s++;
+       if (*s == '-')
        {
-           *--s = valueToChar[value % 85];
-           value /= 85;
-       }
-       for (i = 0; i < 5; i++)
-           if (!FcStrBufChar (buf, *s++))
+           s++;
+           errno = 0;
+           last = strtol (s, &s, 16);
+           if (errno)
                return FcFalse;
-    }
-    return FcTrue;
+       }
+
+       if (s == t || first < 0 || last < 0 || last < first || last > 0x10ffff)
+            return FcFalse;
+
+       *string = (FcChar8 *) s;
+       *pfirst = first;
+       *plast = last;
+       return FcTrue;
 }
 
 FcCharSet *
 FcNameParseCharSet (FcChar8 *string)
 {
     FcCharSet  *c;
-    FcChar32   ucs4;
-    FcCharLeaf *leaf;
-    FcCharLeaf temp;
-    FcChar32   bits;
-    int                i;
+    FcChar32   first, last;
 
     c = FcCharSetCreate ();
     if (!c)
        goto bail0;
     while (*string)
     {
-       string = FcCharSetParseValue (string, &ucs4);
-       if (!string)
-           goto bail1;
-       bits = 0;
-       for (i = 0; i < 256/32; i++)
-       {
-           string = FcCharSetParseValue (string, &temp.map[i]);
-           if (!string)
-               goto bail1;
-           bits |= temp.map[i];
-       }
-       if (bits)
-       {
-           leaf = malloc (sizeof (FcCharLeaf));
-           if (!leaf)
-               goto bail1;
-           *leaf = temp;
-           if (!FcCharSetInsertLeaf (c, ucs4, leaf))
+       FcChar32 u;
+
+       if (!FcNameParseRange (&string, &first, &last))
                goto bail1;
-       }
+
+       for (u = first; u < last + 1; u++)
+           FcCharSetAddChar (c, u);
     }
     return c;
 bail1:
-    if (c->num)
-    {
-       free (FcCharSetLeaves (c));
-    }
-    if (c->num)
-    {
-       free (FcCharSetNumbers (c));
-    }
-    free (c);
+    FcCharSetDestroy (c);
 bail0:
     return NULL;
 }
 
+static void
+FcNameUnparseUnicode (FcStrBuf *buf, FcChar32 u)
+{
+    FcChar8        buf_static[64];
+    snprintf ((char *) buf_static, sizeof (buf_static), "%x", u);
+    FcStrBufString (buf, buf_static);
+}
+
 FcBool
 FcNameUnparseCharSet (FcStrBuf *buf, const FcCharSet *c)
 {
     FcCharSetIter   ci;
+    FcChar32       first, last;
     int                    i;
 #ifdef CHECK
     int                    len = buf->len;
 #endif
 
+    first = last = 0x7FFFFFFF;
+
     for (FcCharSetIterStart (c, &ci);
         ci.leaf;
         FcCharSetIterNext (c, &ci))
     {
-       if (!FcCharSetUnparseValue (buf, ci.ucs4))
-           return FcFalse;
        for (i = 0; i < 256/32; i++)
-           if (!FcCharSetUnparseValue (buf, ci.leaf->map[i]))
-               return FcFalse;
+       {
+           FcChar32 bits = ci.leaf->map[i];
+           FcChar32 u = ci.ucs4 + i * 32;
+
+           while (bits)
+           {
+               if (bits & 1)
+               {
+                       if (u != last + 1)
+                       {
+                           if (last != first)
+                           {
+                               FcStrBufChar (buf, '-');
+                               FcNameUnparseUnicode (buf, last);
+                           }
+                           if (last != 0x7FFFFFFF)
+                               FcStrBufChar (buf, ' ');
+                           /* Start new range. */
+                           first = u;
+                           FcNameUnparseUnicode (buf, u);
+                       }
+                       last = u;
+               }
+               bits >>= 1;
+               u++;
+           }
+       }
+    }
+    if (last != first)
+    {
+       FcStrBufChar (buf, '-');
+       FcNameUnparseUnicode (buf, last);
     }
 #ifdef CHECK
     {
index 169cab9..31d80be 100644 (file)
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
 #include "fcint.h"
 
+#include <errno.h>
+#if HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#if HAVE_SYS_STAT_H
+#include <sys/stat.h>
+#endif
 #if HAVE_FCNTL_H
 #include <fcntl.h>
 #endif
 #include <stdarg.h>
 #include <stdlib.h>
+#include <string.h>
+#include <time.h>
 
 #ifdef O_CLOEXEC
 #define FC_O_CLOEXEC O_CLOEXEC
 #else
 #define FC_O_LARGEFILE 0
 #endif
+#ifdef O_BINARY
+#define FC_O_BINARY O_BINARY
+#else
+#define FC_O_BINARY 0
+#endif
+#ifdef O_TEMPORARY
+#define FC_O_TEMPORARY O_TEMPORARY
+#else
+#define FC_O_TEMPORARY 0
+#endif
+#ifdef O_NOINHERIT
+#define FC_O_NOINHERIT O_NOINHERIT
+#else
+#define FC_O_NOINHERIT 0
+#endif
+
+#if !defined (HAVE_MKOSTEMP) && !defined(HAVE_MKSTEMP) && !defined(HAVE__MKTEMP_S)
+static int
+mkstemp (char *template)
+{
+    static const char s[] = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
+    int fd, i;
+    size_t l;
+
+    if (template == NULL)
+    {
+       errno = EINVAL;
+       return -1;
+    }
+    l = strlen (template);
+    if (l < 6 || strcmp (&template[l - 6], "XXXXXX") != 0)
+    {
+       errno = EINVAL;
+       return -1;
+    }
+    do
+    {
+       errno = 0;
+       for (i = l - 6; i < l; i++)
+       {
+           int r = FcRandom ();
+           template[i] = s[r % 62];
+       }
+       fd = FcOpen (template, FC_O_BINARY | O_CREAT | O_EXCL | FC_O_TEMPORARY | FC_O_NOINHERIT | O_RDWR, 0600);
+    } while (fd < 0 && errno == EEXIST);
+    if (fd >= 0)
+       errno = 0;
+
+    return fd;
+}
+#define HAVE_MKSTEMP 1
+#endif
 
 int
 FcOpen(const char *pathname, int flags, ...)
@@ -84,7 +141,7 @@ FcMakeTempfile (char *template)
 #  ifdef F_DUPFD_CLOEXEC
     if (fd != -1)
     {
-       int newfd = fcntl(fd, F_DUPFD_CLOEXEC);
+       int newfd = fcntl(fd, F_DUPFD_CLOEXEC, STDIN_FILENO);
 
        close(fd);
        fd = newfd;
@@ -99,9 +156,106 @@ FcMakeTempfile (char *template)
    if (_mktemp_s(template, strlen(template) + 1) != 0)
        return -1;
    fd = FcOpen(template, O_RDWR | O_EXCL | O_CREAT, 0600);
-#else
-#error no secure functions to create a temporary file
 #endif
 
     return fd;
 }
+
+int32_t
+FcRandom(void)
+{
+    int32_t result;
+
+#if HAVE_RANDOM_R
+    static struct random_data fcrandbuf;
+    static char statebuf[256];
+    static FcBool initialized = FcFalse;
+#ifdef _AIX
+    static char *retval;
+    long res;
+#endif
+
+    if (initialized != FcTrue)
+    {
+#ifdef _AIX
+       initstate_r (time (NULL), statebuf, 256, &retval, &fcrandbuf);
+#else
+       initstate_r (time (NULL), statebuf, 256, &fcrandbuf);
+#endif
+       initialized = FcTrue;
+    }
+
+#ifdef _AIX
+    random_r (&res, &fcrandbuf);
+    result = (int32_t)res;
+#else
+    random_r (&fcrandbuf, &result);
+#endif
+#elif HAVE_RANDOM
+    static char statebuf[256];
+    char *state;
+    static FcBool initialized = FcFalse;
+
+    if (initialized != FcTrue)
+    {
+       state = initstate (time (NULL), statebuf, 256);
+       initialized = FcTrue;
+    }
+    else
+       state = setstate (statebuf);
+
+    result = random ();
+
+    setstate (state);
+#elif HAVE_LRAND48
+    result = lrand48 ();
+#elif HAVE_RAND_R
+    static unsigned int seed = time (NULL);
+
+    result = rand_r (&seed);
+#elif HAVE_RAND
+    static FcBool initialized = FcFalse;
+
+    if (initialized != FcTrue)
+    {
+       srand (time (NULL));
+       initialized = FcTrue;
+    }
+    result = rand ();
+#else
+# error no random number generator function available.
+#endif
+
+    return result;
+}
+
+#ifdef _WIN32
+#include <direct.h>
+#define mkdir(path,mode) _mkdir(path)
+#endif
+
+FcBool
+FcMakeDirectory (const FcChar8 *dir)
+{
+    FcChar8 *parent;
+    FcBool  ret;
+
+    if (strlen ((char *) dir) == 0)
+       return FcFalse;
+
+    parent = FcStrDirname (dir);
+    if (!parent)
+       return FcFalse;
+    if (access ((char *) parent, F_OK) == 0)
+       ret = mkdir ((char *) dir, 0755) == 0 && chmod ((char *) dir, 0755) == 0;
+    else if (access ((char *) parent, F_OK) == -1)
+       ret = FcMakeDirectory (parent) && (mkdir ((char *) dir, 0755) == 0) && chmod ((char *) dir, 0755) == 0;
+    else
+       ret = FcFalse;
+    FcStrFree (parent);
+    return ret;
+}
+
+#define __fccompat__
+#include "fcaliastail.h"
+#undef __fccompat__
index 270d791..ef038f0 100644 (file)
 static void
 _FcValuePrintFile (FILE *f, const FcValue v)
 {
+    FcRange r;
+
     switch (v.type) {
+    case FcTypeUnknown:
+       fprintf (f, "<unknown>");
+       break;
     case FcTypeVoid:
        fprintf (f, "<void>");
        break;
@@ -58,6 +63,10 @@ _FcValuePrintFile (FILE *f, const FcValue v)
     case FcTypeFTFace:
        fprintf (f, "face");
        break;
+    case FcTypeRange:
+       r = FcRangeCanonicalize (v.u.r);
+       fprintf (f, "(%g, %g)", r.u.d.begin, r.u.d.end);
+       break;
     }
 }
 
@@ -79,7 +88,7 @@ void
 FcValuePrintWithPosition (const FcValue v, FcBool show_pos_mark)
 {
     if (show_pos_mark)
-       printf (" [insert here] ");
+       printf (" [marker] ");
     else
        printf (" ");
     _FcValuePrintFile (stdout, v);
@@ -98,6 +107,10 @@ FcValueBindingPrint (const FcValueListPtr l)
     case FcValueBindingSame:
        printf ("(=)");
        break;
+    default:
+       /* shouldn't be reached */
+       printf ("(?)");
+       break;
     }
 }
 
@@ -110,7 +123,7 @@ FcValueListPrintWithPosition (FcValueListPtr l, const FcValueListPtr pos)
        FcValueBindingPrint (l);
     }
     if (!pos)
-       printf (" [insert here]");
+       printf (" [marker]");
 }
 
 void
@@ -222,6 +235,8 @@ FcOpPrint (FcOp op_)
     case FcOpPrependFirst: printf ("PrependFirst"); break;
     case FcOpAppend: printf ("Append"); break;
     case FcOpAppendLast: printf ("AppendLast"); break;
+    case FcOpDelete: printf ("Delete"); break;
+    case FcOpDeleteAll: printf ("DeleteAll"); break;
     case FcOpQuest: printf ("Quest"); break;
     case FcOpOr: printf ("Or"); break;
     case FcOpAnd: printf ("And"); break;
@@ -252,6 +267,8 @@ FcOpPrint (FcOp op_)
 void
 FcExprPrint (const FcExpr *expr)
 {
+    FcRange r;
+
     if (!expr) printf ("none");
     else switch (FC_OP_GET_OP (expr->op)) {
     case FcOpInteger: printf ("%d", expr->u.ival); break;
@@ -268,7 +285,10 @@ FcExprPrint (const FcExpr *expr)
        FcExprPrint (expr->u.mexpr->yy);
        printf ("]");
        break;
-    case FcOpRange: break;
+    case FcOpRange:
+       r = FcRangeCanonicalize (expr->u.rval);
+       printf ("(%g, %g)", r.u.d.begin, r.u.d.end);
+       break;
     case FcOpBool: printf ("%s", expr->u.bval ? "true" : "false"); break;
     case FcOpCharSet: printf ("charset\n"); break;
     case FcOpLangSet:
@@ -418,21 +438,38 @@ FcEditPrint (const FcEdit *edit)
 void
 FcSubstPrint (const FcSubst *subst)
 {
-    FcEdit     *e;
-    FcTest     *t;
+    FcRule *r;
+    FcRuleType last_type = FcRuleUnknown;
 
     printf ("match\n");
-    for (t = subst->test; t; t = t->next)
-    {
-       printf ("\t");
-       FcTestPrint (t);
-    }
-    printf ("edit\n");
-    for (e = subst->edit; e; e = e->next)
+    for (r = subst->rule; r; r = r->next)
     {
+       if (last_type != r->type)
+       {
+           switch (r->type) {
+           case FcRuleTest:
+               printf ("[test]\n");
+               break;
+           case FcRuleEdit:
+               printf ("[edit]\n");
+               break;
+           default:
+               break;
+           }
+           last_type = r->type;
+       }
        printf ("\t");
-       FcEditPrint (e);
-       printf (";\n");
+       switch (r->type) {
+       case FcRuleTest:
+           FcTestPrint (r->u.test);
+           break;
+       case FcRuleEdit:
+           FcEditPrint (r->u.edit);
+           printf (";\n");
+           break;
+       default:
+           break;
+       }
     }
     printf ("\n");
 }
index 6937994..7c16f48 100644 (file)
@@ -23,6 +23,7 @@
  */
 
 #include "fcint.h"
+#include <limits.h>
 #include <string.h>
 
 /* MT-safe */
@@ -104,11 +105,97 @@ retry:
     return lang;
 }
 
+static FcChar8 *default_prgname;
+
+FcChar8 *
+FcGetPrgname (void)
+{
+    FcChar8 *prgname;
+retry:
+    prgname = fc_atomic_ptr_get (&default_prgname);
+    if (!prgname)
+    {
+#ifdef _WIN32
+       char buf[MAX_PATH+1];
+
+       /* TODO This is ASCII-only; fix it. */
+       if (GetModuleFileNameA (GetModuleHandle (NULL), buf, sizeof (buf) / sizeof (buf[0])) > 0)
+       {
+           char *p;
+           unsigned int len;
+
+           p = strrchr (buf, '\\');
+           if (p)
+               p++;
+           else
+               p = buf;
+
+           len = strlen (p);
+
+           if (len > 4 && 0 == strcmp (p + len - 4, ".exe"))
+           {
+               len -= 4;
+               buf[len] = '\0';
+           }
+
+           prgname = FcStrdup (p);
+       }
+#elif defined (HAVE_GETPROGNAME)
+       const char *q = getprogname ();
+       if (q)
+           prgname = FcStrdup (q);
+       else
+           prgname = FcStrdup ("");
+#else
+# if defined (HAVE_GETEXECNAME)
+       const char *p = getexecname ();
+# elif defined (HAVE_READLINK)
+       char buf[PATH_MAX + 1];
+       int len;
+       char *p = NULL;
+
+       len = readlink ("/proc/self/exe", buf, sizeof (buf) - 1);
+       if (len != -1)
+       {
+           buf[len] = '\0';
+           p = buf;
+       }
+# else
+       char *p = NULL;
+# endif
+       if (p)
+       {
+           char *r = strrchr (p, '/');
+           if (r)
+               r++;
+           else
+               r = p;
+
+           prgname = FcStrdup (r);
+       }
+
+       if (!prgname)
+           prgname = FcStrdup ("");
+#endif
+
+       if (!fc_atomic_ptr_cmpexch (&default_prgname, NULL, prgname)) {
+           free (prgname);
+           goto retry;
+       }
+    }
+
+    if (prgname && !prgname[0])
+       return NULL;
+
+    return prgname;
+}
+
 void
 FcDefaultFini (void)
 {
     FcChar8  *lang;
     FcStrSet *langs;
+    FcChar8  *prgname;
 
     lang = fc_atomic_ptr_get (&default_lang);
     if (lang && fc_atomic_ptr_cmpexch (&default_lang, lang, NULL)) {
@@ -120,6 +207,11 @@ FcDefaultFini (void)
        FcRefInit (&langs->ref, 1);
        FcStrSetDestroy (langs);
     }
+
+    prgname = fc_atomic_ptr_get (&default_prgname);
+    if (prgname && fc_atomic_ptr_cmpexch (&default_prgname, prgname, NULL)) {
+       free (prgname);
+    }
 }
 
 void
@@ -127,9 +219,10 @@ FcDefaultSubstitute (FcPattern *pattern)
 {
     FcValue v, namelang, v2;
     int            i;
+    double     dpi, size, scale, pixelsize;
 
     if (FcPatternObjectGet (pattern, FC_WEIGHT_OBJECT, 0, &v) == FcResultNoMatch )
-       FcPatternObjectAddInteger (pattern, FC_WEIGHT_OBJECT, FC_WEIGHT_MEDIUM);
+       FcPatternObjectAddInteger (pattern, FC_WEIGHT_OBJECT, FC_WEIGHT_NORMAL);
 
     if (FcPatternObjectGet (pattern, FC_SLANT_OBJECT, 0, &v) == FcResultNoMatch)
        FcPatternObjectAddInteger (pattern, FC_SLANT_OBJECT, FC_SLANT_ROMAN);
@@ -141,32 +234,30 @@ FcDefaultSubstitute (FcPattern *pattern)
        if (FcPatternObjectGet (pattern, FcBoolDefaults[i].field, 0, &v) == FcResultNoMatch)
            FcPatternObjectAddBool (pattern, FcBoolDefaults[i].field, FcBoolDefaults[i].value);
 
-    if (FcPatternObjectGet (pattern, FC_PIXEL_SIZE_OBJECT, 0, &v) == FcResultNoMatch)
-    {
-       double  dpi, size, scale;
+    if (FcPatternObjectGetDouble (pattern, FC_SIZE_OBJECT, 0, &size) != FcResultMatch)
+       size = 12.0L;
+    if (FcPatternObjectGetDouble (pattern, FC_SCALE_OBJECT, 0, &scale) != FcResultMatch)
+       scale = 1.0;
+    if (FcPatternObjectGetDouble (pattern, FC_DPI_OBJECT, 0, &dpi) != FcResultMatch)
+       dpi = 75.0;
 
-       if (FcPatternObjectGetDouble (pattern, FC_SIZE_OBJECT, 0, &size) != FcResultMatch)
-       {
-           size = 12.0;
-           (void) FcPatternObjectDel (pattern, FC_SIZE_OBJECT);
-           FcPatternObjectAddDouble (pattern, FC_SIZE_OBJECT, size);
-       }
-       if (FcPatternObjectGetDouble (pattern, FC_SCALE_OBJECT, 0, &scale) != FcResultMatch)
-       {
-           scale = 1.0;
-           (void) FcPatternObjectDel (pattern, FC_SCALE_OBJECT);
-           FcPatternObjectAddDouble (pattern, FC_SCALE_OBJECT, scale);
-       }
-       size *= scale;
-       if (FcPatternObjectGetDouble (pattern, FC_DPI_OBJECT, 0, &dpi) != FcResultMatch)
-       {
-           dpi = 75.0;
-           (void) FcPatternObjectDel (pattern, FC_DPI_OBJECT);
-           FcPatternObjectAddDouble (pattern, FC_DPI_OBJECT, dpi);
-       }
-       size *= dpi / 72.0;
-       FcPatternObjectAddDouble (pattern, FC_PIXEL_SIZE_OBJECT, size);
+    if (FcPatternObjectGet (pattern, FC_PIXEL_SIZE_OBJECT, 0, &v) != FcResultMatch)
+    {
+       (void) FcPatternObjectDel (pattern, FC_SCALE_OBJECT);
+       FcPatternObjectAddDouble (pattern, FC_SCALE_OBJECT, scale);
+       pixelsize = size * scale;
+       (void) FcPatternObjectDel (pattern, FC_DPI_OBJECT);
+       FcPatternObjectAddDouble (pattern, FC_DPI_OBJECT, dpi);
+       pixelsize *= dpi / 72.0;
+       FcPatternObjectAddDouble (pattern, FC_PIXEL_SIZE_OBJECT, pixelsize);
     }
+    else
+    {
+       size = v.u.d;
+       size = size / dpi * 72.0 / scale;
+    }
+    (void) FcPatternObjectDel (pattern, FC_SIZE_OBJECT);
+    FcPatternObjectAddDouble (pattern, FC_SIZE_OBJECT, size);
 
     if (FcPatternObjectGet (pattern, FC_FONTVERSION_OBJECT, 0, &v) == FcResultNoMatch)
     {
@@ -195,7 +286,7 @@ FcDefaultSubstitute (FcPattern *pattern)
      * exact matched "en" has higher score than ll-cc.
      */
     v2.type = FcTypeString;
-    v2.u.s = FcStrdup ("en-us");
+    v2.u.s = (FcChar8 *) "en-us";
     if (FcPatternObjectGet (pattern, FC_FAMILYLANG_OBJECT, 0, &v) == FcResultNoMatch)
     {
        FcPatternObjectAdd (pattern, FC_FAMILYLANG_OBJECT, namelang, FcTrue);
@@ -211,7 +302,13 @@ FcDefaultSubstitute (FcPattern *pattern)
        FcPatternObjectAdd (pattern, FC_FULLNAMELANG_OBJECT, namelang, FcTrue);
        FcPatternObjectAddWithBinding (pattern, FC_FULLNAMELANG_OBJECT, v2, FcValueBindingWeak, FcTrue);
     }
-    FcFree (v2.u.s);
+
+    if (FcPatternObjectGet (pattern, FC_PRGNAME_OBJECT, 0, &v) == FcResultNoMatch)
+    {
+       FcChar8 *prgname = FcGetPrgname ();
+       if (prgname)
+           FcPatternObjectAddString (pattern, FC_PRGNAME_OBJECT, prgname);
+    }
 }
 #define __fcdefault__
 #include "fcaliastail.h"
index dc580bb..593382f 100644 (file)
@@ -49,6 +49,16 @@ FcFileIsLink (const FcChar8 *file)
 #endif
 }
 
+FcBool
+FcFileIsFile (const FcChar8 *file)
+{
+    struct stat statb;
+
+    if (FcStat (file, &statb) != 0)
+       return FcFalse;
+    return S_ISREG (statb.st_mode);
+}
+
 static FcBool
 FcFileScanFontConfig (FcFontSet                *set,
                      FcBlanks          *blanks,
@@ -59,6 +69,7 @@ FcFileScanFontConfig (FcFontSet               *set,
     FcBool     ret = FcTrue;
     int                id;
     int                count = 0;
+    const FcChar8 *sysroot = FcConfigGetSysRoot (config);
 
     id = 0;
     do
@@ -75,6 +86,28 @@ FcFileScanFontConfig (FcFontSet              *set,
        font = FcFreeTypeQuery (file, id, blanks, &count);
        if (FcDebug () & FC_DBG_SCAN)
            printf ("done\n");
+       /*
+        * Get rid of sysroot here so that targeting scan rule may contains FC_FILE pattern
+        * and they should usually expect without sysroot.
+        */
+       if (sysroot)
+       {
+           size_t len = strlen ((const char *)sysroot);
+           FcChar8 *f = NULL;
+
+           if (FcPatternObjectGetString (font, FC_FILE_OBJECT, 0, &f) == FcResultMatch &&
+               strncmp ((const char *)f, (const char *)sysroot, len) == 0)
+           {
+               FcChar8 *s = FcStrdup (f);
+               FcPatternObjectDel (font, FC_FILE_OBJECT);
+               if (s[len] != '/')
+                   len--;
+               else if (s[len+1] == '/')
+                   len++;
+               FcPatternObjectAddString (font, FC_FILE_OBJECT, &s[len]);
+               FcStrFree (s);
+           }
+       }
 
        /*
         * Edit pattern with user-defined rules
@@ -118,9 +151,32 @@ FcFileScanConfig (FcFontSet        *set,
                  FcConfig      *config)
 {
     if (FcFileIsDir (file))
-       return FcStrSetAdd (dirs, file);
+    {
+       const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+       const FcChar8 *d = file;
+       size_t len;
+
+       if (sysroot)
+       {
+               len = strlen ((const char *)sysroot);
+               if (strncmp ((const char *)file, (const char *)sysroot, len) == 0)
+               {
+                       if (file[len] != '/')
+                               len--;
+                       else if (file[len+1] == '/')
+                               len++;
+                       d = &file[len];
+               }
+       }
+       return FcStrSetAdd (dirs, d);
+    }
     else
-       return FcFileScanFontConfig (set, blanks, file, config);
+    {
+       if (set)
+           return FcFileScanFontConfig (set, blanks, file, config);
+       else
+           return FcTrue;
+    }
 }
 
 FcBool
@@ -149,7 +205,8 @@ FcDirScanConfig (FcFontSet  *set,
                 FcBlanks       *blanks,
                 const FcChar8  *dir,
                 FcBool         force, /* XXX unused */
-                FcConfig       *config)
+                FcConfig       *config,
+                FcBool         scanOnly)
 {
     DIR                        *d;
     struct dirent      *e;
@@ -165,7 +222,7 @@ FcDirScanConfig (FcFontSet  *set,
     if (!set && !dirs)
        return FcTrue;
 
-    if (!blanks)
+    if (!blanks && !scanOnly)
        blanks = FcConfigGetBlanks (config);
 
     /* freed below */
@@ -218,7 +275,17 @@ FcDirScanConfig (FcFontSet *set,
      * Scan file files to build font patterns
      */
     for (i = 0; i < files->num; i++)
-       FcFileScanConfig (set, dirs, blanks, files->strs[i], config);
+    {
+       if (scanOnly)
+       {
+           if (FcFileIsDir (files->strs[i]))
+               FcFileScanConfig (NULL, dirs, NULL, files->strs[i], config);
+       }
+       else
+       {
+           FcFileScanConfig (set, dirs, blanks, files->strs[i], config);
+       }
+    }
 
 bail2:
     FcStrSetDestroy (files);
@@ -242,7 +309,15 @@ FcDirScan (FcFontSet           *set,
     if (cache || !force)
        return FcFalse;
 
-    return FcDirScanConfig (set, dirs, blanks, dir, force, FcConfigGetCurrent ());
+    return FcDirScanConfig (set, dirs, blanks, dir, force, FcConfigGetCurrent (), FcFalse);
+}
+
+FcBool
+FcDirScanOnly (FcStrSet                *dirs,
+              const FcChar8    *dir,
+              FcConfig         *config)
+{
+    return FcDirScanConfig (NULL, dirs, NULL, dir, FcTrue, config, FcTrue);
 }
 
 /*
@@ -255,11 +330,18 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config)
     FcFontSet          *set;
     FcCache            *cache = NULL;
     struct stat                dir_stat;
+    const FcChar8      *sysroot = FcConfigGetSysRoot (config);
+    FcChar8            *d;
+
+    if (sysroot)
+       d = FcStrBuildFilename (sysroot, dir, NULL);
+    else
+       d = FcStrdup (dir);
 
     if (FcDebug () & FC_DBG_FONTSET)
-       printf ("cache scan dir %s\n", dir);
+       printf ("cache scan dir %s\n", d);
 
-    if (FcStatChecksum (dir, &dir_stat) < 0)
+    if (FcStatChecksum (d, &dir_stat) < 0)
        goto bail;
 
     set = FcFontSetCreate();
@@ -273,7 +355,7 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config)
     /*
      * Scan the dir
      */
-    if (!FcDirScanConfig (set, dirs, NULL, dir, FcTrue, config))
+    if (!FcDirScanConfig (set, dirs, NULL, d, FcTrue, config, FcFalse))
        goto bail2;
 
     /*
@@ -293,9 +375,61 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config)
  bail1:
     FcFontSetDestroy (set);
  bail:
+    FcStrFree (d);
+
     return cache;
 }
 
+FcCache *
+FcDirCacheRescan (const FcChar8 *dir, FcConfig *config)
+{
+    FcCache *cache;
+    FcCache *new = NULL;
+    struct stat dir_stat;
+    FcStrSet *dirs;
+    const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+    FcChar8 *d = NULL;
+
+    cache = FcDirCacheLoad (dir, config, NULL);
+    if (!cache)
+       goto bail;
+
+    if (sysroot)
+       d = FcStrBuildFilename (sysroot, dir, NULL);
+    else
+       d = FcStrdup (dir);
+    if (FcStatChecksum (d, &dir_stat) < 0)
+       goto bail;
+    dirs = FcStrSetCreate ();
+    if (!dirs)
+       goto bail;
+
+    /*
+     * Scan the dir
+     */
+    if (!FcDirScanConfig (NULL, dirs, NULL, d, FcTrue, config, FcFalse))
+       goto bail1;
+    /*
+     * Rebuild the cache object
+     */
+    new = FcDirCacheRebuild (cache, &dir_stat, dirs);
+    if (!new)
+       goto bail1;
+    FcDirCacheUnload (cache);
+    /*
+     * Write out the cache file, ignoring any troubles
+     */
+    FcDirCacheWrite (new, config);
+
+bail1:
+    FcStrSetDestroy (dirs);
+bail:
+    if (d)
+       FcStrFree (d);
+
+    return new;
+}
+
 /*
  * Read (or construct) the cache for a directory
  */
index 9ac2fa9..50ff348 100644 (file)
@@ -558,6 +558,139 @@ FcFontCapabilities(FT_Face face);
 
 #define NUM_FC_MAC_ROMAN_FAKE  (int) (sizeof (fcMacRomanFake) / sizeof (fcMacRomanFake[0]))
 
+
+/* From http://www.unicode.org/Public/MAPPINGS/VENDORS/APPLE/ROMAN.TXT */
+static const FcChar16 fcMacRomanNonASCIIToUnicode[128] = {
+  /*0x80*/ 0x00C4, /* LATIN CAPITAL LETTER A WITH DIAERESIS */
+  /*0x81*/ 0x00C5, /* LATIN CAPITAL LETTER A WITH RING ABOVE */
+  /*0x82*/ 0x00C7, /* LATIN CAPITAL LETTER C WITH CEDILLA */
+  /*0x83*/ 0x00C9, /* LATIN CAPITAL LETTER E WITH ACUTE */
+  /*0x84*/ 0x00D1, /* LATIN CAPITAL LETTER N WITH TILDE */
+  /*0x85*/ 0x00D6, /* LATIN CAPITAL LETTER O WITH DIAERESIS */
+  /*0x86*/ 0x00DC, /* LATIN CAPITAL LETTER U WITH DIAERESIS */
+  /*0x87*/ 0x00E1, /* LATIN SMALL LETTER A WITH ACUTE */
+  /*0x88*/ 0x00E0, /* LATIN SMALL LETTER A WITH GRAVE */
+  /*0x89*/ 0x00E2, /* LATIN SMALL LETTER A WITH CIRCUMFLEX */
+  /*0x8A*/ 0x00E4, /* LATIN SMALL LETTER A WITH DIAERESIS */
+  /*0x8B*/ 0x00E3, /* LATIN SMALL LETTER A WITH TILDE */
+  /*0x8C*/ 0x00E5, /* LATIN SMALL LETTER A WITH RING ABOVE */
+  /*0x8D*/ 0x00E7, /* LATIN SMALL LETTER C WITH CEDILLA */
+  /*0x8E*/ 0x00E9, /* LATIN SMALL LETTER E WITH ACUTE */
+  /*0x8F*/ 0x00E8, /* LATIN SMALL LETTER E WITH GRAVE */
+  /*0x90*/ 0x00EA, /* LATIN SMALL LETTER E WITH CIRCUMFLEX */
+  /*0x91*/ 0x00EB, /* LATIN SMALL LETTER E WITH DIAERESIS */
+  /*0x92*/ 0x00ED, /* LATIN SMALL LETTER I WITH ACUTE */
+  /*0x93*/ 0x00EC, /* LATIN SMALL LETTER I WITH GRAVE */
+  /*0x94*/ 0x00EE, /* LATIN SMALL LETTER I WITH CIRCUMFLEX */
+  /*0x95*/ 0x00EF, /* LATIN SMALL LETTER I WITH DIAERESIS */
+  /*0x96*/ 0x00F1, /* LATIN SMALL LETTER N WITH TILDE */
+  /*0x97*/ 0x00F3, /* LATIN SMALL LETTER O WITH ACUTE */
+  /*0x98*/ 0x00F2, /* LATIN SMALL LETTER O WITH GRAVE */
+  /*0x99*/ 0x00F4, /* LATIN SMALL LETTER O WITH CIRCUMFLEX */
+  /*0x9A*/ 0x00F6, /* LATIN SMALL LETTER O WITH DIAERESIS */
+  /*0x9B*/ 0x00F5, /* LATIN SMALL LETTER O WITH TILDE */
+  /*0x9C*/ 0x00FA, /* LATIN SMALL LETTER U WITH ACUTE */
+  /*0x9D*/ 0x00F9, /* LATIN SMALL LETTER U WITH GRAVE */
+  /*0x9E*/ 0x00FB, /* LATIN SMALL LETTER U WITH CIRCUMFLEX */
+  /*0x9F*/ 0x00FC, /* LATIN SMALL LETTER U WITH DIAERESIS */
+  /*0xA0*/ 0x2020, /* DAGGER */
+  /*0xA1*/ 0x00B0, /* DEGREE SIGN */
+  /*0xA2*/ 0x00A2, /* CENT SIGN */
+  /*0xA3*/ 0x00A3, /* POUND SIGN */
+  /*0xA4*/ 0x00A7, /* SECTION SIGN */
+  /*0xA5*/ 0x2022, /* BULLET */
+  /*0xA6*/ 0x00B6, /* PILCROW SIGN */
+  /*0xA7*/ 0x00DF, /* LATIN SMALL LETTER SHARP S */
+  /*0xA8*/ 0x00AE, /* REGISTERED SIGN */
+  /*0xA9*/ 0x00A9, /* COPYRIGHT SIGN */
+  /*0xAA*/ 0x2122, /* TRADE MARK SIGN */
+  /*0xAB*/ 0x00B4, /* ACUTE ACCENT */
+  /*0xAC*/ 0x00A8, /* DIAERESIS */
+  /*0xAD*/ 0x2260, /* NOT EQUAL TO */
+  /*0xAE*/ 0x00C6, /* LATIN CAPITAL LETTER AE */
+  /*0xAF*/ 0x00D8, /* LATIN CAPITAL LETTER O WITH STROKE */
+  /*0xB0*/ 0x221E, /* INFINITY */
+  /*0xB1*/ 0x00B1, /* PLUS-MINUS SIGN */
+  /*0xB2*/ 0x2264, /* LESS-THAN OR EQUAL TO */
+  /*0xB3*/ 0x2265, /* GREATER-THAN OR EQUAL TO */
+  /*0xB4*/ 0x00A5, /* YEN SIGN */
+  /*0xB5*/ 0x00B5, /* MICRO SIGN */
+  /*0xB6*/ 0x2202, /* PARTIAL DIFFERENTIAL */
+  /*0xB7*/ 0x2211, /* N-ARY SUMMATION */
+  /*0xB8*/ 0x220F, /* N-ARY PRODUCT */
+  /*0xB9*/ 0x03C0, /* GREEK SMALL LETTER PI */
+  /*0xBA*/ 0x222B, /* INTEGRAL */
+  /*0xBB*/ 0x00AA, /* FEMININE ORDINAL INDICATOR */
+  /*0xBC*/ 0x00BA, /* MASCULINE ORDINAL INDICATOR */
+  /*0xBD*/ 0x03A9, /* GREEK CAPITAL LETTER OMEGA */
+  /*0xBE*/ 0x00E6, /* LATIN SMALL LETTER AE */
+  /*0xBF*/ 0x00F8, /* LATIN SMALL LETTER O WITH STROKE */
+  /*0xC0*/ 0x00BF, /* INVERTED QUESTION MARK */
+  /*0xC1*/ 0x00A1, /* INVERTED EXCLAMATION MARK */
+  /*0xC2*/ 0x00AC, /* NOT SIGN */
+  /*0xC3*/ 0x221A, /* SQUARE ROOT */
+  /*0xC4*/ 0x0192, /* LATIN SMALL LETTER F WITH HOOK */
+  /*0xC5*/ 0x2248, /* ALMOST EQUAL TO */
+  /*0xC6*/ 0x2206, /* INCREMENT */
+  /*0xC7*/ 0x00AB, /* LEFT-POINTING DOUBLE ANGLE QUOTATION MARK */
+  /*0xC8*/ 0x00BB, /* RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK */
+  /*0xC9*/ 0x2026, /* HORIZONTAL ELLIPSIS */
+  /*0xCA*/ 0x00A0, /* NO-BREAK SPACE */
+  /*0xCB*/ 0x00C0, /* LATIN CAPITAL LETTER A WITH GRAVE */
+  /*0xCC*/ 0x00C3, /* LATIN CAPITAL LETTER A WITH TILDE */
+  /*0xCD*/ 0x00D5, /* LATIN CAPITAL LETTER O WITH TILDE */
+  /*0xCE*/ 0x0152, /* LATIN CAPITAL LIGATURE OE */
+  /*0xCF*/ 0x0153, /* LATIN SMALL LIGATURE OE */
+  /*0xD0*/ 0x2013, /* EN DASH */
+  /*0xD1*/ 0x2014, /* EM DASH */
+  /*0xD2*/ 0x201C, /* LEFT DOUBLE QUOTATION MARK */
+  /*0xD3*/ 0x201D, /* RIGHT DOUBLE QUOTATION MARK */
+  /*0xD4*/ 0x2018, /* LEFT SINGLE QUOTATION MARK */
+  /*0xD5*/ 0x2019, /* RIGHT SINGLE QUOTATION MARK */
+  /*0xD6*/ 0x00F7, /* DIVISION SIGN */
+  /*0xD7*/ 0x25CA, /* LOZENGE */
+  /*0xD8*/ 0x00FF, /* LATIN SMALL LETTER Y WITH DIAERESIS */
+  /*0xD9*/ 0x0178, /* LATIN CAPITAL LETTER Y WITH DIAERESIS */
+  /*0xDA*/ 0x2044, /* FRACTION SLASH */
+  /*0xDB*/ 0x20AC, /* EURO SIGN */
+  /*0xDC*/ 0x2039, /* SINGLE LEFT-POINTING ANGLE QUOTATION MARK */
+  /*0xDD*/ 0x203A, /* SINGLE RIGHT-POINTING ANGLE QUOTATION MARK */
+  /*0xDE*/ 0xFB01, /* LATIN SMALL LIGATURE FI */
+  /*0xDF*/ 0xFB02, /* LATIN SMALL LIGATURE FL */
+  /*0xE0*/ 0x2021, /* DOUBLE DAGGER */
+  /*0xE1*/ 0x00B7, /* MIDDLE DOT */
+  /*0xE2*/ 0x201A, /* SINGLE LOW-9 QUOTATION MARK */
+  /*0xE3*/ 0x201E, /* DOUBLE LOW-9 QUOTATION MARK */
+  /*0xE4*/ 0x2030, /* PER MILLE SIGN */
+  /*0xE5*/ 0x00C2, /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX */
+  /*0xE6*/ 0x00CA, /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX */
+  /*0xE7*/ 0x00C1, /* LATIN CAPITAL LETTER A WITH ACUTE */
+  /*0xE8*/ 0x00CB, /* LATIN CAPITAL LETTER E WITH DIAERESIS */
+  /*0xE9*/ 0x00C8, /* LATIN CAPITAL LETTER E WITH GRAVE */
+  /*0xEA*/ 0x00CD, /* LATIN CAPITAL LETTER I WITH ACUTE */
+  /*0xEB*/ 0x00CE, /* LATIN CAPITAL LETTER I WITH CIRCUMFLEX */
+  /*0xEC*/ 0x00CF, /* LATIN CAPITAL LETTER I WITH DIAERESIS */
+  /*0xED*/ 0x00CC, /* LATIN CAPITAL LETTER I WITH GRAVE */
+  /*0xEE*/ 0x00D3, /* LATIN CAPITAL LETTER O WITH ACUTE */
+  /*0xEF*/ 0x00D4, /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX */
+  /*0xF0*/ 0xF8FF, /* Apple logo */
+  /*0xF1*/ 0x00D2, /* LATIN CAPITAL LETTER O WITH GRAVE */
+  /*0xF2*/ 0x00DA, /* LATIN CAPITAL LETTER U WITH ACUTE */
+  /*0xF3*/ 0x00DB, /* LATIN CAPITAL LETTER U WITH CIRCUMFLEX */
+  /*0xF4*/ 0x00D9, /* LATIN CAPITAL LETTER U WITH GRAVE */
+  /*0xF5*/ 0x0131, /* LATIN SMALL LETTER DOTLESS I */
+  /*0xF6*/ 0x02C6, /* MODIFIER LETTER CIRCUMFLEX ACCENT */
+  /*0xF7*/ 0x02DC, /* SMALL TILDE */
+  /*0xF8*/ 0x00AF, /* MACRON */
+  /*0xF9*/ 0x02D8, /* BREVE */
+  /*0xFA*/ 0x02D9, /* DOT ABOVE */
+  /*0xFB*/ 0x02DA, /* RING ABOVE */
+  /*0xFC*/ 0x00B8, /* CEDILLA */
+  /*0xFD*/ 0x02DD, /* DOUBLE ACUTE ACCENT */
+  /*0xFE*/ 0x02DB, /* OGONEK */
+  /*0xFF*/ 0x02C7, /* CARON */
+};
+
 #if USE_ICONV
 #include <iconv.h>
 #endif
@@ -696,6 +829,35 @@ FcSfntNameTranscode (FT_SfntName *sname)
        *u8 = '\0';
        goto done;
     }
+    if (!strcmp (fromcode, FC_ENCODING_MAC_ROMAN))
+    {
+       FcChar8     *src = sname->string;
+       int         src_len = sname->string_len;
+       int         olen;
+       FcChar8     *u8;
+       FcChar32    ucs4;
+
+       /*
+        * Convert Latin1 to Utf8. Freed below
+        */
+       utf8 = malloc (src_len * 3 + 1);
+       if (!utf8)
+           return 0;
+
+       u8 = utf8;
+       while (src_len > 0)
+       {
+           ucs4 = *src++;
+           if (ucs4 >= 128)
+               ucs4 = fcMacRomanNonASCIIToUnicode[ucs4 - 128];
+           src_len--;
+           olen = FcUcs4ToUtf8 (ucs4, u8);
+           u8 += olen;
+       }
+       *u8 = '\0';
+       goto done;
+    }
+
 #if USE_ICONV
     cd = iconv_open ("UTF-8", fromcode);
     if (cd && cd != (iconv_t) (-1))
@@ -775,47 +937,26 @@ FcSfntNameLanguage (FT_SfntName *sname)
 /* Order is significant.  For example, some B&H fonts are hinted by
    URW++, and both strings appear in the notice. */
 
-static const char notice_foundry_data[] =
-       "Bigelow\0b&h\0"
-       "Adobe\0adobe\0"
-       "Bitstream\0bitstream\0"
-       "Monotype\0monotype\0"
-       "Linotype\0linotype\0"
-       "LINOTYPE-HELL\0linotype\0"
-       "IBM\0ibm\0"
-       "URW\0urw\0"
-       "International Typeface Corporation\0itc\0"
-       "Tiro Typeworks\0tiro\0"
-       "XFree86\0xfree86\0"
-       "Microsoft\0microsoft\0"
-       "Omega\0omega\0"
-       "Font21\0hwan\0"
-       "HanYang System\0hanyang";
-
-struct _notice_foundry {
-    /* these are the offsets into the
-     * notice_foundry_data array.
-     */
-    unsigned char notice_offset;
-    unsigned char foundry_offset;
-};
-
-static const struct _notice_foundry FcNoticeFoundries[] = {
-    { 0, 8 },
-    { 12, 18 },
-    { 24, 34 },
-    { 44, 53 },
-    { 62, 71 },
-    { 80, 94 },
-    { 103, 107 },
-    { 111, 115 },
-    { 119, 154 },
-    { 158, 173 },
-    { 178, 186 },
-    { 194, 204 },
-    { 214, 220 },
-    { 226, 233 },
-    { 238, 253 }
+static const char *FcNoticeFoundries[][2] =
+    {
+     {"Adobe", "adobe"},
+     {"Bigelow", "b&h"},
+     {"Bitstream", "bitstream"},
+     {"Gnat", "culmus"},
+     {"Iorsh", "culmus"},
+     {"HanYang System", "hanyang"},
+     {"Font21", "hwan"},
+     {"IBM", "ibm"},
+     {"International Typeface Corporation", "itc"},
+     {"Linotype", "linotype"},
+     {"LINOTYPE-HELL", "linotype"},
+     {"Microsoft", "microsoft"},
+     {"Monotype", "monotype"},
+     {"Omega", "omega"},
+     {"Tiro Typeworks", "tiro"},
+     {"URW", "urw"},
+     {"XFree86", "xfree86"},
+     {"Xorg", "xorg"},
 };
 
 #define NUM_NOTICE_FOUNDRIES   (int) (sizeof (FcNoticeFoundries) / sizeof (FcNoticeFoundries[0]))
@@ -828,9 +969,8 @@ FcNoticeFoundry(const FT_String *notice)
     if (notice)
        for(i = 0; i < NUM_NOTICE_FOUNDRIES; i++)
         {
-            const struct _notice_foundry *nf = &FcNoticeFoundries[i];
-            const char *n = notice_foundry_data + nf->notice_offset;
-            const char *f = notice_foundry_data + nf->foundry_offset;
+            const char *n = FcNoticeFoundries[i][0];
+            const char *f = FcNoticeFoundries[i][1];
 
            if (strstr ((const char *) notice, n))
                return (const FcChar8 *) f;
@@ -871,6 +1011,7 @@ static const struct {
     { "B&H",  "b&h"},
     { "BITS", "bitstream"},
     { "CANO", "cannon"},
+    { "CLM",  "culmus"},
     { "DYNA", "dynalab"},
     { "EPSN", "epson"},
     { "FJ",   "fujitsu"},
@@ -954,6 +1095,8 @@ static const FcStringConst  weightConsts[] = {
     { (FC8) "thin",            FC_WEIGHT_THIN },
     { (FC8) "extralight",      FC_WEIGHT_EXTRALIGHT },
     { (FC8) "ultralight",      FC_WEIGHT_ULTRALIGHT },
+    { (FC8) "demilight",       FC_WEIGHT_DEMILIGHT },
+    { (FC8) "semilight",       FC_WEIGHT_SEMILIGHT },
     { (FC8) "light",           FC_WEIGHT_LIGHT },
     { (FC8) "book",            FC_WEIGHT_BOOK },
     { (FC8) "regular",         FC_WEIGHT_REGULAR },
@@ -1122,18 +1265,40 @@ FcFreeTypeQueryFace (const FT_Face  face,
 
     FcChar8        *style = 0;
     int                    st;
+    char           psname[256];
+    const char     *tmp;
+
+    FcRange        *r = NULL;
+    double         lower_size = 0.0L, upper_size = DBL_MAX;
+
+    FcInitDebug (); /* We might be called with no initizalization whatsoever. */
 
     pat = FcPatternCreate ();
     if (!pat)
        goto bail0;
 
-    if (!FcPatternAddBool (pat, FC_OUTLINE,
-                          (face->face_flags & FT_FACE_FLAG_SCALABLE) != 0))
-       goto bail1;
+    {
+       int has_outline = !!(face->face_flags & FT_FACE_FLAG_SCALABLE);
+       int has_color = 0;
 
-    if (!FcPatternAddBool (pat, FC_SCALABLE,
-                          (face->face_flags & FT_FACE_FLAG_SCALABLE) != 0))
-       goto bail1;
+#ifdef FT_FACE_FLAG_COLOR
+       has_color = !!(face->face_flags & FT_FACE_FLAG_COLOR);
+#endif
+
+       if (!FcPatternAddBool (pat, FC_OUTLINE, has_outline))
+           goto bail1;
+
+#ifdef FT_FACE_FLAG_COLOR
+       if (!FcPatternAddBool (pat, FC_COLOR, has_color))
+           goto bail1;
+#endif
+
+       /* All color fonts are designed to be scaled, even if they only have
+        * bitmap strikes.  Client is responsible to scale the bitmaps.  This
+        * is in constrast to non-color strikes... */
+       if (!FcPatternAddBool (pat, FC_SCALABLE, has_outline || has_color))
+           goto bail1;
+    }
 
 
     /*
@@ -1220,7 +1385,6 @@ FcFreeTypeQueryFace (const FT_Face  face,
                case TT_NAME_ID_PREFERRED_FAMILY:
                case TT_NAME_ID_FONT_FAMILY:
 #if 0  
-               case TT_NAME_ID_PS_NAME:
                case TT_NAME_ID_UNIQUE_ID:
 #endif
                    if (FcDebug () & FC_DBG_SCANV)
@@ -1299,10 +1463,10 @@ FcFreeTypeQueryFace (const FT_Face  face,
                    free (utf8);
                    if (lang)
                    {
-                       /* pad lang list with 'xx' to line up with elt */
+                       /* pad lang list with 'und' to line up with elt */
                        while (*nlangp < *np)
                        {
-                           if (!FcPatternAddString (pat, eltlang, (FcChar8 *) "xx"))
+                           if (!FcPatternAddString (pat, eltlang, (FcChar8 *) "und"))
                                goto bail1;
                            ++*nlangp;
                        }
@@ -1338,7 +1502,7 @@ FcFreeTypeQueryFace (const FT_Face  face,
        ++nstyle;
     }
 
-    if (!nfamily)
+    if (!nfamily && file && *file)
     {
        FcChar8 *start, *end;
        FcChar8 *family;
@@ -1366,7 +1530,54 @@ FcFreeTypeQueryFace (const FT_Face  face,
        ++nfamily;
     }
 
-    if (!FcPatternAddString (pat, FC_FILE, file))
+    /* Add the PostScript name into the cache */
+    tmp = FT_Get_Postscript_Name (face);
+    if (!tmp)
+    {
+       FcChar8 *family, *familylang = NULL;
+       size_t len;
+       int n = 0;
+
+       /* Workaround when FT_Get_Postscript_Name didn't give any name.
+        * try to find out the English family name and convert.
+        */
+       while (FcPatternObjectGetString (pat, FC_FAMILYLANG_OBJECT, n, &familylang) == FcResultMatch)
+       {
+           if (FcStrCmp (familylang, (const FcChar8 *)"en") == 0)
+               break;
+           n++;
+           familylang = NULL;
+       }
+       if (!familylang)
+           n = 0;
+
+       if (FcPatternObjectGetString (pat, FC_FAMILY_OBJECT, n, &family) != FcResultMatch)
+           goto bail1;
+       len = strlen ((const char *)family);
+       /* the literal name in PostScript Language is limited to 127 characters though,
+        * It is the architectural limit. so assuming 255 characters may works enough.
+        */
+       for (i = 0; i < len && i < 255; i++)
+       {
+           /* those characters are not allowed to be the literal name in PostScript */
+           static const char exclusive_chars[] = "\x04()/<>[]{}\t\f\r\n ";
+
+           if (strchr(exclusive_chars, family[i]) != NULL)
+               psname[i] = '-';
+           else
+               psname[i] = family[i];
+       }
+       psname[i] = 0;
+    }
+    else
+    {
+       strncpy (psname, tmp, 255);
+       psname[255] = 0;
+    }
+    if (!FcPatternAddString (pat, FC_POSTSCRIPT_NAME, (const FcChar8 *)psname))
+       goto bail1;
+
+    if (file && *file && !FcPatternAddString (pat, FC_FILE, file))
        goto bail1;
 
     if (!FcPatternAddInteger (pat, FC_INDEX, id))
@@ -1433,28 +1644,7 @@ FcFreeTypeQueryFace (const FT_Face  face,
 
     if (os2 && os2->version != 0xffff)
     {
-       if (os2->usWeightClass == 0)
-           ;
-       else if (os2->usWeightClass < 150)
-           weight = FC_WEIGHT_THIN;
-       else if (os2->usWeightClass < 250)
-           weight = FC_WEIGHT_EXTRALIGHT;
-       else if (os2->usWeightClass < 350)
-           weight = FC_WEIGHT_LIGHT;
-       else if (os2->usWeightClass < 450)
-           weight = FC_WEIGHT_REGULAR;
-       else if (os2->usWeightClass < 550)
-           weight = FC_WEIGHT_MEDIUM;
-       else if (os2->usWeightClass < 650)
-           weight = FC_WEIGHT_SEMIBOLD;
-       else if (os2->usWeightClass < 750)
-           weight = FC_WEIGHT_BOLD;
-       else if (os2->usWeightClass < 850)
-           weight = FC_WEIGHT_EXTRABOLD;
-       else if (os2->usWeightClass < 925)
-           weight = FC_WEIGHT_BLACK;
-       else if (os2->usWeightClass < 1000)
-           weight = FC_WEIGHT_EXTRABLACK;
+       weight = FcWeightFromOpenType (os2->usWeightClass);
        if ((FcDebug() & FC_DBG_SCANV) && weight != -1)
            printf ("\tos2 weight class %d maps to weight %d\n",
                    os2->usWeightClass, weight);
@@ -1484,6 +1674,39 @@ FcFreeTypeQueryFace (const FT_Face  face,
        free (complex_);
     }
 
+#if defined (HAVE_TT_OS2_USUPPEROPTICALPOINTSIZE) && defined (HAVE_TT_OS2_USLOWEROPTICALPOINTSIZE)
+    if (os2 && os2->version >= 0x0005 && os2->version != 0xffff)
+    {
+       /* usLowerPointSize and usUpperPointSize is actually twips */
+       lower_size = os2->usLowerOpticalPointSize / 20.0L;
+       upper_size = os2->usUpperOpticalPointSize / 20.0L;
+    }
+#endif
+    if (os2)
+    {
+       r = FcRangeCreateDouble (lower_size, upper_size);
+       if (!FcPatternAddRange (pat, FC_SIZE, r))
+       {
+           FcRangeDestroy (r);
+           goto bail1;
+       }
+       FcRangeDestroy (r);
+    }
+    else
+    {
+       for (i = 0; i < face->num_fixed_sizes; i++)
+       {
+           double d = FcGetPixelSize (face, i);
+           r = FcRangeCreateDouble (d, d);
+           if (!FcPatternAddRange (pat, FC_SIZE, r))
+           {
+               FcRangeDestroy (r);
+               goto bail1;
+           }
+           FcRangeDestroy (r);
+       }
+    }
+
     /*
      * Type 1: Check for FontInfo dictionary information
      * Code from g2@magestudios.net (Gerard Escalante)
@@ -1556,7 +1779,7 @@ FcFreeTypeQueryFace (const FT_Face  face,
        }
        if (width == -1 &&
            FT_Get_BDF_Property (face, "SETWIDTH_NAME", &prop) == 0 &&
-           prop.type == BDF_PROPERTY_TYPE_ATOM)
+           prop.type == BDF_PROPERTY_TYPE_ATOM && prop.u.atom != NULL)
        {
            width = FcIsWidth ((FcChar8 *) prop.u.atom);
            if (FcDebug () & FC_DBG_SCANV)
@@ -1634,6 +1857,7 @@ FcFreeTypeQueryFace (const FT_Face  face,
     if (!FcPatternAddBool (pat, FC_DECORATIVE, decorative))
        goto bail1;
 
+
     /*
      * Compute the unicode coverage for the font
      */
@@ -1645,7 +1869,7 @@ FcFreeTypeQueryFace (const FT_Face  face,
     /* For PCF fonts, override the computed spacing with the one from
        the property */
     if(FT_Get_BDF_Property(face, "SPACING", &prop) == 0 &&
-       prop.type == BDF_PROPERTY_TYPE_ATOM) {
+       prop.type == BDF_PROPERTY_TYPE_ATOM && prop.u.atom != NULL) {
         if(!strcmp(prop.u.atom, "c") || !strcmp(prop.u.atom, "C"))
             spacing = FC_CHARCELL;
         else if(!strcmp(prop.u.atom, "m") || !strcmp(prop.u.atom, "M"))
@@ -1706,7 +1930,8 @@ FcFreeTypeQueryFace (const FT_Face  face,
     {
        const char *font_format = FT_Get_X11_Font_Format (face);
        if (font_format)
-           FcPatternAddString (pat, FC_FONTFORMAT, (FcChar8 *) font_format);
+           if (!FcPatternAddString (pat, FC_FONTFORMAT, (FcChar8 *) font_format))
+               goto bail2;
     }
 #endif
 
@@ -1761,283 +1986,17 @@ bail:
 #warning "No FT_Get_Next_Char: Please install freetype version 2.1.0 or newer"
 #endif
 
-typedef struct _FcCharEnt {
-    FcChar16       bmp;
-    unsigned char   encode;
-} FcCharEnt;
-
-struct _FcCharMap {
-    const FcCharEnt *ent;
-    int                    nent;
-};
-
-typedef struct _FcFontDecode {
-    FT_Encoding            encoding;
-    const FcCharMap *map;
-    FcChar32       max;
-} FcFontDecode;
-
-static const FcCharEnt AdobeSymbolEnt[] = {
-    { 0x0020, 0x20 }, /* SPACE # space */
-    { 0x0021, 0x21 }, /* EXCLAMATION MARK      # exclam */
-    { 0x0023, 0x23 }, /* NUMBER SIGN   # numbersign */
-    { 0x0025, 0x25 }, /* PERCENT SIGN  # percent */
-    { 0x0026, 0x26 }, /* AMPERSAND     # ampersand */
-    { 0x0028, 0x28 }, /* LEFT PARENTHESIS      # parenleft */
-    { 0x0029, 0x29 }, /* RIGHT PARENTHESIS     # parenright */
-    { 0x002B, 0x2B }, /* PLUS SIGN     # plus */
-    { 0x002C, 0x2C }, /* COMMA # comma */
-    { 0x002E, 0x2E }, /* FULL STOP     # period */
-    { 0x002F, 0x2F }, /* SOLIDUS       # slash */
-    { 0x0030, 0x30 }, /* DIGIT ZERO    # zero */
-    { 0x0031, 0x31 }, /* DIGIT ONE     # one */
-    { 0x0032, 0x32 }, /* DIGIT TWO     # two */
-    { 0x0033, 0x33 }, /* DIGIT THREE   # three */
-    { 0x0034, 0x34 }, /* DIGIT FOUR    # four */
-    { 0x0035, 0x35 }, /* DIGIT FIVE    # five */
-    { 0x0036, 0x36 }, /* DIGIT SIX     # six */
-    { 0x0037, 0x37 }, /* DIGIT SEVEN   # seven */
-    { 0x0038, 0x38 }, /* DIGIT EIGHT   # eight */
-    { 0x0039, 0x39 }, /* DIGIT NINE    # nine */
-    { 0x003A, 0x3A }, /* COLON # colon */
-    { 0x003B, 0x3B }, /* SEMICOLON     # semicolon */
-    { 0x003C, 0x3C }, /* LESS-THAN SIGN        # less */
-    { 0x003D, 0x3D }, /* EQUALS SIGN   # equal */
-    { 0x003E, 0x3E }, /* GREATER-THAN SIGN     # greater */
-    { 0x003F, 0x3F }, /* QUESTION MARK # question */
-    { 0x005B, 0x5B }, /* LEFT SQUARE BRACKET   # bracketleft */
-    { 0x005D, 0x5D }, /* RIGHT SQUARE BRACKET  # bracketright */
-    { 0x005F, 0x5F }, /* LOW LINE      # underscore */
-    { 0x007B, 0x7B }, /* LEFT CURLY BRACKET    # braceleft */
-    { 0x007C, 0x7C }, /* VERTICAL LINE # bar */
-    { 0x007D, 0x7D }, /* RIGHT CURLY BRACKET   # braceright */
-    { 0x00A0, 0x20 }, /* NO-BREAK SPACE        # space */
-    { 0x00AC, 0xD8 }, /* NOT SIGN      # logicalnot */
-    { 0x00B0, 0xB0 }, /* DEGREE SIGN   # degree */
-    { 0x00B1, 0xB1 }, /* PLUS-MINUS SIGN       # plusminus */
-    { 0x00B5, 0x6D }, /* MICRO SIGN    # mu */
-    { 0x00D7, 0xB4 }, /* MULTIPLICATION SIGN   # multiply */
-    { 0x00F7, 0xB8 }, /* DIVISION SIGN # divide */
-    { 0x0192, 0xA6 }, /* LATIN SMALL LETTER F WITH HOOK        # florin */
-    { 0x0391, 0x41 }, /* GREEK CAPITAL LETTER ALPHA    # Alpha */
-    { 0x0392, 0x42 }, /* GREEK CAPITAL LETTER BETA     # Beta */
-    { 0x0393, 0x47 }, /* GREEK CAPITAL LETTER GAMMA    # Gamma */
-    { 0x0394, 0x44 }, /* GREEK CAPITAL LETTER DELTA    # Delta */
-    { 0x0395, 0x45 }, /* GREEK CAPITAL LETTER EPSILON  # Epsilon */
-    { 0x0396, 0x5A }, /* GREEK CAPITAL LETTER ZETA     # Zeta */
-    { 0x0397, 0x48 }, /* GREEK CAPITAL LETTER ETA      # Eta */
-    { 0x0398, 0x51 }, /* GREEK CAPITAL LETTER THETA    # Theta */
-    { 0x0399, 0x49 }, /* GREEK CAPITAL LETTER IOTA     # Iota */
-    { 0x039A, 0x4B }, /* GREEK CAPITAL LETTER KAPPA    # Kappa */
-    { 0x039B, 0x4C }, /* GREEK CAPITAL LETTER LAMDA    # Lambda */
-    { 0x039C, 0x4D }, /* GREEK CAPITAL LETTER MU       # Mu */
-    { 0x039D, 0x4E }, /* GREEK CAPITAL LETTER NU       # Nu */
-    { 0x039E, 0x58 }, /* GREEK CAPITAL LETTER XI       # Xi */
-    { 0x039F, 0x4F }, /* GREEK CAPITAL LETTER OMICRON  # Omicron */
-    { 0x03A0, 0x50 }, /* GREEK CAPITAL LETTER PI       # Pi */
-    { 0x03A1, 0x52 }, /* GREEK CAPITAL LETTER RHO      # Rho */
-    { 0x03A3, 0x53 }, /* GREEK CAPITAL LETTER SIGMA    # Sigma */
-    { 0x03A4, 0x54 }, /* GREEK CAPITAL LETTER TAU      # Tau */
-    { 0x03A5, 0x55 }, /* GREEK CAPITAL LETTER UPSILON  # Upsilon */
-    { 0x03A6, 0x46 }, /* GREEK CAPITAL LETTER PHI      # Phi */
-    { 0x03A7, 0x43 }, /* GREEK CAPITAL LETTER CHI      # Chi */
-    { 0x03A8, 0x59 }, /* GREEK CAPITAL LETTER PSI      # Psi */
-    { 0x03A9, 0x57 }, /* GREEK CAPITAL LETTER OMEGA    # Omega */
-    { 0x03B1, 0x61 }, /* GREEK SMALL LETTER ALPHA      # alpha */
-    { 0x03B2, 0x62 }, /* GREEK SMALL LETTER BETA       # beta */
-    { 0x03B3, 0x67 }, /* GREEK SMALL LETTER GAMMA      # gamma */
-    { 0x03B4, 0x64 }, /* GREEK SMALL LETTER DELTA      # delta */
-    { 0x03B5, 0x65 }, /* GREEK SMALL LETTER EPSILON    # epsilon */
-    { 0x03B6, 0x7A }, /* GREEK SMALL LETTER ZETA       # zeta */
-    { 0x03B7, 0x68 }, /* GREEK SMALL LETTER ETA        # eta */
-    { 0x03B8, 0x71 }, /* GREEK SMALL LETTER THETA      # theta */
-    { 0x03B9, 0x69 }, /* GREEK SMALL LETTER IOTA       # iota */
-    { 0x03BA, 0x6B }, /* GREEK SMALL LETTER KAPPA      # kappa */
-    { 0x03BB, 0x6C }, /* GREEK SMALL LETTER LAMDA      # lambda */
-    { 0x03BC, 0x6D }, /* GREEK SMALL LETTER MU # mu */
-    { 0x03BD, 0x6E }, /* GREEK SMALL LETTER NU # nu */
-    { 0x03BE, 0x78 }, /* GREEK SMALL LETTER XI # xi */
-    { 0x03BF, 0x6F }, /* GREEK SMALL LETTER OMICRON    # omicron */
-    { 0x03C0, 0x70 }, /* GREEK SMALL LETTER PI # pi */
-    { 0x03C1, 0x72 }, /* GREEK SMALL LETTER RHO        # rho */
-    { 0x03C2, 0x56 }, /* GREEK SMALL LETTER FINAL SIGMA        # sigma1 */
-    { 0x03C3, 0x73 }, /* GREEK SMALL LETTER SIGMA      # sigma */
-    { 0x03C4, 0x74 }, /* GREEK SMALL LETTER TAU        # tau */
-    { 0x03C5, 0x75 }, /* GREEK SMALL LETTER UPSILON    # upsilon */
-    { 0x03C6, 0x66 }, /* GREEK SMALL LETTER PHI        # phi */
-    { 0x03C7, 0x63 }, /* GREEK SMALL LETTER CHI        # chi */
-    { 0x03C8, 0x79 }, /* GREEK SMALL LETTER PSI        # psi */
-    { 0x03C9, 0x77 }, /* GREEK SMALL LETTER OMEGA      # omega */
-    { 0x03D1, 0x4A }, /* GREEK THETA SYMBOL    # theta1 */
-    { 0x03D2, 0xA1 }, /* GREEK UPSILON WITH HOOK SYMBOL        # Upsilon1 */
-    { 0x03D5, 0x6A }, /* GREEK PHI SYMBOL      # phi1 */
-    { 0x03D6, 0x76 }, /* GREEK PI SYMBOL       # omega1 */
-    { 0x2022, 0xB7 }, /* BULLET        # bullet */
-    { 0x2026, 0xBC }, /* HORIZONTAL ELLIPSIS   # ellipsis */
-    { 0x2032, 0xA2 }, /* PRIME # minute */
-    { 0x2033, 0xB2 }, /* DOUBLE PRIME  # second */
-    { 0x2044, 0xA4 }, /* FRACTION SLASH        # fraction */
-    { 0x20AC, 0xA0 }, /* EURO SIGN     # Euro */
-    { 0x2111, 0xC1 }, /* BLACK-LETTER CAPITAL I        # Ifraktur */
-    { 0x2118, 0xC3 }, /* SCRIPT CAPITAL P      # weierstrass */
-    { 0x211C, 0xC2 }, /* BLACK-LETTER CAPITAL R        # Rfraktur */
-    { 0x2126, 0x57 }, /* OHM SIGN      # Omega */
-    { 0x2135, 0xC0 }, /* ALEF SYMBOL   # aleph */
-    { 0x2190, 0xAC }, /* LEFTWARDS ARROW       # arrowleft */
-    { 0x2191, 0xAD }, /* UPWARDS ARROW # arrowup */
-    { 0x2192, 0xAE }, /* RIGHTWARDS ARROW      # arrowright */
-    { 0x2193, 0xAF }, /* DOWNWARDS ARROW       # arrowdown */
-    { 0x2194, 0xAB }, /* LEFT RIGHT ARROW      # arrowboth */
-    { 0x21B5, 0xBF }, /* DOWNWARDS ARROW WITH CORNER LEFTWARDS # carriagereturn */
-    { 0x21D0, 0xDC }, /* LEFTWARDS DOUBLE ARROW        # arrowdblleft */
-    { 0x21D1, 0xDD }, /* UPWARDS DOUBLE ARROW  # arrowdblup */
-    { 0x21D2, 0xDE }, /* RIGHTWARDS DOUBLE ARROW       # arrowdblright */
-    { 0x21D3, 0xDF }, /* DOWNWARDS DOUBLE ARROW        # arrowdbldown */
-    { 0x21D4, 0xDB }, /* LEFT RIGHT DOUBLE ARROW       # arrowdblboth */
-    { 0x2200, 0x22 }, /* FOR ALL       # universal */
-    { 0x2202, 0xB6 }, /* PARTIAL DIFFERENTIAL  # partialdiff */
-    { 0x2203, 0x24 }, /* THERE EXISTS  # existential */
-    { 0x2205, 0xC6 }, /* EMPTY SET     # emptyset */
-    { 0x2206, 0x44 }, /* INCREMENT     # Delta */
-    { 0x2207, 0xD1 }, /* NABLA # gradient */
-    { 0x2208, 0xCE }, /* ELEMENT OF    # element */
-    { 0x2209, 0xCF }, /* NOT AN ELEMENT OF     # notelement */
-    { 0x220B, 0x27 }, /* CONTAINS AS MEMBER    # suchthat */
-    { 0x220F, 0xD5 }, /* N-ARY PRODUCT # product */
-    { 0x2211, 0xE5 }, /* N-ARY SUMMATION       # summation */
-    { 0x2212, 0x2D }, /* MINUS SIGN    # minus */
-    { 0x2215, 0xA4 }, /* DIVISION SLASH        # fraction */
-    { 0x2217, 0x2A }, /* ASTERISK OPERATOR     # asteriskmath */
-    { 0x221A, 0xD6 }, /* SQUARE ROOT   # radical */
-    { 0x221D, 0xB5 }, /* PROPORTIONAL TO       # proportional */
-    { 0x221E, 0xA5 }, /* INFINITY      # infinity */
-    { 0x2220, 0xD0 }, /* ANGLE # angle */
-    { 0x2227, 0xD9 }, /* LOGICAL AND   # logicaland */
-    { 0x2228, 0xDA }, /* LOGICAL OR    # logicalor */
-    { 0x2229, 0xC7 }, /* INTERSECTION  # intersection */
-    { 0x222A, 0xC8 }, /* UNION # union */
-    { 0x222B, 0xF2 }, /* INTEGRAL      # integral */
-    { 0x2234, 0x5C }, /* THEREFORE     # therefore */
-    { 0x223C, 0x7E }, /* TILDE OPERATOR        # similar */
-    { 0x2245, 0x40 }, /* APPROXIMATELY EQUAL TO        # congruent */
-    { 0x2248, 0xBB }, /* ALMOST EQUAL TO       # approxequal */
-    { 0x2260, 0xB9 }, /* NOT EQUAL TO  # notequal */
-    { 0x2261, 0xBA }, /* IDENTICAL TO  # equivalence */
-    { 0x2264, 0xA3 }, /* LESS-THAN OR EQUAL TO # lessequal */
-    { 0x2265, 0xB3 }, /* GREATER-THAN OR EQUAL TO      # greaterequal */
-    { 0x2282, 0xCC }, /* SUBSET OF     # propersubset */
-    { 0x2283, 0xC9 }, /* SUPERSET OF   # propersuperset */
-    { 0x2284, 0xCB }, /* NOT A SUBSET OF       # notsubset */
-    { 0x2286, 0xCD }, /* SUBSET OF OR EQUAL TO # reflexsubset */
-    { 0x2287, 0xCA }, /* SUPERSET OF OR EQUAL TO       # reflexsuperset */
-    { 0x2295, 0xC5 }, /* CIRCLED PLUS  # circleplus */
-    { 0x2297, 0xC4 }, /* CIRCLED TIMES # circlemultiply */
-    { 0x22A5, 0x5E }, /* UP TACK       # perpendicular */
-    { 0x22C5, 0xD7 }, /* DOT OPERATOR  # dotmath */
-    { 0x2320, 0xF3 }, /* TOP HALF INTEGRAL     # integraltp */
-    { 0x2321, 0xF5 }, /* BOTTOM HALF INTEGRAL  # integralbt */
-    { 0x2329, 0xE1 }, /* LEFT-POINTING ANGLE BRACKET   # angleleft */
-    { 0x232A, 0xF1 }, /* RIGHT-POINTING ANGLE BRACKET  # angleright */
-    { 0x25CA, 0xE0 }, /* LOZENGE       # lozenge */
-    { 0x2660, 0xAA }, /* BLACK SPADE SUIT      # spade */
-    { 0x2663, 0xA7 }, /* BLACK CLUB SUIT       # club */
-    { 0x2665, 0xA9 }, /* BLACK HEART SUIT      # heart */
-    { 0x2666, 0xA8 }, /* BLACK DIAMOND SUIT    # diamond */
-    { 0xF6D9, 0xD3 }, /* COPYRIGHT SIGN SERIF  # copyrightserif (CUS) */
-    { 0xF6DA, 0xD2 }, /* REGISTERED SIGN SERIF # registerserif (CUS) */
-    { 0xF6DB, 0xD4 }, /* TRADE MARK SIGN SERIF # trademarkserif (CUS) */
-    { 0xF8E5, 0x60 }, /* RADICAL EXTENDER      # radicalex (CUS) */
-    { 0xF8E6, 0xBD }, /* VERTICAL ARROW EXTENDER       # arrowvertex (CUS) */
-    { 0xF8E7, 0xBE }, /* HORIZONTAL ARROW EXTENDER     # arrowhorizex (CUS) */
-    { 0xF8E8, 0xE2 }, /* REGISTERED SIGN SANS SERIF    # registersans (CUS) */
-    { 0xF8E9, 0xE3 }, /* COPYRIGHT SIGN SANS SERIF     # copyrightsans (CUS) */
-    { 0xF8EA, 0xE4 }, /* TRADE MARK SIGN SANS SERIF    # trademarksans (CUS) */
-    { 0xF8EB, 0xE6 }, /* LEFT PAREN TOP        # parenlefttp (CUS) */
-    { 0xF8EC, 0xE7 }, /* LEFT PAREN EXTENDER   # parenleftex (CUS) */
-    { 0xF8ED, 0xE8 }, /* LEFT PAREN BOTTOM     # parenleftbt (CUS) */
-    { 0xF8EE, 0xE9 }, /* LEFT SQUARE BRACKET TOP       # bracketlefttp (CUS) */
-    { 0xF8EF, 0xEA }, /* LEFT SQUARE BRACKET EXTENDER  # bracketleftex (CUS) */
-    { 0xF8F0, 0xEB }, /* LEFT SQUARE BRACKET BOTTOM    # bracketleftbt (CUS) */
-    { 0xF8F1, 0xEC }, /* LEFT CURLY BRACKET TOP        # bracelefttp (CUS) */
-    { 0xF8F2, 0xED }, /* LEFT CURLY BRACKET MID        # braceleftmid (CUS) */
-    { 0xF8F3, 0xEE }, /* LEFT CURLY BRACKET BOTTOM     # braceleftbt (CUS) */
-    { 0xF8F4, 0xEF }, /* CURLY BRACKET EXTENDER        # braceex (CUS) */
-    { 0xF8F5, 0xF4 }, /* INTEGRAL EXTENDER     # integralex (CUS) */
-    { 0xF8F6, 0xF6 }, /* RIGHT PAREN TOP       # parenrighttp (CUS) */
-    { 0xF8F7, 0xF7 }, /* RIGHT PAREN EXTENDER  # parenrightex (CUS) */
-    { 0xF8F8, 0xF8 }, /* RIGHT PAREN BOTTOM    # parenrightbt (CUS) */
-    { 0xF8F9, 0xF9 }, /* RIGHT SQUARE BRACKET TOP      # bracketrighttp (CUS) */
-    { 0xF8FA, 0xFA }, /* RIGHT SQUARE BRACKET EXTENDER # bracketrightex (CUS) */
-    { 0xF8FB, 0xFB }, /* RIGHT SQUARE BRACKET BOTTOM   # bracketrightbt (CUS) */
-    { 0xF8FC, 0xFC }, /* RIGHT CURLY BRACKET TOP       # bracerighttp (CUS) */
-    { 0xF8FD, 0xFD }, /* RIGHT CURLY BRACKET MID       # bracerightmid (CUS) */
-    { 0xF8FE, 0xFE }, /* RIGHT CURLY BRACKET BOTTOM    # bracerightbt (CUS) */
+static const FT_Encoding fcFontEncodings[] = {
+    FT_ENCODING_UNICODE,
+    FT_ENCODING_MS_SYMBOL
 };
 
-static const FcCharMap AdobeSymbol = {
-    AdobeSymbolEnt,
-    sizeof (AdobeSymbolEnt) / sizeof (AdobeSymbolEnt[0]),
-};
-
-static const FcFontDecode fcFontDecoders[] = {
-    { ft_encoding_unicode,     0,              (1 << 21) - 1 },
-    { ft_encoding_symbol,      &AdobeSymbol,   (1 << 16) - 1 },
-};
-
-#define NUM_DECODE  (int) (sizeof (fcFontDecoders) / sizeof (fcFontDecoders[0]))
+#define NUM_DECODE  (int) (sizeof (fcFontEncodings) / sizeof (fcFontEncodings[0]))
 
 static const FcChar32  prefer_unicode[] = {
     0x20ac,    /* EURO SIGN */
 };
 
-#define NUM_PREFER_UNICODE  (int) (sizeof (prefer_unicode) / sizeof (prefer_unicode[0]))
-
-FcChar32
-FcFreeTypeUcs4ToPrivate (FcChar32 ucs4, const FcCharMap *map)
-{
-    int                low, high, mid;
-    FcChar16   bmp;
-
-    low = 0;
-    high = map->nent - 1;
-    if (ucs4 < map->ent[low].bmp || map->ent[high].bmp < ucs4)
-       return ~0;
-    while (low <= high)
-    {
-       mid = (high + low) >> 1;
-       bmp = map->ent[mid].bmp;
-       if (ucs4 == bmp)
-           return (FT_ULong) map->ent[mid].encode;
-       if (ucs4 < bmp)
-           high = mid - 1;
-       else
-           low = mid + 1;
-    }
-    return ~0;
-}
-
-FcChar32
-FcFreeTypePrivateToUcs4 (FcChar32 private, const FcCharMap *map)
-{
-    int            i;
-
-    for (i = 0; i < map->nent; i++)
-       if (map->ent[i].encode == private)
-           return (FcChar32) map->ent[i].bmp;
-    return ~0;
-}
-
-const FcCharMap *
-FcFreeTypeGetPrivateMap (FT_Encoding encoding)
-{
-    int        i;
-
-    for (i = 0; i < NUM_DECODE; i++)
-       if (fcFontDecoders[i].encoding == encoding)
-           return fcFontDecoders[i].map;
-    return 0;
-}
-
 #include "../fc-glyphname/fcglyphname.h"
 
 static FcChar32
@@ -2165,8 +2124,6 @@ FcFreeTypeCharIndex (FT_Face face, FcChar32 ucs4)
 {
     int                    initial, offset, decode;
     FT_UInt        glyphindex;
-    FcChar32       charcode;
-    int                    p;
 
     initial = 0;
 
@@ -2179,35 +2136,21 @@ FcFreeTypeCharIndex (FT_Face face, FcChar32 ucs4)
     if (face->charmap)
     {
        for (; initial < NUM_DECODE; initial++)
-           if (fcFontDecoders[initial].encoding == face->charmap->encoding)
+           if (fcFontEncodings[initial] == face->charmap->encoding)
                break;
        if (initial == NUM_DECODE)
            initial = 0;
     }
-    for (p = 0; p < NUM_PREFER_UNICODE; p++)
-       if (ucs4 == prefer_unicode[p])
-       {
-           initial = 0;
-           break;
-       }
     /*
      * Check each encoding for the glyph, starting with the current one
      */
     for (offset = 0; offset < NUM_DECODE; offset++)
     {
        decode = (initial + offset) % NUM_DECODE;
-       if (!face->charmap || face->charmap->encoding != fcFontDecoders[decode].encoding)
-           if (FT_Select_Charmap (face, fcFontDecoders[decode].encoding) != 0)
-               continue;
-       if (fcFontDecoders[decode].map)
-       {
-           charcode = FcFreeTypeUcs4ToPrivate (ucs4, fcFontDecoders[decode].map);
-           if (charcode == ~0U)
+       if (!face->charmap || face->charmap->encoding != fcFontEncodings[decode])
+           if (FT_Select_Charmap (face, fcFontEncodings[decode]) != 0)
                continue;
-       }
-       else
-           charcode = ucs4;
-       glyphindex = FT_Get_Char_Index (face, (FT_ULong) charcode);
+       glyphindex = FT_Get_Char_Index (face, (FT_ULong) ucs4);
        if (glyphindex)
            return glyphindex;
     }
@@ -2300,9 +2243,7 @@ FcFreeTypeCharSetAndSpacingForSize (FT_Face face, FcBlanks *blanks, int *spacing
 #endif
     FcCharSet      *fcs;
     FcCharLeaf     *leaf;
-    const FcCharMap *map;
     int                    o;
-    int                    i;
     FT_UInt        glyph;
     FT_Pos         advance, advance_one = 0, advance_two = 0;
     FcBool         has_advance = FcFalse, fixed_advance = FcTrue, dual_advance = FcFalse;
@@ -2325,62 +2266,9 @@ FcFreeTypeCharSetAndSpacingForSize (FT_Face face, FcBlanks *blanks, int *spacing
 #endif
     for (o = 0; o < NUM_DECODE; o++)
     {
-       if (FT_Select_Charmap (face, fcFontDecoders[o].encoding) != 0)
+       if (FT_Select_Charmap (face, fcFontEncodings[o]) != 0)
            continue;
-       map = fcFontDecoders[o].map;
-       if (map)
-       {
-           /*
-            * Non-Unicode tables are easy; there's a list of all possible
-            * characters
-            */
-           for (i = 0; i < map->nent; i++)
-           {
-               ucs4 = map->ent[i].bmp;
-               glyph = FT_Get_Char_Index (face, map->ent[i].encode);
-               if (glyph &&
-                   FcFreeTypeCheckGlyph (face, ucs4, glyph, blanks, &advance, using_strike))
-               {
-                   /*
-                    * ignore glyphs with zero advance. They’re
-                    * combining characters, and while their behaviour
-                    * isn’t well defined for monospaced applications in
-                    * Unicode, there are many fonts which include
-                    * zero-width combining characters in otherwise
-                    * monospaced fonts.
-                    */
-                   if (advance)
-                   {
-                       if (!has_advance)
-                       {
-                           has_advance = FcTrue;
-                           advance_one = advance;
-                       }
-                       else if (!APPROXIMATELY_EQUAL (advance, advance_one))
-                       {
-                           if (fixed_advance)
-                           {
-                               dual_advance = FcTrue;
-                               fixed_advance = FcFalse;
-                               advance_two = advance;
-                           }
-                           else if (!APPROXIMATELY_EQUAL (advance, advance_two))
-                               dual_advance = FcFalse;
-                       }
-                   }
 
-                   leaf = FcCharSetFindLeafCreate (fcs, ucs4);
-                   if (!leaf)
-                       goto bail1;
-                   leaf->map[(ucs4 & 0xff) >> 5] |= (1 << (ucs4 & 0x1f));
-#ifdef CHECK
-                   if (ucs4 > font_max)
-                       font_max = ucs4;
-#endif
-               }
-           }
-       }
-       else
        {
             page = ~0;
             leaf = NULL;
@@ -2572,7 +2460,8 @@ FcFreeTypeCharSet (FT_Face face, FcBlanks *blanks)
  * except for 'DFLT'.
  */
 #define FcIsSpace(x)       (040 == (x))
-#define FcIsValidScript(x)  (FcIsLower(x) || FcIsUpper (x) || FcIsSpace(x))
+#define FcIsDigit(c)       (('0' <= (c) && (c) <= '9'))
+#define FcIsValidScript(x)  (FcIsLower(x) || FcIsUpper (x) || FcIsDigit(x) || FcIsSpace(x))
                        
 static void
 addtag(FcChar8 *complex_, FT_ULong tag)
@@ -2585,7 +2474,7 @@ addtag(FcChar8 *complex_, FT_ULong tag)
     tagstring[3] = (FcChar8)(tag);
     tagstring[4] = '\0';
 
-    /* skip tags which aren't alphabetic, under the assumption that
+    /* skip tags which aren't alphanumeric, under the assumption that
      * they're probably broken
      */
     if (!FcIsValidScript(tagstring[0]) ||
index 941abba..21c6c7c 100644 (file)
@@ -122,6 +122,28 @@ FcFontSetSerialize (FcSerialize *serialize, const FcFontSet * s)
 
     return s_serialize;
 }
+
+FcFontSet *
+FcFontSetDeserialize (const FcFontSet *set)
+{
+    int i;
+    FcFontSet *new = FcFontSetCreate ();
+
+    if (!new)
+       return NULL;
+    for (i = 0; i < set->nfont; i++)
+    {
+       if (!FcFontSetAdd (new, FcPatternDuplicate (FcFontSetFont (set, i))))
+           goto bail;
+    }
+
+    return new;
+bail:
+    FcFontSetDestroy (new);
+
+    return NULL;
+}
+
 #define __fcfs__
 #include "fcaliastail.h"
 #undef __fcfs__
index 2360764..6134ed4 100644 (file)
 #endif
 
 static FcConfig *
-FcInitFallbackConfig (void)
+FcInitFallbackConfig (const FcChar8 *sysroot)
 {
     FcConfig   *config;
 
     config = FcConfigCreate ();
     if (!config)
        goto bail0;
+    FcConfigSetSysRoot (config, sysroot);
     if (!FcConfigAddDir (config, (FcChar8 *) FC_DEFAULT_FONTS))
        goto bail1;
     if (!FcConfigAddCacheDir (config, (FcChar8 *) FC_CACHEDIR))
@@ -65,19 +66,25 @@ FcGetVersion (void)
  * Load the configuration files
  */
 FcConfig *
-FcInitLoadConfig (void)
+FcInitLoadOwnConfig (FcConfig *config)
 {
-    FcConfig   *config;
+    if (!config)
+    {
+       config = FcConfigCreate ();
+       if (!config)
+           return NULL;
+    }
 
     FcInitDebug ();
-    config = FcConfigCreate ();
-    if (!config)
-       return NULL;
 
     if (!FcConfigParseAndLoad (config, 0, FcTrue))
     {
+       const FcChar8 *sysroot = FcConfigGetSysRoot (config);
+       FcConfig *fallback = FcInitFallbackConfig (sysroot);
+
        FcConfigDestroy (config);
-       return FcInitFallbackConfig ();
+
+       return fallback;
     }
 
     if (config->cacheDirs && config->cacheDirs->num == 0)
@@ -106,13 +113,19 @@ FcInitLoadConfig (void)
        if (!FcConfigAddCacheDir (config, (FcChar8 *) FC_CACHEDIR) ||
            !FcConfigAddCacheDir (config, (FcChar8 *) prefix))
        {
+           FcConfig *fallback;
+           const FcChar8 *sysroot;
+
          bail:
+           sysroot = FcConfigGetSysRoot (config);
            fprintf (stderr,
                     "Fontconfig error: out of memory");
            if (prefix)
                FcStrFree (prefix);
+           fallback = FcInitFallbackConfig (sysroot);
            FcConfigDestroy (config);
-           return FcInitFallbackConfig ();
+
+           return fallback;
        }
        FcStrFree (prefix);
     }
@@ -120,15 +133,19 @@ FcInitLoadConfig (void)
     return config;
 }
 
+FcConfig *
+FcInitLoadConfig (void)
+{
+    return FcInitLoadOwnConfig (NULL);
+}
+
 /*
  * Load the configuration files and scan for available fonts
  */
 FcConfig *
-FcInitLoadConfigAndFonts (void)
+FcInitLoadOwnConfigAndFonts (FcConfig *config)
 {
-    FcConfig   *config = FcInitLoadConfig ();
-
-    FcInitDebug ();
+    config = FcInitLoadOwnConfig (config);
     if (!config)
        return 0;
     if (!FcConfigBuildFonts (config))
@@ -139,6 +156,12 @@ FcInitLoadConfigAndFonts (void)
     return config;
 }
 
+FcConfig *
+FcInitLoadConfigAndFonts (void)
+{
+    return FcInitLoadOwnConfigAndFonts (NULL);
+}
+
 /*
  * Initialize the default library configuration
  */
@@ -166,11 +189,18 @@ FcBool
 FcInitReinitialize (void)
 {
     FcConfig   *config;
+    FcBool     ret;
 
     config = FcInitLoadConfigAndFonts ();
     if (!config)
        return FcFalse;
-    return FcConfigSetCurrent (config);
+    ret = FcConfigSetCurrent (config);
+    /* FcConfigSetCurrent() increases the refcount.
+     * decrease it here to avoid the memory leak.
+     */
+    FcConfigDestroy (config);
+
+    return ret;
 }
 
 FcBool
@@ -179,6 +209,8 @@ FcInitBringUptoDate (void)
     FcConfig   *config = FcConfigGetCurrent ();
     time_t     now;
 
+    if (!config)
+       return FcFalse;
     /*
      * rescanInterval == 0 disables automatic up to date
      */
index 5129267..80205c9 100644 (file)
@@ -37,6 +37,9 @@
 #include <ctype.h>
 #include <assert.h>
 #include <errno.h>
+#include <limits.h>
+#include <float.h>
+#include <math.h>
 #include <unistd.h>
 #include <stddef.h>
 #include <sys/types.h>
@@ -85,7 +88,7 @@ extern pfnSHGetFolderPathA pSHGetFolderPathA;
 #define FC_DBG_CONFIG  1024
 #define FC_DBG_LANGSET 2048
 
-#define _FC_ASSERT_STATIC1(_line, _cond) typedef int _static_assert_on_line_##_line##_failed[(_cond)?1:-1]
+#define _FC_ASSERT_STATIC1(_line, _cond) typedef int _static_assert_on_line_##_line##_failed[(_cond)?1:-1] FC_UNUSED
 #define _FC_ASSERT_STATIC0(_line, _cond) _FC_ASSERT_STATIC1 (_line, (_cond))
 #define FC_ASSERT_STATIC(_cond) _FC_ASSERT_STATIC0 (__LINE__, (_cond))
 
@@ -93,6 +96,11 @@ extern pfnSHGetFolderPathA pSHGetFolderPathA;
 #define FC_MAX(a,b) ((a) > (b) ? (a) : (b))
 #define FC_ABS(a)   ((a) < 0 ? -(a) : (a))
 
+#define FcDoubleIsZero(a)      (fabs ((a)) <= DBL_EPSILON)
+#define FcDoubleCmpEQ(a,b)     (fabs ((a) - (b)) <= DBL_EPSILON)
+#define FcDoubleCmpGE(a,b)     (FcDoubleCmpEQ (a, b) || (a) > (b))
+#define FcDoubleCmpLE(a,b)     (FcDoubleCmpEQ (a, b) || (a) < (b))
+
 /* slim_internal.h */
 #if (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) && defined(__ELF__) && !defined(__sun)
 #define FcPrivate              __attribute__((__visibility__("hidden")))
@@ -107,7 +115,9 @@ extern pfnSHGetFolderPathA pSHGetFolderPathA;
 FC_ASSERT_STATIC (sizeof (FcRef) == sizeof (int));
 
 typedef enum _FcValueBinding {
-    FcValueBindingWeak, FcValueBindingStrong, FcValueBindingSame
+    FcValueBindingWeak, FcValueBindingStrong, FcValueBindingSame,
+    /* to make sure sizeof (FcValueBinding) == 4 even with -fshort-enums */
+    FcValueBindingEnd = INT_MAX
 } FcValueBinding;
 
 #define FcStrdup(s) ((FcChar8 *) strdup ((const char *) (s)))
@@ -158,6 +168,7 @@ typedef enum _FcValueBinding {
 #define FcValueString(v)       FcPointerMember(v,u.s,FcChar8)
 #define FcValueCharSet(v)      FcPointerMember(v,u.c,const FcCharSet)
 #define FcValueLangSet(v)      FcPointerMember(v,u.l,const FcLangSet)
+#define FcValueRange(v)                FcPointerMember(v,u.r,const FcRange)
 
 typedef struct _FcValueList *FcValueListPtr;
 
@@ -171,6 +182,12 @@ typedef struct _FcValueList {
                        
 typedef int FcObject;
 
+/* The 1024 is to leave some room for future added internal objects, such
+ * that caches from newer fontconfig can still be used with older fontconfig
+ * without getting confused. */
+#define FC_EXT_OBJ_INDEX       1024
+#define FC_OBJ_ID(_n_) ((_n_) & (~FC_EXT_OBJ_INDEX))
+
 typedef struct _FcPatternElt *FcPatternEltPtr;
 
 /*
@@ -208,6 +225,7 @@ typedef enum _FcOp {
     FcOpField, FcOpConst,
     FcOpAssign, FcOpAssignReplace,
     FcOpPrependFirst, FcOpPrepend, FcOpAppend, FcOpAppendLast,
+    FcOpDelete, FcOpDeleteAll,
     FcOpQuest,
     FcOpOr, FcOpAnd, FcOpEqual, FcOpNotEqual,
     FcOpContains, FcOpListing, FcOpNotContains,
@@ -234,20 +252,38 @@ typedef struct _FcExprName {
   FcMatchKind  kind;
 } FcExprName;
 
+typedef struct _FcRangeInt {
+    FcChar32 begin;
+    FcChar32 end;
+} FcRangeInt;
+typedef struct _FcRangeDouble {
+    double begin;
+    double end;
+} FcRangeDouble;
+struct _FcRange {
+    FcBool is_double;
+    FcBool is_inclusive;
+    union {
+       FcRangeInt i;
+       FcRangeDouble d;
+    } u;
+};
+
 
 typedef struct _FcExpr {
     FcOp   op;
     union {
-       int         ival;
-       double      dval;
-       const FcChar8       *sval;
-       FcExprMatrix *mexpr;
-       FcBool      bval;
-       FcCharSet   *cval;
-       FcLangSet   *lval;
-
-       FcExprName  name;
-       const FcChar8       *constant;
+       int             ival;
+       double          dval;
+       const FcChar8   *sval;
+       FcExprMatrix    *mexpr;
+       FcBool          bval;
+       FcCharSet       *cval;
+       FcLangSet       *lval;
+       FcRange         *rval;
+
+       FcExprName      name;
+       const FcChar8   *constant;
        struct {
            struct _FcExpr *left, *right;
        } tree;
@@ -270,7 +306,6 @@ typedef enum _FcQual {
 #define FcMatchDefault ((FcMatchKind) -1)
 
 typedef struct _FcTest {
-    struct _FcTest     *next;
     FcMatchKind                kind;
     FcQual             qual;
     FcObject           object;
@@ -279,17 +314,28 @@ typedef struct _FcTest {
 } FcTest;
 
 typedef struct _FcEdit {
-    struct _FcEdit *next;
     FcObject       object;
     FcOp           op;
     FcExpr         *expr;
     FcValueBinding  binding;
 } FcEdit;
 
+typedef enum _FcRuleType {
+    FcRuleUnknown, FcRuleTest, FcRuleEdit
+} FcRuleType;
+
+typedef struct _FcRule {
+    struct _FcRule *next;
+    FcRuleType      type;
+    union {
+       FcTest *test;
+       FcEdit *edit;
+    } u;
+} FcRule;
+
 typedef struct _FcSubst {
     struct _FcSubst    *next;
-    FcTest             *test;
-    FcEdit             *edit;
+    FcRule             *rule;
 } FcSubst;
 
 typedef struct _FcCharLeaf {
@@ -424,7 +470,7 @@ typedef struct _FcCaseFold {
 
 #define FC_CACHE_MAGIC_MMAP        0xFC02FC04
 #define FC_CACHE_MAGIC_ALLOC       0xFC02FC05
-#define FC_CACHE_CONTENT_VERSION    3
+#define FC_CACHE_CONTENT_VERSION    5
 
 struct _FcAtomic {
     FcChar8    *file;          /* original file name */
@@ -500,7 +546,9 @@ struct _FcConfig {
 
     FcRef      ref;                /* reference count */
 
-    FcExprPage *expr_pool;         /* pool of FcExpr's */
+    FcExprPage  *expr_pool;        /* pool of FcExpr's */
+
+    FcChar8     *sysRoot;          /* override the system root directory */
 };
 
 typedef struct _FcFileTime {
@@ -510,13 +558,6 @@ typedef struct _FcFileTime {
 
 typedef struct _FcCharMap FcCharMap;
 
-typedef struct _FcRange            FcRange;
-
-struct _FcRange {
-    FcChar32 begin;
-    FcChar32 end;
-};
-
 typedef struct _FcStatFS    FcStatFS;
 
 struct _FcStatFS {
@@ -545,6 +586,9 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config);
 FcPrivate FcCache *
 FcDirCacheBuild (FcFontSet *set, const FcChar8 *dir, struct stat *dir_stat, FcStrSet *dirs);
 
+FcPrivate FcCache *
+FcDirCacheRebuild (FcCache *cache, struct stat *dir_stat, FcStrSet *dirs);
+
 FcPrivate FcBool
 FcDirCacheWrite (FcCache *cache, FcConfig *config);
 
@@ -607,10 +651,9 @@ FcPrivate FcBool
 FcConfigAddBlank (FcConfig     *config,
                  FcChar32      blank);
 
-FcPrivate FcBool
-FcConfigAddEdit (FcConfig      *config,
-                FcTest         *test,
-                FcEdit         *edit,
+FcBool
+FcConfigAddRule (FcConfig      *config,
+                FcRule         *rule,
                 FcMatchKind    kind);
 
 FcPrivate void
@@ -620,7 +663,7 @@ FcConfigSetFonts (FcConfig  *config,
 
 FcPrivate FcBool
 FcConfigCompareValue (const FcValue *m,
-                     FcOp          op,
+                     unsigned int   op_,
                      const FcValue *v);
 
 FcPrivate FcBool
@@ -677,6 +720,9 @@ FcPrivate FcLangSet *
 FcLangSetSerialize(FcSerialize *serialize, const FcLangSet *l);
 
 /* fccharset.c */
+FcPrivate FcCharSet *
+FcCharSetPromote (FcValuePromotionBuffer *vbuf);
+
 FcPrivate void
 FcLangCharSetPopulate (void);
 
@@ -724,6 +770,12 @@ FcOpen(const char *pathname, int flags, ...);
 FcPrivate int
 FcMakeTempfile (char *template);
 
+FcPrivate int32_t
+FcRandom (void);
+
+FcPrivate FcBool
+FcMakeDirectory (const FcChar8 *dir);
+
 /* fcdbg.c */
 
 FcPrivate void
@@ -770,6 +822,9 @@ FcInitDebug (void);
 FcPrivate FcChar8 *
 FcGetDefaultLang (void);
 
+FcPrivate FcChar8 *
+FcGetPrgname (void);
+
 FcPrivate void
 FcDefaultFini (void);
 
@@ -779,6 +834,9 @@ FcPrivate FcBool
 FcFileIsLink (const FcChar8 *file);
 
 FcPrivate FcBool
+FcFileIsFile (const FcChar8 *file);
+
+FcPrivate FcBool
 FcFileScanConfig (FcFontSet    *set,
                  FcStrSet      *dirs,
                  FcBlanks      *blanks,
@@ -791,7 +849,13 @@ FcDirScanConfig (FcFontSet *set,
                 FcBlanks       *blanks,
                 const FcChar8  *dir,
                 FcBool         force,
-                FcConfig       *config);
+                FcConfig       *config,
+                FcBool         scanOnly);
+
+FcPrivate FcBool
+FcDirScanOnly (FcStrSet                *dirs,
+              const FcChar8    *dir,
+              FcConfig         *config);
 
 /* fcfont.c */
 FcPrivate int
@@ -805,6 +869,16 @@ FcFontSetSerializeAlloc (FcSerialize *serialize, const FcFontSet *s);
 FcPrivate FcFontSet *
 FcFontSetSerialize (FcSerialize *serialize, const FcFontSet * s);
 
+FcPrivate FcFontSet *
+FcFontSetDeserialize (const FcFontSet *set);
+
+/* fcinit.c */
+FcPrivate FcConfig *
+FcInitLoadOwnConfig (FcConfig *config);
+
+FcPrivate FcConfig *
+FcInitLoadOwnConfigAndFonts (FcConfig *config);
+
 /* fcxml.c */
 FcPrivate void
 FcTestDestroy (FcTest *test);
@@ -812,6 +886,9 @@ FcTestDestroy (FcTest *test);
 FcPrivate void
 FcEditDestroy (FcEdit *e);
 
+void
+FcRuleDestroy (FcRule *rule);
+
 /* fclang.c */
 FcPrivate FcLangSet *
 FcFreeTypeLangSet (const FcCharSet  *charset,
@@ -844,7 +921,7 @@ FcListPatternMatchAny (const FcPattern *p,
 
 enum {
   FC_INVALID_OBJECT = 0,
-#define FC_OBJECT(NAME, Type) FC_##NAME##_OBJECT,
+#define FC_OBJECT(NAME, Type, Cmp) FC_##NAME##_OBJECT,
 #include "fcobjs.h"
 #undef FC_OBJECT
   FC_ONE_AFTER_MAX_BASE_OBJECT
@@ -947,6 +1024,9 @@ FcPatternObjectAddBool (FcPattern *p, FcObject object, FcBool b);
 FcPrivate FcBool
 FcPatternObjectAddLangSet (FcPattern *p, FcObject object, const FcLangSet *ls);
 
+FcPrivate FcBool
+FcPatternObjectAddRange (FcPattern *p, FcObject object, const FcRange *r);
+
 FcPrivate FcResult
 FcPatternObjectGetInteger (const FcPattern *p, FcObject object, int n, int *i);
 
@@ -968,6 +1048,9 @@ FcPatternObjectGetBool (const FcPattern *p, FcObject object, int n, FcBool *b);
 FcPrivate FcResult
 FcPatternObjectGetLangSet (const FcPattern *p, FcObject object, int n, FcLangSet **ls);
 
+FcPrivate FcResult
+FcPatternObjectGetRange (const FcPattern *p, FcObject object, int id, FcRange **r);
+
 FcPrivate FcBool
 FcPatternAppend (FcPattern *p, FcPattern *s);
 
@@ -995,6 +1078,32 @@ extern FcPrivate const FcMatrix    FcIdentityMatrix;
 FcPrivate void
 FcMatrixFree (FcMatrix *mat);
 
+/* fcrange.c */
+
+FcPrivate FcRange
+FcRangeCanonicalize (const FcRange *range);
+
+FcPrivate FcRange *
+FcRangePromote (double v, FcValuePromotionBuffer *vbuf);
+
+FcPrivate FcBool
+FcRangeIsZero (const FcRange *r);
+
+FcPrivate FcBool
+FcRangeIsInRange (const FcRange *a, const FcRange *b);
+
+FcPrivate FcBool
+FcRangeCompare (FcOp op, const FcRange *a, const FcRange *b);
+
+FcPrivate FcChar32
+FcRangeHash (const FcRange *r);
+
+FcPrivate FcBool
+FcRangeSerializeAlloc (FcSerialize *serialize, const FcRange *r);
+
+FcPrivate FcRange *
+FcRangeSerialize (FcSerialize *serialize, const FcRange *r);
+
 /* fcstat.c */
 
 FcPrivate int
@@ -1040,11 +1149,8 @@ FcStrBufData (FcStrBuf *buf, const FcChar8 *s, int len);
 FcPrivate int
 FcStrCmpIgnoreBlanksAndCase (const FcChar8 *s1, const FcChar8 *s2);
 
-FcPrivate FcBool
-FcStrRegexCmp (const FcChar8 *s, const FcChar8 *regex);
-
-FcPrivate FcBool
-FcStrRegexCmpIgnoreCase (const FcChar8 *s, const FcChar8 *regex);
+FcPrivate int
+FcStrCmpIgnoreCaseAndDelims (const FcChar8 *s1, const FcChar8 *s2, const FcChar8 *delims);
 
 FcPrivate const FcChar8 *
 FcStrContainsIgnoreBlanksAndCase (const FcChar8 *s1, const FcChar8 *s2);
@@ -1055,10 +1161,21 @@ FcStrContainsIgnoreCase (const FcChar8 *s1, const FcChar8 *s2);
 FcPrivate const FcChar8 *
 FcStrContainsWord (const FcChar8 *s1, const FcChar8 *s2);
 
+FcPrivate int
+FcStrMatchIgnoreCaseAndDelims (const FcChar8 *s1, const FcChar8 *s2, const FcChar8 *delims);
+
+FcPrivate FcBool
+FcStrGlobMatch (const FcChar8 *glob,
+               const FcChar8 *string);
+
 FcPrivate FcBool
 FcStrUsesHome (const FcChar8 *s);
 
 FcPrivate FcChar8 *
+FcStrBuildFilename (const FcChar8 *path,
+                   ...);
+
+FcPrivate FcChar8 *
 FcStrLastSlash (const FcChar8  *path);
 
 FcPrivate FcChar32
index 8e9b094..b1fd1bc 100644 (file)
@@ -720,19 +720,22 @@ FcLangSetPromote (const FcChar8 *lang, FcValuePromotionBuffer *vbuf)
     memset (buf->ls.map, '\0', sizeof (buf->ls.map));
     buf->ls.map_size = NUM_LANG_SET_MAP;
     buf->ls.extra = 0;
-    id = FcLangSetIndex (lang);
-    if (id > 0)
+    if (lang)
     {
-       FcLangSetBitSet (&buf->ls, id);
-    }
-    else
-    {
-       buf->ls.extra = &buf->strs;
-       buf->strs.num = 1;
-       buf->strs.size = 1;
-       buf->strs.strs = &buf->str;
-       FcRefInit (&buf->strs.ref, 1);
-       buf->str = (FcChar8 *) lang;
+       id = FcLangSetIndex (lang);
+       if (id > 0)
+       {
+           FcLangSetBitSet (&buf->ls, id);
+       }
+       else
+       {
+           buf->ls.extra = &buf->strs;
+           buf->strs.num = 1;
+           buf->strs.size = 1;
+           buf->strs.strs = &buf->str;
+           FcRefInit (&buf->strs.ref, 1);
+           buf->str = (FcChar8 *) lang;
+       }
     }
     return &buf->ls;
 }
@@ -1027,9 +1030,11 @@ FcLangSetOperate(const FcLangSet *a,
                                                 const FcChar8  *s))
 {
     FcLangSet  *langset = FcLangSetCopy (a);
-    FcStrList  *sl = FcStrListCreate (FcLangSetGetLangs (b));
+    FcStrSet   *set = FcLangSetGetLangs (b);
+    FcStrList  *sl = FcStrListCreate (set);
     FcChar8    *str;
 
+    FcStrSetDestroy (set);
     while ((str = FcStrListNext (sl)))
     {
        func (langset, str);
index b7ae899..d7e8fc0 100644 (file)
@@ -212,6 +212,8 @@ FcListPatternMatchAny (const FcPattern *p,
 {
     int                    i;
 
+    if (!p)
+       return FcFalse;
     for (i = 0; i < p->num; i++)
     {
        FcPatternElt    *pe = &FcPatternElts(p)[i];
@@ -252,6 +254,7 @@ FcListValueHash (FcValue    *value)
 {
     FcValue v = FcValueCanonicalize(value);
     switch (v.type) {
+    case FcTypeUnknown:
     case FcTypeVoid:
        return 0;
     case FcTypeInteger:
@@ -267,9 +270,11 @@ FcListValueHash (FcValue    *value)
     case FcTypeCharSet:
        return FcCharSetCount (v.u.c);
     case FcTypeFTFace:
-       return (long) v.u.f;
+       return (intptr_t) v.u.f;
     case FcTypeLangSet:
        return FcLangSetHash (v.u.l);
+    case FcTypeRange:
+       return FcRangeHash (v.u.r);
     }
     return 0;
 }
index 6778967..46d08bc 100644 (file)
@@ -77,6 +77,24 @@ FcCompareFamily (FcValue *v1, FcValue *v2)
 }
 
 static double
+FcComparePostScript (FcValue *v1, FcValue *v2)
+{
+    const FcChar8 *v1_string = FcValueString (v1);
+    const FcChar8 *v2_string = FcValueString (v2);
+    int n;
+    size_t len;
+
+    if (FcToLower (*v1_string) != FcToLower (*v2_string) &&
+       *v1_string != ' ' && *v2_string != ' ')
+       return 1.0;
+
+    n = FcStrMatchIgnoreCaseAndDelims (v1_string, v2_string, (const FcChar8 *)" -");
+    len = strlen ((const char *)v1_string);
+
+    return (double)(len - n) / (double)len;
+}
+
+static double
 FcCompareLang (FcValue *v1, FcValue *v2)
 {
     FcLangResult    result;
@@ -171,25 +189,130 @@ FcCompareSize (FcValue *value1, FcValue *value2)
 }
 
 static double
+FcCompareSizeRange (FcValue *v1, FcValue *v2)
+{
+    FcValue value1 = FcValueCanonicalize (v1);
+    FcValue value2 = FcValueCanonicalize (v2);
+    FcRange *r1 = NULL, *r2 = NULL;
+    double ret = -1.0;
+
+    switch ((int) value1.type) {
+    case FcTypeDouble:
+       r1 = FcRangeCreateDouble (value1.u.d, value1.u.d);
+       break;
+    case FcTypeRange:
+       r1 = FcRangeCopy (value1.u.r);
+       break;
+    default:
+       goto bail;
+    }
+    switch ((int) value2.type) {
+    case FcTypeDouble:
+       r2 = FcRangeCreateDouble (value2.u.d, value2.u.d);
+       break;
+    case FcTypeRange:
+       r2 = FcRangeCopy (value2.u.r);
+       break;
+    default:
+       goto bail;
+    }
+
+    if (FcRangeIsInRange (r1, r2))
+       ret = 0.0;
+    else
+       ret = FC_MIN (fabs (r1->u.d.end - r2->u.d.begin), fabs (r1->u.d.begin - r2->u.d.end));
+
+bail:
+    if (r1)
+       FcRangeDestroy (r1);
+    if (r2)
+       FcRangeDestroy (r2);
+
+    return ret;
+}
+
+static double
 FcCompareFilename (FcValue *v1, FcValue *v2)
 {
-       const FcChar8 *s1 = FcValueString (v1), *s2 = FcValueString (v2);
-       if (FcStrCmp (s1, s2) == 0)
-           return 0.0;
-       else if (FcStrCmpIgnoreCase (s1, s2) == 0)
-           return 1.0;
-       else if (FcStrRegexCmp (s2, s1))
-           return 2.0;
-       else if (FcStrRegexCmpIgnoreCase (s2, s1))
-           return 3.0;
-       else
-           return 4.0;
+    const FcChar8 *s1 = FcValueString (v1), *s2 = FcValueString (v2);
+    if (FcStrCmp (s1, s2) == 0)
+       return 0.0;
+    else if (FcStrCmpIgnoreCase (s1, s2) == 0)
+       return 1.0;
+    else if (FcStrGlobMatch (s1, s2))
+       return 2.0;
+    else
+       return 3.0;
 }
 
+
+/* Define priorities to -1 for objects that don't have a compare function. */
+
+#define PRI_NULL(n)                            \
+    PRI_ ## n ## _STRONG = -1,                 \
+    PRI_ ## n ## _WEAK = -1,
+#define PRI1(n)
+#define PRI_FcCompareFamily(n)         PRI1(n)
+#define PRI_FcCompareString(n)         PRI1(n)
+#define PRI_FcCompareNumber(n)         PRI1(n)
+#define PRI_FcCompareSize(n)           PRI1(n)
+#define PRI_FcCompareBool(n)           PRI1(n)
+#define PRI_FcCompareFilename(n)       PRI1(n)
+#define PRI_FcCompareCharSet(n)                PRI1(n)
+#define PRI_FcCompareLang(n)           PRI1(n)
+#define PRI_FcComparePostScript(n)     PRI1(n)
+#define PRI_FcCompareSizeRange(n)      PRI1(n)
+
+#define FC_OBJECT(NAME, Type, Cmp)     PRI_##Cmp(NAME)
+
+typedef enum _FcMatcherPriorityDummy {
+#include "fcobjs.h"
+} FcMatcherPriorityDummy;
+
+#undef FC_OBJECT
+
+
+/* Canonical match priority order. */
+
+#undef PRI1
+#define PRI1(n)                                        \
+    PRI_ ## n,                                 \
+    PRI_ ## n ## _STRONG = PRI_ ## n,          \
+    PRI_ ## n ## _WEAK = PRI_ ## n
+
+typedef enum _FcMatcherPriority {
+    PRI1(FILE),
+    PRI1(FONTFORMAT),
+    PRI1(SCALABLE),
+    PRI1(COLOR),
+    PRI1(FOUNDRY),
+    PRI1(CHARSET),
+    PRI_FAMILY_STRONG,
+    PRI_POSTSCRIPT_NAME_STRONG,
+    PRI1(LANG),
+    PRI_FAMILY_WEAK,
+    PRI_POSTSCRIPT_NAME_WEAK,
+    PRI1(SPACING),
+    PRI1(SIZE),
+    PRI1(PIXEL_SIZE),
+    PRI1(STYLE),
+    PRI1(SLANT),
+    PRI1(WEIGHT),
+    PRI1(WIDTH),
+    PRI1(DECORATIVE),
+    PRI1(ANTIALIAS),
+    PRI1(RASTERIZER),
+    PRI1(OUTLINE),
+    PRI1(FONTVERSION),
+    PRI_END
+} FcMatcherPriority;
+
+#undef PRI1
+
 typedef struct _FcMatcher {
-    FcObject       object;
-    double         (*compare) (FcValue *value1, FcValue *value2);
-    int                    strong, weak;
+    FcObject object;
+    double   (*compare) (FcValue *value1, FcValue *value2);
+    int      strong, weak;
 } FcMatcher;
 
 /*
@@ -197,100 +320,34 @@ typedef struct _FcMatcher {
  * each value, earlier values are more significant than
  * later values
  */
+#define FC_OBJECT(NAME, Type, Cmp)     { FC_##NAME##_OBJECT,   Cmp,    PRI_##NAME##_STRONG,    PRI_##NAME##_WEAK },
 static const FcMatcher _FcMatchers [] = {
-    { FC_FILE_OBJECT,          FcCompareFilename,      0, 0 },
-#define MATCH_FILE         0
-    { FC_FOUNDRY_OBJECT,       FcCompareString,        1, 1 },
-#define MATCH_FOUNDRY      1
-    { FC_CHARSET_OBJECT,       FcCompareCharSet,       2, 2 },
-#define MATCH_CHARSET      2
-    { FC_FAMILY_OBJECT,        FcCompareFamily,        3, 5 },
-#define MATCH_FAMILY       3
-    { FC_LANG_OBJECT,          FcCompareLang,          4, 4 },
-#define MATCH_LANG         4
-#define MATCH_LANG_INDEX    4
-    { FC_SPACING_OBJECT,       FcCompareNumber,        6, 6 },
-#define MATCH_SPACING      5
-    { FC_PIXEL_SIZE_OBJECT,    FcCompareSize,          7, 7 },
-#define MATCH_PIXEL_SIZE    6
-    { FC_STYLE_OBJECT,         FcCompareString,        8, 8 },
-#define MATCH_STYLE        7
-    { FC_SLANT_OBJECT,         FcCompareNumber,        9, 9 },
-#define MATCH_SLANT        8
-    { FC_WEIGHT_OBJECT,                FcCompareNumber,        10, 10 },
-#define MATCH_WEIGHT       9
-    { FC_WIDTH_OBJECT,         FcCompareNumber,        11, 11 },
-#define MATCH_WIDTH        10
-    { FC_DECORATIVE_OBJECT,    FcCompareBool,          12, 12 },
-#define MATCH_DECORATIVE       11
-    { FC_ANTIALIAS_OBJECT,     FcCompareBool,          13, 13 },
-#define MATCH_ANTIALIAS                    12
-    { FC_RASTERIZER_OBJECT,    FcCompareString,        14, 14 },
-#define MATCH_RASTERIZER           13
-    { FC_OUTLINE_OBJECT,       FcCompareBool,          15, 15 },
-#define MATCH_OUTLINE              14
-    { FC_FONTVERSION_OBJECT,   FcCompareNumber,        16, 16 },
-#define MATCH_FONTVERSION          15
+    { FC_INVALID_OBJECT, NULL, -1, -1 },
+#include "fcobjs.h"
 };
-
-#define NUM_MATCH_VALUES    17
+#undef FC_OBJECT
 
 static const FcMatcher*
 FcObjectToMatcher (FcObject object,
                   FcBool   include_lang)
 {
-    int        i;
-
-    i = -1;
-    switch (object) {
-    case FC_FILE_OBJECT:
-       i = MATCH_FILE; break;
-    case FC_FOUNDRY_OBJECT:
-       i = MATCH_FOUNDRY; break;
-    case FC_FONTVERSION_OBJECT:
-       i = MATCH_FONTVERSION; break;
-    case FC_FAMILY_OBJECT:
-       i = MATCH_FAMILY; break;
-    case FC_CHARSET_OBJECT:
-       i = MATCH_CHARSET; break;
-    case FC_ANTIALIAS_OBJECT:
-       i = MATCH_ANTIALIAS; break;
-    case FC_LANG_OBJECT:
-       i = MATCH_LANG; break;
-    case FC_SPACING_OBJECT:
-        i = MATCH_SPACING; break;
-    case FC_STYLE_OBJECT:
-        i = MATCH_STYLE; break;
-    case FC_SLANT_OBJECT:
-        i = MATCH_SLANT; break;
-    case FC_PIXEL_SIZE_OBJECT:
-       i = MATCH_PIXEL_SIZE; break;
-    case FC_WIDTH_OBJECT:
-        i = MATCH_WIDTH; break;
-    case FC_WEIGHT_OBJECT:
-        i = MATCH_WEIGHT; break;
-    case FC_RASTERIZER_OBJECT:
-       i = MATCH_RASTERIZER; break;
-    case FC_OUTLINE_OBJECT:
-       i = MATCH_OUTLINE; break;
-    case FC_DECORATIVE_OBJECT:
-       i = MATCH_DECORATIVE; break;
-    default:
-       if (include_lang)
-       {
-           switch (object) {
-           case FC_FAMILYLANG_OBJECT:
-           case FC_STYLELANG_OBJECT:
-           case FC_FULLNAMELANG_OBJECT:
-               i = MATCH_LANG; break;
-           }
+    if (include_lang)
+    {
+       switch (object) {
+       case FC_FAMILYLANG_OBJECT:
+       case FC_STYLELANG_OBJECT:
+       case FC_FULLNAMELANG_OBJECT:
+           object = FC_LANG_OBJECT;
+           break;
        }
     }
-
-    if (i < 0)
+    if (object > FC_MAX_BASE_OBJECT ||
+       !_FcMatchers[object].compare ||
+       _FcMatchers[object].strong == -1 ||
+       _FcMatchers[object].weak == -1)
        return NULL;
 
-    return _FcMatchers+i;
+    return _FcMatchers + object;
 }
 
 static FcBool
@@ -319,7 +376,7 @@ FcCompareValueList (FcObject             object,
     best = 1e99;
     bestStrong = 1e99;
     bestWeak = 1e99;
-    j = 1;
+    j = 0;
     for (v1 = v1orig; v1; v1 = FcValueListNext(v1))
     {
        for (v2 = v2orig, k = 0; v2; v2 = FcValueListNext(v2), k++)
@@ -390,7 +447,7 @@ FcCompare (FcPattern        *pat,
 {
     int                    i, i1, i2;
 
-    for (i = 0; i < NUM_MATCH_VALUES; i++)
+    for (i = 0; i < PRI_END; i++)
        value[i] = 0.0;
 
     i1 = 0;
@@ -427,7 +484,7 @@ FcFontRenderPrepare (FcConfig           *config,
 {
     FcPattern      *new;
     int                    i;
-    FcPatternElt    *fe, *pe, *fel, *pel;
+    FcPatternElt    *fe, *pe;
     FcValue        v;
     FcResult       result;
 
@@ -452,36 +509,25 @@ FcFontRenderPrepare (FcConfig         *config,
            fe->object == FC_STYLE_OBJECT ||
            fe->object == FC_FULLNAME_OBJECT)
        {
+           FcPatternElt    *fel, *pel;
+
            FC_ASSERT_STATIC ((FC_FAMILY_OBJECT + 1) == FC_FAMILYLANG_OBJECT);
            FC_ASSERT_STATIC ((FC_STYLE_OBJECT + 1) == FC_STYLELANG_OBJECT);
            FC_ASSERT_STATIC ((FC_FULLNAME_OBJECT + 1) == FC_FULLNAMELANG_OBJECT);
 
            fel = FcPatternObjectFindElt (font, fe->object + 1);
            pel = FcPatternObjectFindElt (pat, fe->object + 1);
-       }
-       else
-       {
-           fel = NULL;
-           pel = NULL;
-       }
-       pe = FcPatternObjectFindElt (pat, fe->object);
-       if (pe)
-       {
-           const FcMatcher *match = FcObjectToMatcher (pe->object, FcFalse);
 
-           if (!FcCompareValueList (pe->object, match,
-                                    FcPatternEltValues(pe),
-                                    FcPatternEltValues(fe), &v, NULL, NULL, &result))
-           {
-               FcPatternDestroy (new);
-               return NULL;
-           }
            if (fel && pel)
            {
+               /* The font has name languages, and pattern asks for specific language(s).
+                * Match on language and and prefer that result.
+                * Note:  Currently the code only give priority to first matching language.
+                */
                int n = 1, j;
                FcValueListPtr l1, l2, ln = NULL, ll = NULL;
+               const FcMatcher *match = FcObjectToMatcher (pel->object, FcTrue);
 
-               match = FcObjectToMatcher (pel->object, FcTrue);
                if (!FcCompareValueList (pel->object, match,
                                         FcPatternEltValues (pel),
                                         FcPatternEltValues (fel), NULL, NULL, &n, &result))
@@ -524,9 +570,10 @@ FcFontRenderPrepare (FcConfig          *config,
            }
            else if (fel)
            {
+               /* Pattern doesn't ask for specific language.  Copy all for name and
+                * lang. */
                FcValueListPtr l1, l2;
 
-           copy_lang:
                l1 = FcValueListDuplicate (FcPatternEltValues (fe));
                l2 = FcValueListDuplicate (FcPatternEltValues (fel));
                FcPatternObjectListAdd (new, fe->object, l1, FcFalse);
@@ -535,22 +582,39 @@ FcFontRenderPrepare (FcConfig         *config,
                continue;
            }
        }
+
+       pe = FcPatternObjectFindElt (pat, fe->object);
+       if (pe)
+       {
+           const FcMatcher *match = FcObjectToMatcher (pe->object, FcFalse);
+           if (!FcCompareValueList (pe->object, match,
+                                    FcPatternEltValues(pe),
+                                    FcPatternEltValues(fe), &v, NULL, NULL, &result))
+           {
+               FcPatternDestroy (new);
+               return NULL;
+           }
+           FcPatternObjectAdd (new, fe->object, v, FcFalse);
+       }
        else
        {
-           if (fel)
-               goto copy_lang;
-           v = FcValueCanonicalize(&FcPatternEltValues (fe)->value);
+           FcPatternObjectListAdd (new, fe->object,
+                                   FcValueListDuplicate (FcPatternEltValues (fe)),
+                                   FcTrue);
        }
-       FcPatternObjectAdd (new, fe->object, v, FcFalse);
     }
     for (i = 0; i < pat->num; i++)
     {
        pe = &FcPatternElts(pat)[i];
        fe = FcPatternObjectFindElt (font, pe->object);
-       if (!fe)
+       if (!fe &&
+           pe->object != FC_FAMILYLANG_OBJECT &&
+           pe->object != FC_STYLELANG_OBJECT &&
+           pe->object != FC_FULLNAMELANG_OBJECT)
        {
-           v = FcValueCanonicalize(&FcPatternEltValues(pe)->value);
-           FcPatternObjectAdd (new, pe->object, v, FcTrue);
+           FcPatternObjectListAdd (new, pe->object,
+                                   FcValueListDuplicate (FcPatternEltValues(pe)),
+                                   FcFalse);
        }
     }
 
@@ -564,14 +628,14 @@ FcFontSetMatchInternal (FcFontSet   **sets,
                        FcPattern   *p,
                        FcResult    *result)
 {
-    double         score[NUM_MATCH_VALUES], bestscore[NUM_MATCH_VALUES];
+    double         score[PRI_END], bestscore[PRI_END];
     int                    f;
     FcFontSet      *s;
     FcPattern      *best;
     int                    i;
     int                    set;
 
-    for (i = 0; i < NUM_MATCH_VALUES; i++)
+    for (i = 0; i < PRI_END; i++)
        bestscore[i] = 0;
     best = 0;
     if (FcDebug () & FC_DBG_MATCH)
@@ -596,19 +660,19 @@ FcFontSetMatchInternal (FcFontSet   **sets,
            if (FcDebug () & FC_DBG_MATCHV)
            {
                printf ("Score");
-               for (i = 0; i < NUM_MATCH_VALUES; i++)
+               for (i = 0; i < PRI_END; i++)
                {
                    printf (" %g", score[i]);
                }
                printf ("\n");
            }
-           for (i = 0; i < NUM_MATCH_VALUES; i++)
+           for (i = 0; i < PRI_END; i++)
            {
                if (best && bestscore[i] < score[i])
                    break;
                if (!best || score[i] < bestscore[i])
                {
-                   for (i = 0; i < NUM_MATCH_VALUES; i++)
+                   for (i = 0; i < PRI_END; i++)
                        bestscore[i] = score[i];
                    best = s->fonts[f];
                    break;
@@ -619,7 +683,7 @@ FcFontSetMatchInternal (FcFontSet   **sets,
     if (FcDebug () & FC_DBG_MATCH)
     {
        printf ("Best score");
-       for (i = 0; i < NUM_MATCH_VALUES; i++)
+       for (i = 0; i < PRI_END; i++)
            printf (" %g", bestscore[i]);
        printf ("\n");
        FcPatternPrint (best);
@@ -695,7 +759,7 @@ FcFontMatch (FcConfig       *config,
 
 typedef struct _FcSortNode {
     FcPattern  *pattern;
-    double     score[NUM_MATCH_VALUES];
+    double     score[PRI_END];
 } FcSortNode;
 
 static int
@@ -708,7 +772,7 @@ FcSortCompare (const void *aa, const void *ab)
     double     ad = 0, bd = 0;
     int         i;
 
-    i = NUM_MATCH_VALUES;
+    i = PRI_END;
     while (i-- && (ad = *as++) == (bd = *bs++))
        ;
     return ad < bd ? -1 : ad > bd ? 1 : 0;
@@ -719,6 +783,7 @@ FcSortWalk (FcSortNode **n, int nnode, FcFontSet *fs, FcCharSet **csp, FcBool tr
 {
     FcBool ret = FcFalse;
     FcCharSet *cs;
+    int i;
 
     cs = 0;
     if (trim || csp)
@@ -728,7 +793,7 @@ FcSortWalk (FcSortNode **n, int nnode, FcFontSet *fs, FcCharSet **csp, FcBool tr
            goto bail;
     }
 
-    while (nnode--)
+    for (i = 0; i < nnode; i++)
     {
        FcSortNode      *node = *n++;
        FcBool          adds_chars = FcFalse;
@@ -752,7 +817,7 @@ FcSortWalk (FcSortNode **n, int nnode, FcFontSet *fs, FcCharSet **csp, FcBool tr
         * If this font isn't a subset of the previous fonts,
         * add it to the list
         */
-       if (!trim || adds_chars)
+       if (!i || !trim || adds_chars)
        {
            FcPatternReference (node->pattern);
            if (FcDebug () & FC_DBG_MATCHV)
@@ -873,7 +938,7 @@ FcFontSetSort (FcConfig         *config FC_UNUSED,
            if (FcDebug () & FC_DBG_MATCHV)
            {
                printf ("Score");
-               for (i = 0; i < NUM_MATCH_VALUES; i++)
+               for (i = 0; i < PRI_END; i++)
                {
                    printf (" %g", new->score[i]);
                }
@@ -900,7 +965,7 @@ FcFontSetSort (FcConfig         *config FC_UNUSED,
         * If this node matches any language, go check
         * which ones and satisfy those entries
         */
-       if (nodeps[f]->score[MATCH_LANG_INDEX] < 2000)
+       if (nodeps[f]->score[PRI_LANG] < 2000)
        {
            for (i = 0; i < nPatternLang; i++)
            {
@@ -930,7 +995,9 @@ FcFontSetSort (FcConfig         *config FC_UNUSED,
            }
        }
        if (!satisfies)
-           nodeps[f]->score[MATCH_LANG_INDEX] = 10000.0;
+       {
+           nodeps[f]->score[PRI_LANG] = 10000.0;
+       }
     }
 
     /*
index 2418189..1d8fe75 100644 (file)
@@ -29,7 +29,7 @@
 #include <stdio.h>
 
 static const FcObjectType FcObjects[] = {
-#define FC_OBJECT(NAME, Type) { FC_##NAME, Type },
+#define FC_OBJECT(NAME, Type, Cmp) { FC_##NAME, Type },
 #include "fcobjs.h"
 #undef FC_OBJECT
 };
@@ -76,6 +76,8 @@ FcObjectValidType (FcObject object, FcType type)
 
     if (t) {
        switch ((int) t->type) {
+       case FcTypeUnknown:
+           return FcTrue;
        case FcTypeDouble:
        case FcTypeInteger:
            if (type == FcTypeDouble || type == FcTypeInteger)
@@ -85,8 +87,12 @@ FcObjectValidType (FcObject object, FcType type)
            if (type == FcTypeLangSet || type == FcTypeString)
                return FcTrue;
            break;
+       case FcTypeRange:
+           if (type == FcTypeRange || type == FcTypeDouble)
+               return FcTrue;
+           break;
        default:
-           if (t->type == (unsigned int) -1 || type == t->type)
+           if (type == t->type)
                return FcTrue;
            break;
        }
@@ -130,6 +136,8 @@ static const FcConstant _FcBaseConstants[] = {
     { (FcChar8 *) "thin",          "weight",   FC_WEIGHT_THIN, },
     { (FcChar8 *) "extralight",            "weight",   FC_WEIGHT_EXTRALIGHT, },
     { (FcChar8 *) "ultralight",            "weight",   FC_WEIGHT_EXTRALIGHT, },
+    { (FcChar8 *) "demilight",     "weight",   FC_WEIGHT_DEMILIGHT, },
+    { (FcChar8 *) "semilight",     "weight",   FC_WEIGHT_DEMILIGHT, },
     { (FcChar8 *) "light",         "weight",   FC_WEIGHT_LIGHT, },
     { (FcChar8 *) "book",          "weight",   FC_WEIGHT_BOOK, },
     { (FcChar8 *) "regular",       "weight",   FC_WEIGHT_REGULAR, },
@@ -271,6 +279,8 @@ FcNameConvert (FcType type, FcChar8 *string)
 {
     FcValue    v;
     FcMatrix   m;
+    double     b, e;
+    char       *p;
 
     v.type = type;
     switch ((int) v.type) {
@@ -305,6 +315,20 @@ FcNameConvert (FcType type, FcChar8 *string)
        if (!v.u.l)
            v.type = FcTypeVoid;
        break;
+    case FcTypeRange:
+       if (sscanf ((char *) string, "(%lg %lg)", &b, &e) != 2)
+       {
+           v.u.d = strtod ((char *) string, &p);
+           if (p != NULL && p[0] != 0)
+           {
+               v.type = FcTypeVoid;
+               break;
+           }
+           v.type = FcTypeDouble;
+       }
+       else
+           v.u.r = FcRangeCreateDouble (b, e);
+       break;
     default:
        break;
     }
@@ -318,6 +342,12 @@ FcNameFindNext (const FcChar8 *cur, const char *delim, FcChar8 *save, FcChar8 *l
 
     while ((c = *cur))
     {
+       if (!isspace (c))
+           break;
+       ++cur;
+    }
+    while ((c = *cur))
+    {
        if (c == '\\')
        {
            ++cur;
@@ -412,6 +442,8 @@ FcNameParse (const FcChar8 *name)
                if ((c = FcNameGetConstant (save)))
                {
                    t = FcNameGetObjectType ((char *) c->object);
+                   if (t == NULL)
+                       goto bail2;
                    switch ((int) t->type) {
                    case FcTypeInteger:
                    case FcTypeDouble:
@@ -466,8 +498,10 @@ FcNameUnparseValue (FcStrBuf       *buf,
 {
     FcChar8    temp[1024];
     FcValue v = FcValueCanonicalize(v0);
+    FcRange r;
 
     switch (v.type) {
+    case FcTypeUnknown:
     case FcTypeVoid:
        return FcTrue;
     case FcTypeInteger:
@@ -490,6 +524,18 @@ FcNameUnparseValue (FcStrBuf       *buf,
        return FcNameUnparseLangSet (buf, v.u.l);
     case FcTypeFTFace:
        return FcTrue;
+    case FcTypeRange:
+       r = FcRangeCanonicalize (v.u.r);
+       if (!FcDoubleIsZero (r.u.d.begin) || !FcDoubleIsZero (r.u.d.end))
+       {
+           if (FcDoubleCmpEQ (r.u.d.begin, r.u.d.end))
+               sprintf ((char *) temp, "%g", r.u.d.begin);
+           else
+               sprintf ((char *) temp, "(%g %g)", r.u.d.begin, r.u.d.end);
+           return FcNameUnparseString (buf, temp, 0);
+       }
+       else
+           return FcTrue;
     }
     return FcFalse;
 }
@@ -522,12 +568,13 @@ FcNameUnparse (FcPattern *pat)
 FcChar8 *
 FcNameUnparseEscaped (FcPattern *pat, FcBool escape)
 {
-    FcStrBuf               buf;
-    FcChar8                buf_static[8192];
+    FcStrBuf               buf, buf2;
+    FcChar8                buf_static[8192], buf2_static[256];
     int                            i;
     FcPatternElt           *e;
 
     FcStrBufInit (&buf, buf_static, sizeof (buf_static));
+    FcStrBufInit (&buf2, buf2_static, sizeof (buf2_static));
     e = FcPatternObjectFindElt (pat, FC_FAMILY_OBJECT);
     if (e)
     {
@@ -537,10 +584,17 @@ FcNameUnparseEscaped (FcPattern *pat, FcBool escape)
     e = FcPatternObjectFindElt (pat, FC_SIZE_OBJECT);
     if (e)
     {
-       if (!FcNameUnparseString (&buf, (FcChar8 *) "-", 0))
+       FcChar8 *p;
+
+       if (!FcNameUnparseString (&buf2, (FcChar8 *) "-", 0))
            goto bail0;
-       if (!FcNameUnparseValueList (&buf, FcPatternEltValues(e), escape ? (FcChar8 *) FC_ESCAPE_FIXED : 0))
+       if (!FcNameUnparseValueList (&buf2, FcPatternEltValues(e), escape ? (FcChar8 *) FC_ESCAPE_FIXED : 0))
            goto bail0;
+       p = FcStrBufDoneStatic (&buf2);
+       FcStrBufDestroy (&buf2);
+       if (strlen ((const char *)p) > 1)
+           if (!FcStrBufString (&buf, p))
+               goto bail0;
     }
     for (i = 0; i < NUM_OBJECT_TYPES; i++)
     {
index 146ca70..bad9824 100644 (file)
@@ -37,7 +37,7 @@ FcObjectTypeLookup (register const char *str, register unsigned int len);
 /* The 1000 is to leave some room for future added internal objects, such
  * that caches from newer fontconfig can still be used with older fontconfig
  * without getting confused. */
-static fc_atomic_int_t next_id = FC_MAX_BASE_OBJECT + 1000;
+static fc_atomic_int_t next_id = FC_MAX_BASE_OBJECT + FC_EXT_OBJ_INDEX;
 struct FcObjectOtherTypeInfo {
     struct FcObjectOtherTypeInfo *next;
     FcObjectType object;
@@ -63,7 +63,7 @@ retry:
            return NULL;
 
        ot->object.object = (const char *) FcStrdup (str);
-       ot->object.type = -1;
+       ot->object.type = FcTypeUnknown;
        ot->id = fc_atomic_int_add (next_id, +1);
        ot->next = ots;
 
index 1e9067e..573fa61 100644 (file)
@@ -1,44 +1,72 @@
+/*
+ * fontconfig/src/fcobjs.h
+ *
+ * Copyright © 2000 Keith Packard
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission.  The authors make no
+ * representations about the suitability of this software for any purpose.  It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
 /* DON'T REORDER!  The order is part of the cache signature. */
-FC_OBJECT (FAMILY,             FcTypeString)
-FC_OBJECT (FAMILYLANG,         FcTypeString)
-FC_OBJECT (STYLE,              FcTypeString)
-FC_OBJECT (STYLELANG,          FcTypeString)
-FC_OBJECT (FULLNAME,           FcTypeString)
-FC_OBJECT (FULLNAMELANG,       FcTypeString)
-FC_OBJECT (SLANT,              FcTypeInteger)
-FC_OBJECT (WEIGHT,             FcTypeInteger)
-FC_OBJECT (WIDTH,              FcTypeInteger)
-FC_OBJECT (SIZE,               FcTypeDouble)
-FC_OBJECT (ASPECT,             FcTypeDouble)
-FC_OBJECT (PIXEL_SIZE,         FcTypeDouble)
-FC_OBJECT (SPACING,            FcTypeInteger)
-FC_OBJECT (FOUNDRY,            FcTypeString)
-FC_OBJECT (ANTIALIAS,          FcTypeBool)
-FC_OBJECT (HINT_STYLE,         FcTypeInteger)
-FC_OBJECT (HINTING,            FcTypeBool)
-FC_OBJECT (VERTICAL_LAYOUT,    FcTypeBool)
-FC_OBJECT (AUTOHINT,           FcTypeBool)
-FC_OBJECT (GLOBAL_ADVANCE,     FcTypeBool)     /* deprecated */
-FC_OBJECT (FILE,               FcTypeString)
-FC_OBJECT (INDEX,              FcTypeInteger)
-FC_OBJECT (RASTERIZER,         FcTypeString)
-FC_OBJECT (OUTLINE,            FcTypeBool)
-FC_OBJECT (SCALABLE,           FcTypeBool)
-FC_OBJECT (DPI,                        FcTypeDouble)
-FC_OBJECT (RGBA,               FcTypeInteger)
-FC_OBJECT (SCALE,              FcTypeDouble)
-FC_OBJECT (MINSPACE,           FcTypeBool)
-FC_OBJECT (CHAR_WIDTH,         FcTypeInteger)
-FC_OBJECT (CHAR_HEIGHT,                FcTypeInteger)
-FC_OBJECT (MATRIX,             FcTypeMatrix)
-FC_OBJECT (CHARSET,            FcTypeCharSet)
-FC_OBJECT (LANG,               FcTypeLangSet)
-FC_OBJECT (FONTVERSION,                FcTypeInteger)
-FC_OBJECT (CAPABILITY,         FcTypeString)
-FC_OBJECT (FONTFORMAT,         FcTypeString)
-FC_OBJECT (EMBOLDEN,           FcTypeBool)
-FC_OBJECT (EMBEDDED_BITMAP,    FcTypeBool)
-FC_OBJECT (DECORATIVE,         FcTypeBool)
-FC_OBJECT (LCD_FILTER,         FcTypeInteger)
-FC_OBJECT (NAMELANG,           FcTypeString)
+FC_OBJECT (FAMILY,             FcTypeString,   FcCompareFamily)
+FC_OBJECT (FAMILYLANG,         FcTypeString,   NULL)
+FC_OBJECT (STYLE,              FcTypeString,   FcCompareString)
+FC_OBJECT (STYLELANG,          FcTypeString,   NULL)
+FC_OBJECT (FULLNAME,           FcTypeString,   NULL)
+FC_OBJECT (FULLNAMELANG,       FcTypeString,   NULL)
+FC_OBJECT (SLANT,              FcTypeInteger,  FcCompareNumber)
+FC_OBJECT (WEIGHT,             FcTypeInteger,  FcCompareNumber)
+FC_OBJECT (WIDTH,              FcTypeInteger,  FcCompareNumber)
+FC_OBJECT (SIZE,               FcTypeRange,    FcCompareSizeRange)
+FC_OBJECT (ASPECT,             FcTypeDouble,   NULL)
+FC_OBJECT (PIXEL_SIZE,         FcTypeDouble,   FcCompareSize)
+FC_OBJECT (SPACING,            FcTypeInteger,  FcCompareNumber)
+FC_OBJECT (FOUNDRY,            FcTypeString,   FcCompareString)
+FC_OBJECT (ANTIALIAS,          FcTypeBool,     FcCompareBool)
+FC_OBJECT (HINT_STYLE,         FcTypeInteger,  NULL)
+FC_OBJECT (HINTING,            FcTypeBool,     NULL)
+FC_OBJECT (VERTICAL_LAYOUT,    FcTypeBool,     NULL)
+FC_OBJECT (AUTOHINT,           FcTypeBool,     NULL)
+FC_OBJECT (GLOBAL_ADVANCE,     FcTypeBool,     NULL)   /* deprecated */
+FC_OBJECT (FILE,               FcTypeString,   FcCompareFilename)
+FC_OBJECT (INDEX,              FcTypeInteger,  NULL)
+FC_OBJECT (RASTERIZER,         FcTypeString,   FcCompareString)        /* deprecated */
+FC_OBJECT (OUTLINE,            FcTypeBool,     FcCompareBool)
+FC_OBJECT (SCALABLE,           FcTypeBool,     FcCompareBool)
+FC_OBJECT (DPI,                        FcTypeDouble,   NULL)
+FC_OBJECT (RGBA,               FcTypeInteger,  NULL)
+FC_OBJECT (SCALE,              FcTypeDouble,   NULL)
+FC_OBJECT (MINSPACE,           FcTypeBool,     NULL)
+FC_OBJECT (CHAR_WIDTH,         FcTypeInteger,  NULL)
+FC_OBJECT (CHAR_HEIGHT,                FcTypeInteger,  NULL)
+FC_OBJECT (MATRIX,             FcTypeMatrix,   NULL)
+FC_OBJECT (CHARSET,            FcTypeCharSet,  FcCompareCharSet)
+FC_OBJECT (LANG,               FcTypeLangSet,  FcCompareLang)
+FC_OBJECT (FONTVERSION,                FcTypeInteger,  FcCompareNumber)
+FC_OBJECT (CAPABILITY,         FcTypeString,   NULL)
+FC_OBJECT (FONTFORMAT,         FcTypeString,   FcCompareString)
+FC_OBJECT (EMBOLDEN,           FcTypeBool,     NULL)
+FC_OBJECT (EMBEDDED_BITMAP,    FcTypeBool,     NULL)
+FC_OBJECT (DECORATIVE,         FcTypeBool,     FcCompareBool)
+FC_OBJECT (LCD_FILTER,         FcTypeInteger,  NULL)
+FC_OBJECT (NAMELANG,           FcTypeString,   NULL)
+FC_OBJECT (FONT_FEATURES,      FcTypeString,   NULL)
+FC_OBJECT (PRGNAME,            FcTypeString,   NULL)
+FC_OBJECT (HASH,               FcTypeString,   NULL)   /* deprecated */
+FC_OBJECT (POSTSCRIPT_NAME,    FcTypeString,   FcComparePostScript)
+FC_OBJECT (COLOR,              FcTypeBool,     FcCompareBool)
 /* ^-------------- Add new objects here. */
index a9575d0..6bc62df 100644 (file)
@@ -57,3 +57,8 @@ int id;
 "decorative",FC_DECORATIVE_OBJECT
 "lcdfilter",FC_LCD_FILTER_OBJECT
 "namelang",FC_NAMELANG_OBJECT
+"fontfeatures",FC_FONT_FEATURES_OBJECT
+"prgname",FC_PRGNAME_OBJECT
+"hash",FC_HASH_OBJECT
+"postscriptname",FC_POSTSCRIPT_NAME_OBJECT
+"color",FC_COLOR_OBJECT
index dafac1b..1765c94 100644 (file)
@@ -1,3 +1,26 @@
+/*
+ * fontconfig/src/fcobjshash.gperf.h
+ *
+ * Copyright © 2000 Keith Packard
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission.  The authors make no
+ * representations about the suitability of this software for any purpose.  It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
 %{
 CUT_OUT_BEGIN
 #include <fontconfig/fontconfig.h>
@@ -21,6 +44,6 @@ struct FcObjectTypeInfo {
 };
 
 %%
-#define FC_OBJECT(NAME, Type) FC_##NAME, FC_##NAME##_OBJECT
+#define FC_OBJECT(NAME, Type, Cmp) FC_##NAME, FC_##NAME##_OBJECT
 #include "fcobjs.h"
 #undef FC_OBJECT
index a0cd9ab..dbaee96 100644 (file)
@@ -37,7 +37,7 @@ int name;
 int id;
 };
 #include <string.h>
-/* maximum key range = 51, duplicates = 0 */
+/* maximum key range = 52, duplicates = 0 */
 
 #ifdef __GNUC__
 __inline
@@ -51,46 +51,46 @@ FcObjectTypeHash (register const char *str, register unsigned int len)
 {
   static const unsigned char asso_values[] =
     {
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 15, 24, 14,
-      16, 29, 54, 13,  8,  0, 54, 54,  0,  6,
-       7,  0,  0, 54,  0, 17,  3,  0, 54, 54,
-       0, 28,  1, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
-      54, 54, 54, 54, 54, 54
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 17, 12,  1,
+      35,  0, 56, 27, 15,  0, 56, 56,  0,  7,
+       7,  0, 22, 56, 21, 10, 13,  0, 56, 56,
+       1, 26,  5, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
+      56, 56, 56, 56, 56, 56
     };
   return len + asso_values[(unsigned char)str[2]] + asso_values[(unsigned char)str[1]];
 }
 
 struct FcObjectTypeNamePool_t
   {
-    char FcObjectTypeNamePool_str3[sizeof("dpi")];
     char FcObjectTypeNamePool_str4[sizeof("file")];
-    char FcObjectTypeNamePool_str5[sizeof("size")];
+    char FcObjectTypeNamePool_str5[sizeof("color")];
+    char FcObjectTypeNamePool_str6[sizeof("weight")];
     char FcObjectTypeNamePool_str7[sizeof("foundry")];
     char FcObjectTypeNamePool_str8[sizeof("fullname")];
-    char FcObjectTypeNamePool_str9[sizeof("pixelsize")];
-    char FcObjectTypeNamePool_str10[sizeof("outline")];
-    char FcObjectTypeNamePool_str11[sizeof("autohint")];
+    char FcObjectTypeNamePool_str9[sizeof("size")];
+    char FcObjectTypeNamePool_str10[sizeof("pixelsize")];
+    char FcObjectTypeNamePool_str11[sizeof("decorative")];
     char FcObjectTypeNamePool_str12[sizeof("fullnamelang")];
     char FcObjectTypeNamePool_str13[sizeof("globaladvance")];
     char FcObjectTypeNamePool_str14[sizeof("hinting")];
@@ -98,44 +98,49 @@ struct FcObjectTypeNamePool_t
     char FcObjectTypeNamePool_str16[sizeof("hintstyle")];
     char FcObjectTypeNamePool_str17[sizeof("fontformat")];
     char FcObjectTypeNamePool_str18[sizeof("fontversion")];
-    char FcObjectTypeNamePool_str19[sizeof("antialias")];
-    char FcObjectTypeNamePool_str20[sizeof("slant")];
-    char FcObjectTypeNamePool_str21[sizeof("width")];
-    char FcObjectTypeNamePool_str22[sizeof("spacing")];
-    char FcObjectTypeNamePool_str23[sizeof("aspect")];
-    char FcObjectTypeNamePool_str24[sizeof("matrix")];
-    char FcObjectTypeNamePool_str25[sizeof("capability")];
-    char FcObjectTypeNamePool_str26[sizeof("lang")];
-    char FcObjectTypeNamePool_str27[sizeof("family")];
-    char FcObjectTypeNamePool_str28[sizeof("index")];
-    char FcObjectTypeNamePool_str29[sizeof("namelang")];
-    char FcObjectTypeNamePool_str30[sizeof("charset")];
-    char FcObjectTypeNamePool_str31[sizeof("familylang")];
-    char FcObjectTypeNamePool_str32[sizeof("charwidth")];
-    char FcObjectTypeNamePool_str33[sizeof("charheight")];
-    char FcObjectTypeNamePool_str34[sizeof("scale")];
-    char FcObjectTypeNamePool_str35[sizeof("weight")];
-    char FcObjectTypeNamePool_str36[sizeof("style")];
-    char FcObjectTypeNamePool_str37[sizeof("scalable")];
-    char FcObjectTypeNamePool_str38[sizeof("embolden")];
-    char FcObjectTypeNamePool_str39[sizeof("lcdfilter")];
-    char FcObjectTypeNamePool_str40[sizeof("stylelang")];
-    char FcObjectTypeNamePool_str41[sizeof("rgba")];
-    char FcObjectTypeNamePool_str42[sizeof("rasterizer")];
-    char FcObjectTypeNamePool_str43[sizeof("verticallayout")];
-    char FcObjectTypeNamePool_str44[sizeof("embeddedbitmap")];
-    char FcObjectTypeNamePool_str53[sizeof("decorative")];
+    char FcObjectTypeNamePool_str19[sizeof("fontfeatures")];
+    char FcObjectTypeNamePool_str20[sizeof("outline")];
+    char FcObjectTypeNamePool_str21[sizeof("autohint")];
+    char FcObjectTypeNamePool_str22[sizeof("slant")];
+    char FcObjectTypeNamePool_str23[sizeof("scale")];
+    char FcObjectTypeNamePool_str24[sizeof("postscriptname")];
+    char FcObjectTypeNamePool_str25[sizeof("dpi")];
+    char FcObjectTypeNamePool_str26[sizeof("scalable")];
+    char FcObjectTypeNamePool_str27[sizeof("embolden")];
+    char FcObjectTypeNamePool_str28[sizeof("lang")];
+    char FcObjectTypeNamePool_str29[sizeof("antialias")];
+    char FcObjectTypeNamePool_str30[sizeof("family")];
+    char FcObjectTypeNamePool_str31[sizeof("hash")];
+    char FcObjectTypeNamePool_str32[sizeof("namelang")];
+    char FcObjectTypeNamePool_str33[sizeof("embeddedbitmap")];
+    char FcObjectTypeNamePool_str34[sizeof("familylang")];
+    char FcObjectTypeNamePool_str35[sizeof("verticallayout")];
+    char FcObjectTypeNamePool_str36[sizeof("matrix")];
+    char FcObjectTypeNamePool_str37[sizeof("rasterizer")];
+    char FcObjectTypeNamePool_str38[sizeof("aspect")];
+    char FcObjectTypeNamePool_str39[sizeof("charset")];
+    char FcObjectTypeNamePool_str40[sizeof("width")];
+    char FcObjectTypeNamePool_str41[sizeof("charwidth")];
+    char FcObjectTypeNamePool_str42[sizeof("charheight")];
+    char FcObjectTypeNamePool_str43[sizeof("rgba")];
+    char FcObjectTypeNamePool_str44[sizeof("style")];
+    char FcObjectTypeNamePool_str45[sizeof("lcdfilter")];
+    char FcObjectTypeNamePool_str46[sizeof("spacing")];
+    char FcObjectTypeNamePool_str47[sizeof("index")];
+    char FcObjectTypeNamePool_str48[sizeof("stylelang")];
+    char FcObjectTypeNamePool_str49[sizeof("capability")];
+    char FcObjectTypeNamePool_str55[sizeof("prgname")];
   };
 static const struct FcObjectTypeNamePool_t FcObjectTypeNamePool_contents =
   {
-    "dpi",
     "file",
-    "size",
+    "color",
+    "weight",
     "foundry",
     "fullname",
+    "size",
     "pixelsize",
-    "outline",
-    "autohint",
+    "decorative",
     "fullnamelang",
     "globaladvance",
     "hinting",
@@ -143,33 +148,38 @@ static const struct FcObjectTypeNamePool_t FcObjectTypeNamePool_contents =
     "hintstyle",
     "fontformat",
     "fontversion",
-    "antialias",
+    "fontfeatures",
+    "outline",
+    "autohint",
     "slant",
-    "width",
-    "spacing",
-    "aspect",
-    "matrix",
-    "capability",
+    "scale",
+    "postscriptname",
+    "dpi",
+    "scalable",
+    "embolden",
     "lang",
+    "antialias",
     "family",
-    "index",
+    "hash",
     "namelang",
-    "charset",
+    "embeddedbitmap",
     "familylang",
+    "verticallayout",
+    "matrix",
+    "rasterizer",
+    "aspect",
+    "charset",
+    "width",
     "charwidth",
     "charheight",
-    "scale",
-    "weight",
+    "rgba",
     "style",
-    "scalable",
-    "embolden",
     "lcdfilter",
+    "spacing",
+    "index",
     "stylelang",
-    "rgba",
-    "rasterizer",
-    "verticallayout",
-    "embeddedbitmap",
-    "decorative"
+    "capability",
+    "prgname"
   };
 #define FcObjectTypeNamePool ((const char *) &FcObjectTypeNamePool_contents)
 #ifdef __GNUC__
@@ -183,33 +193,32 @@ FcObjectTypeLookup (register const char *str, register unsigned int len)
 {
   enum
     {
-      TOTAL_KEYWORDS = 42,
+      TOTAL_KEYWORDS = 47,
       MIN_WORD_LENGTH = 3,
       MAX_WORD_LENGTH = 14,
-      MIN_HASH_VALUE = 3,
-      MAX_HASH_VALUE = 53
+      MIN_HASH_VALUE = 4,
+      MAX_HASH_VALUE = 55
     };
 
   static const struct FcObjectTypeInfo wordlist[] =
     {
-      {-1}, {-1}, {-1},
-#line 43 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str3,FC_DPI_OBJECT},
+      {-1}, {-1}, {-1}, {-1},
 #line 38 "fcobjshash.gperf"
       {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str4,FC_FILE_OBJECT},
-#line 27 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str5,FC_SIZE_OBJECT},
-      {-1},
+#line 64 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str5,FC_COLOR_OBJECT},
+#line 25 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str6,FC_WEIGHT_OBJECT},
 #line 31 "fcobjshash.gperf"
       {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str7,FC_FOUNDRY_OBJECT},
 #line 22 "fcobjshash.gperf"
       {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str8,FC_FULLNAME_OBJECT},
+#line 27 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str9,FC_SIZE_OBJECT},
 #line 29 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str9,FC_PIXEL_SIZE_OBJECT},
-#line 41 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str10,FC_OUTLINE_OBJECT},
-#line 36 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str11,FC_AUTOHINT_OBJECT},
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str10,FC_PIXEL_SIZE_OBJECT},
+#line 57 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str11,FC_DECORATIVE_OBJECT},
 #line 23 "fcobjshash.gperf"
       {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str12,FC_FULLNAMELANG_OBJECT},
 #line 37 "fcobjshash.gperf"
@@ -224,61 +233,71 @@ FcObjectTypeLookup (register const char *str, register unsigned int len)
       {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str17,FC_FONTFORMAT_OBJECT},
 #line 52 "fcobjshash.gperf"
       {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str18,FC_FONTVERSION_OBJECT},
-#line 32 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str19,FC_ANTIALIAS_OBJECT},
+#line 60 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str19,FC_FONT_FEATURES_OBJECT},
+#line 41 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str20,FC_OUTLINE_OBJECT},
+#line 36 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str21,FC_AUTOHINT_OBJECT},
 #line 24 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str20,FC_SLANT_OBJECT},
-#line 26 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str21,FC_WIDTH_OBJECT},
-#line 30 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str22,FC_SPACING_OBJECT},
-#line 28 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str23,FC_ASPECT_OBJECT},
-#line 49 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str24,FC_MATRIX_OBJECT},
-#line 53 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str25,FC_CAPABILITY_OBJECT},
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str22,FC_SLANT_OBJECT},
+#line 45 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str23,FC_SCALE_OBJECT},
+#line 63 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str24,FC_POSTSCRIPT_NAME_OBJECT},
+#line 43 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str25,FC_DPI_OBJECT},
+#line 42 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str26,FC_SCALABLE_OBJECT},
+#line 55 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str27,FC_EMBOLDEN_OBJECT},
 #line 51 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str26,FC_LANG_OBJECT},
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str28,FC_LANG_OBJECT},
+#line 32 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str29,FC_ANTIALIAS_OBJECT},
 #line 18 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str27,FC_FAMILY_OBJECT},
-#line 39 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str28,FC_INDEX_OBJECT},
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str30,FC_FAMILY_OBJECT},
+#line 62 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str31,FC_HASH_OBJECT},
 #line 59 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str29,FC_NAMELANG_OBJECT},
-#line 50 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str30,FC_CHARSET_OBJECT},
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str32,FC_NAMELANG_OBJECT},
+#line 56 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str33,FC_EMBEDDED_BITMAP_OBJECT},
 #line 19 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str31,FC_FAMILYLANG_OBJECT},
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str34,FC_FAMILYLANG_OBJECT},
+#line 35 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str35,FC_VERTICAL_LAYOUT_OBJECT},
+#line 49 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str36,FC_MATRIX_OBJECT},
+#line 40 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str37,FC_RASTERIZER_OBJECT},
+#line 28 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str38,FC_ASPECT_OBJECT},
+#line 50 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str39,FC_CHARSET_OBJECT},
+#line 26 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str40,FC_WIDTH_OBJECT},
 #line 47 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str32,FC_CHAR_WIDTH_OBJECT},
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str41,FC_CHAR_WIDTH_OBJECT},
 #line 48 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str33,FC_CHAR_HEIGHT_OBJECT},
-#line 45 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str34,FC_SCALE_OBJECT},
-#line 25 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str35,FC_WEIGHT_OBJECT},
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str42,FC_CHAR_HEIGHT_OBJECT},
+#line 44 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str43,FC_RGBA_OBJECT},
 #line 20 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str36,FC_STYLE_OBJECT},
-#line 42 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str37,FC_SCALABLE_OBJECT},
-#line 55 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str38,FC_EMBOLDEN_OBJECT},
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str44,FC_STYLE_OBJECT},
 #line 58 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str39,FC_LCD_FILTER_OBJECT},
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str45,FC_LCD_FILTER_OBJECT},
+#line 30 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str46,FC_SPACING_OBJECT},
+#line 39 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str47,FC_INDEX_OBJECT},
 #line 21 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str40,FC_STYLELANG_OBJECT},
-#line 44 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str41,FC_RGBA_OBJECT},
-#line 40 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str42,FC_RASTERIZER_OBJECT},
-#line 35 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str43,FC_VERTICAL_LAYOUT_OBJECT},
-#line 56 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str44,FC_EMBEDDED_BITMAP_OBJECT},
-      {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
-#line 57 "fcobjshash.gperf"
-      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str53,FC_DECORATIVE_OBJECT}
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str48,FC_STYLELANG_OBJECT},
+#line 53 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str49,FC_CAPABILITY_OBJECT},
+      {-1}, {-1}, {-1}, {-1}, {-1},
+#line 61 "fcobjshash.gperf"
+      {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str55,FC_PRGNAME_OBJECT}
     };
 
   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
index b3b155d..7e7d54a 100644 (file)
@@ -33,6 +33,7 @@ FcPatternCreate (void)
     p = (FcPattern *) malloc (sizeof (FcPattern));
     if (!p)
        return 0;
+    memset (p, 0, sizeof (FcPattern));
     p->num = 0;
     p->size = 0;
     p->elts_offset = FcPtrToOffset (p, NULL);
@@ -56,6 +57,9 @@ FcValueDestroy (FcValue v)
     case FcTypeLangSet:
        FcLangSetDestroy ((FcLangSet *) v.u.l);
        break;
+    case FcTypeRange:
+       FcRangeDestroy ((FcRange *) v.u.r);
+       break;
     default:
        break;
     }
@@ -80,6 +84,10 @@ FcValueCanonicalize (const FcValue *v)
        new.u.l = FcValueLangSet(v);
        new.type = FcTypeLangSet;
        break;
+    case FcTypeRange:
+       new.u.r = FcValueRange(v);
+       new.type = FcTypeRange;
+       break;
     default:
        new = *v;
        break;
@@ -111,6 +119,11 @@ FcValueSave (FcValue v)
        if (!v.u.l)
            v.type = FcTypeVoid;
        break;
+    case FcTypeRange:
+       v.u.r = FcRangeCopy (v.u.r);
+       if (!v.u.r)
+           v.type = FcTypeVoid;
+       break;
     default:
        break;
     }
@@ -144,6 +157,9 @@ FcValueListDestroy (FcValueListPtr l)
            FcLangSetDestroy
                ((FcLangSet *) (l->value.u.l));
            break;
+       case FcTypeRange:
+           FcRangeDestroy ((FcRange *) (l->value.u.r));
+           break;
        default:
            break;
        }
@@ -246,6 +262,8 @@ FcValueEqual (FcValue va, FcValue vb)
            return FcFalse;
     }
     switch (va.type) {
+    case FcTypeUnknown:
+       return FcFalse; /* don't know how to compare this object */
     case FcTypeVoid:
        return FcTrue;
     case FcTypeInteger:
@@ -264,6 +282,8 @@ FcValueEqual (FcValue va, FcValue vb)
        return va.u.f == vb.u.f;
     case FcTypeLangSet:
        return FcLangSetEqual (va.u.l, vb.u.l);
+    case FcTypeRange:
+       return FcRangeIsInRange (va.u.r, vb.u.r);
     }
     return FcFalse;
 }
@@ -294,6 +314,7 @@ static FcChar32
 FcValueHash (const FcValue *v)
 {
     switch (v->type) {
+    case FcTypeUnknown:
     case FcTypeVoid:
        return 0;
     case FcTypeInteger:
@@ -316,8 +337,10 @@ FcValueHash (const FcValue *v)
               FcStringHash ((const FcChar8 *) ((FT_Face) v->u.f)->style_name);
     case FcTypeLangSet:
        return FcLangSetHash (FcValueLangSet(v));
+    case FcTypeRange:
+       return FcRangeHash (v->u.r);
     }
-    return FcFalse;
+    return 0;
 }
 
 static FcBool
@@ -837,12 +860,30 @@ FcPatternAddLangSet (FcPattern *p, const char *object, const FcLangSet *ls)
     return FcPatternAdd (p, object, v, FcTrue);
 }
 
+FcBool
+FcPatternObjectAddRange (FcPattern *p, FcObject object, const FcRange *r)
+{
+    FcValue v;
+
+    v.type = FcTypeRange;
+    v.u.r = (FcRange *)r;
+    return FcPatternObjectAdd (p, object, v, FcTrue);
+}
+
+FcBool
+FcPatternAddRange (FcPattern *p, const char *object, const FcRange *r)
+{
+    return FcPatternObjectAddRange (p, FcObjectFromName (object), r);
+}
+
 FcResult
 FcPatternObjectGet (const FcPattern *p, FcObject object, int id, FcValue *v)
 {
     FcPatternElt   *e;
     FcValueListPtr l;
 
+    if (!p)
+       return FcResultNoMatch;
     e = FcPatternObjectFindElt (p, object);
     if (!e)
        return FcResultNoMatch;
@@ -1019,6 +1060,31 @@ FcPatternGetLangSet(const FcPattern *p, const char *object, int id, FcLangSet **
     return FcResultMatch;
 }
 
+FcResult
+FcPatternObjectGetRange (const FcPattern *p, FcObject object, int id, FcRange **r)
+{
+    FcValue    v;
+    FcResult   res;
+
+    res = FcPatternObjectGet (p, object, id, &v);
+    if (res != FcResultMatch)
+       return res;
+    switch ((int)v.type) {
+    case FcTypeRange:
+       *r = (FcRange *)v.u.r;
+       break;
+    default:
+       return FcResultTypeMismatch;
+    }
+    return FcResultMatch;
+}
+
+FcResult
+FcPatternGetRange (const FcPattern *p, const char *object, int id, FcRange **r)
+{
+    return FcPatternObjectGetRange (p, FcObjectFromName (object), id, r);
+}
+
 FcPattern *
 FcPatternDuplicate (const FcPattern *orig)
 {
@@ -1224,6 +1290,10 @@ FcValueListSerializeAlloc (FcSerialize *serialize, const FcValueList *vl)
            if (!FcLangSetSerializeAlloc (serialize, vl->value.u.l))
                return FcFalse;
            break;
+       case FcTypeRange:
+           if (!FcRangeSerializeAlloc (serialize, vl->value.u.r))
+               return FcFalse;
+           break;
        default:
            break;
        }
@@ -1239,6 +1309,7 @@ FcValueListSerialize (FcSerialize *serialize, const FcValueList *vl)
     FcChar8    *s_serialized;
     FcCharSet  *c_serialized;
     FcLangSet  *l_serialized;
+    FcRange    *r_serialized;
     FcValueList        *head_serialized = NULL;
     FcValueList        *prev_serialized = NULL;
 
@@ -1297,6 +1368,14 @@ FcValueListSerialize (FcSerialize *serialize, const FcValueList *vl)
                                                             l_serialized,
                                                             FcLangSet);
            break;
+       case FcTypeRange:
+           r_serialized = FcRangeSerialize (serialize, vl->value.u.r);
+           if (!r_serialized)
+               return NULL;
+           vl_serialized->value.u.r = FcPtrToEncodedOffset (&vl_serialized->value,
+                                                            r_serialized,
+                                                            FcRange);
+           break;
        default:
            break;
        }
@@ -1305,6 +1384,7 @@ FcValueListSerialize (FcSerialize *serialize, const FcValueList *vl)
     }
     return head_serialized;
 }
+
 #define __fcpat__
 #include "fcaliastail.h"
 #include "fcftaliastail.h"
diff --git a/src/fcrange.c b/src/fcrange.c
new file mode 100644 (file)
index 0000000..37cf067
--- /dev/null
@@ -0,0 +1,234 @@
+/*
+ * fontconfig/src/fcrange.c
+ *
+ * Copyright © 2002 Keith Packard
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission.  The authors make no
+ * representations about the suitability of this software for any purpose.  It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#include "fcint.h"
+
+
+FcRange *
+FcRangeCreateDouble (double begin, double end)
+{
+    FcRange *ret = malloc (sizeof (FcRange));
+
+    if (ret)
+    {
+       ret->is_double = FcTrue;
+       ret->is_inclusive = FcDoubleCmpEQ (begin, end);
+       ret->u.d.begin = begin;
+       ret->u.d.end = end;
+    }
+
+    return ret;
+}
+
+FcRange *
+FcRangeCreateInteger (FcChar32 begin, FcChar32 end)
+{
+    FcRange *ret = malloc (sizeof (FcRange));
+
+    if (ret)
+    {
+       ret->is_double = FcFalse;
+       ret->is_inclusive = (begin == end);
+       ret->u.i.begin = begin;
+       ret->u.i.end = end;
+    }
+
+    return ret;
+}
+
+void
+FcRangeDestroy (FcRange *range)
+{
+    free (range);
+}
+
+FcRange *
+FcRangeCopy (const FcRange *range)
+{
+    FcRange *ret;
+
+    if (range->is_double)
+       ret = FcRangeCreateDouble (range->u.d.begin, range->u.d.end);
+    else
+       ret = FcRangeCreateInteger (range->u.i.begin, range->u.i.end);
+
+    return ret;
+}
+
+FcBool
+FcRangeGetDouble(const FcRange *range, double *begin, double *end)
+{
+    if (!range)
+       return FcFalse;
+    if (range->is_double)
+    {
+       if (begin)
+           *begin = range->u.d.begin;
+       if (end)
+           *end = range->u.d.end;
+    }
+    else
+    {
+       if (begin)
+           *begin = (double)range->u.i.begin;
+       if (end)
+           *end = (double)range->u.i.end;
+    }
+
+    return FcTrue;
+}
+
+FcRange
+FcRangeCanonicalize (const FcRange *range)
+{
+    FcRange new;
+
+    if (range->is_double)
+       new = *range;
+    else
+    {
+       new.is_double = FcTrue;
+       new.is_inclusive = range->is_inclusive;
+       new.u.d.begin = (double)range->u.i.begin;
+       new.u.d.end = (double)range->u.i.end;
+    }
+    return new;
+}
+
+FcRange *
+FcRangePromote (double v, FcValuePromotionBuffer *vbuf)
+{
+    typedef struct {
+       FcRange r;
+    } FcRangePromotionBuffer;
+    FcRangePromotionBuffer *buf = (FcRangePromotionBuffer *) vbuf;
+
+    FC_ASSERT_STATIC (sizeof (FcRangePromotionBuffer) <= sizeof (FcValuePromotionBuffer));
+    buf->r.is_double = FcTrue;
+    buf->r.is_inclusive = FcTrue;
+    buf->r.u.d.begin = v;
+    buf->r.u.d.end = v;
+
+    return &buf->r;
+}
+
+FcBool
+FcRangeIsZero (const FcRange *r)
+{
+    FcRange c;
+
+    if (!r)
+       return FcFalse;
+    c = FcRangeCanonicalize (r);
+
+    return FcDoubleIsZero (c.u.d.begin) && FcDoubleIsZero (c.u.d.end);
+}
+
+FcBool
+FcRangeIsInRange (const FcRange *a, const FcRange *b)
+{
+    FcRange ca, cb;
+    FcBool f;
+
+    if (!a || !b)
+       return FcFalse;
+
+    ca = FcRangeCanonicalize (a);
+    cb = FcRangeCanonicalize (b);
+    if (ca.is_inclusive & cb.is_inclusive)
+       f = ca.u.d.end <= cb.u.d.end;
+    else
+       f = ca.u.d.end < cb.u.d.end;
+
+    return FcDoubleCmpGE (ca.u.d.begin, cb.u.d.begin) && f;
+}
+
+FcBool
+FcRangeCompare (FcOp op, const FcRange *a, const FcRange *b)
+{
+    FcRange ca, cb;
+
+    switch ((int) op) {
+    case FcOpEqual:
+    case FcOpContains:
+    case FcOpListing:
+       return FcRangeIsInRange (a, b);
+    case FcOpNotEqual:
+    case FcOpNotContains:
+       return !FcRangeIsInRange (a, b);
+    case FcOpLess:
+       ca = FcRangeCanonicalize (a);
+       cb = FcRangeCanonicalize (b);
+       return ca.u.d.begin < cb.u.d.begin;
+    case FcOpLessEqual:
+       ca = FcRangeCanonicalize (a);
+       cb = FcRangeCanonicalize (b);
+       return FcDoubleCmpLE (ca.u.d.begin, cb.u.d.begin);
+    case FcOpMore:
+       ca = FcRangeCanonicalize (a);
+       cb = FcRangeCanonicalize (b);
+       return ca.u.d.end > cb.u.d.end;
+    case FcOpMoreEqual:
+       ca = FcRangeCanonicalize (a);
+       cb = FcRangeCanonicalize (b);
+       return FcDoubleCmpGE (ca.u.d.end, cb.u.d.end);
+    default:
+       break;
+    }
+    return FcFalse;
+}
+
+FcChar32
+FcRangeHash (const FcRange *r)
+{
+    FcRange c = FcRangeCanonicalize (r);
+    int b = (int) (c.u.d.begin * 100);
+    int e = (int) (c.u.d.end * 100);
+
+    return b ^ (b << 1) ^ (e << 9);
+}
+
+FcBool
+FcRangeSerializeAlloc (FcSerialize *serialize, const FcRange *r)
+{
+    if (!FcSerializeAlloc (serialize, r, sizeof (FcRange)))
+       return FcFalse;
+    return FcTrue;
+}
+
+FcRange *
+FcRangeSerialize (FcSerialize *serialize, const FcRange *r)
+{
+    FcRange *r_serialize = FcSerializePtr (serialize, r);
+
+    if (!r_serialize)
+       return NULL;
+    memcpy (r_serialize, r, sizeof (FcRange));
+
+    return r_serialize;
+}
+
+#define __fcrange__
+#include "fcaliastail.h"
+#undef __fcrange__
index 390f45c..1734fa4 100644 (file)
@@ -20,9 +20,6 @@
  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  * PERFORMANCE OF THIS SOFTWARE.
  */
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
 #include "fcint.h"
 #include "fcarch.h"
 #include <dirent.h>
@@ -33,6 +30,9 @@
 #ifdef HAVE_SYS_VFS_H
 #include <sys/vfs.h>
 #endif
+#ifdef HAVE_SYS_STATVFS_H
+#include <sys/statvfs.h>
+#endif
 #ifdef HAVE_SYS_STATFS_H
 #include <sys/statfs.h>
 #endif
@@ -42,6 +42,7 @@
 #ifdef HAVE_SYS_MOUNT_H
 #include <sys/mount.h>
 #endif
+#include <errno.h>
 
 #ifdef _WIN32
 #ifdef __GNUC__
@@ -170,20 +171,93 @@ FcDirChecksumScandirSorter(const struct dirent **lhs, const struct dirent **rhs)
     return strcmp((*lhs)->d_name, (*rhs)->d_name);
 }
 
+static void
+free_dirent (struct dirent **p)
+{
+    struct dirent **x;
+
+    for (x = p; *x != NULL; x++)
+       free (*x);
+
+    free (p);
+}
+
+int
+FcScandir (const char          *dirp,
+          struct dirent        ***namelist,
+          int (*filter) (const struct dirent *),
+          int (*compar) (const struct dirent **, const struct dirent **));
+
+int
+FcScandir (const char          *dirp,
+          struct dirent        ***namelist,
+          int (*filter) (const struct dirent *),
+          int (*compar) (const struct dirent **, const struct dirent **))
+{
+    DIR *d;
+    struct dirent *dent, *p, **dlist, **dlp;
+    size_t lsize = 128, n = 0;
+
+    d = opendir (dirp);
+    if (!d)
+       return -1;
+
+    dlist = (struct dirent **) malloc (sizeof (struct dirent *) * lsize);
+    if (!dlist)
+    {
+       closedir (d);
+       errno = ENOMEM;
+
+       return -1;
+    }
+    *dlist = NULL;
+    while ((dent = readdir (d)))
+    {
+       if (!filter || (filter) (dent))
+       {
+           size_t dentlen = FcPtrToOffset (dent, dent->d_name) + strlen (dent->d_name) + 1;
+           dentlen = ((dentlen + ALIGNOF_VOID_P - 1) & ~(ALIGNOF_VOID_P - 1));
+           p = (struct dirent *) malloc (dentlen);
+           memcpy (p, dent, dentlen);
+           if ((n + 1) >= lsize)
+           {
+               lsize += 128;
+               dlp = (struct dirent **) realloc (dlist, sizeof (struct dirent *) * lsize);
+               if (!dlp)
+               {
+                   free_dirent (dlist);
+                   closedir (d);
+                   errno = ENOMEM;
+
+                   return -1;
+               }
+               dlist = dlp;
+           }
+           dlist[n++] = p;
+           dlist[n] = NULL;
+       }
+    }
+    closedir (d);
+
+    qsort (dlist, n, sizeof (struct dirent *), (int (*) (const void *, const void *))compar);
+
+    *namelist = dlist;
+
+    return n;
+}
+
 static int
 FcDirChecksum (const FcChar8 *dir, time_t *checksum)
 {
     struct Adler32 ctx;
     struct dirent **files;
     int n;
-#ifndef HAVE_STRUCT_DIRENT_D_TYPE
     int ret = 0;
     size_t len = strlen ((const char *)dir);
-#endif
 
     Adler32Init (&ctx);
 
-    n = scandir ((const char *)dir, &files,
+    n = FcScandir ((const char *)dir, &files,
 #ifdef HAVE_STRUCT_DIRENT_D_TYPE
                 &FcDirChecksumScandirFilter,
 #else
@@ -200,7 +274,9 @@ FcDirChecksum (const FcChar8 *dir, time_t *checksum)
 
 #ifdef HAVE_STRUCT_DIRENT_D_TYPE
        dtype = files[n]->d_type;
-#else
+       if (dtype == DT_UNKNOWN)
+       {
+#endif
        struct stat statb;
        char f[PATH_MAX + 1];
 
@@ -217,20 +293,18 @@ FcDirChecksum (const FcChar8 *dir, time_t *checksum)
            goto bail;
 
        dtype = statb.st_mode;
+#ifdef HAVE_STRUCT_DIRENT_D_TYPE
+       }
 #endif
        Adler32Update (&ctx, files[n]->d_name, dlen + 1);
        Adler32Update (&ctx, (char *)&dtype, sizeof (int));
 
-#ifndef HAVE_STRUCT_DIRENT_D_TYPE
       bail:
-#endif
        free (files[n]);
     }
     free (files);
-#ifndef HAVE_STRUCT_DIRENT_D_TYPE
     if (ret == -1)
        return -1;
-#endif
 
     *checksum = Adler32Finish (&ctx);
 
@@ -352,3 +426,7 @@ FcIsFsMtimeBroken (const FcChar8 *dir)
 
     return FcFalse;
 }
+
+#define __fcstat__
+#include "fcaliastail.h"
+#undef __fcstat__
index 5e8fa31..d33e70a 100644 (file)
@@ -1,8 +1,8 @@
 #ifndef _FONTCONFIG_SRC_FCSTDINT_H
 #define _FONTCONFIG_SRC_FCSTDINT_H 1
 #ifndef _GENERATED_STDINT_H
-#define _GENERATED_STDINT_H "fontconfig 2.10.91"
-/* generated using gnu compiler gcc (GCC) 4.7.2 20121109 (Red Hat 4.7.2-8) */
+#define _GENERATED_STDINT_H "fontconfig 2.11.93"
+/* generated using gnu compiler gcc (GCC) 4.9.2 20150212 (Red Hat 4.9.2-6) */
 #define _STDINT_HAVE_STDINT_H 1
 #include <stdint.h>
 #endif
index 414d6dd..29a577d 100644 (file)
@@ -26,9 +26,7 @@
 #include <stdlib.h>
 #include <ctype.h>
 #include <string.h>
-#ifdef HAVE_REGEX_H
-#include <regex.h>
-#endif
+
 
 /* Objects MT-safe for readonly access. */
 
@@ -136,27 +134,7 @@ FcStrCaseWalkerLong (FcCaseWalker *w, FcChar8 r)
 }
 
 static FcChar8
-FcStrCaseWalkerNext (FcCaseWalker *w)
-{
-    FcChar8    r;
-
-    if (w->read)
-    {
-       if ((r = *w->read++))
-           return r;
-       w->read = 0;
-    }
-    r = *w->src++;
-
-    if ((r & 0xc0) == 0xc0)
-       return FcStrCaseWalkerLong (w, r);
-    if ('A' <= r && r <= 'Z')
-        r = r - 'A' + 'a';
-    return r;
-}
-
-static FcChar8
-FcStrCaseWalkerNextIgnoreBlanks (FcCaseWalker *w)
+FcStrCaseWalkerNext (FcCaseWalker *w, const char *delims)
 {
     FcChar8    r;
 
@@ -169,7 +147,7 @@ FcStrCaseWalkerNextIgnoreBlanks (FcCaseWalker *w)
     do
     {
        r = *w->src++;
-    } while (r == ' ');
+    } while (r != 0 && delims && strchr (delims, r));
 
     if ((r & 0xc0) == 0xc0)
        return FcStrCaseWalkerLong (w, r);
@@ -186,13 +164,13 @@ FcStrDowncase (const FcChar8 *s)
     FcChar8        *dst, *d;
 
     FcStrCaseWalkerInit (s, &w);
-    while (FcStrCaseWalkerNext (&w))
+    while (FcStrCaseWalkerNext (&w, NULL))
        len++;
     d = dst = malloc (len + 1);
     if (!d)
        return 0;
     FcStrCaseWalkerInit (s, &w);
-    while ((*d++ = FcStrCaseWalkerNext (&w)));
+    while ((*d++ = FcStrCaseWalkerNext (&w, NULL)));
     return dst;
 }
 
@@ -209,8 +187,8 @@ FcStrCmpIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
 
     for (;;)
     {
-       c1 = FcStrCaseWalkerNext (&w1);
-       c2 = FcStrCaseWalkerNext (&w2);
+       c1 = FcStrCaseWalkerNext (&w1, NULL);
+       c2 = FcStrCaseWalkerNext (&w2, NULL);
        if (!c1 || (c1 != c2))
            break;
     }
@@ -220,6 +198,12 @@ FcStrCmpIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
 int
 FcStrCmpIgnoreBlanksAndCase (const FcChar8 *s1, const FcChar8 *s2)
 {
+    return FcStrCmpIgnoreCaseAndDelims (s1, s2, (const FcChar8 *)" ");
+}
+
+int
+FcStrCmpIgnoreCaseAndDelims (const FcChar8 *s1, const FcChar8 *s2, const FcChar8 *delims)
+{
     FcCaseWalker    w1, w2;
     FcChar8        c1, c2;
 
@@ -230,8 +214,8 @@ FcStrCmpIgnoreBlanksAndCase (const FcChar8 *s1, const FcChar8 *s2)
 
     for (;;)
     {
-       c1 = FcStrCaseWalkerNextIgnoreBlanks (&w1);
-       c2 = FcStrCaseWalkerNextIgnoreBlanks (&w2);
+       c1 = FcStrCaseWalkerNext (&w1, (const char *)delims);
+       c2 = FcStrCaseWalkerNext (&w2, (const char *)delims);
        if (!c1 || (c1 != c2))
            break;
     }
@@ -255,55 +239,6 @@ FcStrCmp (const FcChar8 *s1, const FcChar8 *s2)
     return (int) c1 - (int) c2;
 }
 
-#ifdef USE_REGEX
-static FcBool
-_FcStrRegexCmp (const FcChar8 *s, const FcChar8 *regex, int cflags, int eflags)
-{
-    int ret = -1;
-    regex_t reg;
-
-    if ((ret = regcomp (&reg, (const char *)regex, cflags)) != 0)
-    {
-       if (FcDebug () & FC_DBG_MATCHV)
-       {
-           char buf[512];
-
-           regerror (ret, &reg, buf, 512);
-           printf("Regexp compile error: %s\n", buf);
-       }
-       return FcFalse;
-    }
-    ret = regexec (&reg, (const char *)s, 0, NULL, eflags);
-    if (ret != 0)
-    {
-       if (FcDebug () & FC_DBG_MATCHV)
-       {
-           char buf[512];
-
-           regerror (ret, &reg, buf, 512);
-           printf("Regexp exec error: %s\n", buf);
-       }
-    }
-    regfree (&reg);
-
-    return ret == 0 ? FcTrue : FcFalse;
-}
-#else
-#  define _FcStrRegexCmp(_s_, _regex_, _cflags_, _eflags_)     (FcFalse)
-#endif
-
-FcBool
-FcStrRegexCmp (const FcChar8 *s, const FcChar8 *regex)
-{
-       return _FcStrRegexCmp (s, regex, REG_EXTENDED | REG_NOSUB, 0);
-}
-
-FcBool
-FcStrRegexCmpIgnoreCase (const FcChar8 *s, const FcChar8 *regex)
-{
-       return _FcStrRegexCmp (s, regex, REG_EXTENDED | REG_NOSUB | REG_ICASE, 0);
-}
-
 /*
  * Return a hash value for a string
  */
@@ -316,7 +251,7 @@ FcStrHashIgnoreCase (const FcChar8 *s)
     FcChar8        c;
 
     FcStrCaseWalkerInit (s, &w);
-    while ((c = FcStrCaseWalkerNext (&w)))
+    while ((c = FcStrCaseWalkerNext (&w, NULL)))
        h = ((h << 3) ^ (h >> 3)) ^ c;
     return h;
 }
@@ -336,8 +271,8 @@ FcStrIsAtIgnoreBlanksAndCase (const FcChar8 *s1, const FcChar8 *s2)
 
     for (;;)
     {
-       c1 = FcStrCaseWalkerNextIgnoreBlanks (&w1);
-       c2 = FcStrCaseWalkerNextIgnoreBlanks (&w2);
+       c1 = FcStrCaseWalkerNext (&w1, " ");
+       c2 = FcStrCaseWalkerNext (&w2, " ");
        if (!c1 || (c1 != c2))
            break;
     }
@@ -395,8 +330,8 @@ FcStrIsAtIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
 
     for (;;)
     {
-       c1 = FcStrCaseWalkerNext (&w1);
-       c2 = FcStrCaseWalkerNext (&w2);
+       c1 = FcStrCaseWalkerNext (&w1, NULL);
+       c2 = FcStrCaseWalkerNext (&w2, NULL);
        if (!c1 || (c1 != c2))
            break;
     }
@@ -447,6 +382,75 @@ FcStrContainsWord (const FcChar8 *s1, const FcChar8 *s2)
     return 0;
 }
 
+/*
+ * returns the number of strings (ignoring delimitors and case) being matched
+ */
+
+int
+FcStrMatchIgnoreCaseAndDelims (const FcChar8 *s1, const FcChar8 *s2, const FcChar8 *delims)
+{
+    FcCaseWalker    w1, w2;
+    FcChar8        c1, c2;
+
+    if (s1 == s2) return 0;
+
+    FcStrCaseWalkerInit (s1, &w1);
+    FcStrCaseWalkerInit (s2, &w2);
+
+    for (;;)
+    {
+       c1 = FcStrCaseWalkerNext (&w1, (const char *)delims);
+       c2 = FcStrCaseWalkerNext (&w2, (const char *)delims);
+       if (!c1 || (c1 != c2))
+           break;
+    }
+    return w1.src - s1 - 1;
+}
+
+FcBool
+FcStrGlobMatch (const FcChar8 *glob,
+               const FcChar8 *string)
+{
+    FcChar8    c;
+
+    while ((c = *glob++))
+    {
+       switch (c) {
+       case '*':
+           /* short circuit common case */
+           if (!*glob)
+               return FcTrue;
+           /* short circuit another common case */
+           if (strchr ((char *) glob, '*') == 0)
+           {
+               size_t l1, l2;
+
+               l1 = strlen ((char *) string);
+               l2 = strlen ((char *) glob);
+               if (l1 < l2)
+                   return FcFalse;
+               string += (l1 - l2);
+           }
+           while (*string)
+           {
+               if (FcStrGlobMatch (glob, string))
+                   return FcTrue;
+               string++;
+           }
+           return FcFalse;
+       case '?':
+           if (*string++ == '\0')
+               return FcFalse;
+           break;
+       default:
+           if (*string++ != c)
+               return FcFalse;
+           break;
+       }
+    }
+    return *string == '\0';
+}
+
 const FcChar8 *
 FcStrStrIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
 {
@@ -463,12 +467,12 @@ FcStrStrIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
     FcStrCaseWalkerInit (s1, &w1);
     FcStrCaseWalkerInit (s2, &w2);
 
-    c2 = FcStrCaseWalkerNext (&w2);
+    c2 = FcStrCaseWalkerNext (&w2, NULL);
 
     for (;;)
     {
        cur = w1.src;
-       c1 = FcStrCaseWalkerNext (&w1);
+       c1 = FcStrCaseWalkerNext (&w1, NULL);
        if (!c1)
            break;
        if (c1 == c2)
@@ -479,8 +483,8 @@ FcStrStrIgnoreCase (const FcChar8 *s1, const FcChar8 *s2)
 
            for (;;)
            {
-               c1t = FcStrCaseWalkerNext (&w1t);
-               c2t = FcStrCaseWalkerNext (&w2t);
+               c1t = FcStrCaseWalkerNext (&w1t, NULL);
+               c2t = FcStrCaseWalkerNext (&w2t, NULL);
 
                if (!c2t)
                    return cur;
@@ -864,6 +868,68 @@ FcStrUsesHome (const FcChar8 *s)
 }
 
 FcChar8 *
+FcStrBuildFilename (const FcChar8 *path,
+                   ...)
+{
+    va_list ap;
+    FcStrSet *sset;
+    FcStrList *list;
+    FcChar8 *s, *ret = NULL, *p;
+    size_t len = 0;
+
+    if (!path)
+       return NULL;
+
+    sset = FcStrSetCreate ();
+    if (!sset)
+       return NULL;
+
+    if (!FcStrSetAdd (sset, path))
+       goto bail0;
+
+    va_start (ap, path);
+    while (1)
+    {
+       s = (FcChar8 *)va_arg (ap, FcChar8 *);
+       if (!s)
+           break;
+       if (!FcStrSetAdd (sset, s))
+           goto bail1;
+    }
+    list = FcStrListCreate (sset);
+    while ((s = FcStrListNext (list)))
+    {
+       len += strlen ((const char *)s) + 1;
+    }
+    list->n = 0;
+    ret = malloc (sizeof (FcChar8) * (len + 1));
+    if (!ret)
+       goto bail2;
+    p = ret;
+    while ((s = FcStrListNext (list)))
+    {
+       if (p != ret)
+       {
+           p[0] = FC_DIR_SEPARATOR;
+           p++;
+       }
+       len = strlen ((const char *)s);
+       memcpy (p, s, len);
+       p += len;
+    }
+    *p = 0;
+
+bail2:
+    FcStrListDone (list);
+bail1:
+    va_end (ap);
+bail0:
+    FcStrSetDestroy (sset);
+
+    return ret;
+}
+
+FcChar8 *
 FcStrCopyFilename (const FcChar8 *s)
 {
     FcChar8 *new;
@@ -1052,8 +1118,7 @@ FcStrCanonFilename (const FcChar8 *s)
        FcChar8 cwd[FC_MAX_FILE_LEN + 2];
        if (getcwd ((char *) cwd, FC_MAX_FILE_LEN) == NULL)
            return NULL;
-       strcat ((char *) cwd, "/");
-       full = FcStrPlus (cwd, s);
+       full = FcStrBuildFilename (cwd, s, NULL);
        file = FcStrCanonAbsoluteFilename (full);
        FcStrFree (full);
        return file;
@@ -1261,6 +1326,12 @@ FcStrListCreate (FcStrSet *set)
     return list;
 }
 
+void
+FcStrListFirst (FcStrList *list)
+{
+    list->n = 0;
+}
+
 FcChar8 *
 FcStrListNext (FcStrList *list)
 {
diff --git a/src/fcweight.c b/src/fcweight.c
new file mode 100644 (file)
index 0000000..77b78ad
--- /dev/null
@@ -0,0 +1,95 @@
+/*
+ * fontconfig/src/fcweight.c
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission.  The authors make no
+ * representations about the suitability of this software for any purpose.  It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#include "fcint.h"
+
+static const struct {
+  int ot;
+  int fc;
+} map[] = {
+    {   0, FC_WEIGHT_THIN },
+    { 100, FC_WEIGHT_THIN },
+    { 200, FC_WEIGHT_EXTRALIGHT },
+    { 350, FC_WEIGHT_DEMILIGHT },
+    { 300, FC_WEIGHT_LIGHT },
+    { 380, FC_WEIGHT_BOOK },
+    { 400, FC_WEIGHT_REGULAR },
+    { 500, FC_WEIGHT_MEDIUM },
+    { 600, FC_WEIGHT_DEMIBOLD },
+    { 700, FC_WEIGHT_BOLD },
+    { 800, FC_WEIGHT_EXTRABOLD },
+    { 900, FC_WEIGHT_BLACK },
+    {1000, FC_WEIGHT_EXTRABLACK },
+};
+
+static int lerp(int x, int x1, int x2, int y1, int y2)
+{
+  int dx = x2 - x1;
+  int dy = y2 - y1;
+  assert (dx > 0 && dy >= 0 && x1 <= x && x <= x2);
+  return y1 + (dy*(x-x1) + dx/2) / dx;
+}
+
+int
+FcWeightFromOpenType (int ot_weight)
+{
+       int i;
+
+       /* Follow WPF Font Selection Model's advice. */
+       if (1 <= ot_weight && ot_weight <= 9)
+           ot_weight *= 100;
+
+       /* WPF Font Selection Model rejects 1000, we allow it
+        * because Pango uses that number. */
+       if (ot_weight < 1 || ot_weight > 1000)
+           return -1;
+
+       for (i = 1; ot_weight > map[i].ot; i++)
+         ;
+
+       if (ot_weight == map[i].ot)
+         return map[i].fc;
+
+       /* Interpolate between two items. */
+       return lerp (ot_weight, map[i-1].ot, map[i].ot, map[i-1].fc, map[i].fc);
+}
+
+int
+FcWeightToOpenType (int fc_weight)
+{
+       int i;
+       if (fc_weight < 0 || fc_weight > FC_WEIGHT_EXTRABLACK)
+           return -1;
+
+       for (i = 1; fc_weight > map[i].fc; i++)
+         ;
+
+       if (fc_weight == map[i].fc)
+         return map[i].ot;
+
+       /* Interpolate between two items. */
+       return lerp (fc_weight, map[i-1].fc, map[i].fc, map[i-1].ot, map[i].ot);
+}
+
+#define __fcweight__
+#include "fcaliastail.h"
+#undef __fcweight__
index 02489d9..a0eee67 100644 (file)
 #endif
 
 #ifdef _WIN32
+   /* Request Windows Vista for building.  This is required to
+    * get MemoryBarrier on mingw32... */
+#  if defined(_WIN32_WINNT) && _WIN32_WINNT < 0x0600
+#    undef _WIN32_WINNT
+#  endif
 #  ifndef _WIN32_WINNT
-#    define _WIN32_WINNT 0x0500
+#    define _WIN32_WINNT 0x0600
 #  endif
 #  define WIN32_LEAN_AND_MEAN
 #  define WIN32_EXTRA_LEAN
index 2a0d088..cdb14b6 100644 (file)
@@ -62,12 +62,30 @@ FcExprDestroy (FcExpr *e);
 void
 FcTestDestroy (FcTest *test)
 {
-    if (test->next)
-       FcTestDestroy (test->next);
     FcExprDestroy (test->expr);
     free (test);
 }
 
+void
+FcRuleDestroy (FcRule *rule)
+{
+    FcRule *n = rule->next;
+
+    switch (rule->type) {
+    case FcRuleTest:
+       FcTestDestroy (rule->u.test);
+       break;
+    case FcRuleEdit:
+       FcEditDestroy (rule->u.edit);
+       break;
+    default:
+       break;
+    }
+    free (rule);
+    if (n)
+       FcRuleDestroy (n);
+}
+
 static FcExpr *
 FcExprCreateInteger (FcConfig *config, int i)
 {
@@ -151,6 +169,18 @@ FcExprCreateMatrix (FcConfig *config, const FcExprMatrix *matrix)
 }
 
 static FcExpr *
+FcExprCreateRange (FcConfig *config, FcRange *range)
+{
+    FcExpr *e = FcConfigAllocExpr (config);
+    if (e)
+    {
+       e->op = FcOpRange;
+       e->u.rval = FcRangeCopy (range);
+    }
+    return e;
+}
+
+static FcExpr *
 FcExprCreateBool (FcConfig *config, FcBool b)
 {
     FcExpr *e = FcConfigAllocExpr (config);
@@ -240,6 +270,7 @@ FcExprDestroy (FcExpr *e)
        FcExprMatrixFree (e->u.mexpr);
        break;
     case FcOpRange:
+       FcRangeDestroy (e->u.rval);
        break;
     case FcOpCharSet:
        FcCharSetDestroy (e->u.cval);
@@ -260,6 +291,8 @@ FcExprDestroy (FcExpr *e)
     case FcOpPrependFirst:
     case FcOpAppend:
     case FcOpAppendLast:
+    case FcOpDelete:
+    case FcOpDeleteAll:
        break;
     case FcOpOr:
     case FcOpAnd:
@@ -298,8 +331,6 @@ FcExprDestroy (FcExpr *e)
 void
 FcEditDestroy (FcEdit *e)
 {
-    if (e->next)
-       FcEditDestroy (e->next);
     if (e->expr)
        FcExprDestroy (e->expr);
     free (e);
@@ -485,7 +516,7 @@ typedef struct _FcVStack {
        int             integer;
        double          _double;
        FcExprMatrix    *matrix;
-       FcRange         range;
+       FcRange         *range;
        FcBool          bool_;
        FcCharSet       *charset;
        FcLangSet       *langset;
@@ -575,6 +606,8 @@ FcTypeName (FcType type)
        return "FT_Face";
     case FcTypeLangSet:
        return "langset";
+    case FcTypeRange:
+       return "range";
     default:
        return "unknown";
     }
@@ -590,13 +623,15 @@ FcTypecheckValue (FcConfigParse *parse, FcType value, FcType type)
     if (value != type)
     {
        if ((value == FcTypeLangSet && type == FcTypeString) ||
-           (value == FcTypeString && type == FcTypeLangSet))
+           (value == FcTypeString && type == FcTypeLangSet) ||
+           (value == FcTypeInteger && type == FcTypeRange) ||
+           (value == FcTypeDouble && type == FcTypeRange))
            return;
-       if (type == (FcType) -1)
+       if (type ==  FcTypeUnknown)
            return;
        /* It's perfectly fine to use user-define elements in expressions,
         * so don't warn in that case. */
-       if (value == (FcType) -1)
+       if (value == FcTypeUnknown)
            return;
        FcConfigMessage (parse, FcSevereWarning, "saw %s, expected %s",
                         FcTypeName (value), FcTypeName (type));
@@ -633,6 +668,9 @@ FcTypecheckExpr (FcConfigParse *parse, FcExpr *expr, FcType type)
     case FcOpLangSet:
        FcTypecheckValue (parse, FcTypeLangSet, type);
        break;
+    case FcOpRange:
+       FcTypecheckValue (parse, FcTypeRange, type);
+       break;
     case FcOpNil:
        break;
     case FcOpField:
@@ -703,7 +741,7 @@ FcTestCreate (FcConfigParse *parse,
              FcMatchKind   kind,
              FcQual        qual,
              const FcChar8 *field,
-             FcOp          compare,
+             unsigned int  compare,
              FcExpr        *expr)
 {
     FcTest     *test = (FcTest *) malloc (sizeof (FcTest));
@@ -712,7 +750,6 @@ FcTestCreate (FcConfigParse *parse,
     {
        const FcObjectType      *o;
        
-       test->next = 0;
        test->kind = kind;
        test->qual = qual;
        test->object = FcObjectFromName ((const char *) field);
@@ -738,7 +775,6 @@ FcEditCreate (FcConfigParse *parse,
     {
        const FcObjectType      *o;
 
-       e->next = 0;
        e->object = object;
        e->op = op;
        e->expr = expr;
@@ -750,6 +786,34 @@ FcEditCreate (FcConfigParse        *parse,
     return e;
 }
 
+static FcRule *
+FcRuleCreate (FcRuleType type,
+             void       *p)
+{
+    FcRule *r = (FcRule *) malloc (sizeof (FcRule));
+
+    if (!r)
+       return NULL;
+
+    r->next = NULL;
+    r->type = type;
+    switch (type)
+    {
+    case FcRuleTest:
+       r->u.test = (FcTest *) p;
+       break;
+    case FcRuleEdit:
+       r->u.edit = (FcEdit *) p;
+       break;
+    default:
+       free (r);
+       r = NULL;
+       break;
+    }
+
+    return r;
+}
+
 static FcVStack *
 FcVStackCreateAndPush (FcConfigParse *parse)
 {
@@ -821,11 +885,10 @@ FcVStackPushMatrix (FcConfigParse *parse, FcExprMatrix *matrix)
 static FcBool
 FcVStackPushRange (FcConfigParse *parse, FcRange *range)
 {
-    FcVStack   *vstack = FcVStackCreateAndPush (parse);
+    FcVStack   *vstack = FcVStackCreateAndPush (parse);
     if (!vstack)
        return FcFalse;
-    vstack->u.range.begin = range->begin;
-    vstack->u.range.end = range->end;
+    vstack->u.range = range;
     vstack->tag = FcVStackRange;
     return FcTrue;
 }
@@ -973,9 +1036,11 @@ FcVStackPopAndDestroy (FcConfigParse *parse)
     case FcVStackMatrix:
        FcExprMatrixFreeShallow (vstack->u.matrix);
        break;
-    case FcVStackRange:
     case FcVStackBool:
        break;
+    case FcVStackRange:
+       FcRangeDestroy (vstack->u.range);
+       break;
     case FcVStackCharSet:
        FcCharSetDestroy (vstack->u.charset);
        break;
@@ -1188,7 +1253,9 @@ static void
 FcParseBlank (FcConfigParse *parse)
 {
     int                n = FcVStackElements (parse);
-    FcChar32   i;
+    FcChar32   i, begin, end;
+    FcRange    r;
+
     while (n-- > 0)
     {
        FcVStack    *v = FcVStackFetch (parse, n);
@@ -1204,9 +1271,12 @@ FcParseBlank (FcConfigParse *parse)
                goto bail;
            break;
        case FcVStackRange:
-           if (v->u.range.begin <= v->u.range.end)
+           r = FcRangeCanonicalize (v->u.range);
+           begin = (FcChar32)r.u.d.begin;
+           end = (FcChar32)r.u.d.end;
+           if (begin <= end)
            {
-             for (i = v->u.range.begin; i <= v->u.range.end; i++)
+             for (i = begin; i <= end; i++)
              {
                  if (!FcBlanksAdd (parse->config->blanks, i))
                      goto bail;
@@ -1419,9 +1489,11 @@ static void
 FcParseRange (FcConfigParse *parse)
 {
     FcVStack   *vstack;
-    FcRange    r = {0, 0};
-    FcChar32   n;
+    FcRange    *r;
+    FcChar32   n[2] = {0, 0};
     int                count = 1;
+    double     d[2] = {0.0L, 0.0L};
+    FcBool     dflag = FcFalse;
 
     while ((vstack = FcVStackPeek (parse)))
     {
@@ -1432,31 +1504,52 @@ FcParseRange (FcConfigParse *parse)
        }
        switch ((int) vstack->tag) {
        case FcVStackInteger:
-           n = vstack->u.integer;
+           if (dflag)
+               d[count] = (double)vstack->u.integer;
+           else
+               n[count] = vstack->u.integer;
+           break;
+       case FcVStackDouble:
+           if (count == 0 && !dflag)
+               d[1] = (double)n[1];
+           d[count] = vstack->u._double;
+           dflag = FcTrue;
            break;
        default:
            FcConfigMessage (parse, FcSevereError, "invalid element in range");
-           n = 0;
+           if (dflag)
+               d[count] = 0.0L;
+           else
+               n[count] = 0;
            break;
        }
-       if (count == 1)
-           r.end = n;
-       else
-           r.begin = n;
        count--;
        FcVStackPopAndDestroy (parse);
     }
-    if (count < 0)
+    if (count >= 0)
     {
-       if (r.begin > r.end)
+       FcConfigMessage (parse, FcSevereError, "invalid range");
+       return;
+    }
+    if (dflag)
+    {
+       if (d[0] > d[1])
        {
            FcConfigMessage (parse, FcSevereError, "invalid range");
            return;
        }
-       FcVStackPushRange (parse, &r);
+       r = FcRangeCreateDouble (d[0], d[1]);
     }
     else
-       FcConfigMessage (parse, FcSevereError, "invalid range");
+    {
+       if (n[0] > n[1])
+       {
+           FcConfigMessage (parse, FcSevereError, "invalid range");
+           return;
+       }
+       r = FcRangeCreateInteger (n[0], n[1]);
+    }
+    FcVStackPushRange (parse, r);
 }
 
 static FcBool
@@ -1492,7 +1585,8 @@ FcParseCharSet (FcConfigParse *parse)
 {
     FcVStack   *vstack;
     FcCharSet  *charset = FcCharSetCreate ();
-    FcChar32   i;
+    FcChar32   i, begin, end;
+    FcRange    r;
     int n = 0;
 
     while ((vstack = FcVStackPeek (parse)))
@@ -1507,9 +1601,13 @@ FcParseCharSet (FcConfigParse *parse)
                n++;
            break;
        case FcVStackRange:
-           if (vstack->u.range.begin <= vstack->u.range.end)
+           r = FcRangeCanonicalize (vstack->u.range);
+           begin = (FcChar32)r.u.d.begin;
+           end = (FcChar32)r.u.d.end;
+
+           if (begin <= end)
            {
-             for (i = vstack->u.range.begin; i <= vstack->u.range.end; i++)
+             for (i = begin; i <= end; i++)
              {
                  if (!FcCharSetAddChar (charset, i))
                  {
@@ -1655,9 +1753,9 @@ static void
 FcParseAlias (FcConfigParse *parse)
 {
     FcExpr     *family = 0, *accept = 0, *prefer = 0, *def = 0, *new = 0;
-    FcEdit     *edit = 0, *next;
+    FcEdit     *edit = 0;
     FcVStack   *vstack;
-    FcTest     *test = NULL;
+    FcRule     *rule = NULL, *r;
     FcValueBinding  binding;
 
     if (!FcConfigLexBinding (parse, FcConfigGetAttribute (parse, "binding"), &binding))
@@ -1702,8 +1800,14 @@ FcParseAlias (FcConfigParse *parse)
            vstack->tag = FcVStackNone;
            break;
        case FcVStackTest:
-           vstack->u.test->next = test;
-           test = vstack->u.test;
+           if (rule)
+           {
+               r = FcRuleCreate (FcRuleTest, vstack->u.test);
+               r->next = rule;
+               rule = r;
+           }
+           else
+               rule = FcRuleCreate (FcRuleTest, vstack->u.test);
            vstack->tag = FcVStackNone;
            break;
        default:
@@ -1721,8 +1825,35 @@ FcParseAlias (FcConfigParse *parse)
            FcExprDestroy (accept);
        if (def)
            FcExprDestroy (def);
+       if (rule)
+           FcRuleDestroy (rule);
+       return;
+    }
+    if (!prefer &&
+       !accept &&
+       !def)
+    {
+       FcExprDestroy (family);
        return;
     }
+    else
+    {
+       FcTest *t = FcTestCreate (parse, FcMatchPattern,
+                                 FcQualAny,
+                                 (FcChar8 *) FC_FAMILY,
+                                 FC_OP (FcOpEqual, FcOpFlagIgnoreBlanks),
+                                 family);
+       if (rule)
+       {
+           for (r = rule; r->next; r = r->next);
+           r->next = FcRuleCreate (FcRuleTest, t);
+           r = r->next;
+       }
+       else
+       {
+           r = rule = FcRuleCreate (FcRuleTest, t);
+       }
+    }
     if (prefer)
     {
        edit = FcEditCreate (parse,
@@ -1730,60 +1861,46 @@ FcParseAlias (FcConfigParse *parse)
                             FcOpPrepend,
                             prefer,
                             binding);
-       if (edit)
-           edit->next = 0;
-       else
+       if (!edit)
            FcExprDestroy (prefer);
+       else
+       {
+           r->next = FcRuleCreate (FcRuleEdit, edit);
+           r = r->next;
+       }
     }
     if (accept)
     {
-       next = edit;
        edit = FcEditCreate (parse,
                             FC_FAMILY_OBJECT,
                             FcOpAppend,
                             accept,
                             binding);
-       if (edit)
-           edit->next = next;
-       else
+       if (!edit)
            FcExprDestroy (accept);
+       else
+       {
+           r->next = FcRuleCreate (FcRuleEdit, edit);
+           r = r->next;
+       }
     }
     if (def)
     {
-       next = edit;
        edit = FcEditCreate (parse,
                             FC_FAMILY_OBJECT,
                             FcOpAppendLast,
                             def,
                             binding);
-       if (edit)
-           edit->next = next;
-       else
+       if (!edit)
            FcExprDestroy (def);
-    }
-    if (edit)
-    {
-       FcTest *t = FcTestCreate (parse, FcMatchPattern,
-                                 FcQualAny,
-                                 (FcChar8 *) FC_FAMILY,
-                                 FC_OP (FcOpEqual, FcOpFlagIgnoreBlanks),
-                                 family);
-       if (test)
+       else
        {
-           FcTest *p = test;
-
-           while (p->next)
-               p = p->next;
-           p->next = t;
+           r->next = FcRuleCreate (FcRuleEdit, edit);
+           r = r->next;
        }
-       else
-           test = t;
-       if (test)
-           if (!FcConfigAddEdit (parse->config, test, edit, FcMatchPattern))
-               FcTestDestroy (test);
     }
-    else
-       FcExprDestroy (family);
+    if (!FcConfigAddRule (parse->config, rule, FcMatchPattern))
+       FcRuleDestroy (rule);
 }
 
 static FcExpr *
@@ -1825,6 +1942,7 @@ FcPopExpr (FcConfigParse *parse)
        expr = FcExprCreateMatrix (parse->config, vstack->u.matrix);
        break;
     case FcVStackRange:
+       expr = FcExprCreateRange (parse->config, vstack->u.range);
        break;
     case FcVStackBool:
        expr = FcExprCreateBool (parse->config, vstack->u.bool_);
@@ -1933,7 +2051,14 @@ FcParseDir (FcConfigParse *parse)
 
     attr = FcConfigGetAttribute (parse, "prefix");
     if (attr && FcStrCmp (attr, (const FcChar8 *)"xdg") == 0)
+    {
        prefix = FcConfigXdgDataHome ();
+       /* home directory might be disabled.
+        * simply ignore this element.
+        */
+       if (!prefix)
+           goto bail;
+    }
     data = FcStrBufDoneStatic (&parse->pstack->str);
     if (!data)
     {
@@ -2024,11 +2149,18 @@ static void
 FcParseCacheDir (FcConfigParse *parse)
 {
     const FcChar8 *attr;
-    FcChar8 *prefix = NULL, *p, *data;
+    FcChar8 *prefix = NULL, *p, *data = NULL;
 
     attr = FcConfigGetAttribute (parse, "prefix");
     if (attr && FcStrCmp (attr, (const FcChar8 *)"xdg") == 0)
+    {
        prefix = FcConfigXdgCacheHome ();
+       /* home directory might be disabled.
+        * simply ignore this element.
+        */
+       if (!prefix)
+           goto bail;
+    }
     data = FcStrBufDone (&parse->pstack->str);
     if (!data)
     {
@@ -2117,8 +2249,12 @@ FcParseInclude (FcConfigParse *parse)
     FcChar8        *s;
     const FcChar8   *attr;
     FcBool         ignore_missing = FcFalse;
+#ifndef _WIN32
     FcBool         deprecated = FcFalse;
+#endif
     FcChar8        *prefix = NULL, *p;
+    static FcChar8  *userdir = NULL;
+    static FcChar8  *userconf = NULL;
 
     s = FcStrBufDoneStatic (&parse->pstack->str);
     if (!s)
@@ -2129,12 +2265,21 @@ FcParseInclude (FcConfigParse *parse)
     attr = FcConfigGetAttribute (parse, "ignore_missing");
     if (attr && FcConfigLexBool (parse, (FcChar8 *) attr) == FcTrue)
        ignore_missing = FcTrue;
+#ifndef _WIN32
     attr = FcConfigGetAttribute (parse, "deprecated");
     if (attr && FcConfigLexBool (parse, (FcChar8 *) attr) == FcTrue)
         deprecated = FcTrue;
+#endif
     attr = FcConfigGetAttribute (parse, "prefix");
     if (attr && FcStrCmp (attr, (const FcChar8 *)"xdg") == 0)
+    {
        prefix = FcConfigXdgConfigHome ();
+       /* home directory might be disabled.
+        * simply ignore this element.
+        */
+       if (!prefix)
+           goto bail;
+    }
     if (prefix)
     {
        size_t plen = strlen ((const char *)prefix);
@@ -2151,23 +2296,83 @@ FcParseInclude (FcConfigParse *parse)
        memcpy (&prefix[plen + 1], s, dlen);
        prefix[plen + 1 + dlen] = 0;
        s = prefix;
+       if (FcFileIsDir (s))
+       {
+       userdir:
+           if (!userdir)
+               userdir = FcStrdup (s);
+       }
+       else if (FcFileIsFile (s))
+       {
+       userconf:
+           if (!userconf)
+               userconf = FcStrdup (s);
+       }
+       else
+       {
+           /* No config dir nor file on the XDG directory spec compliant place
+            * so need to guess what it is supposed to be.
+            */
+           if (FcStrStr (s, (const FcChar8 *)"conf.d") != NULL)
+               goto userdir;
+           else
+               goto userconf;
+       }
     }
     if (!FcConfigParseAndLoad (parse->config, s, !ignore_missing))
        parse->error = FcTrue;
+#ifndef _WIN32
     else
     {
         FcChar8 *filename;
+       static FcBool warn_conf = FcFalse, warn_confd = FcFalse;
 
         filename = FcConfigFilename(s);
        if (deprecated == FcTrue &&
            filename != NULL &&
            !FcFileIsLink (filename))
        {
-            FcConfigMessage (parse, FcSevereWarning, "reading configurations from %s is deprecated.", s);
+           if (FcFileIsDir (filename))
+           {
+               FcChar8 *parent = FcStrDirname (userdir);
+
+               if (!FcFileIsDir (parent))
+                   FcMakeDirectory (parent);
+               FcStrFree (parent);
+               if (FcFileIsDir (userdir) ||
+                   rename ((const char *)filename, (const char *)userdir) != 0 ||
+                   symlink ((const char *)userdir, (const char *)filename) != 0)
+               {
+                   if (!warn_confd)
+                   {
+                       FcConfigMessage (parse, FcSevereWarning, "reading configurations from %s is deprecated. please move it to %s manually", s, userdir);
+                       warn_confd = FcTrue;
+                   }
+               }
+           }
+           else
+           {
+               FcChar8 *parent = FcStrDirname (userconf);
+
+               if (!FcFileIsDir (parent))
+                   FcMakeDirectory (parent);
+               FcStrFree (parent);
+               if (FcFileIsFile (userconf) ||
+                   rename ((const char *)filename, (const char *)userconf) != 0 ||
+                   symlink ((const char *)userconf, (const char *)filename) != 0)
+               {
+                   if (!warn_conf)
+                   {
+                       FcConfigMessage (parse, FcSevereWarning, "reading configurations from %s is deprecated. please move it to %s manually", s, userconf);
+                       warn_conf = FcTrue;
+                   }
+               }
+           }
         }
         if(filename)
             FcStrFree(filename);
     }
+#endif
     FcStrBufDestroy (&parse->pstack->str);
 
   bail:
@@ -2321,6 +2526,8 @@ static const FcOpMap fcModeOps[] = {
     { "prepend_first", FcOpPrependFirst    },
     { "append",                FcOpAppend          },
     { "append_last",   FcOpAppendLast      },
+    { "delete",                FcOpDelete          },
+    { "delete_all",    FcOpDeleteAll       },
 };
 
 #define NUM_MODE_OPS (int) (sizeof fcModeOps / sizeof fcModeOps[0])
@@ -2363,6 +2570,13 @@ FcParseEdit (FcConfigParse *parse)
        return;
 
     expr = FcPopBinary (parse, FcOpComma);
+    if ((mode == FcOpDelete || mode == FcOpDeleteAll) &&
+       expr != NULL)
+    {
+       FcConfigMessage (parse, FcSevereWarning, "Expression doesn't take any effects for delete and delete_all");
+       FcExprDestroy (expr);
+       expr = NULL;
+    }
     edit = FcEditCreate (parse, FcObjectFromName ((char *) name),
                         mode, expr, binding);
     if (!edit)
@@ -2380,9 +2594,8 @@ FcParseMatch (FcConfigParse *parse)
 {
     const FcChar8   *kind_name;
     FcMatchKind            kind;
-    FcTest         *test = 0;
-    FcEdit         *edit = 0;
     FcVStack       *vstack;
+    FcRule         *rule = NULL, *r;
 
     kind_name = FcConfigGetAttribute (parse, "target");
     if (!kind_name)
@@ -2405,20 +2618,27 @@ FcParseMatch (FcConfigParse *parse)
     {
        switch ((int) vstack->tag) {
        case FcVStackTest:
-           vstack->u.test->next = test;
-           test = vstack->u.test;
+           r = FcRuleCreate (FcRuleTest, vstack->u.test);
+           if (rule)
+               r->next = rule;
+           rule = r;
            vstack->tag = FcVStackNone;
            break;
        case FcVStackEdit:
-           vstack->u.edit->next = edit;
-           edit = vstack->u.edit;
-           vstack->tag = FcVStackNone;
-           if (kind == FcMatchScan && edit->object > FC_MAX_BASE_OBJECT)
+           if (kind == FcMatchScan && vstack->u.edit->object > FC_MAX_BASE_OBJECT)
            {
                FcConfigMessage (parse, FcSevereError,
                                 "<match target=\"scan\"> cannot edit user-defined object \"%s\"",
-                                FcObjectName(edit->object));
+                                FcObjectName(vstack->u.edit->object));
+               if (rule)
+                   FcRuleDestroy (rule);
+               return;
            }
+           r = FcRuleCreate (FcRuleEdit, vstack->u.edit);
+           if (rule)
+               r->next = rule;
+           rule = r;
+           vstack->tag = FcVStackNone;
            break;
        default:
            FcConfigMessage (parse, FcSevereWarning, "invalid match element");
@@ -2426,7 +2646,12 @@ FcParseMatch (FcConfigParse *parse)
        }
        FcVStackPopAndDestroy (parse);
     }
-    if (!FcConfigAddEdit (parse->config, test, edit, kind))
+    if (!rule)
+    {
+       FcConfigMessage (parse, FcSevereWarning, "No <test> nor <edit> elements in <match>");
+       return;
+    }
+    if (!FcConfigAddRule (parse->config, rule, kind))
        FcConfigMessage (parse, FcSevereError, "out of memory");
 }
 
@@ -2508,6 +2733,11 @@ FcPopValue (FcConfigParse *parse)
        if (value.u.l)
            value.type = FcTypeLangSet;
        break;
+    case FcVStackRange:
+       value.u.r = FcRangeCopy (vstack->u.range);
+       if (value.u.r)
+           value.type = FcTypeRange;
+       break;
     default:
        FcConfigMessage (parse, FcSevereWarning, "unknown pattern element %d",
                         vstack->tag);
@@ -2924,11 +3154,12 @@ FcConfigParseAndLoad (FcConfig      *config,
 {
 
     XML_Parser     p;
-    FcChar8        *filename;
+    FcChar8        *filename, *f;
     int                    fd;
     int                    len;
     FcConfigParse   parse;
     FcBool         error = FcTrue;
+    const FcChar8   *sysroot = FcConfigGetSysRoot (config);
 
 #ifdef ENABLE_LIBXML2
     xmlSAXHandler   sax;
@@ -2953,9 +3184,14 @@ FcConfigParseAndLoad (FcConfig       *config,
     }
 #endif
 
-    filename = FcConfigFilename (name);
-    if (!filename)
+    f = FcConfigFilename (name);
+    if (!f)
        goto bail0;
+    if (sysroot)
+       filename = FcStrBuildFilename (sysroot, f, NULL);
+    else
+       filename = FcStrdup (f);
+    FcStrFree (f);
 
     if (FcStrSetMember (config->configFiles, filename))
     {
diff --git a/test-driver b/test-driver
new file mode 100755 (executable)
index 0000000..d306056
--- /dev/null
@@ -0,0 +1,139 @@
+#! /bin/sh
+# test-driver - basic testsuite driver script.
+
+scriptversion=2013-07-13.22; # UTC
+
+# Copyright (C) 2011-2013 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# This file is maintained in Automake, please report
+# bugs to <bug-automake@gnu.org> or send patches to
+# <automake-patches@gnu.org>.
+
+# Make unconditional expansion of undefined variables an error.  This
+# helps a lot in preventing typo-related bugs.
+set -u
+
+usage_error ()
+{
+  echo "$0: $*" >&2
+  print_usage >&2
+  exit 2
+}
+
+print_usage ()
+{
+  cat <<END
+Usage:
+  test-driver --test-name=NAME --log-file=PATH --trs-file=PATH
+              [--expect-failure={yes|no}] [--color-tests={yes|no}]
+              [--enable-hard-errors={yes|no}] [--]
+              TEST-SCRIPT [TEST-SCRIPT-ARGUMENTS]
+The '--test-name', '--log-file' and '--trs-file' options are mandatory.
+END
+}
+
+test_name= # Used for reporting.
+log_file=  # Where to save the output of the test script.
+trs_file=  # Where to save the metadata of the test run.
+expect_failure=no
+color_tests=no
+enable_hard_errors=yes
+while test $# -gt 0; do
+  case $1 in
+  --help) print_usage; exit $?;;
+  --version) echo "test-driver $scriptversion"; exit $?;;
+  --test-name) test_name=$2; shift;;
+  --log-file) log_file=$2; shift;;
+  --trs-file) trs_file=$2; shift;;
+  --color-tests) color_tests=$2; shift;;
+  --expect-failure) expect_failure=$2; shift;;
+  --enable-hard-errors) enable_hard_errors=$2; shift;;
+  --) shift; break;;
+  -*) usage_error "invalid option: '$1'";;
+   *) break;;
+  esac
+  shift
+done
+
+missing_opts=
+test x"$test_name" = x && missing_opts="$missing_opts --test-name"
+test x"$log_file"  = x && missing_opts="$missing_opts --log-file"
+test x"$trs_file"  = x && missing_opts="$missing_opts --trs-file"
+if test x"$missing_opts" != x; then
+  usage_error "the following mandatory options are missing:$missing_opts"
+fi
+
+if test $# -eq 0; then
+  usage_error "missing argument"
+fi
+
+if test $color_tests = yes; then
+  # Keep this in sync with 'lib/am/check.am:$(am__tty_colors)'.
+  red='\e[0;31m' # Red.
+  grn='\e[0;32m' # Green.
+  lgn='\e[1;32m' # Light green.
+  blu='\e[1;34m' # Blue.
+  mgn='\e[0;35m' # Magenta.
+  std='\e[m'     # No color.
+else
+  red= grn= lgn= blu= mgn= std=
+fi
+
+do_exit='rm -f $log_file $trs_file; (exit $st); exit $st'
+trap "st=129; $do_exit" 1
+trap "st=130; $do_exit" 2
+trap "st=141; $do_exit" 13
+trap "st=143; $do_exit" 15
+
+# Test script is run here.
+"$@" >$log_file 2>&1
+estatus=$?
+if test $enable_hard_errors = no && test $estatus -eq 99; then
+  estatus=1
+fi
+
+case $estatus:$expect_failure in
+  0:yes) col=$red res=XPASS recheck=yes gcopy=yes;;
+  0:*)   col=$grn res=PASS  recheck=no  gcopy=no;;
+  77:*)  col=$blu res=SKIP  recheck=no  gcopy=yes;;
+  99:*)  col=$mgn res=ERROR recheck=yes gcopy=yes;;
+  *:yes) col=$lgn res=XFAIL recheck=no  gcopy=yes;;
+  *:*)   col=$red res=FAIL  recheck=yes gcopy=yes;;
+esac
+
+# Report outcome to console.
+echo "${col}${res}${std}: $test_name"
+
+# Register the test result, and other relevant metadata.
+echo ":test-result: $res" > $trs_file
+echo ":global-test-result: $res" >> $trs_file
+echo ":recheck: $recheck" >> $trs_file
+echo ":copy-in-global-log: $gcopy" >> $trs_file
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
+# End:
index 3ba8e93..f270b50 100644 (file)
@@ -1,17 +1,35 @@
 check_SCRIPTS=run-test.sh
-TESTS_ENVIRONMENT=src=${srcdir} EXEEXT=${EXEEXT} sh
+TEST_EXTENSIONS = \
+       .sh \
+       $(NULL)
+
+AM_TESTS_ENVIRONMENT= \
+       src=${srcdir}; export src; \
+       EXEEXT=${EXEEXT}; export EXEEXT; \
+       $(NULL)
+
+SH_LOG_COMPILER = sh
+
 TESTS=run-test.sh
 
 TESTDATA=4x6.pcf 8x16.pcf out.expected fonts.conf.in
 
+AM_CPPFLAGS = -I$(top_srcdir) -I$(top_builddir)
+
+check_PROGRAMS =
 if HAVE_PTHREAD
-check_PROGRAMS = test-pthread
-noinst_PROGRAMS = $(check_PROGRAMS)
+check_PROGRAMS += test-pthread
 test_pthread_LDADD = $(top_builddir)/src/libfontconfig.la
 # We don't enable this test by default because it will require config and fonts
 # to meaningfully test anything, and we are not installed yet.
 #TESTS += test-pthread
 endif
+noinst_PROGRAMS = $(check_PROGRAMS)
+
+if !OS_WIN32
+check_PROGRAMS += test-migration
+test_migration_LDADD = $(top_builddir)/src/libfontconfig.la
+endif
 
 EXTRA_DIST=$(check_SCRIPTS) $(TESTDATA)
 
index dcecac9..87869db 100644 (file)
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 @SET_MAKE@
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -50,32 +78,41 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
-@HAVE_PTHREAD_TRUE@check_PROGRAMS = test-pthread$(EXEEXT)
+check_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2)
+@HAVE_PTHREAD_TRUE@am__append_1 = test-pthread
+@OS_WIN32_FALSE@am__append_2 = test-migration
 subdir = test
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
-       $(top_srcdir)/depcomp
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+       $(top_srcdir)/depcomp $(top_srcdir)/test-driver
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cc_for_build.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_check_symbol.m4 \
+       $(top_srcdir)/m4/ax_cc_for_build.m4 \
        $(top_srcdir)/m4/ax_create_stdint_h.m4 \
        $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \
        $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
        $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-       $(top_srcdir)/configure.ac
+       $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
 CONFIG_CLEAN_VPATH_FILES =
+@HAVE_PTHREAD_TRUE@am__EXEEXT_1 = test-pthread$(EXEEXT)
+@OS_WIN32_FALSE@am__EXEEXT_2 = test-migration$(EXEEXT)
 PROGRAMS = $(noinst_PROGRAMS)
-test_pthread_SOURCES = test-pthread.c
-test_pthread_OBJECTS = test-pthread.$(OBJEXT)
-@HAVE_PTHREAD_TRUE@test_pthread_DEPENDENCIES =  \
-@HAVE_PTHREAD_TRUE@    $(top_builddir)/src/libfontconfig.la
+test_migration_SOURCES = test-migration.c
+test_migration_OBJECTS = test-migration.$(OBJEXT)
+@OS_WIN32_FALSE@test_migration_DEPENDENCIES =  \
+@OS_WIN32_FALSE@       $(top_builddir)/src/libfontconfig.la
 AM_V_lt = $(am__v_lt_@AM_V@)
 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
 am__v_lt_0 = --silent
 am__v_lt_1 = 
+test_pthread_SOURCES = test-pthread.c
+test_pthread_OBJECTS = test-pthread.$(OBJEXT)
+@HAVE_PTHREAD_TRUE@test_pthread_DEPENDENCIES =  \
+@HAVE_PTHREAD_TRUE@    $(top_builddir)/src/libfontconfig.la
 AM_V_P = $(am__v_P_@AM_V@)
 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
 am__v_P_0 = false
@@ -110,19 +147,232 @@ AM_V_CCLD = $(am__v_CCLD_@AM_V@)
 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
 am__v_CCLD_0 = @echo "  CCLD    " $@;
 am__v_CCLD_1 = 
-SOURCES = test-pthread.c
-DIST_SOURCES = test-pthread.c
+SOURCES = test-migration.c test-pthread.c
+DIST_SOURCES = test-migration.c test-pthread.c
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
     *) (install-info --version) >/dev/null 2>&1;; \
   esac
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 am__tty_colors_dummy = \
   mgn= red= grn= lgn= blu= brg= std=; \
   am__color_tests=no
-am__tty_colors = $(am__tty_colors_dummy)
+am__tty_colors = { \
+  $(am__tty_colors_dummy); \
+  if test "X$(AM_COLOR_TESTS)" = Xno; then \
+    am__color_tests=no; \
+  elif test "X$(AM_COLOR_TESTS)" = Xalways; then \
+    am__color_tests=yes; \
+  elif test "X$$TERM" != Xdumb && { test -t 1; } 2>/dev/null; then \
+    am__color_tests=yes; \
+  fi; \
+  if test $$am__color_tests = yes; then \
+    red='\e[0;31m'; \
+    grn='\e[0;32m'; \
+    lgn='\e[1;32m'; \
+    blu='\e[1;34m'; \
+    mgn='\e[0;35m'; \
+    brg='\e[1m'; \
+    std='\e[m'; \
+  fi; \
+}
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+  test -z "$$files" \
+    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+         $(am__cd) "$$dir" && rm -f $$files; }; \
+  }
+am__recheck_rx = ^[    ]*:recheck:[    ]*
+am__global_test_result_rx = ^[         ]*:global-test-result:[         ]*
+am__copy_in_global_log_rx = ^[         ]*:copy-in-global-log:[         ]*
+# A command that, given a newline-separated list of test names on the
+# standard input, print the name of the tests that are to be re-run
+# upon "make recheck".
+am__list_recheck_tests = $(AWK) '{ \
+  recheck = 1; \
+  while ((rc = (getline line < ($$0 ".trs"))) != 0) \
+    { \
+      if (rc < 0) \
+        { \
+          if ((getline line2 < ($$0 ".log")) < 0) \
+           recheck = 0; \
+          break; \
+        } \
+      else if (line ~ /$(am__recheck_rx)[nN][Oo]/) \
+        { \
+          recheck = 0; \
+          break; \
+        } \
+      else if (line ~ /$(am__recheck_rx)[yY][eE][sS]/) \
+        { \
+          break; \
+        } \
+    }; \
+  if (recheck) \
+    print $$0; \
+  close ($$0 ".trs"); \
+  close ($$0 ".log"); \
+}'
+# A command that, given a newline-separated list of test names on the
+# standard input, create the global log from their .trs and .log files.
+am__create_global_log = $(AWK) ' \
+function fatal(msg) \
+{ \
+  print "fatal: making $@: " msg | "cat >&2"; \
+  exit 1; \
+} \
+function rst_section(header) \
+{ \
+  print header; \
+  len = length(header); \
+  for (i = 1; i <= len; i = i + 1) \
+    printf "="; \
+  printf "\n\n"; \
+} \
+{ \
+  copy_in_global_log = 1; \
+  global_test_result = "RUN"; \
+  while ((rc = (getline line < ($$0 ".trs"))) != 0) \
+    { \
+      if (rc < 0) \
+         fatal("failed to read from " $$0 ".trs"); \
+      if (line ~ /$(am__global_test_result_rx)/) \
+        { \
+          sub("$(am__global_test_result_rx)", "", line); \
+          sub("[       ]*$$", "", line); \
+          global_test_result = line; \
+        } \
+      else if (line ~ /$(am__copy_in_global_log_rx)[nN][oO]/) \
+        copy_in_global_log = 0; \
+    }; \
+  if (copy_in_global_log) \
+    { \
+      rst_section(global_test_result ": " $$0); \
+      while ((rc = (getline line < ($$0 ".log"))) != 0) \
+      { \
+        if (rc < 0) \
+          fatal("failed to read from " $$0 ".log"); \
+        print line; \
+      }; \
+      printf "\n"; \
+    }; \
+  close ($$0 ".trs"); \
+  close ($$0 ".log"); \
+}'
+# Restructured Text title.
+am__rst_title = { sed 's/.*/   &   /;h;s/./=/g;p;x;s/ *$$//;p;g' && echo; }
+# Solaris 10 'make', and several other traditional 'make' implementations,
+# pass "-e" to $(SHELL), and POSIX 2008 even requires this.  Work around it
+# by disabling -e (using the XSI extension "set +e") if it's set.
+am__sh_e_setup = case $$- in *e*) set +e;; esac
+# Default flags passed to test drivers.
+am__common_driver_flags = \
+  --color-tests "$$am__color_tests" \
+  --enable-hard-errors "$$am__enable_hard_errors" \
+  --expect-failure "$$am__expect_failure"
+# To be inserted before the command running the test.  Creates the
+# directory for the log if needed.  Stores in $dir the directory
+# containing $f, in $tst the test, in $log the log.  Executes the
+# developer- defined test setup AM_TESTS_ENVIRONMENT (if any), and
+# passes TESTS_ENVIRONMENT.  Set up options for the wrapper that
+# will run the test scripts (or their associated LOG_COMPILER, if
+# thy have one).
+am__check_pre = \
+$(am__sh_e_setup);                                     \
+$(am__vpath_adj_setup) $(am__vpath_adj)                        \
+$(am__tty_colors);                                     \
+srcdir=$(srcdir); export srcdir;                       \
+case "$@" in                                           \
+  */*) am__odir=`echo "./$@" | sed 's|/[^/]*$$||'`;;   \
+    *) am__odir=.;;                                    \
+esac;                                                  \
+test "x$$am__odir" = x"." || test -d "$$am__odir"      \
+  || $(MKDIR_P) "$$am__odir" || exit $$?;              \
+if test -f "./$$f"; then dir=./;                       \
+elif test -f "$$f"; then dir=;                         \
+else dir="$(srcdir)/"; fi;                             \
+tst=$$dir$$f; log='$@';                                \
+if test -n '$(DISABLE_HARD_ERRORS)'; then              \
+  am__enable_hard_errors=no;                           \
+else                                                   \
+  am__enable_hard_errors=yes;                          \
+fi;                                                    \
+case " $(XFAIL_TESTS) " in                             \
+  *[\ \        ]$$f[\ \        ]* | *[\ \      ]$$dir$$f[\ \   ]*) \
+    am__expect_failure=yes;;                           \
+  *)                                                   \
+    am__expect_failure=no;;                            \
+esac;                                                  \
+$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT)
+# A shell command to get the names of the tests scripts with any registered
+# extension removed (i.e., equivalently, the names of the test logs, with
+# the '.log' extension removed).  The result is saved in the shell variable
+# '$bases'.  This honors runtime overriding of TESTS and TEST_LOGS.  Sadly,
+# we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)",
+# since that might cause problem with VPATH rewrites for suffix-less tests.
+# See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'.
+am__set_TESTS_bases = \
+  bases='$(TEST_LOGS)'; \
+  bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \
+  bases=`echo $$bases`
+RECHECK_LOGS = $(TEST_LOGS)
+AM_RECURSIVE_TARGETS = check recheck
+TEST_SUITE_LOG = test-suite.log
+am__test_logs1 = $(TESTS:=.log)
+am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log)
+TEST_LOGS = $(am__test_logs2:.sh.log=.log)
+SH_LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver
+SH_LOG_COMPILE = $(SH_LOG_COMPILER) $(AM_SH_LOG_FLAGS) $(SH_LOG_FLAGS)
+am__set_b = \
+  case '$@' in \
+    */*) \
+      case '$*' in \
+        */*) b='$*';; \
+          *) b=`echo '$@' | sed 's/\.log$$//'`; \
+       esac;; \
+    *) \
+      b='$*';; \
+  esac
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -164,6 +414,8 @@ FC_FONTPATH = @FC_FONTPATH@
 FGREP = @FGREP@
 FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
 FREETYPE_LIBS = @FREETYPE_LIBS@
+GIT = @GIT@
+GPERF = @GPERF@
 GREP = @GREP@
 HASDOCBOOK = @HASDOCBOOK@
 HAVE_XMLPARSE_H = @HAVE_XMLPARSE_H@
@@ -205,12 +457,19 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
 PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
+PKGCONFIG_REQUIRES = @PKGCONFIG_REQUIRES@
+PKGCONFIG_REQUIRES_PRIVATELY = @PKGCONFIG_REQUIRES_PRIVATELY@
 PKG_CONFIG = @PKG_CONFIG@
 PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
 PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
 PTHREAD_CC = @PTHREAD_CC@
 PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
 PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
 RANLIB = @RANLIB@
 RM = @RM@
 SED = @SED@
@@ -234,7 +493,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 ax_pthread_config = @ax_pthread_config@
-baseconfigdir = @baseconfigdir@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -242,7 +500,6 @@ build_cpu = @build_cpu@
 build_os = @build_os@
 build_vendor = @build_vendor@
 builddir = @builddir@
-configdir = @configdir@
 datadir = @datadir@
 datarootdir = @datarootdir@
 docdir = @docdir@
@@ -267,34 +524,48 @@ mkdir_p = @mkdir_p@
 ms_librarian = @ms_librarian@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
+pkgconfigdir = @pkgconfigdir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-templatedir = @templatedir@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-xmldir = @xmldir@
 check_SCRIPTS = run-test.sh
-TESTS_ENVIRONMENT = src=${srcdir} EXEEXT=${EXEEXT} sh
+TEST_EXTENSIONS = \
+       .sh \
+       $(NULL)
+
+AM_TESTS_ENVIRONMENT = \
+       src=${srcdir}; export src; \
+       EXEEXT=${EXEEXT}; export EXEEXT; \
+       $(NULL)
+
+SH_LOG_COMPILER = sh
 TESTS = run-test.sh
 TESTDATA = 4x6.pcf 8x16.pcf out.expected fonts.conf.in
-@HAVE_PTHREAD_TRUE@noinst_PROGRAMS = $(check_PROGRAMS)
+AM_CPPFLAGS = -I$(top_srcdir) -I$(top_builddir)
 @HAVE_PTHREAD_TRUE@test_pthread_LDADD = $(top_builddir)/src/libfontconfig.la
 # We don't enable this test by default because it will require config and fonts
 # to meaningfully test anything, and we are not installed yet.
 #TESTS += test-pthread
+noinst_PROGRAMS = $(check_PROGRAMS)
+@OS_WIN32_FALSE@test_migration_LDADD = $(top_builddir)/src/libfontconfig.la
 EXTRA_DIST = $(check_SCRIPTS) $(TESTDATA)
 CLEANFILES = 
 all: all-am
 
 .SUFFIXES:
-.SUFFIXES: .c .lo .o .obj
+.SUFFIXES: .c .lo .log .o .obj .sh .sh$(EXEEXT) .trs
 $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        @for dep in $?; do \
          case '$(am__configure_deps)' in \
@@ -343,6 +614,11 @@ clean-noinstPROGRAMS:
        list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
        echo " rm -f" $$list; \
        rm -f $$list
+
+test-migration$(EXEEXT): $(test_migration_OBJECTS) $(test_migration_DEPENDENCIES) $(EXTRA_test_migration_DEPENDENCIES) 
+       @rm -f test-migration$(EXEEXT)
+       $(AM_V_CCLD)$(LINK) $(test_migration_OBJECTS) $(test_migration_LDADD) $(LIBS)
+
 test-pthread$(EXEEXT): $(test_pthread_OBJECTS) $(test_pthread_DEPENDENCIES) $(EXTRA_test_pthread_DEPENDENCIES) 
        @rm -f test-pthread$(EXEEXT)
        $(AM_V_CCLD)$(LINK) $(test_pthread_OBJECTS) $(test_pthread_LDADD) $(LIBS)
@@ -353,6 +629,7 @@ mostlyclean-compile:
 distclean-compile:
        -rm -f *.tab.c
 
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-migration.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-pthread.Po@am__quote@
 
 .c.o:
@@ -360,14 +637,14 @@ distclean-compile:
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
 @am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
 
 .c.lo:
 @am__fastdepCC_TRUE@   $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -382,26 +659,15 @@ mostlyclean-libtool:
 clean-libtool:
        -rm -rf .libs _libs
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-am
+TAGS: tags
+
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -413,15 +679,11 @@ TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-am
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -430,9 +692,10 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-am
 
-cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS) $(LISP)'; \
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
        case "$(srcdir)" in \
          [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
          *) sdir=$(subdir)/$(srcdir) ;; \
@@ -448,98 +711,161 @@ cscopelist:  $(HEADERS) $(SOURCES) $(LISP)
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
-check-TESTS: $(TESTS)
-       @failed=0; all=0; xfail=0; xpass=0; skip=0; \
-       srcdir=$(srcdir); export srcdir; \
-       list=' $(TESTS) '; \
-       $(am__tty_colors); \
-       if test -n "$$list"; then \
-         for tst in $$list; do \
-           if test -f ./$$tst; then dir=./; \
-           elif test -f $$tst; then dir=; \
-           else dir="$(srcdir)/"; fi; \
-           if $(TESTS_ENVIRONMENT) $${dir}$$tst $(AM_TESTS_FD_REDIRECT); then \
-             all=`expr $$all + 1`; \
-             case " $(XFAIL_TESTS) " in \
-             *[\ \     ]$$tst[\ \      ]*) \
-               xpass=`expr $$xpass + 1`; \
-               failed=`expr $$failed + 1`; \
-               col=$$red; res=XPASS; \
-             ;; \
-             *) \
-               col=$$grn; res=PASS; \
-             ;; \
-             esac; \
-           elif test $$? -ne 77; then \
-             all=`expr $$all + 1`; \
-             case " $(XFAIL_TESTS) " in \
-             *[\ \     ]$$tst[\ \      ]*) \
-               xfail=`expr $$xfail + 1`; \
-               col=$$lgn; res=XFAIL; \
-             ;; \
-             *) \
-               failed=`expr $$failed + 1`; \
-               col=$$red; res=FAIL; \
-             ;; \
-             esac; \
-           else \
-             skip=`expr $$skip + 1`; \
-             col=$$blu; res=SKIP; \
-           fi; \
-           echo "$${col}$$res$${std}: $$tst"; \
-         done; \
-         if test "$$all" -eq 1; then \
-           tests="test"; \
-           All=""; \
-         else \
-           tests="tests"; \
-           All="All "; \
+# Recover from deleted '.trs' file; this should ensure that
+# "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create
+# both 'foo.log' and 'foo.trs'.  Break the recipe in two subshells
+# to avoid problems with "make -n".
+.log.trs:
+       rm -f $< $@
+       $(MAKE) $(AM_MAKEFLAGS) $<
+
+# Leading 'am--fnord' is there to ensure the list of targets does not
+# expand to empty, as could happen e.g. with make check TESTS=''.
+am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck)
+am--force-recheck:
+       @:
+
+$(TEST_SUITE_LOG): $(TEST_LOGS)
+       @$(am__set_TESTS_bases); \
+       am__f_ok () { test -f "$$1" && test -r "$$1"; }; \
+       redo_bases=`for i in $$bases; do \
+                     am__f_ok $$i.trs && am__f_ok $$i.log || echo $$i; \
+                   done`; \
+       if test -n "$$redo_bases"; then \
+         redo_logs=`for i in $$redo_bases; do echo $$i.log; done`; \
+         redo_results=`for i in $$redo_bases; do echo $$i.trs; done`; \
+         if $(am__make_dryrun); then :; else \
+           rm -f $$redo_logs && rm -f $$redo_results || exit 1; \
          fi; \
-         if test "$$failed" -eq 0; then \
-           if test "$$xfail" -eq 0; then \
-             banner="$$All$$all $$tests passed"; \
-           else \
-             if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
-             banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
-           fi; \
-         else \
-           if test "$$xpass" -eq 0; then \
-             banner="$$failed of $$all $$tests failed"; \
+       fi; \
+       if test -n "$$am__remaking_logs"; then \
+         echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \
+              "recursion detected" >&2; \
+       else \
+         am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \
+       fi; \
+       if $(am__make_dryrun); then :; else \
+         st=0;  \
+         errmsg="fatal: making $(TEST_SUITE_LOG): failed to create"; \
+         for i in $$redo_bases; do \
+           test -f $$i.trs && test -r $$i.trs \
+             || { echo "$$errmsg $$i.trs" >&2; st=1; }; \
+           test -f $$i.log && test -r $$i.log \
+             || { echo "$$errmsg $$i.log" >&2; st=1; }; \
+         done; \
+         test $$st -eq 0 || exit 1; \
+       fi
+       @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \
+       ws='[   ]'; \
+       results=`for b in $$bases; do echo $$b.trs; done`; \
+       test -n "$$results" || results=/dev/null; \
+       all=`  grep "^$$ws*:test-result:"           $$results | wc -l`; \
+       pass=` grep "^$$ws*:test-result:$$ws*PASS"  $$results | wc -l`; \
+       fail=` grep "^$$ws*:test-result:$$ws*FAIL"  $$results | wc -l`; \
+       skip=` grep "^$$ws*:test-result:$$ws*SKIP"  $$results | wc -l`; \
+       xfail=`grep "^$$ws*:test-result:$$ws*XFAIL" $$results | wc -l`; \
+       xpass=`grep "^$$ws*:test-result:$$ws*XPASS" $$results | wc -l`; \
+       error=`grep "^$$ws*:test-result:$$ws*ERROR" $$results | wc -l`; \
+       if test `expr $$fail + $$xpass + $$error` -eq 0; then \
+         success=true; \
+       else \
+         success=false; \
+       fi; \
+       br='==================='; br=$$br$$br$$br$$br; \
+       result_count () \
+       { \
+           if test x"$$1" = x"--maybe-color"; then \
+             maybe_colorize=yes; \
+           elif test x"$$1" = x"--no-color"; then \
+             maybe_colorize=no; \
            else \
-             if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
-             banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+             echo "$@: invalid 'result_count' usage" >&2; exit 4; \
            fi; \
-         fi; \
-         dashes="$$banner"; \
-         skipped=""; \
-         if test "$$skip" -ne 0; then \
-           if test "$$skip" -eq 1; then \
-             skipped="($$skip test was not run)"; \
+           shift; \
+           desc=$$1 count=$$2; \
+           if test $$maybe_colorize = yes && test $$count -gt 0; then \
+             color_start=$$3 color_end=$$std; \
            else \
-             skipped="($$skip tests were not run)"; \
+             color_start= color_end=; \
            fi; \
-           test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
-             dashes="$$skipped"; \
-         fi; \
-         report=""; \
-         if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
-           report="Please report to $(PACKAGE_BUGREPORT)"; \
-           test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
-             dashes="$$report"; \
-         fi; \
-         dashes=`echo "$$dashes" | sed s/./=/g`; \
-         if test "$$failed" -eq 0; then \
-           col="$$grn"; \
-         else \
-           col="$$red"; \
-         fi; \
-         echo "$${col}$$dashes$${std}"; \
-         echo "$${col}$$banner$${std}"; \
-         test -z "$$skipped" || echo "$${col}$$skipped$${std}"; \
-         test -z "$$report" || echo "$${col}$$report$${std}"; \
-         echo "$${col}$$dashes$${std}"; \
-         test "$$failed" -eq 0; \
-       else :; fi
+           echo "$${color_start}# $$desc $$count$${color_end}"; \
+       }; \
+       create_testsuite_report () \
+       { \
+         result_count $$1 "TOTAL:" $$all   "$$brg"; \
+         result_count $$1 "PASS: " $$pass  "$$grn"; \
+         result_count $$1 "SKIP: " $$skip  "$$blu"; \
+         result_count $$1 "XFAIL:" $$xfail "$$lgn"; \
+         result_count $$1 "FAIL: " $$fail  "$$red"; \
+         result_count $$1 "XPASS:" $$xpass "$$red"; \
+         result_count $$1 "ERROR:" $$error "$$mgn"; \
+       }; \
+       {                                                               \
+         echo "$(PACKAGE_STRING): $(subdir)/$(TEST_SUITE_LOG)" |       \
+           $(am__rst_title);                                           \
+         create_testsuite_report --no-color;                           \
+         echo;                                                         \
+         echo ".. contents:: :depth: 2";                               \
+         echo;                                                         \
+         for b in $$bases; do echo $$b; done                           \
+           | $(am__create_global_log);                                 \
+       } >$(TEST_SUITE_LOG).tmp || exit 1;                             \
+       mv $(TEST_SUITE_LOG).tmp $(TEST_SUITE_LOG);                     \
+       if $$success; then                                              \
+         col="$$grn";                                                  \
+        else                                                           \
+         col="$$red";                                                  \
+         test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG);               \
+       fi;                                                             \
+       echo "$${col}$$br$${std}";                                      \
+       echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}";   \
+       echo "$${col}$$br$${std}";                                      \
+       create_testsuite_report --maybe-color;                          \
+       echo "$$col$$br$$std";                                          \
+       if $$success; then :; else                                      \
+         echo "$${col}See $(subdir)/$(TEST_SUITE_LOG)$${std}";         \
+         if test -n "$(PACKAGE_BUGREPORT)"; then                       \
+           echo "$${col}Please report to $(PACKAGE_BUGREPORT)$${std}"; \
+         fi;                                                           \
+         echo "$$col$$br$$std";                                        \
+       fi;                                                             \
+       $$success || exit 1
+
+check-TESTS:
+       @list='$(RECHECK_LOGS)';           test -z "$$list" || rm -f $$list
+       @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list
+       @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
+       @set +e; $(am__set_TESTS_bases); \
+       log_list=`for i in $$bases; do echo $$i.log; done`; \
+       trs_list=`for i in $$bases; do echo $$i.trs; done`; \
+       log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \
+       $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \
+       exit $$?;
+recheck: all $(check_PROGRAMS) $(check_SCRIPTS)
+       @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
+       @set +e; $(am__set_TESTS_bases); \
+       bases=`for i in $$bases; do echo $$i; done \
+                | $(am__list_recheck_tests)` || exit 1; \
+       log_list=`for i in $$bases; do echo $$i.log; done`; \
+       log_list=`echo $$log_list`; \
+       $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \
+               am__force_recheck=am--force-recheck \
+               TEST_LOGS="$$log_list"; \
+       exit $$?
+.sh.log:
+       @p='$<'; \
+       $(am__set_b); \
+       $(am__check_pre) $(SH_LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_SH_LOG_DRIVER_FLAGS) $(SH_LOG_DRIVER_FLAGS) -- $(SH_LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
+@am__EXEEXT_TRUE@.sh$(EXEEXT).log:
+@am__EXEEXT_TRUE@      @p='$<'; \
+@am__EXEEXT_TRUE@      $(am__set_b); \
+@am__EXEEXT_TRUE@      $(am__check_pre) $(SH_LOG_DRIVER) --test-name "$$f" \
+@am__EXEEXT_TRUE@      --log-file $$b.log --trs-file $$b.trs \
+@am__EXEEXT_TRUE@      $(am__common_driver_flags) $(AM_SH_LOG_DRIVER_FLAGS) $(SH_LOG_DRIVER_FLAGS) -- $(SH_LOG_COMPILE) \
+@am__EXEEXT_TRUE@      "$$tst" $(AM_TESTS_FD_REDIRECT)
 
 distdir: $(DISTFILES)
        @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
@@ -597,6 +923,9 @@ install-strip:
            "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
        fi
 mostlyclean-generic:
+       -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS)
+       -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs)
+       -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
 
 clean-generic:
        -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
@@ -681,9 +1010,9 @@ uninstall-am:
 
 .MAKE: check-am install-am install-strip
 
-.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \
+.PHONY: CTAGS GTAGS TAGS all all-am check check-TESTS check-am clean \
        clean-checkPROGRAMS clean-generic clean-libtool \
-       clean-noinstPROGRAMS cscopelist ctags distclean \
+       clean-noinstPROGRAMS cscopelist-am ctags ctags-am distclean \
        distclean-compile distclean-generic distclean-libtool \
        distclean-tags distdir dvi dvi-am html html-am info info-am \
        install install-am install-data install-data-am install-dvi \
@@ -693,7 +1022,8 @@ uninstall-am:
        install-strip installcheck installcheck-am installdirs \
        maintainer-clean maintainer-clean-generic mostlyclean \
        mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
-       pdf pdf-am ps ps-am tags uninstall uninstall-am
+       pdf pdf-am ps ps-am recheck tags tags-am uninstall \
+       uninstall-am
 
 
 -include $(top_srcdir)/git.mk
index 24ca296..d451a8d 100644 (file)
@@ -1,4 +1,25 @@
 #!/bin/sh
+# fontconfig/test/run-test.sh
+#
+# Copyright © 2000 Keith Packard
+#
+# Permission to use, copy, modify, distribute, and sell this software and its
+# documentation for any purpose is hereby granted without fee, provided that
+# the above copyright notice appear in all copies and that both that
+# copyright notice and this permission notice appear in supporting
+# documentation, and that the name of the author(s) not be used in
+# advertising or publicity pertaining to distribution of the software without
+# specific, written prior permission.  The authors make no
+# representations about the suitability of this software for any purpose.  It
+# is provided "as is" without express or implied warranty.
+#
+# THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+# EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+# PERFORMANCE OF THIS SOFTWARE.
 TESTDIR=${srcdir-`pwd`}
 
 FONTDIR=`pwd`/fonts
diff --git a/test/test-migration.c b/test/test-migration.c
new file mode 100644 (file)
index 0000000..bcd805d
--- /dev/null
@@ -0,0 +1,227 @@
+/*
+ * fontconfig/test/test-migration.c
+ *
+ * Copyright © 2000 Keith Packard
+ * Copyright © 2013 Akira TAGOH
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission.  The authors make no
+ * representations about the suitability of this software for any purpose.  It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <sys/types.h>
+#include <dirent.h>
+#ifndef HAVE_STRUCT_DIRENT_D_TYPE
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
+#endif
+#include <fontconfig/fontconfig.h>
+
+#ifdef HAVE_MKDTEMP
+#define fc_mkdtemp     mkdtemp
+#else
+char *
+fc_mkdtemp (char *template)
+{
+    if (!mktemp (template) || mkdir (template, 0700))
+       return NULL;
+
+    return template;
+}
+#endif
+
+FcBool
+mkdir_p(const char *dir)
+{
+    char *parent;
+    FcBool ret;
+
+    if (strlen (dir) == 0)
+       return FcFalse;
+    parent = (char *) FcStrDirname ((const FcChar8 *)dir);
+    if (!parent)
+       return FcFalse;
+    if (access (parent, F_OK) == 0)
+       ret = mkdir (dir, 0755) == 0 && chmod (dir, 0755) == 0;
+    else if (access (parent, F_OK) == -1)
+       ret = mkdir_p (parent) && (mkdir (dir, 0755) == 0) && chmod (dir, 0755) == 0;
+    else
+       ret = FcFalse;
+    free (parent);
+
+    return ret;
+}
+
+FcBool
+unlink_dirs(const char *dir)
+{
+    DIR *d = opendir (dir);
+    struct dirent *e;
+    size_t len = strlen (dir);
+    char *n = NULL;
+    FcBool ret = FcTrue;
+#ifndef HAVE_STRUCT_DIRENT_D_TYPE
+    struct stat statb;
+#endif
+
+    if (!d)
+       return FcFalse;
+    while ((e = readdir(d)) != NULL)
+    {
+       size_t l;
+
+       if (strcmp (e->d_name, ".") == 0 ||
+           strcmp (e->d_name, "..") == 0)
+           continue;
+       l = strlen (e->d_name) + 1;
+       if (n)
+           free (n);
+       n = malloc (l + len + 1);
+       strcpy (n, dir);
+       n[len] = '/';
+       strcpy (&n[len + 1], e->d_name);
+#ifdef HAVE_STRUCT_DIRENT_D_TYPE
+       if (e->d_type == DT_DIR)
+#else
+       if (stat (n, &statb) == -1)
+       {
+               fprintf (stderr, "E: %s\n", n);
+               ret = FcFalse;
+               break;
+       }
+       if (S_ISDIR (statb.st_mode))
+#endif
+       {
+           if (!unlink_dirs (n))
+           {
+               fprintf (stderr, "E: %s\n", n);
+               ret = FcFalse;
+               break;
+           }
+       }
+       else
+       {
+           if (unlink (n) == -1)
+           {
+               fprintf (stderr, "E: %s\n", n);
+               ret = FcFalse;
+               break;
+           }
+       }
+    }
+    if (n)
+       free (n);
+    closedir (d);
+
+    if (rmdir (dir) == -1)
+    {
+       fprintf (stderr, "E: %s\n", dir);
+       return FcFalse;
+    }
+
+    return ret;
+}
+
+int
+main(void)
+{
+    char template[32] = "fontconfig-XXXXXXXX";
+    char *tmp = fc_mkdtemp (template);
+    size_t len = strlen (tmp), xlen, dlen;
+    char xdg[256], confd[256], fn[256], nfn[256], ud[256], nud[256];
+    int ret = -1;
+    FILE *fp;
+    char *content = "<fontconfig></fontconfig>";
+
+    strcpy (xdg, tmp);
+    strcpy (&xdg[len], "/.config");
+    setenv ("HOME", tmp, 1);
+    setenv ("XDG_CONFIG_HOME", xdg, 1);
+    xlen = strlen (xdg);
+    strcpy (confd, xdg);
+    strcpy (&confd[xlen], "/fontconfig");
+    dlen = strlen (confd);
+    /* In case there are no configuration files nor directory */
+    FcInit ();
+    if (access (confd, F_OK) == 0)
+    {
+       fprintf (stderr, "%s unexpectedly exists\n", confd);
+       goto bail;
+    }
+    FcFini ();
+    if (!unlink_dirs (tmp))
+    {
+       fprintf (stderr, "Unable to clean up\n");
+       goto bail;
+    }
+    /* In case there are the user configuration file */
+    strcpy (fn, tmp);
+    strcpy (&fn[len], "/.fonts.conf");
+    strcpy (nfn, confd);
+    strcpy (&nfn[dlen], "/fonts.conf");
+    if (!mkdir_p (confd))
+    {
+       fprintf (stderr, "Unable to create a config dir: %s\n", confd);
+       goto bail;
+    }
+    if ((fp = fopen (fn, "wb")) == NULL)
+    {
+       fprintf (stderr, "Unable to create a config file: %s\n", fn);
+       goto bail;
+    }
+    fwrite (content, sizeof (char), strlen (content), fp);
+    fclose (fp);
+    FcInit ();
+    if (access (nfn, F_OK) != 0)
+    {
+       fprintf (stderr, "migration failed for %s\n", nfn);
+       goto bail;
+    }
+    FcFini ();
+    if (!unlink_dirs (tmp))
+    {
+       fprintf (stderr, "Unable to clean up\n");
+       goto bail;
+    }
+    /* In case there are the user configuration dir */
+    strcpy (ud, tmp);
+    strcpy (&ud[len], "/.fonts.conf.d");
+    strcpy (nud, confd);
+    strcpy (&nud[dlen], "/conf.d");
+    if (!mkdir_p (ud))
+    {
+       fprintf (stderr, "Unable to create a config dir: %s\n", ud);
+       goto bail;
+    }
+    FcInit ();
+    if (access (nud, F_OK) != 0)
+    {
+       fprintf (stderr, "migration failed for %s\n", nud);
+       goto bail;
+    }
+    FcFini ();
+
+    ret = 0;
+bail:
+    unlink_dirs (tmp);
+
+    return ret;
+}
index 7701a24..fbf397d 100644 (file)
@@ -1,5 +1,27 @@
-/* Code originally from Raimund Steger. */
-
+/*
+ * fontconfig/test/test-pthread.c
+ *
+ * Copyright © 2000 Keith Packard
+ * Copyright © 2013 Raimund Steger
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author(s) not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission.  The authors make no
+ * representations about the suitability of this software for any purpose.  It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>